Skip to content

M6295 as 'stand-in' for M5205?

Technical discussion about the VGM format, and all the software you need to handle VGM files.

Moderator: Staff

  • cmccaff1 Offline
  • Posts: 15
  • Joined: 2021-01-06, 5:20:01

M6295 as 'stand-in' for M5205?

Post by cmccaff1 »

To everyone involved with VGMRips, hello!
I've been enjoying music on this site for years, but this is my first ever forum post.
For a while I've been pondering many different things with regards to VGM in general and the future of the format.
One such ponderance is whether it's possible for the Oki MSM5205 chip to be supported (and how it could be done).

As far as I know, the MSM5205 was the first in a solid line of ADPCM chips released by Oki (or at least the first truly noteworthy one).
A very impressive beast for its time, though only a handful of games really used it to its full potential (particularly mid-to-late-80s Taito titles like Darius and Full Throttle).
The MSM6295 which would follow several years later is hands down Oki's most famous chip, and at its core seems to be an M5205 on steroids.

Having experimented in the past with creating custom ADPCM data for certain MAME games, I stumbled upon something very cool.
Two of my favorite 'test beds' for checking ADPCM data to see how it sounds are TH Strikes Back and Operation Wolf.
I have successfully played various types of audio encoded as Oki ADPCM in both games (music, speech, sound effects, etc).
It seems the MSM6295 has backwards compatibility with the MSM5205, as when I swapped sound ROMs between both games they worked flawlessly (meaning, I was able to play back the ADPCM data of Operation Wolf in TH Strikes Back's engine and vice versa).

This made me wonder if it's possible for the MSM5205 to be supported.
I would imagine that anything that could be attempted has been tried by now, but I'm not sure if anyone has tried to use the MSM6295 as a 'stand-in' for the MSM5205 by playing M5205 data through the M6295.
The VGM format's support for dual M6295 chips means up to 8 simultaneous channels are available, but I doubt any game using the M5205 would even use all 4 channels on one M6295.
Though Born to Fight uses four MSM5205 chips (and is the only game I know of to do so), only one M5205 is used to play back music (the other 3 are reserved for voices/SFX).

I'm not sure if the MSM6295 is 100% backwards compatible to the M5205, or if only certain M5205 features are implemented into the M6295.
I will have to do more research on the technical features & limitations of both chips.
In the meantime, I just wanted to get this off of my chest and share my thoughts with those who might be interested.
Best wishes to all!

-cmccaff1
  • User avatar
  • ValleyBell Offline
  • Posts: 4768
  • Joined: 2011-12-01, 20:20:07
  • Location: Germany

Post by ValleyBell »

Emulating the 5205 using a 6295 is probably a bit more work.
The 5205 requires a CPU to stream all data to the chip (just like the 6258). The 6295 instead has reads the sample data by itself and requires a sample table with a certain format to be placed in the ROM at offset 0.

There are also a few other things that may make it difficult, such as clock dividers being different and the 5205 effectively allowing 4 different sample rates per chip (= channel). For the 6295, you have 2 different sample rates for the chip. (affects all 4 channels)
  • cmccaff1 Offline
  • Posts: 15
  • Joined: 2021-01-06, 5:20:01

Post by cmccaff1 »

Thank you for taking the time to respond!
Hopefully the 5205 can be supported in the future, but as very few games used it compared to the 6295 (and even fewer used it to its full potential), it’s not the biggest loss if it’s not possible.
You have done an admirable job over the years of keeping these old tunes alive...and I’m grateful for everyone’s efforts here!

-Cameron M.
Post Reply