HOME

TheInfoList



OR:

Microsoft QuickBASIC (also QB) is an
Integrated Development Environment An integrated development environment (IDE) is a Application software, software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, an ...
(or IDE) and
compiler In computing, a compiler is a computer program that Translator (computing), translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primaril ...
for the
BASIC Basic or BASIC may refer to: Science and technology * BASIC, a computer programming language * Basic (chemistry), having the properties of a base * Basic access authentication, in HTTP Entertainment * Basic (film), ''Basic'' (film), a 2003 film ...
programming language A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
that was developed by
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
. QuickBASIC runs mainly on DOS, though there was also a short-lived version for the
classic Mac OS Mac OS (originally System Software; retronym: Classic Mac OS) is the series of operating systems developed for the Mac (computer), Macintosh family of personal computers by Apple Computer, Inc. from 1984 to 2001, starting with System 1 and end ...
. It is loosely based on
GW-BASIC GW-BASIC is a dialect of the BASIC programming language developed by Microsoft from IBM BASICA. Functionally identical to BASICA, its BASIC interpreter is a fully self-contained executable and does not need the Cassette BASIC ROM found in the ori ...
but adds user-defined types, improved programming structures, better graphics and disk support and a compiler in addition to the
interpreter Interpreting is translation from a spoken or signed language into another language, usually in real time to facilitate live communication. It is distinguished from the translation of a written text, which can be more deliberative and make use o ...
. Microsoft marketed QuickBASIC as the introductory level for their BASIC Professional Development System. Microsoft marketed two other similar IDEs for C and Pascal, viz
QuickC Microsoft QuickC is a discontinued commercial integrated development environment (IDE) product engineered by Microsoft for the C programming language, superseded by Visual C++ Standard Edition. Its main competitor was Borland Turbo C. QuickC ...
and QuickPascal.


History

Microsoft released the first version of QuickBASIC on August 18, 1985 on a single 5.25-inch 360 KB
floppy disk A floppy disk or floppy diskette (casually referred to as a floppy, a diskette, or a disk) is a type of disk storage composed of a thin and flexible disk of a magnetic storage medium in a square or nearly square plastic enclosure lined with a ...
. QuickBASIC version 2.0 and later contained an
Integrated Development Environment An integrated development environment (IDE) is a Application software, software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, an ...
(IDE), allowing users to edit directly in its on-screen text editor. Although still supported in QuickBASIC, line numbers became optional. Program jumps also worked with named labels. Later versions also added control structures, such as multiline conditional statements and loop blocks. Microsoft's "PC BASIC Compiler" was included for compiling programs into DOS executables. Beginning with version 4.0, the editor included an interpreter that allowed the programmer to run the program without leaving the editor. The interpreter was used to debug a program before creating an executable file. Unfortunately, there were some subtle differences between the interpreter and the compiler, which meant that large programs that ran correctly in the interpreter might fail after compilation, or not compile at all because of differences in the memory management routines. The last version of QuickBASIC was version 4.5 (1988), although development of the Microsoft BASIC Professional Development System (PDS) continued until its last release of version 7.1 in October 1990. At the same time, the QuickBASIC packaging was silently changed so that the disks used the same compression used for BASIC PDS 7.1. The Basic PDS 7.x version of the IDE was called QuickBASIC Extended (QBX), and it only ran on DOS, unlike the rest of Basic PDS 7.x, which also ran on OS/2. QuickBASIC 4.5 was the subject of numerous books, articles, and programming tutorials, and arrived near the high-point of BASIC saturation in the PC marketplace. In 1989, Microsoft Press bundled the QuickBASIC Interpreter into a book-and-software learning system called ''
Learn BASIC Now ''Learn BASIC Now'' is a book series written by Michael Halvorson and David Rygmyr, published by Microsoft Press. The primers introduced computer programming concepts to students and self-taught learners who were interested in creating games and a ...
''. The product was priced at $39.95 and included a Foreword written by Bill Gates, who reported that BASIC was in active use by over four million PC users. The successor to QuickBASIC and Basic PDS was
Visual Basic Visual Basic is a name for a family of programming languages from Microsoft. It may refer to: * Visual Basic (.NET), the current version of Visual Basic launched in 2002 which runs on .NET * Visual Basic (classic), the original Visual Basic suppo ...
version 1.0 for MS-DOS, shipped in Standard and Professional versions. Later versions of Visual Basic did not include DOS versions, as Microsoft concentrated on Windows applications. A subset of QuickBASIC 4.5, named
QBasic QBasic is an integrated development environment (IDE) and BASIC interpreter, interpreter for a variety of dialects of BASIC which are based on QuickBASIC. Code entered into the IDE is compiled into an intermediate representation (IR), and this ...
, was included with
MS-DOS MS-DOS ( ; acronym for Microsoft Disk Operating System, also known as Microsoft DOS) is an operating system for x86-based personal computers mostly developed by Microsoft. Collectively, MS-DOS, its rebranding as IBM PC DOS, and a few op ...
5 and later versions, replacing the
GW-BASIC GW-BASIC is a dialect of the BASIC programming language developed by Microsoft from IBM BASICA. Functionally identical to BASICA, its BASIC interpreter is a fully self-contained executable and does not need the Cassette BASIC ROM found in the ori ...
included with previous versions of MS-DOS. Compared to QuickBASIC, QBasic is limited to an interpreter only, lacks a few functions, can only handle programs of a limited size, and lacks support for separate program modules. Since it lacks a compiler, it cannot be used to produce executable files, although its program source code can still be compiled by a QuickBASIC 4.5, PDS 7.x or VBDOS 1.0 compiler, if available. QuickBASIC 1.00 for the
Apple Macintosh Mac is a brand of personal computers designed and marketed by Apple Inc., Apple since 1984. The name is short for Macintosh (its official name until 1999), a reference to the McIntosh (apple), McIntosh apple. The current product lineup inclu ...
operating system was launched in 1988. It was officially supported on machines running System 6 with at least 1 MB of RAM. QuickBASIC could also be run on System 7, as long as 32-bit addressing was disabled. QuickBASIC programming was significantly different on the Macintosh, because the system offered a graphical user interface and an event-driven programming model.


Syntax example

Hello, World, shortest version: ?"Hello, World" Hello, World, extended version: CLS PRINT "Hello, World" END
99 Bottles of Beer "99 Bottles of Beer" or "100 Bottles of Pop on the Wall" is a traditional reverse counting song from the United States and Canada. It is popular to sing on road trips, as it has a very repetitive format which is easy to memorize and can take a lo ...
: LET BOTTLES = 99: LET BOTTLES$ = "99": LET BOTTLE$ = " bottles" FOR A = 1 TO 99 PRINT BOTTLES$; BOTTLE$; " of beer on the wall, "; BOTTLES$; BOTTLE$; " of beer." LET BOTTLES = BOTTLES - 1 IF BOTTLES > 0 THEN LET BOTTLES$ = LTRIM$(STR$(BOTTLES)): LET PRONOUN$ = "one" IF BOTTLES = 0 THEN LET BOTTLES$ = "no more": LET PRONOUN$ = "it" IF BOTTLES <> 1 THEN LET BOTTLE$ = " bottles" IF BOTTLES = 1 THEN LET BOTTLE$ = " bottle" PRINT "Take "; PRONOUN$; " down and pass it around, "; BOTTLES$; BOTTLE$; " of beer on the wall." PRINT: NEXT A PRINT "No more bottles of beer on the wall, no more bottles of beer." PRINT "Go to the store and buy some more, 99 bottles of beer on the wall." Graphics example: SCREEN 13 DIM a(3976) AS INTEGER, b(3976) AS INTEGER, c(3976) AS INTEGER DIM d(3976) AS INTEGER, e(3976) AS INTEGER col% = 16: col1% = 16: col2% = 16: col3% = 16: col4% = 16 col5% = 16: col6% = 16: col7% = 16: flag = 1: flag1 = 1 flag2 = 1: flag3 = 1:flag4 = 1: flag5 = 1: flag6 = 1: flag7 = 1 DO GET (1, 38)-(318, 62), a PUT (2, 38), a, PSET LINE (1, 38)-(1, 62), col% IF flag = 1 THEN col% = col% + 1: IF col% = 32 THEN flag = 2 IF flag = 2 THEN col% = col% - 1: IF col% = 16 THEN flag = 1 GET (2, 63)-(319, 87), b PUT (1, 63), b, PSET LINE (319, 63)-(319, 87), col1% IF flag1 = 1 THEN col1% = col1% + 1: IF col1% = 32 THEN flag1 = 2 IF flag1 = 2 THEN col1% = col1% - 1: IF col1% = 16 THEN flag1 = 1 GET (1, 88)-(318, 112), c PUT (2, 88), c, PSET LINE (1, 88)-(1, 112), col2% IF flag2 = 1 THEN col2% = col2% + 1: IF col2% = 32 THEN flag2 = 2 IF flag2 = 2 THEN col2% = col2% - 1: IF col2% = 16 THEN flag2 = 1 GET (2, 113)-(319, 137), d PUT (1, 113), d, PSET LINE (319, 113)-(319, 137), col3% IF flag3 = 1 THEN col3% = col3% + 1: IF col3% = 32 THEN flag3 = 2 IF flag3 = 2 THEN col3% = col3% - 1: IF col3% = 16 THEN flag3 = 1 GET (1, 138)-(318, 162), e PUT (2, 138), e, PSET LINE (1, 138)-(1, 162), col4% IF flag4 = 1 THEN col4% = col4% + 1: IF col4% = 32 THEN flag4 = 2 IF flag4 = 2 THEN col4% = col4% - 1: IF col4% = 16 THEN flag4 = 1 LOOP UNTIL LEN(INKEY$) Bubble sort: REM sample of bubble sort N = 10 DIM A(N) AS INTEGER FOR L = 1 TO N A(L) = INT(RND * 10 + 1) NEXT FOR X = 1 TO N FOR Y = 1 TO N - 1 IF A(X) < A(Y) THEN SWAP A(X), A(Y) NEXT NEXT FOR L = 1 TO N PRINT A(L) NEXT END


Current uses

QuickBASIC has a community of hobby programmers who use the compiler to write
video game A video game or computer game is an electronic game that involves interaction with a user interface or input device (such as a joystick, game controller, controller, computer keyboard, keyboard, or motion sensing device) to generate visual fe ...
s, GUIs and
utilities A public utility company (usually just utility) is an organization that maintains the infrastructure for a public service (often also providing a service using that infrastructure). Public utilities are subject to forms of public control and r ...
. The community has several Web sites, message boards and
online magazine An online magazine is a magazine published on the Internet, through bulletin board systems and other forms of public computer networks. One of the first magazines to convert from a print magazine format to an online only magazine was the comput ...
s. Today, programmers sometimes use DOS
emulator In computing, an emulator is Computer hardware, hardware or software that enables one computer system (called the ''host'') to behave like another computer system (called the ''guest''). An emulator typically enables the host system to run sof ...
s, such as
DOSBox DOSBox is a free and open-source MS-DOS emulator. It supports running programs primarily video games that are otherwise inaccessible since hardware for running a compatible disk operating system (DOS) is obsolete and generally unavailab ...
, to run QuickBASIC on
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
and on modern
personal computer A personal computer, commonly referred to as PC or computer, is a computer designed for individual use. It is typically used for tasks such as Word processor, word processing, web browser, internet browsing, email, multimedia playback, and PC ...
s that no longer support the compiler. Alternatives to this include
FreeBASIC FreeBASIC is a FOSS, free and open source multiplatform compiler and programming language based on BASIC licensed under the GNU General Public License, GNU GPL for Microsoft Windows, protected-mode MS-DOS (DOS extender), Linux, FreeBSD and Xbox ...
and
QB64 QB64 (originally QB32) is a self-hosting BASIC compiler for Microsoft Windows, Linux and Mac OS X, designed to be compatible with Microsoft QBasic and QuickBASIC. QB64 is a transpiler to C++, which is integrated with a C++ compiler to provide ...
, but they cannot yet run ''all'' QBasic/QuickBASIC programs. Since 2008, a set of
TCP/IP The Internet protocol suite, commonly known as TCP/IP, is a framework for organizing the communication protocols used in the Internet and similar computer networks according to functional criteria. The foundational protocols in the suite are ...
routines for QuickBASIC 4.x and 7.1 has revitalized some interest in the software. In particular, the vintage computer hobbyist community has been able to write software for old computers that run DOS, allowing these machines to access other computers through a LAN or the internet. This has allowed systems even as old as an 8088 to serve new functions, such as acting as a
Web server A web server is computer software and underlying Computer hardware, hardware that accepts requests via Hypertext Transfer Protocol, HTTP (the network protocol created to distribute web content) or its secure variant HTTPS. A user agent, co ...
or using
IRC IRC (Internet Relay Chat) is a text-based chat system for instant messaging. IRC is designed for group communication in discussion forums, called '' channels'', but also allows one-on-one communication via private messages as well as chat ...
.


Successors

Microsoft's
Visual Basic Visual Basic is a name for a family of programming languages from Microsoft. It may refer to: * Visual Basic (.NET), the current version of Visual Basic launched in 2002 which runs on .NET * Visual Basic (classic), the original Visual Basic suppo ...
was the successor of QuickBASIC. Other compilers, like
PowerBASIC PowerBASIC, formerly Turbo Basic, is the brand of several commercial compilers by PowerBASIC Inc. that compile a dialect of the BASIC programming language. There are both MS-DOS and Microsoft Windows, Windows versions, and two kinds of the latte ...
and
FreeBASIC FreeBASIC is a FOSS, free and open source multiplatform compiler and programming language based on BASIC licensed under the GNU General Public License, GNU GPL for Microsoft Windows, protected-mode MS-DOS (DOS extender), Linux, FreeBSD and Xbox ...
, have varying degrees of compatibility.
QB64 QB64 (originally QB32) is a self-hosting BASIC compiler for Microsoft Windows, Linux and Mac OS X, designed to be compatible with Microsoft QBasic and QuickBASIC. QB64 is a transpiler to C++, which is integrated with a C++ compiler to provide ...
, a multiplatform QuickBASIC to C++ translator, retains close to 100% compatibility and compiles natively for
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
,
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
and
macOS macOS, previously OS X and originally Mac OS X, is a Unix, Unix-based operating system developed and marketed by Apple Inc., Apple since 2001. It is the current operating system for Apple's Mac (computer), Mac computers. With ...
.


See also

*
QBasic QBasic is an integrated development environment (IDE) and BASIC interpreter, interpreter for a variety of dialects of BASIC which are based on QuickBASIC. Code entered into the IDE is compiled into an intermediate representation (IR), and this ...
*
Turbo Basic PowerBASIC, formerly Turbo Basic, is the brand of several commercial compilers by PowerBASIC Inc. that compile a dialect of the BASIC programming language. There are both MS-DOS and Microsoft Windows, Windows versions, and two kinds of the latte ...
*
QB64 QB64 (originally QB32) is a self-hosting BASIC compiler for Microsoft Windows, Linux and Mac OS X, designed to be compatible with Microsoft QBasic and QuickBASIC. QB64 is a transpiler to C++, which is integrated with a C++ compiler to provide ...


References


External links


QuickBasic 4.5
{{DEFAULTSORT:Quickbasic Discontinued Microsoft BASICs BASIC compilers DOS software 1985 software Classic Mac OS programming tools BASIC programming language family