| Package | Description |
|---|---|
| org.rigwit.forth |
Forth Virtual Machine
|
| org.rigwit.forth.words |
Forth Word Sets.
|
| Modifier and Type | Field and Description |
|---|---|
XT |
VM.lastXT
A reference to the most recent user definition.
|
| Modifier and Type | Method and Description |
|---|---|
XT |
VM.create()
Parses the name from the input stream and create a new user
definition XT adding it to the current word list.
|
XT |
TypedStack.popXT()
Pop an eXecution Token from the stack, returning it as an XT
object.
|
XT |
Dictionary.search(java.lang.String name)
Search the dictionary for a given word name, returning the XT
associated with the word name or
null if not found. |
XT |
WordList.search(java.lang.String name)
Search the word list for a given word, returning the associated
execution token (XT) if found or
null if the word is
not found. |
| Modifier and Type | Method and Description |
|---|---|
void |
Dictionary.add(XT xt)
Add a new Forth word to the current word list.
|
void |
WordList.add(XT xt)
Add a new word to the word list.
|
int |
Kernel.colonDef(XT xt)
The colon definition hander.
|
int |
Kernel.constantDef(XT xt)
The constant definition handler.
|
int |
Kernel.definition(XT xt)
Execute a user definition.
|
int |
Kernel.doesDef(XT xt)
The does definition handler.
|
boolean |
XT.equals(XT other)
Determine if this XT has the same behaviour as another XT.
|
int |
Kernel.execute(XT xt)
Execute the given XT, converting any Java based exceptions into
the equivalent Forth Exceptions.
|
void |
VM.execute(XT xt,
java.lang.String name)
Execute an XT and recover from any error it may report.
|
void |
TypedStack.pushXT(XT xt)
Push an eXecution Token onto the stack.
|
java.lang.String |
Dictionary.search(XT xt)
Search the dictionary for the word name that matches the given
XT behaviour.
|
java.lang.String |
WordList.search(XT target)
Search the word list for the name of a given execution token
(XT) behaviour, returning the associated word name if found
or
null if the XT is not found. |
int |
Kernel.variableDef(XT xt)
The variable definition handler.
|
| Modifier and Type | Method and Description |
|---|---|
void |
CoreWords.abort(XT xt)
Empty the data stack and perform the function of
Quit,
which includes emptying the return stack, without displaying
a message. |
void |
CoreWords.abortQuote(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.abs(XT xt)
Return the absolute value of top (n).
|
void |
CoreWords.accept(XT xt)
Receive a string of at most top (+n1) characters, placing it
at next (c-addr), returns the actual number of character read.
|
void |
CoreWords.actionOf(XT xt)
Interpret:
Stack{"
name delimited by a
space. |
void |
CoreWords.addressUnitBits(XT xt)
Size of one address unit, in bits.
|
void |
CoreWords.again(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.align(XT xt)
If the data-space pointer is not aligned, reserve enough space
to align it.
|
void |
CoreWords.aligned(XT xt)
a-addr is the first aligned address greater than or
equal to addr. |
void |
CoreWords.allot(XT xt)
If
n is greater than zero, reserve n address
units of data space. |
void |
CoreWords.and(XT xt) |
void |
CoreWords.base(XT xt)
Return the address of the special variable containing the
current number-conversion radix.
|
void |
CoreWords.begin(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.bracketCompile(XT xt)
Append the execution semantics of the definition represented
by
xt to the execution semantics of the current
definition. |
void |
CoreWords.bracketTick(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.bufferColon(XT xt)
Skip leading space delimiters.
|
void |
ToolWords.bye(XT xt)
Return control to the host operating system, if any.
|
void |
CoreWords.carageReturn(XT xt)
Cause subsequent output to appear at the beginning of the next
line.
|
void |
CoreWords.CASE(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.cellPlus(XT xt)
Add the size in address units of a cell to
a-addr1,
giving a-addr2. |
void |
CoreWords.cells(XT xt)
n2 is the size in address units of n1 cells. |
void |
CoreWords.character(XT xt)
Return the first character of the next word in the input stream.
|
void |
CoreWords.charComma(XT xt)
Reserve space for one character in the data space and store
char in the space. |
void |
CoreWords.charFetch(XT xt)
Fetch the character (char) stored at top (c-addr).
|
void |
CoreWords.charPlus(XT xt)
Add the size in address units of a character to
c-addr1,
giving c-addr2. |
void |
CoreWords.chars(XT xt)
n2 is the size in address units of n1
characters. |
void |
CoreWords.charStore(XT xt)
Store the character next at top (c-addr).
|
void |
CoreWords.colon(XT xt)
Skip leading space delimiters.
|
void |
CoreWords.colonNoname(XT xt)
Stack[C]{ -- colon-sys}
Stack[S]{ -- xt}
Create an execution token
xt, enter compilation state
and start the current definition, producing colon-sys. |
void |
CoreWords.comma(XT xt)
Reserve one cell of data space and store
x in the cell. |
void |
CoreWords.comment(XT xt)
Compile:
Perform the execution semantics given below.
|
void |
CoreWords.constant(XT xt)
Skip leading space delimiters.
|
void |
CoreWords.count(XT xt)
Return the character string specification for the counted
string stored at
c-addr1. |
void |
CoreWords.countedString(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.create(XT xt)
Skip leading space delimiters.
|
void |
CoreWords.decimal(XT xt)
Set the numeric conversion radix to ten (decimal).
|
int |
CoreWords.defaultDefer(XT xt) |
void |
CoreWords.defer(XT xt)
Stack{"
|
int |
CoreWords.deferDef(XT xt) |
void |
CoreWords.depth(XT xt)
Return the number of single-cell values contained in the
data stack.
|
void |
CoreWords.display(XT xt)
Display top (n) in free field format.
|
void |
CoreWords.displayRight(XT xt)
Display next (n1) right aligned in a field top (n2) characters
wide.
|
void |
ToolWords.displayStack(XT xt)
Copy and display the values currently on the data stack.
|
void |
CoreWords.divide(XT xt)
Divide next (n1) by top (n2), giving a single-cell quotient (n3).
|
void |
CoreWords.divideMod(XT xt)
Divide next (n1) by top (n2), giving the single-cell
remainder (n3) and the single-cell quotient (n4).
|
void |
CoreWords.DO(XT xt)
Place a (do-sys) onto the control-flow stack and append
the initialisation of a
DO-loop control parameters with
an index (top) and limit (next) to the current definition. |
int |
CoreWords.doAbortQuote(XT xt) |
int |
CoreWords.doActionOf(XT xt) |
static int |
CoreWords.doAgain(XT xt) |
int |
CoreWords.doCountedString(XT xt) |
int |
CoreWords.doDo(XT xt)
The runtime action of a
DO,
set up the loop control parameters with index (top) and limit
(next) and continue execution at the next instruction. |
int |
CoreWords.doDoes(XT xt) |
int |
CoreWords.doDotQuote(XT xt) |
static int |
CoreWords.doElse(XT xt)
The runtime action of an
ELSE,
continue execution at the location specified by the XT. |
int |
CoreWords.doEndCase(XT xt) |
static int |
CoreWords.doEndOf(XT xt) |
void |
CoreWords.does(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
int |
CoreWords.doExit(XT xt)
The runtime action for
EXIT,
drop the return address off of the return stack. |
int |
CoreWords.doI(XT xt)
The runtime action for
I,
return a copy of the current (inner most) loop index. |
int |
CoreWords.doIF(XT xt)
The runtime action of an
IF,
if all bits of top (x) are zero, continue execution at the
location specified by the XT, otherwise continue with the next
instruction. |
int |
CoreWords.doIs(XT xt) |
int |
CoreWords.doJ(XT xt)
The runtime action for
J,
return a copy of the next-outer loop index. |
int |
CoreWords.doLeave(XT xt)
The runtime action for
LEAVE,
discard the current loop control parameters and continue
execution immediately following the innermost DO- or
?DO-loop. |
int |
CoreWords.doLiteral(XT xt) |
int |
CoreWords.doLoop(XT xt)
The runtime action for
LOOP,
increment the loop index, if the index is equal to the limit
discard the loop parameters and continue execution immediately
following the loop, otherwise continue execution at the start
of the loop. |
int |
CoreWords.doOf(XT xt) |
int |
CoreWords.doPlusLoop(XT xt)
The runtime action for
+LOOP,
add top (n) to the loop index, if the index did not cross the
boundary between the loop limit minus one and the loop limit,
continue execution at the beginning of the or, otherwise discard
the current loop control parameters and continue execution
immediately following the loop. |
int |
CoreWords.doPostpone(XT xt) |
int |
CoreWords.doQueryDo(XT xt)
The runtime action of a
?DO,
if the index (top) is equal to the limit (next) continue
execution at the first instruction after the loop, otherwise
set up the loop control parameters and continue execution at
the next instruction. |
static int |
CoreWords.doRepeat(XT xt) |
int |
CoreWords.doString(XT xt) |
int |
CoreWords.doTick(XT xt) |
int |
CoreWords.doTo(XT xt) |
void |
CoreWords.dotQuote(XT xt)
Display a string immediately.
|
void |
DoubleWords.doubleUnsigedLess(XT xt)
( ud2 ud1 -- flag )
|
int |
CoreWords.doUnloop(XT xt)
The runtime action for
UNLOOP,
discard the loop-control parameters for the current nesting
level. |
int |
CoreWords.doUntil(XT xt) |
int |
CoreWords.doWhile(XT xt) |
void |
CoreWords.drop(XT xt)
Remove the top value from the stack.
|
void |
ToolWords.dump(XT xt)
Display the contents of top (u) consecutive addresses
starting at next (addr).
|
void |
CoreWords.dup(XT xt)
Duplicate top.
|
void |
TestWords.echoOff(XT xt) |
void |
TestWords.echoOn(XT xt) |
void |
CoreWords.ELSE(XT xt)
Put the location of a new unresolved forward reference (orig2)
onto the control flow stack, appending a jump to the location
specified by the resolution of the forward reference (orig2) to
the current definition, resolving the forward reference (orig1)
to the next instruction.
|
void |
ToolWords.ELSE(XT xt) |
void |
CoreWords.emit(XT xt) |
void |
CoreWords.endCase(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.endOf(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
TestWords.endTest(XT xt) |
void |
CoreWords.environmentQuery(XT xt)
c-addr is the address of a character string and u
is the string's character count. |
void |
CoreWords.equal(XT xt)
Return a flag indicating that next (x1) is bit-for-bit the
same as top (x2).
|
void |
CoreWords.erase(XT xt)
If
u is greater than zero, clear all bits in each of
u consecutive address units of memory beginning at
addr. |
void |
CoreWords.escapedString(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.evaluate(XT xt)
Interpret the string (c-addr u).
|
void |
CoreWords.execute(XT xt)
Remove
xt from the stack and perform the semantics
identified by it. |
void |
CoreWords.exit(XT xt)
Append the action to return control to the calling definition
specified by nest-sys.
|
void |
CoreWords.fetch(XT xt)
Return the value (x) is the value stored at top (a-addr).
|
void |
CoreWords.fill(XT xt)
If
u is greater than zero, store char in each
of u consecutive characters of memory beginning at
c-addr. |
void |
CoreWords.find(XT xt)
Find the definition named in the counted string at
c-addr. |
void |
CoreWords.FLOORED(XT xt)
True if floored division is the default.
|
void |
CoreWords.flooredMixedDivideMod(XT xt)
Divide the double-cell next (d1) by top (n1), giving the
floored quotient (n3) and the remainder (n2).
|
void |
CoreWords.format(XT xt)
Divide the double-cell top (ud1) by the current radix,
returning the quotient (ud2) and converting the remainder
into a character, adding it to the start of the pictured
numeric output string.
|
void |
CoreWords.formatEnd(XT xt)
Drop the double-cell value (xd) and make the pictured numeric
output string available as a character string (c-addr u).
|
void |
CoreWords.formatS(XT xt)
Convert all digits for the double-cell top (ud1) according to
the rule for
# until the quotient is zero, returning
the zero quotient (ud2). |
void |
CoreWords.formatStart(XT xt)
Initialise the pictured numeric output conversion process.
|
void |
CoreWords.here(XT xt)
addr is the data-space pointer. |
void |
CoreWords.hex(XT xt)
Set contents of
BASE to sixteen. |
void |
CoreWords.hold(XT xt)
Add the character (top) to the start of the pictured numeric
output string.
|
void |
CoreWords.holdLength(XT xt)
Size of the pictured numeric output string buffer, in characters.
|
void |
CoreWords.holds(XT xt)
Adds the string (c-addr u) to the start of the pictured
numeric output string.
|
void |
CoreWords.IF(XT xt)
Put the location of a new unresolved forward reference
(orig) onto the control flow stack, appending a branch if top
is zero to the current definition.
|
void |
ToolWords.IF(XT xt) |
void |
CoreWords.immediate(XT xt)
Make the most recent definition an immediate word.
|
void |
CoreWords.invert(XT xt)
Invert all bits of top (x1), giving its logical inverse.
|
void |
CoreWords.is(XT xt) |
void |
ToolWords.javaComment(XT xt) |
void |
CoreWords.key(XT xt)
Receive one character (char), a member of the
implementation-defined character set from the keyboard.
|
void |
CoreWords.leave(XT xt)
Place a forward reference for the
LEAVE XT on the
control-flow stack (underneath the do-sys) to be resolved by
a LOOP or +LOOP and append the action to abort
the current (innermost) DO- or ?DO-loop to the
current definition. |
void |
CoreWords.leftBracket(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.less(XT xt)
Return a flag indicating that next (n2) is less than top (n2).
|
void |
CoreWords.lineComment(XT xt)
Compile:
Perform the execution semantics given below.
|
void |
CoreWords.literal(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.loop(XT xt)
Resolve the destination of all unresolved occurrences of
LEAVE to continue execution at the following word,
append the action to increment the loop index and continue
execution at the start of the loop if the index is less than
the limit, or continue with the following instruction if they
are equal. |
void |
CoreWords.loopIndex(XT xt)
Append the action of returning a copy of the inner loop index
to the current definition.
|
void |
CoreWords.lShift(XT xt)
Return the logical left shift of top (u) bit-places on next
(x1).
|
void |
CoreWords.marker(XT xt)
Skip leading space delimiters.
|
int |
CoreWords.markerDef(XT xt) |
void |
CoreWords.max(XT xt)
Return the grater of next (n1) and top (n2).
|
void |
CoreWords.maxChar(XT xt)
Parse the first character of the next word, placing it on the
stack.
|
void |
CoreWords.maxDouble(XT xt)
Largest usable signed double number.
|
void |
CoreWords.maxInteger(XT xt)
Largest usable signed integer.
|
void |
CoreWords.maxUnsigned(XT xt)
Largest usable unsigned integer.
|
void |
CoreWords.maxUnsignedDouble(XT xt)
Largest usable unsigned double number.
|
void |
CoreWords.min(XT xt)
Return the lesser of next (n1) and top (n2).
|
void |
CoreWords.mixedMultiply(XT xt)
Multiply next (n) by top (n), returning the product (d).
|
void |
CoreWords.mod(XT xt)
Divide next (n1) by top (n2), giving the single-cell
remainder (n3).
|
void |
CoreWords.more(XT xt)
Return a flag indicating that next (n2) is greater than top (n2).
|
void |
CoreWords.move(XT xt)
If
u is greater than zero, copy the contents of
u consecutive address units at addr1 to the
u consecutive address units at addr2. |
void |
CoreWords.multiply(XT xt)
Multiply next (n|u) by top (n|u), returning the product.
|
void |
CoreWords.negate(XT xt)
Negate top (n}, giving its arithmetic inverse (n).
|
void |
ToolWords.nextArg(XT xt)
Get the next argument from the command line, consuming it;
if there is no argument left, return 0 0.
|
void |
CoreWords.nip(XT xt)
Drop the first item below the top of stack.
|
void |
CoreWords.notEqual(XT xt)
Return a flag indicating that next (x1) is not bit-for-bit the
same as top (x2).
|
void |
CoreWords.of(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.onePlus(XT xt)
Add one to top (n|u).
|
void |
CoreWords.oneSubtract(XT xt)
Subtract one (1) from top (n|u}.
|
void |
CoreWords.or(XT xt)
Return the the bit-by-bit inclusive-or of next (x1) with
top (x2).
|
void |
CoreWords.outerLoopIndex(XT xt)
Append the action of returning a copy of the next-outer loop
index to the current definition.
|
void |
CoreWords.over(XT xt)
Place a copy of next on the top of the stack.
|
void |
CoreWords.pad(XT xt)
c-addr is the address of a transient region that can
be used to hold data for intermediate processing. |
void |
CoreWords.padLength(XT xt)
Size of the scratch area pointed to by PAD, in characters.
|
void |
CoreWords.parse(XT xt)
Parse
ccc delimited by the delimiter char. |
void |
CoreWords.parseName(XT xt)
Skip leading space delimiters.
|
void |
CoreWords.pick(XT xt)
Remove top (u), copy the uth element on the stack
to the top of the stack.
|
void |
CoreWords.plus(XT xt)
Add top (n|u) to next (n|u), returning the sum.
|
void |
CoreWords.plusLoop(XT xt)
Resolve the destination of all unresolved occurrences of
LEAVE to continue execution at the following word,
append the action to add (top) to the loop index and continue
execution at the start of the loop if the index does not
cross the limit boundary, or continue with the following
instruction. |
void |
CoreWords.plusStore(XT xt)
Add
n|u to the single-cell number at a-addr. |
void |
CoreWords.postpone(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.queryDo(XT xt)
Place a (do-sys) onto the control-flow stack and append
the initialisation of a
?DO-loop control parameters
with an index (top) and limit (next) to the current definition. |
void |
CoreWords.queryDup(XT xt)
Duplicate top if it is non-zero.
|
void |
CoreWords.quit(XT xt)
Empty the return stack, store zero in
SOURCE-ID if it
is present, make the user input device the input source, and
enter interpretation state. |
void |
CoreWords.recurse(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.refill(XT xt)
Attempt to fill the input buffer from the input source,
returning a true flag if successful.
|
void |
CoreWords.repeat(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.restoreInput(XT xt)
Attempt to restore the input source specification to the state
described by the stack, returning a flag indicating if the
input was not restored.
|
void |
CoreWords.returnFetch(XT xt)
Return a copy of the value on the top of the return stack.
|
void |
CoreWords.returnFrom(XT xt)
Move the top of the return stack to the data stack.
|
void |
CoreWords.returnSize(XT xt)
Maximum size of the return stack, in cells.
|
void |
CoreWords.rightBracket(XT xt)
Enter compilation state.
|
void |
CoreWords.roll(XT xt)
Remove top (u), rotate the items on the stack bringing the
uth item to the top.
|
void |
CoreWords.rot(XT xt)
Rotate the top three stack entries.
|
void |
CoreWords.rShift(XT xt)
Return the logical right shift of top (u) bit-places on next
(x1).
|
void |
CoreWords.saveInput(XT xt)
Save the current state of the input source, for later use by
RESTORE-INPUT, returning a variable number of items
with the number of item on the top of the stack. |
void |
CoreWords.semicolon(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.sign(XT xt)
If top (n) is negative, add a minus sign to the start of the
pictured numeric output string.
|
void |
CoreWords.singleToDouble(XT xt)
Convert top (n) into a double-cell number with the same
numerical value (d).
|
void |
CoreWords.source(XT xt)
Return a string (c-addr u) of the current input buffer.
|
void |
CoreWords.sourceID(XT xt)
Return an indication of the current input source, 0 for a user
input device or -1 for a string.
|
void |
CoreWords.stackSize(XT xt)
Maximum size of the data stack, in cells.
|
void |
TestWords.startTest(XT xt) |
void |
CoreWords.state(XT xt)
a-addr is the address of a cell containing the
compilation-state flag. |
void |
CoreWords.store(XT xt)
Store next (x) at top (a-addr).
|
void |
CoreWords.string(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.stringLength(XT xt)
Maximum size of a counted string, in characters.
|
void |
CoreWords.subtract(XT xt)
Subtract top (n|u) from next (n|u), returning the difference.
|
void |
CoreWords.swap(XT xt)
Exchange the top two stack items.
|
void |
CoreWords.symmetricMixedDivideRemainder(XT xt)
Divide the double-cell next (d1) by top (n1), giving the
symmetric quotient (n3) and the remainder (n2).
|
void |
TestWords.test(XT xt) |
void |
TestWords.testing(XT xt) |
void |
TestWords.testPoint(XT xt) |
void |
CoreWords.THEN(XT xt)
Resolve the forward reference (orig) using the location of the
next instruction.
|
void |
ToolWords.THEN(XT xt) |
void |
CoreWords.tick(XT xt)
Read a name from the input stream and find the name in the
dictionary, returning the corresponding XT.
|
void |
CoreWords.timesDivide(XT xt)
Multiply third (n1) by next (n2) producing the intermediate
double-cell product which is divided by top (n3), returning
the quotient (n4).
|
void |
CoreWords.timesDivideMod(XT xt)
Multiply third (n1) by next (n2) producing a double-cell
intermediate product which is then divided by top (n3), giving
the single-cell remainder (n4) and the single-cell quotient
(n5).
|
void |
CoreWords.to(XT xt)
Interpret:
Stack{i*x "
name delimited by a
space. |
void |
CoreWords.toBody(XT xt)
a-addr is the data-field address corresponding to
xt. |
void |
CoreWords.toIn(XT xt)
Return the address of a special variable containing the offset,
in characters, from the start of the input buffer to the start
of the parse area.
|
void |
CoreWords.toNumber(XT xt)
ud2 is the unsigned result of converting the characters
within the string specified by c-addr1 u1 into digits,
using the number in BASE, and adding each into
ud1 after multiplying ud1 by the number in
BASE. |
void |
CoreWords.toR(XT xt)
Move top (x) to the return stack.
|
void |
CoreWords.tuck(XT xt)
Copy top below next.
|
void |
CoreWords.twoDivide(XT xt)
Return the result of shifting top one bit toward the
least-significant bit, leaving the most-significant bit
unchanged.
|
void |
CoreWords.twoDrop(XT xt)
Drop cell pair
x1 x2 from the stack. |
void |
CoreWords.twoDup(XT xt)
Duplicate cell pair
x1 x2. |
void |
CoreWords.twoFetch(XT xt)
Fetch the cell pair
x1 x2 stored at a-addr. |
void |
CoreWords.twoOver(XT xt)
Copy cell pair
x1 x2 to the top of the stack. |
void |
CoreWords.twoReturnFetch(XT xt)
Copy a cell pair
x1 x2 from the return stack. |
void |
CoreWords.twoRreturnFrom(XT xt)
Transfer cell pair
x1 x2 from the return stack. |
void |
CoreWords.twoStore(XT xt)
Store the cell pair
x1 x2 at a-addr, with
x2 at a-addr and x1 at the next
consecutive cell. |
void |
CoreWords.twoSwap(XT xt)
Exchange the top two cell pairs.
|
void |
CoreWords.twoTimes(XT xt)
Return the result of shifting top (x1) one bit toward the
most-significant bit, filling the vacated least-significant
bit with zero.
|
void |
CoreWords.twoToReturn(XT xt)
Transfer cell pair
x1 x2 to the return stack. |
void |
DoubleWords.twoVariable(XT xt) |
void |
CoreWords.type(XT xt)
If top (u) is greater than zero, display the character string
specified by next (c-addr) and top (u).
|
void |
CoreWords.unloop(XT xt)
Append the action for discarding the loop-control parameters
of the innermost do-loop to the current definition.
|
void |
CoreWords.unsigedMore(XT xt)
Return a flag indicating that next (u1) is greater than top
(u2).
|
void |
CoreWords.unsigendDisplay(XT xt)
Display top (u) in free field format.
|
void |
CoreWords.unsignedDisplayRight(XT xt)
Display next (u) right aligned in a field of top (n) characters
wide.
|
void |
CoreWords.unsignedLess(XT xt)
Return a flag indicating that next (u1) is less than top (u2).
|
void |
CoreWords.unsignedMixedDivideMod(XT xt)
Divide the double-cell next (ud) by top (u1), giving the
quotient (u3) and the remainder (u2).
|
void |
CoreWords.unsignedMixedMultiply(XT xt)
Multiply next (u1) by top (u2), giving an unsigned double-cell
product (ud).
|
void |
CoreWords.UNTIL(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.unused(XT xt)
u is the amount of space remaining in the region
addressed by HERE, in address units. |
void |
CoreWords.value(XT xt)
Skip leading space delimiters.
|
int |
CoreWords.valueDef(XT xt) |
int |
CoreWords.valueTo(XT xt) |
void |
CoreWords.variable(XT xt)
Skip leading space delimiters.
|
void |
CoreWords.WHILE(XT xt)
Interpret:
Interpretation semantics for this word are undefined.
|
void |
CoreWords.within(XT xt)
Perform a comparison of a test value
n1|u1 with a
lower limit n2|u2 and an upper limit n3|u3,
returning true if either
(n2|u2 < n3|u3 and
(n2|u2 <= n1|u1 and
n1|u1 < n3|u3))
or
(n2|u2 > n3|u3 and
(n2|u2 <= n1|u1 or
n1|u1 < n3|u3))
is true, returning false otherwise. |
void |
CoreWords.word(XT xt)
Skip leading delimiters.
|
void |
CoreWords.xor(XT xt)
Return the bit-by-bit exclusive-or of next (x1) with top (x2).
|
void |
CoreWords.zeroEquals(XT xt)
Return a flag indicating if top (x) is zero.
|
void |
CoreWords.zeroLess(XT xt)
Return a flag indicating that top (n) is less than zero.
|
void |
CoreWords.zeroMore(XT xt)
return a flag indicating that top (n) is greater than zero.
|
void |
CoreWords.zeroNotEqual(XT xt)
Return a flag indicating if top (x) is not zero.
|