M etc/block8.chr => etc/block8.chr +0 -0
A src/font.tal => src/font.tal +97 -0
@@ 0,0 1,97 @@
+@font
+0000 0000 0000 0000
+1010 1010 1000 1000
+2828 0000 0000 0000
+44fe 4444 44fe 4400
+107e 807c 02fc 1000
+0044 0810 2044 0000
+7884 8864 9a84 7a00
+1020 0000 0000 0000
+2040 4040 4040 2000
+0804 0404 0404 0800
+0044 2810 2844 0000
+0010 107c 1010 0000
+0000 0000 0010 2000
+0000 007c 0000 0000
+0000 0000 0000 1000
+0204 0810 2040 8000
+7c82 8282 8282 7c00
+3010 1010 1010 3800
+7c82 027c 8080 fe00
+7c82 021c 0282 7c00
+2242 82fe 0202 0200
+fe80 807c 0282 7c00
+7c82 80fc 8282 7c00
+fe82 0408 0810 1000
+7c82 827c 8282 7c00
+7c82 827e 0202 0200
+0000 1000 1000 0000
+0000 1000 1010 2000
+0008 1020 1008 0000
+0000 7c00 7c00 0000
+0010 0804 0810 0000
+7c82 820c 1000 1000
+7c82 92aa aa92 6400
+7c82 82fe 8282 8200
+fc82 82fc 8282 fc00
+7c82 8080 8082 7c00
+fc82 8282 8282 fc00
+fe80 80f0 8080 fe00
+fe80 80f0 8080 8000
+7c82 808e 8282 7c00
+8282 82fe 8282 8200
+3810 1010 1010 3800
+0602 0202 0282 7c00
+8284 88f0 8884 8200
+8080 8080 8080 fe00
+ec92 9292 9292 9200
+c2a2 a292 8a8a 8600
+7c82 8282 8282 7c00
+fc82 82fc 8080 8000
+7c82 8282 8a84 7a00
+fc82 82fc 8282 8200
+7c82 807c 0282 7c00
+fe10 1010 1010 1000
+8282 8282 8286 7a00
+8282 8282 4428 1000
+9292 9292 9292 ec00
+8244 2810 2844 8200
+8282 4428 1010 1000
+fe02 0c10 6080 fe00
+6040 4040 4040 6000
+8040 2010 0804 0200
+0c04 0404 0404 0c00
+1028 0000 0000 0000
+0000 0000 0000 fe00
+1008 0000 0000 0000
+0000 7c02 7e82 7e00
+0000 fc82 fc82 fc00
+0000 7c82 8082 7c00
+0000 027e 8282 7e00
+0000 7c82 fc80 7e00
+0000 7c82 e080 8000
+0000 7c82 7e02 fc00
+0000 80fc 8282 8200
+0000 1000 1010 1000
+0000 0200 0282 7c00
+0000 8284 f884 8200
+0000 8080 8080 7e00
+0000 6c92 9292 9200
+0000 bcc2 8282 8200
+0000 7c82 8282 7c00
+0000 fc82 fc80 8000
+0000 7c82 7e02 0200
+0000 bcc2 8080 8000
+0000 7e80 7c02 fc00
+0000 fe10 1010 1000
+0000 8282 8282 7c00
+0000 8282 4428 1000
+0000 9292 9292 6c00
+0000 8244 3844 8200
+0000 8282 7e02 7c00
+0000 fe02 7c80 fe00
+2040 4080 4040 2000
+1010 1010 1010 1000
+0804 0402 0404 0800
+0000 0032 4c00 0000
+0000 0000 0000 0000
M src/manifest.tal => src/manifest.tal +6 -5
@@ 3,11 3,12 @@
&name "Nasu $1
&date "2022-06-28 $1
&menu
- 04 "File $1
+ 05 "File $1
01 'n :file-new "New $1
01 'r :file-rename "Rename $1
01 'o :file-open "Open $1
01 's :file-save "Save $1
+ 01 'p :save-theme "SaveTheme $1
04 "Edit $1
01 'c :edit-copy "Copy $1
01 'v :edit-paste "Paste $1
@@ 62,7 63,7 @@ JMP2r
.Mouse/y DEI2 DUP2 .cursor/y STZ2 .Screen/y DEO2
( draw new cursor )
;hand-icn .Screen/addr DEO2
- #4f .Mouse/state DEI #00 NEQ ADD .Screen/sprite DEO
+ #42 .Mouse/state DEI #00 NEQ ADD .Screen/sprite DEO
( when touch cat )
.Mouse/state DEI #00 EQU ,&no-touch-cat JCN
.Mouse/y DEI2 #0008 GTH2 ,&no-touch-cat JCN
@@ 111,7 112,7 @@ JMP2r
( hide ) ;draw-menu/sel LDA #00 ;draw-sub JSR2
#ff ;draw-menu/sel STA
;draw-menu JSR2
- ;redraw JSR2
+ ;redraw-all JSR2
JMP2r
@@ 124,7 125,7 @@ JMP2r
DUP #00 ;draw-sub JSR2
&no-clear
POP
- ( draw application ) ;redraw JSR2
+ ( draw application ) ;redraw-all JSR2
( unselect sub ) #ff ;draw-sub/sel STA
( select cat ) DUP ;draw-menu/sel STA
( draw sub ) #ff ;draw-sub JSR2
@@ 298,7 299,7 @@ JMP2r
LDA2k SWP2
#0004 ADD2 STH2k ;draw-str JSR2
( fill )
- #0b STH2r ;slen JSR2 NIP SUB #00
+ #0c STH2r ;slen JSR2 NIP SUB #00
&loop
#20 ;draw-chr JSR2
INC GTHk ,&loop JCN
M src/nasu.tal => src/nasu.tal +24 -62
@@ 45,7 45,7 @@
#0caf .System/b DEO2
( size )
#0122 .Screen/width DEO2
- #0100 .Screen/height DEO2
+ #00e8 .Screen/height DEO2
( vectors )
;on-console .Console/vector DEO2
;on-button .Controller/vector DEO2
@@ 73,17 73,7 @@
.tileview/x1 LDZ2 .tileview/y2 LDZ2 #0008 ADD2 #0100 #0008 ;toolview ;set-size JSR2
( static drawings )
;load-theme JSR2
- .frame/x1 LDZ2 #0009 SUB2 .frame/y1 LDZ2 #0030 ADD2 #20 #10 ;frame-icns ;draw-frame JSR2
- ( spacers )
- ;spacer-icn .Screen/addr DEO2
- .frame/x1 LDZ2 #007b ADD2 .Screen/x DEO2
- .frame/y1 LDZ2 #0030 ADD2 .Screen/y DEO2
- #01 .Screen/sprite DEO
- ;spacer-icn .Screen/addr DEO2
- .frame/x1 LDZ2 #007b ADD2 .Screen/x DEO2
- .frame/y1 LDZ2 #00b8 ADD2 .Screen/y DEO2
- #21 .Screen/sprite DEO
- #00 .Screen/auto DEO
+ ;draw-once JSR2
( let's begin! )
;file-new JSR2
;menu-init JSR2
@@ 593,6 583,10 @@ JMP2r
JMP2r
+@redraw-all ( -- )
+
+ ;draw-once JSR2
+
@redraw ( -- )
;draw-toolview JSR2
@@ 1002,6 996,22 @@ JMP2r
JMP2r
+@draw-once ( -- )
+
+ .frame/x1 LDZ2 #0009 SUB2 .frame/y1 LDZ2 #0030 ADD2 #20 #10 ;frame-icns ;draw-frame JSR2
+ ( spacers )
+ ;spacer-icn .Screen/addr DEO2
+ .frame/x1 LDZ2 #007b ADD2 .Screen/x DEO2
+ .frame/y1 LDZ2 #0030 ADD2 .Screen/y DEO2
+ #01 .Screen/sprite DEO
+ ;spacer-icn .Screen/addr DEO2
+ .frame/x1 LDZ2 #007b ADD2 .Screen/x DEO2
+ .frame/y1 LDZ2 #00b8 ADD2 .Screen/y DEO2
+ #21 .Screen/sprite DEO
+ #00 .Screen/auto DEO
+
+JMP2r
+
( drawing primitives )
@draw-text ( text* color -- )
@@ 1094,7 1104,6 @@ JMP2r
&no-nametable
#00 .state/changed STZ ;draw-state JSR2
- ;save-theme JSR2
JMP2r
@@ 1405,56 1414,9 @@ JMP2r
( br ) 00ff 0000 0000 0000
( mc ) 4080 0000 0000 0000
-@font ( block8 )
- 0000 0000 0000 0000 1010 1010 1000 1000
- 2828 0000 0000 0000 44fe 4444 44fe 4400
- 107e 807c 02fc 1000 0044 0810 2044 0000
- 7884 8864 9a84 7a00 1020 0000 0000 0000
- 2040 4040 4040 2000 0804 0404 0404 0800
- 0044 2810 2844 0000 0010 107c 1010 0000
- 0000 0000 0010 2000 0000 007c 0000 0000
- 0000 0000 0000 1000 0204 0810 2040 8000
- 7c82 8282 8282 7c00 3010 1010 1010 3800
- 7c82 027c 8080 fe00 7c82 021c 0282 7c00
- 2242 82fe 0202 0200 fe80 807c 0282 7c00
- 7c82 80fc 8282 7c00 fe82 0408 0810 1000
- 7c82 827c 8282 7c00 7c82 827e 0202 0200
- 0000 1000 1000 0000 0000 1000 1010 2000
- 0008 1020 1008 0000 0000 7c00 7c00 0000
- 0010 0804 0810 0000 7c82 820c 1000 1000
- 7c82 92aa aa92 6400 7c82 82fe 8282 8200
- fc82 82fc 8282 fc00 7c82 8080 8082 7c00
- fc82 8282 8282 fc00 fe80 80f0 8080 fe00
- fe80 80f0 8080 8000 7c82 808e 8282 7c00
- 8282 82fe 8282 8200 3810 1010 1010 3800
- 0602 0202 0282 7c00 8284 88f0 8884 8200
- 8080 8080 8080 fe00 c6aa 9292 9292 9200
- c2a2 a292 8a8a 8600 7c82 8282 8282 7c00
- fc82 82fc 8080 8000 7c82 8282 8a84 7a00
- fc82 82fc 8282 8200 7c82 807c 0282 7c00
- fe10 1010 1010 1000 8282 8282 8286 7a00
- 8282 8282 4428 1000 9292 9292 92aa c600
- 8244 2810 2844 8200 8282 4428 1010 1000
- fe02 0c10 6080 fe00 6040 4040 4040 6000
- 8040 2010 0804 0200 0c04 0404 0404 0c00
- 1028 0000 0000 0000 0000 0000 0000 fe00
- 1008 0000 0000 0000 0000 7c02 7e82 7e00
- 0000 fc82 fc82 fc00 0000 7c82 8082 7c00
- 0000 0202 7e82 7e00 0000 7c82 fc80 7e00
- 0000 7c82 e080 8000 0000 7c82 7e02 fc00
- 0000 8080 fc82 8200 0000 1000 1010 1000
- 0000 fe02 0282 7c00 0000 8284 f884 8200
- 0000 8080 8080 7e00 0000 6c92 9292 9200
- 0000 bcc2 8282 8200 0000 7c82 8282 7c00
- 0000 fc82 fc80 8000 0000 7c82 7e02 0200
- 0000 bcc2 8080 8000 0000 7e80 7c02 fc00
- 0000 fe10 1010 1000 0000 8282 8282 7c00
- 0000 8282 4428 1000 0000 9292 9292 6c00
- 0000 8244 3844 8200 0000 8282 7e02 7c00
- 0000 fe02 7c80 fe00 2040 4080 4040 2000
- 1010 1010 1010 1000 0804 0402 0404 0800
- 0000 0032 4c00 0000 0000 0000 0000 0000
+
+~src/font.tal
~src/manifest.tal
|8000