Bemutatkozik a ZOZOTOOLS rendszerbővítő

Hol is kezdjem eme program ismertetését? Talán ott, hogy ha valaki sikeresen elhelyezte a programot tartalmazó EPROM-ot a cartridge-ben vagy EXDOS kártyán vagy a ROM kártyán, akkor a HELP listában fel kell tűnnie a ZozoTools ver. 1.x sornak. Idáig még nem sokat tudtunk meg, ezért további információszerzés érdekében adjuk ki a :HELP ZT utasítást (grafomániások: :HELP ZOZOTOOLS). Ekkor megtudjuk, hogy ki és mikor követte el a programot, a bővítések listáját, és még néhány hasznos információt, amikről később lesz szó. Az 1.9-es verzió a következő bővítéseket tartalmazza:

RL version 3.3
DBASX version 1.1
EV version 1.2
FL version 1.9
FAFO version 2.5
DL version 1.2
CLOCK version 1.9
VS version 1.9
VL version 1.9

A lista után szereplő jótanácsot, (A funkciókról kérj részletes HELP-et.) nem árt megfogadni, és ha lehet TEXT 80-ban kövessük el mindezt. Ha már végig olvastuk a sok HELP-et, akkor térjünk vissza eme leíráshoz!

ROM-LIKVIDÁTOR version 3.3
Ez a funkció a ROM lista "piszkálására" való. Köztudott dolog, hogy sok program allergiás egyes bővítőkre, és ezért vagy valami más okból kifolyólag gyakran előfordul, hogy meg szeretnénk szabadulni valamelyik bővítőtől. Ezt eddig megtehettük:

Az RL, ha paraméter nélkül adjuk ki, közli velünk a RAM és a ROM EXOS bővítők listáját, például:

Ha kigyönyörködtük magunkat, akkor próbáljunk irtani egy kicsit, például távolítsuk el a cartridge-ben lévő programokat:

RL 04H,05H,06H,07H

Lehetőségünk van teljesen új ROM-lista definiálására is, például csak a BASIC-et és az EXDOS-t szeretnénk megtartani az előző ROM-listából:

RL NEW,20H,03H

Itt kapott helyet egy másik "irtó" utasítás is:

128

Ez a memória bővítés kikapcsolására szolgál, szintén a hülye játék átiratok miatt. Ezeket az utasításokat akár EXDOS.INI-be is tehetjük, például ha külön lemezre gyújtjuk az ilyen programokat. Az 1.9-es verzióban már használható a 64 parancs is, a 64 kbyte-os állapot (Ep64) eléréséhez.
Az 1.1-es ZozoTools-ban a NEW parancs helyett még ADD szerepelt, amivel .ROM file-okat tölthetünk be elvileg, működése viszont bizonytalan.

A DBASX csak az 1.9-es cerzióban jelent meg. A program a 145-ös rendszerváltozó állapotától függően azt hazudja a BASIC-nek, hogy nincs több BASIC bővítés, így megakadályozza, hogy a BRD vagy a PLUS elhelyezze a bővítőrutinjait, ezáltal az ilyen kényes csak angol BASIC-en futó programok elindulnak. 0 esetén vannak bővítések, egyébként nincsenek. Alapérték 255. A változó átállítása után kell egy :BASIC (ezt a program automatikusan megteszi), mivel a BAISC-be lépéskor fut le a bővítések lekérdezése.

Az EV parancs kiírja az összes létező EXOS változót és értékeiket, így felfedezhetjük, ha egy program új változókat hoz létre (például a PAINTBOX MOUSE.XR nevű darabja).

Az FL a funkcióbillentyűk értékeinek megtekintésére, és felhasználóbarát átdefiniálásukra szolgál. Például a BASIC funkcióbillentyűk:

1.=165,"START",161,13
2.=165,"LIST",161,13
3.=165,"AUTO",161,13
4.=165,"TOGGLE REM1",161,13
5.=165,"TEXT",161,13
6.=165,"GRAPHICS",161,13
7.=165,"TOGGLE KEY CLICK",161,13
8.=165,"INFO",161,13
9.=165,"CONTINUE",161,13
10.=165,"LLIST",161,13
11.=165,"RENUMBER",161,13
12.=165,"TOGGLE REM2",161,13
13.=165,"DISPLAY TEXT",161,13
14.=165,"DISPLAY GRAPHICS",161,13
15.=165,"TOGGLE SPEAKER",161,13
16.=165,"TYPE",161,13

Mint látható a szövegeken kívül még egy rakás vezérlő karakter is előfordul, ezeknek a kódját fejből kéne tudni ha más program segítségével akarjuk átdefiniálni a funkcióbillentyűket, de nem így az FL-nél, mindent írjunk be úgy, mint ha egyébként írnánk: TAB, INS, DEL, joystick, stb. Ha fáradságos munkával átdefiniáltuk a funkcióbillentyűket, akkor munkánk eredményét el is menthetjük (az FKS, FKL parancsokkal). (Erre az 1.6-os verziótól van lehetőség.)
Az FL-t bárhol használhatjuk, ahol ki lehet adni EXOS parancsot, és a program EXOS billentyűzet csatornát használ: BASIC, WP, ASMON, ISDOS, PAINTBOX, MUSIC BOX, AGSYS, LISP, HP, GEN, MON, stb. Ha a program nem engedi EXOS parancs kiadását, de lehetőség van más program betöltésére, akkor nincs gond, mert a kimentett fájl EXOS modul, ezért automatikus a kezelése, így előre definiálhatunk funkcióbillentyűket. (Egy megjegyzés: a WP Zozosoft által átírt verziója automatikusan betölti a WP.FK fájlt.)

A következő hasznos funckió a FAFO, egy gyors formázó, amelynek több előnye is van:

A FAFO parancs kiadás után a státusz sorban jelenik meg egy menü, ahol beállíthatjuk a meghajtót, a sávok számát 40-től egészen 90-ig (!!), a szektorok számát 8-tól 13-ig, és azt, hogy egy logikai blokk (cluster) hány szektort tartalmazzon, bár ez általában 2 (EXDOS, EPDOS, stb.) érdemes 1-re állítani, mert minden megkezdett blokk teljesen lefoglalódik, és nem mindegy, hogy ily módon mennyi terület megy veszendőbe (akár 30 kilobájt is lehet!!). Ezért jó, hogy az EPDOS blokkokban is kiírja a méretet! (éppen ezért a bájtokban számolt méret nem egyezik meg a ténylegesen lefoglalt terület méretével. Ez PC-n nem szokás, csak bájtokban, próbálja megcsinálni valaki NORTON COMMANDER-rel, amit a Zozosoft EPDOS-sal elkövetett: 45 lemezen mindössze 4.5 kilobájt szabad hely maradt!!) Az egyes blokk méret másik előnye az, hogy a RAMDISK blokk mérete is 1, ezért könnyebb a méretek összehasonlítása. 11 szektoros formázásnál kétféle változat is van, tekintettel, hogy ilyenkor az adatok nagy zsúfoltsága miatt nem minden meghajtóra jó ugyanaz a formátum! Más gond is lehet a meghajtókkal: egyes (általában a "kattogósak") meghajtóknak picit lassabb a reakcióidejük, pláne ha nem megfelelő fejléptetési sebességet alkalmazunk (az eredeti EXDOS kártyán lévő WD 1770-es csak lassabb sebességet tud mint amit az újabb meghajtók szeretnek), ezért az EXDOS, EPDOS csak 40 sávosnak kezeli formázáskor (360 Kb, pedig a boltban 720-asnak mondták...), a FAFO erre is figyel. A FAFO a ZT 1.8-es verziótól kezdődően természetesen TURBO üzemmódban is tud formázni. A plusz sávok természetesen le lesznek ellenőrizve, hogy tényleg elbírja-e a meghajtó. (Erről más gépeken (PC, ATARI, AMIGA, stb.) elfelejtkeznek.) Ha formázás közben ijedten vesszük észre, hogy nem azt a lemezt formázzuk amelyiket kellett volna, akkor mivel a formázás belülről halad kifelé, a STOP (ESC) billentyű gyors használatával még megmenthető a fájlok egy része.
A ZozoTools különböző verzióiban ez a funkció esett át a legnagyobb fejlődésen:

28-31 - rejtett szektorok száma (32 bit)
32-35 - lemez szektorainak száma (32 bit)
36 - fizikai meghajtó szám (PC) (00h floppy, 80h HDD)
37 - CHKDSK jelzőbájt (Windows NT alapú rendszerek)
38 - kibővített boot szektor jelzőbájt (29h) ez jelzi, hogy a következő paraméterek léteznek
39-42 - 32 bites lemezazonosító
43-53 - 11 karakteres lemeznév
54-61 - 7 karakteres fájlrendszer azonosító "FAT12  " vagy "FAT16  "
510-511 - 55h,AAh - boot szektor jelzés

Ezen felül a PC-számára olyan boot kód lett beépítve, ami HDD-ről folytatja a bootolást, így az esetleg a meghajtóban felejtett EP lemez olyan, mintha ott se lenne, nem kell már resetelni, mint a korábbi EP lemezeknél, ahol csak egy önmagára ugró JMP volt PC boot kódként.
Szerencsénkre ezek mind az EXDOS által kihagyott üres területre esnek, így egyszerűen csak ki kellett bővíteni az eddigi EP-s boot szektort.

A következő funkció a DL, ez egy gyors DTF betöltő, előnye a gyorsaság mellett az, hogy mindig kéznél van, és nem foglal a lemezen helyet. A 141-es EXOS változóval lehet beállítani, hogy a program lefoglaljon-e egy szegmenst, és ha igen, melyiket. Ha a változó értéke 1, nem foglal le szegmenst, de a betöltés így lassabb. Ha a változó értéke 0, automatikusan igényel, egyéb esetben a megadott szegmenst próbálja használni.

A CLOCK magyarul órát jelent, gondolom nem nehéz kitalálni, hogy mit csinál ez a program(ocska)... ...na nem státusz-sor óra, az nem valami jó, villog, és eltakarhat értékes információkat (editor puffer méret), ez a státusz-sor felett (!) foglal helyet. A CLOCK az órakártya kezelést is ellátja, persze csak akkor, ha van órakártyánk.. Az időkijelzést a TOFF, TON parancsokkal tudjuk ki-be kapcsolni, a dátum kijelzését a DOFF, DON parancsokkal (142-es EXOS változó). Az órakártya olvasását a HREAD, a beállítását a HWRITE parancs végzi.
Az 1.9-es verzióban az óra kezelés, és kijelzés is már EXOS 2.0 kompatibilis. Ez a verzió már kezeli az a MICROTEAM kártyára, alternatív címre tett órát is, a 142-es változó (csak olvasható) 7. bitje jelzi, hogy az alternatív címek vannak használatban és az óra I/O kezelés Z180 kompatibils.

A hátralévő két funkció (VS, VL) a BRD (HUN vagy EP PLUS) által megvalósított VSAVE, VLOAD "utódja" (képernyők elmentésére, visszatöltésére szolgál), csak tömörített formában, és némi plusz szolgáltatással kiegészítve:

A tömörített képek file-formátuma:

00 DA VIDEO_Y VIDEO_X VIDEO_COLOUR VIDEO_MODE DISP_AT DISP_LINES DISP_FROM NO_DISP 00 00 00 00 00 00
COL0 COL1 COL2 COL3 COL4 COL5 COL6 COL7 BIAS 16BIT_DATA_LENGHT tömörített adatok

Ebből a DAh ("Z"+128) típus a file típusa, a DISP AT adja meg hol legyen megjelenítve, DISP FROM - a kép melyik (karakterben számolt) sorától, DISP LINES sor. Ha a NO_DISP nem nulla, akkor nincs megjelenítés (/N paraméterrel mentés).

Természetesen felismeri a VLOAD formátumú képeket is, csak kb. háromszoros sebességgel tölti be őket. Mivel a képeket EXOS modulként kezeli, ezért meg lehet azt is csinálni, hogy egy BASIC programot a betöltő képpel egy fájlban tároljunk, vagy egy fázis képekből álló animációnál megspóroljuk a csatorna megnyitásokat, szín beállításokat és a betöltéseket, ezek helyett egyetlen EXT "VL ..." is elegendő. Ha (pl. kompatibilitási okokból) az eredeti VSAVE paranccsal szeretnénk menteni a képernyőt, a WSAVE parancsot kell kiadnunk. A parancs szintaktikája és a lehetséges paraméterek a parancshoz tartozó HELP-ben részletesen fel vannak sorolva!

A ZT egyéb szolgáltatásai (az 1.5-ös verziótól):

ENTERPRESS 1993 / 1-2

A letölthető csomag az eredeti változat mellett módosított változatokat is tartalmaz. A FAFO-ban javítva van az 1.44-es vagy nagyobb lemezek formázása, ill. több különböző nyelvi változat választható (HUN, HFONT értelemszerű, EKN: ékezet nélküli magyar, UK: angol).
Az emulátorhoz szánt változatokban nincs Turbo EXDOS ellenőrzés, verify (ellenőrzés) bekapcsolás (ezek funkciója emulátoron értelmetlen). Nincs C: D: MAPDISK, hogy lehessen oda is image fájlokat rakni.

Verziótörténet:

 
ZT 1.1
ZT 1.2
ZT 1.4
ZT 1.5
ZT 1.6
ZT 1.7
ZT 1.8
ZT 1.9
RL
3.1
3.1
3.1
3.1
3.2
3.2
3.3
3.3
DBASX
-
-
-
-
-
-
-
1.1
EV
1.2
1.2
1.2
1.2
1.2
1.2
1.2
1.2
FL
0.9
1.6
1.6
1.6
1.7
1.7
1.8
1.9
FAFO
1.7
1.8
1.8
2.0
2.1
2.2
2.4
2.5
DL
-
-
-
1.0
1.2
1.2
1.2
1.2
CLOCK
-
-
0.6
0.6
1.6
1.7
1.8
1.9
VS
1.7
1.7
1.7
1.8
1.8
1.8
1.8
1.9
VL
1.7
1.8
1.8
1.8
1.8
1.8
1.8
1.9
FILE
-
-
-
-
-
-
1.3
1.4