Thank you for being one of the first people to try out the ROMulator Z80!
Please see the instructions for ROMulator 6502 for assembly and setup.
The FPGA board for the ROMulator Z80 currently comes un-programmed. You will need to program it before use with either a Raspberry Pi or the standalone programmer kit which includes a D1 Mini.
The only differences from the 6502 version include:
edit the files ‘config/memory_set_default_z80.csv’ and ‘config/memory_set_default_z80.csv’ to modify configurations.
run ‘make romulator_z80’ instead of ‘make romulator’ to build the z80 version of the firmware
run ‘make program_z80’ instead of ‘make program’ to both build and program the device.
Also please note that bank switching has not been implemented on the ROMulator Z80 yet – on many Z80 systems regions of memory are swapped/changed with the use of soft switches or other means. This will most likely be a somewhat customized implementation per system, as different computers use different means for bank switching. But this will be coming soon, starting with the systems I have around which use this (Kaypro, some Sinclair models, among others). It should all be doable as a modification to the verilog code for the fpga, if you would like to try implementing this yourself please let me know!
Documentation for the ROMulator Z80 will be added to the github readme as time allows.
Assembly: Solder 2×5 pins on the ‘SPI0’ section of the board. Also solder a 1×2 pin header to the position next to SPI0.
Then solder the 2×20 female socket on the bottom of the board. See images for details. The remaining positions on the board do not need to be populated to program/debug with the ROMulator, they do provide optional access to the second SPI port (SPI1) on the Raspberry Pi, as well as the serial port (UART).
See here for additional instructions and how to connect to the raspberry pi.