| include glocals.fs |
include glocals.fs |
| |
include debugging.fs |
| |
|
| : localsinfo \ !! only debugging |
: localsinfo \ !! only debugging |
| ." stack: " .s ." locals-size: " locals-size ? ." locals-list" |
." stack: " .s ." locals-size: " locals-size ? ." locals-list" |
| c d |
c d |
| then |
then |
| [ ." locals-size after then:" locals-size @ . cr ] |
[ ." locals-size after then:" locals-size @ . cr ] |
| f drop |
~~ f ~~ drop |
| [ ." ending xxxx" .s cr ] |
[ ." ending xxxx" .s cr ] |
| ; |
; |
| |
|
| [ ." after xthen" localsinfo ] |
[ ." after xthen" localsinfo ] |
| ; |
; |
| |
|
| |
." strcmp1 coming up" cr |
| |
: strcmp1 { addr1 u1 addr2 u2 -- n } |
| |
u1 u2 min 0 ?do |
| |
addr1 c@ addr2 c@ - ?dup if |
| |
unloop exit |
| |
then |
| |
addr1 char+ TO addr1 |
| |
addr2 char+ TO addr2 |
| |
loop |
| |
u1 u2 - ; |
| |
|
| |
: teststrcmp1 |
| |
." lp@:" lp@ . cr |
| |
s" xxx" s" yyy" strcmp1 . cr |
| |
." lp@:" lp@ . cr |
| |
s" xxx" s" xxx" strcmp1 . cr |
| |
." lp@:" lp@ . cr |
| |
s" xxx" s" xxxx" strcmp1 . cr |
| |
." lp@:" lp@ . cr |
| |
s" xxx3" s" xxx2" strcmp1 . cr |
| |
." lp@:" lp@ . cr |
| |
s" " s" " strcmp1 . cr |
| |
." lp@:" lp@ . cr |
| |
." lp@:" lp@ . cr |
| |
." stack:" .s cr |
| |
; |
| |
teststrcmp1 |
| |
|
| |
|
| bye |
bye |