Finished version of
SPemuSpectrum 48Kb software emulator, it is EXOS compatible, required at least 112 Kb of RAM. 50-60% of Speccy 48Kb programs run on the emulator. FYI: there are many Spectrum programs which writes to ROM area on real spectrum, so it can happen that a game is running on the spectrum emulator but overwrites an area which can cause problem later, so if a program is not starts after another program, then please reset the emulator, and try it again. The emulator accept SNA and TAP files, and real Speccy tapes can be loaded also.
The package contains 2 files:
SPEMU.COM - normal EP executable file
SPemu.tap - TAP file, which can attached to EP128emu and load it to a tape config, or it can be played with TAPIR or EPTE, and load it to a real EP without EXDOS.
Usage of the emulator:
From Speccy screen
F1 - Enter to menu
F8 - Reset SPemu
Reset - Reset computer
In menu screen
F1 - Load mode: OFF=load real spectrum tapes, ON=load files by EXOS
F2 - Attribute conversion settings:
1/3 = 1/3 of the screen is converted at every interrupt
1/1 = full screen is converted at every interrupt
OFF = attribute conversion is disabled
DEF = set user defined paper and pen
F3 - User defined pen colour, it is used only when F2 set to DEF
F4 - User defined paper colour, it is used only when F2 set to DEF
F5 - Silent Mode: ON = sound off OFF = Sound on
F6 - Load SNA file
F7 - Select TAP file, if the file is selected, then it returns to Speccy screen, where LOAD "" should be entered
F8 - Emulator speed setting:
SLOW = send 00h to 0BFh port
NORM = send 04h to 0BFh port
FAST = send 08h to 0BFh port
Int Joy R/L - sets attribute conversion to 0FEh Port I/O emulation (ex read keyboard on Speccy), it happens every n th emulated port I/O
P - Enter pokes
L - Load a previously saved snapshot from the memory (it is available on EP with at least 160 Kb of RAM), if you try to load a snapshot from the RAM prior you saved one, nothing happens
S - Save a snapshot to memory (it is available on EP with at least 160 Kb of RAM)
Esc - Exit from menu