|Table Of Contents||Previous||Next|
If using the automatic table setup which the assembler performs for you, the MEMEND value in FLEX should be set to the last address which the assembler should use. FLEX initializes MEMEND to the actual end of user memory. You may have an application where you don't want this to be the case. If so, set MEMEND manually before executing the assembler.
When the assembler is finished, it jumps into FLEX's warm start. If you wish it to exit to some other address, place that address at location $0027.
OUTPUT CHARACTER ROUTINE
As supplied, the assembler outputs through FLEX's PUTCHR routine. This takes advantage of the escape-return sequence in FLEX to pause or terminate an output listing. If, however, you wish to output through some user supplied output routine, place the address of such a routine at location $002A. This routine should output the character in the A register and return without affecting any registers except the condition codes.
TAPE OUTPUT CHARACTER ROUTINE
Presently, tape output is performed character at a time through the PUTCHR routine in FLEX. This causes any tape output to be routed to the terminal which may be the same port on which the tape device is located. If you require a different output routine for tape, place the address of such a routine at location $002D. This routine should output the character in the A register to the tape device and return without affecting any registers except the condition codes.
LINES PER PAGE
If the page mode is selected, the assembler automatically places a header at the top of each page (with the current page number) and performs a page eject at the bottom. The number of lines which are output before the page eject occurs (including the header lines) is set at location $0018 in the assembler. This value is currently set to 58 lines. Change if desired.
LABELS PER LINE
The symbol table output is done with multiple symbols per line. Currently there are 5 labels per line. If desired, this number can be changed by setting the byte at location $0019.
AUTO FIELDING COLUMNS
As explained in the special features section, this assembler performs auto fielding. The columns in which the fields are placed are currently set to 8, 15, and 25 for the mnemonic, operand, and comment fields respectively. If desired, these columns can be changed by altering the three bytes beginning at location $001A.
When tape output is selected, the assembler turns on the tape unit, delays for a set period, then begins the output. When the last data has been output, the assembler turns the tape unit off. This tape on and off control is performed by outputting up to four characters for each function (on and off). Currently these characters are all set to nulls ($00) as the assembler expects manual tape control. If you wish to set these characters, the four tape on characters should be placed at locations $001E through $0021. The four tape off charcters should be placed at locations $0022 through $0025.
The time delay for tape turn-on can also be adjusted by altering the byte at location $001D. This byte is currently set to 4 (roughly 2 seconds) and should be raised for longer delays or lowered for shorter delays (can be zero for no delay).
If you wish to set up the necessary tables and buffers manually, you may do so. This requires that you supply the starting and ending addresses of the five tables described in the section on special features and set a byte called MANUAL to some non-zero value. This MANUAL byte is located at $0003 and is currently equal to zero. The assembler tests this byte and if zero, performs automatic table setup. If non-zero, the assembler picks up the table start and end addresses from the following locations:
SOURCE BUFFER BEGIN $0004
SOURCE BUFFER END $0006
MACRO NAME TABLE BEGIN $0008
MACRO NAME TABLE END $000A
MACRO ACTIVATION BUFFER BEGIN $000C
MACRO ACTIVATION BUFFER END $000E
MACRO TEXT BUFFER BEGIN $0010
MACRO TEXT BUFFER END $0012
SYMBOL TABLE BEGIN $0014
SYMBOL TABLE END $0016
|Table Of Contents||Previous||Next|