Funciton Name | Description | Entry condition | Exit condition | Entry Address (Hex.) |
---|---|---|---|---|
LCD | Displays a character on the LCD at current cursor position (Also RST 4) | A= Character to be displayed | none | 4B44 |
SETCUR | Move cursor to specified location. | D = column number ( 1-40 ) E = row number |
none | 7440 |
PLOT | Turn on pixecl at specified location. | D= x coordinate (0-239) E = y coordinate (0-63) |
none | 744C |
UNPLOT | Turn off pixecl at specified location | D = x coordinate (0-239) E = y coordinate (0-63) |
none | 744D |
POSIT | Set cursor position. | H = column number (1-40) L = Low Number |
none | 427C |
ESCA | Send Specified Escape Code Sequence | A = escape code | none | 4270 |
Function Name | Description | Entry Address (Hex.) | Equiv. ESC |
---|---|---|---|
CRLF | Generate a Carriage Return and Line Feed | 4222 | -- |
HOME | Move cursot to Home position (1,1) | 422D | -- |
CLS | Clear display | 4231 | -- |
SETSYS | Set system Line (lock line 8, Label) | 4235 | T |
RSTSYS | Reset system line (unlock line 8, Label | 423A | U |
LOCK | Lock Display (no scrolling) | 423F | Y |
UNLOCK | Unlock display (scrolling) | 4244 | W |
CURSON | Turn on cursor | 4249 | P |
CUROFF | Turn off cursor | 424E | Q |
DELLIN | Delete line at cursor position | 4253 | M |
INSLIN | Insert a blank line at cursor position | 4258 | L |
ERAEOL | Erase from cursor to end of line | 425D | K |
ENTREV | Set Reverse chracter mode | 4269 | P |
EXREV | Turn off Reverse character mode | 426E | q |
Name | Contents | Address |
---|---|---|
CSRY | Cursor Position (ROW) | F639 |
CSRX | Cursor Position (Column) | F63A |
BEGLCD | Start of LCD memory | FE00 |
ENDLCD | End of LCD memory | FF40 |
Function Name | Description | Entry Conditions | Exit conditions | Entry Address (Hex) | |||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
KEYREAD | Scan keyboard for a key. Return with or without one. | none | A = character, if any
|
7242 | |||||||||||||||||||||||||||||||||||
CHGET | Wait and get character from Keyboard | none | A = character code Carry --set if special character Carry --reset if normal character (<F1>-<F8> return preprogrrammed strings) |
12CB | |||||||||||||||||||||||||||||||||||
CHSNS | Check keyboard queue for characters | none | Z flag set if queue empty, rest if keys pending | 13DB | |||||||||||||||||||||||||||||||||||
KEYX | Check keyboard queue for chracters or BREAK | none | Z flag set if queue empty, reset if keys pending Carry flag set when BREAK entered, reset with any other key |
7270 | |||||||||||||||||||||||||||||||||||
BRKCHK | Check for BREAK characters only (CTRL-C or -S) | none | Carry flat is set if BREAK or PAUSE entered, reset if not BREAK characters | 7283 | |||||||||||||||||||||||||||||||||||
INLIN | Get line from keyboard (terminated by <ENTER>) | none | Data stored at location F685 | 4644 |
The function table consists of character strings to be used by the keyboard driver when processing <F1> - <F8> keys. The strings have maximum length of 16 characters and are terminated by a "80" ( Hex.) code. If the last character of the string is OR'ed with 80, the character will also serve as a terminator. The entire string will be placed in the keyboard buffer when the appropriate strings for all 8 key is pressed. You must specify character strings for all 8 function keys (use the terminator byte for any you wish to ignore).
FCTAB DEFM 'Files' ; F1 DEFW 0D80 DEFM 'Load' ; F2 DEFB 80 DEFM 'Save' ; F3 DEFB 80 DEFM 'Run' ; F4 DEFW 0D80 DEFM 'List' ; F5 DEFW 0D80 DEFB 80 ; Ignore F6 DEFB 80 ; Ignore F7 DEFM 'Menu' ; F8 DEFW 0D80
Function Name | Description | Entry onditions | Exit conditions | Entry Address (HEX) |
---|---|---|---|---|
STFNK | Set Function key definitions | HL = Address of function table (above) | none | 5A7C |
CLRFLK | Clear function key definition table (fills with 80's) | none | none | 5A79 |
DSPNFK | Display function keys | none | none | 42A8 |
STDSPF | Set and display function keys | HL = Start address of function table | none | 42A5 |
ERAFNK | Erase function key display | none | none | 428A |
FNKSB | Display function table (if enabled | none | none | 5A9E |
Function Name | Description | Entry conditions | Exit conditions | Entry Address (Hex) |
---|---|---|---|---|
PRINTR | Send a character tothe line printer | A = Character to be printed | Carry is set if cancelled by BREAK, reset if normal return | 6D3F |
PNOTAB | Print character without exanding tab characters | A = character to be printed | 1470 | |
PRTTAB | Print a character expandign tabs to spaces | A = character to be printed | 4B55 | |
PRTLCD | Print contents of LCD | none | none | 1E5E |
Function Name | Description | Entry conditions | Exit conditions | Entry address (Hex) |
---|---|---|---|---|
DISC | Disconnect Phone line | none | none | 52BB |
CONN | Connect phone line | none | none | 52D0 |
DIAL | Dial a specified phone number | HL = Ph. number address | none | 532D |
RCVX | Check RS232 queue for characters | none | A = number of characters in queue Z flas is set if no data, reset if characters pending |
6D6D |
RV232C | Get a character from Rs232 received queue | none | A = character received Z flag set if O.K., reset if error (PE, FF, or OF) Carry set if Break pressed, else reset |
|
SENSCQ | Send an XON resume character (CTL-Q) | none | none | 6E0B |
SENDCS | Send an XOFF pause character (CTL-S) | none | none | 6E1E |
SD232C | Send a character to the RS-232 or Modem (with XON/XOFF) | A = character to be sent | 6E32 | |
CARDET | Detect carrier | none | A = 0 if carrier Z flag is set if carrier, else reset |
6EEF |
SNDCOM | Send a character to RS232-C or modem (wihtout XON?XOFF flow control) | C = characer to be sent | 6E3A | |
BAUDST | Set Baud rate for RS232-C | H = Baud rate (1-9,M) | none | 6E75 |
INZCOM | Initiailize RS232-C and Modem | H = Baud rate (1-9,M) L = UART configuratin code (see UART byte description below) Bit 0: specifies number of Stop Bits 0=1, 1=2 Bit 1-2: Parity Setting. 00=None, 01 = Even, 10 = Odd Bit 3-4: Word Length: 00=6, 01=7, 10=8 The byte is ANDed wit 1FH to ignore Bits 5-7. The text string containign hte current STAT settings is located at F65BH(5 bytes): Baud, Length, Parity, Stop Bits and XON/XOFF switch. |
none | 6EA6 |
SETSER | Set serial interface parameters and acivate RS232-C/Modem | HL = Start address of ASCII string containing parameters terminated by a binary zero ('78E1E',0). Syntax same as in Telcom's STAT Carry set for RS232-C, reset for Modem |
none | 17E6 |
CLSCOM | Deactivate RS232-C/Modem | none | none | 6ECB |
Function Name | Description | Entry Conditions | Exit Conditions | Entry Address (HEX) |
---|---|---|---|---|
DATAR | Read character from cassette (no checksum) | none | D = character from cassette | 702A |
CTON | Turn motor on | none | none | 14A8 |
CTOFF | Turn motor off | none | none | 14AA |
CASIN | Read a character from cassette and update checksum | C = current checksum | A = character C = contains the updated checksum |
14B0 |
CSOUT | Send character to cassette and update checksum | A = character to be sent C = current checksum |
C = updated checksum | 14C1 |
SYNCW | Write cassette header and sync byte only | none | none | 6F46 |
SYNCR | Read cassette header and sync byte only | none | none | 6F85 |
DATAW | Write a character to cassette (no checksum) | A = character to be sent | none | 6F5B |
The Directory Table (located at F962) contains all file location, type and status information.
Each file is managed by an 11-byte directory entry in the format:
Byte 1: Directory Flag (for file type and status) Bytes 2-3: Address of file Bytes 4-11: 8 Byte filename
The Directory Flag contains the following information:
Bit 7 MSB 1 if a valid entry Bit 6 1 for ASCII text file (DO) Bit 5 1 for Machine lnguage (CO) Bit 4 1 for ROM file Bit 3 1 for invisibile file Bit 2 reserved for future use Bit 1 reserved for future use Bit 0 internal use only
Function Name | Description | Entry conditions | Exit conditions | Entry Address (Hex) |
---|---|---|---|---|
MAKTXT | Create a text file | filename (max. 8 bytes) must be stored in FILNAM (0FC93). 'DO' extension not required | HL = TOP address of new file DE = address of Directory entry (Flag) Carry set if file already exits, reset if new file |
220F |
CHKDC | Search for file in directory | DE = address of filename to find (ASCII filename + 0 byte terminator | HL = start address (TOP) of file Z Flag -- 0 (file found), 1 file not found |
5AA9 |
GTXTTB | Get top address of file | HL = address of directory entry for file | HL = Top start address of file | 5AE3 |
KILASC | Kill a text (DO) file | DE = file TOP start address HL = address of directory entry (flag) |
none | 1FBE |
INSCHR | Insert a character in a file | A = character to insert HL = address to insert character |
HL = +1 Carry -- set if out of memory |
6B61 |
MAKHOL | Insert a specified number of spaces in a file | BC = number of spaces to insert HL = address to insert spaces |
HL & BC are preserved Carry -- set if out of memory |
6B6D |
MASDEL | Delete specified number of characters | BC = number of characters to delete HL = address of deletion |
HL & BC are preserved | 6B9F |
Function Name | Description | Entry conditions | Exit conditions | Entry address (HEX) |
---|---|---|---|---|
INITIO | Cold start reset | none | none | 6CD6 |
IOINIT | Warm start reset | none | none | 6CE0 |
MENU | Go to Main Menu | none | none | 5797 |
MUSIC | Make tone (See owner's manual for frequency and duration information) | DE = frequency B = duration |
none | 72C5 |
TIME | Read system TIME | HL = address of 8 byte area for TIME | HL => TIME (hh:mm:ss) | 190F |
DATE | Read system DATE | HL = address of 8-byte area for DATE | HL => DATE (mm/dd/yy) | 192F |
DAY | READ system DAY of the week | HL = address of 3 byte area for DAY | HL => DAY (ddd) | 1962 |