Yabasic

Last updated
Yabasic
Developer(s) Marc-Oliver Ihm
Stable release
2.90.4 [1] / 17 September 2023;6 months ago (2023-09-17)
Repository https://github.com/marcIhm/yabasic
Operating system Microsoft Windows, Unix
Type Programming
License MIT License
Website www.yabasic.de

Yabasic (Yet Another BASIC) is a free, open-source BASIC interpreter for Microsoft Windows and Unix platforms. [2] Yabasic was originally developed by Marc-Oliver Ihm, who released the last stable version 2.77.3 in 2016. From version 2.77.1, the project has adopted the MIT License as well as the source code being moved to GitHub to encourage others to participate in its development. [3]

Contents

Features

Other versions

Yab

A version optimized for BeOS, ZETA and Haiku. [4]

Flyab

A port of Yabasic to the Fltk toolkit called "Flyab" was under development. It would have been source-compatible with programs written in yab, a variant of Yabasic that enables graphical programs to be written using the BeOS API. After BeOS and its successor ZETA finally were gone, the team members around yab for BeOS decided to move to Linux and therefore chose FLTK to implement the UI parts. Ports for Microsoft Windows, Mac OS X, and Linux would have been possible. Flyab added the ability to Yabasic to create native graphical user interfaces on all supported platforms. Main difficulty was to fully implement the layout commands to FLTK, as used from the BeOS version. [ citation needed ] As of November 2008, the project appears to be halted.

PlayStation 2

Sony also packaged a version of Yabasic for the PlayStation 2 on the demo disc [5] shipped with PS2 consoles in PAL territories so it could be considered a home computer, not just a games machine, thus bypassing European import taxes. [6]

Yabasic 3.0 (Unofficial)

As a continuation of the project prior to new changes by the original author, version 3 was being developed by a team centered on Pedro Sá and Thomas Larsen, but development has halted and the project now appears to be abandoned.[ citation needed ]

Yabasic example

#!/usr/bin/yabasicREM Program Name: cbm-mtudemo.yabREM Author: mtuREM REM Purpose: demonstration for their CBM-PET graphics card 320x200openwindow320,20020P=160:Q=10030XP=144:XR=1.5*3.141592740YP=56:YR=1:ZP=6450XF=XR/XP:YF=YP/YR:ZF=XR/ZP60FORZI=-QTOQ-l70IFZI<-ZPORZI>ZPGOTO15080ZT=ZI*XP/ZP:ZZ=ZI90XL=INT(0.5+SQRT(XP*XP-ZT*ZT))100FORXI=-XLTOXL110XT=SQRT(XI*XI+ZT*ZT)*XF:XX=XI120YY=(SIN(XT)+0.4*SIN(3.0*XT))*YF130GOSUB170140NEXTXI150NEXTZI160PAUSE10END170X1=XX+ZZ+P180Y1=YY-ZZ+Q:Y1=199-Y1190LINEX1,Y1,X1,Y1-1200IFY1=0GOTO220210CLEARLINEX1,Y1+1,X1,199220RETURN

Related Research Articles

Microsoft Windows is a product line of proprietary graphical operating systems developed and marketed by Microsoft. It is grouped into families and sub-families that cater to particular sectors of the computing industry -- Windows (unqualified) for a consumer or corporate workstation, Windows Server for a server and Windows IoT for an embedded system. Defunct families include Windows 9x, Windows Mobile, Windows Phone, and Windows Embedded Compact.

<span class="mw-page-title-main">OpenStep</span> Defunct object-oriented application programming interface specification

OpenStep is an object-oriented application programming interface (API) specification developed by NeXT. It provides a framework for building graphical user interfaces (GUIs) and developing software applications. OpenStep was designed to be platform-independent, allowing developers to write code that could run on multiple operating systems, including NeXTSTEP, Windows NT, and various Unix-based systems. It has influenced the development of other GUI frameworks, such as Cocoa for macOS and GNUstep.

<span class="mw-page-title-main">GNUstep</span> Open source widget toolkit and application development tools

GNUstep is a free software implementation of the Cocoa Objective-C frameworks, widget toolkit, and application development tools for Unix-like operating systems and Microsoft Windows. It is part of the GNU Project.

at (command) Task scheduling command on various operating systems

In computing, at is a command in Unix-like operating systems, Microsoft Windows, and ReactOS used to schedule commands to be executed once, at a particular time in the future.

wxWidgets Widget toolkit

wxWidgets is a widget toolkit and tools library for creating graphical user interfaces (GUIs) for cross-platform applications. wxWidgets enables a program's GUI code to compile and run on several computer platforms with minimal or no code changes. A wide choice of compilers and other tools to use with wxWidgets facilitates development of sophisticated applications. wxWidgets supports a comprehensive range of popular operating systems and graphical libraries, both proprietary and free, and is widely deployed in prominent organizations.

<span class="mw-page-title-main">SmallBASIC</span> BASIC programming language dialect with interpreters released as free software

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.

<span class="mw-page-title-main">FLTK</span>

Fast Light Toolkit (FLTK) is a cross-platform widget library for graphical user interfaces (GUIs), developed by Bill Spitzak and others. Made to accommodate 3D graphics programming, it has an interface to OpenGL, but it is also suitable for general GUI programming.

<span class="mw-page-title-main">Norton Commander</span> Discontinued orthodox file manager software

Norton Commander (NC) is a discontinued prototypical orthodox file manager (OFM), written by John Socha and released by Peter Norton Computing. NC provides a text-based user interface for managing files on top of MS-DOS. It was officially produced between 1986 and 1998. The last MS-DOS version of Norton Commander, 5.51, was released on July 1, 1998.

<span class="mw-page-title-main">Fox toolkit</span>

The FOX toolkit is an open-source, cross-platform widget toolkit, i.e. a library of basic elements for building a graphical user interface (GUI). FOX stands for Free Objects for X.

Cairo (graphics) Vector graphics-based software library

Cairo is an open-source graphics library that provides a vector graphics-based, device-independent API for software developers. It provides primitives for two-dimensional drawing across a number of different backends. Cairo uses hardware acceleration when available.

cmd.exe Command prompt program

Command Prompt, also known as cmd.exe or cmd, is the default command-line interpreter for the OS/2, eComStation, ArcaOS, Microsoft Windows, and ReactOS operating systems. On Windows CE .NET 4.2, Windows CE 5.0 and Windows Embedded CE 6.0 it is referred to as the Command Processor Shell. Its implementations differ between operating systems, but the behavior and basic set of commands are consistent. cmd.exe is the counterpart of COMMAND.COM in DOS and Windows 9x systems, and analogous to the Unix shells used on Unix-like systems. The initial version of cmd.exe for Windows NT was developed by Therese Stowell. Windows CE 2.11 was the first embedded Windows release to support a console and a Windows CE version of cmd.exe. The ReactOS implementation of cmd.exe is derived from FreeCOM, the FreeDOS command line interpreter.

Core Foundation is a C application programming interface (API) written by Apple Inc. for its operating systems, and is a mix of low-level routines and wrapper functions. Most Core Foundation routines follow a certain naming convention that deal with opaque objects, for example CFDictionaryRef for functions whose names begin with CFDictionary, and these objects are often reference counted (manually) through CFRetain and CFRelease. Internally, Core Foundation forms the base of the types in the Objective-C standard library and the Carbon API.

fpGUI Graphical user interface toolkit in Object Pascal

fpGUI, the Free Pascal GUI toolkit, is a cross-platform graphical user interface toolkit developed by Graeme Geldenhuys. fpGUI is open source and free software, licensed under a Modified LGPL license. The toolkit has been implemented using the Free Pascal compiler, meaning it is written in the Object Pascal language.

Vehicle registration plates in Luxembourg bear a maximum of six characters. The standard series in use today uses a format of two letters followed by four digits. Before adoption of the current scheme, marks consisting only of digits and two digits and three numbers letters, were issued. The digit-only plates may only now be issued as a custom plate.

Two major families of Mac operating systems were developed by Apple Inc.

mpv (media player) Free and open-source media player software

mpv is free and open-source media player software based on MPlayer, mplayer2 and FFmpeg. It runs on several operating systems, including Unix-like operating systems and Microsoft Windows, along with having an Android port called mpv-android. It is cross-platform, running on ARM, PowerPC, x86/IA-32, x86-64, and MIPS architecture.

References

  1. "Yabasic, Yet another Basic for Unix and Windows".
  2. Marc-Oliver Ihm. "Yabasic, Yet another Basic for Unix and Windows". Yabasic.de. Retrieved 22 April 2013.
  3. Ihm, Marc (3 April 2020), marcIhm/yabasic , retrieved 21 April 2020
  4. Albrecht, Christian (2 October 2022). "yab Beginners tutorial". BeSly - BeOS, Haiku & Zeta. Translation by Luc Schrijvers (Begasus). Retrieved 25 February 2024.
  5. Archived at Ghostarchive and the Wayback Machine : Cameron Gray (26 February 2018), How/Why Sony Classed the PlayStation 2 as a Home Computer - Demo of Yabasic , retrieved 26 February 2018
  6. Smith, Tony (11 July 2000). "Sony adds Basic to PlayStation to sidestep EC import tax". The Register . Retrieved 8 September 2014.