2018-01-28 18:30:49 +00:00
|
|
|
/* System Specific C02 Header File Template */
|
|
|
|
|
|
|
|
/* This header contains standardized Constants, *
|
|
|
|
* Variables, and Function Calls tailored to a *
|
|
|
|
* a specific platform. */
|
|
|
|
|
|
|
|
/* System Specific ASCII Key Codes */
|
2018-08-03 15:22:12 +00:00
|
|
|
#define DELKEY $7F //Delete/Backspace Key
|
|
|
|
#define ESCKEY $1B //Escape/Stop Key
|
|
|
|
#define RTNKEY $0D //Return/Enter Key
|
|
|
|
#define NULKEY $00 //No Key was Pressed
|
2018-01-28 18:30:49 +00:00
|
|
|
|
|
|
|
/* Zero Page Variables used as Pointers */
|
|
|
|
char strlo,strhi; //String pointer for String and I/O functions
|
|
|
|
char dstlo,dsthi; //Secondary string pointer for String functions
|
2018-08-14 18:14:32 +00:00
|
|
|
char blklo,blkhi; //Block Segment Pointer
|
|
|
|
char stklo,stkhi; //Stack Pointer
|
2018-01-28 18:30:49 +00:00
|
|
|
|
|
|
|
/* Ephemeral Library Variables *
|
|
|
|
* Available for use in program code, but may *
|
|
|
|
* be obliterated by Function Calls. *
|
|
|
|
* May be Zero Page, but not required */
|
2018-07-25 23:00:46 +00:00
|
|
|
char temp0,temp1,temp2,temp3; //Temporary variables
|
2018-01-28 18:30:49 +00:00
|
|
|
|
|
|
|
/* Static Library Variables *
|
|
|
|
* Must be preserved between function calls *
|
|
|
|
* May be Zero Page, but not required */
|
2018-08-14 18:14:32 +00:00
|
|
|
char blkslo, blkshi; //Block Start Address
|
|
|
|
char blkelo, blkehi; //Block End Address
|
|
|
|
char blklen; //Block Segment Length
|
|
|
|
char stkslo, stkshi; //Stack Start Address
|
|
|
|
char stkelo, stkehi; //Stsck End Address
|
|
|
|
char random; //Last Result of Pseudo-Random Number Generator
|
|
|
|
char rdseed; //System Seed for Pseudo-Random Number Generator
|
2018-01-28 18:30:49 +00:00
|
|
|
|
|
|
|
//System Subroutines
|
2018-08-14 18:14:32 +00:00
|
|
|
char plkey(); //Poll Console for character
|
|
|
|
char rdkey(); //Wait for character from Console
|
|
|
|
char getkey(); //Read ASCII character from Console
|
|
|
|
void newlin(); //Advance cursor to beginning of next line
|
|
|
|
void prchr(); //Print ASCII character to Console
|
|
|
|
void prbyte(); //Print Accumulator as Hexadadecimal number
|
|
|
|
void prhex(); //Print Low Nybble of Accumulator as Hex Digit
|