
<hr><h3><A name="2b">code,</A> ( n --  )</h3>
 Extra: Deferred
<br>
Places n in the dictionary at ( assemblers )  <code><A href="_smal_AM#21c"> here </A></code> 
and  <code><A href="_smal_BM#24"> ass-allot </A>s</code> enough space for a 
word.  
<p>
This word is deferred so that the metacompiler may change it to assemble code 
into the target dictionary rather than the resident dictionary.  It also handles 
little/big endian target code.  

<hr><h3><A name="5b">.instruction</A> ( -- )</h3>
<br>
Displays the address where the last breakpoint occurred, and the instruction 
that would have been executed if the breakpoint had not been there.  

<hr><h3><A name="8b">(</A> ( -- )</h3> <kbd>ccc)</kbd> 
 Extra: ANS,I,M,83Std
<br>
Used in the form: 
<br><code>                 ( ccc)</code><br>
The characters ccc, delimited by ) (closing parenthesis), are considered 
comments.  Comments are not otherwise processed.  The space following ( is not 
part of ccc.  ( may be freely used while interpreting or compiling.  The number 
of characters in ccc may be from zero to the number of characters remaining in 
the input stream.  

<hr><h3><A name="bb">(rstrace</A> ( end-addr start-addr -- )</h3>
<br>
The calling sequence that is stored in memory between start-addr (top-of-stack) 
and end-addr (bottom-of-stack) is symbolically displayed.  This can be used to 
display an image of the return stack that has been saved in an array.  

<hr><h3><A name="eb">/</A> ( n1 n2  --  n3 )</h3>
 Extra: ANS,83Std
<br>
n3 is the floor of the quotient of n1 divided by the divisor n2.  An error 
condition results if the divisor is zero.  

See: "Glossary Notation - division, floored" 

<hr><h3><A name="11b">&lt;resolve</A> ( addr -- )</h3>
 Extra: C,83Std
<br>
Used at the source of a backward branch after either  <code><A href="_smal_BB#169"> branch </A></code> 
or  <code><A href="_smal_AO#12e"> ?branch </A>.</code> Compiles a branch address 
using addr as the destination address.  
<p>
 <code><A href="_smal_BT#11b"> &lt;resolve </A></code> is used by control 
structure compiling words such as  <code><A href="_smal_AN#2ad"> repeat </A></code> 
,  <code><A href="_smal_BO#146"> again </A></code> , and  <code><A href="_smal_BC#31a"> until </A>.</code> 

<hr><h3><A name="14b">allot</A> ( n -- )</h3>
<br>
Allocates n bytes in the dictionary.  The address of the next available 
dictionary location is adjusted accordingly.  

<hr><h3><A name="17b">char+</A> ( addr1 -- addr2 )</h3>
 Extra: 32
<br>
Increases addr1 by one character.  

<hr><h3><A name="1ab">d0&lt;</A> ( d -- flag )</h3>
<br>
flag is true if d is less than zero.  

<hr><h3><A name="1db">emit1</A> ( char -- )</h3>
 Extra: 83Std,Default
<br>
The Default implementation of the deferred word  <code><A href="_smal_BS#1da"> emit </A>.</code> 
Transmits the character char to the output stream and adds 1 to  <code><A href="_smal_BI#80"> #out </A></code> 
to keep track of the cursor position.  

<hr><h3><A name="20b">fp!</A> ( addr -- )</h3>
<br>
addr is the address of the new top of the floating stack.  

<hr><h3><A name="23b">key?</A> ( -- flag )</h3>
 Extra: F83
<br>
A deferred word returning true if a character has been typed on the keyboard 
since the last time that  <code><A href="_smal_BS#23a"> key </A></code> was 
executed.  The keyboard character is not consumed.  The Default implementation 
is  <code><A href="_smal_BD#2eb"> sys-(key? </A>.</code> 

See:  <code><A href="_smal_BS#23a"> key </A></code>  <code><A href="_smal_BD#2eb"> sys-(key? </A></code> 
<p>
 <code><A href="_smal_BT#23b"> key? </A></code> is deferred so that 
Risc-OS Forthmacs may be easily configured to run in different environments.  

<hr><h3><A name="26b">md</A> ( -- )</h3> <kbd>directory</kbd> 
<br>
Makes a new directory.  Same as  <code><A href="_smal_BV#26d"> mkdir </A>.</code> 

<hr><h3><A name="29b">postpone</A> ( -- )</h3> <kbd>name</kbd> 
 Extra: C,I
<br>
Abort when in interpreter state.  Skip leading space delimiters.  Parse name 
delimited by a space.  Find name.  Append the compilation semantics of name to 
the current definition.  An ambiguous condition exists, if name is not found.  
<p>

See:  <code><A href="_smal_AN#9d"> compile, </A></code>  <code><A href="_smal_AU#344"> [compile] </A></code> 

<hr><h3><A name="2cb">see</A> ( -- )</h3> <kbd>name</kbd> 
<br>
Used in the form: 
<br><code>    see &lt;name&gt;</code><br>
Decompiles the word &lt;name&gt;, or disassembles it if it is a code definition.  

<hr><h3><A name="2fb">to-file</A> ( -- )</h3> <kbd>filename</kbd> 
<br>
Creates a new file with the indicated name, and redirects the output stream to 
that file.  The output stream is restored to the terminal just before the 
interpreter prompts for a new line of input.  Example: to decompile the word  <code><A href="_smal_AJ#339"> words </A></code> 
and put the output in a file called WORDS.LST : 
<br><code>    to-file wordlist   see words</code><br>

See:  <code><A href="_smal_AA#150"> append-to-file </A></code> 

<hr><h3><A name="32b">warm</A> ( -- )</h3>
<br>
 <code><A href="_smal_BT#32b"> warm </A></code> is called when the Forth system 
is restarted after having been interrupted for some reason.   <code><A href="_smal_BT#32b"> warm </A></code> 
calls  <code><A href="_smal_BU#32c"> warm-hook </A></code> and then calls  <code><A href="_smal_AD#2a3"> quit </A></code> 
to give control to the text interpreter.  

See:  <code><A href="_smal_BU#32c"> warm-hook </A></code>  <code><A href="_smal_AD#c3"> (warm-hook </A></code> 
<p>
A warm start differs from a cold start in that a cold start happens only once, 
when the Forth system is first executed.  A cold start brings up the Forth 
system "from scratch", reallocating data structures, buffers, etc.  Warm starts 
can happen many times after the system is started, and generally do not greatly 
change the state of the Forth system.  For example, definitions that have 
recently been added to the dictionary and not saved to disk are not destroyed by 
a warm start.  
<p>
Hardware errors such as Bus Error, Illegal Instruction, and Address Error will 
cause a warm start.  
