Changes

Jump to: navigation, search

Source Codes

522 bytes added, 13:39, 9 January 2013
/* General Notes */
* Memory range for programs is &0040-&a700. This avoids firmware and memory allocated by AMSDOS disc ROM.
* Programs on cassette and disc have a header that define the load address, length and execution address.
 
In Pasmo assembler use the "end" mnemonic to define the label which is the execution address and use "--amsdos" to put an AMSDOS header on it.
 
* Basic programs start at &170.
* Firmware uses interrupt mode 1 of the Z80 (interrupts jump to &0038)
* Lowest place you can *LOAD* a binary file to with BASIC is &389 e.g.:
openout"d"
*Screen is normally 40 crtc chars wide (CRTC R1=40), 25 crtc chars tall (CRTC R6=25). 8 scan lines per char (R9=7). Firmware functions assume this.
*Screen is bitmapped. You must draw/erase your own sprites and text.
*Firmware refreshes the palette every 50th of a second, so you need to turn off the firmware and use the hardware directly, or set the colours using firmware.
*Firmware can be "turned off", by disabling lower ROM, redirecting interrupts and not calling firmware functions.
2,562
edits