The music

Everything you hear here comes from running the cartridge's own sound engine (late_el_sonido, 0x5195, and arranca_melodia, 0x5113, which hands it the channels; the interrupt calls it) on an emulated Z80, frame by frame at 60 per second, just as the game calls it. What the engine writes to the PSG is turned into sound with an AY-3-8910 (tools/musica.py). Each MP3 is the whole piece up to where it starts again, plus 8 seconds of the repeat fading out; those that do not repeat end where the engine ends.

Checked against openMSX

The PSG writes have been compared frame by frame with those of openMSX (C-BIOS MSX1 japonés). In every frame the PSG ends up the same:

The timbre is not checked: it is a textbook AY-3-8910, not a recording of the emulator. The probes are tools/omsx_psg.tcl and tools/coteja_psg.py.

How a piece is asked for

arranca_melodia takes the number in A and respects the melody that is already playing; suena_si_hay_partida does the same only in a game (bit 6 of 0xE002). Low numbers are effects and from 0x97 up there is music. Each voice takes fifteen bytes from 0xE010 and 0xE03D holds the copy of the PSG mixer, which start-up leaves at 0xB8. The tracks marked «in the table» are in the track table but no routine asks for them with an ld a; 0xA6, 0xA7 and 0xAC, minutes long and nearly without notes, are left out.

The tunes

The tune at 0x42E2 (0xA5)

Asked for by L_42E2; lasts 5.3 s.

The tune at 0x6921 (0xAE)

Asked for by L_6921; lasts 3.2 s.

Table track 0xA3 (0xA3)

Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 25.6 s.

Table track 0xA4 (0xA4)

Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 25.6 s.

Table track 0xAD (0xAD)

Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 3.2 s.

Table track 0xAF (0xAF)

Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 5.2 s.

Table track 0xB0 (0xB0)

Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 5.2 s.

Table track 0xB1 (0xB1)

Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 5.2 s.

Table track 0xB2 (0xB2)

Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 5.2 s.

Table track 0xB3 (0xB3)

Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 5.2 s.