• Welcome to Circuitbenders Forum.

Writing ROM images

Started by gmeredith, April 20, 2012, 08:22:05 AM

Previous topic - Next topic

gmeredith

Hi guys,

I was a bit intrigued by an idea I just had to make my own sound ROM cards. Tell me if you think this is possible...

Here's the story.

Equipment:

Casio VZ10M rack synth

Casio RC100 ROM sound card for VZ10M

EPROM chip equivalent to the RC100 chip (27C512 PROM)


Proposition:

If I make up my own sound patches on the VZ10M and then, after doing a full bank dump to computer by sysex, turn that sysex file into a ROM image? And after that, use it to make my own sound ROM card by burning the same ROM chip (or EPROM equivalent) that is in the RC100 ROM card (a 27C512 PROM)?? That way I can make up a whole series of ROM cards of my own sounds by cannibalising cheap RC100 cards.

Why would I want to do that instead of just buying the RA-500 RAM card designed for writng your own patches??

1) Because I just bought one that cost me $100  >:(

2) every ebay auction I see of them ends up about that price  >:(

3) They are very rare and you don't see them much  :(


The RC100 ROM card is much more common and go for a lot less, so tha't where the idea came in.
Also the advantage of having a ROM of your own sounds means you don't have to worry about losing the contents because the card's backup battery went flat.

What do you think?? How would this be done? How do they have done this in the Casio factory where they make the RC100 ROM cards??

Cheers, Graham

Circuitbenders

Its a good question, and one that i was kind of considering just the other day with regards to the memory carts for the TR707 / Juno1 etc.

I can't say i know as much about it as i probably need to, but i'd suspect that that biggest problem might be the data format. Reading and writing the EPROM's wouldn't be a problem, but how is the sound data arranged? I'd be surprised if you can just write a sysex file to an EPROM and the VZ will just read it.

Do you even need the RC100 ROM carts? Wouldn't it be easier to just stick a load of new ROM's on a board and use the chip enable pins to select which chip you wanted to use? Then you could just mount the board inside the VZ and wire it to the expansion port, or even take out the sound ROM's that are in there and plug the board into the ROM socket.
i am not paid to listen to this drivel, you are a terminal fool

Gordonjcp

If you can read off the ROM image and read off a sysex dump of that card, you might start to see the pattern.

Don't forget that the sysex data will be encoded in some way that makes it all fit into 7-bit values.
If at first you don't succeed, stick it through a fuzzbox.

gmeredith

Paul Re: ROM expansion:

Yes that would also be good. The particular interest in the RAM cards is actually for the sake of my Casio PG380 guitar synth, which uses the RAM card programmed in the VZ to create your own sounds (the PG380 internal synth is a read-only VZ engine). I forgot to mention that in my initial blurb. I thought it would be neat to just pop in a ROM card of my own sounds instead of trying to find the very rare and expensive RAM card. The same though could be done with the internal ROM of the PG, so what you mentioned is just as applicable to it. I guess I saw the ROM card mod as a "safe" way of doing it instead of actually working on the synth guts itself.

Gordon; Yes I had figured too that the memory data in sysex form might not be the correct format to read of a ROM. So it's a matter of getting an actual ROM reading off the ROM card's ROM?? The actual ROM card itself contains nothing more than the chip itself, with pull-up resistors which go to the connector card. A photo of it is below. Might it be possible to just make a connecor that the ROM card plugs into, which is wired into a ROM reader - so as to not need to remove the ROM at all? Or will the resistors interfere or cause problems??

Cheers, Graham

Gordonjcp

Looks like a fiddly connector!  The resistors will probably be fine.  One other possibility would be to use something like an Arduino and a bunch of shift registers to set the address lines and read the data lines.  Then you'd write a bit of code to talk to the host PC and accept addresses, and spit out the byte read.
If at first you don't succeed, stick it through a fuzzbox.