Migration to the new server completed.

Please add any new defect you notice here!


Die Migration auf den neuen Server ist abgeschlossen.

Bitte neue Defekte hier vermerken!

Simons Basic Extension

Aus C64-Wiki
Wechseln zu: Navigation, Suche
Simons' Basic Extension
Die Einschaltmeldung von Simons' BASIC Extension
Entwickler David Simons
Firma D.S. Software
Verleger Commodore
Release 1983
Lizenz Vollversion
Plattform(en) C64
Genre BASIC-Erweiterung
Steuerung Icon tastatur.png Icon paddle.png Icon joystick.png
Medien Icon cartridge.png, Icon disk525.png
Sprache(n) Sprache:englisch
Information alias Simons' Basic II

SIMONS' BASIC EXTENSION (im Folgenden auch kurz SBX genannt) ist eine Erweiterung der Modul-Version von Simons' BASIC mit 91 Befehlen, die von Kassette oder Diskette nachgeladen wird. SBX wurde wie Simons' BASIC selbst von David Simons 1983 programmiert und von Commodore vertrieben, allerdings nicht in Deutschland.

David Simons im Lemon64-Forum: "... there was a Simon's Basic2 that was released by Commodore (at least in the UK and I believe the US) - it used a neat trick to page use some of the memory which was rendered inaccessible by the original cartridge."

Inhaltsverzeichnis


[Bearbeiten] Laden und Starten

(thumbnail)
Der Ladebildschirm

Um die Extension laden zu können, muss das Modul eingesteckt und Simons' BASIC aktiv sein. SBX wird nun mit

LOAD"*",8,1 <RETURN>

von Diskette bzw. mit

LOAD <RETURN>

von Kassette geladen und mit RUN gestartet. Während des Ladevorgangs erscheint auf dem Bildschirm "SIMONS BASIC II", mit Hilfe von geänderten Zeichen in großer Schrift. Diese Bezeichnung ist hier verwirrend. Korrekt sollte dort "SIMONS BASIC EXTENSION" stehen, denn die wird ja geladen.

(thumbnail)
Die Startmeldung

Die Extension lädt sechs Dateien nach. Nachdem das Erweiterungsprogramm ausgeführt ist, erscheint die Startmeldung mit *** SIMONS BASIC 2 ***. SIMONS' BASIC 2 (auch kurz SB2 genannt) enthält neben den 114 Befehlen des Moduls nun aus der Extension 89 neue, 2 verbesserte Befehle (FIND, RENUMBER) und einen (DESIGN) mit erweiterten Möglichkeiten. Der Befehl FIND ist im Handbuch noch nicht erwähnt. Es steht nun ca. 10 KB weniger Speicherplatz zur Verfügung.

[Bearbeiten] Befehlsübersicht

[Bearbeiten] Befehle nach Anwendungsbereich

(thumbnail)
SIMONS' BASIC EXTENSION Handbuch

Die Befehle der Extension kommen aus folgenden Bereichen:

Befehle zur Programmverwaltung:

RENUMBER, DELETE, ALTER, HELP, CHAIN, PROTECT, FORCE, DS$, FIND

Befehle für numerische Felder:

SET ARR, ZER ARR, PRINT ARR, ADD ARR, SUB ARR, MUL ARR, DIV ARR, ADD ALL, SUB ALL, MUL ALL, DIV ALL, COPY ARR, INPUT ARR, READ ARR, ELEMENTS, MIN, MAX, SCRATCH, SUM, SORT

Befehle für numerische Verwaltung:

GRAD, DEG, BIN$, HEX$, CALCX, CALCY, EVAL, BACK

Befehle zur Speicherverwaltung:

DEEK, DOKE, HIMEM, LOMEM, SCREEN

Befehle für Grafik und Bildschirmverwaltung:

GRID, TICK, LABEL, DRAW TO, VLIN, HLIN, SCALE, SCX, SCY, LOW RES, DESIGN, MCOL, ROTATE, FONT, UPPER, ECOL, BCKFLASH, CCOL, SCOL, SCHR, *, PREPARE, PUSH, PULL, HSAVE, HLOAD

Befehle zum Erzeugen und Bewegen von Sprites:

INIT, SPRITE, CREATE, TRANSFER, INVERT, REVERSE, CHANGE, BARRIER, INFO, START, CLEAR, SPRX, SPRY, SPR LOC, XVEC, YVEC, ON DETECT, CONTINUE, SHOW, NORMAL

Befehle zur Musiksteuerung:

FILTER, MODE, PULSE, BEEP


[Bearbeiten] Die BASIC-Befehle von SIMONS' BASIC EXTENSION

* ADD ALL ADD ARR ALTER BACK BARRIER
BCKFLASH BEEP BIN$ CALCX CALCY CCOL
CHAIN CHANGE CLEAR CONTINUE COPYARR CREATE
DEEK DEG DELETE DESIGN DIVALL DIVARR
DOKE DRAWTO DS$ ECOL ELEMENTS EVAL
FILTER FIND FONT FORCE GRAD GRID
HASVE HELP HEX$ HIMEM HLIN HLOAD
INFO INIT INPUTARR INVERT LABEL LOMEM
LOWRES MAX MCOL MIN MODE MULALL
MULARR NORMAL ONDETECT PREPARE PRINTARR PROTECT
PULL PULSE PUSH READARR RENUMBER REVERSE
ROTATE SCALE SCHR SCOL SCRATCH SCREEN
SCX SCY SETARR SHOW SORT SPRITE
SPRLOC SPRX SPRY START SUBALL SUBARR
SUM TICK TRANSFER UPPER VLIN XVEC
YVEC ZERARR

[Bearbeiten] Token

Schlüsselwörter des Simons' BASIC werden vom Interpreter in 2-Byte-Token gewandelt.
Die Modulbefehle haben als erstes Tokenbyte $64 (100), die Extensionbefehle $65 (101).
Token und Einsprungadressen zeigt die Tabelle Simons Basic Extension Token.

[Bearbeiten] Speicherverwaltung unter SIMONS' BASIC 2

[Bearbeiten] Speicherbelegung

Die Speicherbelegung des Moduls ist im Simon's BASIC - Artikel dokumentiert.

Die Extension belegt im RAM folgende Speicherbereiche:

  • part1 $7700-$7FF1
  • part2 $801A-$8201
  • part3 $8356-$8419
  • part4 $897A-$8AAA
  • part5 $8C09-$8F4F
  • part6 $929C-$BDFB.

Der Bereich $8000-$9FFF ist nun doppelt, der Bereich $A000-$BFFF sogar dreifach belegt (BASIC-ROM, Modul, RAM).


[Bearbeiten] Geänderte Vektoren

Adresse Bedeutung Modul SBX
$0073-$0075 CHRGET $0073 $7817
$0300-$0301 BASIC-Warmstart $8FAE $7808
$0302-$0303 Eingabe einer Zeile $8289 $7827
$0304-$0305 Umwandlung in Interpretercode $8261 $77DC
$0306-$0307 Umwandlung in Klartext (LIST) $826D $77EE
$0308-$0309 BASIC-Befehlsadresse holen $8609 $7EE4
$030A-$030B Ausdruck auswerten $9646 $7B8A
$0314-$0315 IRQ $9CDC $9CDC
$0316-$0317 BRK $8353 $7717
$0318-$0319 NMI $8330 $7717
$FFFA-$FFFB NMI-Vektor $8118 $7717
$FFFE-$FFFF IRQ $775E

[Bearbeiten] Weblinks

Download:

Dokumentation:

Artikel:

  • "SIMONS BASIC II" in der RUN 01/1985 S. 116,117,126

Bilder: