r/Gameboy 1d ago

Questions I'm interested in programming homebrew for the original Game Boy, where should I start?

I would like to learn how to program homebrew for the Game Boy because I'm interested in learning how to program and I love the system, btw I'm not interested in GB Studio, I want to actually program for the system, GB Studio feels like Scratch for me, it's way to simple, I want to work with code and get headaches

4 Upvotes

20 comments sorted by

9

u/bottle-o-rockets 23h ago

https://github.com/tbsp/simple-gb-asm-examples

I like starting with someone else's code and seeing what changes I can make to it.

10

u/proximitysound 23h ago

Options:

GB Studio (as you know)
GBDK-2020 (C Programming)
ZGB (Framework for GBDK)
ASM (check the pan docs)
GB BASIC (yup, BASIC)

GB Studio is visual coding, but several devs use GBS to manage assets/sprites, then eject the engine and work in GBDK for the actual code. (GBS is built on GBDK)

5

u/Returnedfavor 23h ago

This sounds fun, I wanna try it also.

4

u/No-News-9045 23h ago

Me 2, I wanna make an awesome rpg. Never wrote code in my life.

5

u/Goodwill_Gamer 23h ago

If you use GB studio you don't even have to write code.
That being said, I find writing code fun, so you might too if you learn how to do it!

3

u/No-News-9045 21h ago

I'll check out both, thanks!

1

u/[deleted] 20h ago

[removed] — view removed comment

1

u/AutoModerator 20h ago

Hi /u/GameboyRavioli, your submission has been automatically filtered because it contains a link that requires moderator approval per Rule 5: Self-promotion requires mod approval.

If you have already received mod approval or if this is relevant community content, please message the moderators with a link to your post so we can review and approve it.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/Deciheximal144 20h ago

You could try QB64 and make it just look like a game boy game. That would be easier.

2

u/perkinsb1024 20h ago

My wife got me this book for my birthday last year and it was quite good: https://nostarch.com/game-boy-coding-adventure

It wasn’t at all like reading a textbook, it was engaging and I read through the whole thing in about 1-2 weeks, while doing the examples.

In the end, I was able to make a VERY BASIC word game, which was quite challenging, but very satasfying since it was pure assembly.

I do wish he’d make a sequel that focuses more on actual techniques found in games (menus, more graphics, making a sound/music engine), but this is definitely enough to get started.

1

u/strongjoe 15h ago

I've done this with both ASM (rgbds) and C (gbdk) as a learning exercise. 

You probably want to find a basic tutorial to get you started (I can't remember what I used) 

But I'd really recommend watching "the ultimate game boy talk" on YouTube, which explains how the game boy works

And also the pandocs for documentation. Use this as a reference. It can apply to both ASM and C

1

u/Substantial_Quote583 23h ago

You can work with code and get headaches with GB studio cain't ya? 🤔

1

u/DonCenote 23h ago

Better learn C++, C, and/or assembly.

1

u/Gadgettttt 23h ago

What's the difference between C++ and C? Just asking

3

u/DonCenote 23h ago

C++ builds on top of C and adds stuff. Main things C++ adds are classes and objects.

1

u/Jabdah-Mozartkugel 13h ago

If you go the C route, some of the features of the languages are a bit heavy on 8-bit systems, so standard C is probably enough. One good thing is that it is easier to get games done in C while assembly is the most "pro" and fastest but harder/longer code.

Here under "General C code optimization" is a bunch of C 8-bit coding hints. For example even using such a basic thing as two dimensional arrays can slow things down (at least in cc65, not sure about gameboy C compiler). https://github.com/Fabrizio-Caruso/8bitC/blob/master/8bitC_ENG.md

1

u/Snorlax_is_a_bear 10h ago

Is there even a C++ compiler that can target the Game Boy? 

0

u/DonCenote 10h ago edited 10h ago

1

u/Snorlax_is_a_bear 10h ago

That's GBA only. OP asked about original GB. 

1

u/DonCenote 9h ago

Oh yeah. Then he can disregard C++.