Difference between revisions of "FreeBASIC"

From RogueBasin
Jump to navigation Jump to search
(improve description, platform info; add About Time)
m (Linking to the FB roguelike tutorial)
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Background ==
== 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.
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 ==
Line 7: Line 7:
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 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 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 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 20: Line 20:


* About Time ([[1KBRL]])
* 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]]
Line 29: Line 30:


== 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

Related Links