| div16 | 16-bit division; returns both the quotient and the remainder. No division by zero checking; should be done by calling routine |
| div8 | 8-bit division (conditions same as above) |
| mul16 | 16-bit multiplication |
| XYtoCursor | Calculates the memory location from an (x,y) format |
| CursorXY | Returns the cursor position in (x,y) format |
| GetColorPointer | Calculates the color memory location at cursor position |
| CursorNewLine | Moves the cursor to the beginning of the next line |
| CursorStorePointer | Stores the cursor memory pointer |
| ScrollUp | Scrolls the entire screen 1 row up, adding spaces on the bottom row |
| PrintString | Prints a null-terminated string to the screen, starting at the current cursor position |
| PrintFlashString | Same as above, but the string is stored in the ATMega program flash |
| PrintChar | Prints a single character to the screen at the current cursor position. The cursor is moved one spot to the right. This subroutine does NOT handle control characters like CR |
| HandleChar | Prints a single character to the screen and handles all control codes (used internally for handling keyboard interface) |
| PrintInt | Prints a 16 bit signed decimal number |
| ClrScreen | Clears the screen (fills screen with spaces) |
| FillScreen | Fills the screen with a specific character |
| Random | Generates a 16-bit random number (C64 RND function clone) |
| Seed | Sets a new seed for the random subroutine |
| | |