commit 7c01ec5
Devine Lu Linvega
·
2024-11-13 18:55:25 +0000 UTC
parent 428184d
Read metadata address from bios
5 files changed,
+183,
-135
+17,
-1
1@@ -14,7 +14,7 @@
2 @pointer &x $2 &y $2 &lastx $2 &lasty $2 &state $1
3
4 |0100 ( -> )
5-
6+ ;meta #06 DEO2
7 ( theme )
8 #0fa8 .System/r DEO2
9 #0f4f .System/g DEO2
10@@ -29,6 +29,15 @@
11
12 BRK
13
14+@meta 00 &body
15+ ( name ) "Noodle 0a
16+ ( details ) "A 20 "Drawing 20 "Program 0a
17+ ( author ) "By 20 "Hundred 20 "Rabbits 0a
18+ ( date ) "Aug 20 "19, 20 "2024 00
19+ 02
20+ ( icon ) 83 =appicon
21+ ( mask ) 41 1705
22+
23 (
24 @|vectors )
25
26@@ -214,6 +223,13 @@ JMP2r
27 0000 0000 0000 0000
28 0030 7878 7878 7830 ]
29
30+@appicon
31+0000 0000 0000 0000 0000 0000 0000 0001 0000 0000 0000 78fc 0c1e 1e07 037b 8503
32+0000 0000 0000 0078 0000 0000 0000 7884 0101 0303 0303 0303 0202 0404 0404 0707
33+feff fff9 f6e9 c9e6 0100 0006 0f1f 3fff fcfc fefe fe7e 3e7c 0202 0101 0181 c3fe
34+0301 0100 0000 0000 0703 0301 0000 0000 f9ff ffff 7f37 0500 ffff ffff ff7f 3f07
35+fcf8 f8f0 e0c0 0000 fefc fcf8 f0e0 c000
36+
37 (
38 @|memory )
39
M
makefile
+4,
-4
1@@ -46,10 +46,10 @@ bin/opctest.rom: bin/uxnasm
2 bin/mouse.rom: bin/uxnasm etc/mouse.tal
3 @ bin/uxnasm etc/mouse.tal bin/mouse.rom
4
5-src/bios.c: bin/uxnasm bin/uxncli src/utils/bios.tal src/utils/format-c.tal
6- @ bin/uxnasm src/utils/bios.tal bin/bios.rom
7- @ bin/uxnasm src/utils/format-c.tal bin/format-c.rom
8- @ bin/uxncli bin/format-c.rom bin/bios.rom > src/bios.c
9+src/bios.c: src/utils/bios.tal
10+ @ uxnasm src/utils/bios.tal bin/bios.rom
11+ @ uxnasm src/utils/format-c.tal bin/format-c.rom
12+ @ uxncli bin/format-c.rom bin/bios.rom > src/bios.c
13
14 bin/uxnasm: src/uxnasm.c
15 @ mkdir -p bin
+129,
-125
1@@ -1,127 +1,131 @@
2 unsigned char bios_rom[] = {
3- 0xa0, 0x01, 0x11, 0x80, 0x20, 0x37, 0x80, 0x24, 0x36, 0xa0, 0x00, 0x30, 0x39, 0x80, 0x14, 0x33,
4- 0x00, 0x80, 0x00, 0x81, 0x80, 0xfb, 0x13, 0x80, 0x07, 0x1c, 0x20, 0x00, 0x33, 0xa0, 0x00, 0x08,
5- 0x80, 0x28, 0x37, 0xa0, 0x00, 0x00, 0x80, 0x2a, 0x37, 0xa0, 0x80, 0x00, 0x80, 0x04, 0x16, 0xa0,
6- 0x02, 0x33, 0x60, 0x00, 0x1c, 0xa0, 0x00, 0x08, 0x80, 0x28, 0x37, 0x80, 0x2a, 0xb6, 0xa0, 0x00,
7- 0x19, 0x38, 0x05, 0x37, 0xa0, 0x81, 0x00, 0x80, 0x05, 0x16, 0xa0, 0x02, 0x37, 0x60, 0x00, 0x01,
8- 0x00, 0x60, 0x00, 0x88, 0x80, 0x28, 0xb6, 0xa0, 0x00, 0x08, 0x38, 0x05, 0x37, 0x80, 0x43, 0xa0,
9- 0x02, 0x12, 0x15, 0x06, 0x60, 0x00, 0x84, 0x80, 0x28, 0xb6, 0xa0, 0x00, 0x08, 0x38, 0x05, 0x37,
10- 0x80, 0x41, 0xa0, 0x02, 0x12, 0x15, 0x80, 0x04, 0x19, 0x80, 0x00, 0x04, 0x38, 0x26, 0xa0, 0x00,
11- 0x09, 0x38, 0x24, 0x8f, 0xcf, 0x80, 0x80, 0x0b, 0x80, 0x42, 0x04, 0x19, 0xa0, 0x02, 0x12, 0x15,
12- 0x94, 0x60, 0x00, 0x57, 0x80, 0x28, 0xb6, 0xa0, 0x00, 0x08, 0x38, 0x05, 0x37, 0x41, 0x21, 0xaa,
13- 0x20, 0xff, 0xe1, 0x22, 0x22, 0x42, 0x80, 0x28, 0xb6, 0xa0, 0x00, 0x80, 0x39, 0x05, 0x37, 0x80,
14- 0x2a, 0xb6, 0xa0, 0x00, 0x08, 0x39, 0x05, 0x37, 0xa0, 0x35, 0x26, 0x17, 0xa0, 0x02, 0x63, 0x80,
15- 0x2c, 0x37, 0xa0, 0x4a, 0x2f, 0x97, 0x97, 0x97, 0x17, 0x80, 0x2a, 0xb6, 0xa0, 0x00, 0x08, 0x38,
16- 0x05, 0x37, 0x80, 0x28, 0xb6, 0xa0, 0x00, 0x18, 0x39, 0x05, 0x37, 0x6c, 0xa0, 0x15, 0x26, 0x17,
17- 0x94, 0x60, 0x00, 0x1d, 0x21, 0x94, 0x20, 0xff, 0xf7, 0x22, 0x6c, 0xa0, 0x15, 0x26, 0x17, 0x06,
18- 0x80, 0x04, 0x1f, 0x60, 0x00, 0x00, 0x80, 0x0f, 0x1c, 0x80, 0x00, 0x04, 0xa0, 0x02, 0x3b, 0x38,
19- 0x14, 0x80, 0x20, 0x19, 0x80, 0x00, 0x04, 0x80, 0x40, 0x3f, 0xa0, 0x02, 0xe3, 0x38, 0x80, 0x2c,
20- 0x37, 0xa0, 0x41, 0x2f, 0x17, 0x6c, 0x04, 0x60, 0x00, 0x00, 0x06, 0x80, 0x04, 0x1f, 0x60, 0x00,
21- 0x00, 0x80, 0x0f, 0x1c, 0x06, 0x80, 0x09, 0x0a, 0x80, 0x27, 0x1a, 0x18, 0x80, 0x30, 0x18, 0x80,
22- 0x19, 0x17, 0x6c, 0x57, 0x53, 0x54, 0x00, 0x52, 0x53, 0x54, 0x00, 0x30, 0x31, 0x32, 0x33, 0x34,
23- 0x35, 0x36, 0x37, 0x38, 0x39, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0xff, 0xff, 0xff, 0xff, 0xff,
24- 0xff, 0xff, 0xff, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa,
25- 0x55, 0xaa, 0x55, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
26- 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, 0x03, 0x00,
27- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
28- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00,
29- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
30- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00,
31- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
32- 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x20, 0xc0, 0x00,
33- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
34- 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00,
35- 0x10, 0x38, 0x10, 0x6c, 0x6c, 0x24, 0x24, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
36- 0x00, 0x00, 0x00, 0x00, 0x12, 0x12, 0x12, 0x7f, 0x24, 0x24, 0x24, 0x24, 0x24, 0xfe, 0x48, 0x48,
37- 0x48, 0x48, 0x00, 0x10, 0x38, 0x54, 0x92, 0x96, 0x90, 0x50, 0x38, 0x14, 0x12, 0xd2, 0x92, 0x94,
38- 0x78, 0x10, 0x10, 0x02, 0x62, 0x94, 0x94, 0x94, 0x98, 0x68, 0x10, 0x10, 0x2c, 0x32, 0x52, 0x52,
39- 0x52, 0x8c, 0x80, 0x00, 0x30, 0x48, 0x48, 0x48, 0x50, 0x20, 0x2e, 0x54, 0x54, 0x94, 0x88, 0x8c,
40- 0x72, 0x00, 0x00, 0xe0, 0xe0, 0x20, 0x20, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
41- 0x00, 0x00, 0x00, 0x02, 0x04, 0x08, 0x08, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x08,
42- 0x08, 0x04, 0x02, 0x80, 0x40, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x20,
43- 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x10, 0x38, 0x92, 0xd6, 0x38, 0xd6, 0x92, 0x38, 0x10, 0x00,
44- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0xfe, 0x10, 0x10, 0x10, 0x10, 0x00,
45- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0,
46- 0x20, 0x20, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00,
47- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xe0,
48- 0xe0, 0x40, 0x00, 0x02, 0x02, 0x04, 0x04, 0x08, 0x08, 0x08, 0x10, 0x10, 0x10, 0x20, 0x20, 0x40,
49- 0x40, 0x80, 0x80, 0x00, 0x18, 0x24, 0x24, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x24,
50- 0x24, 0x18, 0x00, 0x00, 0x10, 0x70, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
51- 0x7c, 0x00, 0x00, 0x00, 0x18, 0x24, 0x42, 0x62, 0x02, 0x04, 0x08, 0x08, 0x10, 0x20, 0x22, 0x42,
52- 0x7e, 0x00, 0x00, 0x00, 0x38, 0x44, 0x82, 0x82, 0x02, 0x04, 0x38, 0x04, 0x02, 0x82, 0x82, 0x44,
53- 0x38, 0x00, 0x00, 0x00, 0x08, 0x18, 0x28, 0x28, 0x48, 0x48, 0x88, 0x88, 0xfe, 0x08, 0x08, 0x08,
54- 0x3c, 0x00, 0x00, 0x00, 0xfc, 0x80, 0x80, 0x80, 0xb8, 0xc4, 0x82, 0x02, 0x02, 0xc2, 0x82, 0x44,
55- 0x38, 0x00, 0x00, 0x00, 0x3c, 0x42, 0x46, 0x80, 0x80, 0xb8, 0xc4, 0x82, 0x82, 0x82, 0x82, 0x44,
56- 0x38, 0x00, 0x00, 0x00, 0xfe, 0x82, 0x82, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10,
57- 0x10, 0x10, 0x00, 0x00, 0x38, 0x44, 0x82, 0x82, 0x82, 0x44, 0x38, 0x44, 0x82, 0x82, 0x82, 0x44,
58- 0x38, 0x00, 0x00, 0x00, 0x38, 0x44, 0x82, 0x82, 0x82, 0x82, 0x46, 0x3a, 0x02, 0x02, 0x82, 0x44,
59- 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38,
60- 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38,
61- 0x18, 0x10, 0x30, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x10, 0x10, 0x08, 0x08,
62- 0x04, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00,
63- 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20,
64- 0x40, 0x40, 0x80, 0x00, 0x38, 0x44, 0x82, 0xc2, 0x02, 0x04, 0x04, 0x08, 0x10, 0x10, 0x00, 0x00,
65- 0x10, 0x38, 0x10, 0x00, 0x3c, 0x42, 0x82, 0x9a, 0xa6, 0xa2, 0xa2, 0xa2, 0xa6, 0x9a, 0x80, 0x42,
66- 0x3c, 0x00, 0x00, 0x00, 0x10, 0x28, 0x28, 0x28, 0x44, 0x44, 0x44, 0x44, 0x7c, 0x82, 0x82, 0x82,
67- 0xc6, 0x00, 0x00, 0x00, 0xf8, 0x44, 0x42, 0x42, 0x42, 0x44, 0x78, 0x44, 0x42, 0x42, 0x42, 0x42,
68- 0xfc, 0x00, 0x00, 0x00, 0x3a, 0x46, 0x42, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x82, 0x42, 0x42,
69- 0x3c, 0x00, 0x00, 0x00, 0xf8, 0x44, 0x44, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x44, 0x44,
70- 0xf8, 0x00, 0x00, 0x00, 0xfe, 0x42, 0x42, 0x40, 0x48, 0x48, 0x78, 0x48, 0x48, 0x42, 0x42, 0x42,
71- 0xfe, 0x00, 0x00, 0x00, 0xfe, 0x42, 0x42, 0x40, 0x48, 0x48, 0x78, 0x48, 0x48, 0x40, 0x40, 0x40,
72- 0xf0, 0x00, 0x00, 0x00, 0x1a, 0x26, 0x42, 0x40, 0x80, 0x80, 0x8f, 0x82, 0x82, 0x82, 0x42, 0x66,
73- 0x1a, 0x00, 0x00, 0x00, 0xe7, 0x42, 0x42, 0x42, 0x42, 0x7e, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42,
74- 0xe7, 0x00, 0x00, 0x00, 0xfe, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
75- 0xfe, 0x00, 0x00, 0x00, 0x1f, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82, 0x82, 0x44,
76- 0x38, 0x00, 0x00, 0x00, 0xe6, 0x44, 0x44, 0x48, 0x48, 0x70, 0x50, 0x48, 0x48, 0x44, 0x44, 0x42,
77- 0xe3, 0x00, 0x00, 0x00, 0xf0, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x42, 0x42, 0x42,
78- 0xfe, 0x00, 0x00, 0x00, 0x82, 0xc6, 0xaa, 0xaa, 0xaa, 0x92, 0x92, 0x92, 0x82, 0x82, 0x82, 0x82,
79- 0xc6, 0x00, 0x00, 0x00, 0x87, 0xc2, 0xa2, 0xa2, 0xa2, 0x92, 0x92, 0x92, 0x8a, 0x8a, 0x8a, 0x86,
80- 0xc2, 0x00, 0x00, 0x00, 0x38, 0x44, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x44,
81- 0x38, 0x00, 0x00, 0x00, 0xf8, 0x44, 0x42, 0x42, 0x42, 0x42, 0x44, 0x78, 0x40, 0x40, 0x40, 0x40,
82- 0xf0, 0x00, 0x00, 0x00, 0x38, 0x44, 0x44, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0xba, 0x44, 0x44,
83- 0x38, 0x08, 0x06, 0x00, 0xf8, 0x44, 0x42, 0x42, 0x42, 0x44, 0x78, 0x48, 0x44, 0x44, 0x44, 0x42,
84- 0xe3, 0x00, 0x00, 0x00, 0x34, 0x4c, 0x84, 0x80, 0x80, 0x60, 0x18, 0x04, 0x82, 0x82, 0x82, 0xc4,
85- 0xb8, 0x00, 0x00, 0x00, 0xfe, 0x92, 0x92, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
86- 0x7c, 0x00, 0x00, 0x00, 0xe7, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42,
87- 0x3c, 0x00, 0x00, 0x00, 0xc6, 0x82, 0x82, 0x82, 0x82, 0x44, 0x44, 0x44, 0x44, 0x28, 0x28, 0x10,
88- 0x10, 0x00, 0x00, 0x00, 0xc6, 0x82, 0x82, 0x82, 0x92, 0x92, 0x92, 0xaa, 0xaa, 0xaa, 0x44, 0x44,
89- 0x44, 0x00, 0x00, 0x00, 0xee, 0x44, 0x44, 0x28, 0x28, 0x10, 0x28, 0x28, 0x28, 0x44, 0x44, 0x82,
90- 0xc6, 0x00, 0x00, 0x00, 0xc6, 0x82, 0x44, 0x44, 0x44, 0x28, 0x28, 0x10, 0x10, 0x10, 0x10, 0x10,
91- 0x7c, 0x00, 0x00, 0x00, 0xfe, 0x84, 0x88, 0x08, 0x10, 0x10, 0x10, 0x20, 0x20, 0x42, 0x42, 0x82,
92- 0xfe, 0x00, 0x00, 0x1e, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
93- 0x10, 0x10, 0x1e, 0x00, 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x04,
94- 0x02, 0x02, 0x00, 0xf0, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
95- 0x10, 0x10, 0xf0, 0x10, 0x28, 0x44, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
96- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
97- 0x00, 0x00, 0xff, 0x30, 0x30, 0x20, 0x20, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
98- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x42, 0x02, 0x3e, 0x42, 0x82, 0x82, 0x86,
99- 0x7b, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x40, 0x78, 0x44, 0x42, 0x42, 0x42, 0x42, 0x42, 0x44,
100- 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x46, 0x82, 0x80, 0x80, 0x80, 0x82, 0x42,
101- 0x3c, 0x00, 0x00, 0x00, 0x06, 0x04, 0x04, 0x04, 0x3c, 0x44, 0x84, 0x84, 0x84, 0x84, 0x84, 0x44,
102- 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x44, 0x82, 0xfe, 0x80, 0x80, 0x82, 0x42,
103- 0x3c, 0x00, 0x00, 0x00, 0x0e, 0x11, 0x10, 0x10, 0xfe, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
104- 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x44, 0x44, 0x44, 0x38, 0x40, 0x78, 0x84,
105- 0x82, 0x82, 0x7c, 0x00, 0xc0, 0x40, 0x40, 0x40, 0x5c, 0x62, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42,
106- 0xe7, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x78, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
107- 0xff, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x3e, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x82,
108- 0x82, 0x44, 0x38, 0x00, 0xc0, 0x40, 0x40, 0x40, 0x42, 0x44, 0x48, 0x58, 0x64, 0x44, 0x42, 0x42,
109- 0xe3, 0x00, 0x00, 0x00, 0x78, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
110- 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x92, 0x92, 0x92, 0x92, 0x92, 0x92, 0x92,
111- 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x62, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42,
112- 0xe7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x44, 0x82, 0x82, 0x82, 0x82, 0x82, 0x44,
113- 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x44, 0x42, 0x42, 0x42, 0x42, 0x44, 0x78,
114- 0x40, 0x40, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x44, 0x84, 0x84, 0x84, 0x84, 0x44, 0x3c,
115- 0x04, 0x04, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0x32, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20,
116- 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x46, 0x42, 0x40, 0x3c, 0x02, 0x82, 0xc2,
117- 0xbc, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0x20, 0xfc, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x22,
118- 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x46,
119- 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x82, 0x82, 0x44, 0x44, 0x44, 0x28, 0x28,
120- 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x92, 0x92, 0x92, 0x92, 0xaa, 0xaa, 0x44, 0x44,
121- 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xee, 0x44, 0x28, 0x28, 0x10, 0x28, 0x28, 0x44,
122- 0xee, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe7, 0x42, 0x22, 0x24, 0x14, 0x08, 0x08, 0x10,
123- 0x90, 0xa0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x44, 0x08, 0x08, 0x10, 0x10, 0x22, 0x42,
124- 0xfe, 0x00, 0x00, 0x06, 0x08, 0x08, 0x08, 0x08, 0x08, 0x10, 0x20, 0x10, 0x08, 0x08, 0x08, 0x08,
125- 0x08, 0x08, 0x06, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
126- 0x10, 0x10, 0x10, 0xc0, 0x20, 0x20, 0x20, 0x20, 0x20, 0x10, 0x08, 0x10, 0x20, 0x20, 0x20, 0x20,
127- 0x20, 0x20, 0xc0, 0x60, 0x92, 0x0c,
128+ 0xa0, 0x01, 0x14, 0x80, 0x20, 0x37, 0x80, 0x24, 0x36, 0xa0, 0x00, 0x30, 0x39, 0x80, 0x17, 0x33,
129+ 0x60, 0x00, 0x41, 0x00, 0x80, 0x00, 0x81, 0x80, 0xfb, 0x13, 0x80, 0x07, 0x1c, 0x20, 0x00, 0x33,
130+ 0xa0, 0x00, 0x08, 0x80, 0x28, 0x37, 0xa0, 0x00, 0x00, 0x80, 0x2a, 0x37, 0xa0, 0x80, 0x00, 0x80,
131+ 0x04, 0x16, 0xa0, 0x02, 0x6d, 0x60, 0x00, 0x53, 0xa0, 0x00, 0x08, 0x80, 0x28, 0x37, 0x80, 0x2a,
132+ 0xb6, 0xa0, 0x00, 0x19, 0x38, 0x05, 0x37, 0xa0, 0x81, 0x00, 0x80, 0x05, 0x16, 0xa0, 0x02, 0x71,
133+ 0x60, 0x00, 0x38, 0x00, 0xa0, 0x01, 0x72, 0x80, 0x02, 0x37, 0x80, 0x23, 0x32, 0xa0, 0x80, 0x06,
134+ 0x28, 0x80, 0x1e, 0x12, 0x80, 0x37, 0x08, 0x1c, 0x20, 0x00, 0x01, 0x6c, 0x80, 0x0f, 0x32, 0x40,
135+ 0x00, 0x11, 0x01, 0x00, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x10, 0x01, 0x7d, 0x00, 0x00, 0x00,
136+ 0x00, 0x00, 0x00, 0x60, 0x00, 0xca, 0xa0, 0x0a, 0x18, 0x17, 0x6c, 0x60, 0x00, 0x88, 0x80, 0x28,
137+ 0xb6, 0xa0, 0x00, 0x08, 0x38, 0x05, 0x37, 0x80, 0x43, 0xa0, 0x02, 0x4c, 0x15, 0x06, 0x60, 0x00,
138+ 0x84, 0x80, 0x28, 0xb6, 0xa0, 0x00, 0x08, 0x38, 0x05, 0x37, 0x80, 0x41, 0xa0, 0x02, 0x4c, 0x15,
139+ 0x80, 0x04, 0x19, 0x80, 0x00, 0x04, 0x38, 0x26, 0xa0, 0x00, 0x09, 0x38, 0x24, 0x8f, 0xcf, 0x80,
140+ 0x80, 0x0b, 0x80, 0x42, 0x04, 0x19, 0xa0, 0x02, 0x4c, 0x15, 0x94, 0x60, 0x00, 0x57, 0x80, 0x28,
141+ 0xb6, 0xa0, 0x00, 0x08, 0x38, 0x05, 0x37, 0x41, 0x21, 0xaa, 0x20, 0xff, 0xe1, 0x22, 0x22, 0x42,
142+ 0x80, 0x28, 0xb6, 0xa0, 0x00, 0x80, 0x39, 0x05, 0x37, 0x80, 0x2a, 0xb6, 0xa0, 0x00, 0x08, 0x39,
143+ 0x05, 0x37, 0xa0, 0x35, 0x26, 0x17, 0xa0, 0x02, 0x9d, 0x80, 0x2c, 0x37, 0xa0, 0x4a, 0x2f, 0x97,
144+ 0x97, 0x97, 0x17, 0x80, 0x2a, 0xb6, 0xa0, 0x00, 0x08, 0x38, 0x05, 0x37, 0x80, 0x28, 0xb6, 0xa0,
145+ 0x00, 0x18, 0x39, 0x05, 0x37, 0x6c, 0xa0, 0x15, 0x26, 0x17, 0x94, 0x60, 0x00, 0x1d, 0x21, 0x94,
146+ 0x20, 0xff, 0xf7, 0x22, 0x6c, 0xa0, 0x15, 0x26, 0x17, 0x06, 0x80, 0x04, 0x1f, 0x60, 0x00, 0x00,
147+ 0x80, 0x0f, 0x1c, 0x80, 0x00, 0x04, 0xa0, 0x02, 0x75, 0x38, 0x14, 0x80, 0x20, 0x19, 0x80, 0x00,
148+ 0x04, 0x80, 0x40, 0x3f, 0xa0, 0x03, 0x1d, 0x38, 0x80, 0x2c, 0x37, 0xa0, 0x41, 0x2f, 0x17, 0x6c,
149+ 0x04, 0x60, 0x00, 0x00, 0x06, 0x80, 0x04, 0x1f, 0x60, 0x00, 0x00, 0x80, 0x0f, 0x1c, 0x06, 0x80,
150+ 0x09, 0x0a, 0x80, 0x27, 0x1a, 0x18, 0x80, 0x30, 0x18, 0x80, 0x19, 0x17, 0x6c, 0x57, 0x53, 0x54,
151+ 0x00, 0x52, 0x53, 0x54, 0x00, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x61,
152+ 0x62, 0x63, 0x64, 0x65, 0x66, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xaa, 0x55, 0xaa,
153+ 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0x00, 0x00, 0x00,
154+ 0x00, 0x03, 0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
155+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
156+ 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
157+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
158+ 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
159+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
160+ 0x00, 0xc0, 0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
161+ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x20, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
162+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38,
163+ 0x38, 0x38, 0x38, 0x38, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x10, 0x38, 0x10, 0x6c, 0x6c, 0x24,
164+ 0x24, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x12,
165+ 0x12, 0x7f, 0x24, 0x24, 0x24, 0x24, 0x24, 0xfe, 0x48, 0x48, 0x48, 0x48, 0x00, 0x10, 0x38, 0x54,
166+ 0x92, 0x96, 0x90, 0x50, 0x38, 0x14, 0x12, 0xd2, 0x92, 0x94, 0x78, 0x10, 0x10, 0x02, 0x62, 0x94,
167+ 0x94, 0x94, 0x98, 0x68, 0x10, 0x10, 0x2c, 0x32, 0x52, 0x52, 0x52, 0x8c, 0x80, 0x00, 0x30, 0x48,
168+ 0x48, 0x48, 0x50, 0x20, 0x2e, 0x54, 0x54, 0x94, 0x88, 0x8c, 0x72, 0x00, 0x00, 0xe0, 0xe0, 0x20,
169+ 0x20, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x04, 0x08,
170+ 0x08, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x04, 0x02, 0x80, 0x40, 0x20,
171+ 0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x20, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00,
172+ 0x10, 0x38, 0x92, 0xd6, 0x38, 0xd6, 0x92, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
173+ 0x10, 0x10, 0x10, 0x10, 0xfe, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
174+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0x20, 0x20, 0xc0, 0x00, 0x00, 0x00,
175+ 0x00, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
176+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xe0, 0xe0, 0x40, 0x00, 0x02, 0x02, 0x04,
177+ 0x04, 0x08, 0x08, 0x08, 0x10, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x00, 0x18, 0x24,
178+ 0x24, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x24, 0x24, 0x18, 0x00, 0x00, 0x10, 0x70,
179+ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x7c, 0x00, 0x00, 0x00, 0x18, 0x24,
180+ 0x42, 0x62, 0x02, 0x04, 0x08, 0x08, 0x10, 0x20, 0x22, 0x42, 0x7e, 0x00, 0x00, 0x00, 0x38, 0x44,
181+ 0x82, 0x82, 0x02, 0x04, 0x38, 0x04, 0x02, 0x82, 0x82, 0x44, 0x38, 0x00, 0x00, 0x00, 0x08, 0x18,
182+ 0x28, 0x28, 0x48, 0x48, 0x88, 0x88, 0xfe, 0x08, 0x08, 0x08, 0x3c, 0x00, 0x00, 0x00, 0xfc, 0x80,
183+ 0x80, 0x80, 0xb8, 0xc4, 0x82, 0x02, 0x02, 0xc2, 0x82, 0x44, 0x38, 0x00, 0x00, 0x00, 0x3c, 0x42,
184+ 0x46, 0x80, 0x80, 0xb8, 0xc4, 0x82, 0x82, 0x82, 0x82, 0x44, 0x38, 0x00, 0x00, 0x00, 0xfe, 0x82,
185+ 0x82, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x38, 0x44,
186+ 0x82, 0x82, 0x82, 0x44, 0x38, 0x44, 0x82, 0x82, 0x82, 0x44, 0x38, 0x00, 0x00, 0x00, 0x38, 0x44,
187+ 0x82, 0x82, 0x82, 0x82, 0x46, 0x3a, 0x02, 0x02, 0x82, 0x44, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00,
188+ 0x00, 0x00, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00,
189+ 0x00, 0x00, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x18, 0x10, 0x30, 0x02, 0x04, 0x04,
190+ 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x00, 0x00, 0x00,
191+ 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40,
192+ 0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x00, 0x38, 0x44,
193+ 0x82, 0xc2, 0x02, 0x04, 0x04, 0x08, 0x10, 0x10, 0x00, 0x00, 0x10, 0x38, 0x10, 0x00, 0x3c, 0x42,
194+ 0x82, 0x9a, 0xa6, 0xa2, 0xa2, 0xa2, 0xa6, 0x9a, 0x80, 0x42, 0x3c, 0x00, 0x00, 0x00, 0x10, 0x28,
195+ 0x28, 0x28, 0x44, 0x44, 0x44, 0x44, 0x7c, 0x82, 0x82, 0x82, 0xc6, 0x00, 0x00, 0x00, 0xf8, 0x44,
196+ 0x42, 0x42, 0x42, 0x44, 0x78, 0x44, 0x42, 0x42, 0x42, 0x42, 0xfc, 0x00, 0x00, 0x00, 0x3a, 0x46,
197+ 0x42, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x82, 0x42, 0x42, 0x3c, 0x00, 0x00, 0x00, 0xf8, 0x44,
198+ 0x44, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x44, 0x44, 0xf8, 0x00, 0x00, 0x00, 0xfe, 0x42,
199+ 0x42, 0x40, 0x48, 0x48, 0x78, 0x48, 0x48, 0x42, 0x42, 0x42, 0xfe, 0x00, 0x00, 0x00, 0xfe, 0x42,
200+ 0x42, 0x40, 0x48, 0x48, 0x78, 0x48, 0x48, 0x40, 0x40, 0x40, 0xf0, 0x00, 0x00, 0x00, 0x1a, 0x26,
201+ 0x42, 0x40, 0x80, 0x80, 0x8f, 0x82, 0x82, 0x82, 0x42, 0x66, 0x1a, 0x00, 0x00, 0x00, 0xe7, 0x42,
202+ 0x42, 0x42, 0x42, 0x7e, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0xe7, 0x00, 0x00, 0x00, 0xfe, 0x10,
203+ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0xfe, 0x00, 0x00, 0x00, 0x1f, 0x02,
204+ 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82, 0x82, 0x44, 0x38, 0x00, 0x00, 0x00, 0xe6, 0x44,
205+ 0x44, 0x48, 0x48, 0x70, 0x50, 0x48, 0x48, 0x44, 0x44, 0x42, 0xe3, 0x00, 0x00, 0x00, 0xf0, 0x40,
206+ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x42, 0x42, 0x42, 0xfe, 0x00, 0x00, 0x00, 0x82, 0xc6,
207+ 0xaa, 0xaa, 0xaa, 0x92, 0x92, 0x92, 0x82, 0x82, 0x82, 0x82, 0xc6, 0x00, 0x00, 0x00, 0x87, 0xc2,
208+ 0xa2, 0xa2, 0xa2, 0x92, 0x92, 0x92, 0x8a, 0x8a, 0x8a, 0x86, 0xc2, 0x00, 0x00, 0x00, 0x38, 0x44,
209+ 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0x44, 0x38, 0x00, 0x00, 0x00, 0xf8, 0x44,
210+ 0x42, 0x42, 0x42, 0x42, 0x44, 0x78, 0x40, 0x40, 0x40, 0x40, 0xf0, 0x00, 0x00, 0x00, 0x38, 0x44,
211+ 0x44, 0x82, 0x82, 0x82, 0x82, 0x82, 0x82, 0xba, 0x44, 0x44, 0x38, 0x08, 0x06, 0x00, 0xf8, 0x44,
212+ 0x42, 0x42, 0x42, 0x44, 0x78, 0x48, 0x44, 0x44, 0x44, 0x42, 0xe3, 0x00, 0x00, 0x00, 0x34, 0x4c,
213+ 0x84, 0x80, 0x80, 0x60, 0x18, 0x04, 0x82, 0x82, 0x82, 0xc4, 0xb8, 0x00, 0x00, 0x00, 0xfe, 0x92,
214+ 0x92, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x7c, 0x00, 0x00, 0x00, 0xe7, 0x42,
215+ 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x3c, 0x00, 0x00, 0x00, 0xc6, 0x82,
216+ 0x82, 0x82, 0x82, 0x44, 0x44, 0x44, 0x44, 0x28, 0x28, 0x10, 0x10, 0x00, 0x00, 0x00, 0xc6, 0x82,
217+ 0x82, 0x82, 0x92, 0x92, 0x92, 0xaa, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0xee, 0x44,
218+ 0x44, 0x28, 0x28, 0x10, 0x28, 0x28, 0x28, 0x44, 0x44, 0x82, 0xc6, 0x00, 0x00, 0x00, 0xc6, 0x82,
219+ 0x44, 0x44, 0x44, 0x28, 0x28, 0x10, 0x10, 0x10, 0x10, 0x10, 0x7c, 0x00, 0x00, 0x00, 0xfe, 0x84,
220+ 0x88, 0x08, 0x10, 0x10, 0x10, 0x20, 0x20, 0x42, 0x42, 0x82, 0xfe, 0x00, 0x00, 0x1e, 0x10, 0x10,
221+ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x1e, 0x00, 0x80, 0x80,
222+ 0x40, 0x40, 0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x00, 0xf0, 0x10, 0x10,
223+ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0xf0, 0x10, 0x28, 0x44,
224+ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
225+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x30, 0x30, 0x20,
226+ 0x20, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
227+ 0x00, 0x00, 0x3c, 0x42, 0x02, 0x3e, 0x42, 0x82, 0x82, 0x86, 0x7b, 0x00, 0x00, 0x00, 0xc0, 0x40,
228+ 0x40, 0x40, 0x78, 0x44, 0x42, 0x42, 0x42, 0x42, 0x42, 0x44, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00,
229+ 0x00, 0x00, 0x3a, 0x46, 0x82, 0x80, 0x80, 0x80, 0x82, 0x42, 0x3c, 0x00, 0x00, 0x00, 0x06, 0x04,
230+ 0x04, 0x04, 0x3c, 0x44, 0x84, 0x84, 0x84, 0x84, 0x84, 0x44, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00,
231+ 0x00, 0x00, 0x38, 0x44, 0x82, 0xfe, 0x80, 0x80, 0x82, 0x42, 0x3c, 0x00, 0x00, 0x00, 0x0e, 0x11,
232+ 0x10, 0x10, 0xfe, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00,
233+ 0x00, 0x00, 0x3b, 0x44, 0x44, 0x44, 0x38, 0x40, 0x78, 0x84, 0x82, 0x82, 0x7c, 0x00, 0xc0, 0x40,
234+ 0x40, 0x40, 0x5c, 0x62, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0xe7, 0x00, 0x00, 0x18, 0x18, 0x00,
235+ 0x00, 0x00, 0x78, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0xff, 0x00, 0x00, 0x06, 0x06, 0x00,
236+ 0x00, 0x00, 0x3e, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82, 0x44, 0x38, 0x00, 0xc0, 0x40,
237+ 0x40, 0x40, 0x42, 0x44, 0x48, 0x58, 0x64, 0x44, 0x42, 0x42, 0xe3, 0x00, 0x00, 0x00, 0x78, 0x08,
238+ 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
239+ 0x00, 0x00, 0x6c, 0x92, 0x92, 0x92, 0x92, 0x92, 0x92, 0x92, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00,
240+ 0x00, 0x00, 0xdc, 0x62, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x00,
241+ 0x00, 0x00, 0x38, 0x44, 0x82, 0x82, 0x82, 0x82, 0x82, 0x44, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00,
242+ 0x00, 0x00, 0xf8, 0x44, 0x42, 0x42, 0x42, 0x42, 0x44, 0x78, 0x40, 0x40, 0xf0, 0x00, 0x00, 0x00,
243+ 0x00, 0x00, 0x3e, 0x44, 0x84, 0x84, 0x84, 0x84, 0x44, 0x3c, 0x04, 0x04, 0x1e, 0x00, 0x00, 0x00,
244+ 0x00, 0x00, 0xec, 0x32, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00,
245+ 0x00, 0x00, 0x3a, 0x46, 0x42, 0x40, 0x3c, 0x02, 0x82, 0xc2, 0xbc, 0x00, 0x00, 0x00, 0x00, 0x20,
246+ 0x20, 0x20, 0xfc, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x22, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00,
247+ 0x00, 0x00, 0xc6, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x46, 0x39, 0x00, 0x00, 0x00, 0x00, 0x00,
248+ 0x00, 0x00, 0xc6, 0x82, 0x82, 0x44, 0x44, 0x44, 0x28, 0x28, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
249+ 0x00, 0x00, 0x92, 0x92, 0x92, 0x92, 0xaa, 0xaa, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00,
250+ 0x00, 0x00, 0xee, 0x44, 0x28, 0x28, 0x10, 0x28, 0x28, 0x44, 0xee, 0x00, 0x00, 0x00, 0x00, 0x00,
251+ 0x00, 0x00, 0xe7, 0x42, 0x22, 0x24, 0x14, 0x08, 0x08, 0x10, 0x90, 0xa0, 0x40, 0x00, 0x00, 0x00,
252+ 0x00, 0x00, 0x7e, 0x44, 0x08, 0x08, 0x10, 0x10, 0x22, 0x42, 0xfe, 0x00, 0x00, 0x06, 0x08, 0x08,
253+ 0x08, 0x08, 0x08, 0x10, 0x20, 0x10, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x06, 0x10, 0x10, 0x10,
254+ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0xc0, 0x20, 0x20,
255+ 0x20, 0x20, 0x20, 0x10, 0x08, 0x10, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0xc0, 0x60, 0x92, 0x0c,
256+
257 };
+3,
-3
1@@ -125,21 +125,21 @@ system_deo(Uxn *u, Uint8 port)
2 Uint8 value = u->ram[addr + 7];
3 Uint16 i, length = PEEK2(u->ram + addr + 1);
4 Uint16 dst_page = PEEK2(u->ram + addr + 3), dst_addr = PEEK2(u->ram + addr + 5);
5- int dst = (dst_page % RAM_PAGES) * 0x10000;
6+ int dst = (dst_page % (RAM_PAGES+1)) * 0x10000;
7 for(i = 0; i < length; i++)
8 uxn.ram[dst + (Uint16)(dst_addr + i)] = value;
9 } else if(u->ram[addr] == 0x1) {
10 Uint16 i, length = PEEK2(u->ram + addr + 1);
11 Uint16 a_page = PEEK2(u->ram + addr + 3), a_addr = PEEK2(u->ram + addr + 5);
12 Uint16 b_page = PEEK2(u->ram + addr + 7), b_addr = PEEK2(u->ram + addr + 9);
13- int src = (a_page % RAM_PAGES) * 0x10000, dst = (b_page % RAM_PAGES) * 0x10000;
14+ int src = (a_page % (RAM_PAGES+1)) * 0x10000, dst = (b_page % (RAM_PAGES+1)) * 0x10000;
15 for(i = 0; i < length; i++)
16 uxn.ram[dst + (Uint16)(b_addr + i)] = uxn.ram[src + (Uint16)(a_addr + i)];
17 } else if(u->ram[addr] == 0x2) {
18 Uint16 i, length = PEEK2(u->ram + addr + 1);
19 Uint16 a_page = PEEK2(u->ram + addr + 3), a_addr = PEEK2(u->ram + addr + 5);
20 Uint16 b_page = PEEK2(u->ram + addr + 7), b_addr = PEEK2(u->ram + addr + 9);
21- int src = (a_page % RAM_PAGES) * 0x10000, dst = (b_page % RAM_PAGES) * 0x10000;
22+ int src = (a_page % (RAM_PAGES+1)) * 0x10000, dst = (b_page % (RAM_PAGES+1)) * 0x10000;
23 for(i = length - 1; i != 0xffff; i--)
24 uxn.ram[dst + (Uint16)(b_addr + i)] = uxn.ram[src + (Uint16)(a_addr + i)];
25 } else
+30,
-2
1@@ -12,9 +12,9 @@
2 @on-reset ( -> )
3 ;on-frame .Screen/vector DEO2
4 .Screen/height DEI2 #0030 SUB2 ,on-frame/anchor-y STR2
5- BRK
6+ get-metadata BRK
7
8-@on-frame ( -> )
9+@on-frame ( -> )
10 [ LIT &f $1 ] INCk ,&f STR
11 #07 AND ?{
12 #0008 .Screen/x DEO2
13@@ -25,6 +25,28 @@
14 #8100 .System/rst DEI ;dict/rst-txt <draw-stack> }
15 BRK
16
17+(
18+@|core )
19+
20+@get-metadata ( -- )
21+ ;cmd .System/expansion DEO2
22+ ( a ) ,metaloc/litport LDR2 #8006 EQU2
23+ ( b ) ,metaloc/opc LDR #37 EQU AND ?{ JMP2r }
24+ ( | load )
25+ ,metaloc/addr LDR2 !<load-metadata>
26+
27+@cmd [ 01 0006 0000 0100 0010 =metaloc ]
28+
29+@metaloc $1 &addr $2 &litport $2 &opc $1
30+
31+@<load-metadata> ( addr* -- )
32+ <phex>
33+ #0a18 DEO
34+ JMP2r
35+
36+(
37+@|drawing )
38+
39 %<draw-space> ( -- ) {
40 .Screen/x DEI2k #0008 ADD2 ROT DEO2 }
41
42@@ -70,6 +92,9 @@
43 [ LIT2 &color 41 -Screen/sprite ] DEO
44 JMP2r
45
46+(
47+@|stdlib )
48+
49 @<phex> ( short* -: )
50 SWP /b
51 &b ( byte -: )
52@@ -78,6 +103,9 @@
53 #0f AND DUP #09 GTH #27 MUL ADD [ LIT "0 ] ADD #19 DEO
54 JMP2r
55
56+(
57+@|assets )
58+
59 @dict
60 &wst-txt "WST $1
61 &rst-txt "RST $1