News:

Retrode - Honey, fire up the emulator! My Retrode just arrived

Main Menu

Things I'm currently working on (stalled as of 2017-05-14)

Started by Wannado, 08/Apr/2017 08:17:38 PM

Previous topic - Next topic

Wannado

Dear Retrode community,

in this post, I'd like to tell you about my recent activities and my plans regarding the Retrode firmware.


justin89's patch

You may have heard about the patch that justin89 submitted long time ago. I want to finally try and merge it into the firmware, step by step. To simplify that, I've split the patch up by the features it contains:

  • A way to force HiRom or LoRom addressing for SNES games.
  • A way to read/write the saves of the SNES games Brain Lord and Robotrek.
  • Support for reading/writing SRAM and Flash saves of GBA games. (Also FRAM saves, but with issues.)
  • Support for reading/writing SRAM saves of N64 games. (Also reading FRAM saves, but the results don't seem correct.)

The small features 1 and 2 will be included (in a modified form) in the next release I'll publish. Superseded by skaman's work. See also "Plans" below.


Config file optimization

At the moment, I'm optimizing the config file. This is motivated by justin89's patch (which includes new config options) and other things.

To save buffer space, I've removed most of the help comments from the config file. As a replacement, I want to add a separate help file with more detailled descriptions (compressed, read-only). However, the current draft is still rather large even in compressed form. Apart from that, I've reduced the size of the parsing and printing code significantly.


Still issues saving to Phantasy Star IV and Shining Force from Kega Fusion

After the release of v0.21-beta, gliitch had reported that saving in above Mega Drive games still doesn't fully work for him (using Kega Fusion). The issues are the same as with v0.20-beta. Despite gliitch's assistance, I haven't been able to find the cause of the problems yet. See also below.


Plans

These are the things I'll try and do in the near future when possible (see reply #7 below), approximately in that order:

  • Finish the config file optimization (hopefully this weekend).
  • Add diagnostic features to help analyze the Kega saving issues (maybe this weekend or the next).
  • Make a new release before the end of April.
  • Take a closer look at features 3 and 4 of justin89's patch and maybe merge them (hopefully in May). Make a new release afterwards.
  • Continue work on the NES plug-in (possibly starting in May):

    • Design improved PCB.
    • Attempt to integrate support into the standard firmware.
    • Maybe improve SRAM battery detection.

Sylver

Nice plans ! Thanks for your work !

MasterOfPuppets

Always great to see update to the Retrode. Thanks for all your hard work!

skaman

I hope the SNES fixes allow my SA-1 adapter to work properly with Retrode.

Nori


skaman

SNES Enhanced code coming.  I've added support for most of the Enhanced chip carts and fixed some other issues.  More details once the code is posted to the code repository.

Nori

Where can one find that? When you do post it I'd love to read it.

Wannado

Hi, this is Wannado again.

The bad news

My plans have once again been defeated by reality. I've been incapable of working on the firmware code for the past two weeks and have no idea when I will be able to resume my work on this project. I didn't even finish the config file optimization so far. :(

The good news

In the meantime, two other people have started/resumed work on the code. One of them is skaman, who has made quick progress expanding SNES game support (see his post for details). Great job, skaman! :)

skaman's fixes regarding HiROM/LoROM SRAM bank switching (for Brain Lord, The 7th Saga, ...) will probably render features 1 and 2 from justin89's patch obsolete. Features 3 and 4 (see my OP) are still worth merging.

Igb

Hello,

I finally got my hands on a retrode, and I am quite interested on dumping N64 sram saves, which afaik was covered on justin89's patch (points 3 and 4) but you were unable to merge them due to lack on time.

I did not see any mention regarding this on skaman's post, which seems focused to bring better SNES compatibility (an interesting feature for sure, but not a priority for me personally) among other features.

Is there any way I can help? I have some prior experience with small-to-medium C/C++ projects, although not at the low level I assume is used here.