python3 rom_image_writer.py
minipro -p AT28C256 -w rom.bin
./bin/vasm -Fbin -o <FILE> -dotdir src.s
- 6502 assembly reference
#immediate$hexidecimal.org $ADDRlocate following atADDR.word $WORDwrite location at current addrressLABEL:label
0000 - 3fff - RAM
6000 - 7fff - 65c22
6000 - 600f - 65c22 registers 0-15
8000 - ffff - EEPROM
IFR- flags,IER- enabledIER- bit 7 is set/clear - set bit to 1 to set/clear interruptsCA1,CA1,CB1,CB2change in value triggers interrupt- Interrupt value is on I/O pins.
PCRregister hasCB1/2control.
RS - Register select (0: instruction, 1: data); port PA7
RW - Read (1) / Write (0); port PA6
E - Enable: Start read/write; port PA5
D0-7 - Data
minicom -b 9600 -D /dev/cu.usbserial-0001 -8 -w
Following these instructions
Code is in:
startup.s- initialize everything, call main- Port VIA setup, ACIA setup, and LCD setup to C
mem_map.s- constants for memory maplcd.s- code for the LCD (port to C)acia.s- code for the ACIA (port to C)
run_time.lib is a copy of the Watara Supervision runtime.
TODO
- interrupts? call to
handle_char