MSX BASIC
Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de
versiunea revizuită la 13 martie 2013; verificările necesită
6 modificări .
MSX BASIC este un dialect al limbajului de programare BASIC dezvoltat în 1983 de Microsoft . Este o versiune extinsă a Microsoft BASIC versiunea 4.5 și are suport pentru grafică, muzică și alte caracteristici ale computerelor de acasă standard MSX . Dezvoltat ca un succesor al GW-BASIC (1983), unul dintre dialectele standard BASIC pentru computerele compatibile IBM PC pe 16 biți. În timpul dezvoltării MSX-BASIC, accentul s-a pus pe flexibilitatea și extinderea sistemului.
Distribuție
MSX-BASIC a fost livrat cu toate computerele MSX și a fost scris pe ROM -ul computerului . La pornirea sistemului, dacă niciun alt software din ROM nu preia controlul, MSX-BASIC pornește și este afișat un prompt de linie de comandă. Exemple de alte programe care deturnează controlul la pornirea sistemului sunt cartușele de joc (se rulează în loc de BASIC dacă sunt introduse într-un slot) și un controler pentru unitatea de dischetă (afișează un prompt MSX-DOS dacă există o dischetă cu fișiere de sistem în unitatea de dischetă) .
Când este utilizat MSX BASIC, ROM-ul care conține interpretul și codul BIOS ocupă cei 32 KB inferioare din spațiul de adrese al procesorului Z80 . Primele 32 KB conțin RAM , dintre care 23 până la 28 KB sunt disponibile pentru programe și date BASIC. Valoarea exactă a cantității de RAM disponibilă depinde de prezența unui controler de unitate de disc și de versiunea MSX-DOS.
Mediul de dezvoltare
Mediul de dezvoltare MSX BASIC este foarte asemănător cu mediul Dartmouth Time Sharing System ( Dartmouth BASIC ). Este un mediu de dezvoltare integrat cu o interfață de linie de comandă (cu excepția tastelor funcționale, care vă permit să introduceți unele comenzi utilizate frecvent cu un singur clic; scopul lor este afișat în partea de jos a ecranului). Toate liniile de program trebuie să fie numerotate; liniile introduse fără număr sunt executate imediat.
Versiunile MSX BASIC
Fiecare nouă versiune a standardului de calculator MSX includea o nouă versiune a MSX BASIC. Toate versiunile sunt compatibile cu versiunea inversă și oferă posibilitatea de a utiliza hardware nou și suplimentar pe modele noi de computere.
MSX BASIC 1.0/1.1
- Livrat cu calculatoare MSX 1.0/1.1
- Dimensiunea ROM 16 KB
- Fără suport de unitate încorporat, necesită cartuş Disk BASIC (4 KB).
- Acceptă toate modurile video disponibile pe MSX1:
- Ecran 0 (mod text 40 x 24 caractere)
- Ecranul 1 (mod text mixt 32 x 24 de caractere, sprite hardware și culoarea caracterelor)
- Ecran 2 (mod grafic de înaltă rezoluție 256 x 192 puncte, 16 culori)
- Ecranul 3 (Mod grafic cu rezoluție joasă 64 x 48)
- Suport complet pentru sprite-uri hardware și detectarea automată a coliziunilor, cu generare de întreruperi
- Suport complet pentru generatorul de sunet de stoc General Instruments AY-3-8910 (PSG)
MSX BASIC 2.0
- Livrat cu computere MSX 2.0
- Dimensiunea ROM 16 KB
- S-a adăugat suport pentru noile moduri video:
- Actualizare ecran 0 (mod text 80 x 24)
- Ecran 5 (mod grafic 256 x 212/424 pixeli, 16 culori din 512 disponibile)
- Ecran 6 (mod grafic 512 x 212/424 puncte, 4 din 512 culori)
- Ecran 7 (mod grafic 512 x 212/424 puncte, 16 din 512 culori)
- Ecran 8 (mod grafic 256 x 212/424 pixeli, 256 culori, fără paletă)
- 424 de moduri de linie pot fi afișate numai în modul intercalat de linii
- S-a adăugat suport pentru sprite-uri color (16 culori)
- S-a adăugat suport pentru caracteristicile grafice hardware (copierea blocurilor, pictura etc.)
- S-a adăugat suport pentru memoria RAM inferioară a computerului de 32 KB ca disc virtual limitat (poate stoca doar unele tipuri de fișiere). Această zonă de RAM nu este direct accesibilă deoarece BIOS-ul și ROM-urile de bază sunt în același spațiu de adrese.
MSX BASIC 3.0
- Livrat cu computere MSX 2.0+
- Dimensiunea ROM 16 KB
- S-a adăugat comanda SET SCROLL pentru a controla derularea lină a hardware-ului în programele BASIC
- S-a adăugat suport pentru noile moduri video:
- Ecran 10 (mod grafic 256 x 212/424 pixeli, 12499 culori de afișare simultane în format YJK + 16 culori dintr-o paletă care conține 512 culori în format RGB)
- Ecran 11 (mod grafic 256 x 212/424 pixeli, 12499 culori YJK simultan + 16 culori din 512 în RGB)
- Ecran 12 (mod grafic 256 x 212/424 pixeli, 19268 culori YJK simultan)
MSX BASIC 4.0
- Livrat cu computere MSX Turbo R (lansat numai în Japonia )
- S-a adăugat suport pentru modurile video 512 x 512 pixeli (16 culori din 512) și 256 x 212 (19268 culori)
- S-a adăugat comanda _PAUSE pentru a crea întârzieri software care sunt independente de procesorul selectat și de viteza de ceas al acestuia
- S-au adăugat comenzi pentru a controla dispozitivul de înregistrare și redare audio digitală ( _PCMPLAY , _PCMREC )
MSX BASIC 4.1
- Livrat cu computerul FS-A1GT MSX Turbo R
- Are extensii pentru lucrul cu interfața MIDI
Extensii MSX BASIC
Deoarece MSX BASIC a fost construit pentru a fi extensibil, a fost foarte ușor să creați module suplimentare. Suportul pentru dispozitive suplimentare a fost adăugat de obicei folosind cartușe care conțineau și dispozitivele în sine sau o interfață hardware pentru conectarea acestora. De exemplu, MSX Disk-BASIC a venit într-un cartuş care avea o interfaţă pentru conectarea unităţilor de disc şi adăuga comenzi noi pentru a lucra cu ele.
De asemenea, a fost posibilă extinderea MSX BASIC în moduri pur software. O extensie interesantă pentru MSX BASIC 1.0/1.1 a fost o extensie numită Screen IV , care implementează un mod video suplimentar de tip mixt, Screen 4, care permite afișarea informațiilor despre caractere la o rezoluție de 64 x 24 de caractere în modul grafic de înaltă rezoluție (Screen 2).
Fapte interesante
- Vilnius BASIC a fost creat de la zero pentru mașinile cu sistemul de comandă PDP-11 sub influența puternică a MSX Basic. În special, numele majorității operatorilor și funcțiilor sunt aceleași, precum și codurile de mesaje de eroare.
- Operatorul de buclă FOR din MSX BASIC avea o caracteristică distinctivă - pentru orice valoare a parametrilor buclei, corpul buclei a fost executat cel puțin o dată.
Link -uri
Dialectele limbajului de programare BASIC |
---|
Clasic |
|
---|
tranzitorie |
|
---|
procedural |
|
---|
Obiect |
|
---|
Mobil |
|
---|
Consolă |
|
---|