HellTM
 
 
Team Members:
Ari Pernick
Team Leader, Scoreboard, Health, Character Animation, misc stuffas
Monika Tkaczyk
Game Engine
Jeremy Shaw
16 bit Sound Engine, CDRom Engine
Neil Kumar
Graphics Engine, Artwork
 
 
    Here is the actual game.
Introduction

Hell is a vertical scrolling game featuring : SVGA 640x480x16 bit color graphics, parrallex scrolling backgrounds, CD Audio music, and mixed audio. Basically, in the game, you control a character who is constantly falling down a pit of fire. Essentially you fall from ledge to ledge, avoiding the obstacles, and try to avoid falling off the bottom and getting spiked from above. Some of the obstacles include spikes all the way at the top, tar ledges, fire ledges, ledges that are springs, etc.

The purpose of this project. is to learn how to extend all we know about 80x86 programming and Mode13 to protected mode and VESA.
 

Project Discription

We have developed our game in SVGA 640x480 in 16-bit color mode. Although this higher resolution video mode allows us to have more impressive graphics, it doesn't not come without hassle. Once we exceed 320x200x256, the video buffer no longer fits into a single segment in real mode on the 80x86 processor family.

To overcome this limitation, this program is written in 32-bit protected mode. This means that we can use the flat addressing memory scheme, which make the graphics generation functions easier because they do not have to deal with the issues of the screen buffer being divided among several segments.

To write the code in 32-bit protected mode, we used two free software packages. One is nasm, the NetWide Assembler. It is a small, clean assembler developed by assembly language programmers for assembly language programmers. In addition used the free 32-bit Dos extender WDOSX. When the computer is brought into protected mode, the dos functions become unavailable because they are designed to work with segments, not linear addressing. The Dos extender puts the machine into protected mode for us, reimplements the key Dos Functions Calls, and starts execution of our code.

The Graphics resolution used forces us to work with palletteless gaphics, and thefore requires the use of other graphic formats. We chose targas for this project. Over features include 16bit sound mixing.