gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

Beginners > The Pern Project

#23965 - dovoto - Sun Jul 25, 2004 5:05 pm

If anyone is interested [url]www.thepernproject.com[/url] has been/is being updated.

The new intro Day 1, Day 2, and Appendix A are up. The others should follow at a decent pace. I have a bit more free time again. Any feedback would be welcome.

DAY 1
On the first day the Gameboy Advanced will be introduced in all its technical splendor. Hopefully you will come to love it as I do. Also covered, will be the set up of your tools (both hardware and software) that will allow you to create your own video games.


DAY 2 Raster graphics and Input
The next chapter (or day if you will) will cover bitmap graphics. We will talk about such simple things as plotting pixels and blitting lines and various other fun filled ways to get your ideas onto the screen. Input from the keypad is also discussed in this section.


DAY 3 Sprites
It is off to the fun-filled world of winged pixies. This will be the first time you will get to really play with the GBA and its impressive game hardware. Sprites are one of the key elements to video games and there are as many ways to display them as there are cheesy web tutorials that claim to teach programming. Fortunately for us the GBA has built in hardware to manage these illusive features and this chapter will be your introduction to its flexible design.


DAY 4
Sprites would not be much fun if you did not have a background to contrast them against. In this chapter, rendering backgrounds using the various tile modes will be covered and we will finally be able to render huge (albeit simple) maps.


DAY 5
Timers, Interrupts, BIOS, and Compression will be covered today. Handling and creating your own interrupts is key to controlling the flow and timing of your games. Calling functions in the BIOS will prove to be a simple matter and we will throw in a bit of compression to test it all out.


DAY 6
DMA, Direct sound channels, and music playback are the topics. Direct Memory Access is a way in which we allow the hardware to copy data from one area of memory to the other. It is not the fastest way to do such things but it is the fastest we can get in C code and since I am not quite ready to open up the assembler we will stick with DMA. We will use our new found knowledge of interrupts and timers to play back a simple sound file then use a free library to play back some music.


DAY 7
Multiplayer comms?this dreaded and often neglected topic will be covered in painful detail. Mulitboot to 4-player action will be discussed. Due to my current lack of a second GBA this topic may be delayed for a bit. (*New* no$gba emulator was released freeware and supports emulation of multiple GBA meaning I should be able to have this section up sooner than I thought)


DAY 8
Tile modes revisited. Now that you have learned the basics for getting your backgrounds on the screen it is time to do something interesting with that knowledge. This chapter attempts to cover scrolling, animated tiles, and dynamic maps. Also covered will be rotation and zooming of backgrounds.


DAY 9
Sprites revisited. First we cover a bit of sprite rotation and zooming which I hope you will see is very similar to background rotation. Next we need to discus optimization of sprite memory since it is a limited thing. Finally the topic of animation will be tackled.


DAY 10
Collision detection. Yep that's right a whole day devoted to nothing other then collision detection. There really is that much to talk about.


DAY 11+
Today we will put it all together and create our own simple game. I am going to do a bit of an RPG?dragon warrior style. I may be forced to draw my own art so?beware. This day will be broken down into the following:


-Story development
-Determining data structures
-Tool creation
-Menus
-State based programming
-Scripting
-Main game rendering engine (background display and sprite animation)
-Battle engine
_________________
www.drunkencoders.com

#23977 - sajiimori - Sun Jul 25, 2004 9:49 pm

I learned from your tutorials and ended up getting hired eventually, so you must be doing something right. Thanks!!

On the other hand, you've given us such gems as REG_INTERUPT and DMA_TIMEING_IMMEDIATE that spread like the plague... but we forgive you. ;)

(Besides, you weren't responsible for the worst one: "OAMData".)

#23979 - dovoto - Sun Jul 25, 2004 11:48 pm

I'll try to spell this version a bit better :)

and i may have been respomsable for OAMData as well...never know :)
_________________
www.drunkencoders.com

#23989 - DiscoStew - Mon Jul 26, 2004 2:16 am

I've been wondering where you went off to. Most of the GBA knowledge that I have came from the information you had on your website, and I'm glad to know about the new information. I'll have to take a look soon.
_________________
DS - It's all about DiscoStew

#24009 - Krakken - Mon Jul 26, 2004 1:41 pm

Wow, it's really looking so much better the second time around. I love how you've covered algebra aswell and the 3D cube, I think it'll give people a lot more confidence when they are on their own.

You might want to consider adding a little more colour to your register bit-layout tables? I don't know if people will agree but I find it really helps when i'm learning.

Really good job!

#24021 - dagamer34 - Mon Jul 26, 2004 7:39 pm

w00t! Back from the dead!!

Your tutorials are coming along nicely. Now if only they were like this 8 months ago when I was still a newbie, that could've helped. :)

Oh, and you're going to tackle the demon called multiplayer!!! I hope you succeed.
_________________
Little kids and Playstation 2's don't mix. :(

#24046 - yaustar - Tue Jul 27, 2004 12:07 am

Nice... glad you are still doing this stuff :) dovoto
_________________
[Blog] [Portfolio]

#24058 - CyberSlag5k - Tue Jul 27, 2004 5:24 am

Glad to hear it :)
_________________
When you find yourself in the company of a halfling and an ill-tempered Dragon, remember, you do not have to outrun the Dragon...

#24113 - mymateo - Wed Jul 28, 2004 2:31 am

I, too, have gleaned much information (and some wisdom) from your tutorials. I have always felt an empty hole inside from having only 4 days' lessons, all of which I read in one day, except day 4. I must've gone through that 50 times by now. Still trying to completely figure it out, too! I am the King of the newbies! I stay a newbie for MONTHS after intensive programming! Staying up until 4 am, trying to figure something out, drinking coffee until I percolate! I will never graduate from newbie status and I never plan to! (People expect you to eventually be smart with this stuff, and I don't think I ever will, so I'll leave nobody to believe I'm smart. Me at english good too!)