Everything you hear here comes from running the cartridge's own sound engine (corre_el_sonido, 0x7359, and pide_un_sonido, 0x72C0, which hands it the channels; the interrupt calls it at 0x4031) 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.
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.
pide_un_sonido takes the number in A and does nothing in exhibition mode (0xE002): the demo is played in silence. Low numbers are effects (1 the ball's whistle, 3 the hit...) and from 0x86 up there is music. Each record takes eleven bytes from 0xE661 and 0xE660 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.
The game starts (0x87)
Asked for by empieza_la_partida; lasts 4.7 s.
The end of the game (0x8A)
Asked for by fin_de_la_partida; lasts 5.5 s.
The hole is finished (0x86)
Asked for by hoyo_acabado_espera; lasts 2.2 s.
A track in the table (0x88)
Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 5.5 s.
Another track in the table (0x89)
Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 5.5 s.
A third track in the table (0x8B)
Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 5.5 s.
A fourth track in the table (0x8C)
Asked for by ninguna llamada directa: está en la tabla de pistas; lasts 5.5 s.