GW Basic
Microsoft’s BASIC, which shipped with every version of MS-DOS and IBM-DOS
I specialized in creating very short but incomprehensible stubs of code that did cool things. I still do, but Python is better.
Star Wars art made with the assistance of GW-Basic on MSDOS 3.2 back in the day.
“Still Life”, GW-Basic on MS-DOS 3.2, 1987.
Bywater Basic
- ABS( number )
- ASC( string$ )
- ATN( number )
- CHAIN [MERGE] file-name [, line-number] [, ALL]
- CHR$( number )
- CINT( number )
- CLEAR
- CLOSE [[#]file-number]…
- COMMON variable [, variable…]
- COS( number )
- CSNG( number )
- CVD( string$ )
- CVI( string$ )
- CVS( string$ )
- DATA constant[,constant]…
- DATE$
- DEF FNname(arg…)] = expression
- DEFDBL letter[-letter](, letter[-letter])…
- DEFINT letter[-letter](, letter[-letter])…
- DEFSNG letter[-letter](, letter[-letter])…
- DEFSTR letter[-letter](, letter[-letter])…
- DELETE line[-line]
- DIM variable(elements…)[variable(elements…)]…
- END
- ENVIRON variable-string = string
- ENVIRON$( variable-string )
- EOF( device-number )
- ERASE variable[, variable]…
- ERL
- ERR
- ERROR number
- EXP( number )
- FIELD [#] device-number, number AS string-variable [, number AS string-variable…]
- FOR counter = start TO finish [STEP increment]
- GET [#] device-number [, record-number]
- GOSUB line
- GOTO line
- HEX$( number )
- IF expression THEN statement [ELSE statement]
- INPUT [# device-number]|[;][“prompt string”;]list of variables
- INSTR( [start-position,] string-searched$, string-pattern$ )
- INT( number )
- KILL file-name
- LEFT$( string$, number-of-spaces )
- LEN( string$ )
- LET variable = expression
- LINE INPUT [[#] device-number,][“prompt string”;] string-variable$
- LIST line[-line]
- LOAD file-name
- LOC( device-number )
- LOF( device-number )
- LOG( number )
- LSET string-variable$ = expression
- MERGE file-name
- MID$( string$, start-position-in-string[, number-of-spaces ] )
- MKD$( double-value# )
- MKI$( integer-value% )
- MKS$( single-value! )
- NAME old-file-name AS new-file-name
- NEW
- NEXT counter
- OCT$( number )
- ON variable GOTO|GOSUB line[,line,line,…]
- ON ERROR GOSUB line
- OPEN O|I|R, [#]device-number, file-name [,record length]
- * file-name FOR INPUT|OUTPUT|APPEND AS [#]device-number [LEN = record-length]
- OPTION BASE number
- POS
- PRINT [# device-number,][USING format-string$;] expressions…
- PUT [#] device-number [, record-number]
- RANDOMIZE number
- READ variable[, variable]…
- REM string
- RESTORE line
- RETURN
- RIGHT$( string$, number-of-spaces )
- RND( number )
- RSET string-variable$ = expression
- RUN [line][file-name]
- SAVE file-name
- SGN( number )
- SIN( number )
- SPACE$( number )
- SPC( number )
- SQR( number )
- STOP
- STR$( number )
- STRING$( number, ascii-value|string$ )
- SWAP variable, variable
- SYSTEM
- TAB( number )
- TAN( number )
- TIME$
- TIMER
- TROFF
- TRON
- VAL( string$ )
- WEND
- WHILE expression
- WIDTH [# device-number,] number
- WRITE [# device-number,] element [, element ]….