Index

$FOPEN, 8-4
'O, 10-22
..! , definition,18-10
..@ , definition,18-10
0FOPEN, 8-4
:CLASS, 10-16
:M, 10-16
<SUPER, 10-16
>ABS with libraries, 18-2
>ABS, 18-13
>ABS, ORG, 14-2
>REL, ORG, 14-2
?INSTANTIATE:, 10-22
?INSTANTIATE:, OB.OBJLIST, 10-15
?NEW:, OB.BARRAY, 10-9
?NEW:, OB.ELMNTS, 10-11
[], Tutorial, 10-5
[COMPILE], 6-4
[FORGET], 11-6

A

AbortIO(), 24-6
Absolute value, ABS, GL-30
ADD:, OB.ELMNTS, 10-11
Address conversion for libraries, 18-2
Address conversion in assembler, 14-8
Address conversion, >ABS , GL-25
Address conversion, structures, 18-9
Address relocation, 12-5
Address, absolute, 14-2
Address, automatic call conversion, 18-5, 6
Address, conversion, 18-13
Address, even, ALIGN, GL-31
Addresses, relative vs absolute, 2-6
Alert, RUDE, AP-6
Algebraic expressions, 4-6
ALL.METHODS, 10-21
Allocate dictionary, ALLOT, GL-32
Allocate/instantiate objects 10-15
Allocate, structure, 18-8
ALLOCBLOCK, 11-1
AllocMem(), ALLOCBLOCK, GL-31
ALLOT, USE.DICT:, 10-10
AmigaDOS 2.0, 24-8
ANEW, 11-5
ANEW, tutorial, 5-2
ANIM.xxx, definitions, 22-6
Animation, 22-1
Animation, moving brush, 21-4
Animbrush, tutorial, 22-4
Application Specific Library, 24-9
Applications, stand-alone, 7-1
APTR, 18-9
Area, 24-4
ARexx Arguments, 23-3
ARexx Support, 23-1
ARexx Variables, 23-8
ARGS, library calls, 18-1
Arithmetic, 4-4
Array object, 10-3
Array of structures, 18-8
Array, bytewide, CARRAY, GL-41
Array, OB.BARRAY 10-9
ARRAYOF structures, 18-11
Arrays in structures, 18-9
ASCII characters, 4-7
ASL, 24-9
Assembler module, 16-2
Assembler, 68000, 14-1
Assembler, clone restrictions, 7-7
Assembler, macros, 14-5
Assembler, Motorola style, 14-6
Assembler, RPN, 14-2
ASSIGN, 3-1
AT:, OB.BARRAY, 10-9

B

Backspace char, BSOUT, GL-38
BACKWARD:, OB.ELMNTS, 10-11
BASE in #, GL-3
BASE, numeric, 5-10
BBS, Forth support, AP-2
BEGIN UNTIL, 5-7
BeginIO(), 24-6
Benchmark, 2-4
Benchmarks, 3-2
Binary files, 8-2
Binding, ODE, 10-5
Bitmap allocation, 24-1
BLOCK files, 15-1
BLOCK, convert to text file, 15-4
BLOCK, files, 3-3
BLOCK2TEXT, file conversion, 3-3
Boolean operators, 5-5
BOTH, 12-5
Breakpoint, debug, 13-4
Breakpoint, setting, 13-6
Brush, dump, AP-6
Buffered file I/O, 8-7

C

CALL, libraries, 18-4
CALLED, 12-5
Calling a library, example, 18-1
CASE, 5-7
CELL, concept, AP-10
CFA, , 12-5
CFA, 12-4
CFA, get with ', GL-6
Change directory, CD, GL-41
CHIP memory, ALLOCBLOCK, GL-31
CHOP:, OB.ELMNTS, 10-11
Chunks in IFF files, 21-10
Class, definition, 10-2
Class, example, 10-19
Classes, defining new, 10-16
CLEAR:, OB.BARRAY, 10-9
CLEAR:, OB.INT, 10-9
Clipping, PIC, 21-6
Clone and modules, 16-5
Clone, 2-2
Clone, 7-1
Clone, debugging, 13-5
Cloning ODE programs, 10-23
Close file, 8-6
Code Field, 12-4
Color of input text, 17-1
Color, index, 19-2
Color, text, foreground, 24-8
Compare numbers, 5-5
Compile CFA reference (CFA,), GL-9
Compile from Textra, 23-7
COMPILE, 6-7
Compile, INCLUDE, 2-2-5
Compiler, 12-5
Compiler, STATE, GL-95
Compiling a program, 5-2
Compiling IMMEDIATE words, 6-7
Compress bitmap, 21-16
Conditional compilation .IF, GL-17
Conditionals, 5-6
Conditionals, style, AP-10
CONSOLE, cloned, 7-3
CONTEXT, 17-3
Control-C, cloned, 7-3
Control-D, 13-5
Convert .h files, 18-, 18-14
CREATE DOES>, 6-6
CREATE example, 6-1
CREATE, data, GL-25
CreatePort(), 24-6
CreateStdIO(), 24-6
CURRENT:, OB.ELMNTS, 10-11
Cursor control, 24-7
Cursor keys, history, 17-1

D

Data registers, 14-1
Data stack, 12-2
DATA.ADDR:, OB.BARRAY, 10-9
DEBUG, UNRAVEL calls, GL-101
Debugger, tutorial, 13-3
Debugging, tools, 13-1
DEBUG{, 13-6
DEF, 14-11
DEFER, 11-3
Defer, cloned, 7-7
Defer, in modules, 16-4
DEINSTANTIATE, 10-22
DEINSTANTIATE:, OB.OBJLIST, 10-15
Delay(), 18-1
DELETE:, OB.LIST, 10-14
Demos, list of, 3-2
Dial, AP-5
Dictionary layout, 12-2
Dictionary pointer, HERE, GL-66
Dictionary size, #K, GL-4
Dictionary, WORDS, 2-3
Dimension, OB.ELMNTS, 10-11
DIMENSION:, OB.ELMNTS, 10-11
Disassembler, 14-9
Divide using / , GL-18
Division, floored, 2-7
DO LOOP, 5-7
DO.RANGE:, OB.BARRAY, 10-9
DO:, OB.ELMNTS, 10-12
Documentation generator, AP-6
DOLINES, 8-8
DOS commands, 2-4
DOS Library, 18-1
DOS, execute command, $DOS, GL-5
Double Buffer, 3-5
Double buffering, 21 5
Double Buffers, in ANIMs, 22-2
Double precision, CALL, 18-5, 6
DSP, 18-9
DUMP.SOURCE:, OB.ELMNTS, 10-12

E

ED.AT:, OB.ELMNTS, 10-12
ED.TO:, OB.ELMNTS, 10-12
ED2I:, OB.ELMNTS, 10-12
Editing text file, 5-1
EDITOR, for BLOCKs, 15-2
Element, OB.ELMNTS, 10-11
EMIT, cloned, 7-3
EMIT, defer, 11-4
EMIT, LOGTO, 11-8
EMPTY:, OB.ELMNTS, 10-12
ERR%, 11-9
Error checking in ODE, 10-21
Error codes, 11-9
Error codes, 23-3
Error handling, 11-9
Error report, .ERR, GL-17
Error reporting in ODE, 10-23
Error, Index out of range, 10-4
Errors, IFF, 21-5
Escape characters, ANSI, 24-7
EV.xxx, definitions, 19-6
Event input, 19-6
Events, menu example, 20-2
Exec support, 24-5
EXEC:, OB.ARRAY, 10-10
EXECUTE, 6-3
EXECUTE, clone restrictions, 7-7
Execution Array, 10-11
Exit JForth, BYE, GL-38
EXPECT, History, 17-2
EXTEND:, OB.BARRAY, 10-9

F

F, , 8-7
Fadein, 21-4
Fadein, PIC.FADEIN, 21-9
FCLOSE, 8-6
FIG standard, AP-12
FIG, Forth Interest Group, AP-2
File creation, 8-1
File names, 8-6
File requester, ASL, 24-9
File, $FOPEN, GL-5
File, buffered, 8-7
File, example, AP-9
File, I/O, 8-1
FILE?, 18-8
Files, closed if TRACKING ON, 7-3
Files, JForth disks, 3-1
FILEWORD, 8-4
FILL.DIM:, OB.ELMNTS, 10-12
FILL:, OB.BARRAY, 10-9
FIND, cloned, 7-6
FIRST:, OB.ELMNTS, 10-12
FIRST:, OB.ELMNTS, 10-12
Flip pictures, 21-9
Floating Point, 9-1
Font Requester, 24-9
Font, 19-5
Font, garbled?, 13-3
Fonts, 24-3
FOPEN, 8-4
Forbid(), 24-7
FORGET using ANEW, GL-32
FORGET, 11-5
FORGET, tutorial, 5-2
Forth Interest Group, AP-2
Free, various, 24-2
FREE:, example, 10-5
FREE:, OB.BARRAY, 10-9
FREEALL:, OB.OBJLIST, 10-15
FREEBLOCK, 11-1
Function keys, 17-2

G

Gadgets, 24-3
GET.NAME:, OBJECT^-8
GET:, OB.ELMNTS, 10-12
GET:, OB.INT, 10-9
GOTO.ERROR, 11-9
GOTO:, OB.ELMNTS, 10-13
GR.xxx, definitions, 19-3
Graphics, misc., 24-1
Graphics, toolkit, 19-1

H

H2J, 18-14
Hash dictionary, 2-5
Header structure, 12-2
Hex entry using $, GL-4
Hide, SMUDGE, 12-3
HISTORY, 17-1
HMSL, AP-1
HMSL, plug, AP-20
Hunks, SHOWHUNKS, 17-5

I

I2ADDR:, OB.ELMNTS, 10-13
I2ED:, OB.ELMNTS, 10-13
IDCMP events, 19-6
IF, style, AP-10
IF, tutorial, 5-6
IF.FORGOTTEN example, AP-9
IF.FORGOTTEN, 11-6
IF.FORGOTTEN, and FREE:, 10-5
IF.FORGOTTEN, with DEFER, 11-4
IFF file support, 21-1
IFF Parser, 21-10
IFF, ANIM formats, 22-1
IFF, dump file, AP-6
IFF, support files, 3-5
IFF.xxx definitions, 21-14
ILBM parsing, 21-11
ILBM, display, 21-1
IMMEDIATE words, compiling, 6-7
IMMEDIATE, 6-6
INCLUDE from Textra, 23-7
Include files, .h and .j, 18-7
Include files, module, 16-3
INCLUDE, 2-5
INCLUDE, echo, 13-1
INCLUDE, tutorial, 5-2
INCLUDE?, tutorial, 5-2
Incompatibilities, 21-16
Index of DO LOOP, 5-8
INDEXOF:, example, 10-4
INDEXOF:, OB.BARRAY, 10-9
Inheritance, 10-1
Inheritance, definition, 10-3
Inheritance, how it works, 10-23
INHERITANCE.OF, 10-21
INIT:, 10-19
Initialization, AUTO.INIT, GL-34
Initialization, compile time, AP-9
Initialize Forth,COLD, GL-44
INLINE data, AP-11
INLINE, 12-5
Input a string, EXPECT, GL-58
Input, TIB, >IN , GL-25
INSERT:, OB.ELMNTS, 10-13
Install on hard disk, 1-2
Instance objects, 10-20
Instance Variable definition, 10-3
Instance variables, 10-17
Instantiate objects in list, 10-15
Instantiation, dynamic, 10-22
INTERPRET, cloned, 7-6
Interrupt, assembly tips, 14-9
Intuition, misc24-1
IV.LONG, 10-16
IV.SHORT, 10-16
IV=>, 10-17

J

JShow, 21-13
Jump table, 10-10
K
Kernel, 12-4
KEY, cloned, 7-3

L

LAST:, OB.ELMNTS, 10-13
Late binding, ODE, 10-5
Libraries, adding new, 18-6
Libraries, Graphics, 19-1
Libraries, Intuition, 19-1
Libraries, tutorial, 18-1
Library, base pointers, 18-4
Library, new, GL-23
LIMIT:, OB.BARRAY, 10-9
Link Field, 12-3
Link field, 6-4
Linked lists, exec, 24-6
List object, OB.LIST, 10-14
List, OB.OBJLIST, 10-14
LITERAL, 6-7
Loader, 12-5
Local Variables and ODE, 10-6
Local Variables, 11-6
Local variables V2 vs V3, AP-17,18
Logical operators, 5-5
LOGTO, 11-8
Loop using BEGIN, GL-35
Loops, tutorial, 5-7

M

MANY:, OB.ELMNTS, 10-13
MANYLEFT:, OB.ELMNTS, 10-13
MARKFCLOSE, 8-6
MAX-INLINE, 7-2
MAX-INLINE, 12-4, 5
MAX.ELEMENTS:, OB.ELMNTS, 10-13
MAXimum, 4-5
Memory allocation problems, 13-2
Memory allocation tracking, 12-5
Memory Allocation, 11-1
Memory allocation, ALLOCBLOCK, GL-31
Memory fragmentation, 1-3
Memory Map, 12-1
Memory, allocation example, AP-9
Memory, CHIP, ODE, 10-23
Memory, FREE:, 10-9
Memory, FREEBLOCK, GL-63
Memory, freed if TRACKING ON, 7-3
Menu defaults, 20-6
Menu, example, 20-1
Menu, EZMENU System, 20-1
Menu, Intuition calls, 20-6
Message Port, ARexx, 23-2
Message, wait, 19-7
METHOD, declaration, 10-17
Method, definition, 10-2
METHODS.OF, 10-21
Module, ASSEM, 14-6
Module, INCLUDES, 19-1
Modules, 16-1
Modules, custom, 16-3
Modules, structures, 18-7
Moore, Charles, 2-1
Mouse input, 19-6
Multitasking, 12-1

N

Name Field, 12-3
NAME:, OBJECT^-8
Naming conventions, AP-8
NEW:, OB.BARRAY, 10-9
NEW:, OB.ELMNTS, 10-13
NEW:, OB.LIST, 10-14
NewWindow, 19-1
NEXT:, OB.ELMNTS, 10-13
NEXTWRAP:, OB.ELMNTS, 10-13
NFA, 12-3
NOT, standards, 2-6
Number compilation, LITERAL, GL-71
Numeric BASE, GL-35
Numeric conversion, GL-3

O

OB.ARRAY, tutorial, 10-3
OB.BARRAY, 10-9
OB.ELMNTS, 10-11
OB.REPORT.ERROR, 10-23
OBJECT class, 10-8
Object, definition, 10-2
ODE, 10-1
ODE, cloning, 7-6
ODE, loading, 10-3
Open file, FOPEN, 8-4
OPENFV, 8-7
OpenLibrary(), 18-6
Optimize, INLINE, GL-69
Optimizer, global, 17-6
ORG register, 14-2
Overflow, */, 4-6

P

PAD, used by ", GL-3
Parameter Field, 12-4
Performance Analyser, 17-7
PFA, 12-4
PFA, >BODY , GL-25
PIC.xxx, definitions, 21-6
PICK, tutorial, 4-3
Pointer to function, 6-3
Polygons, 24-4
Port, FindPort(), 24-5
Portability, AP-10
Print number, . , GL-16
PRINT, application, AP-6
PRINT.DIM:, OB.ELMNTS, 10-13
PRINT:, OB.ELMNTS, 10-13
Printing output, 11-8
PROFILE, 17-7
PUSH, 11-2
PUT.NAME:, OBJECT^-8
PUT:, OB.ELMNTS, 10-13
PUT:, OB.INT, 10-9

Q

Quit JForth, BYE, GL-38
QUIT, cloned, 7-6
Quitting JForth, BYE, 1-2

R

Random, CHOOSE, GL-42
Random, example, 19-2
Range check, objects, 10-4
RANGE:, OB.BARRAY, 10-10
Rastport allocation, 24-1
RastPort, 19-3
Read file, FREAD, GL-63
READLINE, 8-7
Reboot, 1-3
ReCompile JForth, 12-6
Register, dump, 13-7
Registers 68000, utilization, 14-1
Relocation Table, 12-5
Remainder, /MOD, 4-5
REMOVE:, OB.ELMNTS, 10-13
Requester, AUTO.REQUEST, GL-35
RESET:, OB.ELMNTS, 10-13
Return stack, 6-5
Return stack, >R , GL-26
Return stack, debugging, 13-7
Reverse Polish Notation, 4-4
RexxView, 23-10
RPN, 4-4
RUN.FASTER, 10-21
RUN.SAFER, 10-21
RX.ADD.COMMAND, tutorial, 23-4
RX.EXEC.LINE, 23-5
RX.INIT, tutorial, 23-2
RX.xxx, ARexx glossary, 23-5

S

S!, 18-8
SAVE-FORTH and Modules, 16-1
SAVE-FORTH, 2-5
SAVE-FORTH, 6-2
SAVE-FORTH, and #K, GL-4
SCRED, for BLOCKS, 15-3
Screen tools, 24-4
Screen, SIFF-SCREEN, 22-6
Screens, with $PIC.LOAD? 6
Seek file, FSEEK, GL-65
SELF, in methods, 10-17
Serial, Dialer, AP-5
SET.MANY:, OB.ELMNTS, 10-13
SET.WIDTH:, OB.BARRAY, 10-10
Shell, startup, 1-3
SHIFT, 4-6
SHOWHUNKS, 17-5
Sign extension, B->S , GL-35
Sign, words in structures, 18-11
Signals, alloc, 24-5
Size Field, 12-4
Size, dictionary, #K, GL-4
Size, dictionary, cloned, 7-4
SIZE:, OB.ELMNTS, 10-14
Smalltalk, 10-2
SMEAR:, OB.ELMNTS, 10-14
SMUDGE bit, 12-3
SMUDGE in colon, GL-23
Sort, -2SORT, 5-8
Sort, Batcher, BSORT, GL-38
Sortmerge, AP-7
Speech, SayNumber.f, AP-7
SPLIT:, OB.ELMNTS, 10-14
Stack diagram, 4-2
Stack location, 12-2
Stack size, 2-6
Stack, dynamic, 11-2
Stack, tutorial, 4-1
Standards, Forth, AP-12
STATE of the compiler, 6-6
STRETCH:, OB.ELMNTS, 10-14
String append, 6-2
String compare, $-, GL-5
String compare, MATCH?, GL-75
String comparison, 6-1
String handling, 6-1
String input, EXPECT, GL-58
String print, ." , GL-16
String, $APPEND, GL-5
String, ", GL-3
String, compile using $, , GL-5
String, NUL terminated, 0" , GL-19
String, NUL terminated >DOS, GL-25
Strings, 5-9
Structure unions, 18-12
Structure, access, 18-8
Structure, assembler access, 14-8
Structure, defining, 18-9
Structure, dump, 18-9
Structure, passing, 19-1
Structures, 18-7
Structures, array of, 18-8
Structures, nested, 18-8
Submenu, 20-5
Subroutine threading, 2-6
SUPER, in methods, 10-18
Superclass, <SUPER, 10-16
Superclass, definition, 10-2
Switch(), CASE, GL-41

T

TAB-WIDTH, 17-3
Tag lists, 24-9
Terminal, AP-7
Text editor, ARexx, 23-7
Text I/O, 5-9
Text justification, 19-5
Text, color, foreground, 24-8
Textra, ARexx, 23-7
Textra, install, 2-3
Time, BENCH, 2-4
Time, example, 18-2
TO:, OB.BARRAY, 10-10
Top of Stack, cache, 14-2
Trace, UNRAVEL, 13-1
Trailing space removal, GL-16
Transportability, AP-10
Turnkey, 7-1

U

UNMARKFCLOSE, 8-6
UNRAVEL, 13-1
Update, AP-7
Upper case, MAKEUCASE, GL-74
USE.DICT:, OB.BARRAY, 10-10
USED.WORDS, 11-9
USER and modules, 16-4
USER Variables, 12-1
USER variables, cloned, 7-8
Utilities, files, 3-6

V

VARIABLE, from assembler, 14-9
Variables, 5-3
Variables, ARexx, 23-8
Vectored execution, 11-3
VERIFY-LIBS, 18-5
VERIFY-LIBS, cloned, 7-8
Version, libraries, 18-3
Vocabularies, 17-3
VOCABULARY and modules, 16-4

W

WHERE:, OB.ELMNTS, 10-14
WIDTH:, OB.BARRAY, 10-10
Window of JForth, GL-107
Window, example, 14-9
Window, example, 18-13
Window, menus, 20-3
Window, NewWIndow, 18-8
Window, open, 19-1
Wipe picture, 21-4
Wipe, PIC.WIPE, 21-9
WORD, cloned, 7-6
}STUFF:, OB.BARRAY, 10-10
}STUFF:, tutorial, 10-5