summaryrefslogtreecommitdiff
path: root/demo
diff options
context:
space:
mode:
Diffstat (limited to 'demo')
-rw-r--r--demo/GNUmakefile26
-rw-r--r--demo/script.ld20
-rw-r--r--demo/source/chgcol.c2
-rw-r--r--demo/source/chkkeys.c8
-rw-r--r--demo/source/initdat.c4
-rw-r--r--demo/source/initgfx.c4
-rw-r--r--demo/source/start.c138
7 files changed, 130 insertions, 72 deletions
diff --git a/demo/GNUmakefile b/demo/GNUmakefile
index d5c5a81..31b7b87 100644
--- a/demo/GNUmakefile
+++ b/demo/GNUmakefile
@@ -5,25 +5,25 @@
# TOOLS
AS := arm-none-eabi-as
-CC := clang --target=arm-none-eabi
-#CC := arm-none-eabi-gcc
+CC := arm-none-eabi-gcc
+#CC := clang --target=arm-none-eabi
LD := arm-none-eabi-ld
OBJCOPY := arm-none-eabi-objcopy
# TOOL FLAGS
CFLAGS := \
- -I../ax/include \
- -Iinclude \
- -O3 \
- -Wall \
- -Wextra \
- -Wpedantic \
- -Wno-gnu-binary-literal \
- -Wno-gnu-empty-initializer \
- -fshort-enums \
- -mcpu=arm7tdmi \
- -nostdlib \
+ -I../ax/include \
+ -Iinclude \
+ -Oz \
+ -Wall \
+ -Wextra \
+ -Wpedantic \
+ -ffreestanding \
+ -fshort-enums \
+ -mcpu=arm7tdmi \
+ -mthumb \
+ -nostdlib \
-std=c2x
LDFLAGS := \
diff --git a/demo/script.ld b/demo/script.ld
index c5dbf9a..6eb58e4 100644
--- a/demo/script.ld
+++ b/demo/script.ld
@@ -1,20 +1,20 @@
OUTPUT_ARCH(arm)
MEMORY {
- bios : ORIGIN = 0x0000000,LENGTH = 0x10K
- ewram : ORIGIN = 0x2000000,LENGTH = 0x100K
- iwram : ORIGIN = 0x3000000,LENGTH = 0x20K
+ bios : ORIGIN = 0x0000000,LENGTH = 0x4000
+ ewram : ORIGIN = 0x2000000,LENGTH = 0x40000
+ iwram : ORIGIN = 0x3000000,LENGTH = 0x8000
io : ORIGIN = 0x4000000,LENGTH = 0x3FF
- pal : ORIGIN = 0x5000000,LENGTH = 0x1K
- vram : ORIGIN = 0x6000000,LENGTH = 0x60K
- oam : ORIGIN = 0x7000000,LENGTH = 0x1K
- rom : ORIGIN = 0x8000000,LENGTH = 0x20M
- sram : ORIGIN = 0xE000000,LENGTH = 0x40K
+ pal : ORIGIN = 0x5000000,LENGTH = 0x400
+ vram : ORIGIN = 0x6000000,LENGTH = 0x18000
+ oam : ORIGIN = 0x7000000,LENGTH = 0x400
+ rom : ORIGIN = 0x8000000,LENGTH = 0x2000000
+ sram : ORIGIN = 0xE000000,LENGTH = 0x10000
}
SECTIONS {
- .bss : {*(.bss*)} > ewram
- .data : {*(.data*)} > ewram
+ .bss : {*(.bss*)} > iwram
+ .data : {*(.data*)} > iwram
.text : {*(.text*)} > rom
.rodata : {*(.rodata*)} > rom
}
diff --git a/demo/source/chgcol.c b/demo/source/chgcol.c
index 6b99abb..b486891 100644
--- a/demo/source/chgcol.c
+++ b/demo/source/chgcol.c
@@ -3,7 +3,7 @@
#include <ax/gfx.h>
void axd_chgcol(axd_dat * _dat,ax_i8 const _dir) {
- constexpr ax_i8 maxcol = 0xEu;
+ constexpr ax_i8 maxcol = 0x10u;
ax_i8 col = _dat->col;
if (!_dir) {
if (!col) {col = maxcol;}
diff --git a/demo/source/chkkeys.c b/demo/source/chkkeys.c
index 2de80bd..8731dd6 100644
--- a/demo/source/chkkeys.c
+++ b/demo/source/chkkeys.c
@@ -30,28 +30,28 @@ axd_upd axd_chkkeys(axd_dat * _dat) {
return upd;
}
axd_chk(ax_key_pade) {
- if (_dat->pos.x != 0xEEu) {
+ if (_dat->pos.x != 0xEDu) {
upd.mv = true;
++_dat->pos.x;
return upd;
}
}
axd_chk(ax_key_padn) {
- if (_dat->pos.y != 0x1u) {
+ if (_dat->pos.y != 0x2u) {
upd.mv = true;
--_dat->pos.y;
return upd;
}
}
axd_chk(ax_key_pads) {
- if (_dat->pos.y != 0x9Eu) {
+ if (_dat->pos.y != 0x9Du) {
upd.mv = true;
++_dat->pos.y;
return upd;
}
}
axd_chk(ax_key_padw) {
- if (_dat->pos.x != 0x1u) {
+ if (_dat->pos.x != 0x2u) {
upd.mv = true;
--_dat->pos.x;
return upd;
diff --git a/demo/source/initdat.c b/demo/source/initdat.c
index 4d0b420..c6e8749 100644
--- a/demo/source/initdat.c
+++ b/demo/source/initdat.c
@@ -4,7 +4,7 @@
void axd_initdat(axd_dat * const _dat) {
_dat->col = 0x4u;
- _dat->pos.x = 0x1u;
- _dat->pos.y = 0x1u;
+ _dat->pos.x = 0x2u;
+ _dat->pos.y = 0x2u;
_dat->vaddr = 0x600'0000u;
}
diff --git a/demo/source/initgfx.c b/demo/source/initgfx.c
index de95d29..136e52f 100644
--- a/demo/source/initgfx.c
+++ b/demo/source/initgfx.c
@@ -23,7 +23,7 @@ void axd_initgfx(void) {
ax_setcol(0x0Cu,ax_col(0x04u,0x11u,0x0Du)); /* Teal */
ax_setcol(0x0Du,ax_col(0x04u,0x08u,0x16u)); /* Blue */
ax_setcol(0x0Eu,ax_col(0x08u,0x05u,0x10u)); /* Violet */
- ax_setcol(0x0Fu,ax_col(0x0Au,0x05u,0x11u)); /* Purple */
- ax_setcol(0x10u,ax_col(0x11u,0x03u,0x15u)); /* Magenta */
+ ax_setcol(0x0Fu,ax_col(0x13u,0x09u,0x17u)); /* Purple */
+ ax_setcol(0x10u,ax_col(0x1Bu,0x03u,0x15u)); /* Magenta */
ax_clrscrn1(0x600'0000u,0x4u);
}
diff --git a/demo/source/start.c b/demo/source/start.c
index f7c2d0d..eb4bb9d 100644
--- a/demo/source/start.c
+++ b/demo/source/start.c
@@ -3,50 +3,107 @@
#include <ax/key.h>
#include <ax/gfx.h>
-static ax_i8 const axd_logo[] = {
- 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u,
+#include <float.h>
+#include <iso646.h>
+#include <limits.h>
+#include <setjmp.h>
+#include <stdalign.h>
+#include <stdarg.h>
+#include <stdbit.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <stdnoreturn.h>
+#include <string.h>
+
+/*static ax_i8 const axd_logo[] = {
+ 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu,
- 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x00u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u,
- 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x00u, 0x04u,0x04u,0x04u,0x00u,0x04u,0x04u,0x04u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u,
- 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x00u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u,
- 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x00u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u,
- 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x00u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u,
- 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x00u, 0x04u,0x04u,0x04u,0x00u,0x04u,0x04u,0x04u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u,
- 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x00u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u,
+ 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu,
+ 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x0Eu,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu,
+ 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu,
+ 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu,
+ 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu,
+ 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x0Eu,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu,
+ 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu,
- 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x00u,
+ 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu,
0x04u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u,
- 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x04u, 0x04u,0x00u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x04u,
- 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u,
- 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x04u,
- 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x00u,0x00u,0x04u,0x04u,0x04u, 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x04u,
- 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x00u,0x00u,0x04u,0x00u,0x04u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x04u,
- 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u,
- 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x04u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x04u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x04u, 0x04u,0x00u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x04u,
+ 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x04u, 0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x04u,
+ 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u,
+ 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x04u,
+ 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x04u, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x04u,
+ 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x0Eu,0x0Eu,0x04u,0x0Eu,0x04u,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x04u,
+ 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u,
+ 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x04u, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x04u, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x04u, 0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x04u,
0x04u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x04u,
+};*/
+
+static ax_i8 const axd_logo[] = {
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,
+ 0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,
+ 0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x02u,0x04u,0x04u,0x01u,0x0Eu,
+ 0x02u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x02u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x01u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x01u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,
+ 0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x03u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x03u,
};
-constexpr ax_i8 axd_logow = (0x7u * 0x4u) + (0x1u * 0x5u);
-constexpr ax_i8 axd_logoh = (0x7u * 0x2u) + (0x2u) + (0x1u * 0x2u);
+#define axd_logow ((ax_i8)+0x5Bu)
+#define axd_logoh ((ax_i8)+0x28u)
static_assert(sizeof (axd_logo) == axd_logow * axd_logoh);
static ax_i8 const axd_startmsg[] = {
- 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u,
- 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x00u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x00u,0x00u,0x04u,0x04u,
- 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x00u,0x04u,0x04u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x00u,0x04u,0x04u,
- 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x04u,0x04u,0x04u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,
- 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x04u,0x04u,0x04u,0x04u,
- 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x04u,0x04u,0x04u,
- 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x00u,0x00u,0x00u,0x00u, 0x0u, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x00u,0x00u,0x04u,0x00u,0x00u,0x00u, 0x0u, 0x00u,0x04u,0x04u,0x04u,0x04u,0x04u,0x00u, 0x0u, 0x04u,0x04u,0x00u,0x00u,0x00u,0x04u,0x04u,
+ 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,
+ 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x0Eu,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x0Eu,0x0Eu,0x04u,0x04u,
+ 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x0Eu,0x04u,0x04u, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x0Eu,0x04u,0x04u,
+ 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,
+ 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x04u,0x04u,0x04u,0x04u,
+ 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x04u,0x04u,0x04u,
+ 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x04u,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x0Eu,0x0Eu,0x04u,0x0Eu,0x0Eu,0x0Eu, 0x0Eu, 0x0Eu,0x04u,0x04u,0x04u,0x04u,0x04u,0x0Eu, 0x0Eu, 0x04u,0x04u,0x0Eu,0x0Eu,0x0Eu,0x04u,0x04u,
};
constexpr ax_i8 axd_startmsgw = (0x7u * 0x10u) + (0x1u * 0xFu);
constexpr ax_i8 axd_startmsgh = (0x7u * 0x1u);
-static_assert(sizeof (axd_startmsg) == axd_startmsgw * axd_startmsgh);
+//static_assert(sizeof (axd_startmsg) == axd_startmsgw * axd_startmsgh);
ax_err ax_start(void) {
axd_dat dat;
@@ -54,7 +111,7 @@ ax_err ax_start(void) {
axd_initgfx();
ax_vsync();
ax_blnk();
- ax_clrscrn1(dat.vaddr,0x0u);
+ ax_clrscrn1(dat.vaddr,0xEu);
ax_plottex1(dat.vaddr,ax_scrnw3,axd_logo,ax_coord(ax_scrnw3,ax_scrnw3 / 0x2u - axd_logow / 0x2u,ax_scrnh3 / 0x2u - axd_logoh / 0x2u),axd_logow,axd_logoh);
ax_plottex1(dat.vaddr,ax_scrnw3,axd_startmsg,ax_coord(ax_scrnw3,ax_scrnw3 / 0x2u - axd_startmsgw / 0x2u,ax_scrnh3 - 0x7u - axd_startmsgh),axd_startmsgw,axd_startmsgh);
ax_key startkey;
@@ -102,21 +159,22 @@ ax_err ax_start(void) {
}
}
ax_vsync();
- ax_rec1(dat.vaddr,ax_scrnw3,ax_coord(ax_scrnw3,ax_scrnw3 / 0x2u - axd_startmsgw / 0x2u,ax_scrnh3 - 0x7u - axd_startmsgh),axd_startmsgw,axd_startmsgh,0x0u);
- for (;;) { /* Wait for the key to be released. */
- ax_keymap const keymap = ax_getkeymap();
- if (!ax_chkkey(keymap,startkey)) {
- break;
- }
- }
+ ax_rec1(dat.vaddr,ax_scrnw3,ax_coord(ax_scrnw3,ax_scrnw3 / 0x2u - axd_startmsgw / 0x2u,ax_scrnh3 - 0x7u - axd_startmsgh),axd_startmsgw,axd_startmsgh,0xEu);
+ while (ax_chkkey(ax_getkeymap(),startkey)) {} /* Wait for the key to be released. */
ax_clrscrn1(dat.vaddr,0x0u);
bool const err = axd_loop(&dat);
if (err) {
- for (ax_i01 px = 0x0u;px != 0x9600u;++px) {
- ax_plot1(dat.vaddr,px,dat.col);
- axd_chgcol(&dat,0x1u);
- }
- return ax_err_max;
+ ax_i8 x;
+ x = dat.pos.x;
+ x -= 0x2u;
+ x &= 0b00001111u;
+ ax_i8 y;
+ y = dat.pos.y;
+ y -= 0x2u;
+ y &= 0b00001111u;
+ y <<= 0x4u;
+ ax_i8 const err = x | y;
+ return (ax_err)err;
}
return ax_err_ok;
}