Hey everyone,
yesterday I went on Twitch and programmed a simple UI interface for Kevins cart programmer. Sources and binaries are attached to this post.
Cheers
Attachments:
mellott124 wrote:
Thanks Thunderstruck!It’s two t’s. Mellott. 🙂
It’s actually named after Alphonse Mellot:
http://www.mellot.com/presentation/presentation.php?srub=2&LangueSite=en
Lovely place.
Thanks so much for making this! It looks like it will be super useful to the more terminal ignorant among us. So I poked around in the source code and it looks like this program will act in lieu of a separate terminal program (as opposed to being a GUI frontend for a terminal program that one must first launch or install)? My question itself probably exposes my ignorance about how this interface works, so thanks for bearing with me.
thunderstruck wrote:
Hey everyone,yesterday I went on Twitch and programmed a simple UI interface for Kevins cart programmer. Sources and binaries are attached to this post.
Cheers
astro187 wrote:
…it looks like this program will act in lieu of a separate terminal program…
yes, you don’t need the terminal if you use this.
The other day I remembered that the programmer can output SRAM and ROM content to the command line. So I figured I could simply read that data and output it into a file. So you can now Receive the ROM and RAM from any cart using the USB connection. It takes a bit longer though.
New version is attached.
Ok, so I finally got to trying this out tonight and I’m stuck on step one :\ My programmer starts up and I get the “VB Cartridge Programmer” message on the unit’s screen but when I start Thunderstruck’s program, nothing is in the drop-down (i.e. no “COM3”) so I can’t connect. What do I need to setup in advance? I noticed that it is shown as an unrecognized device and failed to install any drivers when I plugged it in. I’m running Windows 7 if that matters in the troubleshooting. Thanks in advance!
EDIT: So I open up Device Manager and see that I have no COM ports shown at all. So I install a default one and try to set the settings you suggest, but it has pre-set bit rates and you specify the terminal program uses 500000 Baud. And I’m too dumb to get a clear answer on how to convert 500000 Baud to a bit rate so I’m dead in the water again. Or maybe I was barking up the wrong tree in the first place with this approach.
- This reply was modified 6 years, 1 month ago by astro187.
astro187 wrote:
Ok, so I finally got to trying this out tonight and I’m stuck on step one :\ My programmer starts up and I get the “VB Cartridge Programmer” message on the unit’s screen but when I start Thunderstruck’s program, nothing is in the drop-down (i.e. no “COM3”) so I can’t connect. What do I need to setup in advance? I noticed that it is shown as an unrecognized device and failed to install any drivers when I plugged it in. I’m running Windows 7 if that matters in the troubleshooting. Thanks in advance!EDIT: So I open up Device Manager and see that I have no COM ports shown at all. So I install a default one and try to set the settings you suggest, but it has pre-set bit rates and you specify the terminal program uses 500000 Baud. And I’m too dumb to get a clear answer on how to convert 500000 Baud to a bit rate so I’m dead in the water again. Or maybe I was barking up the wrong tree in the first place with this approach.
You shouldn’t need to set anything up. It should aromatically detect it. As soon as you connect it there should be an entry called “Ports (COM & LPT)” and “Arduino Mega 2560” underneath. If it doesn’t show up maybe try a different USB cable or USB Port.
Ah, so it should be as plug-n-play as most other devices are these day even thought my Device Manager doesn’t already show any Ports (COM or LPT)? Maybe I need to use the extra power supply, but it seems the system is getting power. I’ll try that and another USB cord and report back. Thanks for the info!
thunderstruck wrote:
astro187 wrote:
Ok, so I finally got to trying this out tonight and I’m stuck on step one :\ My programmer starts up and I get the “VB Cartridge Programmer” message on the unit’s screen but when I start Thunderstruck’s program, nothing is in the drop-down (i.e. no “COM3”) so I can’t connect. What do I need to setup in advance? I noticed that it is shown as an unrecognized device and failed to install any drivers when I plugged it in. I’m running Windows 7 if that matters in the troubleshooting. Thanks in advance!EDIT: So I open up Device Manager and see that I have no COM ports shown at all. So I install a default one and try to set the settings you suggest, but it has pre-set bit rates and you specify the terminal program uses 500000 Baud. And I’m too dumb to get a clear answer on how to convert 500000 Baud to a bit rate so I’m dead in the water again. Or maybe I was barking up the wrong tree in the first place with this approach.
You shouldn’t need to set anything up. It should aromatically detect it. As soon as you connect it there should be an entry called “Ports (COM & LPT)” and “Arduino Mega 2560” underneath. If it doesn’t show up maybe try a different USB cable or USB Port.
Hey everyone,
astro187 told me that the UI would stop working when dumping Wario Land directly to the PC. I could actually reproduce the problem. Turned out it was a known WPF problem when bombarding a TextBox with method calls. I fixed that by calling the UI update less often.
I also added a feature to receive the SRAM directly to mednavens sav format. So you can simply extract your savfiles from your games and continue playing in the emulator.
Someone remind me to setup a public git for this project.
Attachments:
Very awesome, man! I’ll try this out in the next couple of days. Thanks for fixing the direct dump feature. And you read my mind about the Mednafen save conversion feature. I was thinking it was nice to dump my RAM to have as a backup and to clone my games onto programmable carts but I was planning to ask how difficult it would be to take a RAM dump and convert it into something that Mednafen can use since I know nothing of the details of that file format… but apparently it wasn’t too difficult for Thunderstruck to tackle! I’ll give it a try on my couple of games that still have battery life and report back.
thunderstruck wrote:
I also added a feature to receive the SRAM directly to mednavens sav format. So you can simply extract your savfiles from your games and continue playing in the emulator.
I’ve also been meaning to report back about the issues I had getting my PC to recognize the Programmer, in case anyone else was having similar issues.
So to summarize, I am running Windows 7 64-bit and when I plugged in the programmer Windows would try and fail to install the device drivers. A quick Google search found that this is not uncommon for these Arduino boards when connected to Win 7 64-bit. So the fix was just to download the latest version of the Arduino software (in my case v1.8.7) from the official site:
https://www.arduino.cc/en/Main/Software/
After that, I just installed the software and the next time I plugged in the VB Programmer it was recognized, no problem. There were not tricks and I didn’t need to even run the Arduino software or anything. From reading forum posts, it was looking like I might have to manually update the driver but that wasn’t necessary… installing the software also installed the necessary drivers with it.
Another note to anyone out there playing with these: Kevin has said that the external power supply for the Programmer might not be necessary unless your USB ports couldn’t supply enough power. Well my Windows machine is quite old and so far no external supply has not been needed. The Programmer has been able to get everything it needs from the USB port, apparently, and that includes dumping and writing to both his larger and smaller programmable carts. So if my machine, which doesn’t even have any USB 3.0 port, can supply enough power, probably most could I would suspect.
astro187 wrote:
Ah, so it should be as plug-n-play as most other devices are these day even thought my Device Manager doesn’t already show any Ports (COM or LPT)? Maybe I need to use the extra power supply, but it seems the system is getting power. I’ll try that and another USB cord and report back. Thanks for the info!
astro187 wrote:
… I was planning to ask how difficult it would be to take a RAM dump and convert it into something that Mednafen can use since I know nothing of the details of that file format… but apparently it wasn’t too difficult for Thunderstruck to tackle!
It’s actually the same format. Both are simple binary dumps. Mednafen expects the files to be 64kb though. So I simply made the file bigger by appending zeros. You can flash your mednafen saves to your carts as well if you reduce them in size.
thunderstruck wrote:
It’s actually the same format. Both are simple binary dumps. Mednafen expects the files to be 64kb though. So I simply made the file bigger by appending zeros. You can flash your mednafen saves to your carts as well if you reduce them in size.
That is good to know! So do you have a mini-padder/deflater that you use to convert back and forth?
So I’ve been enjoying mine for a couple hours now, I’ve successfully “duplicated” one of my cartridges, which is pretty damn cool.
Only thing is I can’t seem to get the 128mbit Mario video demo from the patreon to flash. When I choose the file from the SD card I get a ‘SD Card ERROR!’ message. It’s weird because it worked totally fine for the 32mbit rom I dumped and then flashed to the same 128mbit cart.
The SD card is a 4gb sandisk card formatted to FAT32.
Any ideas?
astro187 wrote:
So do you have a mini-padder/deflater that you use to convert back and forth?
Any ROM padder, and my ROM shrinker, (located in the Tools Section) should be able to handle that task, given the right arguments for the size (either 8KB or 64KB, depending on which direction you’re going). Set it up once in a shortcut or script, and you’re good to go.
speedyink wrote:
So I’ve been enjoying mine for a couple hours now, I’ve successfully “duplicated” one of my cartridges, which is pretty damn cool.Only thing is I can’t seem to get the 128mbit Mario video demo from the patreon to flash. When I choose the file from the SD card I get a ‘SD Card ERROR!’ message. It’s weird because it worked totally fine for the 32mbit rom I dumped and then flashed to the same 128mbit cart.
The SD card is a 4gb sandisk card formatted to FAT32.
Any ideas?
Rename the file in the SD card to something shorter. I got an error when using the default name of the ROM from the Patreon page. Use something short and without dashes, like vplayer.vb, and give it another try.
jorgeche wrote:
Rename the file in the SD card to something shorter. I got an error when using the default name of the ROM from the Patreon page. Use something short and without dashes, like vplayer.vb, and give it another try.
Thank you! Worked like a charm