ABS ACCESS ALIAS AND ANY APPEND AS ASC ATN BASE BASIC BEEP BINARY BLOAD BSAVE BYVAL CALLS CALL CASE CDBL CDECL CHAIN CHDIR CHR CINT CIRCLE CLEAR CLNG CLOSE COLOR COM COMMAND COMMON CONST COS CSNG CSRLIN CVD CVDMBF CVI CVL CVS CVSMBF DATA DATE DECLARE DEF DEFDBL DEFINT DEFSNG DIM DOUBLE DRAW DYNAMIC ELSE ELSEIF END ENDIF ENVIRON EOF EQV ERASE ERDEV ERL ERR ERROR EXIT EXP FIELD FILEATTR FILES FIX FOR FRE FREEFILE FUNCTION GET GET GOSUB GOTO HEX IF IMP INCLUDE INKEY INP INPUT INSTR INT INTEGER IOCTL IS KEY KILL LBOUND LCASE LEFT LEN LET LINE LIST LOC LOCAL LOCATE LOCK LOF LOG LONG LOOP LPOS LPRINT LSET LTRIM MID MKD MKDIR MKDMBF MKI MKL MKS MKSMBF MOD NAME NEXT NOT OCT OFF ON OPEN OPTION OR OUT OUTPUT PAINT PALETTE PCOPY PEEK PEN PEN PLAY PMAP POINT POKE POS PRESET PRINT PSET PUT RANDOM RANDOMIZE READ REDIM REM RESET RESTORE RESUME RETURN RIGHT RMDIR RND RSET RTRIM RUN SADD SCREEN SEEK SEEK SELECT SETMEM SGN SHARED SHELL SIGNAL SIN SINGLE SLEEP SOUND SPACE SPC SQR STATIC STEP STICK STOP STR STRIG STRING SUB SWAP SYSTEM TAB TAN THEN TIME TIMER TO TROFF TRON TYPE UBOUND UCASE UEVENT UNLOCK UNTIL USING VAL VARPTR VARSEG VIEW WAIT WEND WHILE WIDTH WINDOW WRITE XOR 216 Keywords all taken from Quick Basic 4.5. I think Qbasic may miss a few keywords, but won't have any that Quick Basic doesn't. For the sake of simplicity I have removed the $ sign from keywords that originally had it such as $INCLUDE or MID$. I have done this because I assume we'll be following the Visual Basic style of keyword notation where the $ is only retained for compatibility. If I'm wrong then let me know and I'll adjust the list accordingly. Andrew Dancy adancy@lothprod.freeserve.co.uk Or post on the alt.lang.basic.compiler newsgroup.