Page 1 of 2

NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 4:38 am
by megalon
Hi there,

It's a really old idea - make an NES inside Gameboy DMG and there are some implementations. But it's usually either a bulky monster with a cartridge slot attached to the back or a raspberry PI. The former is not very portable anymore and the latter... well, I think it's like killing the fly from bazooka... why on earth would anybody want to waste a fully functional PC for an emulator with 8 buttons!? Not to mention that when you turn it on - there's linux loading and stuff... I can't accept it as portable NES, sorry but it's just lame :(

Basically what I want is NES inside DMG that has built in flash or programmable cartridge (of gameboy form of course) with ROMS. The question is - what should be the guts of the system?
Variants - FPGA or hacked portable NES clone.

Sooo, does anybody have ideas, tuts or resources?

Thank!

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 6:39 am
by tokumaru
I wonder if it would be possible to fit the guts of a portable clone and an Everdrive N8...

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 7:04 am
by qbradq
You could probably do it with an FPGA board, although it might need to be multi-layer to get the kind of densities you need. The big problem with FPGA's is that you need big logic density to implement an NES system, and even more if you want to interface with an SD card or similar, and as you increase logic density you typically increase pin count. You get to a point where there are no packaging options other than BGA, and they you're kinda screwed from a hobbyist point of view.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 7:26 am
by tepples
megalon wrote:why on earth would anybody want to waste a fully functional PC for an emulator with 8 buttons!?
Why would anyone want to turn a fully functional smartphone or tablet with a touch screen into on-screen buttons? Yet emulators remain popular on Android.
Not to mention that when you turn it on - there's linux loading and stuff
Ubuntu and some other GNU/Linux distributions use a "pretty" boot splash that hides all the "scary" kernel and init messages. So does Android, which uses the same kernel (Linux) as GNU/Linux. PS3 and PS4 run Game OS and Orbis operating systems derived from NetBSD and FreeBSD respectively, but they've been customized to the point where the user can't tell they're there.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 8:06 am
by tokumaru
The problem with booting an OS is the time it takes from power on to the beginning of gameplay.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 8:14 am
by qbradq
Yea, that is kind of a bummer.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 12:22 pm
by tepples
tokumaru wrote:The problem with booting an OS is the time it takes from power on to the beginning of gameplay.
Authentic Game Boy and Nintendo DS systems have the same problem, satirized in my Pretendo demo. So does every disc console.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 2:23 pm
by qbradq
Come to think of it, don't all Gameboy titles have an annoying "Gameboy" logo screen that takes tedious seconds to GTFA?

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 3:48 pm
by megalon
It's true that GB has splash screen. But NES does not :) And most importantly GB splash takes mere seconds, while Raspberry PI takes some time... and it takes some time to launch an emulator. PI's problem is that it's a PC. DMG has 8 buttons. PI is capable of Keyboard, mouse, networking, HD output etc. Do you see what I mean? 99% of PI's capabilities are wasted, not to mention that powering a fully functional PC compared a little board capable of NES only is way more expensive and I'd like to have decent battery life.

As for implementation. Further research brought me to the conclusion that FPGA is indeed a nice way to do it. There are couple implementations, although I'm not sure if there a PCB small enough to fit DMG shell.

Screen, buttons - not a problem at all. Screen - car rear view TFT (cheap and does the job). Buttons - plenty (radio stores).

Rechargeable battery - doable. Will probably require some messing around but should be fine.

Cartridge reading / choosing games - I saw an article where a bloke made it with NIOS II I need to investigate in that direction. Btw he made an NES clone on FPGA. I've send him a message, let's see what he'll say about the matter. Here's the article BUT it's in Russian http://habrahabr.ru/post/185872/.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 5:08 pm
by qbradq
I'd ditch the attitude that overkill is inherently a bad thing. The FPGA you end up with will likely be capable of a hell of a lot more than an NES implementation, but that doesn't mean it's the wrong tool for the job.

Also, it may surprise you to find that most FPGA's with the logic density you're going to need for this are going to be more expensive just for the chip than a Raspberry PI is assembled and delivered to your doorstep. You're still going to have to get a multi-layer PCB manufactured and a high-density BGA device soldered on there somehow (although a modified toaster oven could get the job done).

I'm not trying to tell you not to try. If anyone on this board did things the practical way we wouldn't be developing for this platform :) Just trying to give you a heads-up on what to expect.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 5:50 pm
by megalon
qbradq yeah, I'm trying to look at all the pros and cons of each variant. PI is cheaper indeed, and FPGA is a bit of an overkill for the job either...

What's definitely the "cleanest" way to do that is to hack a clone. But in this case I'm gonna need to remove the cartridge slot and connect it directly to some sort of a controller responsible for switching roms. And all that should go to the very same screen. Which means I need a default ROM which lists all the available games and, when selected, loads the corresponding ROM and resets the system... pice of cake... :(

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 5:54 pm
by lidnariq
If you are ok with limiting the specific games you play, you could bundle a huge pile of plain NROM games with a single banking register, something like mapper 62.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Mon Nov 25, 2013 6:01 pm
by tepples
Or you could use mapper 34 (BxROM), which supports any number of NROM games with the same mirroring as long as your multicart menu copies the PRG ROM data to CHR RAM when the player selects a game.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Tue Nov 26, 2013 6:49 am
by qbradq
Unfortunately the EverDrive n8 is too big to fit in the case, and if you roll your own you're back to square one. An FPGA is about the only way to implement one of those things ;) That or a really big CPLD.

Re: NES inside Gameboy DMG Shell (ideas? Not Raspberry PI)

Posted: Tue Nov 26, 2013 12:25 pm
by NESHomebrew
I haven't seen any with built in games, but I have seen a few with cartridge slots. Here is one example http://www.dashfest.com/?p=344

There are some inexpensive devices with built in NES emulators I've seen portablized. I'll see if I can find one. edit Here is an example of one http://techcrunch.com/2009/09/04/review ... -emulator/