
<hr><h3><A name="2e">decr</A> ( reg n# --  )</h3>
<br>
Macro, n# will be subtracted from reg.  

<hr><h3><A name="5e">-bp</A> ( adr -- )</h3>
<br>
Removes the breakpoint at address adr from the breakpoint list.  Does nothing if 
that address was not breakpointed.  

See:  <code><A href="_smal_BX#5f"> --bp </A></code>  <code><A href="_smal_BR#59"> .bp </A></code>  <code><A href="_smal_BV#5d"> +bp </A></code> 

<hr><h3><A name="8e">(#lines</A> ( -- n )</h3>
 Extra: Default
<br>
n is the number of lines of text that are displayable on the screen.  
<p>
 <code><A href="_smal_BW#8e"> (#lines </A></code> is the default implementation 
performed by the deferred word  <code><A href="_smal_BH#7f"> #lines </A>.</code>  <code><A href="_smal_BW#8e"> (#lines </A></code> 
determines the number of lines based on the current font characteristics, the 
wimp mode in supervisor mode or the window width in WIMP mode.  

<hr><h3><A name="be">(set-relocation-bit</A> ( addr -- addr )</h3>
 Extra: Default
<br>
The relocation bit corresponding to the dictionary address addr is set, so that 
address will be relocated if the dictionary image is saved in a file.  If addr 
is not an address within the dictionary, does nothing.  

See:  <code><A href="_smal_BU#2cc"> set-relocation-bit </A></code>  <code><A href="_smal_AL#2ab"> relocation-map </A></code> 

<hr><h3><A name="ee">/char</A> ( -- n )</h3>
 Extra: 32
<br>
n is the size in bytes of a character, which is 1.  ANS compliant 

<hr><h3><A name="11e">&gt;=</A> ( n1 n2  -- flag )</h3>
<br>
flag is true if n1 is greater than or equal to n2.  

<hr><h3><A name="14e">another?</A> ( -- [ anf ] more? )</h3>
<br>
The next word in the scanned vocabulary is selected.  If all words in the 
vocabulary have already been selected, more? is false and anf is not present on 
the stack.  Otherwise, more? is true and anf is the name field address of the 
selected word.  
<p>
Example: Here is a simple implementation of  <code><A href="_smal_AJ#339"> words </A>,</code> 
ignoring output formatting.  <strong>words-in</strong> is similar to  <code><A href="_smal_AJ#339"> words </A>,</code> 
but it takes an explicit vocabulary name argument, as in <strong>words-in</strong>  <code><A href="_smal_AD#153"> assembler </A>.</code> 
<p>
<br><code>    : (words  ( voc-acf -- )</code><br>
<br><code>        follow</code><br>
<br><code>        begin another? while .id repeat ;</code><br>
<br><code>    : words ( -- ) context @ (words ;</code><br>
<br><code>    : words-in \ vocabulary-name  ( -- )</code><br>
<br><code>         postpone ' (words ;</code><br>

<hr><h3><A name="17e">cells</A> ( n1 -- n2  )</h3>
 Extra: 32
<br>
Calculates the number of n1 cells.  

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

<hr><h3><A name="1de">end-string-array</A> ( -- )</h3>
<br>
Finish defining a string array.  

See:  <code><A href="_smal_AS#2e2"> string-array </A></code> 

<hr><h3><A name="20e">fputs</A> ( addr count fd -- )</h3>
<br>
count bytes starting at addr are written to the open file whose file descriptor 
is fd.  Bytes are put on the file starting at the current file pointer position.  
The file pointer is left pointing to the byte just past the last byte put in the 
file.  

<hr><h3><A name="23e">kill-line</A> ( -- )</h3>
<br>
Clears the current line from the cursor position to the right edge of the 
screen.  

<hr><h3><A name="26e">mod</A> ( n1 n2  -- n3 )</h3>
 Extra: 83Std
<br>
n3 is the remainder after dividing n1 by the divisor n2.  n3 has the same sign 
as n2 or is zero.  An error condition results if the divisor is zero.  

See: "Glossary Notation - division, floored" 

<hr><h3><A name="29e">prompt</A> ( -- )</h3>
 Extra: Deferred
<br>
 <code><A href="_smal_BW#29e"> prompt </A></code> is executed before input is 
read from the input stream.  It is conventionally used to display a prompt, such 
as the usual Forth prompt "ok  <code><A href="_smal_AP#6f"> ". </A></code> Since 
it is deferred, any kind of prompt that you want may be installed instead.  

See:  <code><A href="_smal_BP#b7"> (prompt </A></code> 

<hr><h3><A name="2ce">sh</A> ( -- )</h3> <kbd>program-filename command-tail</kbd> 
<br>
Used in the form: 
<br><code>    sh 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_AL#1eb"> exec </A></code> 

<hr><h3><A name="2fe">token!</A> ( addr2 addr1 -- )</h3>
 Extra: 32
<br>
Stores the address addr2 at address addr1 as a "token".  A token is the 
representation of an address when it is stored in memory.  Depending on the 
implementation, a token may be a 32-bit absolute address, a 16-bit relative 
address, or something else.  

See:  <code><A href="_smal_AA#300"> token@ </A></code>  <code><A href="_smal_BX#2ff"> token, </A></code> 
<p>
In the ARM implementation, a token is a 32-bit absolute address.  In the 680x0 
and ARM implementations, as a side effect, the relocation map bit corresponding 
to addr1 is set.  This allows the Forth dictionary to be later saved as a 
relocatable file.  

<hr><h3><A name="32e">wflip</A> ( n1 -- n2 )</h3>
<br>
n2 is the result of exchanging the 16-bit halves of the 32-bit number n1.  
