Jazz Disassemblies Ep1: Fun with Flippy Floppy Files
This week we have yet another yard sale treasure to gut and explore. Brought to you by Yamaha, I have found a short lived piece of equipment called the Midi data Filer 3, or MDF3. This particular handheld brick accepts live MIDI input and allows for the user to record it for later use on the new, innovative and wonderfully compact data storage called the 3.5″ floppy diskette!
Yes folks, you and your friends will spend hours filing and sharing live sequences for years and years to come…The MDF3:
Just a few other facts before we tear it up: this device offers not only MIDI filing Utilities, but also a formatting, copying and back-up of floppies containing any sort of files. Unfortunately, it cannot be used as an external drive for a computer. (Or so says this ASM noob) As for the internals, it looks like we have an 8-bit z180 uProcessor, 128Kbits RAM, Floppy Drive Controller IC, 4Mbits ROM, graphic LCD module, keypad input and various other components.
According to the z180 datasheet, we can only support up to 1Mbit ROM. So…why would Yamaha choose to purchase an (IMO obscure) 4Mbit Mask ROM to store the ASM program? Are they using a highly complex bank mapping setup or are they simply costing the end user more money on a larger capacity chip? Lets have a look at the ROM’s socket after desoldering it from the board:
lolwat!? “1M-EPROM”…I think not. The M534001E is definitely not 1M or an ordinary EPROM. Also, pin 1 is labeled as NC or Not connected in the datasheet but is obviously pulled high on the board. What on earth were they thinking? While probing a few other pins, A18 and A17 which are the high address bits seem to be pulled high as well! So to answer my previous question, yes, Yamaha seems to have wasted the extra space…a lot of extra space.
My biggest concern now is how to dump the data. I own a crappy Willem EPROM Programmer which cause everyone issues and I also only have Windows 7 64-bit which only supports high addressed LPT ports! That is another story for another time though; needless to say, I have it working. The Willem software does not have an M534-something-blah ROM option, so I will have to trick it into thinking it contains another chip. According to the datasheet, the pinout is rather common so I am able to tell my computer that I am dumping the 27C040 EPROM.
After attempting a few dumps and receiving verifying errors, I looked back at the datasheets and remembered a previously noted pin…pin 1. Pin 1 is not supposed to be connected with the Mask ROM, but happens to be the Vpp pin on a 27C040. This pin is going to be used on the 040 but is entirely static with the Mask ROM, so finally I figured out that I should simply bend pin 1 up… Dump and verify are a success (and a couple more times just to be sure)
And Here she is:
With Hex data, sometimes headers and other data being sent to an LCD module for example are clear text. It appears that “Copyright (C) 1997 by YAMAHA V1.20.MDF3″ is clearly visible at the beginning of the program. Maybe there are other versions out there, or maybe they recycled the program from the MDF2 considering the fact that the Mask ROM says 1997 and 1998…hmmm…Another thing to notice is that I included two files. One is the full 512Kbyte ROM and the other is a cut down version because Yamaha repeated the same code four times, once in each of the 128Kbyte banks to fill it up.
There is more clear text such as the button names, but you can have a look yourself if you’re interested. Lets move on to the other hardware inside. Again, there is an LCD and keypad as well as a floppy drive. Looking at the floppy drive, it clearly states 1999 so I assume the code was recycled yet another year! Did they simply improve the external look of the MDF1 and 2? Anyhow, I believe the keypad will be a wonderful example when I design my own 8 or 16 bit computer. As for the LCD, you can all expect to see an update with it backlit.
Now lets take a look at the whole board itself. What I love most about this computer is that it is mostly surface mounted components in SSOP packages and a few DIP’s here and there. Many of these parts could have been much smaller, but that wouldn’t have made for such an interesting write-up if none of them could be read! I also can share my appreciation for the board designer(s) because there are no components retro fit on the back of the board, such as filter capacitors as we have seen so often in other devices (like last week)…Also, who doesn’t love a battery powered 8-bit computer?
So here it is, please click to enlarge and enjoy my side-notes: