```php ZX Spectrum TAP Loader Simulator | Mister Spectrum

ZX Spectrum TAP Loader Simulator

Load a real .TAP file and watch, hear and visualise the tape signal as the ZX Spectrum receives it.

Virtual Cassette Player

00:00 / 00:00
No tape loaded
No tape loaded

Tape Signal Oscilloscope

LOW EAR SIGNAL HIGH

ZX Spectrum Loading Screen

ZX SPECTRUM
LOAD ""

Current Block

No block being loaded
Block type
Filename
Length
Start address
Parameter 1
Parameter 2
Bytes received
0
Checksum

Tape Blocks

#
Type
Information
Length

Loading Information

Signal
LOW
Pulse
Loader stage
Waiting
Block
Total blocks
Tape size

How the Spectrum Loader Works

A standard Spectrum tape contains a sequence of pulses. The Spectrum's EAR input detects transitions in the incoming signal and the ROM loader measures the timing between those transitions.

The standard ROM loader uses approximately 2168 T-states for pilot pulses, 667 and 735 T-states for the two synchronisation pulses, 855 T-states for each half of a zero bit and 1710 T-states for each half of a one bit.

The border is generated continuously while the ULA is scanning the display. The simulator therefore represents the loading effect as animated horizontal colour bands rather than simply flashing the whole border.

```