SP (A008)

Temporary storage location for the stack pointer. SP is used in the register

 

dump subroutines and by the breakpoint function.

PORADD (A00A)

This location contains the port address used for SWTBUG’s I/O routines.

PORECH (A00C)

This byte tells SWTBUG® ‘s input routines whether or not to echo.

XHI (A00D)

Temporary index register storage used by numerous routines.

XLOW (A00E)

Temporary index register storage used by numerous routines.

XTEMP (A010)

Temporary index register storage for input and output routines.

SWIJMP (A012)

When a SWI instruction is encountered, processor control will transfer to the

 

location stored in SWIJMP.

BKPT (AQ14)

Temporary breakpoint address storage.

BKLST (A016)

Temporary data storage for the breakpoint routine.

TW (A044)

Temporary storage location for load/punch.

TEMP (A046)

Temporary storage location for punch and load.

BYTECT (A047)

Temporary storage location for load/punch.

SWTBUG® SUBROUTINE AND TEXT STRING DESCRIPTION

IRQV (E000)

This is the entry point for regular IRQ interrupts. Processor control is given of

 

the service routine whose address is stored in IRQ.

JUMP (E005)

This is the service routine for the J command. BADDR is used to input the

 

address and a jump then occurs to the correct address.

CURSOR (E009)

Home-up and erase to end of frame characters for CT 1024.

LOAD (E00C)

Load is the ASCII loading routine. Load uses a number of other SWTBUG®

 

subroutines.

 

BADDR (E047)

BADDR is a subroutine to input a 4-digit hexadecimal number, such as 137D,

 

from the control terminal. BADDR uses the subroutines BYTE, INCH and

 

INHEX and uses temporary storage locations XHI, XLOW, CKSM, both

 

accumulators and the index register. When BADDR is called it will look for

 

four hex numbers to be entered from the terminal. If a non-hex value, such

 

as H, is entered, SWTBUG® control will resume. If all characters entered are

 

valid hex, the results will be stored in XHI, XLOW and the index register.

 

Accumulator A will contain of XLOW. If 137D is entered the results will be as

 

follows-

 

 

ACC A

7D

 

ACC B

CKSM

 

IXR

137D

 

XHI

13

 

XLOW

7D

-

CKSM and ACC B are used internally to generate a check sum for the

 

PUNCH routine.

 

BYTE (E055)

BYTE is similar to BADDR, but inputs only two hex characters from the

 

terminal to generate one 8-bit byte equivalent. BYTE uses the subroutines

14

Page 15
Image 15
Southwest Specialty Products 6800 manual Swtbug Subroutine and Text String Description