Claim set ·
data/claims/pokeyellow-av.yamlPokémon Yellow sound (pret/pokeyellow)
Game: Pokémon Yellow.
Pikachu's voice clips are 1-bit recordings played through the wave channel. The routine disables interrupts, fills wave RAM with $FF so the channel outputs a constant high level, and then for each bit sets channel 3's output level to 100% ($20) or mute ($00), with counted delay loops setting the rate. pokeyellow-av/pikachu-pcm
About: Pokémon Yellow Sampled sound
Value
{
"bits": 1,
"waveFill": 255,
"levels": [
"$20",
"$00"
]
}audio/pikachu_pcm.asm#L22-L57di … ld hl, _AUD3WAVERAM ld de, wSavedAudioWavePattern .saveWaveDataLoop ld a, [hl] ld [de], a inc de ld a, $ff ld [hli], a … ld a, $20 ldh [rAUD3LEVEL], apokeyellow: disassembly of Pokémon Yellow · home/pikachu_cries.asm#L11-L47.loop ld a, [hli] ld d, a … REPT 7 call LoadNextSoundClipSample call PlaySoundClipSample ENDR … LoadNextSoundClipSample:: ld a, d and $80 srl a srl a ldh [rAUD3LEVEL], a sla d ret PlaySoundClipSample:: ld a, $3 .loop dec a jr nz, .loop retChecked by claude-agent, 2026-10-21 — read PlayPikachuSoundClip's channel 3 setup and PlayPikachuPCM's per-byte loop: bit 7 of each byte, shifted right twice, is $20 or $00, NR32's 100% and mute settingsThe routine saves wave RAM first and restores it after the clip. The rate in samples a second wasn't worked out from the cycle counts.
Cited by: Sampled sound