-
Notifications
You must be signed in to change notification settings - Fork 0
Late timings
The INT signal begins 1 T-state earlier if /RFSH is low during the T-state preceding the one in which the INT signal would normally begin. If interrupts are enabled, this causes instructions whose last M-cycle is an opcode fetch of 4 T-states ending 14,338 T-states before the first VRAM pixel to be immediately followed by the INT response, which then starts 14,337 T-states before the first VRAM pixel.
The details of this behavior were uncovered by Marta Sevillano Mancilla (aka MartianGirl and TheMartian) in May 2025. Weiv reportedly emulated this behavior some time earlier, but never shared an explanation of how it worked with the community.
Please note that the state of the /RFSH line may not be related to the actual cause of this behavior, but it is useful to describe the conditions under which late timings occur. Additionally, This behavior is temperature-dependent: some machines tend to exhibit late timings when cold and shift to early timings as they warm up.
The INT signal begins 1 T-state earlier. This is common on ZX Spectrum +2 (grey) models. ZX Spectrum +128K (toastrack) models can also exhibit this behavior occasionally, possibly due to temperature.
Copyright © Manuel Sainz de Baranda y Goñi, Peter Helcmanovsky, holub, Weiv and Zoran Vučenović
Published under the terms of the GNU Free Documentation License
- 4 brights
- Machine models
- Memory and I/O contention
- Memory map
- Floating bus
- Late timings
- Snow effect
- Timings
- ULA
- Tape image
- Disk image
- Snapshot