mirror of
https://github.com/hsoft/collapseos.git
synced 2024-11-27 16:28:06 +11:00
forth: add word ".X"
This commit is contained in:
parent
549cf74e9d
commit
6314c60ede
@ -50,7 +50,7 @@
|
|||||||
: / /MOD SWAP DROP ;
|
: / /MOD SWAP DROP ;
|
||||||
: MOD /MOD DROP ;
|
: MOD /MOD DROP ;
|
||||||
|
|
||||||
( Format decimals )
|
( Format numbers )
|
||||||
( TODO FORGET this word )
|
( TODO FORGET this word )
|
||||||
: PUSHDGTS
|
: PUSHDGTS
|
||||||
999 SWAP ( stop indicator )
|
999 SWAP ( stop indicator )
|
||||||
@ -73,3 +73,25 @@
|
|||||||
EMIT
|
EMIT
|
||||||
AGAIN
|
AGAIN
|
||||||
;
|
;
|
||||||
|
|
||||||
|
: PUSHDGTS
|
||||||
|
999 SWAP ( stop indicator )
|
||||||
|
DUP 0 = IF '0' EXIT THEN ( 0 is a special case )
|
||||||
|
BEGIN
|
||||||
|
DUP 0 = IF DROP EXIT THEN
|
||||||
|
16 /MOD ( r q )
|
||||||
|
SWAP ( r q )
|
||||||
|
DUP 9 > IF 10 - 'a' +
|
||||||
|
ELSE '0' + THEN ( q d )
|
||||||
|
SWAP ( d q )
|
||||||
|
AGAIN
|
||||||
|
;
|
||||||
|
|
||||||
|
: .X ( n -- )
|
||||||
|
( For hex display, there are no negatives )
|
||||||
|
PUSHDGTS
|
||||||
|
BEGIN
|
||||||
|
DUP 'f' > IF DROP EXIT THEN ( stop indicator, we're done )
|
||||||
|
EMIT
|
||||||
|
AGAIN
|
||||||
|
;
|
||||||
|
@ -147,6 +147,8 @@ KEY input, however, is direct. Regardless of the input buffer's state, KEY will
|
|||||||
return the next typed key.
|
return the next typed key.
|
||||||
|
|
||||||
. n -- Print n in its decimal form
|
. n -- Print n in its decimal form
|
||||||
|
.X n -- Print n in its hexadecimal form. In hex, numbers
|
||||||
|
are never considered negative. "-1 .X -> ffff"
|
||||||
EMIT c -- Spit char c to output stream
|
EMIT c -- Spit char c to output stream
|
||||||
IN> -- a Address of variable containing current pos in input
|
IN> -- a Address of variable containing current pos in input
|
||||||
buffer.
|
buffer.
|
||||||
|
Loading…
Reference in New Issue
Block a user