Chip Properties

Each chip, that is defined in the data.json file, has its own properties that you can modify in order to change the look and feel of your game. You can edit this file by hand or use the Chip Editor which is included in the Pro Tools and has built-in system templates to make changing things easier. Since a game has at least 8 chips, it’s easier to look at system specs as three main categories: graphics, storage, and sound.

image alt text

While there is a bit of overlap between which chips are part of the GPU and storage group, each one focuses on a specific aspect of the engine and how it will perform.

Graphics

The first group contains the storage properties. These are responsible for the visuals of PV8 games. This group is comprised of the following properties:

Property

Chip

Description

width

DisplayChip

The width of the resolution in pixels.

height

DisplayChip

The height of the resolution in pixels.

overscanX

DisplayChip

The number of right side columns to subtract from the resolution.

overscanY

DisplayChip

The number of bottom rows to subtract from the resolution.

maxSpriteCount

SpriteChip

The total number of sprites that can be displayed at one time.

maxColors

ColorChip

The total number of system colors.

cps

SpriteChip

The total colors per sprite.

Storage

The second group makes up the storage properties. These properties are responsible for how much data can be stored in a PV8 game. This group is comprised of the following properties:

Property

Chip

Description

columns

TilemapChip

The total number of columns that the tilemap is made up of.

rows

TilemapChip

The total number of rows that the tilemap is made up of.

pages

SpriteChip

The total number of sprite memory pages. Each page contains 256 sprites.

maxSize

GameChip

The maximum size of the game cartridge. This is only enforced when building Lua games in Pixel Vision OS.

saveSlots

GameChip

The number of save slots the game contains.

Audio

The last group makes up the audio properties. These properties define how sound effects and music work in a PV8 game. This group is comprised of the following properties:

Property

Chip

Description

totalSounds

SoundChip

The total number of sound effects the sound chip can load into memory.

totalChannels

SoundChip

The total channels that are avalible for playing back sound effects. This also represents the total number of tracks available to song patterns.

channelTypes

SoundChip

An array representing the waveform ID each channel uses. Setting this to -1 will allow any waveform to be played on the channel.

totalSongs

MusicChip

The total number of songs the MusicChip can store in memory.

totalPatterns

MusicChip

The total number of patterns the MusicChip can store in memory.

Extra Properties

Finally, there are additional properties that are useful for more advanced users. You should only edit these if you know what you are doing.

Property

Chip

Description

backgroundColor

ColorChip

Sets the default background color for clearing the game’s screen.

maskColor

ColorChip

This will change the default mask color, which is used to determine what color represents transparency when importing images and drawing them to the display.

debug

ColorChip

Forces the engine to use the mask color when a color ID is out of range instead of defaulting to the background color.

layers

DisplayChip

The number of layers you can use when drawing pixel data to the display.

unique

SpriteChip

This will automatically optimize sprites as they are loaded making sure there are no duplicated sprites. This may affect the IDs of sprites in memory when you set to true.

autoImport

TilemapChip

When load a tilemap.png file, any tiles not found in the SpriteChip’s memory will be added to ensure the tilemap has all the tiles it needs to render correctly.