A src/ecosystem.tal => src/ecosystem.tal +52 -0
@@ 0,0 1,52 @@
+@print-manifest ( -- )
+
+ ;manifest/name ;print-str JSR2
+ #0a18 DEO
+ ;print-str JSR2
+ #0a18 DEO
+
+ ;manifest/menu
+ &while
+ ;print-menu JSR2
+ LDAk ,&while JCN
+ POP2
+
+JMP2r
+
+@print-menu ( menu* -- menu* )
+
+ LDAk STH INC2
+ ;print-str JSR2 #0a18 DEO
+ STHr #00
+ &loop
+ #0918 DEO
+ SWP2
+ ;print-mod JSR2
+ ;print-val JSR2
+ INC2 INC2 ;print-str JSR2 #0a18 DEO
+ SWP2
+ INC GTHk ,&loop JCN
+ POP2
+
+JMP2r
+
+@print-mod ( addr* -- addr* )
+
+ INC2
+
+JMP2r
+
+@print-val ( addr* -- addr* )
+
+ INC2
+
+JMP2r
+
+@print-str ( addr* -- addr* )
+
+ &while
+ LDAk #18 DEO
+ INC2 LDAk ,&while JCN
+ INC2
+
+JMP2r
M src/manifest.tal => src/manifest.tal +7 -3
@@ 1,9 1,10 @@
@manifest
- &name "Nasu $1
- &date "2022-06-27 $1
&size &w 0130 &h 00e0
&theme &r 0a6f &g 05cf &b 0caf
+
+ &name "Nasu $1
+ &date "2022-06-27 $1
&menu
04 "File $1
10 'n :file-new "New $1
@@ 18,6 19,7 @@
00 'q :select-brush "Brush $1
00 'w :select-selector "Selector $1
00 'e :select-zoom "Zoom $1
+(
01 00 :select-up "Up $1
02 00 :select-down "Down $1
04 00 :select-left "Left $1
@@ 25,7 27,7 @@
41 00 :select-dech "Decr.Height $1
42 00 :select-inch "Incr.Height $1
44 00 :select-decw "Decr.Width $1
- 48 00 :select-incw "Incr.Width $1
+ 48 00 :select-incw "Incr.Width $1 )
04 "Pick $1
00 '1 :pick-color1 "Color1 $1
00 '2 :pick-color2 "Color2 $1
@@ 35,3 37,5 @@
00 08 :option-erase "Erase $1
00 20 :option-zoom "Zoom $1
00 1b :option-deselect "Deselect $1
+
+ $1
M src/nasu.tal => src/nasu.tal +2 -0
@@ 86,6 86,7 @@
#00 .Screen/auto DEO
( let's begin! )
;file-new JSR2
+ ;print-manifest JSR2
BRK
@@ 1469,6 1470,7 @@ JMP2r
1010 1010 1010 1000 0804 0402 0404 0800
0000 0032 4c00 0000 0000 0000 0000 0000
+~src/ecosystem.tal
~src/manifest.tal
|8000