Replacing the obsolete Iomega ZIP drive in Roland SP-808/SP-808EX samplers with modern ATAPI storage devices.
| Area | Status |
|---|---|
| Firmware patch (ZIP bypass) | ✅ Working — validated on hardware (April 2024) |
| CompactFlash cards | ✅ Tested up to 32GB |
| SD cards via CF adapter | ✅ Working |
| ZuluIDE emulation | ✅ Working (use zuluide.ini) |
| Disk image mounting (macOS/Linux) | ✅ Working |
MIDI → binary extraction (rolandext.py) |
✅ Working |
Binary → MIDI conversion (bin2midi.py) |
|
| VS2 file format | ❌ Undocumented |
| CN7 debug UART | ❌ Not yet investigated |
| Epson SLA919F ASIC protocol | |
| RDAC audio format | rdac) |
- Extract the original firmware from the SP-808EX MIDI update files (see
firmware/README.md) - Patch with
python firmware/patch_sp808.py SP8EXall.bin SP8EXall_patched.bin - Convert back to MIDI with
python firmware/bin2midi.py SP8EXall_patched.bin SP8EX_patched - Run the round-trip test before flashing (see
firmware/README.md) —bin2midi.pyhas not yet been verified on hardware - Flash via MIDI (power on SP-808 holding SHIFT, send files #1–#8 in order)
- Install a compatible storage device (CompactFlash, SD via CF adapter, or ZuluIDE)
- Use
zuluide.iniif using ZuluIDE
Clone the repository and explore the firmware analysis, ATAPI protocol documentation, and hardware interface details in the docs below.
The Roland SP-808 sampler (1998) uses an Iomega ZIP-100 drive for storage. ZIP drives are now obsolete, unreliable, and increasingly difficult to source. This project enables modern storage alternatives through:
- Firmware modification: Bypassing ZIP drive validation routines
- Hardware documentation: Understanding the ATAPI interface and system architecture
- Tool development: Utilities for firmware extraction, patching, and disk image handling
firmware/ Firmware binaries, extraction and patching tools
rolandext.py MIDI SysEx → binary extraction
patch_sp808.py Apply ZIP bypass patch to firmware binary
bin2midi.py Binary → MIDI SysEx (for reflashing)
hardware/ Datasheets, schematics, board photos
IDA/ IDA Pro scripts for H8S/2653 firmware analysis
Disks/ Disk image analysis and RDAC map
Analysis and protocol documentation is in the root and named files.
- CPU and Architecture - H8S/2653, memory map, PCB observations
- Flash Memory - Sharp LH28F800SUT-70 specifications
- Notes and Overview - Memory map, firmware load address
- ZIP Drive Validation Bypass - The patch: how and why
- SZHC Command Table - ATAPI command table structure
- SP-808 vs A6 Firmware - Comparison that found the patch location
- Firmware Workflow - Extract → patch → flash procedure
- ATAPI Protocol - IDE/ATAPI reference
- ZIP Drive Initialization - Initialization sequence
- Bus Trace - Full IDE bus capture
- Disk Structure - FAT16 filesystem, VS2 filenames
- Mounting Disk Images - macOS/Linux procedures
- CompactFlash Notes - CF card compatibility
- Using IDA - Setup guide for H8S firmware analysis
CPU: Hitachi H8S/2653 (16-bit, 20MHz, 64KB ROM, 4KB RAM)
Storage Interface: ATAPI via Epson SLA919F ASIC
Audio Format: Roland RDAC compression (MTP mode)
Disk Format: DOS/MBR partition table, FAT16 filesystem
The SP-808 was designed around the Iomega ZIP-100 drive, which provided 100MB of removable storage in an era before flash memory. The firmware includes specific validation routines that check for genuine Iomega drives, preventing use of alternative storage devices.
This project bypasses those checks through targeted firmware modifications, documented hardware analysis, and development of supporting tools for disk management and data extraction.
Contributions welcome. See CONTRIBUTING.md and TODO.md for open items.
Priority areas:
bin2midi.pyhardware test — the round-trip encode/decode is verified correct but the script has not been used to flash a real SP-808. If you try it, report the result.- VS2 file format — filenames are known (
SONG0000VS2,EFFECT__VS2,PADBANK_VS2, etc.), internal format is not documented. - CN7 debug port — the unpopulated connector breaks out TX1/RX1/XRST from the H8S/2653. A logic analyser session during boot could reveal a debug UART.
- Additional storage device testing — report which CF cards, SD adapters, and ZuluIDE versions work or fail.
- Epson SLA919F ASIC — no public datasheet; vendor commands
0x06and0x0Dare partially mapped. Extended bus traces welcome.
- June 2026: Documentation audit; all hardware corrections applied;
bin2midi.pywritten; base address resolved (0x100000) - April 2024: Firmware patch working, validation bypass confirmed on hardware
- January 2024: ATAPI protocol analysis, command table mapping
- 2023: Initial firmware extraction and reverse engineering
- Earlier: Hardware documentation, RDAC decoder integration
- Randy Gordon: RDAC decoder (github.com/randygordon/rdac)
- Hitachi/Renesas: H8S/2600 documentation and toolchain
- Roland Corporation: Original SP-808 design (no affiliation with this project)
This project is not affiliated with or endorsed by Roland Corporation. Firmware modification may void warranties and carries inherent risks. Use at your own discretion.
- Roland SP-808 Owner's Manual
- Roland SP-808 Service Manual
- H8S/2600 Programming Manual
- Original Discussion Thread
Note: This is a community reverse engineering project for preservation and compatibility purposes. All work respects intellectual property rights and is intended for personal, non-commercial use with hardware you own.