|0100 ;tests/end ;tests &l LDA2k JSR2 test INC2 INC2 GTH2k ?&l POP2 POP2 #800f DEO BRK @test ( f -- ) #30 ADD #18 DEO #0a18 DEO JMP2r @tests [ =test-dec1 =test-dec2 =test-dec3 =test-dec4 =test-hex1 =test-hex2 =test-hex3 =test-hex4 ] &end ( @|tests ) @test-dec1 ;dict/dec1 sdec #1234 EQU2 JMP2r @test-dec2 ;dict/dec2 sdec #0123 EQU2 JMP2r @test-dec3 ;dict/dec3 sdec #0000 EQU2 JMP2r @test-dec4 ;dict/dec4 sdec #0000 EQU2 JMP2r @test-hex1 ;dict/hex1 shex #12c0 EQU2 JMP2r @test-hex2 ;dict/hex2 shex #034f EQU2 JMP2r @test-hex3 ;dict/dec3 sdec #0000 EQU2 JMP2r @test-hex4 ;dict/dec4 sdec #0000 EQU2 JMP2r ( @|stdlib ) @pstr ( str* -- ) LDAk ?&w POP2 JMP2r &w LDAk #18 DEO INC2 LDAk ?&w POP2 JMP2r @scap ( str* -- end* ) LDAk ?&w JMP2r &w INC2 LDAk ?&w JMP2r @sput ( chr str* -- ) scap INC2k #00 ROT ROT STA STA JMP2r @slen ( str* -- len* ) DUP2 scap SWP2 SUB2 JMP2r @scat ( src* dst* -- ) scap @scpy ( src* dst* -- ) OVR2 LDA ?&e POP2 POP2 JMP2r &e STH2 &w LDAk STH2kr STA INC2r INC2 LDAk ?&w POP2 #00 STH2r STA JMP2r @sclr ( str* -- ) LDAk ?&w POP2 JMP2r &w STH2k #00 STH2r STA INC2 LDAk ?&w POP2 JMP2r @scmp ( a* b* -- f ) STH2 &l LDAk LDAkr STHr ANDk #00 EQU ?&e NEQk ?&e POP2 INC2 INC2r !&l &e NIP2 POP2r EQU JMP2r @sdec ( str* -- val* ) LIT2r 0000 &w LIT2r 000a MUL2r LITr 00 LDAk #30 SUB STH ADD2r INC2 LDAk ?&w POP2 STH2r JMP2r @shex ( str* -- val* ) LIT2r 0000 &w LITr 40 SFT2r LITr 00 LDAk chex STH ADD2r INC2 LDAk ?&w POP2 STH2r JMP2r @chex ( c -- val|ff ) LIT "0 SUB DUP #09 GTH [ JMP JMP2r ] #27 SUB DUP #0f GTH [ JMP JMP2r ] POP #ff JMP2r ( @|assets ) @dict [ &dec1 "4660 $1 &dec2 "291 $1 &dec3 "0 $1 &dec4 "q2x*63? $1 &hex1 "12c0 $1 &hex2 "34f $1 &hex3 "0 $1 &hex4 "q2x*63? $1 ]