Page:Gametronics Proceedings.djvu/35

From Wikisource
Jump to navigation Jump to search
This page has been proofread, but needs to be validated.

256 x 256 (65K) bits of RAM are used.

Video patterns, such as tanks, cowboys, and planes are permanently stored in ROMs. At the initialization of the program, these patterns of data are transferred from ROM memory and loaded into RAM memory where most of the data is stored throughout the game. The initial address in RAM, hence the initial position in which the image will appear, is fixed by the program. Consequently, the images will always appear in the same location each time the game is started. Some images (e.g., stationary images such as houses or trees) retain their initial address locations in RAM for as long as they appear on the screen and are simply read out each frame at the same location. Other images, such as submarines and tanks, are made movable by changing the location of the video patterns in RAM. This enables the position of these images on the CRT screen to change with successive frames or every other frame.

While vertical motion is relatively simple and only involves moving the block of image data up or down in memory, the actual mechanics of moving a complete video image up or down the CRT is more complex. Coherence and smoothness should be kept in all motions. Hence, each word in the block must move the same number of address units.

Horizontal motion is much more complex. Moving blocks of data alone will cause a jump from location to location. The correct action involves shifting each word into the next word. This avoids jerky and uneven motion (see Figure 2).

Games designed in this manner are fairly general puspose and can easily be adapted to other games by changing the programs. However, the bulk of the burden associated with block movement is placed on the processor, and the limiting factor is the number of moving objects that can be supervised by a microprocessor.

While the RAM-intensive approach works, it is costly and places a great deal of burden on the microprocessor.

–33–