@@ -14,7 +14,7 @@ The following is intended as an overview of how the **JoeyLib** programming envi
In addition to the usual concept of "graphics pages", **JoeyLib** has "surfaces". A surface is a block of memory large enough to hold the pixel data of a full display (32k). In addition to the back-buffer, drawing operations are supported on any available surface. The easiest way to create and manage multiple off-screen drawing surfaces as well as copy them to the display is through the [Static Image functions](JoeyLib Static Image Functions).
** Tiles
## Tiles
The fastest way to get content onto the display is using "tiles". A tile is an 8x8 pixel block that can be rapidly copied from one surface into another. Tiles can optionally support a one-bit transparency mask for seamlessly overlaying them on other content. While a tile's source position is confined to an 8x8 grid, the target can be almost anywhere on the target surface. Due to the way pixel data is stored in memory, drawing tiles to odd-numbered columns is not supported as it would be painfully slow. Attempting to draw to an odd column will result in the tile being drawn in the previous even column. To draw objects at any location requires a second set of tiles with their contents shifted one pixel horizontally.