diff options
9 files changed, 308 insertions, 408 deletions
diff --git a/src/hardware_data/graphics/uze_atmega644_mode1_6x8px-tile-size.lua b/src/hardware_data/graphics/uze_atmega644_mode1_6x8px-tile-size.lua index fe03eb7..aa40e96 100644 --- a/src/hardware_data/graphics/uze_atmega644_mode1_6x8px-tile-size.lua +++ b/src/hardware_data/graphics/uze_atmega644_mode1_6x8px-tile-size.lua @@ -36,8 +36,6 @@ -- MODE1_FAST_VSYNC=1 (60Mhz) -- -- MODE1_FAST_VSYNC=0 (30Mhz) -- -- -- --- Only one screen section support. -- --- -- -- Numbers of video lines to render, -- -- can be changed by compilation, -- -- but is not recommended, changes the -- @@ -132,7 +130,7 @@ return { height = 8, }, transform = { - move = 'simulate', + move = false, rotate = false, scale = false, shear = false, diff --git a/src/hardware_data/graphics/uze_atmega644_mode1_8x8px-tile-size.lua b/src/hardware_data/graphics/uze_atmega644_mode1_8x8px-tile-size.lua index 604e73b..e24e968 100644 --- a/src/hardware_data/graphics/uze_atmega644_mode1_8x8px-tile-size.lua +++ b/src/hardware_data/graphics/uze_atmega644_mode1_8x8px-tile-size.lua @@ -36,8 +36,6 @@ -- MODE1_FAST_VSYNC=1 (60Mhz) -- -- MODE1_FAST_VSYNC=0 (30Mhz) -- -- -- --- Only one screen section support. -- --- -- -- Numbers of video lines to render, -- -- can be changed by compilation, -- -- but is not recommended, changes the -- @@ -132,7 +130,7 @@ return { height = 8, }, transform = { - move = 'simulate', + move = false, rotate = false, scale = false, shear = false, diff --git a/src/hardware_data/graphics/uze_atmega644_mode2_1-screen-section.lua b/src/hardware_data/graphics/uze_atmega644_mode2_1-screen-section.lua index 0d9f2eb..43e6ec5 100644 --- a/src/hardware_data/graphics/uze_atmega644_mode2_1-screen-section.lua +++ b/src/hardware_data/graphics/uze_atmega644_mode2_1-screen-section.lua @@ -18,7 +18,6 @@ -- * numbers = 1 to 28 sections -- -- * position = X axis -- -- -- --- -- -- Numbers of video lines to render, -- -- can be changed by compilation, -- -- but is not recommended, changes the -- diff --git a/src/hardware_data/graphics/uze_atmega644_mode2_2-screen-sections.lua b/src/hardware_data/graphics/uze_atmega644_mode2_2-screen-sections.lua index bc2f557..94703f8 100644 --- a/src/hardware_data/graphics/uze_atmega644_mode2_2-screen-sections.lua +++ b/src/hardware_data/graphics/uze_atmega644_mode2_2-screen-sections.lua @@ -18,7 +18,6 @@ -- * numbers = 1 to 28 sections -- -- * position = X axis -- -- -- --- -- -- Numbers of video lines to render, -- -- can be changed by compilation, -- -- but is not recommended, changes the -- diff --git a/src/hardware_data/graphics/uze_atmega644_mode2_3-screen-sections.lua b/src/hardware_data/graphics/uze_atmega644_mode2_3-screen-sections.lua index 6886180..8a64f1a 100644 --- a/src/hardware_data/graphics/uze_atmega644_mode2_3-screen-sections.lua +++ b/src/hardware_data/graphics/uze_atmega644_mode2_3-screen-sections.lua @@ -18,7 +18,6 @@ -- * numbers = 1 to 28 sections -- -- * position = X axis -- -- -- --- -- -- Numbers of video lines to render, -- -- can be changed by compilation, -- -- but is not recommended, changes the -- diff --git a/src/hardware_data/graphics/uze_atmega644_mode3-default.lua b/src/hardware_data/graphics/uze_atmega644_mode3-default.lua deleted file mode 100644 index 83cfeca..0000000 --- a/src/hardware_data/graphics/uze_atmega644_mode3-default.lua +++ /dev/null @@ -1,189 +0,0 @@ -return { - screen = { - scrollMode = { - width = 224, - height = 224, - refresh = 60, - origin = { - x = 0, - y = 0, - }, - }, - staticMode = { - width = 240, - height = 224, - refresh = 60, - origin = { - x = 0, - y = 0, - }, - }, - pixels = 17664, - texels = 276, - vertices = false, - }, - colours = { - total = 256, - limit = false, - background = true, - transparent = { - sprite = colourKey, - tile = false, - }, - palettes = false, - }, - meshes = false, - shaders = { - api = false, - version = false, - fragment = false, - vectex = false, - geometry = false, - tessellation = false, - }, - physic = false, - sprites = { - onScreen = 20, - onLine = 10, - transform = { - move = true, - rotate = false, - scale = 'flip', - shear = false, - affine = false, - }, - sizes = { - { - width = 8, - height = 8, - }, - }, - }, - tiles = { - layers = { - { - total = { - scrollMode = { - x = 32, - y = 32, - 1024, - staticMode = { - x = 30, - y = 28, - 840, - }, - }, - onScreen = { - scrollMode = { - 841, - }, - staticMode = { - 840, - }, - }, - unique = 256, - screenSections = { - mirror = false, - main = { - optional = false, - scrollMode = { - startCut = { - x = 0, - y = 0, - }, - endCut = { - x = 0, - y = 0, - }, - sizes = { - { - width = 8, - height = 8, - }, - }, - transform = { - move = true, - rotate = false, - scale = false, - shear = false, - affine = false, - }, - }, - staticMode = { - startCut = { - x = 0, - y = 0, - }, - endCut = { - x = 0, - y = 0, - }, - sizes = { - { - width = 8, - height = 8, - }, - }, - transform = { - move = 'simulate', - rotate = false, - scale = false, - shear = false, - affine = false, - }, - }, - }, - overlay = { - optional = true, - scrollMode = { - startCut = { - x = 'free', - y = 'free', - }, - endCut = { - x = 'free', - y = 'free', - }, - sizes = { - { - width = 8, - height = 8, - }, - }, - transform = { - move = 'simulate', - rotate = false, - scale = false, - shear = false, - affine = false, - }, - }, - staticMode = { - startCup = { - x = 'free', - y = 'free', - }, - endCut = { - x = 'free', - y = 'free', - }, - sizes = { - { - width = 8, - height = 8, - }, - }, - transform = { - move = 'simulate', - rotate = false, - scale = false, - shear = false, - affine = false, - }, - }, - }, - }, - }, - }, - }, -} diff --git a/src/hardware_data/graphics/uze_atmega644_mode3.lua b/src/hardware_data/graphics/uze_atmega644_mode3.lua index 3d7bc4e..624d363 100644..120000 --- a/src/hardware_data/graphics/uze_atmega644_mode3.lua +++ b/src/hardware_data/graphics/uze_atmega644_mode3.lua @@ -1,210 +1 @@ -return { - screen = { - -- Scroll Mode and Static Mode can be changed by compilation -- - -- Default value is SCROLLING=0 (Static Mode) -- - -- Available values are 0 or 1 -- - scrollMode = { - width = 224, - height = 224, - refresh = 60, - origin = { - x = 0, - y = 0, - }, - }, - staticMode = { - width = 240, - height = 224, - refresh = 60, - origin = { - x = 0, - y = 0, - }, - }, - pixels = 17664, - texels = 276, - vertices = false, - }, - colours = { - total = 256, - limit = false, - background = true, - transparent = { - sprite = colourKey, - tile = false, - }, - palettes = false, - }, - meshes = false, - shaders = { - api = false, - version = false, - fragment = false, - vectex = false, - geometry = false, - tessellation = false, - }, - physic = false, - sprites = { - -- Max sprites on screen can be changed by compilation -- - -- Default is 20 sprites for 4kB RAM and 10Mhz CPU -- - -- It needs ajust ramtiles in compilation for -- - -- implement more tiles in a megatile -- - -- 1 ramtiles consumes 64B RAM -- - -- Defaut values are MAX_SPRITES=20 and RAM_TILE_COUNT=0 -- - onScreen = '>=20=<', - -- Max sprites on line are undocumented, but is visible with 10 or more sprites on line without flickering -- - onLine = '>=10', - transform = { - move = true, - rotate = false, - scale = 'flip', - shear = false, - affine = false, - }, - sizes = { - { - width = 8, - -- Vetical (Y) pixels sprites and tiles can be changed by compilation (on Scroll Mode only) -- - -- Default value is TILE_HEIGHT=8 -- - height = '>=8=<', - }, - }, - }, - tiles = { - layers = { - { - total = { - scrollMode = { - x = 32, - -- Vetical (Y) VRAM tiles can be changed by compilation (on Scroll Mode only) -- - -- Default values are VRAM_TILES_V=32 and SCROLLING=1 -- - -- Avaiable values are 32, 24 or 16 -- - y = '32, 24 or 16', - '1024, 768 or 512', - staticMode = { - -- Horizontal (X) VRAM tiles can be changed by compilation (on Static Mode only) -- - -- Default values are VRAM_TILES_V=30 and SCROLLING=0 -- - x = '>=30=<', - y = 28, - '>=840=<', - }, - }, - onScreen = { - scrollMode = { - '841=<', - }, - staticMode = { - '>=840=<', - }, - }, - unique = 256, - screenSections = { - mirror = false, - main = { - optional = false, - scrollMode = { - startCut = { - x = 0, - y = 0, - }, - endCut = { - x = 0, - y = 0, - }, - sizes = { - { - width = 8, - -- Vetical (Y) pixels sprites and tiles can be changed by compilation (on Scroll Mode only) -- - -- Default value is TILE_HEIGHT=8 -- - height = '>=8=<', - }, - }, - transform = { - move = true, - rotate = false, - scale = false, - shear = false, - affine = false, - }, - }, - staticMode = { - startCut = { - x = 0, - y = 0, - }, - endCut = { - x = 0, - y = 0, - }, - sizes = { - { - width = 8, - height = 8, - }, - }, - transform = { - move = 'simulate', - rotate = false, - scale = false, - shear = false, - affine = false, - }, - }, - }, - overlay = { - optional = true, - scrollMode = { - startCut = { - x = 'free', - y = 'free', - }, - endCut = { - x = 'free', - y = 'free', - }, - sizes = { - { - width = 8, - height = 8, - }, - }, - transform = { - move = 'simulate', - rotate = false, - scale = false, - shear = false, - affine = false, - }, - }, - staticMode = { - startCup = { - x = 'free', - y = 'free', - }, - endCut = { - x = 'free', - y = 'free', - }, - sizes = { - { - width = 8, - -- Vetical (Y) pixels sprites and tiles can be changed by compilation (on Scroll Mode only) -- - -- Default value is TILE_HEIGHT=8 -- - height = '>=8=<', - }, - }, - transform = { - move = 'simulate', - rotate = false, - scale = false, - shear = false, - affine = false, - }, - }, - }, - }, - }, - }, - }, -} +uze_atmega644_mode3_static-mode.lua
\ No newline at end of file diff --git a/src/hardware_data/graphics/uze_atmega644_mode3_scroll-mode.lua b/src/hardware_data/graphics/uze_atmega644_mode3_scroll-mode.lua new file mode 100644 index 0000000..3f44c66 --- /dev/null +++ b/src/hardware_data/graphics/uze_atmega644_mode3_scroll-mode.lua @@ -0,0 +1,159 @@ +-- Information: -- +-- Video Mode 3 (official) -- +-- -- + +-- Sites: +-- http://uzebox.org/wiki/index.php?title=Video_Modes +-- http://uzebox.org/wiki/index.php?title=Video_Mode_3 +-- http://uzebox.org/wiki/index.php?title=Ram_Tile_Effects_Primer +-- http://uzebox.org/wiki/index.php?title=Sprite_Techniques +-- http://uzebox.org/wiki/index.php?title=Hello_World +-- https://github.com/Uzebox/uzebox +-- https://raw.githubusercontent.com/Uzebox/uzebox/master/kernel/videoMode2/videoMode2.def.h +-- https://raw.githubusercontent.com/Uzebox/uzebox/master/kernel/videoMode2/videoMode2.s + +return { + screen = { + width = 224, + height = 224, + vsync = 60, + origin = { + x = 0, + y = 0, + }, + -- Total of unique texels, pixels and vertices on VRAM -- + pixels = 17664, + texels = 276, + vertices = false, + }, + colours = { + total = 256, + limit = false, + transparent = { + sprite = colourKey, + tile = false, + }, + palettes = false, + }, + meshes = false, + shaders = { + api = false, + version = false, + fragment = false, + vectex = false, + geometry = false, + tessellation = false, + }, + physic = false, + sprites = { + -- Limit sprites on screen -- + onScreen = 20, + -- Limit sprites on line (scanline) without flickering (undocumented, but is visible with 10 or more) -- + onLine = false, + transform = { + move = true, + rotate = false, + scale = 'flip', + shear = false, + affine = false, + }, + -- Sprite sizes in pixels -- + sizes = { + { + width = 8, + height = 8, + }, + }, + }, + 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 = 29, + Ytiles = 29, + tiles = 841, + pixels = 53824, + }, + }, + tiles = 'screenSections', + pixels = 'screenSections', + }, + -- Total of unique tiles on VRAM -- + unique = 256, + screenSections = { + mirror = false, + 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, + }, + }, + }, + overlay = { + optional = true, + moveSection = false, + { + 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/uze_atmega644_mode3_static-mode.lua b/src/hardware_data/graphics/uze_atmega644_mode3_static-mode.lua new file mode 100644 index 0000000..7abdcb4 --- /dev/null +++ b/src/hardware_data/graphics/uze_atmega644_mode3_static-mode.lua @@ -0,0 +1,146 @@ +-- Information: -- +-- Video Mode 3 (official) -- +-- -- + +-- Sites: +-- http://uzebox.org/wiki/index.php?title=Video_Modes +-- http://uzebox.org/wiki/index.php?title=Video_Mode_3 +-- http://uzebox.org/wiki/index.php?title=Ram_Tile_Effects_Primer +-- http://uzebox.org/wiki/index.php?title=Sprite_Techniques +-- http://uzebox.org/wiki/index.php?title=Hello_World +-- https://github.com/Uzebox/uzebox +-- https://raw.githubusercontent.com/Uzebox/uzebox/master/kernel/videoMode2/videoMode2.def.h +-- https://raw.githubusercontent.com/Uzebox/uzebox/master/kernel/videoMode2/videoMode2.s + +return { + screen = { + width = 240, + height = 224, + vsync = 60, + origin = { + x = 0, + y = 0, + }, + -- Total of unique texels, pixels and vertices on VRAM -- + pixels = 17664, + texels = 276, + vertices = false, + }, + colours = { + total = 256, + limit = false, + transparent = { + sprite = colourKey, + tile = false, + }, + palettes = false, + }, + meshes = false, + shaders = { + api = false, + version = false, + fragment = false, + vectex = false, + geometry = false, + tessellation = false, + }, + physic = false, + sprites = { + -- Limit sprites on screen -- + onScreen = 20, + -- Limit sprites on line (scanline) without flickering (undocumented, but is visible with 10 or more) -- + onLine = false, + transform = { + move = true, + rotate = false, + scale = 'flip', + shear = false, + affine = false, + }, + -- Sprite sizes in pixels -- + sizes = { + { + width = 8, + height = 8, + }, + }, + }, + tiles = { + layers = { + { + -- Total tiles and pixels on VRAM -- + onVRAM = { + screenSections = { + all = { + Xtiles = 30, + Ytiles = 28, + tiles = 840, + pixels = 53760, + }, + }, + tiles = 'screenSections', + pixels = 'screenSections', + }, + -- Total tiles and pixels on screen (is same as VRAM) -- + onScreen = 'vram', + -- Total of unique tiles on VRAM -- + unique = 256, + screenSections = { + mirror = false, + 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 = false, + rotate = false, + scale = false, + shear = false, + affine = false, + }, + }, + }, + overlay = { + optional = true, + moveSection = false, + { + 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, + }, + }, + }, + }, + }, + }, + }, +} |