Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Description  





2 Intended application  





3 History  





4 Platforms  





5 Syntax  





6 Loadable modules  





7 Reception  





8 See also  





9 References  





10 External links  














SmallBASIC







Nederlands
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


SmallBASIC
SmallBASIC Screenshot
Stable release

12.27 (Windows/Linux/Android)[1] / April 26, 2024; 2 months ago (2024-04-26)[1]

Implementation languageBASIC
LicenseGPL 3
Filename extensions.bas
Websitesmallbasic.github.io

SmallBASIC is a BASIC programming language dialect with interpreters released as free software under the GNU General Public License version 3 for Microsoft Windows, Linux and Android.

Description[edit]

The dialect is described by the authors as a second generation BASIC, and has a lot in common with QBasic. SmallBASIC includes trigonometric, matrices and algebra functions, a built in IDE, a string library, system, sound, and graphic commands along with structured programming syntax.

Intended application[edit]

The "Small" prefix in the name SmallBASIC reflects the project's original intention of being used with the Palm, a small hand-held device. SmallBASIC was designed for portability, and is written in C with separate modules containing any code that is unique to a particular platform.[2][3]

SmallBASIC is intended to support the same sorts of applications supported by GW-BASIC and QBasic on the IBM PC, with support for drawing Graphic Primitives to the screen, creating sounds, String Manipulation, and displaying text in various fonts. SmallBASIC also adds functions such as "File Save", "Save As", "Close File", and "Open File" to the Palm, a device with no native filesystem. SmallBASIC is also intended as a tool for mathematics, with built-in functions for Unit conversion, Algebra, Matrix math, Trigonometry, Statistics, and for two and three dimensional Equation Graphing.[2][3]

History[edit]

SmallBASIC was designed to run on minimal hardware. One of the primary platforms supported was Palm OS,[4] where memory, CPU cycles, and screen space were limited. The SmallBASIC graphics engine could use ASCII graphics (similar to ASCII art) and therefore ran many programs on pure text devices. SmallBASIC runs even on Palm OS wristwatches made by Fossil, Inc.

Platforms[edit]

SmallBASIC is available for all POSIX-Compliant operating systems (including Linux, BSD, and UNIX),[5] DOS/DJGPP,[6] Win32,[7] FLTK,[8] VTOS,[8] Franklin eBookMan,[9] Cygwin/MingW,[10] Helio/VT-OS,[11] Android,[12] the Nokia N770 Internet Tablet.,[13] and on any system that supports SDL, FLTK, SVGALib, Linux framebuffer, or Windows GUI.

Syntax[edit]

The syntax of SmallBASIC has a lot in common with QBasic. Line numbers are not required, and statements are terminated by newlines. Multiple statements may be written on a single line by separating each statement with a colon (:)

An example "Hello, World!" program is:

PRINT "Hello, World!"

An example of how SmallBASIC allows to load an image file and display the image:

I = IMAGE("image_name.png")  'Loads a png file
I.SHOW(100,100) 'shows the image on screen at the coordinates 100,100

Loadable modules[edit]

External modules can be written in C to extend the functionality provided by SmallBASIC.[14] Since version 12.20 modules for Raylib, Nuklear and WebSockets are included in the release.[15] Additionally a loadable module to access the GPIO connector of the Raspberry Pi exists.[16]

Reception[edit]

See also[edit]

References[edit]

  1. ^ a b "Browse Files for SmallBASIC". 26 April 2024. Retrieved 23 May 2024.
  • ^ a b c "About SmallBASIC". ASCII-World. 22 February 1999. Archived from the original on 12 November 2007. Retrieved 19 January 2011.
  • ^ a b c PalmOS Hosted Programming Languages: Using the Palm as a Development Environment
  • ^ Freshmeat.net: Editing text on PalmOS using SmallBASIC.
  • ^ "SourceForge.net Repository - Unix". Smallbasic.svn.sourceforge.net. Retrieved 2011-01-22.
  • ^ "SourceForge.net Repository - DOS-DJGPP". Smallbasic.svn.sourceforge.net. Retrieved 2011-01-22.
  • ^ "SourceForge.net Repository - WIN32". Smallbasic.svn.sourceforge.net. Retrieved 2011-01-22.
  • ^ a b Gordon McComb (2002). Robot builder's sourcebook. McGraw-Hill Professional. p. 411. ISBN 0-07-140685-9. Retrieved 19 January 2011. SmallBASIC.
  • ^ "SourceForge.net Repository - EBM". Smallbasic.svn.sourceforge.net. Retrieved 2011-01-22.
  • ^ "Sigwin/MinG". Smallbasic.svn.sourceforge.net. Retrieved 2011-01-22.
  • ^ "SourceForge.net Repository - Helio". Smallbasic.svn.sourceforge.net. Retrieved 2011-01-22.
  • ^ "SourceForge.net Repository - Android". Smallbasic.svn.sourceforge.net. Retrieved 2011-01-22.
  • ^ "SmallBASIC - N770 at". Sourceforge.net. Retrieved 2011-01-22.
  • ^ "SmallBASIC plugins". GitHub. Retrieved 22 March 2022.
  • ^ "SmallBASIC Home Page". Retrieved 22 March 2022.
  • ^ "SmallBASIC PiGPIO Home Page". Retrieved 22 March 2022.
  • ^ McPherson, James (4 June 2001). "Development in the palm of your hand, part 2". Articles.techrepublic.com.com. Archived from the original on 4 September 2012. Retrieved 19 January 2011.
  • External links[edit]


    Retrieved from "https://en.wikipedia.org/w/index.php?title=SmallBASIC&oldid=1225326932"

    Categories: 
    BASIC programming language family
    Free compilers and interpreters
    Cross-platform free software
    Free software programmed in C
    Free integrated development environments
    Palm OS software
    Hidden categories: 
    Articles with short description
    Short description matches Wikidata
     



    This page was last edited on 23 May 2024, at 18:44 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki