The Acorn 6502 Microcomputer Kit Firmware

More pictures

Timeline & people





Emulator Overview
Using the Monitor
Emulator Menus

Included in the Microcomputer User’s manual is a listing of the monitor program, which resides in the PROMs addressed at the top two pages of the memory map ($FE00-$FFFF).   [The ‘$’ sign on this page and in the code indicates that the following number is written in hexadecimal.]

This listing is well commented, but has a number of errors (missing labels, incorrect hex codes, etc.), which would seem to indicate that it has been produced manually, possibly by retyping from a handwritten assembly listing. There is also a significant change in the actual PROM code (the key debounce delay has been doubled by adding an instruction in the DELAY loop).

I have therefore edited a new copy of the monitor code in order to produce an assembler source file which can be assembled using Squak Valley Software’s Shareware TASM assembler. This includes equates for the monitor variables (in page $00), the stack (in page $01), and the RAM/IO memory and registers (in page $E0).

Here are the original text and the updated source and output files:

acornMonitor.manual Original text from the User’s manual (scanned to ASCII and OCR errors corrected; no other changes made).
acornMonitor.asm Revised source for the monitor, incorporating commentary from original text (corrected where appropriate) and using original names where possible.
acornMonitor.lst Assembly listing resulting from the command
  tasm -65 acornMonitor.asm
(with a little post-processing).
acornMonitor.obj Assembled output in hexadecimal object format. This has been manually checked against the contents of the PROM.

  Photographs and HTML text © Mike Cowlishaw 2001, 2002.