Sunday, February 5, 2017

SNES9X - Synchronize save state between Android and PC



Snes9X is one of the best Android SNES emulators ever made. It is free, no ads, highly customisable. It helps bringing back tons of good memories. The auto save in Android version is just making the emulator even better than the original snes.

Snes9X
Android: https://play.google.com/store/apps/details?id=com.explusalpha.Snes9xPlus&hl=en 
Windows: http://www.snes9x.com/

I wanted to play SNES on my PC at home and on my Android on the go. SNES9x EX no doubt deserves a 5 stars, but so far it does not support cloud save.

It is non-sense to play Chrono Trigger with a 5.5 inch phone screen at home. So I decided to hands on a bit. It took me some time to Google to find the way out. The investment is well paid-off.

The thing is going to be a bit techie, so grab a coffee if necessary.

Finding save files

By default, the save file is located same as the ROM folder in Android; and save file is located in the "Saves" folder in the SNES folder in Windows.

Windows > Emulation > Settings


The Android save files ends with an extension .0A.frz ~ .0J.frz and the Windows save file ends with an extension .000 ~ .009

Converting save files

The Windows save file and the Android save file are actually the same. The only difference is their filename extension. They can be converted simply by changing the filename extension.

i.e.

Windows
Chrono Trigger.000

Android
Chrono Trigger.0A.frz


Copy all the save files from Android to Windows. Find the newest save files by comparing their timestamp. Change the extension from .000 to .0A.frz or vice versa

I created a VB script to get rid of this repetitive boring job.


Save file converter: https://github.com/DavidTsangHW/SNES9X-save-file-converter 

Cloud storage

It is not cool keep copying those save files between my PC and my phone. I wanted a more sophisticated way of doing this. I need a cloud storage. There are free cloud storage i.e. One Drive, Google Drive and Dropbox to choose from, but only the official Dropbox Android client allows exporting files to a custom location (SNES saves folder). Dropbox is the best pick for this.

Download: https://www.dropbox.com/

Setup Dropbox Windows Client

After installing Dropbox client on Windows, move the Save folder in the Dropbox folder. All new saves will be saved to Dropbox automatically as well.

Install DropSync Android Client

The official Dropbox Android client allows you to upload and download save files from the cloud storage. Yet, this can only be done, each time, manually.


To skip this painful and meaningless task, there is a better deal. Dropsync is  a Android Dropbox Client which  synchronizes files between you phone and the cloud storage periodically (say 5, 10, 30 minutes). The free version supports only one folder synchronization only, but it is sufficient to get the job done.

Choose the save folder for the periodic synchronization. DropSync will upload and download the latest game saves to the cloud storage.

Voila!

14 comments:

  1. Just found this, thanks for solving this problem! As someone new to this sort of thing, how and when do you use the VB script in Android and elsewhere to convert the files? It would help me immensely to know a step-by-step workflow from start to finish of how to accomplish everything here including moving all files, apps, scripts to where they need to be, then play a game on the phone, DropSync and convert everything, see the changes then play on PC, sync and convert, then see the changes then play again on the phone. I think I have it correct other than how to use the VB script. Thanks again.

    ReplyDelete
  2. The VB script changes the file extension of the save file from .000 to .0A.frz or vice versa after comparing the timestamp. i.e. if the android save file is newer, the .0A.frz will then copied as .000 ; if the windows save file is newer, the .000 file will then be copied as .0A.frz. Just run the VB script in the game save folder, it will then work for you.

    P.S. I do not know whether the latest SNES9X version had get rid of this issue.

    Happy gaming!

    ReplyDelete
  3. Great post man thanks for sharing this useful information but I was i serach for PS4 Jailbreak and finally i found one original and working PS4 Jailbreak for free follow the link to read more.

    ReplyDelete
  4. Thank you so much ! Now, I can finally fake a nintendo switch and play A Link to The Past on both my phone and my laptop !

    ReplyDelete
  5. This comment has been removed by a blog administrator.

    ReplyDelete
  6. tentei varias coisas mas só do seu jeito funciono muito obrigado, agora posso jogar secret of mana em meu celular. thank you!

    ReplyDelete
  7. thank you so much, now I can dump those stupid money sucking cellphone game and enjoy my classic Super Robot War 4

    ReplyDelete
  8. Thank you very much! Just what I needed

    ReplyDelete
  9. how to run the vbs script? doesnt' seem to be detected by command line...weird

    ReplyDelete
  10. I really liked your Information. Keep up the good work. Emulator super nintendo

    ReplyDelete

Applying SMA10/20, SMA20/50 as trading signals

This is the comparison for results before and after applying SMA10/20 and SMA20/50 in the stock trader. Background Trading 3 stock ma...