aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNielsCoding <48092678+heavydemon21@users.noreply.github.com>2023-03-15 10:06:00 +0100
committerNielsCoding <48092678+heavydemon21@users.noreply.github.com>2023-03-15 10:06:00 +0100
commit67bbe8dc3e7e0eb5eeb00b84f9766ef3d3b6b4b4 (patch)
tree1c74a74ca071d4987d85155bc0ef23909823518e
parent0ede5beef926151dd6c6ce8b0810b26225dae895 (diff)
parent3999a5e1e12d0f63931e986ae4b7f8fdcfd65b16 (diff)
Merge branch 'dev' of https://github.com/heavydemon21/avans-arcade into dev
-rw-r--r--src/.gitignore14
-rw-r--r--src/engine/sprite_controller.h212
-rw-r--r--src/static/background/tilemap.hex (renamed from test/bin/tilemap.pip)2
-rw-r--r--src/static/foreground/slime.hex24
-rw-r--r--src/static/title_screen_icon.hex119
-rw-r--r--src/static/title_screen_letteres_large.hex230
6 files changed, 488 insertions, 113 deletions
diff --git a/src/.gitignore b/src/.gitignore
index b0126dd..e3d1207 100644
--- a/src/.gitignore
+++ b/src/.gitignore
@@ -1,7 +1,7 @@
-*.o
-main.elf
-main.bin
-main
-main.exe
-static/
-*.bin
+*.o
+main.elf
+main.bin
+main
+main.exe
+static/*.bin
+
diff --git a/src/engine/sprite_controller.h b/src/engine/sprite_controller.h
index bb7e8d1..fbb230c 100644
--- a/src/engine/sprite_controller.h
+++ b/src/engine/sprite_controller.h
@@ -1,106 +1,106 @@
-#pragma once
-#include <stdint.h>
-
-#include "ppu/types.h"
-
-// handles sprites
-
-// Bg sprites
-
-// Fg or entity sprites
-
-//TODO: pack data inside of sprite_palette LUT
-//HH_PPU_PALETTE_COUNT
-#define HH_SPRITE_COUNT 40
-#define HH_PAL_IDX_SKY 0
-#define HH_PAL_IDX_BRICK 1
-const static uint8_t hh_g_sprite_palette[HH_SPRITE_COUNT] = {
- 0,1,1,1,1,1,1,1,1,1, //1+9
- 1,1,1,1,1,1,1,1,1,1, //6+4
- 1,1,1,1,1,1,1,1,1, //9
- 7,7,7,2,7,7,1,2,7
- //other palettes here:
-};
-
-
-const static hh_ppu_loc_palette_table_t hh_g_palette = {
- {//palette info here
- {0x1,0x2,0x3},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0}},
- {//Bricks
- {0x1,0x2,0x3},//01
- {0xd,0x8,0xa},//24
- {0x0,0x0,0x1},//25
- {0x1,0x1,0x1},//26
- {0x1,0x1,0x2},//27
- {0x2,0x2,0x3},//28
- {0x3,0x4,0x5},//29
- {0x5,0x1,0x7}},
- {//slime
- {0x1,0x2,0x3},
- {0x1,0x3,0x2},
- {0x4,0x8,0x3},
- {0x7,0xa,0x4},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0}},
- {
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0}},
- {
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0}},
- {
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0}},
- {
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0},
- {0x0,0x0,0x0}},
- {
- {0x0,0xf,0xf},
- {0xf,0xf,0xf},
- {0xf,0x0,0xf},
- {0xf,0xf,0x0},
- {0xf,0x0,0x0},
- {0x0,0xf,0x0},
- {0x0,0x0,0xf},
- {0x0,0x0,0x0}}
-};
-
-void hh_setup_palettes();
-
-/** @brief return palette index that belongs to tilemap index */
-uint8_t hh_get_palette(uint8_t tile_idx);
-
-bool hh_colidable(uint8_t tile_idx);
+#pragma once
+#include <stdint.h>
+
+#include "ppu/types.h"
+
+// handles sprites
+
+// Bg sprites
+
+// Fg or entity sprites
+
+//TODO: pack data inside of sprite_palette LUT
+//HH_PPU_PALETTE_COUNT
+#define HH_SPRITE_COUNT 40
+#define HH_PAL_IDX_SKY 0
+#define HH_PAL_IDX_BRICK 1
+const static uint8_t hh_g_sprite_palette[HH_SPRITE_COUNT] = {
+ 0,1,1,1,1,1,1,1,1,1, //1+9
+ 1,1,1,1,1,1,1,1,1,1, //6+4
+ 1,1,1,1,1,1,1,1,1, //9
+ 7,7,7,2,7,7,1,2,7
+ //other palettes here:
+};
+
+
+const static hh_ppu_loc_palette_table_t hh_g_palette = {
+ {//palette info here
+ {0x1,0x2,0x3},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0}},
+ {//Bricks
+ {0x1,0x2,0x3},//01
+ {0xd,0x8,0xa},//24
+ {0x0,0x0,0x1},//25
+ {0x1,0x1,0x1},//26
+ {0x1,0x1,0x2},//27
+ {0x2,0x2,0x3},//28
+ {0x3,0x4,0x5},//29
+ {0x5,0x1,0x7}},
+ {//slime
+ {0x1,0x2,0x3},
+ {0x1,0x3,0x2},
+ {0x4,0x8,0x3},
+ {0x7,0xa,0x4},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0}},
+ {//player
+ {0x0,0x0,0x0},
+ {0x1,0x1,0x1},
+ {0x4,0x2,0x5},
+ {0x7,0x3,0x6},
+ {0x1,0x1,0x3},
+ {0xe,0xe,0xe},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0}},
+ {
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0}},
+ {
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0},
+ {0x0,0x0,0x0}},
+ {//white
+ {0xf,0xf,0xf},
+ {0xf,0xf,0xf},
+ {0xf,0xf,0xf},
+ {0xf,0xf,0xf},
+ {0xf,0xf,0xf},
+ {0xf,0xf,0xf},
+ {0xf,0xf,0xf},
+ {0xf,0xf,0xf}},
+ {
+ {0x0,0xf,0xf},
+ {0xf,0xf,0xf},
+ {0xf,0x0,0xf},
+ {0xf,0xf,0x0},
+ {0xf,0x0,0x0},
+ {0x0,0xf,0x0},
+ {0x0,0x0,0xf},
+ {0x0,0x0,0x0}}
+};
+
+void hh_setup_palettes();
+
+/** @brief return palette index that belongs to tilemap index */
+uint8_t hh_get_palette(uint8_t tile_idx);
+
+bool hh_colidable(uint8_t tile_idx);
diff --git a/test/bin/tilemap.pip b/src/static/background/tilemap.hex
index c0c646e..446f3dd 100644
--- a/test/bin/tilemap.pip
+++ b/src/static/background/tilemap.hex
@@ -1,3 +1,5 @@
+;TODO split up file
+;Tilemap (all current tiles)
0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
diff --git a/src/static/foreground/slime.hex b/src/static/foreground/slime.hex
new file mode 100644
index 0000000..ce20533
--- /dev/null
+++ b/src/static/foreground/slime.hex
@@ -0,0 +1,24 @@
+;slime sprite
+;indices: 4
+;23 32 56
+;25 51 45
+;70 130 50
+;117 167 67
+
+00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+40: 00 00 00 00 01 01 01 01 01 01 00 00 00 00 00 00
+50: 00 00 00 01 03 03 03 03 03 03 01 00 00 00 00 00
+60: 00 00 01 03 03 03 03 03 03 03 03 01 00 00 00 00
+70: 00 01 03 03 03 03 03 03 03 01 02 03 01 00 00 00
+80: 01 03 03 03 01 02 03 03 03 01 01 03 03 01 00 00
+90: 01 03 03 03 01 01 03 03 03 03 03 03 03 03 01 00
+a0: 01 03 03 03 03 03 03 03 02 03 03 03 03 03 02 01
+b0: 01 02 03 03 03 03 03 03 03 03 03 03 03 02 02 01
+c0: 00 01 02 03 03 03 03 03 03 03 03 02 02 02 02 01
+d0: 00 00 01 02 02 03 03 03 02 02 02 02 02 02 01 00
+e0: 00 00 00 01 02 02 02 02 02 02 02 02 02 01 00 00
+f0: 00 00 00 00 01 01 01 01 01 01 01 01 01 00 00 00
+
diff --git a/src/static/title_screen_icon.hex b/src/static/title_screen_icon.hex
new file mode 100644
index 0000000..a1e5f0b
--- /dev/null
+++ b/src/static/title_screen_icon.hex
@@ -0,0 +1,119 @@
+;Main character icon for title screen
+;indices: 4
+;23 32 56
+;16 20 31
+;64 39 81
+;122 54 123
+
+0000: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0010: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0020: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0030: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0040: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0050: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0060: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0070: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0080: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0090: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+00a0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+00b0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+00c0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+00d0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+00e0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+00f0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0110: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+01a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 02
+01b0: 00 00 00 00 00 00 00 00 00 00 02 02 02 02 03 03
+01c0: 00 00 00 00 00 00 00 02 02 02 03 03 03 03 03 03
+01d0: 00 00 00 00 02 02 02 03 03 03 03 03 03 03 03 03
+01e0: 00 00 02 02 03 03 03 03 03 03 03 03 03 03 03 03
+01f0: 02 02 03 03 03 03 03 03 03 03 03 03 03 03 03 03
+0200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 02
+0210: 00 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03
+0220: 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 03
+0230: 00 00 00 00 00 00 00 00 00 00 00 02 03 03 03 03
+0240: 00 00 00 00 00 00 00 00 00 00 02 03 03 03 03 03
+0250: 00 00 00 00 00 00 00 00 00 00 02 03 03 03 03 03
+0260: 00 00 00 00 00 00 00 00 00 02 03 03 03 03 03 03
+0270: 00 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03
+0280: 00 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03
+0290: 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03
+02a0: 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03
+02b0: 00 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03
+02c0: 00 00 00 00 00 00 02 03 03 03 03 03 03 03 03 01
+02d0: 00 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01
+02e0: 00 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01
+02f0: 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 01
+0300: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03
+0310: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03
+0320: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03
+0330: 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03
+0340: 03 03 03 03 03 03 03 03 03 03 01 01 01 01 01 01
+0350: 03 03 03 03 03 03 03 01 01 01 01 01 01 01 01 01
+0360: 03 03 03 03 03 01 01 01 01 01 01 01 01 01 01 01
+0370: 03 03 03 01 01 01 01 01 01 01 01 01 01 01 01 01
+0380: 03 03 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0390: 03 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+03a0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+03b0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+03c0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+03d0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+03e0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+03f0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0400: 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 01
+0410: 00 00 00 00 00 02 03 03 03 03 03 03 03 01 01 01
+0420: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01
+0430: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01
+0440: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01
+0450: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01
+0460: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01
+0470: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01
+0480: 00 00 00 00 00 02 03 03 03 03 03 03 01 01 01 01
+0490: 00 00 00 00 00 00 02 03 03 03 03 03 01 01 01 01
+04a0: 00 00 00 00 00 00 02 03 03 03 03 03 01 01 01 01
+04b0: 00 00 00 00 00 00 02 03 03 03 03 03 01 01 01 01
+04c0: 00 00 00 00 00 00 00 02 03 03 03 03 01 01 01 01
+04d0: 00 00 00 00 00 00 00 02 03 03 03 03 01 01 01 01
+04e0: 00 00 00 00 00 00 00 02 03 03 03 03 01 01 01 01
+04f0: 00 00 00 00 00 00 00 00 02 03 03 03 01 01 01 01
+0500: 00 00 00 00 00 00 00 00 02 03 03 03 01 01 01 01
+0510: 00 00 00 00 00 00 00 00 00 02 03 03 01 01 01 01
+0520: 00 00 00 00 00 00 00 00 00 02 03 03 03 01 01 01
+0530: 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 01
+0540: 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01 01
+0550: 00 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01
+0560: 00 00 00 00 00 00 00 00 00 00 00 02 03 03 01 01
+0570: 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03 01
+0580: 00 00 00 00 00 00 00 00 00 00 00 00 00 02 03 03
+0590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 03
+05a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02
+05b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+05c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+05d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+05e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+05f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0600: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0610: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0620: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0630: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0640: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0650: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0660: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0670: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0680: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+0690: 03 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
+06a0: 03 03 03 01 01 01 01 01 01 01 01 01 01 01 01 01
+06b0: 02 03 03 03 03 01 01 01 01 01 01 01 01 01 01 01
+06c0: 00 02 02 03 03 03 03 01 01 01 01 01 01 01 01 01
+06d0: 00 00 00 02 02 02 03 03 03 03 03 03 01 01 01 01
+06e0: 00 00 00 00 00 00 02 02 02 02 02 03 03 03 03 03
+06f0: 00 00 00 00 00 00 00 00 00 00 00 02 02 02 02 02
diff --git a/src/static/title_screen_letteres_large.hex b/src/static/title_screen_letteres_large.hex
new file mode 100644
index 0000000..fea1c77
--- /dev/null
+++ b/src/static/title_screen_letteres_large.hex
@@ -0,0 +1,230 @@
+;title screen letters (Large)
+;indices: 3
+;23 32 56
+;165 48 48
+;207 87 60
+
+0000: 00 00 00 00 00 00 00 00 02 02 00 00 00 00 00 00
+0010: 00 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00
+0020: 00 00 00 00 00 00 00 02 02 02 02 00 00 00 00 00
+0030: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00
+0040: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00
+0050: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00
+0060: 00 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00
+0070: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00
+0080: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00
+0090: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00
+00a0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00
+00b0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00
+00c0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00
+00d0: 00 00 00 00 00 00 02 02 02 00 00 00 00 00 00 00
+00e0: 00 00 00 00 00 00 02 02 01 00 00 00 00 00 00 00
+00f0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0100: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0110: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0120: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0130: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 01
+0140: 00 00 00 00 00 00 01 01 01 01 01 01 01 01 01 01
+0150: 00 00 00 00 00 00 01 01 01 01 01 01 01 01 01 01
+0160: 00 00 00 00 01 01 01 01 01 01 01 01 01 01 00 00
+0170: 00 00 00 00 01 01 01 01 01 01 00 00 00 00 00 00
+0180: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0190: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+01a0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+01b0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+01c0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+01d0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+01e0: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+01f0: 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00
+0200: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0210: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0220: 00 00 00 00 00 00 01 01 01 01 00 00 00 00 00 00
+0230: 01 01 01 01 01 01 01 01 01 01 01 00 00 00 00 00
+0240: 01 01 01 01 01 01 01 01 01 01 00 00 00 00 00 00
+0250: 01 01 01 00 00 00 01 01 01 00 00 00 00 00 00 00
+0260: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0270: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0280: 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00 00
+0290: 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00
+02a0: 00 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00
+02b0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00
+02c0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00
+02d0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00
+02e0: 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00
+02f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0350: 00 00 00 00 00 00 02 02 02 02 00 00 00 00 00 00
+0360: 00 00 00 00 00 02 02 02 02 02 02 00 00 00 00 00
+0370: 00 00 00 00 02 02 02 02 02 02 02 02 00 00 00 00
+0380: 00 00 00 02 02 02 02 02 02 02 02 02 02 00 00 00
+0390: 00 00 00 02 02 02 02 02 02 02 02 02 02 02 00 00
+03a0: 00 00 02 02 02 02 02 02 02 02 02 02 02 02 00 00
+03b0: 00 00 02 02 02 02 02 02 02 02 02 02 02 02 00 00
+03c0: 00 00 02 02 02 02 02 02 02 02 02 02 02 02 00 00
+03d0: 00 00 02 02 02 02 02 02 02 02 02 02 01 01 00 00
+03e0: 00 00 02 02 02 02 02 02 02 02 01 01 01 01 00 00
+03f0: 00 00 02 02 02 02 02 01 01 01 01 01 01 01 00 00
+0400: 00 00 02 02 01 01 01 01 01 01 01 01 01 01 00 00
+0410: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00
+0420: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00
+0430: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00
+0440: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00
+0450: 00 00 01 01 01 01 01 01 01 01 01 01 01 01 00 00
+0460: 00 00 01 01 01 01 01 01 01 01 01 01 01 00 00 00
+0470: 00 00 00 01 01 01 01 01 01 01 01 01 01 00 00 00
+0480: 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00
+0490: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00
+04a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+04b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+04c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+04d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+04e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+04f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0500: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00
+0510: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00
+0520: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00
+0530: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00
+0540: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00
+0550: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00
+0560: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00
+0570: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 02 00
+0580: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00
+0590: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00
+05a0: 00 00 00 00 00 00 00 00 00 00 00 00 02 02 00 00
+05b0: 00 00 00 00 00 02 02 02 02 00 00 00 02 02 00 00
+05c0: 00 00 00 00 02 02 02 02 02 02 00 00 02 02 00 00
+05d0: 00 00 00 00 02 02 02 00 00 00 02 00 02 02 00 00
+05e0: 00 00 00 02 02 02 00 00 00 00 00 02 02 02 00 00
+05f0: 00 00 00 02 02 00 00 00 00 00 00 02 02 02 00 00
+0600: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00
+0610: 00 00 02 02 00 00 00 00 00 00 00 00 01 01 00 00
+0620: 00 00 02 01 00 00 00 00 00 00 00 00 01 01 00 00
+0630: 00 00 01 01 00 00 00 00 00 00 00 00 01 01 00 00
+0640: 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 00
+0650: 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 00
+0660: 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00 00
+0670: 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 00
+0680: 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 00
+0690: 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00 00
+06a0: 00 01 01 00 00 00 00 00 00 00 01 01 01 01 00 00
+06b0: 00 01 01 00 00 00 00 00 00 00 01 01 01 01 00 00
+06c0: 00 00 01 01 00 00 00 00 00 01 01 01 01 01 00 00
+06d0: 00 00 01 01 01 00 00 00 01 01 01 00 01 01 00 00
+06e0: 00 00 00 01 01 01 01 01 01 01 00 00 01 01 00 00
+06f0: 00 00 00 00 01 01 01 01 01 00 00 00 00 01 01 00
+0700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0710: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0720: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0730: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0740: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0750: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+07a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+07b0: 00 02 02 00 00 00 00 00 00 00 00 00 00 02 02 00
+07c0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+07d0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+07e0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+07f0: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+0800: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+0810: 00 00 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+0820: 00 00 02 02 00 00 00 00 00 00 00 00 02 02 02 00
+0830: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00
+0840: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00
+0850: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00
+0860: 00 00 00 02 02 00 00 00 00 00 00 00 02 01 00 00
+0870: 00 00 00 02 01 01 00 00 00 00 00 00 01 00 00 00
+0880: 00 00 00 01 01 01 00 00 00 00 00 01 01 00 00 00
+0890: 00 00 00 00 01 01 00 00 00 00 00 01 01 00 00 00
+08a0: 00 00 00 00 01 01 01 00 00 00 00 01 01 00 00 00
+08b0: 00 00 00 00 00 01 01 00 00 00 00 01 00 00 00 00
+08c0: 00 00 00 00 00 01 01 01 00 00 01 01 00 00 00 00
+08d0: 00 00 00 00 00 00 01 01 00 00 01 00 00 00 00 00
+08e0: 00 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00
+08f0: 00 00 00 00 00 00 00 01 01 01 00 00 00 00 00 00
+0900: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00
+0910: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00
+0920: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00
+0930: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 02 00
+0940: 00 00 02 02 02 00 00 00 00 00 00 02 02 02 00 00
+0950: 00 00 02 02 02 00 00 00 00 00 00 02 02 02 00 00
+0960: 00 00 02 02 02 02 00 00 00 00 02 02 02 00 00 00
+0970: 00 00 02 02 02 02 02 02 02 02 02 02 00 00 00 00
+0980: 00 00 02 02 00 00 02 02 02 02 00 00 00 00 00 00
+0990: 00 00 02 01 00 00 00 00 00 00 00 00 00 00 00 00
+09a0: 00 00 01 01 00 00 00 00 00 00 00 00 00 01 01 00
+09b0: 00 00 01 01 00 00 00 00 00 00 00 00 01 01 01 00
+09c0: 00 00 00 01 01 00 00 00 00 00 00 01 01 01 00 00
+09d0: 00 00 00 01 01 01 00 00 00 00 01 01 01 01 00 00
+09e0: 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00
+09f0: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00
+0a00: 00 00 00 02 02 02 00 00 00 00 00 00 02 02 02 00
+0a10: 00 00 00 02 02 00 00 00 00 00 00 00 02 02 02 00
+0a20: 00 00 00 02 02 00 00 00 00 00 00 00 00 02 02 00
+0a30: 00 00 00 02 02 00 00 00 00 00 00 00 00 02 02 00
+0a40: 00 00 00 00 02 00 00 00 00 00 00 00 00 02 02 00
+0a50: 00 00 00 00 00 00 02 02 02 02 02 02 02 02 02 00
+0a60: 00 00 00 00 02 02 02 02 02 02 02 02 02 02 02 00
+0a70: 00 00 00 01 02 02 02 00 00 00 00 00 02 02 01 00
+0a80: 00 00 01 01 01 00 00 00 00 00 00 00 00 01 01 00
+0a90: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00
+0aa0: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 01 00
+0ab0: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 01 00
+0ac0: 00 01 01 01 01 00 00 00 00 00 00 01 01 01 01 00
+0ad0: 00 00 01 01 01 01 01 00 01 01 01 01 01 01 01 00
+0ae0: 00 00 00 01 01 01 01 01 01 01 01 01 00 01 01 00
+0af0: 00 00 00 00 00 01 01 01 01 01 00 00 00 01 01 00
+0b00: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00
+0b10: 00 00 02 02 02 00 00 00 00 00 00 00 00 02 00 00
+0b20: 00 00 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+0b30: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+0b40: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+0b50: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 02 00
+0b60: 00 02 02 02 00 00 00 00 00 00 00 00 00 02 01 00
+0b70: 00 02 01 01 00 00 00 00 00 00 00 00 00 01 01 00
+0b80: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00
+0b90: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 01 00
+0ba0: 00 01 01 01 00 00 00 00 00 00 00 00 01 01 00 00
+0bb0: 00 00 01 01 01 00 00 00 00 00 00 00 01 01 00 00
+0bc0: 00 00 01 01 01 00 00 00 00 00 00 01 01 00 00 00
+0bd0: 00 00 00 01 01 01 01 01 00 00 01 01 01 00 00 00
+0be0: 00 00 00 00 01 01 01 01 01 01 01 01 00 00 00 00
+0bf0: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00
+0c00: 00 00 02 02 02 00 00 00 00 00 00 00 02 02 00 00
+0c10: 00 00 02 02 02 00 00 00 00 00 00 02 02 00 00 00
+0c20: 00 00 02 02 02 00 00 00 00 00 00 02 02 00 00 00
+0c30: 00 00 02 02 02 00 00 00 00 00 00 02 00 00 00 00
+0c40: 00 02 02 02 00 00 00 00 00 00 02 00 00 00 00 00
+0c50: 00 02 02 02 00 00 00 00 00 00 00 00 00 00 00 00
+0c60: 00 02 02 02 00 00 00 00 00 00 00 00 00 00 00 00
+0c70: 00 02 01 01 00 00 00 00 00 00 00 00 00 00 00 00
+0c80: 00 01 01 01 00 00 00 00 00 00 00 00 00 00 00 00
+0c90: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00
+0ca0: 00 01 01 01 00 00 00 00 00 00 00 00 00 01 01 00
+0cb0: 00 01 01 01 01 00 00 00 00 00 00 00 01 01 01 00
+0cc0: 00 00 01 01 01 00 00 00 00 00 00 01 01 01 00 00
+0cd0: 00 00 00 01 01 01 00 00 00 01 01 01 01 00 00 00
+0ce0: 00 00 00 01 01 01 01 01 01 01 01 01 00 00 00 00
+0cf0: 00 00 00 00 00 01 01 01 01 01 00 00 00 00 00 00
+0d00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0d10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0d20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0d30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0d40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0d50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0d60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0d70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0d90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0da0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+0db0: 00 00 00 00 00 00 00 02 02 02 02 02 00 00 00 00
+0dc0: 00 00 00 00 00 00 02 02 02 02 02 02 02 00 00 00
+0dd0: 00 00 00 00 00 02 02 00 00 00 02 02 02 00 00 00
+0de0: 00 00 00 00 02 02 00 00 00 00 00 02 02 02 00 00
+0df0: 00 00 00 02 02 02 00 00 00 00 00 00 02 02 00 00