Offline
Sweden

I have successfully compiled Lacklustre's EMS flasher using Cygwin. It's working perfectly on Windows 8.1 with my EMS 64M cartridge.
This should work on any Windows version where Cygwin and Zadig runs.
Cygwin might not be necessary if you have all the dependencies.

Instructions:

Install Cygwin and choose the following packages:

Libs: libusb1.0
Libs: libusb1.0-devel
Devel: pkg-config
Devel: gcc-core
Devel: make
Devel: git (optional, you can download the source from lacklustre.net)

Start Cygwin and clone the repo (or navigate to the downloaded directory):

git clone git://lacklustre.net/ems-flasher

Edit main.c line 252-254 (- remove, + add). Otherwise you will get a compilation error. (There might be other ways to deal with this.)

-            tolower(opts.file[namelen - 3]) == 's' &&
-            tolower(opts.file[namelen - 2]) == 'a' &&
-            tolower(opts.file[namelen - 1]) == 'v') {
+            tolower((unsigned char)opts.file[namelen - 3]) == 's' &&
+            tolower((unsigned char)opts.file[namelen - 2]) == 'a' &&
+            tolower((unsigned char)opts.file[namelen - 1]) == 'v') {

Run make in the ems-flasher directory:

cd ems-flasher
make

If everything goes well, you will get an ems-flasher.exe binary in the same directory.

Connect your EMS cartridge to a USB port and install the latest WinUSB driver using Zadig (http://zadig.akeo.ie/).
If you have previously installed a driver for your EMS cart, click options - list all devices and select it in the list. This will overwrite the driver, so you will not be able to use the cart with other software unless you reinstall the old driver.
Warning! Don't overwrite the wrong driver e.g. your keyboard (will be problematic).
If you haven't previously installed a driver for the EMS cartridge, it should show up as "Unknown Device #1" or similar in Zadig (no need to list all devices).
Choose a name for the cartridge, make sure the latest WinUSB driver is selected and click the install button.

Now you should be able to run ems-flasher.exe. Connect the cartridge and e.g. backup your .sav:

./ems-flasher.exe --read --save lsdj.sav

Let me know if you get this working, or if you have any problems.

Last edited by Ledfyr (Oct 14, 2015 9:25 am)

Offline

Thank you!
I managed to compile it successfully.
And yes, I needed libusb1.0-devel, it is needed.
I have put the binary here:
http://theotherdays.net/files/ems-flasher-win32/

Offline
Sweden

Good to hear you got this working.

I just mailed Lacklustre in case he wants a Windows version on his page.

Offline
Sweden

Did you pick both libusb1.0 and libusb1.0-devel, or just the devel? I will edit my instructions, thanks for noticing.

Offline
Ledfyr wrote:

Did you pick both libusb1.0 and libusb1.0-devel, or just the devel? I will edit my instructions, thanks for noticing.

Both of them I think.

Offline
New Zealand

Nice work on this! smile

Offline
Naptown
Ledfyr wrote:

Connect your EMS cartridge to a USB port and install the latest WinUSB driver using Zadig (http://zadig.akeo.ie/).
If you have previously installed a driver for your EMS cart, click options - list all devices and select it in the list. This will overwrite the driver, so you will not be able to use the cart with other software unless you reinstall the old driver.
Warning! Don't overwrite the wrong driver e.g. your keyboard (will be problematic).
If you haven't previously installed a driver for the EMS cartridge, it should show up as "Unknown Device #1" or similar in Zadig (no need to list all devices).
Choose a name for the cartridge, make sure the latest WinUSB driver is selected and click the install button.

Ah! I too compiled this in Cygwin following the same steps you did, but didn't realize I needed these drivers installed. Kept saying I couldn't find the cartridge and now I know why! (For whatever reason I still cannot get the EMS drivers to install on my Windows 7 x64 installation after multiple failed attempts, nor would it work in Virtual PC in XP Mode. It was easier to install Linux in VirtualBox.)

I wanted to mention that this version of ems-flasher also adds multi-rom support (although it does not work with LSDJ). So you may be interested to compile it as well: https://github.com/Drenn1/ems-flasher

I have compiled it for myself and I can confirm that performs the normal flashing and backing up correctly. I can't speak to the multi-rom capabilities but I can't see why it wouldn't work just fine.
Thanks so much!!! Now I don't have to boot into Linux in a VirtualBox every time I want to back up my sav's!!!

Last edited by urbster1 (Jan 25, 2016 1:27 pm)

Offline
New Zealand
urbster1 wrote:

...this version of ems-flasher also adds multi-rom support...

Sweet! Thanks for posting that smile

Offline
Ledfyr wrote:

I wanted to mention that this version of ems-flasher also adds multi-rom support (although it does not work with LSDJ). So you may be interested to compile it as well: https://github.com/Drenn1/ems-flasher

I have updated the compiled version. This is now the multirom version, not the old legacy flasher...
Still the same url:
http://theotherdays.net/files/ems-flasher-win32/

Last edited by cyberic (Apr 7, 2016 9:45 pm)