z80
z80 copied to clipboard
Fast and flexible Z80/i8080 emulator with C++ and Python APIs
Goran Devic @gdevic, the author of https://github.com/gdevic/Z80Explorer, has just kindly told me that we have https://github.com/hoglet67/Z80Simulator -- a Linux port of a simulator originally written by Pavel Zima that makes...
https://sinclair.wiki.zxnet.co.uk/wiki/Z80#Differences_between_NMOS_and_CMOS_Z80s says: > LD A,I and LD A,R bug > The NMOS Z80s suffer a problem whereby LD A,I and LD A,R record the state of IFF2 after it has...
Make it possible to choose the type of the emulated hardware at run-time, but make sure to maintain zero overhead for CPU-specified implementations. - [ ] Update documentation. - [...
The undocumented `out (c),0` instruction is the original NMOS Z80 behaviour. On newer CMOS Z80 chips it writes 0xff instead. I have an emulator option to control the behaviour, so...
In an attempt to make sure we do the right thing about the `WZ` register for the undocumented `BIT r, b, (i + d)` instructions (#21 and #22), I ran...
As mentioned in #16, working on #13 revealed a problem with the standard state module utilising `switch`es where it seems we could use indexed accesses for better performance, e.g., in...
Might be the case for instructions like `djnz` and `ldir`?
Might work as a good source of ideas towards better performance. The first step would be to have some infrastructure for getting the assembly output for arbitrary instructions of interest.
#5 confirmed that lazy flags are generally implementable and might be beneficial in terms of performance. This task is (to try) to support lazy flags for i8080 and see if...
We call `on_read()` and `on_write()` in the beginning of the cycle but seem to aim to call `on_input()` and `on_output()` at where they actually should happen within the cycle. Now...