Browse code

(launcher.tal) Resizes on launch

neauoire authored on 06/02/2022 19:56:42
Showing 1 changed files
... ...
@@ -37,7 +37,7 @@
37 37
 |80 @Controller &vector $2 &button   $1 &key    $1
38 38
 |90 @Mouse      &vector $2 &x        $2 &y      $2 &state  $1 &pad    $3 &scrollx $2 &scrolly $2
39 39
 |a0 @File       &vector $2 &success  $2 &stat   $2 &delete $1 &append $1 &name $2 &length $2 &read $2 &write $2
40
-|b0 @DateTime   &year   $2 &month    $1 &day    $1 &hour   $1 &minute $1 &second $1 &dotw $1 &doty $2 &isdst $1 
40
+|b0 @DateTime   &year   $2 &month    $1 &day    $1 &hour   $1 &minute $1 &second $1 &dotw $1 &doty $2 &isdst $1
41 41
 
42 42
 ( variables )
43 43
 
... ...
@@ -46,7 +46,7 @@
46 46
 @pointer
47 47
 	&x  $2 &y  $2
48 48
 @browser
49
-	&x $2 &y $2 &x2 $2 &y2 $2 
49
+	&x $2 &y $2 &x2 $2 &y2 $2
50 50
 	&sel $1 &last $1 &scroll $1
51 51
 	&lines $1
52 52
 
... ...
@@ -54,9 +54,9 @@
54 54
 
55 55
 |0100 ( -> )
56 56
 
57
-	( theme ) 
58
-	#f079 .System/r DEO2 
59
-	#f0c2 .System/g DEO2 
57
+	( theme )
58
+	#f079 .System/r DEO2
59
+	#f0c2 .System/g DEO2
60 60
 	#f0a4 .System/b DEO2
61 61
 
62 62
 	( vectors )
... ...
@@ -64,6 +64,10 @@
64 64
 	;on-button .Controller/vector DEO2
65 65
 	;on-mouse .Mouse/vector DEO2
66 66
 
67
+	( resize )
68
+	#0200 .Screen/width DEO2
69
+	#0140 .Screen/height DEO2
70
+
67 71
 	( asma debugger )
68 72
 	#0d ;asma/log-level STA
69 73
 
... ...
@@ -145,18 +149,18 @@ BRK
145 149
 	.Controller/button DEI
146 150
 	DUP #10 ! ,&no-up JCN
147 151
 		.browser/sel LDZ #00 = ,&no-up JCN
148
-		.browser/sel LDZ #01 - ;select-file JSR2 
152
+		.browser/sel LDZ #01 - ;select-file JSR2
149 153
 		;follow-selection JSR2
150 154
 		POP BRK
151 155
 		&no-up
152 156
 	DUP #20 ! ,&no-down JCN
153
-		.browser/sel LDZ INC .browser/lines LDZ = ,&no-down JCN 
154
-		.browser/sel LDZ INC ;select-file JSR2 
157
+		.browser/sel LDZ INC .browser/lines LDZ = ,&no-down JCN
158
+		.browser/sel LDZ INC ;select-file JSR2
155 159
 		;follow-selection JSR2
156 160
 		POP BRK
157 161
 		&no-down
158 162
 	DUP #01 ! ,&no-a JCN
159
-		.browser/sel LDZ ;run-file JSR2 
163
+		.browser/sel LDZ ;run-file JSR2
160 164
 		POP BRK
161 165
 		&no-a
162 166
 	POP
... ...
@@ -208,8 +212,8 @@ RTN
208 212
 	#01 ;draw-browser JSR2
209 213
 
210 214
 	( draw mascot )
211
-	#0010 #0010 #0060 #0060 
212
-	;mascot-icn [ .browser/sel LDZ #03 AND TOS #0480 ** ++ ] #01 
215
+	#0010 #0010 #0060 #0060
216
+	;mascot-icn [ .browser/sel LDZ #03 AND TOS #0480 ** ++ ] #01
213 217
 		;draw-icn JSR2
214 218
 
215 219
 	( draw position )
... ...
@@ -240,14 +244,14 @@ RTN
240 244
 
241 245
 	STH
242 246
 	( more lines than visible )
243
-	.browser/lines LDZ LINES-COUNT 
247
+	.browser/lines LDZ LINES-COUNT
244 248
 	DUP2 > ,&can-scroll JCN
245 249
 		POPr POP2 RTN
246 250
 		&can-scroll
247 251
 	( less than max scroll )
248 252
 	- INC STHkr > ,&valid-scroll JCN
249 253
 		POPr RTN
250
-		&valid-scroll 
254
+		&valid-scroll
251 255
 	#00 ;draw-browser JSR2
252 256
 	STHr .browser/scroll STZ
253 257
 	#01 ;draw-browser JSR2
... ...
@@ -268,14 +272,14 @@ RTN
268 272
 			( assemble tal file )
269 273
 			DUP2 ;&output-path ;scpy JSR2
270 274
 			;&rom-ext ;&output-path ;scat JSR2
271
-			;&output-path ;asma-assemble-file JSR2 
275
+			;&output-path ;asma-assemble-file JSR2
272 276
 			;load-dir JSR2
273 277
 			;redraw JSR2
274 278
 			RTN
275 279
 			&no-tal
276 280
 		POP2 RTN
277 281
 		&valid
278
-	;load-rom JSR2 
282
+	;load-rom JSR2
279 283
 
280 284
 RTN
281 285
 	&tal-ext ".tal $1
... ...
@@ -298,9 +302,9 @@ RTN
298 302
 	STH
299 303
 
300 304
 	( draw hand )
301
-	.browser/x LDZ2 #0018 -- .browser/y LDZ2 
302
-	.browser/sel LDZ .browser/scroll LDZ - TOS 10** ++ 
303
-	#0010 #0010 
305
+	.browser/x LDZ2 #0018 -- .browser/y LDZ2
306
+	.browser/sel LDZ .browser/scroll LDZ - TOS 10** ++
307
+	#0010 #0010
304 308
 		;hand-icn STHkr #02 * ;draw-icn JSR2
305 309
 	( draw files )
306 310
 	LINES-COUNT #00
... ...
@@ -310,7 +314,7 @@ RTN
310 314
 		( has file )
311 315
 		.browser/x LDZ2 .Screen/x DEO2
312 316
 		#00 OVR 10** .browser/y LDZ2 ++ .Screen/y DEO2
313
-		DUP .browser/scroll LDZ + ;get-entry JSR2 
317
+		DUP .browser/scroll LDZ + ;get-entry JSR2
314 318
 			DUP2 ;get-type JSR2 ;draw-type JSR2
315 319
 			#01 STHkr * ;draw-str JSR2
316 320
 		INC GTHk ,&loop JCN
... ...
@@ -378,7 +382,7 @@ RTN
378 382
 	
379 383
 	AUTO-XADDR
380 384
 	( load ) STH .Screen/addr DEO2 ,&height STR2 ,&width STR2 ,&y STR2 ,&x STR2
381
-	,&height LDR2 #0000 
385
+	,&height LDR2 #0000
382 386
 	&ver
383 387
 		( save ) DUP2 ,&y LDR2 ADD2 .Screen/y DEO2
384 388
 		,&x LDR2 .Screen/x DEO2
... ...
@@ -421,7 +425,7 @@ RTN
421 425
 	#0f AND ,&parse JSR STHr ,draw-char JSR
422 426
 
423 427
 RTN
424
-	&parse ( byte -- char ) DUP #09 GTH ,&above JCN #30 ADD JMP2r 
428
+	&parse ( byte -- char ) DUP #09 GTH ,&above JCN #30 ADD JMP2r
425 429
 	&above #57 ADD JMP2r
426 430
 
427 431
 @draw-char ( char color -- )
... ...
@@ -440,8 +444,8 @@ JMP2r
440 444
 
441 445
 @load-theme ( -- )
442 446
 
443
-	;theme-txt .File/name DEO2 
444
-	#0006 .File/length DEO2 
447
+	;theme-txt .File/name DEO2
448
+	#0006 .File/length DEO2
445 449
 	#fffa .File/read DEO2
446 450
 
447 451
 	.File/success DEI2 #0006 !! ,&ignore JCN
... ...
@@ -457,31 +461,25 @@ RTN
457 461
 
458 462
 @print-str ( string* -- )
459 463
 
460
-	#0001 SUB2 
464
+	#0001 SUB2
461 465
 	&while
462
-		INC2 LDAk DUP #18 DEO ,&while JCN 
466
+		INC2 LDAk DUP #18 DEO ,&while JCN
463 467
 	POP2
464 468
 
465 469
 JMP2r
466 470
 
467 471
 @print-hex ( value* -- )
468 472
 
469
-	SWP ,&byte JSR 
473
+	SWP ,&byte JSR
470 474
 	&byte ( byte -- )
471 475
 		STHk #04 SFT ,&parse JSR #18 DEO
472 476
 		STHr #0f AND ,&parse JSR #18 DEO
473 477
 	JMP2r
474
-	&parse ( byte -- char ) DUP #09 GTH ,&above JCN #30 ADD JMP2r 
478
+	&parse ( byte -- char ) DUP #09 GTH ,&above JCN #30 ADD JMP2r
475 479
 	&above #57 ADD JMP2r
476 480
 
477 481
 JMP2r
478 482
 
479
-@scat ( src* dst* -- )
480
-
481
-	DUP2 ,slen JSR ++ ,scpy JSR
482
-
483
-JMP2r
484
-
485 483
 @scmp ( a* b* -- flag )
486 484
 
487 485
 	STH2
... ...
@@ -498,6 +496,26 @@ JMP2r
498 496
 
499 497
 RTN
500 498
 
499
+@scat ( src* dst* -- )
500
+
501
+	DUP2 ,slen JSR ADD2 ,scpy JSR
502
+
503
+JMP2r
504
+
505
+@slen ( str* -- len* )
506
+
507
+	DUP2 ,scap JSR SWP2 SUB2
508
+
509
+JMP2r
510
+
511
+@scap ( str* -- end* )
512
+
513
+	LDAk #00 NEQ JMP JMP2r
514
+	&while
515
+		INC2 LDAk ,&while JCN
516
+
517
+JMP2r
518
+
501 519
 @scpy ( src* dst* -- )
502 520
 	
503 521
 	STH2
... ...
@@ -509,19 +527,6 @@ RTN
509 527
 
510 528
 JMP2r
511 529
 
512
-@scap ( str* -- str-end* )
513
-
514
-	( clamp ) LDAk #00 ! JMP RTN
515
-	&while INC2 LDAk ,&while JCN
516
-
517
-RTN
518
-
519
-@slen ( str* -- len* )
520
-
521
-	DUP2 ,scap JSR SWP2 --
522
-
523
-JMP2r
524
-
525 530
 @pointer-icn
526 531
 	80c0 e0f0 f8e0 1000
527 532
 @hand-icn
... ...
@@ -558,10 +563,10 @@ JMP2r
558 563
 
559 564
 ~projects/library/check-rom.tal
560 565
 ~projects/library/load-rom.tal
561
-
562 566
 ~projects/assets/mascot0cx0c.tal
563 567
 ~projects/assets/msx01x02.tal
564 568
 
569
+( directory memory )
565 570
 @dir
566 571
 	&path ". $1
567 572
 	&length $2