View previous topic :: View next topic |
Author |
Message |
Strike
Joined: 06 Oct 2006 Posts: 33
|
Posted: Sat Apr 27, 2013 8:58 am Post subject: Game Doctor FPGA adapter. |
|
|
This isn't exactly a product suggestion per se, because the market would be extremely niche and price would be through the roof; it's more of a project idea that I'm sharing with a friend.
In the same vein as the DSP adapter for the SFx, we would like to create a passthrough based on the sd2snes. Maximilian linked us to his schematics and source code and gave us permission to attempt, even though it's open source to begin with.
Would this idea be feasible? Would, for example, the FPGA be able to communicate with a ROM image in a doctor at roughly the same speed as an authentic cart, if at all? We know we could just buy an sd2snes, but the mere thought of being able to 'complete' an SF7's compatibility seems both humorous and thrilling to us.
If it works and we can complete the project, we could share our PCB schematics to whomever is interested. |
|
Back to top |
|
|
MottZilla
Joined: 08 Sep 2004 Posts: 765
|
Posted: Thu May 02, 2013 3:07 am Post subject: |
|
|
First Super FX can't ever work like the DSP. Secondly adding Super FX support to the GDSF would require having the Super FX (or fpga simulating it) to be connected to the DRAM in the GDSF and the Super FX then connected to the outside of the unit. To be able to play normal HiROM games you'd need hardware to control how things get hooked up as well.
While it is certainly possible you could add support to the GDSF for Super FX, as well as SA-1, Cx4, SDD1, it would be quite a big project. It would never be a simple plug in adapter. |
|
Back to top |
|
|
Strike
Joined: 06 Oct 2006 Posts: 33
|
Posted: Thu May 02, 2013 3:43 am Post subject: |
|
|
I figured as much with the FX chips; this was more for Cx4 (and perhaps the SA-1). From what I understand of the Cx4, it sits between the ROM and the SNES, and a good part of its code is embedded in the ROM. That is what made me think it would be possible to use an FPGA in a passthrough for it.
The SA-1 is a coprocessor and thus probably does not work the same way; I know nothing about how it works. |
|
Back to top |
|
|
MottZilla
Joined: 08 Sep 2004 Posts: 765
|
Posted: Fri May 03, 2013 3:56 am Post subject: |
|
|
I've heard from others that it may be possible to implement Cx4 in a PIC micro-controller device.
Either way, involving the GDSF or any copier in trying to support such chips would be silly. If you're going to go that far you may as well make the Flash Cart as well. |
|
Back to top |
|
|
Strike
Joined: 06 Oct 2006 Posts: 33
|
Posted: Fri May 03, 2013 8:55 am Post subject: |
|
|
Yeah, 'silly' was half the reason we were drawn to the whole concept. We have no need for a flash cart or even reproductions, as we own all the games that require these chips.
If the only way to incorporate any of the non DSPx chips is through direct manipulation of the mainboard, then we give up now. It would certainly be possible to make DSP2-4 passthroughs, even if they would be of limited use.
We mostly just thought it possible to make a Cx4 passthrough to begin with, but the SD2SNES's use of the FPGA made me wonder if we could pull off more. Guess that's out of the question.
Our whole reasoning to attempt such an arduous project was the novelty and learning experience gained; nothing more.
I appreciate your input, thanks! |
|
Back to top |
|
|
MottZilla
Joined: 08 Sep 2004 Posts: 765
|
Posted: Sun May 05, 2013 6:35 pm Post subject: |
|
|
Well if it's really about learning/tinkering then you may want to do it if you have the skills to do it. First thing you'd need to remember is most FPGAs are not 5v anymore and not 5v tolerant. You'll need to shift voltage levels between the two.
Next you'd have to figure out where exactly, and how, you'd position a FPGA in the hardware to have the same end setup where the FPGA core has direct access to the DRAM containing the ROM image and then the FPGA connecting to the SNES cart connector. Not only this but you'll need some hardware that can remap this, so that you can start the system in a "normal" mode so the GDSF BIOS can load the ROM image into DRAM. Then only right before game execution would you want to enable your FPGA. Which also leads to the issue of programming the FPGA. It has to get its code from somewhere to know how to behave.
I think it is possible you could take what the SD2SNES does and implement it into a GDSF if you took the time to do it. You could certainly run Cx4 and the whole series of DSP games I bet. If you could achieve this, it's possible through the use of a *real* SA-1 or Super FX chip you could shoe-horn that into some sort of design the same way. You'd need mapping controlling hardware to decide which way chips connect inside. Normally you'd want the "normal" mode where the DRAM is connected normally. Then you'd need to be able to change the way it is connected to connect to the Super FX or SA-1's MaskROM position. One other possible hurdle is DRAM refresh. Since these chips may access the ROM memory faster/at a different frequency than the SNES console, I'm not sure how the DRAM refresh cycles would be affected as I'm not an Electrical Engineer. But periodically DRAM has to refresh rows of memory. A controller takes care of this. But again it is designed to be simulating a normal cartridge ROM but I have no idea how that might be impacted by using a coprocessor. Infact I just realized that SA-1 wouldn't work. SA-1 uses a 16-bit MaskROM. The GDSF emulates a 8-bit memory.
But I think you get the picture. Copiers are ROM emulators. The main difference between them and special chip games are the layout of memory which typically has the ROM chip behind the coprocessor except DSP which has them at the same level/same bus. So long as you could control how the ROM chip is connected to the hardware, you could have a copier use a real coprocessor chip like Super FX. The point about SA-1 also applies to SDD-1. Both use 16bit MaskROMs and in 16bit mode I think. That mainly leaves Cx4 and Super FX. |
|
Back to top |
|
|
|