QB64

From Seo Wiki - Search Engine Optimization and Programming Languages
Jump to navigationJump to search
QB64
The QB64 logo
Developer Galleon
Stable release 0.851 (2010-1-11; 447660016 ago[1])
Influenced by QuickBASIC, QBASIC
OS Microsoft Windows, Linux
License Freeware
Website http://www.qb64.net/

QB64 (originally QB32[2]) is a self-hosting BASIC compiler for Microsoft Windows and Linux, designed to be compatible with Microsoft QBasic and QuickBASIC. QB64 is a C++ emitter, which is integrated with a C++ compiler to provide compilation via C++ code and GCC optimization.[3]

The current version of QB64 as of December 2009 is version 0.85. This version implements most QBASIC statements, and can run many QBASIC programs, including Microsoft's QBASIC Gorillas and Nibbles games.[4] Furthermore, QB64 has been designed to contain an IDE resembling the QBASIC IDE. QB64 also extends the QBASIC programming language to include 64-bit data types, as well as better sound and graphics support.

History

QB64 was originally compiled with QuickBASIC 4.5. After significant development, Galleon, the developer, became hindered by QuickBASIC's memory limitations and switched to Microsoft Basic PDS 7.1, which solved these problems for a short time. After version 0.63, QB64 was able to compile itself so the Conventional memory limitations no longer applied.

Syntax

QB64's syntax is designed to be completely backwards compatible with QuickBASIC. Line numbers are not required, and statements are terminated by newlines or by colons (:). As in QuickBASIC, bitwise and logical operations are combined, and true is represented by negative one.

An example Hello, World program is:

10 PRINT "Hello, World!"
20 GOTO 10

Extensions to QBASIC

QB64's extended commands begin with an underscore in order to avoid conflicts with any names that may be used in a QuickBASIC program. QB64 extends the QuickBASIC language in several ways. It adds the new data types including _BIT, _BYTE, and _INTEGER64 as well as unsigned data types. The new data types have suffixes just like the traditional BASIC data types. QB64 also includes an audio library which allows playing most common audio formats including MP3, Ogg Vorbis, and MIDI files as well as libraries allowing users to use higher resolution graphics than the 640×480 offered by QuickBASIC,[5] use different fonts, and plot images in BMP, PNG, and JPEG format. The programmer doesn't have to specify which libraries to use as QB64 takes care of all that, work is being done to make QB64 more intelligent as to which libraries to include (at the moment it includes all of them). The programmer has the option to include a library of his own through the $INCLUDE command just as QuickBasic.

Libraries

QB64 currently uses the SDL library for both graphics and text modes.

References

External links