CPU8080.steps(N) always executes a full instruction, even when that exceeds the number of machine cycles given. This makes the code unsuitable for emulating systems such as the Altair 8800, where "single-step" steps through cycles, rather than instructions. Cycle-stepping is important not only for accuracy, but also to make debugging easier, as described here.
It would be nice to have cycle-step functionality so that this web-based Altair 8800 emulator could work like a real Altair in this respect.
CPU8080.steps(N)always executes a full instruction, even when that exceeds the number of machine cycles given. This makes the code unsuitable for emulating systems such as the Altair 8800, where "single-step" steps through cycles, rather than instructions. Cycle-stepping is important not only for accuracy, but also to make debugging easier, as described here.It would be nice to have cycle-step functionality so that this web-based Altair 8800 emulator could work like a real Altair in this respect.