SBC-2's operating system is essentially a System Monitor, Mini-assembler, disassembler, and Break handler.
The source files are assembled with the TASS assembler.
I've been slowly adding features to the Monitor to improve its functionality.
The latest addition is the "U" command that allows you to upload files from
any serial terminal program using either XMODEM/CRC or plain text in Intel-Hex
format.   This will allow you to create binary files on a PC and then
tranfer them directly to RAM for execution.   Both XMODEM/CRC and Intel-Hex
offer some level of error detection and correction to improve reliability
during the transfer.   My thanks to Ross Archer for contributing
his Intel-Hex code and for helping to tweek the XMODEM interface.   To
use, just press "U"
Look for an XMODEM/CRC file download feature to be added in the future.
Here is a list of my operating system's commands:
By gracious permission of Peter Jennings, the original author and copyright
holder of "MicroChess", I present my modified version for SBC-2. It used the
RS-232 terminal to display a text-based chess board. It can be
downloaded here -> uchess.zip
65C02 Monitor V5.1 Ready
with Enhanced Basic Interpreter (c) Lee Davison
(Press ? for help)
Syntax = {} required, [] optional, HHHH hex address, DD hex data
[HHHH][ HHHH]{Return} - Hex dump address(s)(up to 16 if no address entered)
[HHHH]{.HHHH}{Return} - Hex dump range of addresses (16 per line)
[HHHH]{:DD}[ DD]{Return} - Change data bytes
[HHHH]{G}{Return} - Execute a program (use RTS to return to monitor)
{HHHH.HHHH>HHHH{I}{Return} - move range at 2nd HHHH down to 1st to 3rd HHHH
[HHHH]{L}{Return} - List (disassemble) 20 lines of program
[HHHH]{.HHHH}{L}{Return} - Dissassemble a range
{HHHH.HHHH>HHHH{M}{Return} - Move range at 1st HHHH thru 2nd to 3rd HHHH
[HHHH][ HHHH]{Q}{Return} - Text dump address(s)
[HHHH]{.HHHH}{Q}{Return} - Text dump range of addresses (16 per line)
{R}{Return} - Print register contents from memory locations
{U}{Return} - Upload File (Xmodem/CRC or Intel Hex)
{V}{Return} - Monitor Version
{HHHH.HHHH>HHHH{W}{Return} - Write data in RAM to EEPROM
{!}{Return} - Enter Assembler
{@}{Return} - Cold-Start Enhanced Basic
{#}{Return} - Warm_Start Enhanced Basic
{?}{Return} - Print menu of commands
Mini-Assembler commands are:
Syntax = {} required, [] optional
HHHH=hex address, OPC=Opcode, DD=hex data, '_'=Space Bar
'$' Symbols are optional, all values are HEX.
Any input after a 'semi-colon' is ignored.
{HHHH}{_}{Return} - Set input address
[HHHH]{_}{OPC}[_][#($DDHHHH,X),Y]{Return} - Assemble line
[HHHH]{L}{Return} - List (disassemble) 20 lines of program
{Return} - Exit Assembler back to Monitor
{?}{Return} - Print menu of commands
A copy of the binary and source code of the monitor program can be
downloaded here -> sbc2os.zip
Home