TetoricaFM2612Analyzer

VGM Inspector & Visualizer

Sound chip support

Open the shareable support page ↗

Playback and analysis have different coverage. “—” means the feature is not currently available. This list describes implemented features, not a guarantee for every track or chip combination.

VGM / VGZ / S98 / SPC support by chip
ChipPlaybackON/OFFState displayNote-ishVoice / Export
YM2612FM + DAC
Seek cache
6 FM CH, PSGOperator InfoFM + PSG toneTFI / VGI, audition, MIDI, MML, LilyPond
YM2203FM + SSG
Seek cache
3 FM CH, SSGOperator Info / SSGFM + SSG toneTFI / VGI, audition, MIDI, MML, LilyPond
YM2608FM + SSG + Rhythm + ADPCM-B
Seek cache
FM CH, SSG / Rhythm / ADPCM-BOperator Info / SSGFM + SSG toneTFI / VGI, audition, MIDI, MML, LilyPond
YM2610 / YM2610BFM + SSG + ADPCM-A/B
Seek cache
4 / 6 FM CH, SSG / ADPCM-A/BOperator Info / SSGFM + SSG toneTFI / VGI, audition, MIDI, MML, LilyPond
YM2151 / YM2164 (OPM / OPP)8 FM CH
Seek cache
8 CHOperator InfoFMOPM Info, audition, OPM ZIP / snapshot, approximate TFI ZIP / snapshot, MIDI, MXDRV MML / FM-only MDX file, LilyPond
Sega PSGTone + noise
Seek cache: standalone / Genesis / YM2151 / YM2164
PSG groupPSG monitorToneTone MIDI / LilyPond; no FM voice export
RF5C164PCM (Mega-CD)
Seek cache: Genesis configuration
PCM groupPCM monitor / samples—Sample explorer
32X PWMMAME-derived PWM
Seek cache: Genesis configuration
PWM groupPWM / samples—Sample explorer
YM2413OPLL9 CH; rhythm groupsOperator InfoFM (base pitch); rhythm channels have no single pitchBase-pitch MIDI / LilyPond, MGSDRV MML (9-sound mode; rhythm omitted except Bass Drum); no FM voice snapshot export
YMF262 (OPL3)2OP / 4OP / rhythm18 CH; 4OP pairs / rhythm groupsSBI InfoNote-ish / Sheet Music base pitch (2OP / 4OP)SBI 2OP / 4OP, audition, ZIP / snapshot; MIDI / MusicXML / LilyPond; rhythm omitted, 4OP pairs use leading CH; MIDI requires multi-port support; register JSON snapshot
YM3526 / YM3812OPL / OPL29 CHVoice / Operator Info, SBI InfoFM base pitch; rhythm CH7–9 and CSM omittedSBI, audition, ZIP / snapshot; MIDI / MusicXML / LilyPond; OPL register-state voice snapshot JSON (no TFI/VGI conversion)
Y8950FM + ADPCM9 FM CH, ADPCM, chipFM operators / register snapshot, SBI Info9 FM CH base pitch / Sheet MusicSBI, audition, ZIP / snapshot; MIDI / MusicXML / LilyPond; ADPCM, rhythm CH7–9 and CSM omitted. No instrument editing.
YMF278BOPL4 FM + PCM18 FM CH, 24 PCM CHSBI Info (FM)FM base pitch (2OP / 4OP), Live / Song / Sheet Music; PCM and rhythm omittedFM SBI 2OP / 4OP, audition, ZIP / snapshot; FM MIDI (multiple ports) / MusicXML / LilyPond; PCM Sample Explorer: key-on snapshots, waveform, one-pass preview / WAV; external Wave ROM when required; register JSON snapshot
AY-3-8910 / YM2149Tone + noise + envelope3 CH, chipAY Operator InfoToneTone MIDI / LilyPond, MGSDRV MML (PSG tracks; adds YM2413 FM tracks when mixed)
K051649 / K052539 (SCC / SCC+)5-channel wavetable; mixed with MSX AY/YM2413/Y89505 CH, chip—Wavetable base pitch; Live / Song / Sheet MusicMIDI / MusicXML / LilyPond, including MSX mixtures; waveform harmonics and rewriting omitted
Atari POKEY (single / dual)4 voices per chip; tone, polynomial noise and volume-only output4 / 8 CH, independent chip mixerRegister state, shared clocks, joined pairs, filters, noise and DAC modes—Playback / pause / normal seek / WAV. No score, MIDI, FM voice or instrument export; no seek checkpoint cache or analog board model.
WonderSwan4-channel wavetable, Voice PCM, sweep, noise (MAME)4 CH, chip / mixerWave / Voice PCM / Sweep / Noise4 CH wavetable base pitch; Live / Song. Voice PCM, sweep and noise intervals omitted from notes.MIDI / MusicXML / LilyPond / WAV; wave RAM graph, preview and JSON / code / WAV export; timed Voice PCM capture with JSON / WAV export. Unplayed RAM is listed separately. No instrument editing or seek cache. Hyper Voice / DMA and dual-chip / variant files unsupported.
HuC6280 / PC Engine CD6-channel wavetable, DDA, noise, LFO (MAME); optional MSM5205 ADPCM6 CH + ADPCM toggle / mixerWave / PCM-DDA / Noise / LFO6 CH base pitch; Live / Song. DDA, noise, LFO and ADPCM omitted from notes.MIDI / MusicXML / LilyPond; WAV includes ADPCM. Instrument editing and dual unsupported.
MSM52053/4-bit ADPCM; VGM 1.72 command 0x32ADPCM toggle / mixerParsed register writes—Playback / normal seek / WAV; reset, FIFO, prescaler and external VCLK. No note or sample export; MSM6585 and dual unsupported.
Other supported chip combinationsAutomatic composition from the VGM header; WAV exportChip (Genesis FM/PSG/RF5C164/PWM grouped)——Normal seeking; no combined note/voice analysis or checkpoints. Existing ROM, variant and dual-chip restrictions apply.
OKIM62954-voice ADPCM; standalone or with YM2151 / YM2164 (CPS-1 sound configuration), or YM3812Chip (single toggle)——Embedded ROM, clock/pin7 changes, standard and NMK112 banks; normal seeking; no sample/voice export
OKIM62584-bit ADPCM; standalone or mixed
Seek cache: with YM2151 / YM2164 only
Chip (single toggle)Sample Explorer—Timed ADPCM register captures / JSON / ZIP, decoded waveform, stereo preview / WAV (up to 10 s); play/stop intervals, not recovered instruments; preview restarts divider phase
Sega PCM (315-5218)16-voice 8-bit PCM; standalone, mixed with Sega PSG, or mixed with YM2151 / YM2164
Seek cache: with YM2151 / YM2164 only
16 CH, chipSample Explorer—Unsigned 8-bit ROM snapshots, usage / bank / loop settings, waveform, raw PCM / ZIP and one-pass stereo preview / WAV; no wrapped ranges or live automation
NES APU + FDS (NTSC)2 pulse + triangle + noise + DMC; optional FDS wavetable
Seek cache
5 CH + optional FDS CH6—Pulse / triangle / FDS base pitch; FDS modulation and timed envelopes omittedMIDI / MusicXML / LilyPond; no MML or voice export. PAL/dual unsupported.
Game Boy DMG (LR35902)2 square + wave + noise
Seek cache
4 CH, chip—CH1/CH2 square + CH3 wave (base pitch); CH4 noise has no pitchBase-pitch MIDI / LilyPond; no MML or FM/PCM voice export
SNES SPC700 / S-DSPSPC snapshot; CPU + 8-voice DSP at 32,000 Hz8 voices in SPC / BRRCaptured DSP / voice registers8-voice Live / Pitch / Song Timeline; BRR reference estimates and manual correctionBRR waveform, decoded preview, BRR / WAV / metadata; normal seeking from original file. Analyzed base-pitch MIDI / Sheet Music / MusicXML / LilyPond; no VGM command conversion.
  • Seek cache: speeds up seeking by restoring a saved playback position and replaying only the remaining interval. Available for OPN (YM2203 / YM2608 / YM2610 / YM2610B), Genesis configurations (YM2612 / Sega PSG / RF5C164 / 32X PWM), YM2151 / YM2164 with optional Sega PSG / Sega PCM / OKIM6258, Game Boy DMG, and NES APU with optional FDS (NTSC). Every active chip must support restoration. Genesis or OPN mixed with OKIM6258, standalone Sega PCM / OKIM6258, and rows without a Seek cache label use normal seeking. Previously visited positions may be faster while their checkpoints remain cached; uncached sections still need replay. Changing the track, ROM or playback settings can invalidate the cache.
  • YM2164 (OPP): selected by the VGM YM2151 clock field's bit 31. Shares the OPM analysis/export path; Timer B runs at half the YM2151 rate. Undocumented registers 0x00–0x07 are not emulated specially. Mixing with MSX AY / OPLL / Y8950 / SCC / SCC+ is supported. A second OPM/OPP chip is not supported. Playback, seeking, Timer B and note/voice extraction are covered by synthetic VGM tests; real SFG tracks have not yet been verified.
  • S98: one YM2203, YM2608 or YM2612 device. Compressed S98 and multiple devices are not supported.
  • SPC: accurate snes_spc CPU/DSP core. Tag length and fade are used; untagged files default to 180 seconds, with a one-hour transport limit. Note-ish and Sheet Music share background interval analysis and BRR fundamental estimates; uncertain samples use provisional C4. Reference corrections apply to displays and MIDI / MusicXML / LilyPond, never SPC playback. Only the completed analyzed interval is exported. MIDI retains timing and pitch bends; scores use semitone pitches, a 1/16 grid and assumed 4/4 with adjustable BPM. Noise has no note; pitch modulation shows its base pitch. Audible envelopes, release, echo and later held-sample RAM edits are not transcribed. Raw BRR previews omit DSP envelopes and echo. Host transfers, complete IPL ROM requirements, and real-game compatibility need individual verification. No game data or Nintendo IPL ROM is bundled.
  • MSX mix: YM2151 / YM2164 + Y8950 + AY + YM2413 + K051649 / K052539 (SCC / SCC+) playback, per-chip/channel controls, Live / Song Note-ish and MIDI / MusicXML / LilyPond export. AY noise, Y8950 ADPCM/rhythm/CSM and OPLL rhythm other than Bass Drum are omitted. SCC uses waveform repeat pitch; constant waves, halted periods and test frequency modes are omitted. More than 15 melodic tracks require multi-port MIDI playback. OPM/OPP noise, partial key masks and CSM are omitted. MSX mixtures use normal seeking; mixed voice export and Operator Info are not available. When OPM/OPP is present, its FM-only MXDRV MML / MDX export is available. A second instance of any chip and mixtures with YMF278B (OPL4) are not supported.
  • PCM / ADPCM sheet music: SPC BRR base-pitch transcription is experimental; other sample-based parts remain TODO. Playback pitch alone does not determine the note name: the original sample's reference pitch must also be known or estimated. Drums and sound effects may have no definite pitch.
  • Sample memory: some YMF278B tracks need an imported yrw801.rom (2 MiB). YM2608 rhythm playback uses the ADPCM-A ROM. YM2610 ADPCM uses the VGM's embedded ROM data. OKIM6258 needs no external sample ROM.
  • OKIM6295: uses embedded VGM ROM blocks (0x8B). Second instances and DAC stream destinations are not supported. YM2151 and YM3812 mixing is tested with synthetic ROM data and the real FM core; commercial game tracks have not been audited. OKIM6295 mixtures use normal seeking, without snapshots.
  • OKIM6258: 3-bit ADPCM, recording and a second instance are not supported. YM2151 mixing is covered by synthetic tests with real cores.
  • Sega PCM: an arcade chip (OutRun, Space Harrier, System 16/18/24, ...), not a stock Genesis/Mega Drive cartridge chip. ROM bank shift/mask come from the VGM header's interface register. Mixes with Sega PSG and/or YM2151 (e.g. OutRun). A second instance is not supported.
  • WonderSwan: single-chip playback supports wavetable RAM writes and Voice PCM / sweep / noise. Note-ish and score exports infer only the written wavetable base frequency; CH2 Voice PCM, CH3 sweep and CH4 noise intervals are omitted. Waveform harmonics and RAM rewriting are not inferred. Wave RAM snapshots can be graphed, auditioned and exported as JSON / code / WAV. Timed Voice PCM captures preserve byte timing and hardware routing, split into at most 10-second windows, with JSON / WAV export. Unplayed RAM candidates are separate. Instrument editing is unavailable. Seeking replays from the beginning; no checkpoint cache. Hyper Voice / DMA and dual-chip / variant files are unsupported.
  • Game Boy DMG: not mixed with any other chip yet. The DMG wave-RAM corruption glitch (retriggering channel 3 at an exact bad moment) is not reproduced. Note-ish/MIDI/LilyPond are write-driven approximations: length-counter timeout and channel 1 frequency sweep are time-based and not reconstructed from register writes.
  • Note-ish / MIDI / MML: estimated base pitches and key intervals; PCM/drums and all modulation are not transcribed. MML uses a sixteenth-note grid. OPN exports target MUCOM88 / OPNAvoid; YM2151 / YM2164 targets MXDRV MML or compiled FM-only MDX. MDX has no PDX; noise, partial keys, CSM, live register changes, pan and LFO are not replayed.
  • DAC streams: first-instance YM2612, Sega PSG, PWM, OKIM6258, HuC6280 and WonderSwan destinations are supported. Other destinations are warned about and omitted.
  • All / Snapshot: All collects voices across the track; Snapshot captures the current channel states. Unsupported chips and features can leave parts of a track silent; check the playback warning area.

YM2608 rhythm: Download Tetorica synthetic ROM, then import it above. Sounds differ from the original. BSD-3-Clause license.

Playlist — no tracks imported

    0:00 / 0:00
    Export

    Track metadata (GD3)

    Header

    No file loaded.

    Command Usage

    No analysis yet.

    Data Blocks

    No data blocks inspected yet.

    Special Command Details

    No special command details yet.

    0x68 PCM RAM Write

    No 0x68 PCM RAM write details yet.

    0x92 Context

    No 0x92 context yet.

    Channel Notes

    No notes yet.

    Export MML / MDX

    Choose an FM MML dialect or an MDX file for YM2151.

    Suggested tempo with manual adjustment (34–999 BPM). Used for sixteenth-note quantization.

    Export Music Sheet

    One staff per selected pitched channel, or use Channel Groups. Preview the score or download an editable MusicXML file.

    Default: 120 BPM. You can change this value.

    Selecting any group member includes the complete group. Regenerate after changes.

    Include channels

    Assumed 4/4 and a 1/16 grid. Key, meter and triplets are not detected. Noise, original timbres, modulation and audible release are omitted. Short notes may disappear; unknown pitches become rests.

    Music Sheet preview

    Transcription notes

    OpenSheetMusicDisplay · Credits and licenses

    Export LilyPond

    One staff per selected pitched channel, or use Channel Groups. Download an editable .ly file for LilyPond.

    Default: 120 BPM. You can change this value.

    Selecting any group member includes the complete group. Regenerate after changes.

    Include channels

    Assumed 4/4 and a 1/16 grid. Key, meter and triplets are not detected. Noise, original timbres, modulation and audible release are omitted. Short notes may disappear; unknown pitches become rests.

    Export MIDI

    Base-pitch notes with Pitch Bend and original timing. Noise, envelope phase and original timbres are not reproduced. SPC uses the analyzed interval and current BRR tuning references.

    Suggested tempo with manual adjustment. Original note timing is preserved; BPM sets the beat grid.

    Export WAV

    Render the actual playback audio (all chips and channels together) to a 16-bit stereo WAV file at the playback sample rate.

    Defaults to this track's own length from the VGM header. Rendering stops early once the track ends (when Loop is off). With Loop on, rendering stops at this limit — raise it to capture extra loop passes.

    0:00 / 0:00

    Channel Groups

    Combine notes for scores and the Song timeline. Playback and live physical CH monitors are unchanged. Settings last for this loaded track only.