diff options
author | coadde [Márcio Alexandre Silva Delgado] <coadde@parabola.nu> | 2017-01-11 02:36:56 -0300 |
---|---|---|
committer | coadde [Márcio Alexandre Silva Delgado] <coadde@parabola.nu> | 2017-01-11 02:36:56 -0300 |
commit | 9ff3e63fc8f4005aaeacf07fb58e002539e704d2 (patch) | |
tree | 5f18c8add3d95daad88e372763b7150007b32c85 | |
parent | 3ec72ed5adb613438f6d250ba8efd03fc807674a (diff) |
Update graphics modes
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, }, }, |