commit 4657fe24908e369dceaf21d9bc12bf3683e0b678
parent a8c384daec01a61346c813a297d4a4e619a7b634
Author: neauoire <aliceffekt@gmail.com>
Date: Sun, 9 Jan 2022 17:04:54 -0800
(gui/label.tal) Use UF2 properly
Diffstat:
3 files changed, 600 insertions(+), 294 deletions(-)
diff --git a/projects/examples/demos/font.tal b/projects/examples/demos/font.tal
@@ -1,194 +0,0 @@
-( uxnasm projects/examples/demos/font.tal bin/font.rom && uxnemu bin/font.rom )
-
-%+ { ADD } %- { SUB } %* { MUL } %/ { DIV }
-%< { LTH } %> { GTH } %= { EQU } %! { NEQ }
-%++ { ADD2 } %-- { SUB2 } %** { MUL2 } %// { DIV2 }
-%<< { LTH2 } %>> { GTH2 } %== { EQU2 } %!! { NEQ2 }
-
-%RTN { JMP2r }
-%TOS { #00 SWP }
-
-%GET-WIDTH { TOS ;font-data ++ LDA }
-%GET-GLYPH { TOS #50 SFT2 ;font-data/glyphs ++ }
-
-%AUTO-NONE { #00 .Screen/auto DEO }
-%AUTO-X { #01 .Screen/auto DEO }
-%AUTO-Y { #02 .Screen/auto DEO }
-%AUTO-ADDR { #04 .Screen/auto DEO }
-%AUTO-X-ADDR { #05 .Screen/auto DEO }
-%AUTO-Y-ADDR { #06 .Screen/auto DEO }
-
-( devices )
-
-|00 @System &vector $2 &pad $6 &r $2 &g $2 &b $2
-|20 @Screen &vector $2 &width $2 &height $2 &auto $1 &pad $1 &x $2 &y $2 &addr $2 &pixel $1 &sprite $1
-|a0 @File &vector $2 &success $2 &stat $2 &delete $1 &append $1 &name $2 &length $2 &read $2 &write $2
-
-( variables )
-
-|0000
-
-( init )
-
-|0100 ( -> )
-
- ( theme )
- #0fa7 .System/r DEO2
- #0fa7 .System/g DEO2
- #0fa7 .System/b DEO2
-
- ( load font )
- #4900 .File/length DEO2
- ;font-path-large .File/name DEO2
- ;font-data .File/read DEO2
- ( draw label )
- #0020 #0020 ;title #01 ;draw-uf3 JSR2
-
- ( load font )
- #2100 .File/length DEO2
- ;font-path-medium .File/name DEO2
- ;font-data .File/read DEO2
- ( draw label )
- #0020 #0048 ;body #02 ;draw-uf2 JSR2
-
- ( load font )
- #0900 .File/length DEO2
- ;font-path-small .File/name DEO2
- ;font-data .File/read DEO2
- ( draw label )
- #0030 #00b8 ;footer #03 ;draw-uf1 JSR2
-
-BRK
-
-@draw-uf1 ( x* y* text* color -- )
-
- STH
- SWP2 .Screen/y DEO2
- SWP2 DUP2 .Screen/x DEO2 SWP2
- &loop
- LDAk
- DUP #0a ! ,&no-linebreak JCN
- ( move down ) STH OVR2 .Screen/x DEO2 STHr
- ( incr y ) .Screen/y DEI2 #0010 ++ .Screen/y DEO2
- POP ,&continue JMP &no-linebreak
- ( get addr ) STHk TOS #30 SFT2 ;font-data #0100 ++ ++ .Screen/addr DEO2
- ( get width ) STHr TOS ;font-data ++ LDA TOS
- ( draw ) STHkr .Screen/sprite DEO
- ( use width ) .Screen/x DEI2 ++ .Screen/x DEO2
- &continue
- ( incr addr ) INC2
- LDAk ,&loop JCN
- POP2 POP2 POPr
-
-RTN
-
-@draw-uf2 ( x* y* text* color -- )
-
- STH
- SWP2 .Screen/y DEO2
- SWP2 .Screen/x DEO2
- AUTO-Y-ADDR
- &while
- LDAk #0a ! ,&no-linebreak JCN
- ( reset ) #0020 .Screen/x DEO2
- ( down ) .Screen/y DEI2k #0010 ++ ROT DEO2
- ,&continue JMP &no-linebreak
- LDAk STHkr ,&sprite JSR
- &continue
- INC2 LDAk ,&while JCN
- POP2 POPr
- AUTO-NONE
- RTN
-
- &sprite ( char color -- )
- .Screen/x DEI2 STH2
- .Screen/y DEI2 STH2
- ( glyph ) OVR GET-GLYPH .Screen/addr DEO2
- DUP .Screen/sprite DEOk DEO
- STH2kr .Screen/y DEO2
- SWP GET-WIDTH
- DUP #09 < ,&narrow JCN
- .Screen/x DEI2k #0008 ++ ROT DEO2
- OVR .Screen/sprite DEOk DEO
- STH2kr .Screen/y DEO2
- &narrow
- POP2r
- ( width ) TOS STH2r ++ .Screen/x DEO2
- POP
- RTN
-
-RTN
-
-@draw-uf3 ( x* y* text* color -- )
-
- STH
- SWP2 .Screen/y DEO2
- SWP2 DUP2 .Screen/x DEO2 SWP2
- &loop
- LDAk
- DUP #0a ! ,&no-linebreak JCN
- ( move down ) OVR2 .Screen/x DEO2
- ( incr y ) .Screen/y DEI2 #0010 ++ .Screen/y DEO2
- POP ,&continue JMP &no-linebreak
- STHkr ,&sprite JSR
- &continue
- ( incr addr ) INC2
- LDAk ,&loop JCN
- POP2 POP2 POPr
- RTN
-
- &sprite ( char color -- )
- STH
- ( get addr ) DUP TOS #30 SFT2 #30 SFT2k ROT POP ADD2 ;font-data #0100 ++ ++ .Screen/addr DEO2
- ( get width ) TOS ;font-data ++ LDA TOS
- #0300
- &ver
- #0300
- &hor
- STHkr .Screen/sprite DEO
- .Screen/x DEI2 #0008 ++ .Screen/x DEO2
- .Screen/addr DEI2 #0008 ++ .Screen/addr DEO2
- INC GTHk ,&hor JCN
- POP2
- .Screen/y DEI2 #0008 ++ .Screen/y DEO2
- .Screen/x DEI2 #0018 -- .Screen/x DEO2
- INC GTHk ,&ver JCN
- POP2
- .Screen/y DEI2 #0018 -- .Screen/y DEO2
- ( use width ) .Screen/x DEI2 ++ .Screen/x DEO2
- POPr
- RTN
-
-RTN
-
-@title
- 5468 6520 466f 6720 486f 726e $1
-
-@body
- 4927 6c6c 206d 616b 6520 6120 736f 756e
- 6420 7468 6174 2773 2073 6f20 616c 6f6e
- 6520 0a74 6861 7420 6e6f 206f 6e65 2063
- 616e 206d 6973 7320 6974 2c20 7468 6174
- 2077 686f 6576 6572 200a 6865 6172 7320
- 6974 2077 696c 6c20 7765 6570 2069 6e20
- 7468 6569 7220 736f 756c 732c 200a 616e
- 6420 6865 6172 7468 7320 7769 6c6c 2073
- 6565 6d20 7761 726d 6572 2c20 0a61 6e64
- 2062 6569 6e67 2069 6e73 6964 6520 7769
- 6c6c 2073 6565 6d20 6265 7474 6572 200a
- 746f 2061 6c6c 2077 686f 2068 6561 7220
- 6974 2069 6e20 7468 6520 6469 7374 616e
- 7420 746f 776e 732e 20 $1
-
-@footer
- 2d20 4279 2052 6179 2042 7261 6462 7572
- 79 $1
-
-@font-path-large
- "projects/fonts/geneva24.uf3 $1
-@font-path-medium
- "projects/fonts/venice14.uf2 $1
-@font-path-small
- "projects/fonts/atari8.uf1 $1
-
-@font-data $100 &glyphs
-\ No newline at end of file
diff --git a/projects/examples/gui/label.tal b/projects/examples/gui/label.tal
@@ -1,13 +1,37 @@
( GUI Labels )
+%+ { ADD } %- { SUB } %* { MUL } %/ { DIV }
+%< { LTH } %> { GTH } %= { EQU } %! { NEQ }
+%++ { ADD2 } %-- { SUB2 } %** { MUL2 } %// { DIV2 }
+%<< { LTH2 } %>> { GTH2 } %== { EQU2 } %!! { NEQ2 }
+
+%=~ { EQUk NIP } %!~ { NEQk NIP }
+%<~ { LTHk NIP } %>~ { GTHk NIP }
+
+%2* { #10 SFT } %2/ { #01 SFT } %2** { #10 SFT2 } %2// { #01 SFT2 }
+%4* { #20 SFT } %4/ { #02 SFT } %4** { #20 SFT2 } %4// { #02 SFT2 }
+%8* { #30 SFT } %8/ { #03 SFT } %8** { #30 SFT2 } %8// { #03 SFT2 }
+%10* { #40 SFT } %10/ { #04 SFT } %10** { #40 SFT2 } %10// { #04 SFT2 }
+%20* { #50 SFT } %20/ { #05 SFT } %20** { #50 SFT2 } %20// { #05 SFT2 }
+
+%IS-VALID { DUP #1f > SWP #7f < AND }
+
%RTN { JMP2r }
-%2// { #01 SFT2 }
-%8** { #30 SFT2 }
+%TOS { #00 SWP }
+%AUTO-NONE { #00 .Screen/auto DEO }
+%AUTO-Y { #02 .Screen/auto DEO }
+%AUTO-YADDR { #06 .Screen/auto DEO }
+
+%HALT { #010f DEO }
+%EMIT { #18 DEO }
+%PRINT { ;print-str JSR2 #0a EMIT }
+%DEBUG { ;print-hex/byte JSR2 #0a EMIT }
+%DEBUG2 { ;print-hex JSR2 #0a EMIT }
( devices )
|00 @System [ &vector $2 &pad $6 &r $2 &g $2 &b $2 ]
-|20 @Screen [ &vector $2 &width $2 &height $2 &pad $2 &x $2 &y $2 &addr $2 &pixel $1 &sprite $1 ]
+|20 @Screen &vector $2 &width $2 &height $2 &auto $1 &pad $1 &x $2 &y $2 &addr $2 &pixel $1 &sprite $1
( variables )
@@ -21,118 +45,596 @@
|0100
( theme )
- #0f0f .System/r DEO2
- #0fff .System/g DEO2
- #0ff0 .System/b DEO2
+ #f0d7 .System/r DEO2
+ #f0de .System/g DEO2
+ #f0dc .System/b DEO2
( find screen center )
.Screen/width DEI2 2// .center/x STZ2
.Screen/height DEI2 2// .center/y STZ2
- ( draw ver line )
- .center/x LDZ2 .Screen/x DEO2 #0000 .Screen/y DEO2
- &draw-ver
- ( draw ) #02 .Screen/pixel DEO
- ( incr ) .Screen/y DEI2 #0002 ADD2 .Screen/y DEO2
- .Screen/y DEI2 .Screen/height DEI2 LTH2 ,&draw-ver JCN
+ ( ver )
+ AUTO-Y
+ #0000 .Screen/y DEO2
+ .center/x LDZ2 .Screen/x DEO2
+ .Screen/height DEI2 #0000
+ &ver
+ #43 .Screen/pixel DEO
+ .Screen/y DEI2k INC2 ROT DEO2
+ INC2 GTH2k ,&ver JCN
+ POP2 POP2
- .center/x LDZ2 .center/y LDZ2 #0010 SUB2 #0c ;text1 ;draw-label-left JSR2
- .center/x LDZ2 .center/y LDZ2 #0c ;text2 ;draw-label-middle JSR2
- .center/x LDZ2 .center/y LDZ2 #0010 ADD2 #0c ;text3 ;draw-label-right JSR2
- .center/x LDZ2 .center/y LDZ2 #0020 ADD2 #0c ;text4 ;draw-label-middle JSR2
- .center/x LDZ2 .center/y LDZ2 #0030 ADD2 #0c ;text5 ;draw-label-middle JSR2
+ .center/x LDZ2 .Screen/x DEO2
+ .center/y LDZ2 #0020 -- .Screen/y DEO2
+ ;left-txt #09 ;draw-uf2 JSR2
-RTN
+ .center/x LDZ2 .Screen/x DEO2
+ .center/y LDZ2 .Screen/y DEO2
+ ;center-txt #09 ;draw-uf2-center JSR2
+
+ .center/x LDZ2 .Screen/x DEO2
+ .center/y LDZ2 #0020 ++ .Screen/y DEO2
+ ;right-txt #09 ;draw-uf2-right JSR2
+
+BRK
-@draw-label-left ( x y color addr -- )
+@draw-uf2-center ( text* color -- )
- ( load ) .label/addr STZ2 .label/color STZ .Screen/y DEO2 .Screen/x DEO2
- .label/addr LDZ2
- &loop
- ( draw ) LDAk #00 SWP 8** ;font ADD2 .Screen/addr DEO2 .label/color LDZ .Screen/sprite DEO
- ( incr ) INC2
- ( incr ) .Screen/x DEI2 #0008 ADD2 .Screen/x DEO2
- LDAk ,&loop JCN
- POP2
+ STH
+ DUP2 ,get-width JSR 2// .Screen/x DEI2 SWP2 -- .Screen/x DEO2
+ STHr ,draw-uf2 JSR
RTN
-@draw-label-middle ( x y color addr -- )
-
- ( load ) .label/addr STZ2 .label/color STZ .Screen/y DEO2
- ( align ) .label/addr LDZ2 ;get-text-length JSR2 8** 2// SUB2 .Screen/x DEO2
- .label/addr LDZ2
- &loop
- ( draw ) LDAk #00 SWP 8** ;font ADD2 .Screen/addr DEO2 .label/color LDZ .Screen/sprite DEO
- ( incr ) INC2
- ( incr ) .Screen/x DEI2 #0008 ADD2 .Screen/x DEO2
- LDAk ,&loop JCN
- POP2
+@draw-uf2-right ( text* color -- )
+
+ STH
+ DUP2 ,get-width JSR .Screen/x DEI2 SWP2 -- .Screen/x DEO2
+ STHr ,draw-uf2 JSR
RTN
-@draw-label-right ( x y color addr -- )
-
- ( load ) .label/addr STZ2 .label/color STZ .Screen/y DEO2
- ( align ) .label/addr LDZ2 ;get-text-length JSR2 8** SUB2 .Screen/x DEO2
- .label/addr LDZ2
- &loop
- ( draw ) LDAk #00 SWP 8** ;font ADD2 .Screen/addr DEO2 .label/color LDZ .Screen/sprite DEO
- ( incr ) INC2
- ( incr ) .Screen/x DEI2 #0008 ADD2 .Screen/x DEO2
- LDAk ,&loop JCN
+@get-width ( text* -- width* )
+
+ LIT2r 0000
+ &while
+ LDAk TOS ;font ++ LDA TOS STH2 ADD2r
+ INC2 LDAk ,&while JCN
POP2
+ STH2r
RTN
-@get-text-length ( label* -- length )
-
- #0000 ( counter )
- &loop
- ( incr ) INC2 OVR2 OVR2 ADD2
- LDA ,&loop JCN
- NIP2
+@draw-uf2 ( text* color -- )
+
+ STH
+ AUTO-YADDR
+ &while
+ LDAk STHkr ,draw-glyph JSR
+ INC2 LDAk ,&while JCN
+ POP2 POPr
+ AUTO-NONE
+
+RTN
+
+@draw-glyph ( char color -- )
+
+ .Screen/x DEI2 STH2
+ .Screen/y DEI2 STH2
+ ( glyph ) OVR ,get-glyph JSR .Screen/addr DEO2
+ DUP .Screen/sprite DEOk DEO
+ STH2kr .Screen/y DEO2
+ ( get width ) SWP TOS ;font ++ LDA
+ DUP #09 < ,&narrow JCN
+ .Screen/x DEI2k #0008 ++ ROT DEO2
+ OVR .Screen/sprite DEOk DEO
+ STH2kr .Screen/y DEO2
+ &narrow
+ POP2r
+ ( width ) TOS STH2r ++ .Screen/x DEO2
+ POP
+
+RTN
+
+@get-glyph ( char -- addr* )
+
+ #09 =~ ,&tab JCN ( tab )
+ #0a =~ ,&linebreak JCN ( linebreak )
+ #0d =~ ,&linebreak JCN ( linebreak )
+ DUP IS-VALID ,&valid JCN
+ POP ;unknown-icn RTN
+ &linebreak
+ POP ;linebreak-icn RTN
+ &tab
+ POP ;tab-icn RTN
+ &valid
+ TOS 20** ;font
+ #0100 ++ ++
RTN
-@font ( spectrum-zx font )
-[
- 0000 0000 0000 0000 0000 2400 7e3c 0000 0000 2400 3c42 0000 0000 6c7c 7c38 1000
- 0010 387c 7c38 1000 0038 387c 6c10 3800 0010 387c 7c10 3800 0000 0018 1800 0000
- 007e 4242 4242 7e00 0000 1824 2418 0000 0018 2442 4224 1800 001e 063a 4a48 3000
- 0038 446c 107c 1000 000c 0808 0838 3800 003e 2222 2266 6600 0000 0822 0022 0800
- 0000 1018 1c18 1000 0000 0818 3818 0800 0008 1c00 001c 0800 0028 2828 2800 2800
- 003e 4a4a 3a0a 0a00 000c 3046 620c 3000 0000 0000 0000 ffff 0010 3800 3810 0038
- 0008 1c2a 0808 0800 0008 0808 2a1c 0800 0000 0804 7e04 0800 0000 1020 7e20 1000
- 0000 4040 7e00 0000 0000 0024 6624 0000 0000 1038 7c00 0000 0000 007c 3810 0000
- 0000 0000 0000 0000 0008 0808 0800 0800 0014 1400 0000 0000 0024 7e24 247e 2400
- 0008 1e28 1c0a 3c08 0042 0408 1020 4200 0030 4832 4c44 3a00 0008 1000 0000 0000
- 0004 0808 0808 0400 0010 0808 0808 1000 0000 1408 3e08 1400 0000 0808 3e08 0800
- 0000 0000 0008 0810 0000 0000 3c00 0000 0000 0000 0000 0800 0000 0204 0810 2000
- 003c 464a 5262 3c00 0018 2808 0808 3e00 003c 4202 3c40 7e00 003c 421c 0242 3c00
- 0008 1828 487e 0800 007e 407c 0242 3c00 003c 407c 4242 3c00 007e 0204 0810 1000
- 003c 423c 4242 3c00 003c 4242 3e02 3c00 0000 0008 0000 0800 0000 0800 0008 0810
- 0000 0810 2010 0800 0000 003e 003e 0000 0000 1008 0408 1000 003c 4202 0c00 0800
- 003c 425a 5442 3c00 0018 2442 7e42 4200 007c 427c 4242 7c00 003c 4240 4042 3c00
- 0078 4442 4244 7800 007e 407c 4040 7e00 003e 4040 7c40 4000 003c 4240 4e42 3c00
- 0042 427e 4242 4200 003e 0808 0808 3e00 0002 0202 4242 3c00 0044 4870 4844 4200
- 0040 4040 4040 7e00 0042 665a 4242 4200 0042 6252 4a46 4200 003c 4242 4242 3c00
- 007c 4242 7c40 4000 003c 4242 524a 3c00 007c 4242 7c44 4200 003c 403c 0242 3c00
- 00fe 1010 1010 1000 0042 4242 4242 3c00 0042 4242 4224 1800 0042 4242 5a66 4200
- 0042 2418 1824 4200 0082 4428 1010 1000 007e 0408 1020 7e00 000c 0808 0808 0c00
- 0040 2010 0804 0200 0018 0808 0808 1800 0008 1422 0000 0000 0000 0000 0000 7e00
- 0008 0400 0000 0000 0000 1c02 1e22 1e00 0020 203c 2222 3c00 0000 1e20 2020 1e00
- 0002 021e 2222 1e00 0000 1c22 3c20 1e00 000c 101c 1010 1000 0000 1c22 221e 021c
- 0020 202c 3222 2200 0008 0018 0808 0400 0008 0008 0808 4830 0020 2428 3028 2400
- 0010 1010 1010 0c00 0000 6854 5454 5400 0000 5864 4444 4400 0000 3844 4444 3800
- 0000 7844 4478 4040 0000 3c44 443c 0406 0000 2c30 2020 2000 0000 3840 3804 7800
- 0010 103c 1010 0c00 0000 4444 4444 3800 0000 4444 2828 1000 0000 4454 5454 2800
- 0000 4428 1028 4400 0000 4444 443c 0438 0000 7c08 1020 7c00 000c 0810 1008 0c00
- 0008 0808 0808 0800 0030 1008 0810 3000 0000 0032 4c00 0000 3c42 99a1 a199 423c
-]
-
-@text1 [ "Left 20 "Aligned 00 ]
-@text2 [ "Middle 20 "Aligned 00 ]
-@text3 [ "Right 20 "Aligned 00 ]
-@text4 [ "even 00 ]
-@text5 [ "odd 00 ]
-\ No newline at end of file
+@print-hex ( value* -- )
+
+ SWP ,&byte JSR
+ &byte ( byte -- )
+ STHk #04 SFT ,&parse JSR #18 DEO
+ STHr #0f AND ,&parse JSR #18 DEO
+ JMP2r
+ &parse ( byte -- char ) DUP #09 GTH ,&above JCN #30 ADD JMP2r
+ &above #57 ADD JMP2r
+
+JMP2r
+
+@left-txt "Left 20 "Aligned 20 "Label $1
+@center-txt "Center 20 "Aligned 20 "Label $1
+@right-txt "Right 20 "Aligned 20 "Label $1
+
+@unknown-icn
+ aa55 aa55 aa55 aa55
+ aa55 aa55 aa55 aa55
+ aa55 aa55 aa55 aa55
+ aa55 aa55 aa55 aa55
+@tab-icn
+ 0000 0000 0000 1008
+ 1000 0000 0000 0000
+ 0000 0000 0000 0000
+ 0000 0000 0000 0000
+@linebreak-icn
+ 0000 0000 0000 1028
+ 1000 0000 0000 0000
+ 0000 0000 0000 0000
+ 0000 0000 0000 0000
+
+@font ( venice14 )
+ 0000 0000 0000 0000 0009 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0505 0809 080c 0d05 0707 0a09 0609 0608
+ 0808 0808 0908 0808 0808 0505 0708 0709
+ 000d 0a08 0b0a 090a 0c08 070c 090e 0c09
+ 0a09 0c08 090b 0a0d 0d0a 0906 0806 0809
+ 0509 0807 0a07 0708 0906 0609 050f 0a08
+ 0908 0707 060a 090e 0a09 0807 0507 0800
+ 0d0d 080a 0c09 0b09 0909 0909 0907 0707
+ 0707 0606 0606 0a08 0808 0808 0a0a 0a0a
+ 0000 0000 0000 000a 0000 0005 0000 1009
+ 0000 0000 0000 0000 0000 0000 0000 0c08
+ 0905 0000 0000 000a 0a00 080d 0d09 0e0c
+ 090c 0808 0505 0000 0907 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3030 3030 3030 3000 3030 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 2424 2400 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 1212 7f24 24fe 4848 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 1038 5450 7038 1c14 5438 1000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3748 494b 360d 1a32 6241 0000 0000
+ 0000 c0c0 8000 0080 4040 4080 0000 0000
+ 0000 1c22 261c 1835 6343 463c 0000 0000
+ 0000 0000 0000 e090 1020 8060 0000 0000
+ 0000 2020 2000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0008 1030 2060 6060 6020 3010 0800 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0020 1018 080c 0c0c 0c08 1810 2000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0012 0c3f 0c12 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0008 0808 7f08 0808 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 3030 1020 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 7f00 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 3030 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0206 040c 0818 1030 2060 4000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3c66 6666 6666 6666 663c 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0818 3818 1818 1818 183c 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3c46 8606 0c18 3060 c2fc 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 7e8c 1830 7c06 4686 8c78 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 040c 1c2c 4c8d fe0c 0c1e 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 7c62 6078 0c06 0606 4c38 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 1c22 606c 7666 6666 663c 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 7e86 060c 0c18 1830 3030 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3c66 6666 3c66 6666 663c 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3c66 6666 666e 3606 4438 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0030 3000 0000 3030 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0030 3000 0000 3030 1020 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0c18 3060 3018 0c00 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 7e00 7e00 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 6030 180c 1830 6000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3c46 0606 0c18 1000 1010 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0001 0200 0001 0306 7f98 30e0 0000 0000
+ 00c0 6060 e0e0 6060 e060 6038 0000 0000
+ 0010 7eb3 b333 3e31 3131 31ff 0000 0000
+ 0000 0000 0000 0080 8080 8000 0000 0000
+ 0000 7cc2 c2c4 c0c0 c0c2 c478 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0010 7fb1 b030 3030 3030 30ff 0000 0000
+ 0000 0080 c0c0 c0c0 c0c0 8000 0000 0000
+ 0010 7fb0 b030 3e30 3030 30ff 0000 0000
+ 0000 8080 0000 0000 0040 8000 0000 0000
+ 0010 7fb0 b030 3e30 3030 30e0 0000 0000
+ 0000 8080 0000 0000 0000 0000 0000 0000
+ 0000 3f61 c2c0 cfc3 c3c7 cb73 0000 0000
+ 0000 0000 0000 0000 0040 8000 0000 0000
+ 0000 71b1 b131 7fb1 3131 31e1 0000 0000
+ 00e0 8080 8080 8080 8090 a0c0 0000 0000
+ 0000 7898 9818 1818 1819 1a1c 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 7898 9818 1818 1818 1818 1810 20c0
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 70b1 b336 3c38 3c36 33e1 0000 0000
+ 0000 c080 0000 0000 0010 20c0 0000 0000
+ 0000 3860 6060 6060 6060 61fe 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 0000 70b8 bd2e 2420 2020 20c0 0000 0000
+ 0000 70e0 6060 6060 6064 6870 0000 0000
+ 0000 70b8 bc2e 2723 2120 20c0 0000 0000
+ 0000 6040 4040 40c0 c0c0 4040 0000 0000
+ 0000 3c46 c3c3 c3c3 c3c2 4438 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 7fb1 b131 313f 3030 30e0 0000 0000
+ 0000 0080 8080 8000 0000 0000 0000 0000
+ 0000 3c46 c3c3 c3c3 c3d3 4a3c 0402 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0010 7fb1 b131 313f 3633 31e0 0000 0000
+ 0000 0080 8080 8000 0000 90e0 0000 0000
+ 0000 7cc2 e470 381c 4e86 c67c 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 7f8c 8c0c 0c0c 0c0c 0c38 0000 0000
+ 0000 8000 0000 0000 0000 0000 0000 0000
+ 0000 61e1 6161 6161 6365 6931 0000 0000
+ 0000 8080 8080 8080 80a0 c080 0000 0000
+ 0000 61e3 6161 6163 666c 7870 0000 0000
+ 0000 0080 8080 8000 0000 0000 0000 0000
+ 0000 60e0 6060 6266 6e76 6747 0000 0000
+ 0000 2070 3030 3030 60c0 8000 0000 0000
+ 0000 60b0 980d 0707 0d18 3060 0000 0000
+ 0000 3060 c080 0000 80c8 6830 0000 0000
+ 0000 61e1 6161 6161 6163 6539 0101 021c
+ 0000 8080 8080 8080 8080 8080 8000 0000
+ 0000 7f83 860c 1830 60c0 c1fe 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 0078 6060 6060 6060 6060 6060 7800 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 4060 2030 1018 080c 0406 0200 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0078 1818 1818 1818 1818 1818 7800 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0010 2844 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 00ff 0000 0000
+ 0000 0000 0000 0000 0000 0080 0000 0000
+ 0040 2010 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 007e c6c6 c6ce d766 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 0070 c0c0 c0dc e6c6 c6c6 ccf8 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 007c c4c0 c0c4 c870 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0003 0606 067e c6c6 c6ce d667 0000 0000
+ 0080 0000 0000 0000 0040 8000 0000 0000
+ 0000 0000 007c c4c8 d0e2 c478 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 001c 3030 3078 3030 3030 3030 3030 20c0
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 007e c6c6 c6ce d666 0604 0830
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0070 c0c0 c0ce d6e6 c6c6 c7c6 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 0000 2040 0060 e060 6064 6870 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 1020 0030 70b0 3030 3030 3020 4080
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0070 c0c0 c0d8 e4c4 f8d8 cdc6 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 0070 c0c0 c0c0 c0c0 c0c8 d0e0 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0067 eb73 6363 6363 0000 0000
+ 0000 0000 0038 5898 181a 1c18 0000 0000
+ 0000 0000 0067 eb73 6363 6363 0000 0000
+ 0000 0000 0000 0000 0040 8000 0000 0000
+ 0000 0000 007c c6c6 c6c6 cc78 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 006e f363 6363 667c 6060 60c0
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 007e c6c6 c6ce d666 0606 0706
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 006c f060 6060 7060 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0078 c4c0 780c 8c78 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0020 60f8 6060 6064 6870 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0063 e363 6367 6b33 0000 0000
+ 0000 0000 0000 0000 0040 8000 0000 0000
+ 0000 0000 0042 e763 6264 6870 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0042 e763 676b 7363 0000 0000
+ 0000 0000 0010 3818 1020 4080 0000 0000
+ 0000 0000 0061 b21c 0c16 2341 0000 0000
+ 0000 0000 0000 0000 0000 4080 0000 0000
+ 0000 0000 0063 e363 6367 6b33 0302 0438
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 007e 860c 1830 61fe 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 1830 3030 3060 3030 3030 3018 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 2020 2020 2020 2020 2020 2020 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3018 1818 180c 1818 1818 1830 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 4c00 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0001 0200 0001 0306 7f98 30e0 0000 0000
+ 00c0 6060 e0e0 6060 e060 6038 0000 0000
+ 0001 0200 0001 0306 7f98 30e0 0000 0000
+ c0c0 6060 e0e0 6060 e060 6038 0000 0000
+ 0000 7cc2 c2c4 c0c0 c0c2 c478 1010 2000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0010 7fb0 b030 3e30 3030 30ff 0000 0000
+ 0000 8080 0000 0000 0040 8000 0000 0000
+ 1300 70b8 bc2e 2723 2120 20c0 0000 0000
+ 0000 6040 4040 40c0 c0c0 4040 0000 0000
+ 0000 3c46 c3c3 c3c3 c3c2 4438 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 61e1 6161 6161 6365 6931 0000 0000
+ 0000 8080 8080 8080 80a0 c080 0000 0000
+ 0008 1000 007e c6c6 c6ce d766 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 0010 0800 007e c6c6 c6ce d766 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 1028 4400 007e c6c6 c6ce d766 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 0000 2400 007e c6c6 c6ce d766 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 0032 4c00 007e c6c6 c6ce d766 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 1824 2418 007e c6c6 c6ce d766 0000 0000
+ 0000 0000 0000 0000 0080 0000 0000 0000
+ 0000 0000 007c c4c0 c0c4 c870 1010 2000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0008 1000 007c c4c8 d0e2 c478 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0020 1000 007c c4c8 d0e2 c478 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 1028 4400 007c c4c8 d0e2 c478 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 4800 007c c4c8 d0e2 c478 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0020 4000 0060 e060 6064 6870 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0040 2000 0060 e060 6064 6870 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 2050 8800 0060 e060 6064 6870 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 9000 0060 e060 6064 6870 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0019 2600 0067 eb73 6363 6363 0000 0000
+ 0000 0000 0000 0000 0040 8000 0000 0000
+ 0008 1000 007c c6c6 c6c6 cc78 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0020 1000 007c c6c6 c6c6 cc78 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 1028 4400 007c c6c6 c6c6 cc78 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 2400 007c c6c6 c6c6 cc78 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0032 4c00 007c c6c6 c6c6 cc78 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0008 1000 0063 e363 6367 6b33 0000 0000
+ 0000 0000 0000 0000 0040 8000 0000 0000
+ 0010 0800 0063 e363 6367 6b33 0000 0000
+ 0000 0000 0000 0000 0040 8000 0000 0000
+ 0814 2200 0063 e363 6367 6b33 0000 0000
+ 0000 0000 0000 0000 0040 8000 0000 0000
+ 0000 2400 0063 e363 6367 6b33 0000 0000
+ 0000 0000 0000 0000 0040 8000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 1e33 3333 3631 3131 33e6 0000 0000
+ 0000 0000 0000 0000 8080 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0010 2040 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0001 0200 0001 0306 7f98 30e1 0000 0000
+ 00c0 7f61 e0e0 7c60 e060 61fe 0000 0000
+ 0000 3d42 c7cb cbd3 d3e2 44b8 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 007d c6c6 c6cf d663 0000 0000
+ 0000 0000 00e0 2040 8010 20c0 0000 0000
+ 0000 0000 007c c6ce d6e6 cc78 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0808 0008 1830 6060 623c 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 6060 0060 6060 6060 6060 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0009 1224 4824 1209 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0024 1209 0409 1224 0000 0000
+ 0000 0000 0000 0000 8000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0001 0200 0001 0306 7f98 30e0 0000 0000
+ 00c0 6060 e0e0 6060 e060 6038 0000 0000
+ 0001 0200 0001 0306 7f98 30e0 0000 0000
+ 00c0 6060 e0e0 6060 e060 6038 0000 0000
+ 4c00 3c46 c3c3 c3c3 c3c2 4438 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3f47 c3c3 c3c3 c3c3 473b 0000 0000
+ 0000 f808 0000 e000 0004 08f0 0000 0000
+ 0000 0000 007d c6c6 c6c7 ce79 0000 0000
+ 0000 0000 00e0 2040 8010 20c0 0000 0000
+ 0000 0000 0000 7f00 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 7f00 0000 0000 0000 0000
+ 0000 0000 0000 e000 0000 0000 0000 0000
+ 0000 2448 6c6c 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3636 1224 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 2040 6060 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 3030 1020 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 2400 0063 e363 6367 6b33 0302 0438
+ 0000 0000 0000 0000 0000 0000 0000 0000
+ 0000 0000 0000 0070 98ce 6438 0000 0000
+ 0000 0000 0000 0000 0000 0000 0000 0000
diff --git a/projects/software/supervisor.tal b/projects/software/supervisor.tal
@@ -148,12 +148,12 @@ RTN
( working stack )
#0010 .Screen/y DEO2
DUP2 #0018 ** #0010 ++ .Screen/x DEO2
- DUP #fe00 LDA ( ptr ) EQU #41 + STH
+ DUP #fe00 LDA ( ptr ) EQU #4b + STH
DUP2 #fe01 ++ LDA STHr ;draw-byte JSR2
( return stack )
#0028 .Screen/y DEO2
DUP2 #0018 ** #0010 ++ .Screen/x DEO2
- DUP #ff00 LDA ( ptr ) EQU #41 + STH
+ DUP #ff00 LDA ( ptr ) EQU #4b + STH
DUP2 #ff01 ++ LDA STHr ;draw-byte JSR2
INC2 GTH2k ,&wst JCN
POP2 POP2