diff --git a/wipforth.wat b/wipforth.wat index a4b6191..dd2867d 100644 --- a/wipforth.wat +++ b/wipforth.wat @@ -1157,6 +1157,41 @@ ;; DUP 0<> 0BRANCH [-92] \ Loop back to KEY if zero length ;; ; + (data (i32.const 0x0668) + "\00\60\00\00" + "\04WORD\00\00\00" + "\00\00\00\00" + "\18\04\00\00" ;; LIT + "\00\00\00\00" ;; 0 + "\84\07\00\00" ;; KEY + "\f0\05\00\00" ;; TUCK + "\0c\06\00\00" ;; SPACE? + "\b4\04\00\00" ;; 0BRANCH + "\38\00\00\00" ;; 56 + "\f0\05\00\00" ;; TUCK + "\ac\05\00\00" ;; WORDBUF + "\c0\02\00\00" ;; + + "\f0\03\00\00" ;; C! + "\90\02\00\00" ;; 1+ + "\08\02\00\00" ;; DUP + "\18\04\00\00" ;; LIT + "\20\00\00\00" ;; 32 + "\38\03\00\00" ;; >= + "\b4\04\00\00" ;; 0BRANCH + "\08\00\00\00" ;; 56 + "\0c\04\00\00" ;; EXIT + "\a4\04\00\00" ;; BRANCH + "\bc\ff\ff\ff" ;; -68 + "\28\02\00\00" ;; SWAP + "\18\02\00\00" ;; DROP + "\08\02\00\00" ;; DUP + "\5c\03\00\00" ;; 0<> + "\b4\04\00\00" ;; 0BRANCH + "\a4\ff\ff\ff" ;; -92 + "\0c\04\00\00") ;; EXIT + + ;; => 0x80 bytes + ;; : STRING= ( len str1 str2 -- bool ) ;; 2DUP C@ SWAP C@ \ Load a byte from each address ;; = 0BRANCH [48] \ Check for byte mismatch