Subject: ALS-8 Manual Errors
From: <Saved by Microsoft Internet Explorer 5>
Date: Sun, 27 Jun 2004 20:31:33 -0400

ALS-8 Manual Errors
These notes are extracted from the ALS-8 SYSTEMS
GROUP Newsletter, volume one, number one; published March 15, 1977, with the
support and help of Processor Technology Corp.

MANUAL ERRORS

There
are two errors and one omission in the manual as it stands now.  The
maximum terminal width is 118 and not 120, as is stated in the manual.
Even though the input buffer is 120 bytes long, two bytes need to be reserved
for the carriage return and an end-of-file marker.

The
item that was left out is an operator in the form of a "$".  This operator
is equivalent to the address that the next instruction will be assembled
at.  If we had an instruction such as:

JNZ
$+3

and the next instruction was three bytes in
length, then this would skip the next instruction if the zero flag was reset
while:

JMP
$

would not accomplish anything, as it would
just pass control to the next instruction.  I suggest that you try using
this operator in a variety of ways, as it can prove to be a very powerful
tool.

PROGRAM ERRORS

Two
minor errors have been found in the ALS-8 PROMS.  The first one has to do
with the 'TERM' command which sets the length of the input buffer.  If
input is made to the end of the system RAM including the custom command table is
cleared.  This is because the carriage return is treated as a character and
there is no room left for it.  The best way to get around this error (until
it is corrected) is to set the terminal width to two more than the width of your
input device.

The
other error concerns the 'ASC' pseudo-op.  When using a terminal width over
80 and when in the 'FORM' mode, the closing delimiter of the string is missed by
the assembler.  As a result, any comment that is on the same line will
become part of the 'ASC' string.  Since there seem to be a lot of variables
that enter into this error, the best way to avoid an error is to use the
unformatted mode when assembling programs that contain 'ASC' strings.

There
is also an error in the TXT-2 Editor PROMS.  If you use a CONTROL-H to
delete the last character of a line that is exactly 64 characters long, the file
structure of the line is altered.  This error can be avoided by replacing
the last character with a space when it needs to be deleted.

The
above mentioned errors (term width, 'ASC', and CTRL-H) have been corrected in
the PROMS from serial number 500 on.  For those PROMS before the 500, these
errors will be corrected during an update service that will be announced in the
next newsletter.

'<' & '>' OPERATORS

Also
included in this update will be the addition of the high half and low half
operators to the assembler.  These operators allow you to use either the H
or L part of a 16 bit value assigned to a label as an eight bit value.
Here's an example:

VDMBASE   EQU   0CC00H

MVI   A,<VDMBASE

will load the accumulator with 0CCH.
Whereas:

POTTS    EQU   0E0DFH

MVI   E,>POTTS

will load register 'E' with 0DFH.

I found that on page 75 of the ALS-8 manual, the example CUST /ESET/ FFF3
should read CUSTE /ESET/ FFF3