Comet32

From CometWiki

Revision as of 00:44, 10 July 2011 by Jim (Talk | contribs)
Jump to: navigation, search

Contents

Comet32

The MySql Interface Device
Easy output of XML formatted data
Easy Input and Output of CSV Data
New Cryptographic functions
Xap2
The debugger has been Replaced with Trace statements

IB Enhancements for Comet32

Comet Dates have much more flexability
The size of the user buffer (# buffer) has been increased to 8K.
Strings may be declared up to 64K in length.
You may declare a dynamic string that will allocate only the memory required for the current length of the data assigned to it. These strings may be up to 4gb in length. For performance, chunks of memory will be allocated in 64k increments. (Arrays may not be dynamic).
Numbers may include up to 64 digits; 32 integer and 32 fractional.
An extensive math package has been added including trig functions, factorial, logs, and exponents.
Editmasks rules regarding the length of the editmask and the length of the number have been relaxed to reduce runtime errors.
The maximum array size has been increased to 4.2gb.
User-defined procs have been implemented. For more info see User Defined Procs.

New instructions have been implemented:

Input/Print File
Usr Defined Procs
Get/Set Format
SearchFile
NOEXCP has been added as an option to EXCP= on file system statements, NoExcp
SetTimer fires an event while the user is in an input from the keyboard.

The Map Statement

Comet32 introduces the MAP statement which looks much like a format statement but is used to associate names with variables in your program (Values). The MAP statement is used interchangably in the following new statements:

GetMap -- Using a MAP, retrieves values from a string.
CopyFormat -- Copies all values from one format or map to another. Converts strings to/from numerics etc.
ClearFormat -- Clears all of the variables contained in a Map or Format.
StripFormat -- Trims (Strip) leading and trailing spaces from all of the variables contained in a Map or Format.
StripLFormat -- Trims (StripL) leading spaces from all of the variables contained in a Map or Format.
StripRFormat -- Trims (StripR) trailing spaces from all of the variables contained in a Map or Format.
PadFormat -- Pads all of the variables contained in a Map or Format.
UcaseFormat -- Converts all of the variables contained in a Map or Format to Upper case.
LcaseFormat -- Converts all of the variables contained in a Map or Format to Lower case.
TcaseFormat -- Converts all of the variables contained in a Map or Format to Title case.

New String Functions

Replace -- Replaces names in a string with corresponding values.
Tcase -- Title case.

XAP support Statements

UrlDecode -- Decodes a string which was URL Encoded by the Browser (for xap).
MapDecode -- URLDecodes all of the values in a MAP(or xap).

New XAP Controls

Get Header -- Retrieves the whole HTTP Header into a string.
Get Method -- Retrieves the method (GET or POST) from the HTML Header.
Get Cookies -- Gets all of the Cookies returned from the Browser.
Get Remote -- Returns the remote Browser address/name.
Get Query -- Retrieves the whole query from the Header or Post Data.
Get PostData -- Retrieves Post Data.

Known Problems that We Plan to Consider and/or Address

ODBC is not supported. Replaced with SQL interface.
Serial Gateway is not supported.

Functionality that Will Not Be Part of Comet32

The name of the clock is CL1. Comet16 allowed any name beginning with "CL" to be used.
The Spool driver has not been implemented. -- Not needed, replace with DocMgr
Image file support.
Q-emulation for QICBASIC objects.
The SORT driver will not be implemented. We have modified the Reporter (version 9.02) to work without it.
Invalid character substitution in file names
QSTARTX.
Inputting a numeric value from the screen works differently under Comet32 than under Comet16. For example if you declare a variable to be 6.2 and you input its value as "5", under Comet16 that would be interpreted as .05 whereas under Comet32 it would be 5.00.
Hallelujah, never could get operators to understand the old way.--badge 18:03, 19 May 2009 (UTC)
Background partitions have been partially implemented.
ACTIVATE and PSTAT have been implemented. =
TERMINATE, PCOMM and INTERRUPT have not been implemented.=
Some form of inter partition communication has yet to be designed.
LUN 0 is to be used solely for either the screen or the XAP driver depending on the configuration. For normal Comet programs, close of LUN 0 is ignored. The terminal may be opened on a LUN other than 0, but all actions on either LUN will apply to the other.

Differences Between Comet16 Objects and Comet32 Objects

It is our intention that your Comet16 objects will run under Comet32 exactly as they do under Comet16. IB has been enhanced for Comet32 so not only will you be able to do more things easier we also may decide to change the functionality of some of the legacy instructions. We welcome your input on these issues as they come up.
Personal tools