I present something i wanted to do for a long time now.
With this, you can have a base program running on the MD.
That fetches, using a mask of destiny cable, a small program from your PC, puts it in memory, and runs it. Useful for testing stuff, researching undocumented bits, etc. fast without flashing a cartridge or stuff like that. It actually jumps back too, so if your program has an RTS at the end, it jumps back and you can update your code and transfer it again.
Check the RAM program folder, it has another readme to get you started writing some code that runs from RAM. The RAM has a preset layout, which you can get used to very quickly, so you don't accidentally run into any surprises. And then i also included some routines, so you dont have to write them. (Like, load tiles etc.).
STEP 1: Get the base program running on your Mega Drive / Genesis.
You could, for example, use a flash cart, burn a ROM, or use any kind of weird approach.
STEP 2: Boot your console!
As soon as it works, you see a message on screen, prompting you to start a program and send your RAM blob.
STEP 3: Start the included "transfer.exe"
This program was written by Mask of Destiny for his transfer suite. Since we're using the same code to handshake and receive data on the console-side (it
is included in the sega CD ISO from him), we can use it.
It asks you to type in a filename. Type in the filename to your RAM blob and press enter.
Now it asks you to type in the base adress. Since we aren't on the sega CD with stuff being able to run from, like, EVERYWHERE and we don't have the Sega
CD's RAM.... we need to ignore that. Put in any value, doesn't really matter, and press enter.
Now it should say that it successfully shook hands. If it doesn't --- Bad luck. Normal parallel port diagnostics should be applied now. I found that the
same mode setup in BIOS etc, that you do for TOTOTEK flashcarts works well with this cable.
Now, 6 HEX digits appear on screen. This is for debug purposes. If anything goes wrong, tell me if these appear and if so what they contain.
And thats it! as soon as it's done, the program is loaded into the console's memory and should start. Gegeeee!!
Consult the readme for more info. I wrote a lot!