Fix layer: Difference between revisions

From NeoGeo Development Wiki
Jump to navigation Jump to search
m (6 revisions: Import from wikkii)
mNo edit summary
Line 1: Line 1:
The fix layer is a non-scrollable, tile based layer with transparency which has the highest priority on the display (it always overlaps [[sprites]]). It is almost always used to display text or HUDs.
The fix layer is a non-scrollable, tile-based layer with transparency which has the highest priority on the display (it always overlaps [[sprites]]). It is used to display text or HUDs like scores and health bars.
 
As only 12 bits are reserved to address fix tiles, tilesets can only contain a maximum of 4096 tiles (128KiB).


== Graphics format ==
== Graphics format ==


Tiles used are 8x8 pixels, stored in the [[S ROM]]s, or in [[FIX file]]s before getting loaded to [[PSRAM]] in CD systems.
Tiles used are 8*8 pixels, they're stored in the [[S ROM]]s, or in [[FIX file]]s before getting loaded to [[PSRAM]] in CD systems.
In MVS systems, the onboard fix tileset is stoed in the [[SFIX]] ROM.
In MVS systems, there is an embedded fix tileset stored in the [[SFIX|SFIX ROM]] which can be swapped with the cart's one.


The tiles graphics are in 4BPP (15 colors + transparency) and can be individually mapped to the first 16 [[palettes]].
The tiles graphics are 4BPP (15 colors, index 0 is transparent), each can be individually mapped to the first 16 [[palettes]].


See [[Fix graphics format]] for more details.
See [[Fix graphics format]] for more details.
Line 14: Line 16:


The map is 40x32 tiles but only 40x28 tiles are drawn to the screen. Therefor, there are 2 hidden lines of tiles at the beginning and the end of the map. Some games also don't use the leftmost and rightmost columns, as some misaligned CRT screens (?) can cut them off.
The map is 40x32 tiles but only 40x28 tiles are drawn to the screen. Therefor, there are 2 hidden lines of tiles at the beginning and the end of the map. Some games also don't use the leftmost and rightmost columns, as some misaligned CRT screens (?) can cut them off.
Tiles are mapped from up to bottom, and left to right (see layout). The VRAM_MOD ($3C0004) register can be set to 32 instead of 1 if tile have to be updated in lines. See [[Displaying text]].


The base address in [[VRAM]] for the map is $7000. Each tile uses one 16bit word:
The base address in [[VRAM]] for the map is $7000. Each tile uses one 16bit word:


{{16BitRegister|Palette number|4|Tile number|12}}
{{16BitRegister|Palette number|4|Tile number|12}}
Tiles are mapped from up to bottom, and left to right (see layout). The '''VRAM_MOD''' ($3C0004) register can be set to 32 if tiles need to be updated in lines. See [[Displaying text]].


[[Category:Video system]]
[[Category:Video system]]

Revision as of 20:00, 18 September 2011

The fix layer is a non-scrollable, tile-based layer with transparency which has the highest priority on the display (it always overlaps sprites). It is used to display text or HUDs like scores and health bars.

As only 12 bits are reserved to address fix tiles, tilesets can only contain a maximum of 4096 tiles (128KiB).

Graphics format

Tiles used are 8*8 pixels, they're stored in the S ROMs, or in FIX files before getting loaded to PSRAM in CD systems. In MVS systems, there is an embedded fix tileset stored in the SFIX ROM which can be swapped with the cart's one.

The tiles graphics are 4BPP (15 colors, index 0 is transparent), each can be individually mapped to the first 16 palettes.

See Fix graphics format for more details.

Fix map

File:Fixlayout.png
Fix layout. The grey area is part of the display but only the area in the red rectangle should be used.

The map is 40x32 tiles but only 40x28 tiles are drawn to the screen. Therefor, there are 2 hidden lines of tiles at the beginning and the end of the map. Some games also don't use the leftmost and rightmost columns, as some misaligned CRT screens (?) can cut them off.

The base address in VRAM for the map is $7000. Each tile uses one 16bit word:

Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Def Palette number Tile number

Tiles are mapped from up to bottom, and left to right (see layout). The VRAM_MOD ($3C0004) register can be set to 32 if tiles need to be updated in lines. See Displaying text.