[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: "unable to load basic.system"



Simon Williams <ludditetech@mac.com> wrote:

> Also wondering if anyone has any info on whether there are different
> versions of BASIC.SYSTEM to go with the different versions of ProDOS.

There are several versions of BASIC.SYSTEM, ranging from 1.0 to 1.5.
The version number doesn't bear any direct relationship to the ProDOS
version number.

The main changes in later versions are bug fixes and a few new features.

> If there are compatibility issues, it would certainly be useful
> knowledge for us beginners.

I've generally left ProDOS and BASIC.SYSTEM as a matching set, so I'm
not aware of any compatibility issues.  I wouldn't expect any problems.

Apple published technical notes which described the changes in both
ProDOS and BASIC.SYSTEM: ProDOS-8 technical notes #23 and #24.

Here is an extract of the useful content of #24 (BASIC.SYSTEM
Revisions).

V1.1

   o   Fixed a bug in variable packing (used by CHAIN, STORE, and
       RESTORE).
   o   Changed the interpreter to use the ProDOS startup convention
       of a JMP instruction followed by two $EE bytes and a startup
       pathname buffer.
   o   Removed a bad buffer address in the FIELD parameter of the READ
       routine.
   o   Fixed a bug in APPEND so calls to OPEN and READ from a
       random-access file would not cause the next call to APPEND to
       any file to use the record length of the random-access file.
   o   Added the BYE command to allow ProDOS QUIT calls from BASIC.
   o   Removed the limited support for run-time capabilities which had
       been present.


V1.2

   o   Changed the CATALOG command to ignore the number of entries in
       a directory when listing it so AppleShare volumes could be
       cataloged properly (this number can change on the fly on an
       AppleShare volume).
   o   Fixed another bug in CATALOG so pressing an unexpected key when
       a catalog listing was paused with a Control-S would no longer
       abort the catalog.

V1.3

   o   Changed BSAVE so it now truncates the length of the saved file
       when the B parameter is not used.  To replace the first part of
       a file without truncation, use the B parameter with a value of
       zero.  This behavior with the B parameter is how V1.1 and V1.2
       worked without the B parameter.
   o   Fixed a bug in CHAIN and STORE where they expected one branch
       to go two ways at the same time.
   o   Added the MTR command for easier access to the Monitor from
       BASIC.
   o   Made internal changes to the assembly process for easier project
       management.  These changes do not affect the code image.

V1.4

   o   Fixed a bug which caused a BLOAD into an address marked as used
       in the global page to start performing a BSAVE on the file
       instead of returning the NO BUFFERS AVAILABLE message.  For
       this reason, BASIC.SYSTEM version 1.3 should not be used.

V1.4.1

   o   Fixed a bug in the mark handling routines.  When using the "B"
       parameter to indicate a byte to use as a file mark, the third
       and most significant byte would never be reset before the next
       use of B.  For example, if you used a B value of $010000 and
       then used a B value of $2345, BASIC.SYSTEM 1.4 would use
       $012345 for the second B parameter value.

V1.5

   o   Fixed centuries-old bug where NOTRACE after a THEN (as in
       IF/THEN) disconnected BASIC.SYSTEM.  Now it doesn't.
   o   BSAVE now modifies the auxtype of an existing file only if the
       file type is $06 (BIN).
   o   BASIC.SYSTEM can now launch (with "-") GS/OS applications.
       Files of type $B3 are passed through to an extended QUIT call
       to the ProDOS 8 MLI.
   o   $B3 files are now listed as S16 in the catalog.
   o   Fixed a bug in the READ command where reading from the slot 3
       /RAM disk passed errors back to BASIC, making the program break
       without completing a legal operation.
   o   Code optimized and crunched slightly.


-- 
David Empson
dempson@actrix.gen.nz