[The Atrevida Game Programming Tutorials]

  • Do you want to learn how to create computer games for the PC? The articles at this site start right at the beginning. If you're comfortable with the C programming language, that's all you need -- no other knowledge or training is required or assumed. Come on in, start at the beginning, and have a blast!
  • Are you already a game or demo programmer and you want to find some specific information? Jump right into whatever article you need. You don't have to read all of the articles in order. In fact, there are "prerequisites" lists for each tutorial, so you can see what previous knowledge you need to know for each subject.

Table of Contents

Getting Started
  • Introduction

PC Systems Programming Essentials

Graphics Programming Using VGA Mode 13h

80x86 Assembler

Mode X Graphics Programming
  • Introduction to VGA Mode X
  • Implementing Graphics Primitives in Mode X
  • Mode X Paging Tricks

Advanced Systems Programming
  • Writing Interrupt Service Routines
  • Programming the 8253 Timer Chip
  • Programming the 8237 DMA Chip

  • Introduction to Sound Waves (~23K)
  • Device Programming: the AdLib/Sound Blaster (FM) Sound Cards -- Coming very soon...
  • Writing an AdLib/Sound Blaster Music Library with C and Assembler
  • Device Programming: Digital Sound with the Sound Blaster, Part 1
  • Device Programming: Digital Sound with the Sound Blaster, Part 2
  • Mouse Programming (text mode and Mode 13h)
  • Mouse Programming under Mode X
  • Device Programming: Direct Keyboard Programming
  • Device Programming: the Joystick

General Information on Game Programming
  • Game Design, including Program Organization Issues
  • Object-Oriented Game Programming Using C++
  • Basic Optimization Techniques
  • Suggested Readings (and some suggested projects)

Sample Games With Source Code! (Sorry, not ready yet)
  • Hunt the Wumpus (C, with Assembler libraries)
  • Missile Commander (100% Assembler)
  • Mastication Man -- a Pac-Man clone (Object-Oriented C++, with Assembler libraries)
  • Scramble (C or C++, you decide!)

Other Possible Articles
  • Anaglyphic Stereoscopy (how to support red-and-blue 3-D glasses)
  • Writing Text Adventures
  • Implementing a Graphical Font System
  • Basic Matrix Math
  • Introduction to 3-D Graphics (Vectors) Programming
  • Protected Mode Programming (research in progress...)


Please e-mail me your comments, suggestions, problems, bug reports, or flames!

Copyright 1997-2001, Kevin Matz, All Rights Reserved.
Last revision date: Fri. April 7, 2001.

A project