A

ABS(x)
Returns the absolute value of a number.
ADD var,n
Increases the value of var by n.
ALERT a,message$,b,button$,var
Creates an alert box where:
a Defines the alert symbol, 0=none, 1=!, 2=?, 2=stop
message$ Contains the main text, upto 4 lines (each 30 characters) separated by '|'
button$ Contains the button text, upto 4 strings separated by '|'
b Defines the default button, 0 to 3
var Contains the number of the button selected, 0 to 3 where 3 is both
ARRAYFILL field(),n
Assigns the value n to all elements of an array.
ARRPTR(var)
Returns the address of an array or string descriptor (6 bytes).
ASC(x$)
Returns the ASCII code of the first character in a string.
ATN(x)
Returns the arc tangent of x which is in radians.

B

BASEPAGE
Returns the GFA BASIC basepage.
BGET [#]i,address,n
Reads n bytes from a data channel into memory starting at address.
BIN$(x)
Returns a string containing the binary value of x.
BITBLT s%(),d%(),p%()
Raster copying command similar to GET and PUT. s% is the description of the source raster and d% the destination raster. p% contains the co-ordinates of the 2 equally sized rectangles and the copying mode.
BLOAD "filename" [,address]
BSAVE "filename",address,length
Load and save memory from and to the disc drive.
BMOVE start,destination,n
Moves n bytes starting at address to another area of memory starting at destination.
BOX x,y,xx,yy
Draws a rectangle with corners at x,y and xx,yy.
BPUT [#]i,address,n
Writes n bytes from memory (starting at address) to data channel i.

C

C:var(arguments)
Calls a C program with arguments, e.g. a=C:q%(17,l:0,w:-1).
CALL var
CALL var(arguments)
Calls a machine code program at address var.
CHAIN "filespec"
Loads a program file into the work area and starts it.
CHDIR "directory"
Changes the current directory.
CHDRIVE n
Sets the default disk drive.
CIRCLE x,y,r [,phi0,phi1]
Draws a circle centred at x,y with a radius of r. The starting and finishing angles may also be specified as phi0 and phi1.
CLEAR
Clears all variables and fields.
CLEARW n
Clears the contents of the window numbered n.
CLOSE [[#] n]
Close a data channel to the disk drive.
CLOSEW n
Closes the window numbered n.
CLR var [,var ...]
Initializes the specified variables to 0.
CLS [#n]
Clears the screen.
COLOR c
Sets the drawing colour.
CONT
Resumes program execution after a STOP.
COS(x)
Returns the cosine of x which is in radians.
CRSCOL
CRSLIN
Returns the current cursor line and column.
CVI(x$)
Converts a 2-byte string to a 16-bit integer.
CVL(x$)
Converts a 4-byte string to a 32-bit integer.
CVS(x$)
Converts a 4-byte atari basic string to a number.
CVF(x$)
Converts a 6-byte GFA basic string to a number.
CVD(x$)
Converts an 8-byte mbasic string to a number.

D

DATA constant [,constant ...]
Creates memory variables that can be read with READ.
DATE$
Returns a date string in the format dd.mm.yyyy.
DEC var
Reduces the value of var by 1.
DEFFILL [col,][style,][pattern]
DEFFILL [col,]a$
Defines a fill pattern.
style 0=empty, 1=filled, 2=dots, 3=lines, 4=user defined
pattern 24 dotted patterns and 12 lined can be chosen
a$ A 16 by 16 bit user defined fill pattern
DEFFN name [(varlist)]=EXPRESSION CALLED UP BY:
FN name [(expression list)]
Defines a function.
DEFLINE style,width,start,end
Defines the line style.
DEFLIST x
Defines the program listing format. Where x=0, commands are displayed in uppercase and variables in lowercase. Where x<>0 the first letter of each word is capitalised.
DEFMARK [c,][a,][g]
Defines the corner points used when using POLYMARK.
c The colour register number.
a Defines the type of mark, where 1=dot, 2=plus, 3=asterisk, 4=square, 5=cross, 6=hash.
g Defines the size of mark.
DEFMOUSE n
DEFMOUSE a$
Selects a pre-defined mouse type or defines a new one. n may be 0 (arrow), 1 (rounded x), 2 (bee), 3 (pointing hand), 4 (open hand), 5 (thin crosswire), 6 (thick crosswire), 7 (bordered crosswire). a$ may contain a 16 by 16 bit pattern plus a mask.
DEFNUM n
Rounds all real numbers to n digits before output. n is of the range 3 to 11.
DEFTEXT [color,][style,][rotation,][size]
Defines the text style used by TEXT.
style 0=normal, 1=bold, 2=light, 4=italic, 8=underlined, 16=bordered. These may be combined.
rotation Either 0o (0), 90o (900), 180o (1800) or 270o (2700).
size 4=icon, 6=8 by 8, 13=standard, 32=enlarged.
DFREE(n)
Reports free disk space on drive n.
DIM var(indices) [,var(indices) ...]
Defines an array.
DIM?(field())
Determines the number of elements in an array.
DIR ["filespec" [TO "file"]]
Lists files on a disk.
DIR$(n)
Names the active directory for drive n.
DIV var,n
Divides var by n.
DO ... LOOP
Creates an endless loop, terminated only by EXIT.
DRAW [TO] x,y
DRAW x1,y1 TO x2,y2 [TO x3,y3 ...]
Draws points, draw a line from the last plot, or connects a number of points.

E

EDIT
In direct mode it returns you to the editor. Within a program it is equivalent to END.
ELLIPSE x,y,rx,ry [,phi0,phi1]
Draws an ellipse at x,y with a horizontal length of rx and a height of ry. phi0 and phi1 may be used to specify start and finishing angles, in tengths of degrees.
END
Closes all files and terminates program execution.
EOF([#]n)
Tests whether the file pointer is at the end of a file.
ERASE field()
Deletes an array.
ERR
Returns the code of a previous error.
ERROR n
Simulates the occurrence of error code n.
EVEN n
Determines if a number is even.
EXEC flag,name,command_line,env_string
Executes a compiled program from disc. flag is either 0 (load and go) or 3 (load only). The environment string env_string may be "".
EXIST("filespec")
Determines whether a file is present, returning -1 (TRUE) if successful, otherwise 0 (FALSE).
EXIT IF condition
Enables a loop to be left if condition is true, irrespective of the loops original condition.
EXP(x)
Calculates the value of an exponent.