Two numberings for one character set on the Commodore 64
About this article
PETSCII codes, screen codes and control codes on the Commodore 64: which numbers PRINT and CHR$ use, which numbers you POKE into screen memory, how the KERNAL converts one to the other, and the colour, cursor and graphics codes, checked against Commodore's own tables and ROMs.
Keyboard, border, beeper, joystick, paging and sound — one port at a time
About this article
The Spectrum's I/O port map, model by model: port $FE for keyboard, border, beeper and tape on every machine, answered by any even address; the Kempston joystick on port $1F; $7FFD paging on the 128K models, decoded differently on the 128/+2 and the +2A/+3; the +2A/+3's second paging port $1FFD; the AY-3-8912 at $FFFD and $BFFD; and the +3's disk and printer ports.
The 16 KB program that runs BASIC, and the routines inside it that machine code can borrow
About this article
A guide to the 48K ZX Spectrum's 16 KB ROM at $0000-$3FFF: the restart vectors, the interrupt routine that runs fifty times a second, the character set, the system variables, and the routines a machine-code program is most likely to call, with the names Logan and O'Hara gave them in 1983 and the traps each one sets.