I am creating an emulator for a simple 6809 board, "Max6809". https://oldmicros.net/product/6809-max-pcb/ https://sites.google.com/site/gogleoops/mc6809-min-board The board contains 64K of SRAM, a 6521 ACIA and a 6850 PIO. The emulator code bing used here was extracted from "vecx", so includes support for the peripheral chips used by the Vectrex. This will be removed soon whilst the two 'new' I/O chips are added. For simplicity in testing (both the hardware and the emulator), the memory contents are loaded from 0000 upwards from the file "memory.bin". This file *should* be exactly 64K, however due to the actual chips in use being DS1245AB or DS1249AB SRAMs, which are 128KB or 256KB respectively, the memory.bin file *may* be 128K or 256K, in which case only the first 64K will be read. Note that files shorter than 64K will fail because the initial entry point is determined by the reset vectors! (Though fortuitously if a memory.bin file *were* too short, the vectors would all be set to 0000 and so the program would actually start at 0000 as expected!) Input to the ACIA and output from the ACIA will be to stdin & stdout. Input to the PIA will come from an accompanying text file which will contain on each line a delta-time to wait in uSec since the last read or write from that device, and the data to be returned on the PIO pins. Output will be written to a similar file containing a timestamp of when the data was written followed by the data on the PIO output pins.