Difference between revisions of "FreeBASIC"
Iniquitatis (talk | contribs) m (FreeBASIC, not FreeBasic) |
m (Linking to the FB roguelike tutorial) |
||
(5 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
== Background == | == Background == | ||
FreeBASIC is a 32-bit BASIC compiler, with syntax similar to | FreeBASIC is a 32-bit [[BASIC]] dialect and compiler, with syntax similar to Microsoft QuickBASIC (but dramatically modernized), that adds many new features such as pointers, unsigned data types, inline assembly, object orientation, and many others. There is also a mode ("dialect") that is highly compatible with QuickBASIC. FreeBASIC programs can freely link with libraries with a [[C]] API. | ||
== Language Characteristics == | == Language Characteristics == | ||
FreeBASIC has a large number of data types, including pointers, supports both static and dynamic arrays, structured types, enumerations, a robust preprocessor, inline assembly, and has a slimmed down version of classes | FreeBASIC has a large number of data types, including pointers, supports both static and dynamic arrays, structured types, enumerations, a robust preprocessor, inline assembly, and has a slimmed down version of classes similar in style to Delphi's Extended Types. Some of the other features include namespaces, function overloading, Unicode support, variable and array initializers. | ||
FreeBASIC can create standalone executables, DLL's and libraries. GUI applications can be created using several GUI packages such as GTK and IUP, and by using the Windows API. Debugging support is provided with GDB or Insight. | FreeBASIC can create standalone executables, DLL's and libraries. GUI applications can be created using several GUI packages such as GTK and IUP, and by using the [[Windows]] API. Debugging support is provided with GDB or Insight. | ||
FreeBASIC has an extensive built-in graphics library that provides a number of graphic primitives, multi-buffer screen pages, direct access to the underlying screen pages, 8 to 32-bit color commands, BMP support, and OpenGL context creation. | FreeBASIC has an extensive built-in graphics library that provides a number of graphic primitives, multi-buffer screen pages, direct access to the underlying screen pages, 8 to 32-bit color commands, BMP support, and OpenGL context creation. | ||
Line 13: | Line 13: | ||
== Portability == | == Portability == | ||
FreeBASIC has | FreeBASIC has ports to [[Windows]], [[Linux]], [[FreeBSD]], [[DOS]], and the original XBox on 32 bit x86 CPUs. The compiler is written in FreeBASIC, and can compile to either 32-bit x86 assembly or [[C]]. Ports to [[Mac|Mac OS X]] and [[Android]] are in progress. | ||
== FreeBASIC Roguelikes == | == FreeBASIC Roguelikes == | ||
Line 19: | Line 19: | ||
The following roguelikes have been written in FreeBASIC | The following roguelikes have been written in FreeBASIC | ||
* About Time ([[1KBRL]]) | |||
* [https://users.freebasic-portal.de/rdc/programs.html#mozTocId804566 Deep Deadly Dungeons] | |||
* [[DoppeRogue]] | * [[DoppeRogue]] | ||
* [[Escape From Lab 42]] | * [[Escape From Lab 42]] | ||
* It's Extremely Dark ( | * It's Extremely Dark ([[1KBRL]]) | ||
* [[Fridge]] | * [[Fridge]] | ||
* [[Pink Ninja]] | * [[Pink Ninja]] | ||
* [[Prospector]] | * [[Prospector]] | ||
* [[Zero-Player Game]] | |||
== Related Links == | == Related Links == | ||
*[http://freebasic.net/index.php FreeBASIC Homepage] | |||
[http://freebasic.net/index.php FreeBASIC Homepage] | *[https://users.freebasic-portal.de/rdc/tutorials.html#mozTocId58846 Let's Build a Roguelike] tutorial by rdc | ||
[[Category:Programming languages]] | [[Category:Programming languages]] |
Latest revision as of 14:31, 29 May 2024
Background
FreeBASIC is a 32-bit BASIC dialect and compiler, with syntax similar to Microsoft QuickBASIC (but dramatically modernized), that adds many new features such as pointers, unsigned data types, inline assembly, object orientation, and many others. There is also a mode ("dialect") that is highly compatible with QuickBASIC. FreeBASIC programs can freely link with libraries with a C API.
Language Characteristics
FreeBASIC has a large number of data types, including pointers, supports both static and dynamic arrays, structured types, enumerations, a robust preprocessor, inline assembly, and has a slimmed down version of classes similar in style to Delphi's Extended Types. Some of the other features include namespaces, function overloading, Unicode support, variable and array initializers.
FreeBASIC can create standalone executables, DLL's and libraries. GUI applications can be created using several GUI packages such as GTK and IUP, and by using the Windows API. Debugging support is provided with GDB or Insight.
FreeBASIC has an extensive built-in graphics library that provides a number of graphic primitives, multi-buffer screen pages, direct access to the underlying screen pages, 8 to 32-bit color commands, BMP support, and OpenGL context creation.
Portability
FreeBASIC has ports to Windows, Linux, FreeBSD, DOS, and the original XBox on 32 bit x86 CPUs. The compiler is written in FreeBASIC, and can compile to either 32-bit x86 assembly or C. Ports to Mac OS X and Android are in progress.
FreeBASIC Roguelikes
The following roguelikes have been written in FreeBASIC
- About Time (1KBRL)
- Deep Deadly Dungeons
- DoppeRogue
- Escape From Lab 42
- It's Extremely Dark (1KBRL)
- Fridge
- Pink Ninja
- Prospector
- Zero-Player Game
Related Links
- FreeBASIC Homepage
- Let's Build a Roguelike tutorial by rdc