diff --git a/blk/752 b/blk/752 index b70ebe0..0b7e1ae 100644 --- a/blk/752 +++ b/blk/752 @@ -4,3 +4,4 @@ ; : PC H@ ORG @ - BIN( @ + ; : A, C, ; +: A,, SPLITB A, A, ; diff --git a/blk/812 b/blk/812 index 6c028e2..2a75392 100644 --- a/blk/812 +++ b/blk/812 @@ -1,10 +1,16 @@ +( Registers. SP -> PSP DX -> RSP CX -> IP ) H@ ORG ! -JMPs, L1 FWRs ( start ) -L2 ( msg ) BSET ," Hello World!" 0 A, -L1 FSET ( start ) -SI L2 @ ( msg ) MOVxi, AH 0x0e MOVri, ( print char ) -L1 BSET ( loop ) LODSB, AL AL ORrr, ( end of str? ) -JZ, L2 FWRs ( next ) 0x10 INT, ( print char ) -JMPs, L1 ( loop ) BWR -L2 FSET ( next ) AH 0 MOVri, 0x16 INT, ( read kbd ) -AH 0x0e MOVri, 0x10 INT, ( spit read char ) HLT, ( done ) +JMPn, 0 A,, ( 00, main ) JMPn, 0 A,, ( 03, find ) +0 A,, ( 06, unused ) 0 A,, ( 08, LATEST ) +0 A, ( 0a, unused ) JMPn, 0 A,, ( 0b, cellWord ) +JMPn, 0 A,, ( 0e compiledWord ) JMPn, 0 A,, ( 11, pushRS ) +JMPn, 0 A,, ( 14, popRS ) +JMPn, 0 A,, ( 17, nativeWord ) +JMPn, 0 A,, ( 1a, next ) JMPn, 0 A,, ( 1d, chkPS ) +0 A, 0 A, ( 20, numberWord ) 0 A, 0 A, ( 22, litWord ) +0 A, 0 A, ( 24, addrWord ) 0 A, 0 A, ( 26, unused ) +0 A, 0 A,, ( unused ) +JMPn, 0 A,, ( 2b, doesWord ) 0 A, 0 A, ( 2e, unused ) +0 A, 0 A,, ( unused ) +JMPn, 0 A,, ( 33, execute ) 0 A, 0 A, ( unused ) +0 A, 0 A,, ( unused ) diff --git a/blk/813 b/blk/813 new file mode 100644 index 0000000..0192d43 --- /dev/null +++ b/blk/813 @@ -0,0 +1,3 @@ +PC 3 - ORG @ 1+ ! ( main ) + AH 0x0e MOVri, ( print char ) AL 'X' MOVri, 0x10 INT, + HLT, diff --git a/recipes/pcat/xcomp.fs b/recipes/pcat/xcomp.fs index dc2fb4e..bcfa300 100644 --- a/recipes/pcat/xcomp.fs +++ b/recipes/pcat/xcomp.fs @@ -1,4 +1,4 @@ 750 LOAD -812 LOAD +812 813 LOADR ORG @ 256 /MOD 2 PC! 2 PC! H@ 256 /MOD 2 PC! 2 PC!