
<hr><h3><A name="b">wake</A> ( task --  )</h3>
<br>
task is the address of the private data area of a task, as left by the &lt;name&gt; 
of a task.  The task is awakened, so that it will continue execution when its 
turn in the round robin queue comes up.  

<hr><h3><A name="3b">nop</A> ( --  )</h3>
<br>
Assembler macro, equivalent to 
<br><code>    r0 r0 mov</code><br>

<hr><h3><A name="6b">!</A> ( n addr  -- )</h3>
 Extra: ANS,83Std
<br>
n is stored at address as a "normal" (a "normal" is the same width as the data 
stack, 32 bits in this implementation).  ARM Chips only support aligned memory 
access, so addr should be aligned to a 4-byte word boundary.  The system won't 
crash in other cases, but the results are undefined for other CPU and MMU 
versions.  

See:  <code><A href="_smal_BA#318"> unaligned-! </A></code> 

<hr><h3><A name="9b">(cold-hook</A> ( -- )</h3>
 Extra: Default
<br>
 <code><A href="_smal_AL#9b"> (cold-hook </A></code> is an initialization word 
that is installed in the deferred word  <code><A href="_smal_AL#18b"> cold-hook </A>.</code>  <code><A href="_smal_AL#9b"> (cold-hook </A></code> 
is redefined in the system several times.  Each redefinition calls the previous 
version of  <code><A href="_smal_AL#9b"> (cold-hook </A>.</code> This allows 
various subsystems to be initialised without requiring them to be compiled 
together.  Each version of  <code><A href="_smal_AL#9b"> (cold-hook </A></code> 
calls the previous version, then performs whatever initialization is appropriate 
for the system with which it is associated.  
<p>
This mechanism may also be used to make an application automatically start 
itself.  

See:  <code><A href="_smal_AJ#189"> cold </A></code>  <code><A href="_smal_AL#18b"> cold-hook </A></code> 

<hr><h3><A name="cb">+dis</A> ( -- )</h3>
<br>
Continues disassembling from the last stopping point.  

See:  <code><A href="_smal_AR#1c1"> dis </A></code> 

<hr><h3><A name="fb">1+</A> ( n1  --  n2 )</h3>
 Extra: ANS,83Std
<br>
n2 is the result of adding one to n1 according to the operation of +.  

<hr><h3><A name="12b">&gt;user#</A> ( acf -- user# )</h3>
<br>
user# is the  <code><A href="_smal_BK#322"> user </A></code> number (the byte 
offset into the  <code><A href="_smal_BK#322"> user </A></code> area) of the 
storage owned by the word whose compilation address is acf.  If the word does 
not have any  <code><A href="_smal_BK#322"> user </A></code> area storage, the 
result is undefined.  

<hr><h3><A name="15b">begin</A> ( -- )</h3>
 Extra: compiling
<br>
 ( -- sys )<br>
<br>
Used in the form: 
<br><code>    begin  ...  flag until</code><br>
<br><code>       or</code><br>
<br><code>    begin  ...  flag while ...  repeat</code><br>
 <code><A href="_smal_AL#15b"> begin </A></code> marks the start of a word 
sequence for repetitive execution.  A BEGIN-UNTIL loop will be repeated until 
flag is true.  A BEGIN- WHILE-REPEAT loop will be repeated until flag is false.  
The words after  <code><A href="_smal_BC#31a"> until </A></code> or  <code><A href="_smal_AN#2ad"> repeat </A></code> 
will be executed when the loop is finished.  sys is balanced with its 
corresponding  <code><A href="_smal_BC#31a"> until </A></code> or  <code><A href="_smal_AC#332"> while </A>.</code> 

See:  <code><A href="_smal_BO#146"> again </A></code>  <code><A href="_smal_BC#31a"> until </A></code>  <code><A href="_smal_AC#332"> while </A></code>  <code><A href="_smal_AN#2ad"> repeat </A></code> 

<hr><h3><A name="18b">cold-hook</A> ( -- )</h3>
 Extra: Deferred
<br>
A deferred word which is used to initialise things when Forth is started.   <code><A href="_smal_AL#18b"> cold-hook </A></code> 
is the last thing called by  <code><A href="_smal_AJ#189"> cold </A></code> 
before starting to interpret commands from the keyboard.  

See:  <code><A href="_smal_AJ#189"> cold </A></code>  <code><A href="_smal_AL#9b"> (cold-hook </A></code> 
<p>
Packages loaded on top of the kernel can arrange to have their own 
initialization code performed when the Forth system is started by redefining  <code><A href="_smal_AL#9b"> (cold-hook </A></code> 
and installing the new version in  <code><A href="_smal_AL#18b"> cold-hook </A></code> 
as follows: 
<br><code>    : (cold-hook (cold-hook new-init ;</code><br>
<br><code>    ' (cold-hook is cold-hook</code><br>

<hr><h3><A name="1bb">delete-line</A> ( -- )</h3>
<br>
The current line is deleted from the screen, moving all the lines below it up to 
fill in the gap.  

<hr><h3><A name="1eb">exec</A> ( -- )</h3> <kbd>program-filename command-tail</kbd> 
<br>
Used in the form: 
<br><code>    exec commands</code><br>
The remainder of the input line is executed as a RiscOS program.  It can be any 
file that can be executed by RiscOS.  

See:  <code><A href="_smal_AW#76"> "shell </A></code>  <code><A href="_smal_BW#2ce"> sh </A></code> 

<hr><h3><A name="21b">headers</A> ( --  )</h3>
 Extra: extend source code
<br>
Start compiling headers again,  <code><A href="_smal_AL#21b"> headers </A></code> 
is defined in <em>extend/headless.fth</em> .  
<p>
Note: needs  <code><A href="_smal_AD#303"> transient </A></code> and  <code><A href="_smal_AO#2ae"> resident </A></code> <em>extend/transient.fth</em> 

See:  <code><A href="_smal_AK#21a"> headerless </A></code> 

<hr><h3><A name="24b">linefeed</A> ( -- n )</h3>
<br>
n is the ascii code for the line feed character, which is decimal 10 or hex 0a.  

<hr><h3><A name="27b">noop</A> ( -- )</h3>
 Extra: F83
<br>
Doesn't do anything.  This can be used to waste time or as a place holder for 
something that will be patched in later.  

<hr><h3><A name="2ab">relocation-map</A> ( -- addr )</h3>
<br>
addr is the address of the relocation table.  The relocation table keeps track 
of which locations in the dictionary contain addresses and thus need to be 
relocated if the dictionary image is saved in a file.  The relocation table 
contains one bit for each 16-bit word in the dictionary.  

See:  <code><A href="_smal_BU#2cc"> set-relocation-bit </A></code>  <code><A href="_smal_BS#26a"> max-image </A></code> 

<hr><h3><A name="2db">sp@</A> ( -- addr )</h3>
 Extra: 83Std
<br>
addr is the address of the top of the data stack just before  <code><A href="_smal_AL#2db"> sp@ </A></code> 
was executed.  

<hr><h3><A name="30b">u.</A> ( u -- )</h3>
 Extra: M,83Std
<br>
Displays u as an unsigned number in a free-field format.  

<hr><h3><A name="33b">write-open</A> ( filename-pstr -- )</h3>
<br>
filename-pstr is the address of a packed string representing the name of a file 
which is to be opened for writing.  The file must already exist.  If the file is 
successfully opened, its file descriptor is stored in  <code><A href="_smal_AV#285"> ofd </A>.</code> 
If the file cannot be opened,  <code><A href="_smal_AL#33b"> write-open </A></code> 
prints a message and  <code><A href="_smal_BJ#141"> abort </A>s</code> .  

See:  <code><A href="_smal_AV#285"> ofd </A></code>  <code><A href="_smal_AM#33c"> writing </A></code>  <code><A href="_smal_AL#33b"> write-open </A></code>  <code><A href="_smal_AI#278"> new-file </A></code> 
