R-BASIC - Einfach unter PC/GEOS programmieren
Versions-History


R-BASIC ist eine neue Programmiersprache für PC/GEOS. Sie ist einfach zu lernen und einfach zu benutzen, so dass Anfänger gut mit ihr zurecht kommen. Gleichzeitig ist sie so leistungsfähig, dass auch anspruchsvolle Projekte realisierbar sind.

Grundlegende Eigenschaften von R-BASIC:


 

   English
R-BASIC is a new programming language for PC/GEOS. It is easy to learn and easy to use - and it is powerful to create professional projects. This page contains information in English and in German.

Basic features of R-BASIC:


 


Allgemeine Hinweise - Common Tips
Liste der älteren Releases - Release List


R-BASIC Version 1.0.3 - Mai 2023


Important news in the current version

  • Version 1.0.3 - May 2023
    • Fix serious bug: function call in return statements may fail
    • Allow more than 32000+ (2^15) lines in a single code window
  • Version 1.0.2 - November 2022
    • RadioButtonGroup object: tab-styled items added
    • Improved work with macOS and Linux files: line separator is a single LF
      This applies to text objects and file commands
    • Improved editor handling for “ Find and Replace”
    • Search within the text of text objects
    • Various bug fixes and corrections
  • Version 1.0.1 - February 2022
    • Some major bug fixes and corrections


Wichtge Neuerungen seit R-BASIC Bersion 1.0
  • Version 1.0.3 - Mai 2023
    • Falsche Fehlermeldungen gefixt
    • Schweren Bug gefixt: Funktionsaufrufe im Return-Statement konnten fehlschlagen
    • Verbessertes Handling im Suchen-Dialog
    • Compilerwarnung für NOT, gefolgt von einer offenen Klammer
    • Mehr als 32000+ (2^15) Zeilen in einem Code-Window zugelassen
  • Version 1.0.2 - November 2022
    • RadioButtonGroup-Objekt: Tab-Styled Items ergänzt
      RadioButtonGroup Looks: LOOK_TABS_TOP, _BOTTOM, _RIGHT, _LEFT
      RaisedFrame für Groups
    • “Suchen und Ersetzen“ Dialog konnte bei Nachfrage “Dieses Vorkommen ersetzten?“ den Codetext überdecken. Wird “ausgeblendet“.
    • Strg-F, Strg-R, Strg-D: automatische übernahme des Wortes am Cursor abschaltbar (getrennt voneinander)
    • Unterstützung macOS und Linux: Zeilentrenner ist einzelnes LF
      Betrifft Convert$, textObj.InsertFromFile, textObj.ReplaceFromFile, textObj.WriteToFile (neues FLag CR_TO_LF)
      sowie FileWriteLine, FileInsertLine und FileReplaceLine (neue WirteLine-Modi: WLM_APPEND_LF, WLM_CR_TO_LF, WLM_SET_TO_LF)
    • Bugfix: Launcher (R-App) registriert sich nach Neustart wieder für Clipboard-Überwachung
    • Suche in Textobjekten: FindString, FindStringBackward, CountString, ReplaceString (Alles ersetzen), bei Bedarf "nur ganze Wörter"
    • Wizzard Editor: Helpfile verständlicher formuliert und fehlendes Feature dokumentiert.
    • Librarys: exportierte Identifier werden nicht mehr bei “unbenutzen globalen Bezeichnern“ gelistet.
    • Diverse keinere Korrekturen, Rechtscheibfehler usw.
  • Version 1.0.1 - Februar 2022
    • Bugfix beim Setzen der Tausender-Punkte
    • Bug TxtObj.WriteToVMFie / WriteToFile bei leeren Texten beseitigt
    • Paragraph-Attribut von Memo/Inputline funktionierten nicht
    • Große Projektnotizen waren nicht scrollbar (Fenster größer als Bildschirm)
    • Diverse weitere interne Verbesserungen und Korrekturen


Highlights aus der vorherigen Version
Allgemeine Hinweise
Zum Download der aktuellen Version
Important news since R-BASIC version 1.0
  • Version 1.0.3 - May 2023
    • Wrong error messages fixed
    • Fix serious bug: function call in return statements may fail
    • Search dialog handling improved
    • Compiler warning for NOT followed by an open parenthesis
    • Allow more than 32000+ (2^15) lines in a single code window
  • Version 1.0.2 - November 2022
    • RadioButtonGroup object: Tab-styled items added
      RadioButtonGroup Looks: LOOK_TABS_TOP, _BOTTOM, _RIGHT, _LEFT
      RaisedFrame for Groups
    • ”Search and Replace” Dialog could cover the code text when prompt “Replace this occurrence?”. Will be "hidden" now.
    • Ctrl-F, Ctrl-R, Ctrl-D: automatic transfer of the word at the cursor can be switched off (separately from each other)
    • Support macOS and Linux: line separator is single LF
      Concerns Convert$, textObj.InsertFromFile, textObj.ReplaceFromFile, textObj.WriteToFile (new FLag CR_TO_LF)
      as well as FileWriteLine, FileInsertLine and FileReplaceLine (new WirteLine modes: WLM_APPEND_LF, WLM_CR_TO_LF, WLM_SET_TO_LF)
    • Bugfix: Launcher (R-App) re-registers for clipboard monitoring after restart
    • Search in text objects: FindString, FindStringBackward, CountString, ReplaceString (replace all), "whole words only" if needed
    • Wizzard Editor: Help file formulated more clearly and missing features documented.
    • Librarys: exported identifiers are no listed as ”unused global identifiers”.
    • Several minor corrections, spelling mistakes, etc.
  • Version 1.0.1 - February 2022
    • Bug fix when setting thousand separators in numbers
    • Bug TxtObj.WriteToVMFie / WriteToFile with empty texts eliminated
    • Paragraph attribute of Memo/InputLine didn't work
    • Large project notes were not scrollable (window larger than screen)
    • Several other internal improvements and fixes

Highlights from last version
Common Tips
Download the actual Version

R-BASIC Version 1.0 - Syhra 2021


News in Version 1.0
  • The Swap command exchanges two variables of same type.
  • There are two new text object classes VisText and LargeText.
    • VisText can be used to display and enter text directly on the graphic screen.
    • LargeText can hold and display any amount of text (up to 2 GB).
  • All text objects can save their text directly to a file and read it from there.
  • You may save project notes within your code file.
  • New object classes VisContent and VisObj for convenient and flexible graphic output.
    • Drawing graphics by writing an OnDraw handler
    • Reaction to user input with the mouse or the keyboard.
    • Automatic or manual sizing
    • Positioning of VisObj objects automatically in rows or columns, manually by program command or directly with the mouse.
    • Convenient dragging support by VisObj objects
  • Extended syntax highlighting.The compiler adds globally defined identifiers (global variables, routine names ...) to the list of words, which are highlighted by the editor.
  • Full-text search in the manuals is supported (see Help menu).
  • New editor functions, e.g. Find Corresponding Bracket (Ctrl-O) and Show/Hide the message window under the code text (Ctrl-T) added.
  • Bookmarks may be set in the source code.


Wichtge Neuerungen in Version 1.0
  • Die Dialogboxen für Suchen und Ersetzen wurden getrennt. Mit den Tasten F4 bzw. Shift-F4 kann man zum nächsten bzw. vorherigen Suchergebnis springen, auch wenn die zugehörige Dialogbox bereits schlossen ist.
  • Erweiterte Compileroptionen erlauben das Finden von vereinbarten, aber unbenutzen Bezeichnern wie z.B. Variablen.
  • Der Befehl Swap erlaubt das schnelle Vertauschen zweier Variablen gleichen Typs.
  • Es gibt zwei neue Text-Objektklassen VisText und LargeText. VisText Objekte erlauben das Bearbeiten von Text direkt auf dem Grafikscreen, mit LargeText Objekten kann man sehr große Textmengen anzeigen und bearbeiten.
  • Alle Textobjekte können ihren Text direkt in eine Datei (DOS-Datei, GEOS-Datendatei oder VM-Datei) speichern und ihn von dort lesen. Bei Bedarf kann der Text dabei gleich zwischen verschiedenen Zeichensätzen konvertiert werden.
  • Alle Textobjekte haben die Methoden Suspend und EndSuspend. Damit sind mehrfache Äderungn am Objekt ohne Flackern möglich.
  • Der Befehl POS wurde in CsrPos umbenannt. Damit steht der Bezeichner pos für Variablennamen zur Verfügung.
  • Für alle genericClass Objekte gibt es die neuen Methoden HideDelayed und ShowDelayed.
  • Sie können Projektnotizen in Ihrer Code-Datei speichern. Es stehen 4 Textfelder (z.B. eine To-Do-List, eine Buglist usw.) zur Verfügung und die Notizen werden automatisch gespeichert.
  • Neue Objektklassen VisContent und VisObj zur komfortablen und flexiblen Ausgabe von Grafik. VisObj-Objekte lassen sich automatisch (zeilen- oder spaltenweise, bei Bedarf mit Umbruch), manuell (per Programm-Anweisung) oder mit der Maus (Dragging) positionieren.
  • Es gibt eine neue Standard-Pfad Konstante SP_PRIV_DATA für das PRIVDATA-Verzeichnis.
  • Der Code-Wizzard wurde übersichtlicher gestaltet.
  • Erweiterte Syntax-Hervorhebung. Der Compiler fügt global definierte Bezeichner (globale Variablen, Routinennamen ...) zur Liste der Worte hinzu, die vom Editor farblich hervorgehoben werden. Beachten Sie, dass diese Liste nicht im Dokument gespeichert und bei jedem Compilerdurchlauf aktualisiert wird.
  • Die Syntax-Farben Dateien sind aktualisiert. Es gib ein neues Farbschema (Bernstein IBM).
  • Eine Volltext-Suche in den Handbüchern ist möglich (im Hilfe-Menü).
  • Beim Anlegen einer R-App übernimmt das Installer-Paket die Benutzernotizen vom Launcher, d.h. aus dem UI-Code bzw. vom R-App-Anlegen Dialog.
  • Suchen und Ersetzen (Strg-F) und Suche in Dateien (Strg-D) kopieren den Text am Cursor automatisch in das Suchfenster. Außerdem wird der Suchverlauf gespeichert.
  • Die ESC-Taste schließt nun auch die Dialoge "Suchen und Ersetzen", "Suche in Dateien" und "Suchergebnis".
  • Die Tastenkombinationen Strg-M (Block als Bemerkung markieren), Strg-N (Strg-M zurücknehmen), Strg-U (Block nach links) Strg-I (Block nach rechts) funktionieren nun auch für die aktuelle Zeile, ohne dass etwas markiert sein muss.
  • Im Quelltext können Lesezeichen gesetzt werden (F6-Taste), zwischen denen man mit Strg-E bzw. Shift-Strg-E hin und her springen kann.
  • Neue Editor-Funktionen:
    • Korrespondierende Klammer finden (Strg-O).
    • Selektierten Text groß schreiben (Shift Strg-U).
    • Selektierten Text klein schreiben (Shift Strg-D).
    • Selektierten Text Groß/Kleinschreibung umkehren (Shift Strg-K).
    • Selektierten Text entsprechend Syntax-Hervorhebung formatieren (Shift Strg-M).
  • In der Toolbar gibt es Tools für Suchen/Ersetzen bzw. Undo/Redo sowie für die Lesezeichen.
  • Das Optionen-Menü wurde umstrukturiert. Hier findet man auch neue Funktionen:
    • Ein/Ausblenden des Meldungsfensters unter dem Code-Text (Strg-T).
    • Ein/Ausschalten aller Tools in der Toolbar (permanent, wird in der INI gespeichert)
    • Temporäres Ein/Ausschalten der Toolbar (Shift-Strg-T, ohne speichern in der INI)
    • Ausschalten der zusätzlichen Meldungsbox bei Compilerwarnungen
  • Eine bereinigte Kopie der Code-Datei kann angelegt werden (im Datei-Menü), um verlorene Handles, ungenutzen Speicher usw. zu fixen.
  • Strg-V & Co arbeiten jetzt auch mit den Eingabe-Texten in Dialogboxen, z.B. bei Suchen/Ersetzen oder beim neu Anlegen von Objekten oder UI-Sequenzen.
  • Beim Drucken von BASIC-Code wird in der Kopfzeile das Code-Window mitgedruckt.


Highlights aus der vorherigen Version
Allgemeine Hinweise
Zum Download der aktuellen Version
Important news in version 1.0
  • The dialog boxes for Find and Replace have been separated. The F4 or Shift-F4 keys can be used to jump to the next or previous search result, even if the corresponding dialog box is already closed.
  • Advanced compiler options allow finding declared but unused identifiers such as variables.
  • The Swap command exchanges two variables of same type.
  • There are two new text object classes VisText and LargeText. VisText objects allow editing of text directly on the graphics screen, LargeText objects allow you to display and edit very large amounts of text.
  • All text objects can save their text directly to a file (DOS file, GEOS data file or VM file) and read it from there. If necessary, the text can be converted between different character sets at the same time.
  • All text objects have the methods Suspend and EndSuspend. This allows multiple changes to the object without flickering.
  • The command POS has been renamed to CsrPos. Therefore, the identifier pos is availabe for variable names now.
  • The new methods HideDelayed and ShowDelayed are available for all generic class objects.
  • You can save project notes in your code file. There are 4 text fields (e.g. a to-do list, a bug list, etc.) available and the notes are saved automatically.
  • New object classes VisContent and VisObj for convenient and flexible graphic output. VisObj objects can be positioned automatically (by rows or columns, with wrapping if required), manually (by program statement) or with the mouse (dragging).
  • There is a new standard path constant SP_PRIV_DATA to enter the PRIVDATA folder.
  • The code wizard was made more clearly structured
  • Extended syntax highlighting.The compiler adds globally defined identifiers (global variables, routine names ...) to the list of words, which are highlighted by the editor. Note that this list is not stored in the document and is updated with every compiler run.
  • Full-text search in the manuals is supported (see Help menu).
  • The syntax color files are updated. There is a new color scheme (Bernstein IBM).
  • When creating an R-App, the installer package takes the user notes from the launcher.
  • Search and Replace (Ctrl-F) and Search in files (Ctrl-D) copy the text at the cursor automatically into the search dialog box. In addition, the search history will be recorded.
  • The ESC key now also closes the Search and Replace, Search in Files and Search Results dialogs.
  • The key commands Ctrl-M (mark block as comment), Ctrl-N (undo Ctrl-M) Ctrl U (shift block left) Ctrl I (shift block right) now also work for the current line, without anything having to be marked.
  • Bookmarks may be set in the source code (F6-Key). Quick jump to bookmarks is possible with Strg-E and Shift-Strg-E.
  • New editor functions added:
    • Find corresponding bracket (Ctrl-O).
    • Capitalize the selected text (Shift Ctrl-U).
    • Lowercase the selected text (Shift Ctrl-D).
    • Invert selected text capitals and lower case (Shift Ctrl-K).
    • Format selected text according to syntax highlighting (Shift Ctrl-M).
  • In the toolbar there are tools for Search/Replace, Undo/Redo and for the Bookmarks.
  • The options menu has been restructured. Here you can also find new functions:
    • Show/hide the message window under the code text (Ctrl-T).
    • Switch on/off all tools in the toolbar (state will be saved to GEOS.INI file)
    • Temporary switching on/off of the toolbar (Shift-Ctrl-T, without saving in the INI file)
    • Switch off the additional message box for compiler warnings
  • A clean copy of the source code file may be created (File menu) to cleanup lost handles, unused space and so on.
  • The edit commands Ctrl-V etc. now also work with the input texts in dialog boxes, e.g., in Find/Replace and when creating new objects or UI sequences.
  • When printing BASIC code, the code window name is printed in the header.

Highlights from last version
Common Tips
Download the actual Version

R-BASIC Version 0.9.9.C - November 2019


News in Version 0.9.9.B and 0.9.9.C
  • Expanded search tool. Search in files implemented.
  • Big bug in number output eliminated.
  • New commands: KCClear and IgnoreWarning
  • Miscellaneous other minor improvements.


Wichtge Neuerungen in Version 0.9.9.C
  • Version 0.9.9.B (August 2019)
    • Diverse Bugfixes und Verbesserung der Stabilität.
    • Suchfunktionen verbessert. Suche in Dateien (z.B. in den Basic Beispielen) implementiert.
  • Version 0.9.9.C (November 2019)
    • Wichtiger Bugfix: Fehler in der Zahlenausgabe beseitigt.
    • Diverse weitere kleine Bugfixes und Verbesserungen.
    • Neuer Befehl KCClear löscht alle globalen Variablen, einschließlich Strings und HUGE Variablen.
    • Neuer Befehl IgnoreWarning unterdrückt die Ausgabe einer Compilerwarnung in der nächsten Codezeile.
    • Bugbeseitigng im Befehl KCSound (crash bei Laustärke Null).
    • Klick auf den Suchtext im Dialog "Suchergebnis" öffnet den Dialog "Suchen und Ersetzen"
    • Das Debugger-Fenster ist als Primary-Objekt ausgeführt. R-BASIC und das Debugger-Fenster lassen sich jetzt unabhängig vonenander minimieren.
    • Diverse weitere kleinere Verbesserungen.


Highlights aus der vorherigen Version
Allgemeine Hinweise
Zum Download der aktuellen Version
Important news in version 0.9.9.C
  • Version 0.9.9.C (November 2019)
    • Expanded search tool. Search in files implemented.
    • Big bug in number output eliminated.
    • New commands: KCClear and IgnoreWarning
    • Bugfix in KCSound command (crash at zero volume).
    • Click on the search text in the "Search result" dialog opens the "Search and replace"
    • dialog.
    • The debugger window is implemented as a Primry object. The R-BASIC IDE and the debugger window can now be minimized independently from each other.
    • Miscellaneous other minor improvements.

Highlights from last version
Common Tips
Download the actual Version

R-BASIC Version 0.9.9.A - March 2019


News in Version 0.9.9.A
  • View class has been expanded and finished
  • New object classes:
    • ViewControl (control UI for the view menu)
    • GenContent (Allows generic objects inside of a view)
  • New structure type: RectDWord
  • The function Convert$ has been expanded and there is a new system variable: convertError


Wichtge Neuerungen in Version 0.9.9.A
  • Es gibt zwei neue Objektklassen: Das ViewControl stellt die UI für das Ansicht-Menü bereit. Das GenContent ermöglicht es GenericClass Objekten (wie Buttons, Listen usw) innerhalb eines scroll- und skalierbaren Views dargestelt zu werden.
  • Die View Klasse wurde extensiv erweitert und ist nun fertiggestellt. Das umfasst unter anderem:
    • Erweiterte UI konfiguration
    • Unterstützung von Drag Scrolling. Das bedeutet, dass das View scrollt wenn die Maus bei gedrückter Maustaste aus dem View gezogen wird.
    • Scrolling und Zoom über Programm-Befehle
    • Definieren eigener Mauszeiger
  • Es gibt einen neuen System Strukturtyp RectDWord der die Koordinaten eines Rechtecks speichert.
  • IDE Bedienung: Viele Dialoge (z.B. Wizzard oder Handbücher) lassen sich jetzt über die ESC-Taste schließen.
  • Ein kleiner Fehler im Document-Interface-Code wurde beseitigt indem zwei neue Routinen zum Sichern und Wiederherstellen von globalen Variablen beim Neustart von GEOS eingeführt wurden (siehe Handbuch Spezielle Themen, Kapitel 15).
  • Diverse weitere Bugs im Zusammenhang mit einem GEOS-Neustart gefixt.
  • "More Tool Images" Paket: Bild für Redraw Tool Button hinzugefügt.
  • Die Funktion Convert$ kann jetzt HTML und UTF-8 kodierte Texte lesen und erzeugen. Für diesen Zweck wurde eine Anzhal neuer Konstanten definiert und es gibt eine neue Systemvariable convertError.


Highlights aus der vorherigen Version
Allgemeine Hinweise
Zum Download der aktuellen Version
Important news in version 0.9.9.A
  • There are two new object classes ViewControl and GenContent. The ViewControl provides the control UI for the view menu. The GenContent allows generic class objects to be displayed inside of a scalable and scrollable View.
  • The View class has been expanded extensive and is finished now. This includes for example
    • Extendend UI configuration
    • Support for drag scrolling (that is that the view scrolls when the mouse is dragged outside of the views bounds).
    • Scrolling and scaling by program commands
    • Setting different mouse pointer images
  • The tool program "Mouse Pointer Creator" simpilifies bulding your own mouse pointer image.
  • There is a new system structure type RectDWord which contains the coordinates of a rectangle.
  • IDE: Some dialogs (for examle the wizzards or the "Manuals" dialog) may now be closed by pressing the ESC key.
  • A little bug in the document interface code has been fixed. There are two new routines that save and restore global variables when GEOS shuts down and restarts again. See Special Topics Manual, chapter 15, for details.
  • Some other bugs related to system restart has been fixed.
  • "More Tool Images" package: Image for Redraw tool button added.
  • The function Convert$ may now read and create HTML and UTF-8 coded strings. A lot of new constants and a new system variable convertError has been added for this purpose.

Highlights from last version
Common Tips
Download the actual Version

R-BASIC Version 0.9.9


News in Version 0.9.9
  • Graphical Debugger: Breakpoints, stop at runtime errors, Single step execution, Display and modify variables, Display the routine stack
  • WaitForHandles command
  • Error Checking version: EC, NC, ECON, ECOFF
  • kc85Features allows compatibilty to the German KC 85/3 home computer on BASIC language level.
  • New printFont.style flag TS_DONT_EXEC_CONTROLS
  • New GraphicDrawStruct item: drawFlags with the new flag GDF_SCALE_PSET
  • New object classes:
    • Display (document windows)
      Because of the Primary is subclassed from Display object, the Primary inherits the new capabilities of the Display object.
    • DisplayGroup (manages windows)
    • DisplayControl (control UI for the window menu)


Wichtge Neuerungen in Version 0.9.9
  • Integrierter Debugger zur Fehlersuche
    • Breakpoints - Stopp an gewünschten Programmstellen
    • Automatischer Breakpoint bei Laufzeitfehlern
    • Einzelschrittbetrieb in verschiedenen Varianten
    • Anzeige und Ändern von Variablen
    • Anzeige des Routinenstacks (Aufrufreihenfolge der Routinen) und anderer Stackeinträge
  • Eine Error-Checking oder eine Non-Error-Checking Version ist complierbar
    Anweisungen EC,NC,ECON,ECOFF
  • Die neue Systemvariable kc85Features erlaubt eine Kompatibiltät mit dem KC 85/3 auf BASIC-Ebene. Das ermöglich die Portierung von KC-85-BASIC Programmen nach R-BASIC. Einige der KC 85 Features können auch für andere Programm von Interesse sein.
  • Das Beispiel "Simple Port Demo" zeigt wie man sehr einfach ältere klassische BASIC Programme unter R-BASIC zum Laufen bekommt. Ein etwas umfangreicheres Beispiel zum Portieren von KC-85 Programmen und der Benutzung von KC-85 Spezifika wie z.B. dem Zeichengenerator ist auch verfügbar.
  • Das neue printFont.style flag TS_DONT_EXEC_CONTROLS erlaubt es, Steuerzeichen (ASCII unter 32) als druckbare Zeichen zu nutzen. Das ist sinnvoll im Block-Font Modus.
  • Die Struktur GraphicDrawStruct hat ein neues Feld: drawFlags. Dort ist das Flag GDF_SCALE_PSET definiert, das bewirkt, dass die von PSet und PReset gesetzten Punkte als kleine Flächen gezeichnet werden, so dass sie vergrößert werden, wenn der Screen skaliert wird.
  • Es gibt drei neue Objektklassen: Display (Dokument Fenster), DisplayGroup (managed die Fenster) und DisplayControl (stellt die UI für das Fenster-Menü bereit).
    Da das Primary Objekt vom Display abstammt erbt es die neuen Fähigeiten des Display Objekts.


Highlights aus der vorherigen Version
Allgemeine Hinweise
Zum Download der aktuellen Version
Important news in version 0.9.9
  • Integrated graphical Debugger for error catching
    • Breakpoints - stop at specified programs points
    • Automatic Breakpoint in case of runtime errors
    • Single step execution in different variants
    • Display and modify variables
    • Display the routine stack (routine calling history) and other stack entries
  • An Error-Checking / Non-Error-Checking version may be compiled
    Statements EC,NC,ECON,ECOFF
  • The new sytem variable kc85Features allows compatibilty to the German KC 85/3 home computer on BASIC language level. Some of these features may also be useful for other programs.
  • The example "Simple Port Demo" shows how to make older classic BASIC programs run under R-BASIC in a very simple way. A more complex example about porting KC-85 BASIC programs is also available.
  • The new printFont.style flag TS_DONT_EXEC_CONTROLS allow non printable control characters (ASCII code below 32) to be printable. This may be useful in Block Font Mode.
  • The structure GraphicDrawStruct has a new item: drawFlags. The only available flag is GDF_SCALE_PSET. If set, the points drawn by PSet and PReset will be drawn as small areas. Therefore they will be enlarged if the screen is scaled up.
  • There are three new object classes Display (document windows), DisplayGroup (manages the windows) and DisplayControl (provides the control UI for the window menu).
    Because of the Primary is subclassed from Display object, the Primary inherits the new capabilities of the Display object.

Highlights from last version
Common Tips
Download the actual Version

R-BASIC Version 0.9.8


News in Version 0.9.8
  • Music and Sound
    • Playing Wav-Files
      PlayWav, PlayWavBG, StopWavBG, GetWavBGCount
      GetWavInfo, ConvertWav
    • Audio Library Configuration
      GetAudioConfig, DoAudioConfig
    • Playing single Notes
      PlayNote, AllocNoteHan, PlayNoteHan, StopNoteHan, FreeNoteHan
    • Playing FM Music
      PlayMusic, PlayMusicBG, StopMusicBG, GetMusicBGCount
      AllocMusicHan,PlayMusichan, GetMusicTime, StopMusicHan, FreeMusicHan
    • Other Sound commands
      Sound, KCSound
  • Customize Objects: privData, CustomHandler, CustomApply, CustomAction
  • New object class Canvas
  • New object class Image
  • Graphic: New Command ReadGStringFromFile


Wichtge Neuerungen in Version 0.9.8
  • 24 neue Musik und Sound Kommandos
    • PlayWav spielt eine WAV-Datei im Hintergrund, PlayWavBG, StopWavBG und GetWavBGCount spielen und verwalten mehrere WAV-Dateien im Hintergund. GetWavInfo, ConvertWav arbeiten mit WAV-Dateien.
    • GetAudioConfig und DoAudioConfig arbeiten mit der RABE-Soft Audio Library.
    • PlayNote spielt eine einzelne Note. AllocNoteHan, PlayNoteHan, StopNoteHan, FreeNoteHan spielen und verwalten eine einzelne Note, die durch ein Handle referenziert wird.
    • PlayMusic spielt FM-Musik. PlayMusicBG, StopMusicBG und GetMusicBGCount spielen und verwalten FM-Musik im Hintergrund. AllocMusicHan, PlayMusicHan, GetMusicTime, StopMusicHan, FreeMusicHan spielen und verwalten FM-Musik, die durch ein Handle referenziert wird.
    • Die Kommandos Sound und KCSound spielen Sound-Effekte.
  • Die Instancevariablen/Action-Handler privData, CustomHandler, CustomApply und CustomAction erlauben allen Objekten individuelle Daten zu speichern und zu verwalten.
  • Die neue Objektklasse Canvas zeichnet Grafiken auf sehr einfache Weise, ohne den Overhead eines BitmapContent Objekts und des dazugehörigen View Objekts.
  • Die neue Objektklasse Image stellt Bilder und Animationen direkt aus einer Datei (JPG, PCX, BMP, GIF, FLI, FLC und viele mehr) oder aus anderen Quellen dar.
  • Mit dem Befehl ReadGStringFormFile können Sie die Bilder aus GEOS Hintergrunddateien auslesen.
Updates und Bugfixes:
  • Der Befehl DrawImage arbeitet jetzt auch mit GEOS Hintergrundbildern.
  • Der Pause-Befehl verarbeitet jetzt auch Dezimalzahlen
  • Für den "mode" Parameter der Routinen FileReadLine$, FileWriteLine, FileInsertLine und FileReplaceLine sind jetzt numerische Konstanten verfügbar.
  • Der Inhalt des Hilfe-Text im Wizzard kann selektiert und per Drag&Drop in das Code-Fenster gezogen werden


Highlights aus der vorherigen Version
Allgemeine Hinweise
Zum Download der aktuellen Version
Important news in version 0.9.8
  • 24 new Music and Sound Commands
    • PlayWav plays a WAV file in foreground, PlayWavBG, StopWavBG and GetWavBGCount plays and manages playing multiple WAV files in background. GetWavInfo, ConvertWav deals with WAV files.
    • GetAudioConfig and DoAudioConfig deals with the RABE-Soft audio library.
    • PlayNote plays a singe note. AllocNoteHan, PlayNoteHan, StopNoteHan, FreeNoteHan deals with and manages playing a single note, referred by a handle.
    • PlayMusic plays FM music. PlayMusicBG, StopMusicBG and GetMusicBGCount plays and manages FM music in background. AllocMusicHan, PlayMusicHan, GetMusicTime, StopMusicHan, FreeMusicHan deals with and manages playing FM music, referred by a handle.
    • The commands Sound and KCSound play sound effects.
  • The instance variables/ActionHandlers privData, CustomHandler, CustomApply and CustomAction allow all objects to store and manage individual data.
  • The new object class Canvas can draw graphics in a simple way without the overhead of a BitmapContent object and its View object.
  • The new object class Image displays still pictures and animations from a file (JPG, PCX, BMP, GIF, FLI, FLC and much more) or from other sources.
  • The new command ReadGStringFormFile allows read access to GEOS background files.
Updates and bugfixes:
  • The command DrawImage now also works with GEOS background files.
  • The Pause command now works with decimal numbers too.
  • For the parameter "mode" of the routines FileReadLine$, FileWriteLine, FileInsertLine and FileReplaceLine are numeric constants available now.
  • The content of the wizzard's help text may be selected and pasted to the code windows by drag and drop.

Highlights from last version
Common Tips
Download the actual Version

R-BASIC Version 0.9.7


News in Version 0.9.7 / 0.9.7A
  • CropBitmap command
  • The wizzards has been updated and reorganized.
  • The helpfile has been rewritten
  • The manual has been translated to english completely


Neuerungen in Version 0.9.7 A
  • Im Menü "Hilfe" gibt es den Eintrag "Handbücher". Hier haben Sie Zugriff auf die Inhaltsverzeichnisse aller Handbücher und Sie können das entsprechende Handbuch auch gleich öffnen.
  • Inkompatible Änderung: Das Handling von ActionHandlern, die in Libraries implementiert sind, wurde geändert. Das betrifft nur Libraries! Wenn Sie eine Library haben, in der sich ActionHandler befinden, müssen Sie diese Library und alle Programme, die auf diese Library zugreifen, neu compilieren.
  • Das Kapitel über Libraries im Programmierhandbuch wurde erweitert. Es enthält jetzt eine ausfühliche Beschriebung wie man UI-Objekte in Libraries verwendet. Zwei neue Beispiele beschäftigen sich mit diesem Thema.
  • Der Befehl CropBitmap erlaubt das Ausschneiden eines Teils einer Bitmap, die durch ein Bitmaphandle referenziert wird. Das schließt die Möglichkeit ein, die ganze Bitmap zu kopieren.
  • Das Anlegen von UI-Objekten und UI-Sequenzen wurde verbessert. Es gibt einen "Verlinkungs-Assistenten"
  • Das Anfänger-Tutorial im Programmierhandbuch wurde durch Einf¨gen von Bildern und geänderte Formulierungen verbessert.
  • Man kann den Codewindows eigene Namen geben, z.B. "Hauptprogramm" statt "BASIC-Code" oder "Variablen" statt "DIM & DATA" (Menü "Optionen"->"Editor Einstellungen"->"Code Windows benennen").
Neuerungen in Version 0.9.7
  • Die Wizzard laden jetzt wesentlich schneller.
  • Der Wizzard wurde aufgeteilt in einen Codewizzard und eine Objektwizzard. Der Codewizzard enthält thematisch sortiert alle BASIC Befehle, der Objektwizzard ist alphabetisch nach den Objektklassen sortiert.
    Durch diese Strukturierung eigenen sich beide Wizzards gut, um sich einen Überblick über die verfügbaren Befehle zu einem bestimmten Thema oder zu den Fähigkeiten und Eigenschaften einer bestimmten Objektklasse zu verschaffen.
  • Die Hilfedatei ist komplett neu gemacht. Sie ist als Wegweiser durch die Handbücher konzipiert. Dadurch entfällt die Dopplung der Informationen in den Handbüchern und der Hilfedatei. Außerdem enthält sie eine Quick-Referenz für alle R-BASIC Kommandos als auch für allr R-BASIC Objektklassen.

Highlights aus der vorherigen Version

Allgemeine Hinweise

Zum Download der aktuellen Version

News in Version 0.9.7 A
  • There is a new topic "Manuals" in the "Help" menu. You will find the table of contents of all manuals and you may open the selected manual directly.
  • Incompatible Change: The handling of ActionHandlers which are implemented in Libraries has been changed. This only applies to libraries! If you have a Library which contains ActionHandlers, you have to re-compile your library and all programs that uses this library.
  • The library chapter in the Programming Manual has been expanded. It extensively describes how to use UI objects in libraries. Two examples that deal with UI objects in libraries have been added.
  • The new command CropBitmap allows to create a copy of a part of a bitmap which is referred by a handle. This includes copying the whole bitmap.
  • Creating UI objects and UI sequences has been improved. There is a "Link objects" assistant.
  • The beginners tutorial in the programming manual has been improved by adding pictures and new texts.
  • You may assign individual names to the code windows; for example "Main Program" instead of "BASIC-Code" or "Variables" instead of "DIM & DATA". Use the menu "Options"-> "Editor Options"->"Rename Code Windows"
News in version 0.9.7
  • The Programming Manual has been translated to English. All BASIC commands are documented in English now.
  • Wizzards loads much faster now.
  • The Wizzard has been splitted into a Code Wizzard and an Objects Wizzard. The Code Wizzard contains all BASIC commands and functions, sorted by topic. The Objects Wizzard contains all object classes and its features, sorted in lexical order.
    Because all Wizzards entries are sorted, you may use the Wizzards to get an overview about a particular programming topic or about an object class and its properties.
  • The help file has been rewritten. It is designed as navigator through the manuals. Ist also contains a complete quick reference of all BASIC commands and all BASIC objects.

Highlights from last version

Common Tips

Download the actual Version

R-BASIC Version 0.9.6


News in Version 0.9.7
  • Working with Julian Day:
    JDFromDAT, DATFromJD, JDDeltaFromMinutes
  • Connected lines and splines:
    • PointList structure
    • PolyLine, Polygon, FillPolygon
    • Spline, ClosedSpline, BezierSpline
  • Text bounds:
    GetTextWidth, GetTextHeight
  • Other:
    • KbdEventWithScancode method (all objects)
    • CopyBitmap method for BitmapContent objects
    • ModifiedOnRedundantSelection hint for RadiobuttonGroup objects
    • LocalFormatDateAndTime$
    • ClassicCode statement to enter the "classic" BASIC mode
    • StandardSound for playing the GEOS standard sounds
  • There is a major update for the manual.

Neuerungen in Version 0.9.7
  • Die Funktionen JDFromDAT, DATFromJD und JDDeltaFromMinutes ermöglichen die Arbeit mit dem Julianischen Datum. Damit kann man Zeitdifferenzen sehr einfach berechnen, auch über Monats- und Jahresgrenzen hinaus.
  • Die Kommandos FormatDate$ und FormatTime$ wurden funktionell etwas erweitert. LocalFormatDateAndTime$ ist neu und erlaubt das Formatieren von Datums- und Zeit-Strings entsprechend den lokalen Einstellungen des aktuelle PC/GEOS Systems.
  • Es gibt 6 neue Grafikkommandos und einen neuen Strukturtyp um verbundene Linien, Polygone und Splines zu zeichnen.
  • In der R-BASIC IDE wird der Zwischenablagenverlauf überwacht und gespeichert. Das heißt, man kann auf Inhalte der Zwischenablage zurückgreifen, die eigentlich bereits überschrieben wurden.
  • Diverse kleinere Änderungen an der UI.
  • Die Picture-List kann in einer Datei gespeichert werden und aus einer Datei geladen (hinzugefügt oder ersetzt) werden. So kann man beispielsweise die Liste sichern, von einem Programm in eine anderes übertragen oder eine Sammlung von Picture-Listen erstellen.
  • Mit dem neuen Tool "Basic Salvager" kann man den Code und die Picture-List von beschädigten R-BASIC Code-Dateien retten.
  • Vielleicht etwas esoterisch: Die neue Methode KbdEventWithScancode erlaubt die Verwendung von simulierten Tastaturereignissen zum Aktivieren von Menüeinträgen, die bei ihrem Tastaturkürzel das Bit KSM_PHYSICAL gesetzt haben.
  • Die Methode CopyBitmap für BitmapContent Objekte kopiert die Bitmap des Objekts in eine "off-screen" Bitmap, die mit der Routine DrawBitmap gezeichnet werden kann. Damit braucht man nicht mehr für jede Bitmap ein Bitmap-Objekt.
  • Der neue Hint ModifiedOnRedundantSelection für RadiobuttonGroups bewirkt, dass die RadiobuttonGroup ihre Apply Message aussendet, wenn der Nutzer einen bereits selektierten Eintrag erneut selektiert.
  • Die Stringfunktionen GetTextWidth und GetTextHeight liefern Breite und Höhe in Pixeln, die ein String benötigt, wenn er auf dem Bildschirm dargestellt wird.
  • Im Block-Grafik-Modus können jetzt sowohl monochrome Zeichen als auch Zeichen mit 256 Farben verwendet werden.
  • Das Tool "Blockgrafik Editor" hat ein umfangreiches Update erfahren. Es unterstützt Blockgrafiken mit 256 Farben und verfügt über neue Zeichentools, Backup-Funktion, Arbeit mit dem Clipboard ...
  • Um in den "klassischen" BASIC Modus zu wechseln muss die neue Anweisung "ClassicCode" verwendet werden.
  • Mit der Anweisung StandardSound können die GEOS Standard Sounds (z.B. f¨r Fehler, Warnung) gespielt werden.
  • Die Class$ Methode ist jetzt im Objekt-Handbuch dokumentiert.
  • Das Programmierhandbuch ist fertiggestellt. Ausnahme ist nur das Kapitel zum Thema Sound, da die Funktionen noch nicht vollständig implementiert sind. Damit ist die komplette R-BASIC Programmiersprache im Handbuch dokumentiert.

Inkompatible Änderungen:

  • BlockSave Kommando: Parameter geändert
  • Um in den "klassischen" BASIC Modus zu wechseln muss die neue Anweisung "ClassicCode" verwendet werden. Das betrifft nur nicht objekt-orientierten Programme.
  • Die Optionen "Klassisches BASIC Program" und "BASIC Library" wurden aus dem "Neu/Öffen"-Dialog entfernt. Um eine Library zu schreiben müssen Sie ein leeres "Programm" in eine "Library" konvertieren. Dazu gibt es einen entsprechenden Button im "Extras" Menü.
  • Das Versionshandling von BASIC-Libraries wurde geändert.

Highlights aus der vorherigen Version

Allgemeine Hinweise

Zum Download der aktuellen Version

News in version 0.9.6
  • The functions JDFromDAT, DATFromJD and JDDeltaFromMinutes allows working with the Julian Day (aka Julian Date). This allows you to calculate time differences in a very easy way, in particular when crossing month or year bounderies.
  • The commands FormatDate$ and FormatTime$ have new features. LocalFormatDateAndTime$ is a new command and allows date and time formatting respecting the local settings of the actual PC/GEOS system.
  • There ars 6 new graphic commands and a new structure type for drawing connected lines, polygons and splines
  • The R-BASIC IDE monitors and stores the clipboard history. That is, the BASIC programmer may access older clipboard contents, which are already overwritten.
  • Some small changes of the UI.
  • The Picture-List may be saved to a file or loaded (replaced or appended) from a file. This allows you to backup a Picture-List, transfer it from one program to another, to build a collection of Picture-Lists and much more.
  • The new tool "Basic Salvager" allows to salvage the code and the Picture-List of damaged R-BASIC code files.
  • Somewhat esoteric: The new method KbdEventWithScancode enables using simulated keyboard events to activate menu entries which have set the bit KSM_PHYSICAL in their keyboard shortcut instance variable.
  • The CopyBitmap method for BitmapContent objects copies the bitmap from the object to an "off-screen" bitmap, drawable with the DrawBitmap command. CopyBitmap is a simple way to manage a lot of bitmaps without having a BitmapContent object for each bitmap.
  • The new hint ModifiedOnRedundantSelection forces a RadiobuttonGroup to send out its Apply message when the user selects an already selected item again.
  • The string functions GetTextWidth and GetTextHeight calculates the width and height (in pixels) required to draw a string on the screen.
  • In Block Graphics Mode now works with monochrome and colored (256 colors) charatcer sets.
  • The tool "Block Graphcis Editor" has been updated. It now supports 256 color block graphics, has new graphic tools, works with th clipboard an much more.
  • The new ClassicCode statement must be used to enter the "classic" BASIC mode.
  • The StandardSound statement plays the GEOS standard sounds, for example for error or for warning purpose.
  • Class$ method has been documentet in Objects Manual now.
  • The Programming Manual, volume 1 and 2 has been finished. They contain the basics about the R-BASIC language like working with numbers and working with strings.

Incompatible changes

  • BlockSave command: Parameters changed
  • The new "ClassicCode" statement must be used to enter the "classic" BASIC mode. This affects only non-object oriented programs.
  • The options "Classic BASIC programn" and "BASIC library" are not langer available in the "New/Open" dialog box. To build a library you have to convert an empty "program" into a "libray" by coosing the appropriate buttom from "Extras" menu.
  • The version handling of BASIC libraries has been changed.

Highlights from last version

Common Tips

Download the actual Version

R-BASIC Version 0.9.5


News in Version 0.9.5
  • WWFixed numeric data type
  • WWFixed routines:
    FixSqr, FixSin, FixCos, FixTan, FixAsn
  • Conversion routines:
    MakeFixed, FixToReal, FixToWord
  • Fast variable modification:
    INCR, DECR
  • Updated and expanded manual

Neuerungen in Version 0.9.5
  • Ein neuer numerischer Datentyp WWFixed ermöglich schnellere numerische Berechungen.
  • Diverse interne Updates und Fixes.
  • Deutliche Vergrößerung der Abarbeitungsgeschwindigkeit.
  • Das Handbuch wurde überarbeitet. Es gibt eine neue Struktur (Umbenennungen) und viele neue Kapitel.
  • Die Befehle INCR und DECR erlauben das schnelle Verändernd von Variablen um ganzzhalige Werte

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

News in version 0.9.5
  • A new numeric data type WWFixed allows faster mathematical calculations.
  • Some internal updates and fixes.
  • Significant runtime speed improvement.
  • The manual has been reorganized (partially renamed) to its final structure.
  • The commands INCR and DECR allow fast variable modification by whole numbers.

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Version 0.9.4


News in Version 0.9.4
  • PrintControl object
    • Instance variables:
      pcAttrs, pcAppUI, totalPageRange, userPageRange, pcDocSize, pcDocMargins, pcLayout, pcPaperSizeInfo, printJobName$, OnPrint, OnVerifyPrint, printMode
    • Methods:
      InitiatePrint, PrintingVerified, ReportProgress, ReportProgressText, PrintNewPage, PrintingCompleted, PrintingCancelled
  • PageSizeControl object
    • Instance variables:
      pageSize, pageMargins, pageLayout, pscFeatures
    • Methods: ShowDialog
  • String function ReplaceStr$
  • Routine PrintObj


Neuerungen in Version 0.9.4
  • Die R-BASIC IDE kann drucken.
  • R-BASIC Programme können drucken. Dafür gibt es die neuen Objektklassen PrintControl und PageSizeControl.
  • Das PrintControl managt alle Vorgänge, die zum Drucken notwendig sind und stellt auch den "Drucken" Dialog bereit.
  • Das PageSizeControl stellt die UI bereit, die man benötigt, um die Seitengröße, das Layout und die Ränder einzustellen.
  • Die Funktion PrintObj erlaubt es Objekten, sich selbst zu drucken.
  • Die Stringfunktion ReplaceStr$ erleichtert den Umgang mit Strings.

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

News in version 0.9.4
  • The R-BASIC IDE may print.
  • R-BASIC programs may print. The new object classes PrintControl and PageSizeControl are provided in this context.
  • The PrintControl object manages all processes, which are involved in printing and it provides the "Print" dialog box.
  • The PageSizeControl object provides all UI objects, which are required to select page size, layout and margins.
  • The function PrintObj allows objetcs to print itself.
  • The string function ReplaceStr$ enhances working with strings.
  • Highlights from last Beta

    Common Tips

    Download the actual Version

R-BASIC Version 0.9.3


News in Version 0.9.3
  • Timers: TimerStart, TimerStop and TimerAction
  • Working with Bitmap handles: DrawBitmap, GetBitmapInfo, ClipboardPutBitmap, ClipboardGetBitmap, ReadBitmapFromFile, WriteBitmapToFile, FreeBitmap
  • Writing GEOS background files: SaveBitampAsBackground, SaveGStringAsBackground
  • The BitmapContent object is finished now.
    • Working with the keyboard (instance variables OnKeyPressed, inputFlags)
    • Working with the mouse
      • Handlers: OnMouseButton, OnMouseMove, OnMouseOver
      • sendMouseEvents (flag bit field to enable/disable events)
      • GrabMouse, ReleaseMouse
      • Tools: TestInside, TestInsedAC
    • Transparency support: editMask, suspendDraw
    • Palette support: GetPaletteEntry, SetPaletteEntry, GetFullPalette, SetFullPalette
    • Other: Redraw, GetBitmapHandle, NewBitmapFromHandle
  • View objects supports keyboard handling (instance variables OnKeyPressed, inputFlags)
  • SDK compatible synonymes for some object classes: GenTrigger (Button), GenBoolean (Option), GenBooleanGroup (OptionGroup), GenItem (RadioButton), GenItemGroup (RadioButtonGroup)


Neuerungen in Version 0.9.3
  • ActionHandler können periodisch aufgerufen werden, indem bis zu 8 Timer aktiviert werden.
  • Arbeit mit Bitmaps, die über ein Bitmap-Handle referenziert werden. Zum Beispiel können Sie eine Bitmap in eine andere Bitmap oder in einen GString zeichnen oder eine Bitmap aus einer Bilddatei auslesen. Das Schreiben in eine BMP Datei ist ebenfalls möglich.
  • Bitmaps und GStrings können als GEOS Hintergrundbild gespeichert werden.
  • Das BitmapContent Objekt ist fertiggestellt. Folgende Fähigkeiten wurden neu implementiert:
    • Reaktion auf Tastatureingaben. Es ist möglich einen Tastaurhandler für BitmapContent Objekte zu schreiben.
    • Reaktion auf Mauseingaben. Es gibt spezielle Handler für den Fall, dass der Nutzer die Maus über dem Objekt bewegt, in das Objekt klickt oder es betritt bzw. verlässt. Das Objekt kann die Maus "grabben". In dieser Zeit erhält es auch die Mausereignisse, wenn der Mauszeiger den Objektbereich verlässt.
    • Unterstützung von Masken (Transparenz). Die Transparenzebene kann mit den normalen Grafikbefehlen bearbeitet werden, so dass Sie die Form des durchsichtigen Bereichs völlig frei wählen können.
    • Unterstützung von Paletten. Paletten ermöglichen es auszuwählen, welche Farben eine 256-Farb-Bitmap darstellt. Sie sind nicht mehr an die GEOS-Standardfarben gebunden.
    • Sie können das Bitmap-Handle auslesen und die Bitmap basierend auf einem Bitmap-Handle neu anlegen.
  • Für View-Objekte ist das Überschreiben von Tastaturereignissen ebenfalls möglich (Instancevariablen OnKeyPressed, inputFlags)
  • Programmieren mit SDK-Hintergrund wird die Arbeit erleichtert, indem ein paar SDK-Begriffe als Synonyme für BASIC-Klassen zugelassen werden: GenTrigger (Button), GenBoolean (Option), GenBooleanGroup (OptionGroup), GenItem (RadioButton), GenItemGroup (RadioButtonGroup)

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

News in version 0.9.3
  • ActionHandler my be called periodically by activating up to 8 Timers.
  • Working with bitmaps, which are referenced by a bitmap handle. For example, bitmaps may be drawn to other bitmaps or to GStrings, they may be load from and a image file or be written to a BMP file.
  • Bitmaps and GStrings may be saved as GEOS background files.
  • The BitmapContent object is finished. The following features are newly implemented:
    • Reaction to keyboard input. You may write a keyboard handler for BitmapContent objects.
    • Reaction to mouse input. There are handlers for the case that the user moves the mouse over the object, clicks in the object, enters or leaves it. The object may grab the mouse to receive any mouse event, even if the mouse pointer leaves the objects area.
    • Support for transparency. The transparency plane may be edited with the standard graphic commands. Therefore, you may set up the transparency shape as you wish.
    • Support for palettes. Palettes allows you to chose the colors which are displayed by a 256 color bitmap. You are not longer restricted to the GEOS standard colors.
    • You may get the bitmap handle and rebould the bitmap based on an bitmap handle.
  • The object class View may also handle keyboard events (instance variables OnKeyPressed, inputFlags)
  • Programmers with SDK background by prefer the SDK terms for some BASIC classes, which are available as synonymes: GenTrigger (Button), GenBoolean (Option), GenBooleanGroup (OptionGroup), GenItem (RadioButton), GenItemGroup (RadioButtonGroup)

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Version 0.9.2


News in Version 0.9.2
  • The SDK-library interface is released.
  • New object class DocumentGuardian
  • The code for the document interface can be inserted into your program from a menu.
  • New libraries: DocumentTools and VMFiles.


Neuerungen in Version 0.9.2
  • Das SDK-Library Interface ist freigeschaltet. PC/GEOS SDK-Programmierer können damit SDK-basierte Libraries fü R-BASIC schreiben.
  • Die Objektklasse DocumentGuardian übernimmt die Verwaltung von Dokument-Dateien. Gemeinsam mit den Libraries DocumentTools und VMFiles ist es sehr einfach ein Dokument-Interface zu implementieren.
  • Über das Menü "Extras"->"Code Bausteine" kann man den (umfangreichen) Code für das Dokument-Interface in sein Programm einfügen. Dieser Code wird im Handbuch (Spezielle Themen, Kapitel 15) ausführlich erklärt.
  • Die Libraries DocumentTools und VMFiles wurden veröffentlicht.

Inkompatible Änderungen:

  • Textobjekte, die eines oder mehrere der Zeichenattribute gesetzt haben (Font, Größe, Stil, Farbe) haben als Default- Font URW_SANS statt Berkeley. Die Kombination von Berkeley mit bestimmten (nicht untertstützten) Textstilen kann zum Systemabsturz führen.

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

News in version 0.9.2
  • The SDK-library interface is released. PC/GEOS SDK programmers can write SDK-based libraries for R-BASIC.
  • The object class DocumentGuardian manages document files. Together with the libraries DocumentTools and VMFiles it is very easy to implement a document interface.
  • The code for the document interface can be inserted into your program from menu "Extras"->"Code sequences". This code is explained in detail in manual "Special Topics" chapter 15.
  • The libraries DocumentTools and VMFiles are released.

Incompatible changes

  • Text objects, which have set one or more of the character attributes (font, size, color, style) have as default font URW_SANS set rahter than Berkeley. Combining Berkeley with some styles (not supported by this font) may cause the system to crash.

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Version 0.9.1


News in Version 0.9.1
  • The FileSelector object displays folders and files
    • The NotificationHandler handles selections made by the user.
    • InitialPath, showFilesDisabled, numFilesToShow, fileListWidth, hasMatchToken, ClearMatchToken, hasMatchCreator, and ClearMatchCreator are supported to configure the object.
    • Selections$, path$, fullPath$ and entryFlags allows access to selected file.
    • MatchToken, matchCreator and matchMask$ filters files by GEOS tokens and by name.
    • MatchCriteria allows filtering files by type and other critera.
    • Other supported methods are Suspend, EndSuspend, UpDirectory, Rescan and OpenEntry
  • The ColorSelector object allows to select colors and draw patterns
    • ColorChangedHandler handles selections made by the user.
    • csFeatures specifies the UI, displayed to the user.
    • csColor, csIndexColor, csDrawMask, csDrawMaskValue and csFillPattern contains the values, selected by the user.
  • ConstructPath$, GetStandardPath and GetStandardPathTail$ works with standard path constants.
  • FileGetRelease and FileSetRelease allows access to the release number of files.
  • FileGetProtocol and FileSetProtocol allows access to the protocol number of files.
  • Caption2$ can be used to display an additional information in the title bar of a primary object.
  • A lot of code for an document interface can be inserted into your program from "Extras" menu.


Grundlegende Eigenschaften von R-BASIC:
  • Einfache, leicht zu erlernende BASIC Syntax
  • PC/GEOS Objekte
  • Action-Handler zur Reaktion auf Ereignisse
  • Freie Gestaltung der UI oder "klassiches" Ausgabefenster möglich

Neuerungen in Version 0.9.1

  • Das FileSelector Objekt ermöglicht die Anzeige eines Verzeichnisses und die Navigation im Verzeichnisbaum. Über verschiedene Kriterien kann ausgewählt werde welche Dateien angezeigt werden sollen.
  • Das ColorSelector Objekt erlaubt die Auswahl von Farben (Index- und RGB-Farben), Rastern und Füllmustern. Welche der Fähigkeiten bereitgestellt werden kann eingestellt werden.
  • ConstructPath$, GetStandardPath und GetStandardPathTail$ erlauben die Konstruktion und die Analyse von Pfaden innnerhalb des GEOS Systems.
  • FileGetRelease und FileSetRelease erlauben den Zugriff auf die Release-Nummer von Dateien. Die Release-Nummer entspricht der Versionsnummer in R-BASIC.
  • FileGetProtocol und FileSetProtocol erlauben den Zugriff auf die Protocol-Nummer von Dateien. Sie wird zum Versionscheck innerhalb von GEOS verwendet.
  • Die Instancevariable Caption2$ erlaubt es, eine zusätliche Information (z.B. den Namen des aktuell offenen Dokuments) in der Titelzeile des Primary Objekts anzuzeigen.
  • Über das Menü "Extras"->"Code Bausteine" kann man den (umfangreichen) Code für ein Dokument-Interface in sein Programm einfügen. Dieser Code wird im Handbuch (Spezielle Themen, Kapitel 15) ausführlich erklärt.

Inkompatible Änderungen:
Die Pfade zu den Icon-Bildern im Ordner USERDATA\R-BASIC\IMAGES wurden von Deutsch auf Englisch umgestellt, also "Icon Tool Graphics" statt "Icon Tool Grafiken" und "Cards" statt "Karten".

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

Basic features of R-BASIC:
  • Simple, easy to learn BASIC syntax
  • PC/GEOS objects
  • Action handler to respond to events
  • Free User Interface development or "classic" output window possible

News in version 0.9.1

  • The FileSelector object allows you to display folders, navigation through the file tree and select files or folders. You may filter out files that should be displayed or not by different criteria such as tokens, file names, file type or other.
  • The ColorSelector object allows the user to select colors (Index colors and RGB colors), fill patterns and "shaded" values. You may select which of these features are active and therefore displayed to the user.
  • ConstructPath$, GetStandardPath and GetStandardPathTail$ allows construction and analysis of paths inside the GEOS tree.
  • FileGetRelease and FileSetRelease allows access to the release number of files. The release number is equvalent to the version number of R-BASIC programs.
  • FileGetProtocol and FileSetProtocol allows access to the protocol number of files.
  • The instance variable Caption2$ can be used to display an additional information (usually the name of the currently used document) in the title bar of the primary object.
  • The menu "Extras"->"Code sequences" provides a lot of code for an document interface, which can be inserted into your program. This code is explained in detail in manual "Special Topics" chapter 15.

Incompatible changes
none

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Version 0.9.0


News in Version 0.9.0
  • Quick insert code and UI sequences, action handlers or objects using new menu entries in the "extras" menu.
  • A "Picture-List" manages graphics, stored in the code file, for use at runtime or for captions.
  • Commands for drawing graphics
    • DrawPicture draws graphics from PictureList
    • DrawImage draws graphics from external file
    • DrawIcon draws an icon from TokenDB
    • ClipboardPutGS, ClipboardGetGS
    • ItemGString allows graphics in dynamic lists
  • Working with graphic strings
    • StartRecordGS, EndRecordGS
    • DrawGS, FreeGS
    • ClipboardPutGS, ClipboardGetGS
    • ItemGString allows graphics in dynamic lists
  • Graphic captions for objects
    • CaptionPicture, CaptionImage
    • CaptionGString, CaptionIcon
  • New graphic drawing commands
    • DrawPicture
    • DrawImage
    • DrawIcon
  • GraphicInfo
  • GraphicInfo strcuture is used to find out graphic size and more. Related routines:
    • GetGStringInfo
    • GetImageInfo
    • GetPictureInfo
  • ScreenSetClipRect limits the graphic output to given rectangle
  • Handling Keyboard input (Application, Memo, InputLine)
    • OnKeyPressed (KeyboardAction)
    • inputFlags
  • Handling focus and target hierarchy. Keyboard input goes to the Focus object, control commands (Copy, Paste,...) goes to the Target object.
    • OnTargetChanged (TargetAction), OnFocusChanged (FocusAction)
    • defaultFocus, defaultTarget, targetable
    • System variables: Focus, Target
  • Declaring keybord shortcuts: kbdShortcut, kbdSearchPath
  • Trim$ function
  • Class$ method returns the class name in clear text
  • Calculate numeric values (array indices, e.g.) at compile time using fundamental rules of arithmetic, logical operations and simple math functions
  • Struct comparisations are possible
  • New text object features
    • Character attributes: fontID, fontSize, textStyle, textColor
    • Paragraph attributes: backColor, justifyText, lineSpacing, margins, topSpace
    • Object attributes: textAttrs, TextFrame, TextNoFrame, SelectableIfRO
    • cursorPos, selectionEnd, selectionLen
    • Retrieving text: SelectedText$, TextRange$
    • Modifying text: Append, Insert, ReplaceSelection, DeleteSelection, DeleteRange
    • ShowCursor, ScrollUp, ScrollDown
    • Filtering input: textFilter
  • Object classes, that are finished now
    • Primary
    • Button
    • Number
    • Group
    • Dialog
    • Menu
    • Option, OptionGroup
    • RadioButton, RadioButtonGroup
    • DynamicList
    • Memo
    • InputLine
  • Object classes, that works fine, but are not finished yet
    • Application
    • View
    • BitmapContent


Grundlegende Eigenschaften von R-BASIC:
  • Einfache, leicht zu erlernende BASIC Syntax
  • PC/GEOS Objekte
  • Action-Handler zur Reaktion auf Ereignisse
  • Freie Gestaltung der UI oder "klassiches" Ausgabefenster möglich

Neuerungen in Version 0.9.0

  • Über neue Einträge im "Extras"-Menü kann man schnell und einfach vorgefertige Codesequenzen, Action-Handler und Objekte einfügen
  • Eine "Picture-List" verwaltet Grafiken, die zur Laufzeit und für Captions verwednet werden können.
  • Arbeit mit Graphic Strings
  • Grafische Captions für Objkete
  • ScreenSetClipRect beschränkt den Ausgabebereich für Grafiken
  • Berechung von Konstanten aus anderen Konstanten zur Compilezeit
  • Textobjekte sind fertiggestellt
  • Handling Focus und Target-Hierarchie
  • Überschreiben von Tastaturereignissen

Inkompatible Änderungen:
keine

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

Basic features of R-BASIC:
  • Simple, easy to learn BASIC syntax
  • PC/GEOS objects
  • Action handler to respond to events
  • Free User Interface development or "classic" output window possible

News in version 0.9.0

  • Quick insert code and UI sequences, action handlers or objects using new menu entries in the "Extras" menu.
  • A "PictureList" manages graphics, stored in the code file, for use at runtime or for captions.
  • Working with graphic strings
  • Graphic captions for objects
  • ScreenSetClipRect limits the graphic output to given rectangle
  • Constants may be calculated from other constants at compile time
  • Text objects are finished
  • Handling Focus and Target hierarchy
  • Intercepting keyboard events

Incompatible changes
none

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Version 0.8.9


News in Version 0.8.9
  • Enhanced UI Management for Windowed Objects
    Hints
    • WindowNotMovable
    • ExtendWindowToBottomRight, ExtendWindowNearBottomRight
    • WindowSizeFromParent, WindowSizeFromScreen
    • PositionWindowAtMouse
    • WindowPositionFromParent
    • StaggerWindow, CenterWindow, TileWindow
    • WindowNoContraints
    Methods
    • BringToTop
    • LowerToBottom
    • MoveWin
    • ResizeWin
  • Grouping Objects Size Restrictions
    • NoHigherThanChildren
    • NoWiderThanChildren
  • New Methods and Instances for List Objects
    • MakeVisible (item)
    • isSelected (item)
    • isModified (item)
    • InsertItems
    • RemoveItems
  • Busy state and suspending input for Application class
    • MarkBusy
    • MarkNotBusy
    • HoldUpInput
    • ResumeInput
    • IgnoreInput
    • AcceptInput
  • Object classes, that are finished now
    • Primary
    • Button
    • Number
    • Group
    • Dialog
    • Menu
    • Option, OptionGroup
    • RadioButton, RadioButtonGroup
    • DynamicList
  • Object classes, that works fine, but are not finished yet
    • Application
    • Memo
    • InputLine
    • View
    • BitmapContent


Grundlegende Eigenschaften von R-BASIC:
  • Einfache, leicht zu erlernende BASIC Syntax
  • PC/GEOS Objekte
  • Action-Handler zur Reaktion auf Ereignisse
  • Freie Gestaltung der UI oder "klassiches" Ausgabefenster möglich

Neuerungen in Version 0.8.9

  • Viele neue Hints und Methoden die das Management von Window-Objekten (Fenstern) wie Primaries und Dialogen verbessern. Dazu gehört sowohl das Größenmanagement, die Positionierung als auch das Bringen in den Vordergrund oder den Hintergrund.
  • Komplettierung der Methoden zur Arbeit mit Listen-Objekten. Das betrifft insbesondere die Arbeit mit Listen, wenn mehr als ein Eintrag gleichzeitig selektiert ist.
  • Das Application-Objket unterstützt den "Busy" Status ("Bin beschäftigt", Sanduhr-Cursor) und die zeitweise Suspendierung von Usereingaben.
  • Alle Neuerungen und Änderungen sind in ebenfalls überarbeiteten Handbuch dokumentiert.

Inkompatible Änderungen:
keine

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

Basic features of R-BASIC:
  • Simple, easy to learn BASIC syntax
  • PC/GEOS objects
  • Action handler to respond to events
  • Free User Interface development or "classic" output window possible

News in version 0.8.9

  • A lot of new hints and methids that affects windowed objects like Primaries and Dialogs. This includes size management, position managemet, bring to top and lower to bottom methods.
  • List objects are finished now. Especially, there are methods to handle lists, that have more than one item select at the same time.
  • The Application object support the "busy" state and temporarily supendig of user input.
  • All news and modifications are well documenten in the English manual.

Incompatible changes
none

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Version 0.8 - 0.8.8


News in version 0.8.8
  • Stand alone programs can handle system restart
  • Usernotes and copyright notes may be set:
    • userNotes$
    • copyrightNote$
  • Wizzard starts very fast now
News in version 0.8.7
  • Stand alone programs that may have its own tokens
    • LongName$
    • AppToken
    • DocToken, ExtraToken
  • Handler for startup and exit: OnInit, OnStartup, OnExit
  • Support for documents: OnConnection and OnStartup handler
News in version 0.8.6
  • Reduced memory usage
  • Internal updates
News in version 0.8.5
  • Help file support added
    • helpFile$, helpContext$
    • Buttons: IC_HELP, ActionHandler BringUpHelp
    • Primary: PrimaryNoHelpButton
  • Application can work with the clipboard
    • OnClpChange handler(of type SystemAction)
    • ClipboardTest, ClipboardPut, ClipboardGet
    • clipboardError
  • Objects can work with the clipboard
    • ClpTestCopy, ClpCopy
    • ClpTestPaste, ClpPaste
  • FontExplorer Tool: Help file - TOC-Problem solved
  • Updated Englisch manual
News in version 0.8.4
  • R-BASIC programs are shown in Express Menu
  • DIM and code statements cannot be mixied yet
  • SDK Library interface was expanded and works now
  • A few new commands: NoAction, ConvertObjForSDK, customError
News in version 0.8.3
  • Performace upgrade for variable access
  • HUGE variables - up to 2 GB variable space
  • Performace upgrade for function calls
News in version 0.8.2
  • Upgraded object compiler
    New UI statement: ForceNewObjectBlock
  • Working with object blocks
    • CreateObjBlock
    • GetObjBlockHandle
    • GetObjBlockSize
    • DestroyObjBlock
  • Create and destroy objects at runtime
    • CreateObject
    • DestroyObject
  • Upgraded object handling
    • New instances: fullEnabled, fullVisible
    • New method: FindChild
    • New statemens: ObjAddHint, ObjRemoveHint
News in version 0.8.1
  • EXIT command
  • Strings may contain special codes, using the backslash like "\123"
  • Modified handling for transparent text output. Use the special color constant BG_TRANSPARENT
  • Transparent block graphic characters
  • New button instance variable: unhandledEvents

New commands / functions since version 0.8:

  • Object Orientation
    Now, R-BASIC is an object oriented language.
    The current version provides 16 object classes.
    • Application
    • Primary
    • Button
    • Number
    • Group
    • Menu
    • Dialog
    • Memo
    • InputLine
    • Option
    • OptionGroup
    • RadioButton
    • RadioButtonGroup
    • DynamicList
    • View
    • BitmapContent
  • More than 100 object instance variables
    Instance variables are the object data fields
    that contains object related information and
    controls the behavior and the properties of a
    particular object.
  • Automatic Geometry Management
    R-BASIC objects use the GEOS geometry manager
    to size and arrange all objects nicely. Of course,
    you still have the final control how the objects
    are arranged.
  • Action Handlers
    All objects may send messages to R-BASIC. You
    have to write "Action Handlers" to respond to that.
    That is the object oriented way to write R-BASIC programs.


Grundlegende Eigenschaften von R-BASIC:
  • Einfache, leicht zu erlernende BASIC Syntax
  • PC/GEOS Objekte
  • Action-Handler zur Reaktion auf Ereignisse
  • Freie Gestaltung der UI oder "klassiches" Ausgabefenster möglich

Neuerungen in Version 0.8.8

  • Eigenständigen Programme überleben eine Systemneustart
  • UserNotes und Copyright-Notiz werden unterstützt
  • Der Wizzard startet sehr viel schneller
Neuerungen in Version 0.8.7
  • Erzeugen von eigenständigen Programmen, die ohne R-BASIC Entwicklungsumgebung lauffähig sind
  • Eigene Tokens für R-BASIC Programme
  • ActionHandler für Programmstart und Programmende
  • Unterstützung de Arbeit mit Dokumenten
Neuerungen in Version 0.8.6
  • Verringerter Speicherverbrauch.
  • Probleme mit der Screen-Arbeit gelöst.
  • Diverse interne Updates.
Neuerungen in Version 0.8.5
  • Unterstützung für Hilfedateien hinzugefügt.
  • Objekte können mit der Zwischenablage arbeiten.
  • Die Application kann mit der Zwischenablage arbeiten.
Neuerungen in Version 0.8.4
  • R-BASIC Programme tragen sich ins Express-Menü ein.
  • Reaktivierung und Erweiterung des SDK-Library Interface
  • DIM kann nicht mehr mitten im Code stehen
  • Einige neue Befehle für das SDK-Library Interface
Inkompatible Änderungen:
  • DIM Statements im Code sind nicht mehr zulässig. Sie müssen sich innerhalb eines Code-Fensters an die Reigenfolge halten:
    1. Include-Statements (falls vorhanden)
    2. DIM-Statements (falls vorhanden)
    3. Code
Neuerungen in Version 0.8.3
  • verbesserte Performace beim Variablenzugriff
  • HUGE Variablen - bis zu 2 GB Variablenspeicher
Inkompatible Änderungen:
  • Größe der FILE und HANDLE Variablen von 10 auf 6 Byte geändert
  • Größe der OBJECT Variablen von 10 auf 8 Byte geändert
Neuerungen in Version 0.8.2
  • Verbesserter Objektcompiler
  • Anlegen und Vernichten von Objekten zur Laufzeit
  • Arbeit mit Objektblocks
  • Erweitertes Objekt-Handling (Children, Hints, Objekt States)
Neues in Version 0.8.1
  • Intere Umstrukturierungen
  • EXIT-Befehl
  • Transparente Blockgrafikzeichen sind möglich
  • Strings mit direkter Sonderzeicheneingabe (nach Backslash: "\123") sind möglich.

Inkompatible Änderungen:

  • Geändertes Handling der Transparenz bei Textausgabe.
    • Textausgaben im GEOS Font-Modus erfolgen jetzt per default mit gefülltem Hintergrund.
    • Die Transparenzsteuerung für Textausgaben wurde vom "Textstil" (printFont.style) zur Hintergrundfarbe geändert. Die Konstante TS_FILL existiert nicht mehr. Textausgaben erfolgen transparent wenn die Hintergrundfarbe (Befehle PAPER oder COLOR) auf den Spezialwert BG_TRANSPARENT gesetzt wird.
  • Die Ausgabe von Blockgrafikzeichen erfolgt ebenfalls transparent, wenn die Hintergrundfarbe auf den Spezialwert BG_TRANSPARENT gesetzt wird.

Die wesentlichen Neuerungen in Version 0.8

  • 16 Objektklassen
    Darunter sind unter anderem Menüs, Dialoge, 3 Listen-Typen,
    2 Text-Objektklassen und der Bitmap-Support aus dem "klassichen" BASIC.
  • Mehr als 100 Objekt Instance Variablen
  • Automatischen Geometrie-Mamagement
  • Die Reaktion auf Ereignisse ist durch
    "Action Handler" implementiert
  • Ausführliches Objekt-Handbuch

Interne Verbesserungen
  • Verbesserung der Stabilität
  • Diverse Bugfixes

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

Basic features of R-BASIC:
  • Simple, easy to learn BASIC syntax
  • PC/GEOS objects
  • Action handler to respond to events
  • Free User Interface development or "classic" output window possible

News in version 0.8.8

  • Stand alone programs can handle system restart
  • Usernotes and copyright note supported
  • Wizzard starts very fast now
News in version 0.8.7
  • Create Stand Alone Programs, that can run without the R-BASIC development environment installed.
  • Use own tokens for your R-BASIC programs
  • Action handlers for startup and exit
  • Support for working with documents
News in version 0.8.6
  • Reduced memory usage.
  • Screen problems fixed.
  • Some internal updates.
News in version 0.8.5
  • Help file support added.
  • Objects can work with the clipboard.
  • Application can work with the clipboard.
News in version 0.8.4
  • R-BASIC programs are lited in the Express Menu.
  • DIM and code statements cannot be mixied yet
  • SDK Library interface was expanded and works now
  • A few new commands for the SDK-Library Interface
Incompatible changes
  • DIM statements are not longer mixable with code statements. In any code window, you have to use the following order:
    1. Include statements (if any)
    2. DIM statements (if any)
    3. Code
News in version 0.8.3
  • Performace upgrade for variable access
  • HUGE variables - up to 2 GB variable space
Incompatible changes
  • Size of FILE and HANDLE variables has been changed from 10 to 6 byte
  • Size of OBJECT variables has been changed from 10 to 8 byte
News in version 0.8.2
  • Upgraded object compiler
  • Create and destroy objects at runtime
  • Working with object blocks
  • Upgraded object handling (children, hints, object states)
News in version 0.8.1
  • A lot of internal changes
  • EXIT command
  • Transparent block graphic characters are possible.
  • Strings may contain special codes, using the backslash like "\123".

Incompatible changes

  • Tranparency handling for text output has been changed.
    • Text output in GEOS font mode uses a filed background by default now.
    • Tranparency control for text output is moved from a text style (printFont.style) to a background color. The constant TS_FILL does not longer exist. To make text output transparent use the special value BG_TRANSPARENT for the background color (commands COLOR and PAPER).
  • Block graphic characters may also print as transparent images by using the special value BG_TRANSPARENT as background color.

Important news since version 0.8.0

  • 16 object classes
    This includes Menus, three list types, two text object classes
    and the bitmap support from "classic" BASIC.
  • More than 100 object instance variables
  • Automatic geometry management
  • Event handling is implemented as "Action Handlers"
  • English manual (more than 120 pages)

Internal changes
  • Stability improuvement
  • Some bug fixes

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Version 0.7


New Commands / Functions:
  • Loops
    REPAT - UNTIL - Loop
    BREAK and CONTINIUE for every loop type
  • Number Formatting
    numberFormat system variable
    SetNumberFormat command
  • Graphic and Color
    RGB, RedOf, GreenOf, BlueOf, GrayOf
    graphic system variable
      - line styles, draw masks and more
      - area atrributes, draw masks and more
      - draw modes including XOR mode
      - a lot of other things
  • Block Graphic Mode
    The block graphic mode uses the PRINT command to print graphics.
    BlockLoad, BlockSave, BlockSize, BlockInfo
    BlockPoke, BlockPeek, BlockREAD, BlockSelect
  • Memory Access (to an protected memory area)
    Peek, Poke, Deek, Doke, VPeek, VPoke, SPeek, SPoke, Peek$, Poke$
  • Other commands
    GetKeyLP, BasicVersion$, DayOfWeek

October 2010


Diese Version erweitert R-BASIC um umfrangreiche Grafikfähigkeiten. Dazu gehört der Umgang mit True-Color-Farben, und BlockGrafik. Im Block-Grafik-Modus wird der Print-Befehl zur Ausgabe von kleinen Grafiken benutzt. Jedem Buchstaben wird eine Grafik zugeordnet, die aus einer Datei oder aus DATA-Zeilen gelesen werden kann.

Neue Funktionen zu den Themen

  • Schleifenbefehle
  • Zahlenformatierung
  • Grafik und Farben
  • Block-Grafiken
  • Speicherzugriffe (Peek, Poke & Co)
  • Tool Programme: Wizzard Editor, Font Explorer und Block Graphic Editor. Erreichbar über das Menü: "Extras"-"Tools".

Interne Verbesserungen
  • Verbesserung der Stabilität
  • Interne Überwachungsfunktionen (Debugging-Code) zur Fehlersuche

Inkompatible Änderungen:

  • keine

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

This release expands R-BASIC by a lot of graphic fucntions, including true color and block graphics. The block graphic mode uses the PRINT command to print graphics. Every letter is assigned to a small graphic, wich comes from a file or from DATA lines.

New Functions about

  • Loop Commands
  • Number Formatting
  • Graphic and Colors
  • Block Grpahics
  • Memory Access (Peek, Poke & Co)
  • Tool programs: Wizzard Editor, Font Explorer and Block Graphic Editor. Use the menu "Extras"-"Tools" to access the tools.

Internal changes
  • Stability improuvement
  • Interal functions for error catching (debugging)

Incompatible changes
  • none

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Version 0.6 und 0.6.1


New Commands / Functions:
  • Message boxes
    MsgBox, ErrorBox, WarningBox, QuestionBox
  • Date and Time
    DateAndTime (data type)
    SysGetTime, SysGetCount
    FormatDate$, FormatTime$, Weekday$
  • Diskes and Drives
    DiskGetName$, DiskRename
    DiskWriteable, DiskSpace
    DiskExist, DriveInfo
  • Work with Files
    FileMove, FileCopy, FileDelete
    FileRename, FileGetDosName$ , FileSetDosName
  • Search for Files
    Handle (data type)
    FileFindFirst$, FileFindNext$, FileFindDone
  • Work with Folders
    currentDir$, currentPath$, geosPath$ (system variables)
    CreateDir, DeleteDir
    SetCurrentPath, SetStandardPath
    PushDir, PopDir
  • Error Handling
    fileError , ErrorText$( errorCode )
  • File Attributes (standard attributes)
    FileSetAttrs, FileGetAttrs
    FileSetTime, FileGetTime
    FileSize, FileType
  • GEOS File Attributes
    GeodeToken (data type)
    FileGetToken, FileSetToken
    FileGetCreator, FileSetCreator
    FileGetCreationTime, FileSetCreationTime
    FileGetUsernotes, FileSetUsernotes
  • Read and Write from/to Files
    FILE (data type)
    FileCreate, FileOpen, FileClose, NullFile()
    FileGetPos, FileSetPos
    FileRead, FileWrite, FileInsert
    FileReadLine$, FileWriteLine, FileInsertLine, FileReplaceLine
    FileResize, FileTruncate, FileCommit

June 2010


Diese Version erweitert R-BASIC um ca. 60 Befehle zur Arbeit mit Dateien, Ordnern, Laufwerken und Datenträgern.

Neue Funktionen zu den Themen

  • Datum und Zeit
  • Arbeit mit Laufwerken und Datenträgern
  • Verwaltung von Dateien
  • Suche nach Dateien
  • Arbeit mit Verzeichnissen
  • Fehlerbehandlung bei Dateiarbeit
  • Datei-Attribute
  • Lesen und Schreiben von und in Dateien

Interne Verbesserungen
  • Schnittstelle zum Einbinden von BASIC-Libraries, die mit dem SDK erstellt wurden.

Inkompatible Änderungen:

  • Programmunterbrechung jetzt mir Ctrl-B (ctatt Ctrl-F12)
  • Einige Konstanten für Convert$ geändert

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

This release expands R-BASIC by a lot of command for accessing files, folders, disks and drives.

New Functions about

  • Date and Time
  • Diskes and Drives
  • Work with Files
  • Search for Files
  • Work with Folders
  • Error Handling
  • File Attributes
  • Read and Write from/to Files

Internal changes
  • Interface for BASIC-Libraries, that are writte using the SDK in GOC.

Incompatible changes
  • Break a running program using Ctrl-B (old was Ctrl-F12)
  • Some constants for Convert$ modified

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Beta 0.5.1


The Highlights:
  • Syntax highlighting editor with new functions
  • Working with GEOS Fonts
  • Multiple step undo and redo funktion

New Commands / Functions:

  • FontSetFixed
  • FontSetGEOS
  • FontSetBlock
  • FontAvail
  • FontFind
  • FontGetName$
  • FontGetSysInfo
  • CountStr
  • Convert$
  • printFont system variable
  • tabWidth system variable
  • GetKeyState

Nov. 2009


Das ist die dritte offizielle BETA-Version. Man kann aus BASIC heraus auf alle GEOS-Fonts zugreifen und der Editor zum erstellen der Programme wurde komplett überarbeitet.

Syntax-Highlighting

  • kompletter Editor, unterstützt Clipboard und Drag'n'Drop
  • Syntax-Hervorhebung einstellbar
  • Syntax-Farben einstellbar. Farbschemata können in Dateien gespeichert und wieder geladen werden.
  • Auto-Formatierungsfunktionen mit Enter und Backspace
  • Absätze zeichenweise schieben (links/rechts) und ausrichten
  • Bereiche als REM markieren und zurücknehmen
  • Alle erweiterten Funtionen abschaltbar

Mehrstufige Undo- & Redo-Funktion. Bis zu 1000 Schritte werden abgespeichert.

Suchen und Ersetzen stark verbessert. Es gibt für's Programmieren sinnvolle Voreinstellungen, eine Listen-Funktion und Suchen quer durch die Code-Windows.

Suchen in Dateien (Funktion ist vorbereitet)
Interne Verbesserungen (nur die wichtigsten)

  • Neue Dokument-Struktur, angepasst an den neuen Editor
  • Library-Handling ist funktionsfähig. Libraries können andere Libraries includen (verschachtelte Libraries), Zugriffe auf Funktionen, Variablen und Strukturen quer durch die Libraries funktioniert.
  • DATA-Handling (mit READ und RESTORE) ist jetzt library-tauglich
  • Diverse kleinere Verbesserungen und Bugfixes

Inkompatible Änderungen:

  • Neues Dokument-Format. Ab Beta 0.5 können Dateien vorheriger Versionen nicht mher gelesen werden. Ein Update-Meachanismus ist aber verfügbar.
  • Einige Konstanten in der KeyCodes Library (insbesondere Steuerzeichen) wurden gänert.

Highlights aus der vorherigen Beta

Allgemeine Hinweise

Zum Download der aktuellen Version

This is the 3rd BETA release and the 2nd that is available in English. BASIC has access to all GEOS fonts now and the source code editor is completely rewritten.

Syntax-Highlighting

  • There is a complete new editor, including clipboard handling and drag'n'drop
  • User settings for syntax highlighting
  • User specific syntax colors available, including saving to and loading from files.
  • Auto format function with enter and back-space key
  • Moving (left/right) an justify of selected blocks
  • Mark / unmark ranges as REM by simple keyboard commands
  • All advanced functions may be switched off

Multiple step undo- & redo-funktion. Up to 1000 steps becomes stored.

Search and Replace expanded. There are a list function, useful default settings and searching in multiple code windows of the same BASIC program.

Seacrh in files (also known als GREP. Only preapred, not yet implemented)


Incompatible changes

  • New document structure. The version 0.5 cannot read older BASIC programs.
  • Some constants from the KeyCodes library, especially control codes, are changed.

Highlights from last Beta

Common Tips

Download the actual Version

R-BASIC Beta 0.4


New Commands:
  • Print Command Parameters:
    Spc(), Tab(), At(), AtXY()
    Ink(), Paper(), Color()
    Control Codes with Print Chr$()
  • Window, Locate, Pos(), CsrLin(), VGet$
  • Version$, Wait, Shl32, Shr32
  • Compatibility: Width

Modified Commands:

  • Input now works on the screen
  • InKey$ competed

Some common changes:

  • Break works, if Input or InputBox is active
  • R-BASIC is monitoring system shut down. The user can stop running BASIC programs or cancel the shut down.
  • Fixed application exit while running BASIC programs (they becomes stopped now).
  • Editors zoom factor is saved to INI with "Save Options".
  • A lot of internal fixes and changes.

Neu in dieser Version sind viele Bildschirm-bezogene Erweiterungen sowie eine Suchfunktion für den Wizzard.

Es sind gibt große Anzahl an Beispielen, die einen großen Teil der grundlegenden Befehle demonstrieren.

Highlights:

  • QuickHelp: Positinieren Sie den Cursor auf einem BASIC-Befehl und drücken Sie F2. Die Hilfe zu diesem Befehl wird angezeigt.
  • Suchfunktion im Wizzard.
  • KeyCodes - Library mit symbolschen Konstanten für GetKey und Inkey$. Verwenden Sie die Syntax:
    Include "KeyCodes" ' Groß/Kleinschriebung von KeyCodes beachten!
  • InKey$ arbeitet mit vielen Steuertasten.
  • Print-Parameter, Window, Locate & Co ermöglichen komfortable Textausgabe.

Highlights aus der vorherigen Beta

Inkompatible Änderungen:

  • INPUT: Wird ein InfoText angegeben, hat nach diesem ein Semikolon zu stehen. In Versions 0.3 war es noch ein Komma. Das betrifft die meisten der Beispiele in der Beta 0.3. Dafür sind jetzt beliebige String-Ausdrücke erlaubt. Beispiele:
    INPUT "Geben Sie eine Zahl ein:"; z
    INPUT "Geben Sie das Alter von " +Name$ + " ein:"; a$
Die Width-Anweisung ist für R-BASIC eigentlich nicht nötig, sichert aber die Kompatibilität mit anderen BASIC-Dialekten (insbesondere KC-BASIC).

Allgemeine Hinweise
Zum Download der aktuellen Version

This Beta expands the 0.3 release by adding a lot of screen related things and a search function for the wizzard.

This is the first versions, that is available in English.

It comes with a lot of examples (also available in English), that demonstrates how to use a wide range of commands.

Highlights:

  • QuickHelp: Set the cursor on a BASIC command an press F2. The wizzard help for that command comes up.
  • Search function for the wizzard.
  • KeyCodes - Library contains symbolc constants for GetKey and Inkey$. Use the Syntax:
    Include "KeyCodes" ' Pay attention to upcased and downcased letters in "KeyCodes"
  • InKey$ works with a lot of control keys
  • Print paramters, Window, Locate & Co allows comfortable text printing

Highlights from last beta

Incompatible Changes:

  • The Input-statement requires a semicolon after an information text. In version 0.3 there was a comma. This affects mosts of the examples of the 0.3 beta version. On the other hand, there are any string expressions allowed now. Examples:
    INPUT "Enter a number:"; z
    INPUT "Enter the age of " +Name$ + ":"; a$
The Width statement is for downward compatibility only. That means: you have not to use it, but the identifier is now reserved.

Common Tips
Download the actual Version

R-BASIC Beta 0.3


This Beta implements a classic BASIC Interpreter

Command Set:
  • Types: Real, Integer, Longint, Byte, Word, DWord, String, String[n], File, Object
  • Declare Variables: Dim, Dim As, Const, Struct - End Struct
  • Work with Variables: =, SizeOf(),NullFile(), NullObj(), NullStruct()
  • Program Flow: REM (also ' and !), Double Point (:) Goto, Label, End, Pause, Delay
  • Input / Output: Input, InputBox, InKey$, GetKey
    Print (incomplete)
    Data, Read, Restore, Inp(), Out
  • Loops: For - To - Step - Next, While - Wend
  • Selections: If - Then - Else - End If, On - Goto, On - Switch - Case - Default - End Switch
  • Mathematic Operations: Basic Operations (+, - *, /, Mod), Logic (Not, And, Or, Xor), Comparisons (<, <=, =, >=, >)
  • Matematic Functions: Abs(), Int(), Sgn(), Round(), Frac(), Trunc(), Rnd(), Randomize, Sqr(), Exp(), Ln(), Log(), Lg()
  • Higher Functions: Sin(), Cos(), Tan(), Asn(), Acs(), Atn(), SinH(), CosH(), TanH(), AsnH(), AcsH(), AtnH()
  • Mathematic Constants: Pi, True, False, Yes, No
  • Bit Operations: Shl(), Shr(), Logic (Not, And, Or, Xor)
  • String Operations: +, Left$(), Right$(), Mid$(), String$(), InStr(), Len()
  • String Comparisation: (<, <=, =, >=, >), CompStr()
  • String Conversion: Bin$(), Hex$(), Chr$(), Str$(), StrLocal$(), Asc(), Val(), ValLocal()
  • Graphics: Line, PSet, PReSet, PGet, Circle, Ellipse, Rectangle, FillEllipse, FillRect
  • Colors: Cls, Color, Ink, Paper, Color Constants like red, green, blue, yellow etc.
  • Sub Programs: GoSub - Return, Sub - End Sub, Function - End Function, Decl
  • Libraries: Include (incomplete)
  • Other: Beep

Erste offizelle Beta-Version der R-BASIC Programmiersprache für PC/GEOS.
Diese Beta-Version verfügt über die grundlegenden Konzepte einer Programmiersprache (Variablen, Mathematik, Schleifen, Text Ein- und Ausgabe usw.).

Links finden Sie eine Liste der bereits implementierten Befehle. Die Liste is in englisch, für die deutschen Nutzer gibt es dafür eine ausführliche Hilfedatei.

Diese Beta-Version wurde auf dem Treffen bei Johannes Möller in Syhra im Novemeber 2008 veröffentlicht. Herzleichen Dank an Johannes für dieses großartige Ereignis.

Highlights:

  • Alle Kern-Befehle, Mathematik, Verzweigungen und Schleifen implementiert
  • Leistungsfähige String-Verarbeitung
  • Fortschrittliche Unterprogrammtechnik (SUB und FUNCTION, Parameter, lokale Variablen)
  • Variablen-Felder mit bis zu 7 Dimensionen
  • Unterstützung von Struktur-Definitionen, arbeit mit Struktur-Variablen und Feldern von Strukturen.
    Strukturen können Variablen, Variablen-Felder und andere Strukturen enthalten.
  • Wizard für schnelle Hilfe zu BASIC-Befehlen

The first offical version of R-BASIC, a new, easy to learn and easy to use, but very poweful programming language for PC/GEOS. This Beta version is a complete programming language (Variables, Loops, Text Operations, Mathematic Operations etc.)

On the left, there is a command set of this beta version.

This is the first offical beta version. It was released on the meeting in Syhra, Germany (Nov. 2008). Thanks to Johannes for this great event!

Highlights:

  • All core commands, mathematics, selections and loops are implemented
  • Powerful string functions
  • Enhanced sub routines and functions (using parameters and local variables)
  • Variable arrays with up to 7 dimensions
  • Self defined structures are supported. Structures may contain variables, variable arrays and other structures. Arrays of structures are also supported.
  • A help wizzard for quick access to help about BASIC commands.

Common Tips

Alle Beta-Versionen

All beta versions


Allgemeine Hinweise:
  • Sollten Sie beim Starten älterer Programme unerwartete oder unsinnige Fehlermeldungen, Infoboxen mit kryptsichen Meldungen oder ähnliches erhalten, compilieren Sie das Programm bitte neu (F8 drücken).
  • Falls Sie die mitgelieferten Beispiele geändert haben, sollten Sie sie unter einem anderen Namen abspeichern. Die nächste Version wird die Beispieldateien wieder mit dem Original überschreiben.
Common hints:
  • You may get unexpected or strange error messages, German information boxes or other confusing things, if you use an program from an older beta version. This is harmless. Please recompile the program (by pressing F8).
  • If you have modified one of the included examples, you should save your modifications under a new name, because the next version will overwrite it with its original version.
  • ... and sorry for my bad English. If you have comments, corrections etc. about grammer or spelling, please let me know. This is especially true for the help files and the wizzard textes.


 

Liste der älteren Releases - Release List

Version 1.0.3 - Serious bug fixes, some other updates
Version 1.0.2 - Searching in text objects, Support for macOS and Linux text files
Version 1.0 - First "final" version, a lot of new features and internal changes
Version 0.9.9.C - Bugfixes, some new commands, internal changes
Version 0.9.9.A - View, ViewControl, GenContent, HTML and UTF8 converter
Version 0.9.9 - Debugger, KC85 Support, Display and DisplayControl
Version 0.9.8 - Sound commands, Graphic objects
Version 0.9.7 - Help system update
Version 0.9.6 - Huge manual update, new graphic fucntions, new date and time functions
Version 0.9.5 - Speed update
Version 0.9.4 - Printing update
Version 0.9.3 - Bitmap, Mouse and Timer update
Version 0.9.2 - Document update & DocumentGuardian class, SDK libraries
Version 0.9.1 - Working with documents
Version 0.9 - Graphics update
Version 0.8.9 - Object update - a lot of objects are finished
Version 0.8.8 - Application Update - Stand alone programs can handle system restarts
Version 0.8.7 - Application Update - You may create stand alone programs now
Version 0.8.6 - Internal Update for 0.8
Version 0.8.5 - Clipboard & Help Update for 0.8
Version 0.8.4 - ExpressMenu Update for 0.8
Version 0.8.3 - Variables Update for 0.8
Version 0.8.2 - Objects Update for 0.8
Version 0.8.1 - Update #1 for 0.8
Version 0.8 - The PC/GEOS Objects Release
Version 0.7 - The Graphic Update
Version 0.6.1 - Bugfix for 0.6
Version 0.6 - The File Access Update
Version 0.5.1
Version 0.4.0 - First version available in English!
Version 0.3.1
 
Zurück zum Anfang
r*bettsteller#web*de ---- If you are not a robot replace * by . (dot) and # by @
Wenn Sie kein Roboter sind ersetzen Sie * durch . (Punkt) und # durch @ (Klammeraffe)
Datenschutzerklärung | Haftungsausschluss | Impressum | Privacy Policy (English) | Disclaimer (English)