The Native C64 MIDI Player & Transcoder is a full-featured Standard MIDI (.mid) and Microsoft (.rmi) file player designed for the stock Commodore 64 (NTSC/PAL). Written entirely in optimized 6502 assembly, it bridges modern files with the warm textures of the MOS 6581 SID chip.
A non-real-time Transcoder Engine processes multi-track files and handles polyphonic note conflicts using a dynamic voice allocation engine. If a song has too many active tracks, an interactive priority menu opens, letting you customize note-stealing and toggle tracks before playback.
Features native runtime support for dual-SID hardware, expanding options into a 6-voice stereo sound stage. It includes zero-overhead RAM Expansion Unit (REU) support to stream dense files up to 64KB via hardware DMA, and features a built-in disk browser. Soon, the tool will also let you export your transcoded songs directly to disk as universal, standalone .SID (PSID/RSID) files.
Features
- Format Agnostic Loading: Parses standard multi-track Format 0/1 MIDI (.mid) files and Microsoft .RMI containers seamlessly.
- Integrated File Browser: Features a stable PETSCII disk directory scanner ($) with automated string extensions filtering out everything except music payloads.
- Jukebox Quick-Replay Token: Input a forward slash [/] at the prompt to instantly repeat and loop the last transcoded buffer, completely bypassing disk access overhead.
- 3.1 Dynamic Voice Allocation: Intelligently squeezes up to 16 MIDI tracks into 3 hardware SID voices plus a dedicated noise-driven percussion track.
- Interactive Priority Menu: Displays active tracks mapped by their General MIDI instrument family names, allowing cursor-selected track muting during heavy polyphony.
- Advanced Real-Time Modulation: Features dynamic velocity-mapped low-pass filter sweeps and organic amplitude decay modeling for responsive acoustic instrumentation.
- Mid-Stream Tempo Tracking: Decodes runtime microsecond changes on the fly via 32-bit division inside a rock-solid 60Hz/50Hz raster interrupt frame.
- Dual-SID Stereo Expansion: Prompts at boot to route allocation matrices to $D400, D420, or DE00, unlocking a rich 6.2-channel stereo audio field.
- Dynamic REU Accelerator: Automatically detects attached RAM Expansion Units, using hardware DMA streaming to safely process dense files up to 64KB.
- Production UI Layout: Features visual loading progress bars, data transcoding swirl spinners, and an interactive horizontal timeline tracking slider.