summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/hardware_data/graphics/ppu_lr35902-cgb+mbcx.lua240
-rw-r--r--src/hardware_data/graphics/ppu_lr35902-cgb.lua214
-rw-r--r--src/hardware_data/graphics/ppu_lr35902-dmg+mbcx.lua168
-rw-r--r--src/hardware_data/graphics/ppu_lr35902-dmg.lua142
-rw-r--r--src/hardware_data/graphics/ppu_lr35902-sgb+mbcx.lua177
-rw-r--r--src/hardware_data/graphics/ppu_lr35902-sgb.lua151
-rw-r--r--src/hardware_data/graphics/ppu_lr35902-sgb2+mbcx.lua168
-rw-r--r--src/hardware_data/graphics/ppu_lr35902-sgb2.lua142
-rw-r--r--src/hardware_data/graphics/ppu_rp2c02+129.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c02+mmc1.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c02+mmc2.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c02+mmc3-4screen.lua15
-rw-r--r--src/hardware_data/graphics/ppu_rp2c02+mmc3.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c02+mmc5.lua7
-rw-r--r--src/hardware_data/graphics/ppu_rp2c02+vrc6.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c02.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c03+129.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c03+mmc1.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c03+mmc2.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c03+mmc3-4screen.lua15
-rw-r--r--src/hardware_data/graphics/ppu_rp2c03+mmc3.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c03+mmc5.lua7
-rw-r--r--src/hardware_data/graphics/ppu_rp2c03+vrc6.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c03.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c07+129.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c07+mmc1.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c07+mmc2.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c07+mmc3-4screen.lua15
-rw-r--r--src/hardware_data/graphics/ppu_rp2c07+mmc3.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c07+mmc5.lua7
-rw-r--r--src/hardware_data/graphics/ppu_rp2c07+vrc6.lua13
-rw-r--r--src/hardware_data/graphics/ppu_rp2c07.lua13
32 files changed, 1096 insertions, 606 deletions
diff --git a/src/hardware_data/graphics/ppu_lr35902-cgb+mbcx.lua b/src/hardware_data/graphics/ppu_lr35902-cgb+mbcx.lua
index 1146165..e2c3d23 100644
--- a/src/hardware_data/graphics/ppu_lr35902-cgb+mbcx.lua
+++ b/src/hardware_data/graphics/ppu_lr35902-cgb+mbcx.lua
@@ -1,20 +1,43 @@
+-- Information: --
+-- PPU (Picture processing unit) --
+-- LR35902 (CGB) with MBC1/MBC2/MBC3/MBC5 --
+
return {
screen = {
- {
- width = 160,
- height = 144,
- refresh = 59.73,
- origin = {
- x = 0,
- y = 0,
- },
+ width = 160,
+ height = 144,
+ vsync = 59.73,
+ origin = {
+ x = 0,
+ y = 0,
},
+ -- Total of unique texels, pixels and vertices on VRAM --
+ pixels = 37888,
+ texels = 552,
+ vertices = false,
},
colours = {
total = '15bpp',
limit = 56,
- background = false,
- transparent = 'colourKey',
+ transparent = {
+ sprite = 'colourKey',
+ tile = false,
+ },
+ tileDepth = 'colourKey',
+ palettes = {
+ {
+ total = 8,
+ type = 'spritePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ {
+ total = 8,
+ type = 'tilePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ },
},
meshes = false,
shaders = {
@@ -27,51 +50,10 @@ return {
},
physic = false,
sprites = {
+ -- Limit sprites on screen --
onScreen = 40,
+ -- Limit sprites on line (scanline) without flickering --
onLine = 10,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- },
transform = {
move = true,
rotate = false,
@@ -79,6 +61,7 @@ return {
shear = false,
affine = false,
},
+ -- Sprite sizes in pixels --
sizes = {
{
width = 8,
@@ -93,79 +76,90 @@ return {
tiles = {
layers = {
{
- total = {
- x = 32,
- y = 32,
- 1024,
- },
- onScreen = 399,
- limit = false,
- unique = 512,
- independent = false,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
+ -- Total tiles and pixels on VRAM --
+ onVRAM = {
+ screenSections = {
+ all = {
+ Xtiles = 32,
+ Ytiles = 32,
+ tiles = 1024,
+ pixels = 65536,
+ },
},
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- mirror = true,
- transform = {
- individual = true,
- move = true,
- rotate = false,
- scale = false,
- shear = false,
- affine = false,
+ -- Total tiles and pixels on screen --
+ onScreen = {
+ screenSections = {
+ -- On screen section with support scrolling X and/or Y, --
+ -- will be include one tile by axis --
+ all = {
+ Xtiles = 20+1,
+ Ytiles = 18+1,
+ tiles = 360+20+18+1,
+ pixels = 23040,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- sizes = {
- {
- width = 8,
- height = 8,
+ -- Total of tiles on VRAM --
+ unique = false,
+ maximum = 512,
+ mirror = false,
+ screenSections = {
+ main = {
+ optional = false,
+ moveSection = false,
+ {
+ startSection = {
+ x = 'startVRAM',
+ y = 'startVRAM',
+ },
+ endSection = {
+ x = 'endVRAM',
+ y = 'endVRAM',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = true,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
+ },
+ overlay0 = {
+ optional = true,
+ moveSection = true,
+ {
+ startSection = {
+ x = 'free',
+ y = 'free',
+ },
+ endSection = {
+ x = 'free',
+ y = 'free',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = false,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
},
},
},
diff --git a/src/hardware_data/graphics/ppu_lr35902-cgb.lua b/src/hardware_data/graphics/ppu_lr35902-cgb.lua
index 4bb559a..df93988 100644
--- a/src/hardware_data/graphics/ppu_lr35902-cgb.lua
+++ b/src/hardware_data/graphics/ppu_lr35902-cgb.lua
@@ -1,20 +1,43 @@
+-- Information: --
+-- PPU (Picture processing unit) --
+-- LR35902 (CGB) without mapper --
+
return {
screen = {
- {
- width = 160,
- height = 144,
- refresh = 59.73,
- origin = {
- x = 0,
- y = 0,
- },
+ width = 160,
+ height = 144,
+ vsync = 59.73,
+ origin = {
+ x = 0,
+ y = 0,
},
+ -- Total of unique texels, pixels and vertices on VRAM --
+ pixels = 21504,
+ texels = 296,
+ vertices = false,
},
colours = {
total = '15bpp',
limit = 56,
- background = false,
- transparent = 'colourKey',
+ transparent = {
+ sprite = 'colourKey',
+ tile = false,
+ },
+ tileDepth = 'colourKey',
+ palettes = {
+ {
+ total = 8,
+ type = 'spritePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ {
+ total = 8,
+ type = 'tilePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ },
},
meshes = false,
shaders = {
@@ -27,51 +50,10 @@ return {
},
physic = false,
sprites = {
+ -- Limit sprites on screen --
onScreen = 40,
+ -- Limit sprites on line (scanline) without flickering --
onLine = 10,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- },
transform = {
move = true,
rotate = false,
@@ -79,6 +61,7 @@ return {
shear = false,
affine = false,
},
+ -- Sprite sizes in pixels --
sizes = {
{
width = 8,
@@ -93,79 +76,64 @@ return {
tiles = {
layers = {
{
- total = {
- x = 32,
- y = 32,
- 1024,
- },
- onScreen = 399,
- limit = false,
- unique = 256,
- independent = false,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
- },
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
+ -- Total tiles and pixels on VRAM --
+ onVRAM = {
+ screenSections = {
+ all = {
+ Xtiles = 32,
+ Ytiles = 32,
+ tiles = 1024,
+ pixels = 65536,
+ },
},
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- mirror = true,
- transform = {
- individual = true,
- move = true,
- rotate = false,
- scale = false,
- shear = false,
- affine = false,
+ -- Total tiles and pixels on screen --
+ onScreen = {
+ screenSections = {
+ -- On screen section with support scrolling X and/or Y, --
+ -- will be include one tile by axis --
+ all = {
+ Xtiles = 20+1,
+ Ytiles = 18+1,
+ tiles = 360+20+18+1,
+ pixels = 23040,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- sizes = {
- {
- width = 8,
- height = 8,
+ -- Total of tiles on VRAM --
+ unique = false,
+ maximum = 256,
+ mirror = false,
+ screenSections = {
+ main = {
+ optional = false,
+ moveSection = false,
+ {
+ startSection = {
+ x = 'startVRAM',
+ y = 'startVRAM',
+ },
+ endSection = {
+ x = 'endVRAM',
+ y = 'endVRAM',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = true,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
},
},
},
diff --git a/src/hardware_data/graphics/ppu_lr35902-dmg+mbcx.lua b/src/hardware_data/graphics/ppu_lr35902-dmg+mbcx.lua
index 25c31f6..d94b51a 100644
--- a/src/hardware_data/graphics/ppu_lr35902-dmg+mbcx.lua
+++ b/src/hardware_data/graphics/ppu_lr35902-dmg+mbcx.lua
@@ -1,20 +1,43 @@
+-- Information: --
+-- PPU (Picture processing unit) --
+-- LR35902 (DMG) with MBC1/MBC2/MBC3/MBC5 --
+
return {
screen = {
- {
- width = 160,
- height = 144,
- refresh = 59.73,
- origin = {
- x = 0,
- y = 0,
- },
+ width = 160,
+ height = 144,
+ vsync = 59.73,
+ origin = {
+ x = 0,
+ y = 0,
},
+ -- Total of unique texels, pixels and vertices on VRAM --
+ pixels = 37888,
+ texels = 552,
+ vertices = false,
},
colours = {
total = 4,
limit = false,
- background = false,
- transparent = 'colourKey',
+ transparent = {
+ sprite = 'colourKey',
+ tile = false,
+ },
+ tileDepth = 'colourKey',
+ palettes = {
+ {
+ total = 2,
+ type = 'spritePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ {
+ total = 1,
+ type = 'tilePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ },
},
meshes = false,
shaders = {
@@ -27,21 +50,10 @@ return {
},
physic = false,
sprites = {
+ -- Limit sprites on screen --
onScreen = 40,
+ -- Limit sprites on line (scanline) without flickering --
onLine = 10,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- },
transform = {
move = true,
rotate = false,
@@ -49,6 +61,7 @@ return {
shear = false,
affine = false,
},
+ -- Sprite sizes in pixels --
sizes = {
{
width = 8,
@@ -63,37 +76,90 @@ return {
tiles = {
layers = {
{
- total = {
- x = 32,
- y = 32,
- 1024,
- },
- onScreen = 399,
- limit = false,
- unique = 512,
- independent = false,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
+ -- Total tiles and pixels on VRAM --
+ onVRAM = {
+ screenSections = {
+ all = {
+ Xtiles = 32,
+ Ytiles = 32,
+ tiles = 1024,
+ pixels = 65536,
+ },
},
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- mirror = true,
- transform = {
- individual = true,
- move = true,
- rotate = false,
- scale = false,
- shear = false,
- affine = false,
+ -- Total tiles and pixels on screen --
+ onScreen = {
+ screenSections = {
+ -- On screen section with support scrolling X and/or Y, --
+ -- will be include one tile by axis --
+ all = {
+ Xtiles = 20+1,
+ Ytiles = 18+1,
+ tiles = 360+20+18+1,
+ pixels = 23040,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- sizes = {
- {
- width = 8,
- height = 8,
+ -- Total of tiles on VRAM --
+ unique = false,
+ maximum = 512,
+ mirror = false,
+ screenSections = {
+ main = {
+ optional = false,
+ moveSection = false,
+ {
+ startSection = {
+ x = 'startVRAM',
+ y = 'startVRAM',
+ },
+ endSection = {
+ x = 'endVRAM',
+ y = 'endVRAM',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = true,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
+ },
+ overlay0 = {
+ optional = true,
+ moveSection = true,
+ {
+ startSection = {
+ x = 'free',
+ y = 'free',
+ },
+ endSection = {
+ x = 'free',
+ y = 'free',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = false,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
},
},
},
diff --git a/src/hardware_data/graphics/ppu_lr35902-dmg.lua b/src/hardware_data/graphics/ppu_lr35902-dmg.lua
index 916cde4..2ae3121 100644
--- a/src/hardware_data/graphics/ppu_lr35902-dmg.lua
+++ b/src/hardware_data/graphics/ppu_lr35902-dmg.lua
@@ -1,20 +1,43 @@
+-- Information: --
+-- PPU (Picture processing unit) --
+-- LR35902 (DMG) without mapper --
+
return {
screen = {
- {
- width = 160,
- height = 144,
- refresh = 59.73,
- origin = {
- x = 0,
- y = 0,
- },
+ width = 160,
+ height = 144,
+ vsync = 59.73,
+ origin = {
+ x = 0,
+ y = 0,
},
+ -- Total of unique texels, pixels and vertices on VRAM --
+ pixels = 21504,
+ texels = 296,
+ vertices = false,
},
colours = {
total = 4,
limit = false,
- background = false,
- transparent = 'colourKey',
+ transparent = {
+ sprite = 'colourKey',
+ tile = false,
+ },
+ tileDepth = 'colourKey',
+ palettes = {
+ {
+ total = 2,
+ type = 'spritePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ {
+ total = 1,
+ type = 'tilePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ },
},
meshes = false,
shaders = {
@@ -27,21 +50,10 @@ return {
},
physic = false,
sprites = {
+ -- Limit sprites on screen --
onScreen = 40,
+ -- Limit sprites on line (scanline) without flickering --
onLine = 10,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- },
transform = {
move = true,
rotate = false,
@@ -49,6 +61,7 @@ return {
shear = false,
affine = false,
},
+ -- Sprite sizes in pixels --
sizes = {
{
width = 8,
@@ -63,37 +76,64 @@ return {
tiles = {
layers = {
{
- total = {
- x = 32,
- y = 32,
- 1024,
- },
- onScreen = 399,
- limit = false,
- unique = 256,
- independent = false,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
+ -- Total tiles and pixels on VRAM --
+ onVRAM = {
+ screenSections = {
+ all = {
+ Xtiles = 32,
+ Ytiles = 32,
+ tiles = 1024,
+ pixels = 65536,
+ },
},
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- mirror = true,
- transform = {
- individual = true,
- move = true,
- rotate = false,
- scale = false,
- shear = false,
- affine = false,
+ -- Total tiles and pixels on screen --
+ onScreen = {
+ screenSections = {
+ -- On screen section with support scrolling X and/or Y, --
+ -- will be include one tile by axis --
+ all = {
+ Xtiles = 20+1,
+ Ytiles = 18+1,
+ tiles = 360+20+18+1,
+ pixels = 23040,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- sizes = {
- {
- width = 8,
- height = 8,
+ -- Total of tiles on VRAM --
+ unique = false,
+ maximum = 256,
+ mirror = false,
+ screenSections = {
+ main = {
+ optional = false,
+ moveSection = false,
+ {
+ startSection = {
+ x = 'startVRAM',
+ y = 'startVRAM',
+ },
+ endSection = {
+ x = 'endVRAM',
+ y = 'endVRAM',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = true,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
},
},
},
diff --git a/src/hardware_data/graphics/ppu_lr35902-sgb+mbcx.lua b/src/hardware_data/graphics/ppu_lr35902-sgb+mbcx.lua
index 9e3a6e5..3b58129 100644
--- a/src/hardware_data/graphics/ppu_lr35902-sgb+mbcx.lua
+++ b/src/hardware_data/graphics/ppu_lr35902-sgb+mbcx.lua
@@ -1,29 +1,43 @@
+-- Information: --
+-- PPU (Picture processing unit) --
+-- LR35902 (SGBv1) with MBC1/MBC2/MBC3/MBC5 --
+
return {
screen = {
- {
- width = 160,
- height = 144,
- refresh = 61.17,
- origin = {
- x = 0,
- y = 0,
- },
- },
- {
- width = 160,
- height = 144,
- refresh = 59.73,
- origin = {
- x = 0,
- y = 0,
- },
+ width = 160,
+ height = 144,
+ vsync = 61.17,
+ origin = {
+ x = 0,
+ y = 0,
},
+ -- Total of unique texels, pixels and vertices on VRAM --
+ pixels = 37888,
+ texels = 552,
+ vertices = false,
},
colours = {
total = '15bpp',
limit = 10,
- background = false,
- transparent = 'colourKey',
+ transparent = {
+ sprite = 'colourKey',
+ tile = false,
+ },
+ tileDepth = 'colourKey',
+ palettes = {
+ {
+ total = 2,
+ type = 'spritePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ {
+ total = 1,
+ type = 'tilePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ },
},
meshes = false,
shaders = {
@@ -36,21 +50,10 @@ return {
},
physic = false,
sprites = {
+ -- Limit sprites on screen --
onScreen = 40,
+ -- Limit sprites on line (scanline) without flickering --
onLine = 10,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- },
transform = {
move = true,
rotate = false,
@@ -58,6 +61,7 @@ return {
shear = false,
affine = false,
},
+ -- Sprite sizes in pixels --
sizes = {
{
width = 8,
@@ -72,37 +76,90 @@ return {
tiles = {
layers = {
{
- total = {
- x = 32,
- y = 32,
- 1024,
- },
- onScreen = 399,
- limit = false,
- unique = 512,
- independent = false,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
+ -- Total tiles and pixels on VRAM --
+ onVRAM = {
+ screenSections = {
+ all = {
+ Xtiles = 32,
+ Ytiles = 32,
+ tiles = 1024,
+ pixels = 65536,
+ },
},
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- mirror = true,
- transform = {
- individual = true,
- move = true,
- rotate = false,
- scale = false,
- shear = false,
- affine = false,
+ -- Total tiles and pixels on screen --
+ onScreen = {
+ screenSections = {
+ -- On screen section with support scrolling X and/or Y, --
+ -- will be include one tile by axis --
+ all = {
+ Xtiles = 20+1,
+ Ytiles = 18+1,
+ tiles = 360+20+18+1,
+ pixels = 23040,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- sizes = {
- {
- width = 8,
- height = 8,
+ -- Total of tiles on VRAM --
+ unique = false,
+ maximum = 512,
+ mirror = false,
+ screenSections = {
+ main = {
+ optional = false,
+ moveSection = false,
+ {
+ startSection = {
+ x = 'startVRAM',
+ y = 'startVRAM',
+ },
+ endSection = {
+ x = 'endVRAM',
+ y = 'endVRAM',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = true,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
+ },
+ overlay0 = {
+ optional = true,
+ moveSection = true,
+ {
+ startSection = {
+ x = 'free',
+ y = 'free',
+ },
+ endSection = {
+ x = 'free',
+ y = 'free',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = false,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
},
},
},
diff --git a/src/hardware_data/graphics/ppu_lr35902-sgb.lua b/src/hardware_data/graphics/ppu_lr35902-sgb.lua
index fbbfdd3..6df6cfc 100644
--- a/src/hardware_data/graphics/ppu_lr35902-sgb.lua
+++ b/src/hardware_data/graphics/ppu_lr35902-sgb.lua
@@ -1,29 +1,43 @@
+-- Information: --
+-- PPU (Picture processing unit) --
+-- LR35902 (SGBv1) without mapper --
+
return {
screen = {
- {
- width = 160,
- height = 144,
- refresh = 61.17,
- origin = {
- x = 0,
- y = 0,
- },
- },
- {
- width = 160,
- height = 144,
- refresh = 59.73,
- origin = {
- x = 0,
- y = 0,
- },
+ width = 160,
+ height = 144,
+ vsync = 61.17,
+ origin = {
+ x = 0,
+ y = 0,
},
+ -- Total of unique texels, pixels and vertices on VRAM --
+ pixels = 21504,
+ texels = 296,
+ vertices = false,
},
colours = {
total = '15bpp',
limit = 10,
- background = false,
- transparent = 'colourKey',
+ transparent = {
+ sprite = 'colourKey',
+ tile = false,
+ },
+ tileDepth = 'colourKey',
+ palettes = {
+ {
+ total = 2,
+ type = 'spritePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ {
+ total = 1,
+ type = 'tilePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ },
},
meshes = false,
shaders = {
@@ -36,21 +50,10 @@ return {
},
physic = false,
sprites = {
+ -- Limit sprites on screen --
onScreen = 40,
+ -- Limit sprites on line (scanline) without flickering --
onLine = 10,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- {
- total = 4,
- limit = 3,
- keys = 1,
- },
- },
transform = {
move = true,
rotate = false,
@@ -58,6 +61,7 @@ return {
shear = false,
affine = false,
},
+ -- Sprite sizes in pixels --
sizes = {
{
width = 8,
@@ -72,37 +76,64 @@ return {
tiles = {
layers = {
{
- total = {
- x = 32,
- y = 32,
- 1024,
- },
- onScreen = 399,
- limit = false,
- unique = 256,
- independent = false,
- palettes = {
- specify = true,
- {
- total = 4,
- limit = false,
- keys = false,
- map = false,
+ -- Total tiles and pixels on VRAM --
+ onVRAM = {
+ screenSections = {
+ all = {
+ Xtiles = 32,
+ Ytiles = 32,
+ tiles = 1024,
+ pixels = 65536,
+ },
},
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- mirror = true,
- transform = {
- individual = true,
- move = true,
- rotate = false,
- scale = false,
- shear = false,
- affine = false,
+ -- Total tiles and pixels on screen --
+ onScreen = {
+ screenSections = {
+ -- On screen section with support scrolling X and/or Y, --
+ -- will be include one tile by axis --
+ all = {
+ Xtiles = 20+1,
+ Ytiles = 18+1,
+ tiles = 360+20+18+1,
+ pixels = 23040,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
},
- sizes = {
- {
- width = 8,
- height = 8,
+ -- Total of tiles on VRAM --
+ unique = false,
+ maximum = 256,
+ mirror = false,
+ screenSections = {
+ main = {
+ optional = false,
+ moveSection = false,
+ {
+ startSection = {
+ x = 'startVRAM',
+ y = 'startVRAM',
+ },
+ endSection = {
+ x = 'endVRAM',
+ y = 'endVRAM',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = true,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
},
},
},
diff --git a/src/hardware_data/graphics/ppu_lr35902-sgb2+mbcx.lua b/src/hardware_data/graphics/ppu_lr35902-sgb2+mbcx.lua
new file mode 100644
index 0000000..ae375db
--- /dev/null
+++ b/src/hardware_data/graphics/ppu_lr35902-sgb2+mbcx.lua
@@ -0,0 +1,168 @@
+-- Information: --
+-- PPU (Picture processing unit) --
+-- LR35902 (SGBv2) with MBC1/MBC2/MBC3/MBC5 --
+
+return {
+ screen = {
+ width = 160,
+ height = 144,
+ vsync = 59.73,
+ origin = {
+ x = 0,
+ y = 0,
+ },
+ -- Total of unique texels, pixels and vertices on VRAM --
+ pixels = 37888,
+ texels = 552,
+ vertices = false,
+ },
+ colours = {
+ total = '15bpp',
+ limit = 10,
+ transparent = {
+ sprite = 'colourKey',
+ tile = false,
+ },
+ tileDepth = 'colourKey',
+ palettes = {
+ {
+ total = 2,
+ type = 'spritePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ {
+ total = 1,
+ type = 'tilePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ },
+ },
+ meshes = false,
+ shaders = {
+ api = false,
+ version = false,
+ fragment = false,
+ vectex = false,
+ geometry = false,
+ tessellation = false,
+ },
+ physic = false,
+ sprites = {
+ -- Limit sprites on screen --
+ onScreen = 40,
+ -- Limit sprites on line (scanline) without flickering --
+ onLine = 10,
+ transform = {
+ move = true,
+ rotate = false,
+ scale = 'flip',
+ shear = false,
+ affine = false,
+ },
+ -- Sprite sizes in pixels --
+ sizes = {
+ {
+ width = 8,
+ height = 8,
+ },
+ {
+ width = 8,
+ height = 16,
+ },
+ },
+ },
+ tiles = {
+ layers = {
+ {
+ -- Total tiles and pixels on VRAM --
+ onVRAM = {
+ screenSections = {
+ all = {
+ Xtiles = 32,
+ Ytiles = 32,
+ tiles = 1024,
+ pixels = 65536,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
+ },
+ -- Total tiles and pixels on screen --
+ onScreen = {
+ screenSections = {
+ -- On screen section with support scrolling X and/or Y, --
+ -- will be include one tile by axis --
+ all = {
+ Xtiles = 20+1,
+ Ytiles = 18+1,
+ tiles = 360+20+18+1,
+ pixels = 23040,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
+ },
+ -- Total of tiles on VRAM --
+ unique = false,
+ maximum = 512,
+ mirror = false,
+ screenSections = {
+ main = {
+ optional = false,
+ moveSection = false,
+ {
+ startSection = {
+ x = 'startVRAM',
+ y = 'startVRAM',
+ },
+ endSection = {
+ x = 'endVRAM',
+ y = 'endVRAM',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = true,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
+ },
+ overlay0 = {
+ optional = true,
+ moveSection = true,
+ {
+ startSection = {
+ x = 'free',
+ y = 'free',
+ },
+ endSection = {
+ x = 'free',
+ y = 'free',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = false,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+}
diff --git a/src/hardware_data/graphics/ppu_lr35902-sgb2.lua b/src/hardware_data/graphics/ppu_lr35902-sgb2.lua
new file mode 100644
index 0000000..89d8fc4
--- /dev/null
+++ b/src/hardware_data/graphics/ppu_lr35902-sgb2.lua
@@ -0,0 +1,142 @@
+-- Information: --
+-- PPU (Picture processing unit) --
+-- LR35902 (SGBv2) without mapper --
+
+return {
+ screen = {
+ width = 160,
+ height = 144,
+ vsync = 59.73,
+ origin = {
+ x = 0,
+ y = 0,
+ },
+ -- Total of unique texels, pixels and vertices on VRAM --
+ pixels = 21504,
+ texels = 296,
+ vertices = false,
+ },
+ colours = {
+ total = '15bpp',
+ limit = 10,
+ transparent = {
+ sprite = 'colourKey',
+ tile = false,
+ },
+ tileDepth = 'colourKey',
+ palettes = {
+ {
+ total = 2,
+ type = 'spritePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ {
+ total = 1,
+ type = 'tilePerPalette',
+ colours = 4,
+ layers = false,
+ },
+ },
+ },
+ meshes = false,
+ shaders = {
+ api = false,
+ version = false,
+ fragment = false,
+ vectex = false,
+ geometry = false,
+ tessellation = false,
+ },
+ physic = false,
+ sprites = {
+ -- Limit sprites on screen --
+ onScreen = 40,
+ -- Limit sprites on line (scanline) without flickering --
+ onLine = 10,
+ transform = {
+ move = true,
+ rotate = false,
+ scale = 'flip',
+ shear = false,
+ affine = false,
+ },
+ -- Sprite sizes in pixels --
+ sizes = {
+ {
+ width = 8,
+ height = 8,
+ },
+ {
+ width = 8,
+ height = 16,
+ },
+ },
+ },
+ tiles = {
+ layers = {
+ {
+ -- Total tiles and pixels on VRAM --
+ onVRAM = {
+ screenSections = {
+ all = {
+ Xtiles = 32,
+ Ytiles = 32,
+ tiles = 1024,
+ pixels = 65536,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
+ },
+ -- Total tiles and pixels on screen --
+ onScreen = {
+ screenSections = {
+ -- On screen section with support scrolling X and/or Y, --
+ -- will be include one tile by axis --
+ all = {
+ Xtiles = 20+1,
+ Ytiles = 18+1,
+ tiles = 360+20+18+1,
+ pixels = 23040,
+ },
+ },
+ tiles = 'screenSections',
+ pixels = 'screenSections',
+ },
+ -- Total of tiles on VRAM --
+ unique = false,
+ maximum = 256,
+ mirror = false,
+ screenSections = {
+ main = {
+ optional = false,
+ moveSection = false,
+ {
+ startSection = {
+ x = 'startVRAM',
+ y = 'startVRAM',
+ },
+ endSection = {
+ x = 'endVRAM',
+ y = 'endVRAM',
+ },
+ size = {
+ -- Tile size in pixels --
+ width = 8,
+ height = 8,
+ },
+ transform = {
+ move = true,
+ rotate = false,
+ scale = false,
+ shear = false,
+ affine = false,
+ },
+ },
+ },
+ },
+ },
+ },
+ },
+}
diff --git a/src/hardware_data/graphics/ppu_rp2c02+129.lua b/src/hardware_data/graphics/ppu_rp2c02+129.lua
index 82ccc52..ee9e587 100644
--- a/src/hardware_data/graphics/ppu_rp2c02+129.lua
+++ b/src/hardware_data/graphics/ppu_rp2c02+129.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c02+mmc1.lua b/src/hardware_data/graphics/ppu_rp2c02+mmc1.lua
index 56d6ff0..18721b1 100644
--- a/src/hardware_data/graphics/ppu_rp2c02+mmc1.lua
+++ b/src/hardware_data/graphics/ppu_rp2c02+mmc1.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c02+mmc2.lua b/src/hardware_data/graphics/ppu_rp2c02+mmc2.lua
index ef0c457..0c7b053 100644
--- a/src/hardware_data/graphics/ppu_rp2c02+mmc2.lua
+++ b/src/hardware_data/graphics/ppu_rp2c02+mmc2.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c02+mmc3-4screen.lua b/src/hardware_data/graphics/ppu_rp2c02+mmc3-4screen.lua
index 4c00e80..bc5bb4c 100644
--- a/src/hardware_data/graphics/ppu_rp2c02+mmc3-4screen.lua
+++ b/src/hardware_data/graphics/ppu_rp2c02+mmc3-4screen.lua
@@ -1,6 +1,6 @@
-- Information: --
-- PPU (Picture processing unit) --
--- RP2C02 with MMC3/MMC6 --
+-- RP2C02 with MMC3 --
-- (Memory management controller) --
return {
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c02+mmc3.lua b/src/hardware_data/graphics/ppu_rp2c02+mmc3.lua
index 872c958..6dc511d 100644
--- a/src/hardware_data/graphics/ppu_rp2c02+mmc3.lua
+++ b/src/hardware_data/graphics/ppu_rp2c02+mmc3.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c02+mmc5.lua b/src/hardware_data/graphics/ppu_rp2c02+mmc5.lua
index e4098f9..287caab 100644
--- a/src/hardware_data/graphics/ppu_rp2c02+mmc5.lua
+++ b/src/hardware_data/graphics/ppu_rp2c02+mmc5.lua
@@ -21,14 +21,15 @@ return {
total = 64,
limit = false,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 1,
type = 'perTexel',
- colours = 3,
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c02+vrc6.lua b/src/hardware_data/graphics/ppu_rp2c02+vrc6.lua
index 4bc3ada..9a0b0fb 100644
--- a/src/hardware_data/graphics/ppu_rp2c02+vrc6.lua
+++ b/src/hardware_data/graphics/ppu_rp2c02+vrc6.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c02.lua b/src/hardware_data/graphics/ppu_rp2c02.lua
index ef5b24f..ed8e08c 100644
--- a/src/hardware_data/graphics/ppu_rp2c02.lua
+++ b/src/hardware_data/graphics/ppu_rp2c02.lua
@@ -20,20 +20,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c03+129.lua b/src/hardware_data/graphics/ppu_rp2c03+129.lua
index 1b0e1f6..f381f20 100644
--- a/src/hardware_data/graphics/ppu_rp2c03+129.lua
+++ b/src/hardware_data/graphics/ppu_rp2c03+129.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c03+mmc1.lua b/src/hardware_data/graphics/ppu_rp2c03+mmc1.lua
index 1ee5ce1..1846e1b 100644
--- a/src/hardware_data/graphics/ppu_rp2c03+mmc1.lua
+++ b/src/hardware_data/graphics/ppu_rp2c03+mmc1.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c03+mmc2.lua b/src/hardware_data/graphics/ppu_rp2c03+mmc2.lua
index ca01dcd..c0eab23 100644
--- a/src/hardware_data/graphics/ppu_rp2c03+mmc2.lua
+++ b/src/hardware_data/graphics/ppu_rp2c03+mmc2.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c03+mmc3-4screen.lua b/src/hardware_data/graphics/ppu_rp2c03+mmc3-4screen.lua
index 36a54bb..805e690 100644
--- a/src/hardware_data/graphics/ppu_rp2c03+mmc3-4screen.lua
+++ b/src/hardware_data/graphics/ppu_rp2c03+mmc3-4screen.lua
@@ -1,6 +1,6 @@
-- Information: --
-- PPU (Picture processing unit) --
--- RP2C03/RP2C04/RP2C05 with MMC3/MMC6 --
+-- RP2C03/RP2C04/RP2C05 with MMC3 --
-- (Memory management controller) --
return {
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c03+mmc3.lua b/src/hardware_data/graphics/ppu_rp2c03+mmc3.lua
index 90ef5bf..b418e9f 100644
--- a/src/hardware_data/graphics/ppu_rp2c03+mmc3.lua
+++ b/src/hardware_data/graphics/ppu_rp2c03+mmc3.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c03+mmc5.lua b/src/hardware_data/graphics/ppu_rp2c03+mmc5.lua
index 73de0df..e5646b2 100644
--- a/src/hardware_data/graphics/ppu_rp2c03+mmc5.lua
+++ b/src/hardware_data/graphics/ppu_rp2c03+mmc5.lua
@@ -21,14 +21,15 @@ return {
total = 64,
limit = false,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 1,
type = 'perTexel',
- colours = 3,
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c03+vrc6.lua b/src/hardware_data/graphics/ppu_rp2c03+vrc6.lua
index 86c5e34..a16bf11 100644
--- a/src/hardware_data/graphics/ppu_rp2c03+vrc6.lua
+++ b/src/hardware_data/graphics/ppu_rp2c03+vrc6.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c03.lua b/src/hardware_data/graphics/ppu_rp2c03.lua
index 9bbf23d..0ccfb25 100644
--- a/src/hardware_data/graphics/ppu_rp2c03.lua
+++ b/src/hardware_data/graphics/ppu_rp2c03.lua
@@ -20,20 +20,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c07+129.lua b/src/hardware_data/graphics/ppu_rp2c07+129.lua
index eb1deb0..bbd9c78 100644
--- a/src/hardware_data/graphics/ppu_rp2c07+129.lua
+++ b/src/hardware_data/graphics/ppu_rp2c07+129.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c07+mmc1.lua b/src/hardware_data/graphics/ppu_rp2c07+mmc1.lua
index 7dc5c99..c285b0f 100644
--- a/src/hardware_data/graphics/ppu_rp2c07+mmc1.lua
+++ b/src/hardware_data/graphics/ppu_rp2c07+mmc1.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c07+mmc2.lua b/src/hardware_data/graphics/ppu_rp2c07+mmc2.lua
index c250eb2..7adaac4 100644
--- a/src/hardware_data/graphics/ppu_rp2c07+mmc2.lua
+++ b/src/hardware_data/graphics/ppu_rp2c07+mmc2.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c07+mmc3-4screen.lua b/src/hardware_data/graphics/ppu_rp2c07+mmc3-4screen.lua
index a41233a..fdc7e18 100644
--- a/src/hardware_data/graphics/ppu_rp2c07+mmc3-4screen.lua
+++ b/src/hardware_data/graphics/ppu_rp2c07+mmc3-4screen.lua
@@ -1,6 +1,6 @@
-- Information: --
-- PPU (Picture processing unit) --
--- RP2C07 with MMC3/MMC6 --
+-- RP2C07 with MMC3 --
-- (Memory management controller) --
return {
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c07+mmc3.lua b/src/hardware_data/graphics/ppu_rp2c07+mmc3.lua
index 2346f84..cafa591 100644
--- a/src/hardware_data/graphics/ppu_rp2c07+mmc3.lua
+++ b/src/hardware_data/graphics/ppu_rp2c07+mmc3.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c07+mmc5.lua b/src/hardware_data/graphics/ppu_rp2c07+mmc5.lua
index 8c68b89..f4e5bd4 100644
--- a/src/hardware_data/graphics/ppu_rp2c07+mmc5.lua
+++ b/src/hardware_data/graphics/ppu_rp2c07+mmc5.lua
@@ -21,14 +21,15 @@ return {
total = 64,
limit = false,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 1,
type = 'perTexel',
- colours = 3,
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c07+vrc6.lua b/src/hardware_data/graphics/ppu_rp2c07+vrc6.lua
index c33dd69..2460834 100644
--- a/src/hardware_data/graphics/ppu_rp2c07+vrc6.lua
+++ b/src/hardware_data/graphics/ppu_rp2c07+vrc6.lua
@@ -21,20 +21,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},
diff --git a/src/hardware_data/graphics/ppu_rp2c07.lua b/src/hardware_data/graphics/ppu_rp2c07.lua
index d4d610a..82d4d80 100644
--- a/src/hardware_data/graphics/ppu_rp2c07.lua
+++ b/src/hardware_data/graphics/ppu_rp2c07.lua
@@ -20,20 +20,21 @@ return {
total = 64,
limit = 25,
transparent = {
- sprite = colourKey,
- tile = colourKey,
+ sprite = 'colourKey',
+ tile = 'colourKey',
},
+ tileDepth = 'colourKey',
palettes = {
{
total = 4,
- type = 'tilePerPalette',
- colours = 3,
+ type = 'spritePerPalette',
+ colours = 4,
layers = false,
},
{
total = 4,
- type = 'spritePerPalette',
- colours = 3,
+ type = 'tilePerPalette',
+ colours = 4,
layers = false,
},
},