Retrode Community Forum

General Category => General Discussion => Topic started by: skaman on 11/May/2017 08:57:05 PM

Title: SNES Enhanced Cart Support (FW v0.22)
Post by: skaman on 11/May/2017 08:57:05 PM
Matthias kindly provided me with access to the Retrode source code and I've implemented support for a majority of the SNES Enhanced Carts: CX4, SDD1, ExHiROM, SPC7110, SA-1, and Nintendo Power (SF Memory Cassette).  I've also include various fixes for other SNES issues.

My code changes have been committed but not officially reviewed and merged into the main firmware yet.  Wannado is working on other changes so hopefully there will be an official release with everything included.

The firmware supports the SPC7110, SA-1 (Read Only), and Nintendo Power carts ONLY with my Enhanced cart adapter.  The Enhanced cart adapter serves as a pass-thru that provides the signals needed for these carts to work properly with the Retrode.  My prototype adapters are working perfectly with these carts.  The final adapter design is under review.  I won't be able to test the final design until sometime next month.  More details on the adapter are forthcoming.

I want to gauge interest in the SNES Enhanced firmware and ask for BETA testers.  My code has only been compiled and tested on a Retrode 2 so the initial testers should have this hardware version.  If you're willing to test AND provide feedback, then please contact me by PM.

Keep in mind that the full functionality of this firmware is only possible with the Enhanced cart adapter.

***UPDATE***:  The BETA testing of the SNES Enhanced firmware is complete.  The firmware has evolved and expanded during the development and testing process.  Please read the summary below (or the Readme included with the firmware) to understand all of the changes.

Here's the summary of the firmware changes:
Code: [Select]
v0.22  (2017-08-18)
- Changes by skaman:
-- SNES Enhancements!
-- Added support for SNES Enhanced Chip carts: 
   CX4, SDD1, ExHiROM, SPC7110, SA-1, BS Satellaview,
   Sufami Turbo, and Nintendo Power carts.
-- Added register writing code to enable remapping for
   CX4, SDD1, SPC7110, SA-1, and Nintendo Power carts.
-- SPC7110, SA-1 and Nintendo Power carts need a separate
   SNES Enhanced cart adapter.
-- WARNING:  SA-1 SRAM writes are not possible with the
   current hardware.  Any changes made to the SA-1 SRAM
   file on the Retrode will not be written to the cart.
-- Added Nintendo Power (SF Memory Cassette) cart support
   using the SNES Enhanced cart adapter.  The base ROM
   is initially read whether a single game or the
   multi-game Menu.  In single game mode, the SRAM is
   visible if used.
-- Added Nintendo Power multi-game switching using the
   HWB button.  Press the HWB button to switch games on
   a multi-game cart.  Refresh the Retrode folder to
   access the new game.
-- Added display of Nintendo Power flash mapping.  Press
   the HWB button to cycle thru games.  The flash map
   files will be shown when the base ROM is displayed
   for the 2nd time.  Flash map files are read only.
-- Added support for BS Satellaview carts and memory paks.
   Memory Pak support is limited to read only on the BS-X,
   Special LoROM, and HiROM carts.
-- WARNING:  Memory Paks will not work on the SA-1 carts.
-- WARNING:  Completely blank (all 0xFFs) Memory Paks
   will not be shown when inserted in the BS-X cart.
-- Added support for the Sufami Turbo adapter and carts.
   Carts will have the adapter slot position (A or B)
   added to the filename. This allows two carts with the
   same name to be accessed.
-- Added reading of Flash saves for the JRA PAT/SPAT4 carts.
   These carts use a 1024Kb Flash chip with unique mapping.
-- Fixed HiROM to read ROM starting from Bank 0xC0.
   Previous code used the mirror in lower banks which
   returned incomplete data.
-- Fixed LoROM to read ROM starting from Bank 0x80 for
   large (> 24 Mbit) games.
-- Fixed HiROM SRAM to read Bank 0x30.  Previous code was
   reading Bank 0x20.  Fixes problems with Brain Lord,
   The 7th Saga, etc.
-- Fixed SRAM bank switching for both LoROM and HiROM.
   LoROM SRAM switches banks every 0x8000 bytes and HiROM
   SRAM switches banks every 0x2000 bytes.
-- Fixed SRAM size for ST010/011/018 carts.  Only ST018
   (Hayazashi Nidan Morita Shougi 2) contains SRAM.
-- Fixed SRAM bug where previous code reported size 0
   for 64K due to sramSize256 overflowing the SRAM
   setDirEntry.
-- Fixed SuperFX SRAM bug where the upper half of the 64K
   SRAM size was mapped to the wrong bank.  SuperFX SRAM
   starts in Bank 0x70 and bankswitches at 0x10000 bytes.
-- Changed the checksum to use the proper bytes at 0xFFDE
   and 0xFFDF.  Previous code used the complement at 0xFFDC
   and 0xFFDD.
-- Added checksum + complement checksum code to check for
   the presence of ExHiROM.
-- Added code to address the incorrect mapping due to the
   too long internal ROM name (22 characters) that runs
   into 0xFFD5.  Fixes problems with Contra 3 (U),
   Krusty's Super Funhouse (U)(1.0), etc.
-- Added overdump correction code to eliminate the need to
   flag individual carts.  Removed the short internal list
   of overdumped carts since it is no longer needed.
-- Removed the HWB button overdump code since it is no
   longer necessary.  The HWB button function is now used
   for switching games on the Nintendo Power carts.
-- Added Config file option to control SNES automatic
   overdump correction. Default setting is 1 = ON.
-- Added Config file option to display the ROM Version in
   place of the checksum.  Default setting is 0 = OFF.

The v0.22 firmware is available here:  http://www.mediafire.com/file/yfatyncpq628ciu/Retrode-v0.22.zip
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: guy on 16/May/2017 01:24:48 AM
Fantastic news! It would be great to be able to play Super Mario RPG and Kirby again.

Thank you for working on this :)
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: Knight of Time on 18/May/2017 11:01:50 PM
Hey, this is looking quite promising, anyway, I have a few questions:

First of all, will this eventually have support for games that utilize the Super FX chip (e.g. Yoshi's Island)?  Second, will it be theoretically possible in the future for this add-on to write new saves to games with a special chip?  Third, will this add-on be available to buy on dragonbox?  Lastly, how much will it cost in USD/CAD (the latter is what I'm following since I'm a Canadian)?

Nice work so far.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 19/May/2017 01:20:57 PM
Thanks for all of the interest!  I'm traveling at the moment but I will get the Beta out to the testers next week.  Wannado gave me the ok to release the initial firmware to the beta testers.  If all goes well in the testing, then I'll post the Retrode 2 firmware.  After the Retrode 2 release, I'll compile a version for the original Retrode version and ask for testers for it.

To answer Knight of Time:
SuperFX games are already supported by the Retrode firmware.  The SuperFX (and DSP) games don't do anything special in regards to accessing the ROM and SRAM.  I fixed some of the SRAM code so if it wasn't working before then test this beta to see if it fixes it.  I tested a couple of SuperFX carts including Yoshi's Island.

Writing save games for special chip carts should work with the exception of the SA-1 carts.  I added the register code for SPC7110 saves and that works (with the Enhanced cart adapter).  Reading SA-1 saves works with the Enhanced cart adapter but the Retrode is missing a couple of the pins needed to control writes to the SRAM (at least in the method that I use).  The SA-1 uses BW-RAM and I was only able to write to it with register writes that expose a section of SRAM at a time.  If you really need to write SA-1 save games, then you'll need to look into the Arduino cart reader (on which most of my code was developed).  I'm going to continue to test workarounds for the SA-1 SRAM problem but I can't say that it will ever happen due to the missing hardware.

Dragonbox is aware of the Enhanced cart adapter.  I can't speak for them but I would think it might be something that they'd want to offer.  They're currently working on a new production run of the Retrode so maybe it will become available after that.  My prototypes are small PCBs with a full length cart connector.  I'm not sure how the process to make a shell for it would go.  I'm using a hand cut universal SNES case to house one of my adapters and I ran into some clearance issues (fixing it in the next run of proto PCBs).  Hopefully, Matthias will find some time in his busy schedule to review my hardware files and work his magic on it to get ready for production.

Hope this helps!
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: MasterOfPuppets on 20/May/2017 01:39:36 AM
This is a great update, thank you for all your hard work!

Would it be possible to add Satellaview dumping (no writing!) with this info?

https://wiki.superfamicom.org/snes/show/Satellaview+%28Meta%29
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 20/May/2017 04:17:13 AM
I didn't test the BS carts extensively other than to confirm the SRAM code changes fixed the large SRAM on RPG Tsukuru 2 and Sound Novel Tsukuru.  BS Satellaview carts themselves are possible to dump (SA-1 versions with the Enhanced cart adapter) but the Memory Paks are a different story as they use pins that are unavailable on the Retrode (at least the method that I use).  I'll look into workarounds for reading the BS Memory Paks.

I implemented full BS cart support with the Arduino cart reader.  LuigiBlood posted a video on YouTube not too long ago of BS dumping using the Arduino reader.  If you need to read and write Memory Paks, then you might want to look into that.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: MasterOfPuppets on 20/May/2017 08:38:06 PM
I'll look into workarounds for reading the BS Memory Paks.

Awesome, thanks!

I implemented full BS cart support with the Arduino cart reader.  LuigiBlood posted a video on YouTube not too long ago of BS dumping using the Arduino reader.  If you need to read and write Memory Paks, then you might want to look into that.

I will have to look into this, thanks for the info!
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 03/Jun/2017 02:55:16 AM
Quick update.  The BETA firmware for both Retrode versions is in the hands of the testers.  Some SRAM bugs were found and fixed.  A couple testers went through a large number of carts testing the firmware.  Testing is ongoing.

I'm working on adding BS Satellaview support to the firmware.  It is possible to read the BS carts and memory paks with the Retrode.  The firmware isn't quite ready for release as not every combination of cart + memory pak is working.   It should be possible to read the memory paks from all of the BS carts except the BS-X cart (due to limitations of the Retrode hardware).  As of right now, the BS Special LoROM carts work perfectly reading out the cart, SRAM, and memory pak.  I'm still working on the BS HiROM carts and BS SA-1 carts.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: MasterOfPuppets on 03/Jun/2017 10:35:05 PM
Quick update.  The BETA firmware for both Retrode versions is in the hands of the testers.  Some SRAM bugs were found and fixed.  A couple testers went through a large number of carts testing the firmware.  Testing is ongoing.

I'm working on adding BS Satellaview support to the firmware.  It is possible to read the BS carts and memory paks with the Retrode.  The firmware isn't quite ready for release as not every combination of cart + memory pak is working.   It should be possible to read the memory paks from all of the BS carts except the BS-X cart (due to limitations of the Retrode hardware).  As of right now, the BS Special LoROM carts work perfectly reading out the cart, SRAM, and memory pak.  I'm still working on the BS HiROM carts and BS SA-1 carts.

Awesome news! Many thanks to you and all the testers!
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 10/Jun/2017 08:28:47 AM
Quick update.  BS Satellaview ROM and SRAM reading works for all carts (SA-1 carts using the Enhanced cart adapter).  Memory Pak reading works only on the Special LoROM and HiROM carts.  I wasn't able to get the communication with the registers needed to enable Memory Pak reading on the BS-X or SA-1 carts.

I'm working on an updated BETA that will include the BS Satellaview support.  If anyone is interested in testing it, then please let me know.  You'll need one of the BS carts (NO BS-X or SA-1) and a Memory Pak or Same Game Data Pak.

In case anyone cares, the SD Gundam GNext Map & Data Collection Pak was only readable on the matching SD Gundam cart (this was using my Arduino based cart reader).  Unfortunately, there's no way to read the SD Gundam (BS SA-1) Memory Pak slot using the Retrode at least based on my testing.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: ssokolow on 16/Jun/2017 12:19:00 PM
This evokes mixed feelings in me.

On the one hand, I'm very happy.

On the other hand, "Dammit! It took me far too long to stop dwelling on my desire to play Super Mario RPG again the first time around! Who knows how long it'll be until this is ready, ready-made adapters are available, I've ordered and received one, and I've re-bought an SMRPG cartridge!"

(I have a very strict policy about neither pirating nor paying for games unless they're available on my terms in order to ensure I can't contribute to companies' delusions that all they need is more DRM or that Steam-like eStores are acceptable... a policy that led me to buy a Retrode and to continue to eBay cartridges because I refuse to financially endorse the Nintendo Virtual Console... and I only play ROMs I personally dumped from my own cartridges in order to flip the bird at Nintendo's policy on emulation.)
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 17/Jun/2017 10:01:50 AM
Quick update.  BETA firmware with the BS Satellaview support is in the hands of the testers. 

I've decided to finish off the SNES cart list by adding support for the Sufami Turbo adapter and carts.  Sufami Turbo carts are mapped based on the slot used in the adapter.

One potential firmware problem is that a Sufami Turbo adapter with both slots filled could require 5 files (3 ROM files and 2 SRAM files).  Hopefully I won't hit any hardware limitations when creating the 5 files.  If I manage to get it all working, then there will be an updated BETA.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 19/Jun/2017 09:54:50 PM
Quick update.  I fixed the problem with the BS-X cart reading memory paks.  It is now possible to read memory paks using the BS-X cart,  Special LoROM, and HiROM carts.  I also finished adding support for the Sufami Turbo carts.

A new BETA release will be going out to testers soon.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 21/Jun/2017 01:05:01 AM
Quick update.  BETA firmware with Sufami Turbo support and the BS-X Memory Pak fix is in the hands of the testers.

I'm working on one last addition which is the Nintendo Power (SF Memory Cassette) flash mapping.  My plan is to make the flash map files read only as there's too much potential to brick your NP cart when you play around with the mapping.  I'll probably make the displaying of the mapping files an option in the config file.  Once the mapping code is done then a final BETA will go out for testing followed by a full release for everyone.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: androda on 23/Jun/2017 11:20:40 AM
Do you intend to release the board files for the enhanced adapter?  Just curious, because I made my own N64/GBx adapter from the design files that are publicly released.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 23/Jun/2017 07:14:54 PM
Yes, the adapter files will be released.  I'm waiting for the PCBs for the last revision.  Once I've confirmed the operation then I'll post the details.  I've already shared the schematics and prototype board layout with the other devs.

The adapter is constructed as a passthru device that sits in the slot between the Retrode and cart.  It connects some of the pins missing from the Retrode.  The circuit is relatively simple consisting of 3 chips.  The main chip is the PIC 12F629 running ikari's snesCIC (snes-lock-resync) code.  The other two chips are VCXOs that supply the CIC CLK and Master CLK.  The clock chips are 3.072MHz for the CIC and 21.47727MHz for the Master CLK.  Since the 21.47727MHz is not readily available, I've substituted the common 20MHz version without a problem.  Aside from the chips, there's a pulldown resistor and decoupling caps.

I'm not sure if the adapter will go into production.  If it does go into production, then there might be design changes like replacing the VCXOs.  I built my circuit around the VCXOs after I found a supply of the 3.072MHz part.  I'm not an engineer so the VCXOs made things simpler for me.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: ssokolow on 26/Jun/2017 01:10:37 AM
I'm not sure if the adapter will go into production.  If it does go into production, then there might be design changes like replacing the VCXOs.  I built my circuit around the VCXOs after I found a supply of the 3.072MHz part.  I'm not an engineer so the VCXOs made things simpler for me.

I hope it goes into production. I'd certainly buy one.

(I never had time to build soldering skills I'd trust beyond "If I'd otherwise have to throw it out..." and, as mentioned, I'd really like to be able to stick a copy of Super Mario RPG into my retrode.)
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: Matthias_H on 26/Jun/2017 10:22:20 AM
The other two chips are VCXOs that supply the CIC CLK and Master CLK.  The clock chips are 3.072MHz for the CIC and 21.47727MHz for the Master CLK.  Since the 21.47727MHz is not readily available, I've substituted the common 20MHz version without a problem. 
Have you considered using non-voltage-controlled XO's? You should be able to find hundreds of thousands of different types on Digi-Key. It appears the system is quite tolerant with respect to these clocks, so if there is no need for precise tuning you might as well grab anything within 1-5% (or so) of the target frequency.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 26/Jun/2017 06:42:43 PM
I'll run some tests with my Adafruit Clock Generator setup to see what clocks work.  I know the Master CLK is pretty lenient.  I've run it at 16MHz, 20MHz, and 21.47727MHz.  I think the CIC CLK frequency is the key.  I'll try to test the limits of the range where it works.  With the Adafruit, there's a frequency fine tuning correction range where the CIC works but I didn't test the actual frequency limits.

As far as redesigning the circuit, I'll leave that up to the experts.  If people want to build my version of the adapter, then I can supply them with the 3.072MHz part.  I should have enough of the part to supply the early adopters.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 01/Jul/2017 02:30:50 AM
Interesting preliminary results. 

The CIC CLK is the key for cart recognition and proper reads.  I tested the frequencies around the reference 3.072MHz and both 2MHz and 4MHz appear to work.  Outside this range, the data becomes invalid.

The Master CLK appears to be valid within a wide frequency range. The Master CLK must be present for the SA-1 and Nintendo Power carts to work.  The lower limit seems to be around 4MHz.  I didn't bother to test the upper limit.

There's a possibility that a single frequency could be used for both clocks.  I ran the CIC CLK and Master CLK at 4MHz and the SA-1 and NP carts appeared to work on my Arduino reader, however, using a single 4MHz VCXO on one of my Enhanced cart adapters produced inconsistent results.  A slightly higher clock might work but you're operating at the edges for the two frequency ranges. I definitely wouldn't use a single clock for something that goes into production.

At least we now have an idea of the frequency options if the 3.072MHz is unavailable.  Like I mentioned previously, I have a decent quantity of the 3.072MHz VCXOs if any early adopters need one.  For the Master CLK, use the easy to find 20MHz VCXO as a substitute.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 10/Jul/2017 04:05:37 AM
Finally got my small batch of the latest PCB version for the Enhanced Cart Adapter.  Using a handcut shell from a SNES Super Gameboy.

Parts mounted are simple:
Epson SG-615P in 3.072MHz
Epson SG-615P in 20MHz
PIC12F629 programmed with ikari's snescic-lock-resync.hex
3 100nF decoupling caps
1 10Kohm resistor
SNES cart connector from Aliexpress

(http://i65.tinypic.com/vflgsw.jpg)
(http://i64.tinypic.com/j79jwk.jpg)
(http://i68.tinypic.com/33tgwlk.jpg)
(http://i65.tinypic.com/x3wah0.jpg)
(http://i65.tinypic.com/20sucrs.jpg)
(http://i67.tinypic.com/ke8501.jpg)
(http://i63.tinypic.com/33uskg4.jpg)
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: Matthias_H on 11/Jul/2017 07:50:31 AM
Looks really nice and tidy, congratulations! Kind of makes my visit obsolete, but if you want we can still hang out and I can bring you some Retrode goodies :)

Regarding the design: You may consider moving all SMD parts to the same side, since it will greatly reduce the cost of industrial manufacturing. Also, of course the edge-mounted female connector does not go well with the most common industrial soldering processes (wave, reflow). I used through-hole, 90° components for the "official" plug-in adapters, at the expense of a clumsier overall outcome...
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 11/Jul/2017 07:41:12 PM
Thanks for the tips.  I'm sure there's a lot of room for improvement in the layout.  I'm a novice at this stuff so I tried to keep things simple for me to build.  I gave no consideration to what it would take to put the adapter into production (it never even crossed my mind!).

Assembling the cart connector is a hassle.  The Aliexpress connector has a slot on the bottom that allows the PCB to sit in.   Unfortunately, the pins are too long so each one has to be trimmed and then bent to mate to the board.  I have a few samples of the MoreThanAll full length connector but I haven't built any adapters with them.  The MoreThanAll connector lacks the slot on the bottom so it butts against the PCB.  The pins are shorter and don't need to be trimmed.

The casing for the adapter could be the biggest obstacle to production.  I was initially going to use a cutdown aftermarket universal case but when I shortened the PCB in this latest version, I made it too short and omitted a notch needed to secure the PCB in the universal shell.  I ended up going through some of my spare cases and the Super Gameboy cases work with slight modifications.  The current PCB outline isn't a perfect match for the Super Gameboy shell as it needs a notch on the left and should have a small extension on the right.  A little filing makes things fit.  An original enhanced cart shell should work with the current board but I didn't have any spare ones to cut up.

I'm hoping that a version of the adapter can be developed and put into production.  At least, I've confirmed that this latest version works properly.

BTW, there might be a future revision to the circuit.  I'm still working to come up with a solution for the SA-1 SRAM writes.  The CPU CLK needs to be active to set the SA-1 registers to write the SRAM(BW-RAM).  The problem is that the CPU CLK can't be on all the time as it messes up the reads.  I think the CIC CLK will work as a substitute for the proper CPU CLK so we won't need another clock source.  I'm trying to think of a way to control the CPU clock using some gates and a switch.  Not sure if it is possible but I'm working on it.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: ssokolow on 17/Jul/2017 01:13:58 AM
I just realized a potential problem after looking at those photos.

My Retrode is from a batch manufactured based on the principle of "We've given up on supporting the SA-1, so we'll cut costs and only populate a connector for the central span of pins" and it doesn't have the two wings populated.

I'd been assuming that, given how long it's been since the original batches with the full connector ran out, you'd be ensuring that everything could be done without the wings. However, seeing them passed through on that photo, when I don't remember the adapter being compatible with anything but the Retrode, makes me worried.

Do those pins have to be connected for a successful dump or is passing them through just playing it safe? Can an SA-1 be coaxed into allowing ROM access with those pins left floating as long as there's a successful CIC sync?

If they have to be connected, I don't know what I'll wind up doing. I really don't trust myself to take a soldering iron to something I paid so much money for. (I've only ever soldered one device... a $3 PS2-USB adapter where one of the USB lines broke free of the PCB's solder pads.)
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 17/Jul/2017 07:16:54 PM
No worries.  There's no modifications needed on the Retrode.  I'm using the adapter on a Dragonbox Retrode with only the center 46 pin connector.  I sent a prototype adapter to one of the beta testers and hope to confirm compatibility with the other Retrode hardware versions.

The Enhanced Cart Adapter PCB could be modified to remove the extra pins on the lower half.  I left the full length connector on the bottom because the cart adapter can also be used with the Arduino based cart reader and potentially other devices.  Most of my code development was done on the Arduino based cart reader.

For the extra pins, there's only 2 pins that we need to connect:  Pin 1 Master CLK and Pin 33 REFRESH.  Master CLK is connected to the 21.47727MHz clock (or substitute 20MHz).  REFRESH is connected to GND to enable proper SA-1 reads.

One other extra pin is notable, Pin 2 EXPAND is used for the BS-X cart.  The cart adapter doesn't do anything with Pin 2 since I had no way to control it.  Without Pin 2 we don't have proper Memory Pak control using the BS-X cart but the beta firmware works around this to allow Memory Pak reading on the BS-X cart.  The lack of EXPAND would only be significant if I decided to add the Memory Pak write code to the firmware.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: Sfm15 on 19/Jul/2017 12:19:45 AM
How do I sign up to be a beta tester?
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 19/Jul/2017 08:02:46 AM
I've sent you a PM with the link to the current BETA.  Anyone that is interested in BETA testing should send me a PM.

The current BETA firmware has been tested on both Retrode versions 1 and 2.  All of the features that I set out to implement have been added to the firmware.  The last few BETA versions were strictly bugfixes.  I haven't made any changes to the firmware for a couple of weeks.

I debated releasing the current BETA but I held off while I explored the SA-1 SRAM writes.  Another minor reason that I held off on releasing the firmware is that I recently acquired a JRA PAT cart with its unique Flash save mapping.  I should be receiving some of the other JRA PAT variants along with a SPAT4 cart so I'm contemplating adding support to read the flash data.  I'm not sure if it's worth the effort as the JRA PAT carts are pretty useless.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: ssokolow on 19/Jul/2017 08:36:07 PM
No worries.  There's no modifications needed on the Retrode.  I'm using the adapter on a Dragonbox Retrode with only the center 46 pin connector.  I sent a prototype adapter to one of the beta testers and hope to confirm compatibility with the other Retrode hardware versions.

...

Thanks. That's a huge relief for me.

If these go into production, I'll definitely be getting one. If not, I'll find the cheapest possible way to hack one together that I feel I can trust and then hope they do go into production eventually so I can buy a proper one.

(I'd glady offer to beta-test if I had the means, but all of my childhood SNES stuff except a Spindizzy Worlds manual, Mario Paint manual, and Super Mario RPG strategy guide got thrown out after a basement flood and I've been putting off buying any carts which I can't dump and verify before the "not as described" return period is over.)
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 22/Jul/2017 07:28:25 AM
I knew when I posted that I haven't made any changes to the BETA firmware that something would come up and force changes.

I'm working on a couple bugfixes. 

I forgot about shifting the mapping for large LoROMs > 24Mbits so I've had to work on that.  If you use the normal LoROM mapping starting in Bank 0x00, then you lose data at the end of the ROM due to running into the WRAM space.  For these large ROMs, you start reading the ROM from Bank 0x80.  This should fix FE Thracia 776.

I'm working to add support for the 1024Kb SRAM.  I picked up a couple of SA-1 carts with 1024Kb SRAM (Daisenryaku Expert WW2 and Kakinoki Shougi).  The SRAM read code changes that I had previously implemented only worked up to 512Kb.  The variables used by the base SRAM code lose the higher bits so I have to work around the problem.

Since I was back writing code, I went ahead and added the JRA PAT/SPAT4 Flash save reads.  The Flash saves are 1024Kb so a similar fix as the 1024Kb SRAM except that the mapping is different.  The save data is pretty much useless like the carts themselves but I added it for completeness.
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: newbie2 on 23/Jul/2017 11:00:46 PM
Would love to buy one of the Enhanced Cart Adapters should you ever decide to sell them!
Title: Re: SNES Enhanced Cart Support (BETA)
Post by: skaman on 18/Aug/2017 08:37:14 AM
BETA testing of the SNES Enhanced code has been successful with the help of a solid group of testers.

I'll be finalizing the firmware and posting final versions for public download.

Many thanks to all of the testers!
Title: Re: SNES Enhanced Cart Support (FW v0.22)
Post by: skaman on 28/Aug/2017 05:45:47 AM
If anyone is interested in a prototype Enhanced Cart Adapter, then PM me for the details.  I have an adapter complete with cutdown Japanese SGB shell available.  I ran out of US SGB shells (like the one pictured) so I only have Japanese SGB shells left.

Thanks!
Title: Re: SNES Enhanced Cart Support (FW v0.22)
Post by: danyetman on 03/Sep/2017 06:13:48 AM
If anyone is interested in a prototype Enhanced Cart Adapter, then PM me for the details.  I have an adapter complete with cutdown Japanese SGB shell available.  I ran out of US SGB shells (like the one pictured) so I only have Japanese SGB shells left.

Thanks!

And for my first official post in this forum...Consider yourself PM'd!