Discussion about software development for the old-school Gameboys, ranging from the "Gray brick" to Gameboy Color
(Launched in 2008)
You are not logged in.
So I have watched a tutorial on YouTube about it.
I was just wondering if there is anywhere else I can learn from. Books, sites, videos, podcasts. This would be in C coding. Thanks
Offline
Try joining the GB Dev Discord. Also, the GBDK-2020 project has its own Discord and documentation. If you're going to code in C, you should definitely use GBDK-2020 over any previous version, as it's actively developed. However, my personal recommendation is to look into assembly language as well. If nothing just to get a taste of it.
https://gbdev.io/chat.html
https://github.com/gbdk-2020/gbdk-2020
Offline
That was my plan. Also which code would be easier to work with for someone who has little to no coding skills.
Last edited by Buckygamgee (2022-02-15 13:01:22)
Offline
Hi Buckygamgee!
I'm also a beginner when it comes to programming for the GameBoy, but I've come across some useful books and sites that I thought I'd share
In terms of choosing a language - I would recommend trying assembly language if you want to learn how the GameBoy works.
If you are unsure of whether to choose C or ASM, check out: https://gbdev.io/guides/tools.html#assembly-asm which lists all of the advantages and disadvantages of using assembly and C.
If you do decide to try ASM, the recommended emulator for the GameBoy is BGB:
Link:
https://bgb.bircd.org
The recommended program(s) for assembling your code for the GameBoy is RGBDS:
Link:
https://github.com/gbdev/rgbds
Book recommendations:
An introduction to microprocessors, volume 1 basic concepts - Adam Osborne
Link (archive.org):
https://archive.org/details/introductiontomi00adam
Programming the Z80 - Rodnay Zaks
Link (archive.org):
https://archive.org/details/Programming … odnay_Zaks
I should mention that the GameBoy does not use a Z80 CPU, but most, if not all of the examples in the above book can be applied to GB programming.
(edit: Just saw that I forgot to include websites and videos - apologies)
website recommendations:
Link:
learnasm.net - from the Chibiakumas website. Includes lots of assembly examples, including several examples for the GameBoy. However, I have found that it can be a bit difficult to follow the tutorials on the website.
Link:
https://eldred.fr/gb-asm-tutorial/ - useful beginner tutorial which also includes how to use the basic features of the BGB emulator. The tutorial is incomplete at the moment, but provides a basic introduction to programming for the GameBoy.
Link:
https://rvbelzen.tripod.com/z80prgtemp/z80prg03.htm - a HTML version of "programming the Z80 - Rodnay Zaks". I should note that this is not complete and only contains 4 pages.
Video recommendations:
Link (youtube):
Shallan - https://www.youtube.com/watch?v=1KDuHRm … 8hwdqSmqT1 - Not a tutorial, but you can learn quite a bit from watching Shallan develop his port of Doc Cosmos for the GameBoy colour. He does briefly explain some concepts when programming as well.
Link (youtube):
Chibiakuas - https://www.youtube.com/watch?v=Tn1rFUu … M9eaZd166O - From the same person who developed learnasm.net. The tutorials go over the same content that is shown on learnasm.net, but further explanation is provided in conjuction with the examples. Useful if you are finding it difficult to follow the examples on the website and require further explanation. Chibiakumas also has a Z80 tutorial series on both his youtube channel and his website, which can be helpful when trying to learn assembly language programming concepts, which can also be applied when programming for the GameBoy.
Game programming (general concepts):
Here are some videos and websites which I found that cover some basic game development techniques:
Websites:
Link:
https://gameprogrammingpatterns.com/game-loop.html - general game structure
Videos:
Link (youtube):
https://www.youtube.com/watch?v=sKCF8A3 … B7WQoHf-My - basic maths for game developers
Link (youtube):
https://www.youtube.com/watch?v=ENuk9HgeTiI&t=269s - collision detection method concepts (AABB)
Hope this helps
Last edited by ExploreZip (2022-03-09 05:18:30)
Offline
Buckygamgee wrote:
So I have watched a tutorial on YouTube about it.
I was just wondering if there is anywhere else I can learn from. Books, sites, videos, podcasts. This would be in C coding. Thanks
There is a list of resources here. In particular you might check out the Tutorial section:
https://gbdk-2020.github.io/gbdk-2020/d … tools.html
If you don't have a lot of experience then ZGB might be an option. It is an engine built on top of GBDK-2020. Many of the games listed in it's wiki are open source.
https://github.com/Zal0/ZGB/
https://github.com/Zal0/ZGB/wiki/Made-with-ZGB
Offline