Adds support/mocks for H8/510-based devices (and more)#85
Conversation
|
Hey! Wanted to know if there were any updates on this? |
|
@rockmanomega I've got the SC88 and SC88pro that can boot and play some basic sounds. Unfortunately the XP chip they use is very complicated. I got the LSP chip used in the SC88pro effects working though. Apart from those, I got the JD800 to boot, it also plays samples already but there is some bug in the MCU emulator I can't figure out which is preventing it from working correctly. |
Nice! I recall last that you didn't have the effects working yet so this is a big step in the right direction. Crossing fingers here that the XP chip can be eventually understood (A passing glance and it looks like a 32-bit RISC CPU? Wonder if there's much if any documentation on it?) |
|
@rockmanomega not really, I think it's another special purpose chip like the GP from the SC-55, with the differences of being more parallel (to play double the voices) and having a programmable DSP, whereas the GP chip has an internal ROM with the chorus/reverb program. The die of the chip is unfortunately very large, at least 2x the complexity of the GP chip, and would require too much time to be traced.
I think it could be possible to reverse engineer the DSP without the decap by sending custom programs to it and reading the result, similar to what the people from MAME have done for the Yamaha chips or what I've done for the Roland CSP/LSP chips. |
|
@giulioz I agree with the MAME approach to tackle this. I've checked and it seems that a few maintainers over there are now actively working on getting synthesizers working (including a few Akai samplers, and Ensoniq machines, as per https://www.mamedev.org/?p=557) so perhaps a collaboration with their team is the best shot at getting this to work? |
|
One more thing, recently I watched your presentation at https://media.ccc.de/v/39c3-from-silicon-to-darude-sand-storm-breaking-famous-synthesizer-dsps where you described that it could be possible to trace the important parts through the usage of AI. Is that something that could be explored for this chip too? Or is it a different case than the JP-8000 one? |

This PR is meant to be a public work in progress to add support for other Roland devices, as by doing this work I discovered a lot of details that could be useful to be made public.
✅ RD-500
Boots, audio works, screen works, midi works, buttons not implemented yet. Can boot and go directly to the demo songs.
✅ XP-10
Boots, audio works (partially tested), button controls work, midi works. No waverom dumps yet.
⛔️ RA-30
Most of memory map figured out but still no screen, controls or audio. It's based on the GP-4 chip so no further emulation needed, but service manual not publicly available so guessing the button switches/leds matrix will be needed.
🚧 SC-88
Boots, buttons work, no audio, slow emulation (timer problem?). Requires reverse engineering of the XP chip.


🚧 SC-88VL
Should be extremely similar to the SC88, but doesn't boot yet.Now boots properly! Memory map and sub mcu stay the same. Requires reverse engineering of the XP chip.⛔️ JD-800
H8/532 internal ROM is being dumped soon. Requires reverse engineering of the EP, TVF, MEQ and DSP chips.