PSS-470, YM3812, MIDI, and VGM

Talk about anything else you want

Moderator: BigEvilCorporation

Post Reply
User avatar
MrTamk1s
Very interested
Posts: 75
Joined: Sun Jan 04, 2015 10:27 pm
Location: Pennsylvania
Contact:

PSS-470, YM3812, MIDI, and VGM

Post by MrTamk1s » Wed Jul 08, 2015 5:50 pm

Several summers ago, was lucky enough to find a Yamaha PSS-470 Portasound keyboard at a community garage sale for a steal of $10. It has retro FM synth sounds, 2 speakers for stereo, 3.5mm out for headphones, C battery slot, DC-in jack, and L/R RCA audio out. Unfortunately the one thing it did lack was MIDI in/out, and I planned on one day figuring out how I could hack it in, so that I could use the keyboard as a MIDI controller for music sequencing on the PC, playback/record tunes on/from the keyboard hardware as a hardware synthesizer, and utilize additional FM instruments instead of the built-in ones. It is also a highly popular keyboard for circuit bending, from what I have seen online (not that I'm going to do that).

Image

Fast-forward to this summer, decided to finally disassemble the keyboard to find what goodies laid in inside. Cleaned up the internals, and managed to disassemble and reassemble the keyboard without breaking anything. Was surprised to find a Yamaha YM3812 FM chip of Adlib and of OPL2 fame inside. It is slightly more powerful than the YM2612, with 9 FM channels, which can be toggled to play 9 FM channels or 6FM channels + 5 percussion instruments, and many waveform types. Very powerful, nice and unique sounding! Video of musical capabilities. Also found a music tracker called Adlib Tracker 2 to compose tunes based upon emulated OPL2 and OPL3 sounds. But nothing beats sound On Real Hardware (TM) 8).

After some research online, found that an online company called Highly Liquid did all the hard work for implementing a MIDI mod. They sell an electronics kit called the UMR2 (Universal Midi Retrofit 2), with a forum thread detailing the installation into the PSS-470. Will be planning on purchasing a UMR2 at a later date, and doing the installation (and finally stop making excuses and learning how to play the piano :P).

Am no expert with MIDI, but what hardware and software is recommended for the MIDI communication interface for my modern laptop? Only have USB and not sure if USB-to-MIDI interfaces have data, voltage, or legacy issues like USB-to-Serial interfaces can have when programming PIC and other microcontrollers. Also not sure of what software would be needed to run the MIDI hardware communications interface to the PC, or how to correctly send proper FM instrument data and commands to the PSS-470 for hardware synthesis. Would also be looking for a way to perhaps send YM3812 VGM data to playback tunes on the PSS-470 as a homebrewed adlib soundcard, maybe through MIDI if possible, but if not technically possible, would be willing to hack the YM3812 chip in it even further to drive VGM data via an Arduino. Anybody know of any similar YM3812 Hardware VGM player projects or general advice and leads?
SGDK homebrew dev and Unity3D Indie dev.
Sega does what Nintendont!

User avatar
TmEE co.(TM)
Very interested
Posts: 2317
Joined: Tue Dec 05, 2006 1:37 pm
Location: Estonia, Rapla City
Contact:

Post by TmEE co.(TM) » Thu Jul 09, 2015 12:17 pm

More channels isn't better when all channels are 2 ops :P
YM3812 is really weak compared to 2612.
Mida sa loed ? Nagunii aru ei saa ;)
http://www.tmeeco.eu
Files of all broken links and images of mine are found here : http://www.tmeeco.eu/FileDen

User avatar
MrTamk1s
Very interested
Posts: 75
Joined: Sun Jan 04, 2015 10:27 pm
Location: Pennsylvania
Contact:

Post by MrTamk1s » Fri Jul 24, 2015 2:36 pm

More channels isn't better when all channels are 2 ops Razz
YM3812 is really weak compared to 2612.
But but it has multiple waveform types :D! (It does lack a DAC for playing digital samples, however.)



Did some more research on the topic the other day, and the closest I could find to standalone YM3812 hardware players were OPL3 DIY MIDI controllers such as the MIDIBox FM, and more importantly, a hardware OPL2 adlib player for the Commodore's SFX Sound Expander cartridge. Will look at the Commodore project's code and hardware interfacing later to see what knowledge I could gain and use for the piano, as well as contacting the guy for more information. So I don't have to reinvent the wheel.

I should be able to drive the chip for VGM and other OPL2 filetypes via an SD card or USB interface, and a microcontroller. I am no expert at embedded systems, but have been tinkering around with PSoC 5 prototype kits lately at the university for a research internship. It can have digital components programmed in, similar to an FPGA, and has a digital USB components built-in. Or I could try to drive it via a PIC16F628A I have on hand.

To be continued...
SGDK homebrew dev and Unity3D Indie dev.
Sega does what Nintendont!

User avatar
TmEE co.(TM)
Very interested
Posts: 2317
Joined: Tue Dec 05, 2006 1:37 pm
Location: Estonia, Rapla City
Contact:

Post by TmEE co.(TM) » Sun Jul 26, 2015 6:14 am

The sound of pretty much all those extra waveforms can be made with 3 ops on the better chips. I do wish other chips had that feature though, they're all just AND masks over the sine ROM address lines...
Mida sa loed ? Nagunii aru ei saa ;)
http://www.tmeeco.eu
Files of all broken links and images of mine are found here : http://www.tmeeco.eu/FileDen

User avatar
MrTamk1s
Very interested
Posts: 75
Joined: Sun Jan 04, 2015 10:27 pm
Location: Pennsylvania
Contact:

Re: PSS-470, YM3812, MIDI, and VGM

Post by MrTamk1s » Fri Oct 02, 2015 8:01 pm

Old topic is old, but I finally found someone online who was actually crazy enough to create a circuit to run a YM3812 via MIDI with a PIC chip (use Google translate if necessary), and another guy who is running an AY chip via PSoC.

As for my project of modifying the keyboard to feed raw data to the chip into the keyboard, I'm holding off until Christmas to order a UMR2 and a MIDI-to-USB cable to see what functionality I can do with just a UMR2 unit installed into it. But those previous links (and a YM3812 datasheet from Yamaha) should be enough data to modify the circuit to accept raw chip data run by a PSoC if needed.

As for those wondering about the functionality of the PSS-470, the iBookGuy recently covered it and other cool Soundblaster-based keyboards.
SGDK homebrew dev and Unity3D Indie dev.
Sega does what Nintendont!

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests