Going a long way for Game Boy Advanced video out

Here’s an intense hack that lets [Matt Evans] play Game Boy Advanced on a larger LCD monitor. He didn’t take the easy way out during any step of the process.

He’s using an FPGA to translate the LCD signals from the GBA hardware into a 1280×960 picture that is then pushed to the large monitor. But did he use an FPGA development board? No, instead he picked up an old PCI card at a surplus store because it had a Xilinx Virtex-E FPGA. So the first thing he had to do there was to remove unneeded components and figure out how to make the connections to reprogram that chip.

So next you’d grab a working monitor and hook it up to the FPGA signal, right? Wrong, [Matt] had a slightly borked monitor, getting rid of the LVDS section and wiring up his own connections to push the RGB signals through in parallel.

Yeah, that’s a lot of work. But as you can see in the clip after the break, it works like a charm. If you’re looking for some other gnarly video-out hacks, check out this one that lets you play Game Boy on an oscilloscope.

Comments

  1. Nate says:

    WTB +1 button

  2. VV says:

    I used to love that game!

    Nice hack. Wonder if the TV being on its side is part of the hack?

  3. Pedro says:

    Hacking at its finest.

  4. Anonymous says:

    I don’t understand why people think it’s called the Game Boy Advanced, but there is not, and has never been a “D” in the name.

    Nice hack though.

  5. Rob says:

    Anon, you must be the same person that complains when someone adds an ‘S’ to LEGO…

    Anyways, very interesting, but playing sideways could only be fun if I was laying down next to it… I do believe there is an easier way to accomplish this (with the Transverter), but it’s not near as rewarding as doing it yourself.

  6. Paul Potter says:

    Insane in a great way.

    Very nice work.

  7. Wartex says:

    Why does matt evans have a russian typewriter?

  8. MrTaco says:

    Advance, not Advanced!

    *pet peeve*

  9. joe says:

    why go through all that trouble? seems like a huge waste of time when there are simpler and faster ways to getting it done.

  10. Fetret says:

    @joe

    I can’t be sure whether you are sarcastic or not, so if you are disregard the following comment.

    I hate these posts, sure there are easier/simpler/faster ways but he did not chose the easy way, that is the hack itself. So please keep all the stupid “this can be done easier” comments to yourself.

  11. Eirinn says:

    @Joe git off my lawn

  12. Craig says:

    My mind boggles at how hardcore Matt is, this is great.

    Also, maybe HaD could think about installing filters in the comment submission system, cull phrases like “waste of time” or “could just buy”…

  13. Mad Max says:

    @Craig: congrats, that sounds like a particularly original interpretation of the well known “I disagree strongly with what you say, but I will defend to the death your right to say it”. To rephrase that: the seventies called, socialism wants its censors back…

    In other news, nice work on the FPGA upscaler!

  14. vic says:

    I don’t understand why people that say “why the trouble ?” come to this site at all, really :-)

    Anyway quite awesome, I’d love to see the result of the combination with this algorithm : http://research.microsoft.com/en-us/um/people/kopf/pixelart/index.html

  15. Marvin says:

    The real kick here is the re-use of some random hardware with an FPGA… I’ve been wanting to do that for ages!

    on the project: I think that the LVDS output is actually simpler to implement once you have an FPGA at hand…

  16. Mental2k says:

    Great hack, I think people forget that doing things the hard way is the only way to learn.

    @vic the output of that algo reminds me of one of the filters on the megadrive emulator gens. Kai I think maybe the name was.

  17. Mathorne says:

    Nice hack!
    Too bad he didn’t do anything with the audio…

  18. Mark A says:

    Well done.
    The only thing I don’t understand is
    why is the monitor on it’s side when the Game Boy screen is horizontal and not vertical?

  19. Whoever says:

    @Mark A:

    ’cause putting the monitor up-side-up would result in major wire twistage and/or inadequate structural support?

  20. Spork says:

    Wow, that is just wonderful. Most hacks I see are very doable with some free time and a little money. What makes this hack so special is the sheer amount of knowledge required to get it done. FPGA programing, signal processing, hardware repair? I have seen his other work on the GBA platform and taking it a step further like this is just geat!

  21. MattE says:

    Thanks so much for the kind comments — very motivational for future hacks! :-)

    @Whoever, exactly right, the monitor’s on its side just because it leant up against my desklamp that way without twisting the board around… no deeper meaning to it, but I should’ve mentioned it. ;)

    @vic, I hadn’t seen that algo, very cool. C’mon, implement it in Verilog, I dare you!

    @Wartex, good question! Typewriter is the result of “Guess what I bought on ebay!” from my g/f. :D

    I encourage others to make their projects pointlessly tricky and debug them until they work; I def. learned a lot from this one (but breathed in too much lead…)!

  22. fasf says:

    Nice job, but couldn’t you have just used the Gamecube Gameboy Advance Player attachment?

  23. HBCheng says:

    Matt:

    Nice job!

    I am wondering can I use SX28(http://www.rickard.gunee.com/projects/video/sx/gamesys.php) to implement similar thing to output gba video to a tv instead of the vga monitor you’re using?

    Can you shed some light about the gba lcd pin out?

    TIA!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 96,322 other followers