FPGA project

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

User avatar
blargg
Posts: 3715
Joined: Mon Sep 27, 2004 8:33 am
Location: Central Texas, USA
Contact:

Post by blargg »

MottZilla wrote:Is it really that hard to make a NES cartridge dumper? Maybe not Famicom given the huge amount of mappers, but for NES it shouldn't be a huge deal. Though the Retrode is horribly expensive itself.
The mappers aren't an issue, since the dumper has to be able to read and write the PRG space anyway. If we can get the hotswap technique working reliably, or figure out what prevents that (maybe the edge fingers need to connect GND/+5V first?), then a dumper can be very cheap, using the NES itself. An alternative to hotswapping is a small mod to the NES itself that allows booting to a "copynes mini" bootstrap ROM that allows control by a PC over a serial connection.
User avatar
clueless
Posts: 496
Joined: Sun Sep 07, 2008 7:27 am
Location: Seatlle, WA, USA

Post by clueless »

Maybe something like a game-genie (for the physical form factor)?

Has anyone ever modded the ROM on the game genie?

Game genies are on ebay fairly cheap, $5.00and up.
ailI
Posts: 113
Joined: Fri Jun 26, 2009 4:58 pm

Post by ailI »

clueless wrote:Maybe something like a game-genie (for the physical form factor)?

Has anyone ever modded the ROM on the game genie?

Game genies are on ebay fairly cheap, $5.00and up.
That would be pretty difficult. Don't Game Genie ROMs have a glop-top?
3gengames
Formerly 65024U
Posts: 2284
Joined: Sat Mar 27, 2010 12:57 pm

Post by 3gengames »

I'm pretty sure mine doesn't, and the PowerPak supports 5 game genie codes so apparently it's possible.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

kevtris wrote:Yeah I kinda agree that some of the charm so to speak is the complete experience, with dirty carts and blinking screens and blowing into the connector and all.
That and the bottle of isopropanol solution that I keep in the medicine cabinet for cleaning edge connectors.
That and physically grabbing a game to play instead of just selecting it off a menu or whatever.
In that case, a menu looking like a stack of loose carts might help. Want me to draw what it might look like?

Come to think of it, it brings back memories of an old splash that I did for PocketNES years ago:
Image
Though, for me personally it's also about using a real controller too.
Which is why I've been using an N64 controller through a USB adapter to test games that I develop for roughly a decade. The Control Pad has that distinct Nintendo feel, which I find important because third-party PC gamepads are way too biased toward the diagonals.
User avatar
clueless
Posts: 496
Joined: Sun Sep 07, 2008 7:27 am
Location: Seatlle, WA, USA

Post by clueless »

naI wrote:
clueless wrote:Maybe something like a game-genie (for the physical form factor)?

Has anyone ever modded the ROM on the game genie?

Game genies are on ebay fairly cheap, $5.00and up.
That would be pretty difficult. Don't Game Genie ROMs have a glop-top?
After I posted my question I search Google Images for "nes game genie circuit board" and found this:

http://nesp.tighelory.com/images/genie.jpg
http://nesp.tighelory.com/plans_old.shtml

Maybe some Game Genies use glob-tops, but some don't.

I assume that the chip on the right is the char-rom and the chip on the left is the prog-rom + game genie frob.

Unfortunately, (and this is just a guess), it looks like the prog-rom is built into the actual frob, making it really difficult to hack.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Post by tokumaru »

clueless wrote:I assume that the chip on the right is the char-rom
I thought that Game Genies didn't have CHR chips, and just generated patterns based on the addresses used to access the CHR data (hence the "blocky" interface). I'm not 100% sure though.
User avatar
blargg
Posts: 3715
Joined: Mon Sep 27, 2004 8:33 am
Location: Central Texas, USA
Contact:

Post by blargg »

clueless wrote:I assume that the chip on the right is the char-rom and the chip on the left is the prog-rom + game genie frob.
The one on the right has markings that indicate it's a ROM, with version 1.5 of the genie software.

Game Genie is a nifty idea for this dumper. I might have to try making an EPROM programmer and trying this with mine. It'd be great for getting control while any cartridge is inserted, and as a bonus, you can patch the vectors to point into RAM. ... Excellent, it's a ROM, with the same pinout as a 2732 EPROM which I've got. So I just need to get a bootloader into an EPROM and solder/desolder it in.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

Lock-On technology FTW.

It'd be cool if the game select screen looked like this, which I drew last night:

Image

Sure beats the typical menu of a 12345-in-1 pirate multicart.


Why is "JALECO" in the B's?
User avatar
clueless
Posts: 496
Joined: Sun Sep 07, 2008 7:27 am
Location: Seatlle, WA, USA

Post by clueless »

blargg wrote:
clueless wrote:I assume that the chip on the right is the char-rom and the chip on the left is the prog-rom + game genie frob.
The one on the right has markings that indicate it's a ROM, with version 1.5 of the genie software.

Game Genie is a nifty idea for this dumper. I might have to try making an EPROM programmer and trying this with mine. It'd be great for getting control while any cartridge is inserted, and as a bonus, you can patch the vectors to point into RAM. ... Excellent, it's a ROM, with the same pinout as a 2732 EPROM which I've got. So I just need to get a bootloader into an EPROM and solder/desolder it in.
Yeah! I had a good idea :) I wish I had time to play with me EE stuff again...
User avatar
clueless
Posts: 496
Joined: Sun Sep 07, 2008 7:27 am
Location: Seatlle, WA, USA

Post by clueless »

What is the feasibility of using a hacked Game Genie + a RAM cart to to homebrew testing on real hardware? You could put your serial port boot strapper into the game genie rom, and then switch the rom completely out once the game has loaded. Would this work?

I should probably get a Game Genie off of ebay before all of nesdev buys them up first :)

You could sell your GG boot rom eprom on retrousb, for those of us who can soldier but lack an eprom programmer.
User avatar
blargg
Posts: 3715
Joined: Mon Sep 27, 2004 8:33 am
Location: Central Texas, USA
Contact:

Post by blargg »

That's the exact idea; bootloader on Game Genie, plug in with any cartridge, then you can load whatever code/data into the NES or cartridge's RAM and run it. This could be something that reads the cartridge ROMs, tests your own code, whatever.

I bet the EPROM could also include the normal Game Genie ROM, so that if you're holding a button on the controller when you power up, it runs the normal Genie ROM so you still have a working Game Genie usable without connection to a PC.

The main obstacles for me trying this is the lack of an EPROM programmer/eraser, and desoldering the Genie ROM. I'm quite sure it would all work.
I should probably get a Game Genie off of ebay before all of nesdev buys them up first
And an extra 72-pin connector due to the harmful effects of the Game Genie's overly-thick circuit board.
tcdev
Posts: 21
Joined: Tue Nov 25, 2008 1:51 am

Post by tcdev »

65024U wrote:I can't find it, but somebody already took the Williams arcade hardware for Defender or Robotron and put it on 3 chips.
I have Defender running in an FPGA. It was quite trivial. There's a glitch or 2 and no sound, but enough to demonstrate that it is possible, if not playable.
<http://pacedev.net/forums/showthread.php?t=12>
tcdev
Posts: 21
Joined: Tue Nov 25, 2008 1:51 am

Post by tcdev »

kyuusaku wrote:Neo Geo will fit into many FPGA now but there's a huge difference in complexity between a 68000 core and a 6502 core. AFAIK, nobody has written a hardware accurate 68000... With all the microcode it's a huge task and challenge, I'm not sure that stuff has even been reverse engineered... There's also a memory & latency issue; Neo basically has 5x 200ns buses of different widths opposed to 2x 8-bit in the NES and it's hard to meet the timing requirements with a single SDRAM, regardless of how fast. Anyway, a real Neo Geo home console is <$200 and an arcade board (MVS) is <$100 and they aren't as rare as one might think.
I've started work on a NeoGeo. It's only very preliminary stuff, using the 68k core from Minimig and only has a limited number of text/tiles displayed. It boots past the self-test (had to implement the RTC) and Joy Joy Kid actually runs (on a DE1)!!! You can coin-up and start a game, but you really only get to see the text changing.

I don't think a cycle-accurate 68K is as important for the NeoGeo as it is for the NES, for example. With a more straight-forward tilemap/sprite system and async CPU bus, I suspect there's a lot less reliance on CPU instruction timings in most of the NeoGeo games.

You are correct re:problems on current FPGA boards. Obviously I never had any pretentions of getting the whole thing going on the DE1, for example. But I do (now) have access to more powerful boards, including one with a Stratix EP3SL70 AND a Cyclone EP4C16, some SRAM and DDR3 RAM, and DVI out. That will be interesting to play with. I just don't have time atm... :(
tcdev
Posts: 21
Joined: Tue Nov 25, 2008 1:51 am

Re: FPGA project

Post by tcdev »

kevtris wrote:Also, this gives me enough fast RAM to do full blown SNES and genesis. I really, really want to get SNES going on an FPGA, so this hardware is designed to meet that goal.
I'm assuming you know that the Genesis has been done!?!

I too would absolutely *love* to do the SNES. I've been "pissing around" doing lots of little projects and porting other people's efforts to the various hardware targets I have, but not yet done a "complex" design. I also tend to get things 90% complete and move on to other projects.

Right now I'm working on finishing up a Tandy Coco 1/2 design which I hope will be my first "complete" design. The idea was to collaborate with a few others but it has turned out to be pretty much 100% my work. It's mostly there, I just need to add SD card support for IDE emulation - something I think will come in handy for other projects in the future!

Good luck, I have no doubt you or all people can do it!
Post Reply