Sinclair ZX 81

software pro ZX 81

Sinclair ZX 81


Stejně jako u svého ZX-80 i pro své ZX-81 jsem od začátku plánoval využít rozšířené ROM za operačním systémem k uložení několika demoprográmků a her, které by tak byly stále při ruce bez nějakého "loudování". Napsal jsem tedy zavlékací rutinu s názvem ZX81_loader, která pracuje naprosto shodně, jako její protějšek u ZX-80. Rutina v binárním tvaru se prostě "slepí" s požadovaný programem, který musí být ve formátu *.P nebo *.81 (identické, lišící se jen názvy) a uloží do volné části EPROM. U ZX-81 je tato volná část EPROM pouze o velikosti 8KB v oblasti 2000h - 3FFFh. Zapomenout tak můžeme na rozsáhlé 16KB hry. Ale 1KB hříček se tam pár vejde:-)

Natažení programu do RAM zajistí příkaz PRINT USR adresa, kde adresa je počátek (dekadicky) rutiny ZX81_loader s přilepeným P/81 filem. Na rozdíl od ZX-80 nedojde po natažení programu do RAM k autolistingu, ale návrat do BASICu je proveden vyvoláním chyby 0. Toto je doporučovaný korektní návrat do BASICu ze strojových rutin u ZX-81. U ZX-80 tato možnost bohužel chyběla. Pozor na to, že u ZX-81 se příkaz USR nevypisuje, ale je "zadrátován" do klávesnice a adresa se nedává do závorek! Další důležitou informací je, že rutina ZX81_loader vypíná NMI a nastavuje režim FAST! Pokud se po nahrání požadovaného programu do RAM chcete vrátit do SLOW režimu, musíte pro provést klasicky příkazem SLOW! Jinak je filosofie zavlékací rutiny a její použití shodné s rutinou pro ZX-80, která je detailně popsána na stránce ZX-80 software. Rutinu pro ZX-81 si můžete stáhnout zde:

    ZX81_Loader

A zde si můžete stáhnout zatím jediný připravený obraz EPROM (ale chystám i další) pro jednu banku 16KB. Obraz obsahuje originální operační systém ZX-81, rutinu RAMSIZE pro zjištění velikosti nainstalované RAM a dále tři hry Paula Farrowa určené původně pro ZX80 ale se ZX81 ROM. Díky tomu, že zavlékací rutina vypne NMI, jsou tyto hry použitelné i na ZX-81 s NMI generátorem. Mám to vyzkoušené. Spouštěcí adresy naleznete v přiloženém TXT souboru.

    ZX81 software (obraz EPROM)

Pokud si připravíte vlastní obraz EPROM pro ZX-80 či ZX-81, dejte mi vědět. Můžeme ho zde na webu nabídnout ke stažení i ostatním! Nebuďte labutě:-)



Sinusovka na ZX81

Až se budete s počítačem chtít někde předvádět (zejména před mladšími ročníky, které znají jen PC s Windows), je dobré mít po ruce jednoduchý program, který si mohou přihlížející sami naťukat, a který udělá něco alespoň trochu zajímavého. Jsou totiž lidé, kteří zkrátka nevěří tomu, že ten potištěný papírek je opravdová a funkční klávesnice a tak je nejlepší je k tomu rovnou posadit a ťukej! Napadla mě tato jednoduchá sinusovka:

10 SLOW
20 PRINT "ZX81 SINUS"
30 FOR I=0 to 254 STEP 4
40 LET A=127-INT (127*SIN (I/40.155))
50 PLOT I/4,INT (A/6)
60 NEXT I

Pro demonstraci ji můžete vyzkoušet jak v režimu SLOW, tak FAST.

sinusovka na ZX81
sinusovka na ZX81
sinusovka na ZX81
sinusovka na ZX81

Jak je vidět na obrázcích, jsou zde vady. Jedná se o ty svislé čárečky u některých bodů. Experimentálně jsem zjistil, že tyto čárečky se vyskytují pouze u bodů vložených příkazem PLOT a to jen na sudých řádcích a lichých sloupcích. Tedy:

PLOT 0,0 - zobrazí bod bez rušivé čárky, kdežto

PLOT 1,0 - zobrazí bod s čárkou.

Program:

10 FOR I=0 to 63
20 PLOT I,7
30 NEXT I

zobrazí vodorovnou čáru, kdežto program:

10 FOR I=0 to 63
20 PLOT I,10
30 NEXT I

zobrazí "hřeben". Zatím netuším, kde je problém, ale nejsem jediný, komu to dělá (myslím u ZX80 s NMI generátorem). V textovém režimu jsem nic podobného nezaznamenal.




Sinclair ZX 81


RET



Odladěno na MS IE 8.0 a Firefoxu při rozlišení min. 1024 x 768 pixelů
www.NOSTALCOMP.cz    2010  -  2017