Table of Contents

gwbasic

Microsoft GW-BASIC

If it was not the last, GW-BASIC was certainly the most advanced evolution of the original, line-numbered, first-generation Microsoft BASIC-80. Its original source-code has been open by Microsoft and it has at least one modern, open-source implementation for modern operating systems, so it can still be considered an active BASIC which can make old-time programmers "feel at home".

Where it is/was used

  • IBM-PC and compatibles with DOS 3.22 or later

Noteworthy characteristics

Environment and usage

GW-BASIC's interpreter was an executable in the MS-DOS floppy disk which could be started from DOS with gwbasic. Command-line options could be given to redirect input or output, to set the maximum number of open files and the size of their buffers and records (like the MAXFILES keyword), to determine memory block size and highest address, and to force some mathematical functions to return double-precision values instead of single-precision values. Also, the command-line can be used for running a BASIC program file (.BAS extension) without the REPL environment being shown.

The environment is very similar to previous Microsoft BASIC-80-derived ones: a standard REPL interface where commands and statements can be used in direct mode, or numbered lines can be entered to be stored as part of a program. Overwriting, inserting or deleting content of a listed line will change the stored contents as long as RETURN is pressed after the modification.

The bottom line of the interpreter screen shows commands or statements that can be entered by pressing function keys (Fn), just like in the MSX BASIC environment. Likewise, such shortcuts can be edited.

Extensions

Curiosities

Influenced by

Influence for

Versions and successors

  • PC-BASIC is a self-proclaimed "bug for bug" implementation of GW-BASIC and its versions in Python for modern machines running Windows, GNU/Linux and Mac. It actually does much more than that, by emulating different PC hardware of GW-BASIC's time, such as EGA/VGA/Hercules video cards and Tandy 3-voice sounds, and by happily working with Unicode and a number of DOS codepages. Its website has a fairly extensive documentation with a complete keywords reference.

References