Emulátor MSX verze 1.C
Základní informace o páskové verzi
Princip
Emulátor MSX verze 1.C emuluje systém MSX verze 1.0.
Emulátor je program ve strojovém kódu, který se skládá ze dvou
základních částí: zavaděče a těla. Zavaděč slouží pouze k tomu,
aby nahrál emulátor do paměti počítače a odstartoval jej. Před
vlastním nahráním zavaděč prohlédne paměť a zkoumá, jestli se
v ní již emulátor nebo jeho část nenachází a podle toho dohraje
jen tolik, kolik musí.
Po hardwarové stránce jsou si systémy M5 a MSX vcelku
podobné, oba mají stejný mikroprocesor a stejný typ
videoprocesoru. Zvukové čipy se od sebe svými schopnostmi
nepatrně liší. Naprosto rozdílné je pak zapojení klávesnice,
joysticků, tiskárny a magnetofonu. Emulátor funguje tak, že
v paměti počítače M5 běží program, který není nic jiného než
upravená ROM počítače MSX. Veškeré změny v této ROM se týkají
pouze odkazů na hardware. Jsou přečíslovány porty
videoprocesoru, je emulován zvukový čip, zcela je přepracován
přerušovací systém a s ním i obsluha klávesnice. Rutiny se tedy
navenek tváří stejně jako v počítači MSX, ale uvnitř pracují
jinak. Program z této ROM se z pochopitelných důvodů v počítači
SORD M5 nachází v paměti RAM, jejíž velikost je v tomto případě
64KB.
Hardware
Nezbytně nutnou podmínkou pro provoz emulátoru MSX je
počítač SORD M5 s pamětí 64KB RAM a minimálně 8 KB ROM ( MONITOR
ROM ), přičemž paměti ROM/RAM musí jít programově přepínat. Dále
je dobré mít elektrický reset ( dále jen @RESET ) systému, což
je přes tlačítko a odpor uzemněný signál RESET mikroprocesoru.
Přepínání ROM/RAM by se mělo při @RESETu přepnout do režimu ROM,
nebo by měla být možnost ROM připnout. Emulátor umí pracovat
s paměťovými moduly 64KBI, 64KBF, 64KRD a 64KRX ( přepínání
instrukcí OUT na port 6CH, 30H a 7FH ). Program lze snadno
upravit pro jiný modul.
Software - programová slučitelnost
Pod emulátorem pracuje většina programů, které se důsledně
odkazují na BIOS-MSX a nestránkují paměť. Přímá slučitelnost
tedy není 100 procentní a proto nelze využívat pod emulátorem
všechny programy, které byly pro MSX napsány. K dispozici je
však již něco okolo 200 her a programů, které se dají pod
emulátorem bez větších problémů provozovat. Některé programy
a většina her musely být pro provoz v emulátoru upraveny
( úpravy se provádějí podmíněně, viz níže ), jiné chodily bez
úprav hned napoprvé. Je přirozená snaha, aby s narůstajícím
časem programů pro emulátor MSX přibývalo.
Běží-li emulátor, máme k dispozici jeho interpretr basiku,
který pracuje shodně s originálem MSX ( až na jednu výjimku,
příkaz MOTOR bez parametru nemění stav motoru na opačný, nýbrž
motor pouze vypne ) a MSX-BIOS. Jsme ochuzeni o možnost používat
rozšiřující sloty ( takto lze paměť MSXu rozšířit až na 1024 KB,
tedy 1 MB dostupné paměti ).
Pokud chcete tvořit v MSXu své vlastní programy, opatřete si
potřebnou literaturu ( THE MSX RED BOOK, MSX-BASIC LANGUAGE
SPECIFICATION ).
Problematika práce s magnetofonem
Starší emulátory verze 1.A a verze 1.B používají originální
formát záznamu MSX na magnetofon. U emulátoru verze 1.C je
použit formát SORD M5.
Práce s magnetofonem není tak komfortní jako na počítači
SORD M5. Další nepříjemná věc je samotný MSX formát záznamu na
pásce, který je značně nespolehlivý a snadno se může stát, že se
soubor načte s chybami, aniž by tyto chyby byly objeveny. Pro
emulátor zatím neexistuje kopírovací program, takže manipulace
se soubory na pásce je značně nepohodlná.
Z výše uvedených příčin vznikl pro emulátor verze 1.B
speciální zaváděcí program MSX_M5/IL.CM, který některé
nedostatky částečně odstraňuje.Program umožňuje zavést do
emulátoru a spustit v něm programy MSX uložené na pásce ve
formátu SORD M5. Týká se to pouze jednodílných programů ve
strojovém kódu, které jsou paměti umístěny od adresy 8003H do
přibližně 0F000H.
Většina dobrých her, které pod emulátorem fungují, je právě
jednodílný stroják a proto ( i v případě, že máte jen verzi
1.B ) lze mít většinu MSX softwaru uloženou na pásce ve formátu
SORD M5.
Některé velmi dobré hry jsou ale z více částí a je tedy
nutné je mít na pásce ve formátu MSX. Při jejich kopírování je
zase potřeba mít po ruce tabulku s adresami, nehledě k tomu, že
ruční kopírování je obvzlášť nepříjemné. Do poloviny roku 1990
těchto programů bylo minimum, ale pak se jejich počet znásobil
a problém se stal palčivým.
Proto vznikla nová verze emulátoru, která odstraňuje všechny
nedostatky práce s magnetofonem. Ve verzi 1.C byl opuštěn
původní MSX formát záznamu a byl nahrazen formátem SORD M5. To
umožňuje používat při kopírování standardní kopírovací programy
pro M5 ( například EXCELLENT COPY s volnou kapacitou 71KB )
a samozřejmě se tím zvýšila spolehlivost. S touto zásadní změnou
byla částečně pozměněna i syntaxe některých příkazů pro práci
s magnetofonem. Změny jsou ale minimální a v manuálu, který je
spolu s verzí 1.C dodáván jsou všechny tyto odchylky uvedeny.
Argument, ze s verzí 1.C zůstaneme díky nekompatibilitě
odříznuti od nových ( a nejen nových ) MSX programů, neobstojí,
jelikož je přece možné kdykoli spustit verzi 1.B a pracovat
s formátem MSX. Ještě lepší řešení však je pracovat s verzí 1.C
a s formátem SORD M5 a v případě potřeby nahrát speciální
podprogramy, které umožňují používat ve verzi 1.C jak formát
SORD M5 tak i formát MSX.
===== napsal LZR Soft, datum poslední editace: není známo ======