Comet32

From CometWiki

(Difference between revisions)
Jump to: navigation, search
m (minor)
(Added release 431 to 421)
Line 62: Line 62:
*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.
*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.--[[User:Badge|badge]] 18:03, 19 May 2009 (UTC)''
**''Hallelujah, never could get operators to understand the old way.--[[User:Badge|badge]] 18:03, 19 May 2009 (UTC)''
-
*Background partitions have not been implemented. You may launch a new foreground session as an alternative. --''Forget it''
+
*Background partitions have been partially implemented.
-
**ACTIVATE and TERMINATE have not been implemented.
+
**ACTIVATE and PSTAT have been implemented.
-
**PCOMM and INTERRUPT have not been implemented.
+
**TERMINATE, PCOMM and INTERRUPT have not been implemented.
-
*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.
+
***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.
</ul>
</ul>
Line 78: Line 79:
instructions.  We welcome your input on these issues as they come up.
instructions.  We welcome your input on these issues as they come up.
<ul>
<ul>
-
<li>Numeric overflows will generate a runtime error E01 for Comet32 programs.  You can trap this with an ERRORTO.''See Discussion Page--[[User:Badge|badge]] 18:03, 19 May 2009 (UTC)''
+
<li>Numeric overflows will generate a runtime error E01 for Comet32 programs.  You can trap this with an ERRORTO.''[[User:Badge|badge]] 18:03, 19 May 2009 (UTC)'' ''This has been changed as of build 420. Overflow is ignored, although it generates a log message. [[User:Jim|Jim]] 12:24, 24 February 2011 (PST)'''
</ul>
</ul>
Line 85: Line 86:
Recent Changes
Recent Changes
</h3>
</h3>
 +
<p>
 +
Build 431
 +
* New (SessionTimeout) mnemonic will automatically shutdown a session after a specified number of minutes.  This requires REL version 11.03 or higher.
 +
* Corrected a problem that could have caused a crashed in the printer event handler.
 +
* WAKEUP and PAUSE can now be interrupted by F3.
 +
* Changed the way the Windows printer selection dialog is displayed so that it will be on top of other windows.
 +
Build 430
 +
* Corrected a problem in ROUNDing the result of numeric calculations.
 +
* Corrected the implementation of some mnemonics including (CopyFromClipboard) and (CopyToClipboard)
 +
* E50 no longer erroneously reported for array dimension sizes > 255
 +
* CosM32 compiler now allows use of characters with a value greater than @79@ in string constants. Use of these characters elsewhere will be ignored and treated as if blank.
 +
* Each partition now gets is own instance of CosP to eliminate a TCP/IP printer problem.
 +
* Now uses a cache when printing to a CometAnywhere printer to speedup processing.  This change requires supporting changes in CosW.
 +
<p>
 +
Build 429
 +
* Corrected a problem calculating the address of an element in a multi-dimension array.
 +
<p>
 +
Build 428
 +
* Corrected a problem that could have caused a crash if an array subscript was out of range.
 +
* Corrected a problem that could have put garbage text in the "User" field of a document archive record.  This garbage would be seen in DocMgr.
 +
* The Next User Address and Last System Function fields reported by PSTAT are no longer converted to decimal values.
 +
* Increased the size of a normalized pathname to 259.  The previous limit was 60.
 +
<p>
 +
Build 427
 +
* Corrected a problem in the NUM function for result fields with a non-zero precision.
 +
* Corrected a problem in the MOD function.
 +
* Comet would hang after an E16.  This has been corrected.
 +
* Now uses the "C/R same as Qantel" cfig setting.
 +
* The user's id field is now set for print jobs destined for an archive.  This allows DocMgr to display it.
 +
<p>
 +
Build 426
 +
*      Fixed a problem in passing system variables in the following scenario:
 +
** ENTER a Comet16 program
 +
** RUN a Comet32 program that does an EXIT.
 +
** Previously this could have caused a crash.
 +
*      Fixed problem in the DOSRW call used to get the device descriptors.  Previously you could only get the first 254 devices.
 +
* Changes to FSTAT for compatibility with Comet16.
 +
* When writing a CSV file and the first strings were empty it was not putting out place-holders. Now it will generate one blank character in that place.
 +
 +
<p>
 +
Build 425
 +
* Introduced new date functions.
 +
* Implemented DOSFC for mkdir.
 +
* Corrected a problem that would crash if you attempted to log out of Comet while background programs were running.
 +
* Corrected a problem with the NUM function that was reporting an error if the field contained a trailing blank.
 +
* Enhanced the NUM function so that it accepts special characters such as ,.()-+ in the input string.
 +
* Corrected problems with the INPUT statement that doesn't require transmit marks (ie the new INPUT).
 +
* Now reports E74 if a Comet32 IB object file is corrupted.
 +
* Comet exception reports for CometAnywhere clients now appear on the client instead of the host.
 +
<p>
 +
Build 424
 +
* FSTAT now returns E11 if the file is not found and a directory was not specified. It returns E31 if an invalid directory is specified.
 +
* Corrected a problem with num2date(0,5).  It was returning a blank string.
 +
* Background sessions now inherit the activating partition's printers, including # printers.
 +
* Corrected a problem with editing numbers which used (LM) in a FORMAT.
 +
* Corrected a problem with editing numbers which used a length override in a FORMAT compiled for Comet32.
 +
* Corrected a problem with numtodate.  Leading zeroes were not preserved.
 +
<p>
 +
Build 423
 +
* Comet.exe will now run the Microsoft Visual Studio 2008 Redistributable installation when required for full Comet clients.
 +
* Corrected a problem that could cause a crash if a printer (or other device) was open in a parent program and the LUN was reused for a file in the subprogram.
 +
* Corrected a problem with numeric editing which caused numbers to sometimes be truncated.
 +
* Corrected a problem that could have caused a crash when launching Comet32 automatically on 64-bit Windows systems.
 +
<p>
 +
Build 422
 +
* Background partitions can now be ACTIVATEd.  The X00 device is automatically open on LUN 0 for these partitions.  (See item # 2 below for X00 enhancements.)
 +
* The X00 device can now do (CopyFile), (RenameFile), (EraseFile), (FindFirstFile), (FindNextFile), (FileStatus), (GetDirAlias), (SetDirAlias), (OpenClipboard), and (CloseClipboard).  Previously these mnemonics could only be used with LUN 0 which excluded background partitions.
 +
* If a configured directory can't be accessed at startup you'll be notified through a messagebox and an error message will be posted in the Comet log.
 +
* The Msgbox IB function and statement can now be used in background partitions.
 +
* The delimiter used for .csv files can now be specified with the FILE (lun) DLM=char$ statement.
 +
* FILE (lun) NORMAL introduced to reset a file's access from CSV or XML back to normal.
 +
* Added new clipboard mnemonics (OpenClipboard), and (CloseClipboard).  An error can occur if the clipboard is opened by another user and there is no good way to convey that in IB. Now you can use (OpenClipboard) first and test for that case and try again. The old method will still work but this is more reliable. Use of these mnemonics requires REL 10.08 or higher.
 +
* Added a new mnemonic (ClearBuffer) to clear the X00 buffer between writes.  Use of this mnemonic requires REL 10.08 or higher.
 +
* CosC now detects 64-bit Windows and will launch Comet32 automatically.
 +
<p>
 +
Build 421
 +
* FSTAT now returns E11 if the file is not found and a directory was not specified.
 +
* Corrected a problem in the NUM function for Comet32 objects that wasn't returning an error if the last character in the string was invalid.
 +
* Corrected a problem in the STRING function for Comet16 objects that could have resulted in corruption of data in other variables.
 +
* Session colors specified in the configuration file are now used.
 +
<p>
 +
Build 420
 +
* Corrected problems with FPT and BASE64.
 +
* Numeric overflow errors (ERR 1) are now ignored just like Comet16.
 +
* Changes required to get CometExplorer's DirBuild to load.
 +
* Fixed a bug that caused a trigger event when resetting a timer that is not running.
 +
* Prevented the changing of a constant when inputting a list of fields.
 +
<p>
 +
Build 419
 +
 +
Comet32:
 +
 +
* Corrected a problem in passing numeric arguments to a proc.
 +
* CONTAINS result was reversing its TRUE / FALSE result.  This has been corrected.
 +
 +
<p>
 +
Build 418
 +
* Added a new SetTimer instruction.  This causes an event to be fired to the program
 +
when a specified duration (in milliseconds) has passed.
 +
<p>
 +
Build 417
 +
* Corrected a problem with CosM32 that could have caused internal error 91 stack over/under flow error.  This was introduced in version .415.
 +
* Introduced Cryptographic Support.  This is a major enhancement to the encryption features of Comet.  You can now encrypt/decrypt using the best methods known today including RC4, AES and 3DES.
 +
<p>
 +
Build 416
 +
* Corrected a problem that was reporting E25 and E99 in some dialogs
 +
* Fixed a problem that was causing some Windows events to be lost
 +
* Corrected a problem that could have caused a crash when printing
 +
* Corrected a problem that could have caused a crash when using the First IB function to retrieve the first key of a file.
 +
* Changed the handling of the clock device to match that of Comet16.  DSTAT of any name beginning with "c" will return the status of the clock.  If you wish to OPEN the clock, you must use a filename of "CL1".
 +
<p>
 +
Build 415
 +
*New XML file statement introduced to make it easy to output your data in XML format.  For more
 +
info, read the XML Output wiki doc.
 +
 +
*A couple of problems were fixed in SetGlobal and GetGlobal:
 +
** The data is  now unique for each partition.
 +
** The data persists thru running of programs.  Previously a STOP would clear it.
 +
<p>
<p>
Comet 2010.414
Comet 2010.414

Revision as of 20:24, 24 February 2011

Comet32 Enhancements

IB Enhancements for Comet32

Known Problems that We Plan to Consider and/or Address

  • No debugger
  • ODBC is not supported. Replaced with SQL interface.
  • Serial Gateway is not supported. -- Brian

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.

  • Numeric overflows will generate a runtime error E01 for Comet32 programs. You can trap this with an ERRORTO.badge 18:03, 19 May 2009 (UTC) This has been changed as of build 420. Overflow is ignored, although it generates a log message. Jim 12:24, 24 February 2011 (PST)'


Recent Changes

Build 431

  • New (SessionTimeout) mnemonic will automatically shutdown a session after a specified number of minutes. This requires REL version 11.03 or higher.
  • Corrected a problem that could have caused a crashed in the printer event handler.
  • WAKEUP and PAUSE can now be interrupted by F3.
  • Changed the way the Windows printer selection dialog is displayed so that it will be on top of other windows.
Build 430
  • Corrected a problem in ROUNDing the result of numeric calculations.
  • Corrected the implementation of some mnemonics including (CopyFromClipboard) and (CopyToClipboard)
  • E50 no longer erroneously reported for array dimension sizes > 255
  • CosM32 compiler now allows use of characters with a value greater than @79@ in string constants. Use of these characters elsewhere will be ignored and treated as if blank.
  • Each partition now gets is own instance of CosP to eliminate a TCP/IP printer problem.
  • Now uses a cache when printing to a CometAnywhere printer to speedup processing. This change requires supporting changes in CosW.

Build 429

  • Corrected a problem calculating the address of an element in a multi-dimension array.

Build 428

  • Corrected a problem that could have caused a crash if an array subscript was out of range.
  • Corrected a problem that could have put garbage text in the "User" field of a document archive record. This garbage would be seen in DocMgr.
  • The Next User Address and Last System Function fields reported by PSTAT are no longer converted to decimal values.
  • Increased the size of a normalized pathname to 259. The previous limit was 60.

Build 427

  • Corrected a problem in the NUM function for result fields with a non-zero precision.
  • Corrected a problem in the MOD function.
  • Comet would hang after an E16. This has been corrected.
  • Now uses the "C/R same as Qantel" cfig setting.
  • The user's id field is now set for print jobs destined for an archive. This allows DocMgr to display it.

Build 426

  • Fixed a problem in passing system variables in the following scenario:
    • ENTER a Comet16 program
    • RUN a Comet32 program that does an EXIT.
    • Previously this could have caused a crash.
  • Fixed problem in the DOSRW call used to get the device descriptors. Previously you could only get the first 254 devices.
  • Changes to FSTAT for compatibility with Comet16.
  • When writing a CSV file and the first strings were empty it was not putting out place-holders. Now it will generate one blank character in that place.

Build 425

  • Introduced new date functions.
  • Implemented DOSFC for mkdir.
  • Corrected a problem that would crash if you attempted to log out of Comet while background programs were running.
  • Corrected a problem with the NUM function that was reporting an error if the field contained a trailing blank.
  • Enhanced the NUM function so that it accepts special characters such as ,.()-+ in the input string.
  • Corrected problems with the INPUT statement that doesn't require transmit marks (ie the new INPUT).
  • Now reports E74 if a Comet32 IB object file is corrupted.
  • Comet exception reports for CometAnywhere clients now appear on the client instead of the host.

Build 424

  • FSTAT now returns E11 if the file is not found and a directory was not specified. It returns E31 if an invalid directory is specified.
  • Corrected a problem with num2date(0,5). It was returning a blank string.
  • Background sessions now inherit the activating partition's printers, including # printers.
  • Corrected a problem with editing numbers which used (LM) in a FORMAT.
  • Corrected a problem with editing numbers which used a length override in a FORMAT compiled for Comet32.
  • Corrected a problem with numtodate. Leading zeroes were not preserved.

Build 423

  • Comet.exe will now run the Microsoft Visual Studio 2008 Redistributable installation when required for full Comet clients.
  • Corrected a problem that could cause a crash if a printer (or other device) was open in a parent program and the LUN was reused for a file in the subprogram.
  • Corrected a problem with numeric editing which caused numbers to sometimes be truncated.
  • Corrected a problem that could have caused a crash when launching Comet32 automatically on 64-bit Windows systems.

Build 422

  • Background partitions can now be ACTIVATEd. The X00 device is automatically open on LUN 0 for these partitions. (See item # 2 below for X00 enhancements.)
  • The X00 device can now do (CopyFile), (RenameFile), (EraseFile), (FindFirstFile), (FindNextFile), (FileStatus), (GetDirAlias), (SetDirAlias), (OpenClipboard), and (CloseClipboard). Previously these mnemonics could only be used with LUN 0 which excluded background partitions.
  • If a configured directory can't be accessed at startup you'll be notified through a messagebox and an error message will be posted in the Comet log.
  • The Msgbox IB function and statement can now be used in background partitions.
  • The delimiter used for .csv files can now be specified with the FILE (lun) DLM=char$ statement.
  • FILE (lun) NORMAL introduced to reset a file's access from CSV or XML back to normal.
  • Added new clipboard mnemonics (OpenClipboard), and (CloseClipboard). An error can occur if the clipboard is opened by another user and there is no good way to convey that in IB. Now you can use (OpenClipboard) first and test for that case and try again. The old method will still work but this is more reliable. Use of these mnemonics requires REL 10.08 or higher.
  • Added a new mnemonic (ClearBuffer) to clear the X00 buffer between writes. Use of this mnemonic requires REL 10.08 or higher.
  • CosC now detects 64-bit Windows and will launch Comet32 automatically.

Build 421

  • FSTAT now returns E11 if the file is not found and a directory was not specified.
  • Corrected a problem in the NUM function for Comet32 objects that wasn't returning an error if the last character in the string was invalid.
  • Corrected a problem in the STRING function for Comet16 objects that could have resulted in corruption of data in other variables.
  • Session colors specified in the configuration file are now used.

Build 420

  • Corrected problems with FPT and BASE64.
  • Numeric overflow errors (ERR 1) are now ignored just like Comet16.
  • Changes required to get CometExplorer's DirBuild to load.
  • Fixed a bug that caused a trigger event when resetting a timer that is not running.
  • Prevented the changing of a constant when inputting a list of fields.

Build 419 Comet32:

  • Corrected a problem in passing numeric arguments to a proc.
  • CONTAINS result was reversing its TRUE / FALSE result. This has been corrected.

Build 418

  • Added a new SetTimer instruction. This causes an event to be fired to the program
when a specified duration (in milliseconds) has passed.

Build 417

  • Corrected a problem with CosM32 that could have caused internal error 91 stack over/under flow error. This was introduced in version .415.
  • Introduced Cryptographic Support. This is a major enhancement to the encryption features of Comet. You can now encrypt/decrypt using the best methods known today including RC4, AES and 3DES.

Build 416

  • Corrected a problem that was reporting E25 and E99 in some dialogs
  • Fixed a problem that was causing some Windows events to be lost
  • Corrected a problem that could have caused a crash when printing
  • Corrected a problem that could have caused a crash when using the First IB function to retrieve the first key of a file.
  • Changed the handling of the clock device to match that of Comet16. DSTAT of any name beginning with "c" will return the status of the clock. If you wish to OPEN the clock, you must use a filename of "CL1".

Build 415

  • New XML file statement introduced to make it easy to output your data in XML format. For more
info, read the XML Output wiki doc.
  • A couple of problems were fixed in SetGlobal and GetGlobal:
    • The data is now unique for each partition.
    • The data persists thru running of programs. Previously a STOP would clear it.

Comet 2010.414

  • Corrected a problem that could have caused a crash if an attempt was made to ENTER a program that doesn't exist.
  • Local pathnames are now returned in drive letter form even if the folder is configured using a UNC name. This effects PATH and DSTAT.

Comet 2010.413

  • Corrected a problem that would have crashed Comet32 if the SQL device was opened.
  • Added additional information to the error messagebox for DOS errors.

Comet 2010.412

  • Increased the size of the task buffer for mySQL to 64K
  • Introduced a spool alias for the spool section of the Comet.ini file:
[SPOOLERS]

Spool = SP1,$(lac);

...

[PRINTERS]

Printer = Lac,p ,x,SPL:adobe ,Adobe PDF;

This makes it possible to configure a printer called SP1. Previously all printer names needed to begin with "L". If your programs open "SP1" this makes it possible for them to be used with DocMgr without needing to recode them.

Comet 2010.411

  • Restored the functionality of dynamic ACCESSes which was broken in version .410.
  • Corrected a problem handling TERM$ values above T99.
  • The NUM function now handles ROUNDed variables correctly.
  • Trailing printer controls such as (FF) and (LF) were not getting processed.

Comet 2010.409

  • Several printing problems were corrected.
  • Correct a problem that could put the object file from a compiled program in the first accessed directory rather than the specified object directory.
  • Enhanced LOG and MSGBOX to accept either a string or a numeric expression as its operand.

Comet 2010.408

  • Miscellaneous printing problems solved plus the addition of support for slave printers.
  • Problems corrected in the handling of editmasks.
  • Problem corrected for GetGlobal.
  • Problem corrected for formatted writes to CSV files.
  • Problems corrected in SetBit and TestBit.
  • Eliminated a problem that could cause a Windows event to be dropped for dialog programs.
  • Corrected the formatting of the spool name info returned by the DosRw 0xffe6 call (GetDDInfo)

Comet 2010.407

  • Added mySQL driver.
  • Changes required for (GetSlavePrinterName).
  • Corrected a problem using mnemonics on a printer with an associated DES.
  • Changed numeric input in Comet16 objects to ignore precision just like Comet16.

Comet 2010.406

  • Will now automatically run SYSGEN if no .cfg file is available. No special command line arguments are required for this to happen.
  • Corrected a problem in handling the (BZ) mnemonic
  • Introduced support for Windows 7 and Server 2008 R2

Comet 2009.404

  • Rewrote the editmask processing code.
  • Screen mnemonics followed by a comma and positioner now work properly.
  • New Comet Error E86 will be issued if an attempt is made to read or write an image file.
  • Corrected a problem in the compiler that would cause a crash if many include files were used.
  • Constant editmasks are no longer evaluated by the compiler. All checking is done at runtime.
  • The LockDabs statement is now supported by the compiler.

Comet 2009.403

  • Implemented WinSock driver
  • Duplicated the Comet16 positioning and spacing of numeric output. Previously programs run under Comet32 that output numeric values were not aligned properly.
  • Compilation errors involving undefined labels are now reported properly thru CAPI when compiling from UltraEdit.

Comet 2009.402

  • Implemented a Comet32 error log. errorlog.csv will be created in the COS directory.
  • Implemented document archives (for DocMgr).
  • Corrected a problem that was causing Windows message events to sometimes be dropped.
  • Added a color square on the right side of the status line of the Comet window indicating whether the current program object was compiled with Comet16 or Comet32. The indicator is blue for Comet16 objects and green for Comet32 objects.
  • Implemented changes required for DbMgr, ViewMgr, and DBX
  • Implemented changes required for server snapshot utility

Comet 2009.401:

  • Implemented CURPOS.
  • Implemented support for contiguous files.
  • Implemented NOVA / SNOVA functionality.
  • Recoded the str function for Comet32 so it emulates the Comet16 one.
  • Implemented the shortpath DOSMS function.
  • Implemented the CometAnywhere update mechanism.

Comet 2009.400:

  • Improved printer functionality including pdf printers.
  • Improvements in the functionality of dialog-based programs. Try DlgDemo.
  • Improvements in GDI operations such as wallpaper.

Please Add any other issues you see with this product here

Personal tools