Files

55 lines
1.2 KiB
Tal

( test program to verify the correctness of graphics and input on ESOP )
~esop-lib-macro.tal
|0100
;on-frame SETSCRVEC
#1a #20 ( mv-x mv-y )
BRK
@on-frame
( drawing static strings should always end with POP2 )
#00 #0c ;longtxt ;draw-long-str JSR2 POP2
DATETIME-COMPAT ( get datetime info into #00c0 )
#04 #04 ( year-x year-y -- )
.DateTime/year LDZ2 ( year-x year-y year* -- )
;print-dec JSR2 ( mv-x mv-y year-x year-y -- )
LIT '. ;putc JSR2
.DateTime/month LDZ
;print-dec2-byte JSR2
LIT '. ;putc JSR2
.DateTime/day LDZ
;print-dec2-byte JSR2
LIT 20 ;putc JSR2
.DateTime/hour LDZ
;print-dec2-byte JSR2
LIT ': ;putc JSR2
.DateTime/minute LDZ
;print-dec2-byte JSR2
LIT ': ;putc JSR2
.DateTime/second LDZ
;print-dec2-byte JSR2
POP2 ( mv-x mv-y -- )
;moveme ;draw-str JSR2
#02 #2b ;addr ;draw-str JSR2 POP2
SWP #20 SUB SWP ( restore x coord between frames )
;&adv KP-A JMPKEY
;&back KP-B JMPKEY
BRK
&adv
SWP INC DBGBYTE SWP
BRK
&back
SWP DEC DBGBYTE SWP
BRK
@moveme "MOVE 20 "ME! 00
@addr "SR.HT/~LUXFERRE/ESOP 00
@longtxt "HELLO 20 "FROM 20 "ESOP, 20 "NEW 20 "PHONE 20 "RUNTIME 00
( include ESOP stdlib routines )
~esop-lib-subs.tal