Skip to content

MemoryMap

Marco Maccaferri edited this page Mar 15, 2018 · 2 revisions

Memory Map

The following image illustrates how the memory on the Propeller chip is mapped for the graphics processor firmware.

Memory Map

The 32KB ram memory is divided into logical areas or partitions with specific functions.

Sprites Table (0000H-007FH)

The first 128 bytes are the sprites definition table. Each sprite needs 4 bytes to define size, position and tile index. A a maximum of 32 sprites can be displayed on screen.

Tiles Map Array (0080H-052FH)

The folowing area is the tile map array used to draw the background graphics. It is a logical array of 40 columns and 30 rows with the top-left cell at address 0080H (0000H logical) and the bottom-right cell at address 052fH (04AFH logical). With 8x8 pixels tiles the resolution is 320x240 pixels.

Tile Bitmaps (0530H-7ECFH)

This area is a logical array of 64 pixels elements each defining the tiles bitmaps. Each element is an 8x8 pixels array and each byte is the pixel's RGB color. The size of the memory area is enough to hold a maximum of 480 tiles.

Parameters Area (7EB0H-7FFFH)

The last memory area is the graphics processor's parameters and buffers memory such as the scanline buffer, tile and sprite map pointers, etc.

Clone this wiki locally