Player/Missile Graphics Memory MapYou have no doubt seen this little map in dozens of publications. It shows you where your PM graphics are located in memory. The problem is: what does it mean? I'll attempt to explain it below. First, the map: Double One byte wide Single Line Line Resolution Resolution Offset Offset 0 +-----------------+ 0 | | | unused | | area | +384 |-----------------| +768 | 0 | 1 | 2 | 3 | | missiles | | | +512 |-----------------| +1024 | | | Player 0 | | | +640 |-----------------| +1280 | | | Player 1 | | | +768 |-----------------| +1536 | | | Player 2 | | | +896 |-----------------| +1792 | | | Player 3 | | | +1024 +-----------------+ +2048 No matter where in memory you reserve your PM graphics area, the location of the space used by the players and missiles will be offset the same number of bytes from the beginning of the reserved area. That's what the offset numbers represent: the number of bytes from the beginning of the PM area where that object's graphics begin. So, if you decide to reserve sixteen pages (4096 bytes) from the top of your memory (40960), your PM graphics will begin at 36864. Depending on which resolution you have chosen, the missile graphics area will begin either 384 or 768 bytes from that location: or at 37248 and 37632 respectively. In double line resolution, you can define your objects up to 128 bytes in length; in single line they can be 256 bytes long. Even if your object is only eight or ten bytes in height, the boundaries for their placement are always the same relative offset from the top of PM graphics memory. This map is only eight bits -- one byte -- wide. You can see that all four missiles share the same width byte, each using two bits for resolution. If you combine the missiles to form a fifth player, you use this area exactly as you would the area for any other player. One means of moving your players vertically is to move the players within their reserved area rather than on the screen itself. In BASIC, this is considerably faster than having to move the player on the screen, but it's a slow process anyway. As far as the boundaries of the TV set are concerned, all players in both resolutions are mapped to the entire height of the screen. There are many good programs to create and edit PM graphics, mentioned earlier in the Memory Map text. PM graphics are one of the Atari's most powerful and least understood capabilities. I suggest you read up on them and try to master their use; they're not as difficult as they seem.
Return to Table of Contents | Previous Chapter | Next Chapter