Hacker News new | past | comments | ask | show | jobs | submit login
Gameboy technical reference for homebrew developers (gbdev.io)
250 points by BramLovesYams 3 months ago | hide | past | favorite | 30 comments

Oh, I'm so happy to see this here. I'm avivace[0], lead of the https://gbdev.io iniative. Pan Docs is really a labor of love and we've been investing a lot of time in improving it and making it more accurate and accessible.

We do maintain a bunch of other stuff too! A Game Boy Assembly Tutorial[1], an open digital repository of Game Boy homebrew software[2] and RGBDS[3], the de-facto standard assembly toolchain for the Game Boy.

We also hosted popular game jams such as the gbcompo21[4] and gbcompo23[5], with winning entries usually going the long way and publishing as physical products.

Come join us on Discord[6] if you'd like to get involved and contribute.

[0] https://github.com/avivace [1] https://gbdev.io/gb-asm-tutorial/ [2] https://hh.gbdev.io/ [3] https://rgbds.gbdev.io/ [4] https://itch.io/jam/gbcompo21 [5] https://itch.io/jam/gbcompo23 [6] https://gbdev.io/chat.html

Thank you so much for leading such a great project! In the past I had struggled to find a project to really get me hooked into programming, but the gbdev project really nailed it : )

A long, long time ago I started a YouTube series[0] on the internal workings of the Game Boy during a brief break from work. I eventually started working again and animating the episodes was taking way too long, so I had to stop, but I've kept orbiting the world of Game Boy reverse engineering.

The amount of dedication, skill, and passion that goes into it on a daily basis is mindblowing, and people keep discovering hardware quirks and bugs to this very day! I believe it wasn't that long ago that people discovered a glitch in the audio subsystem that gave you more control over note envelopes, and it was promptly added to LSDj (a tracker for the Game Boy that was first released in 2000) by the original author, who's still maintaining it to this day.

0: https://www.youtube.com/watch?v=RZUDEaLa5Nw

EDIT: oops, forgot the link!

Did you ever consider storyboarding the animations and farming it out to someone? It probably wouldn't make sense financially, but it might bring it back under the amount of time you'd have/want to spend on it.

Briefly, but I realized that the creative satisfaction of the whole thing came from being able to do everything myself, so giving that up would have made it pointless to me. I feel bad about it because it's definitely a bit of a narcissistic take (praise me, for I can do it all!), but the truth is that I was also discouraged by the mistakes I made in the research process, and how mean some of the commenters who pointed them out were.

I started to get a lot of anxiety about the whole process, and realized that I would have had to put even more effort into it ok top of my full time job, which further cemented my choice to just run away from it. I periodically feel really bad about it. Hopefully some day I'll win the lottery and I'll be able to make another episode. I actually have the script for episode 3 all done: I wrote it on parental leave, but that also didn't last forever!

You did a beautiful job and you should be proud of it. Both the information and the aesthetics are a treat.

Can I ask what technology stack you used? For the images, the animations, and the voice over?

I’d like to be able to do something like this.

Thank you so much! It's all done in After Effects, with some Photoshop work for more complex graphics. The voice over was kindly provided by my wife.

Excellent work, the animation is top notch. The voice was so good I also assumed it was generated.

What a world where someone would sooner believe a good human voice is from a computer before a human!

When machines started making perfect rugs, humans began valuing those rugs with imperfections.

That would have been really impressive in 2016!

I’ve really enjoyed watching these while working on a toy emulator during little bouts of free time in the past year. Thanks for making these!

Edit: Just realized how similar my comment was to a neighbor comment. There must be a lot of folks pining for a better time from their past…

Amazing series. Great refresher on assembly too.

Thanks for making those videos. I really enjoyed watching them earlier this year. I’ve been getting into making games, restoring, and collecting Game Boys.

Is there a link missing here? I would like to see your YT series :)

Oops! I just added it.

I was already subscribed!

Any link for the new hardware quirk added to lsdj?

Yeah! Search for "zombie mode" on this page: https://gbdev.gg8.se/wiki/articles/Gameboy_sound_hardware

Your YouTube video was amazing. Inspiring to see such educational content.

How did you find your narrator and how did you do your animations?

I found my narrator by being married to her, and all the animation was done in After Effects.

The gbdev and emu dev discord communities were indispensable when writing my GB emulator. They’re helpful and social and many can basically look at your corrupt output and suggest what vblank or other bugs you might have.

My first interaction was asking why the Nintendo logo would appear and never disappear and they immediately knew it was a rookie pitfall: I had my button inputs set to low which actually means pressed, so my emulator was resetting itself infinitely.

I wrote a Game Boy emulator as a pandemic project, and the pandocs linked here are indispensable. It contains all the technical documentation you need while leaving the implementation up to you. I tried getting into Sega emulators after, and while there is some good info there (SMS Power has good docs), none quite matched this.

a similarly comprehensive document for game boy advance / nintendo ds / lite / dsi:


i've got myself a dsi and at some point plan on doing some from-scratch development for it -- that single file should be enough.

Thanks for the tip! I've been wanting to dive into DS/lite/DSI.

The Gameboy homebrew community is amazing. Hoping in the future that other homebrew communities grow as popular.

Obligatory link to the Ultimate Game Boy Talk: https://www.youtube.com/watch?v=HyzD8pNlpwI

Oh this is really nice and well formatted, all this time I use https://gbatemp.net/download/gba-and-ds-rom-hacking-guide.33... for my romhacking project

I think this document would be a great resource for me to go really to the basics and this guide is well updated too so it's a plus

Text version of pandocs: https://problemkaputt.de/pandocs.htm

Almost 30 years now and gbspec.txt is still being updated. Amazing

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact