| skipsynclines on |
skipsynclines on |
| variable out-nls \ newlines in output (for output sync lines) |
variable out-nls \ newlines in output (for output sync lines) |
| 0 out-nls ! |
0 out-nls ! |
| |
variable store-optimization \ use store optimization? |
| |
store-optimization off |
| |
|
| |
|
| : th ( addr1 n -- addr2 ) |
: th ( addr1 n -- addr2 ) |
| cells + ; |
cells + ; |
| |
|
| : store-single ( item -- ) |
: store-single ( item -- ) |
| >r |
>r |
| r@ same-as-in? |
store-optimization @ r@ same-as-in? and if |
| if |
r@ item-in-index 0= r@ item-out-index 0= xor if |
| r@ item-in-index 0= r@ item-out-index 0= xor |
|
| if |
|
| ." IF_" r@ item-stack @ stack-pointer 2@ type |
." IF_" r@ item-stack @ stack-pointer 2@ type |
| ." TOS(" r@ really-store-single ." );" cr |
." TOS(" r@ really-store-single ." );" cr |
| endif |
endif |