Tricky68k is a Motorola 68000 simulator for macOS, based on Volker
Barthelmann's VASM assembler, the
GNU binutils package, Karl Stenerud's
Musashi emulator, and the
Fragaria editor.
Tricky68k was tested on OS X Yosemite and later, up to macOS Catalina.
The simulator implements a single I/O device (the teletype), mapped from 0xFFE000 to 0xFFFFFF inclusive.
- You write a (16 bit) word to that range to output a character to the teletype
- You read from the same range to fetch character from the keyboard FIFO. If the keyboard FIFO is empty, -1 will be read. No interrupts are fired when the FIFO gets data, so you need a loop which waits until a character is read:
fetchChar:
move.w $FFE000,d0
bmi fetchChar ;Loop while reads a < 0 value
;Read something > 0 => got a character