WikiDer > MSX BASIC
MSX BASIC | ||||
| Paradigma | Imperativ | |||
| erschien | 1983 | |||
| Entwickelt von | Microsoft | |||
| Aktuelle Version | 4.1 | |||
| Beeinflusst von | GW-BASIC | |||
| Dateierweiterungen | .BASS | |||
| ||||
MSX BASIC ist ein Dialekt der Programmiersprache BASIC. Es ist eine erweiterte Version von Microsoft Standard-BASIC-Version 4.5, und bietet Unterstützung für Grafiken, Musik und verschiedene Computerperipheriegeräte das kann man damit verbinden MSXHeimcomputer. MSX BASIC wurde entwickelt, um GW-BASIC Dies ist eines der Standard-BASICs für 16-Bit-Computersysteme. Bei der Entwicklung von MSX BASIC war eines der Hauptziele, das System so flexibel und erweiterbar wie möglich zu gestalten.
Verteilung
MSX BASIC wurde in die Rom aller MSX-Computer. Beim Systemstart wird MSX BASIC automatisch geladen und die Eingabeaufforderung wird angezeigt, es sei denn, andere Software im ROM übernimmt die Kontrolle (dies ist der typische Fall von Patronen und Diskettenschnittstellen, wobei letztere eine MSX-DOS-Eingabeaufforderung anzeigen, wenn eine Diskette mit den DOS-Systemdateien vorhanden ist).
Wenn MSX BASIC geladen ist, wird der ROM-Code für die BIOS und vom BASIC-Interpreter selbst sichtbar in den unteren 32K des Z80 Adressraum des Speichers. Die höheren 32K werden dem zugewiesen RAM, von denen ungefähr 23 KB bis 28 KB für BASIC-Code und Daten verfügbar sind (die genaue Menge hängt vom Vorhandensein eines Plattencontrollers und der MSX-DOS-Kernelversion ab).
MSX BASIC-Versionen
Jeder neue MSX-Computer wurde mit einer aktualisierten Version von MSX BASIC geliefert. Alle Versionen sind abwärtskompatibel und mit neuen Funktionen ausgestattet, um die neue und erweiterte Hardware neuerer MSX-Computer vollständig zu unterstützen.
MSX BASIC 1.0 / 1.1
- im Lieferumfang von MSX 1.0 / 1.1-Computern enthalten
- Größe: 16 K B
- keine Standardunterstützung für Diskettenlaufwerke, dies erfordert ein optionales Disc BASIC- Cartridge-Erweiterung erforderlich (4 kB Slack Space)
- Unterstützung für alle verfügbaren Bildschirmmodi:
- Bildschirm 0 (Textmodus 40 × 24 Zeichen)
- Bildschirm 1 (gemischter Textmodus 32 × 24 Zeichen, Sprites und farbige benutzerdefinierte Zeichen)
- Bildschirm 2 (hochauflösender Grafikanzeigemodus 256 × 192 Pixel, 16 Farben)
- Bildschirm 3 (Grafikanzeigemodus mit niedriger Auflösung 64 × 48 - Blöcke von 4 × 4 Pixeln über der Bildschirmauflösung von Bildschirm 2)
- volle Unterstützung für Hardware-Sprites und Interrupt-gesteuert automatisch Kollisionserkennung (Kollisionserkennung)
- volle Unterstützung der Allgemeines InstrumentAY-3-8910Programmierbarer Soundgenerator (PSG)
MSX BASIC 2.0 / 2.1
- im Lieferumfang von MSX 2.0 / 2.1-Computern enthalten
- Größe: 16 kB
- Unterstützung für alle neuen verfügbaren Bildschirmmodi hinzugefügt (Hinweis: Die 424 Zeilen können nur im Interlace-Modus angezeigt werden):
- aktualisierter Bildschirm 0 (Textmodus 80×24)
- Bildschirm 5 (grafischer Anzeigemodus 256 × 212/424 Pixel, 16 Farben aus einer Palette von 512)
- Bildschirm 6 (grafischer Anzeigemodus 512 × 212/424 Pixel, 4 Farben aus einer Palette von 512)
- Bildschirm 7 (grafischer Anzeigemodus 512 × 212/424 Pixel, 16 Farben aus einer Palette von 512)
- Bildschirm 8 (grafischer Anzeigemodus 256 × 212/424 Punkte, 256 Farben, keine Farbpalette)
- zusätzliche Unterstützung für mehrfarbige Sprites (16 Farben)
- Unterstützung für Hardwarebeschleunigung von Grafikfunktionen hinzugefügt (Kopieren, Füllen, Bitteren usw.)
- Unterstützung für die Verwendung des unteren 32K-RAM des Computers (nicht sofort sichtbar, da die BIOS- und BASIC-Interpreter-ROMs den Speicheradressierungsraum belegen) als begrenzte RAM-Disk (nur eine begrenzte Anzahl von Dateitypen konnte gespeichert werden).
MSX BASIC 3.0
- im Lieferumfang von MSX 2.0 enthalten (MSX2, nur in Japan)
- Größe: 16 kB
- Befehl hinzugefügt BILDROLLE EINSTELLEN für flüssiges, hardwarebasiertes Scrollen in BASIC
- Unterstützung für alle neuen verfügbaren Bildschirmmodi hinzugefügt:
- Bildschirm 10 (grafischer Anzeigemodus 256 × 212/424 Pixel, 12499 YJK gleichzeitig 16 Farben aus einer 512 RGB-Farbpalette in ML)
- Bildschirm 11 (grafischer Anzeigemodus 256 × 212/424 Pixel, 12499 YJK gleichzeitig 16 Farben aus einer 512 RGB-Farbpalette)
- Bildschirm 12 (grafischer Anzeigemodus 256 x 212/424 Pixel, 19268 YJK gleichzeitig)
MSX BASIC 4.0
- geliefert mit Panasonic FS-A1STMSX Turbo R (nur erschienen in Japan)
- Unterstützung für Bildschirmmodi von 512 × 512 (16 Farben aus einer Palette von 512) und 256 × 212 (19268 Farben) hinzugefügt
- hinzugefügt _PAUSE-Befehl, Verzögerungen in BASIC unabhängig von den vorhandenen zu machen Prozessor und Uhr
- zusätzliche Befehle für die . hinzugefügt PCM-Tonausgabegerät (_PCMPLAY, _PCMREC)
MSX BASIC 4.1
- geliefert mit dem Panasonic FS-A1GT MSX Turbo R-Computer
- hinzugefügt MIDI-Erweiterungen
Erweiterungen
Da MSX BASIC auf Erweiterung ausgerichtet war, wurde es möglich, Erweiterungsmodule zu entwickeln. Die Unterstützung für bestimmte Hardware erfolgte in der Regel über Cartridges, die auch als Schnittstelle fungierten. MSX Disk-BASIC ist ein Beispiel, das in einer Diskettenlaufwerk-Kassette geliefert wurde, um diese Hardware zu unterstützen, und zusätzliche Anweisungen in MSX BASIC bereitstellte.
Beispiel für Programmcode
10BILDSCHIRM220C=INT(15*RND(1))30ich=INT(92*RND(1))40X2=255-ich50Y2=191-ich60ZUMX=ichZUX2SCHRITT470PSET(X,ich),C80PSET(X,Y2),C90WENNX2-X<=64DANN120100PSET(ich,X),C110PSET(X2,X),C120NÄCHSTERX130GEHE ZU20