170 likes | 287 Views
Comet32. Is this the Future of Comet?. File System Text based CRT Closed System. CFAM Windows Program Works as part of large collection of Windows Software. Then And Now. What Is Missing?.
E N D
Comet32 Is this the Future of Comet?
File System Text based CRT Closed System CFAM Windows Program Works as part of large collection of Windows Software Then And Now What Is Missing?
We Have been re-writing Comet For the last Nine Years. We have re-written the File System, Drivers, Utilities, and User interface. Now it is time to expand the IB/MTB Language itself.
What is Missing in the MTB Language? • Larger Programs • Longer Strings • Longer Numbers • User Defined Procedures & Functions • Support for 64 bit Windows • ? Discussion?
Can’t we just add these to the Curent Comet? • The Current System is too *“Crufty”. • The Compiler is too difficult to work on. • The Base is still 16 bit * In computer programming, code is cruft if it is duplicating code elsewhere in the system, is unnecessarily complicated, is a poor solution to the problem it solves, is left over from a previous change, etc. -- Wikipedia
Goals for New Runtime & Compiler • Intermix current programs with new programs • Pass common • Pass DABs • Pass open files • New runtime 32 bit not 16 bit • This means Windows 32 only (no win98) • Unlimited Program size (4.2 GB)
Long Strings • Declared String length up to 64K in size • Dynamic Strings • Length DYNAMIC & local a$ • Length Unlimited (up to 4.2 GB ) • Watch out – you could overflow memory Read a whole file into a string, manipulate its contents and write it out again.
Large Numbers • Numeric variables • Declare up to 32 digits • Precision up to 32.32 • Built on large numeric processor • Can deal with numbers as great as 256 digits • Function Results are 64.32
Large Arrays • Any Array can be up to 4.2 GB in size • Watch out
Numeric Functions • Many more math functions • Sin() • COS() • Tan() • Atan() • Log10() • Cbrt() • More …
Functions and Procs • User declared • Local labels • Local variables • Arguments Passed by value or by reference • Dynamic Creation of local Storage • Recursive Functions ARE Accommodated
Operating System • No fixed partitions • Each program lives in its own windows space
What you Won’t get • Image files • Qantel Emulation • Emulated code runs in 16 bit Comet Only • Background (Activate/Terminate) These are available in Comet16 only.
There is much left to do • XAP • Winsock Gateway • Sort • Interrupt • Escapesub / Errorsub / Excpsub
What Must be changed? • Comet32 runtime is implemented as a DLL COSW is its host. This should change so that CometAnywhere can work. • More/closer integration is needed to make Comet32 and Comet16 programs interact.
Should we continue this Development? • Our Top Priority is to help our Developers and Subscribers • What should really happen is to write all of Comet16 into 32 bit assembly language or C++. • Large task • Jim must do this (Cringe!) • Research/Analysis done. • Lazyness
Discussion • How important is this? • 64 Bit computers/Operating Systems • Hey! What about • Apple? • Linux? • PDAs