Press "Enter" to skip to content

Ako rozbehať QubIDE

Návodov pre Sinclair QL je ako šafránu, tak som sa rozhodol, že dnes si ukážeme ako rozbehať v QLku QubIDE. Prejdeme si čo k tomu treba a čo si s tým počať.

Kto máte dodnes funkčné QLko, alebo ste si nejaké čerstvo zaobstarali, určite ste veľmi rýchlo zistili, že boj s microdrive mechanikami a kazetkami prináša akurát tak šedivé vlasy a robiť sa s tým nedá. Ak ste sa obzerali po spoľahlivejšom záznamovom médiu, tak prvý logický krok je nejaký floppy interface. Aj tých už je dnes ako šafránu, takže ďalšia možnosť už je len vDriveQL (mimochodom super zariadenie), alebo nejaký klon QubIDE. Rozšírený je hlavne tento od José Leandro Novellóna, lebo ho vyrábalo niekoľko ľudí (napríklad Zaxon) a dlhodobo sa objavoval na SMR alebo Ebayi. Kto potreboval zároveň aj floppynu, výborným riešením bol Tetroidov TDI, ktorý kombinuje 768k Trump Card, QubIDE a slot na CF kartu do jedného zariadenia. Zdôrazňujem bol, lebo vieme čo sa deje na východ od nás a aké to má následky na pohyb tovaru z Ruska do našich končín.

Predpokladajme teda, že vlastníte nejaký variant QubIDE. To má na sebe ROM a logika je okrem iného realizovaná pomocou dvoch GALov. Mnoho pôvodných QubIDE má v nich starší typ logiky a využíva niektorú zo starších verzií ROM, čo má viacero obmedzení a my sa týmto prípadom nebudeme venovať. Ideálny stav je, že máte v GALoch novšiu logiku a výbornú ROM QubATA od Alana Haouiho. Ak nemáte, dá sa to aktualizovať, potrebné obsahy nájdete tu u mňa. Je to zip súbor, v ktorom nájdete obsah oboch GALov, obsah ROM a manuál. Ak vlastníte Tetroidov TDI, tak si môžete vydýchnuť, lebo v ňom už QubATA je priamo od Tetroida.

Takže v QubIDE máme správny obsah GALov a ROM, tak môžeme ísť konečne na to. Strčte geret do QLka a pripojte si nejaký HDD, alebo ideálne CF. Po zapnutí sa QubATA pokúsi skalibrovať a zdetekovať vaše zariadenie. Ak nenájde nič, za nápisom Detection sa objaví bodka. To sa stane aj v prípade, že máte pripojené len SLAVE zariadenie. Ak máte pripojený len MASTER, zobrazí sa jednotka, ak máte MASTER aj SLAVE, za nápisom Detection nájdete dvojku. Potom nasleduje obvyklý výpis pripojených zariadení, prípadne výpis chyby ak nejaká nastane. Následne sa QubATA pokúsi primapovať prvú partíciu typu QLW1 na MASTER zariadení ako WIN1_. Ak taká neexistuje oznámi vám to. My sme v situácii, keď tam máme pravdepodobne FATku, takže dostaneme viacero chybových hlášok. Konkrétne mne to na novú 256 MB CF kartu hlásilo MASTER failed, Unknown disk format a Linking WIN1_ failed!, čo je vlastne očakávaný stav:

Áno, mám hnusný obraz cez video výstup a áno môžete mi závidieť, lebo mám Tetroidov disk interface. A nemeckú Minervu mám preto, lebo mám QL s nemeckou klávesnicou a nebavilo ma furt s anglickou variantou hľadať čo je na ktorej klávese. Ale poďme k veci. Nechajte si QLko naštartovať a môžeme pristúpiť k vytvoreniu a sformátovaniu partície. Ako všetko pri QLku, aj manuál QubATA má jemne povedané akademický charakter, takže sa ním zatiaľ nemusíte zaťažovať, lebo vám sem napíšem všetko čo treba bez balastu. Pre lepší detail doňho samozrejme neskôr pozrite.

Než spravíme prvú partíciu, je potrebné médium najprv inicalizovať. Pre vylúčenie chyby pri práci s partíciami má QubATA poistku, ktorú musíme odblokovať. Na to slúži príkaz WIN_FORMAT 1, takže ho naťukáme a odošleme ENTERom. Teraz nám QubATA povolí inicializáciu, takže pre master zariadenie je to príkaz WIN_DISK INIT,1. Po jeho spustení nám QubATA vypíše zvolené zariadenie a dostaneme otázku Initialize Disk (Y/N) ?, takže ju potvrdíme ypsilonom. Prekvapivo to už nič nevypíše, takže pokračujeme vytvorením partície. Tuto je to trošku nezrozumiteľné, lebo sa mi nepodarilo prísť na to, ako vypočítať veľkosť partície, ktorú chcem vytvoriť na celé voľné miesto. Skusmo som prišiel na to, že pre moju 256MB kartu povolí len 244MB, takže príkaz ktorý to spraví vyzerá takto: WIN_DISK CREATE,1,1,244. V preklade to znamená, že vytvárame partíciu na MASTER zariadení, je to prvá partícia v poradí a bude mať 244 MB. Opäť to nič nevypíše, takže pristúpime k primapovaniu partície príkazom WIN_DRIVE 1,1,1, čo znamená že na device WIN1_ primapujeme prvú partíciu z MASTER zariadenia. No a nakoniec už nám stačí partíciu len sformátovať klasickým príkazom FORMAT WIN1_QubATA. Namiesto toho QubATA si môžete dosadiť vlastné meno. Po odoslaní príkazu sa spustí formátovanie ktoré trvá pekne dlho, lebo je nízkoúrovňové a má dva priebehy, takže si môžeme ísť uvariť čaj a vyvenčiť psa. Po skončení formátovania ešte skúste stroj resetnúť, či vám nabehne bezchybne. Skúste príkaz DIR WIN1_, mali by ste dostať výpis, kde sa zobrazí meno partície a počet voľných/celkových sektorov. Ak vám to funguje, máte všetko pripravené na nakŕmenie CFky dátami, čo je trocha dosť opruz, ale aj to vám vysvetlím.

Najprv ešte malá sumarizácia prípravy CFky:

  • vypnutie read only poistky: WIN_FORMAT 1
  • inicializácia CFky (master): WIN_DISK INIT,1
  • vytvorenie partície: WIN_CREATE,1,1,244 (číslo zariadenia,číslo partície,veľkosť partície)
  • namapovanie partície: WIN_DRIVE 1,1,1 (číslo WIN device,číslo zariadenia,číslo partície)
  • sformátovanie partície: FORMAT WIN1_NAME

QubATA podporuje adresáre, takže vám odporúčam ich aj využívať. Software si na CFku viete skopírovať z microdrive, vDrive, prípadne aj z floppy ak máte príslušnú výbavu. Software z internetu už sa na CFku kopíruje horšie, pretože jediný tool ktorý na to existuje, je TENTO od Habiho, ktorý je slušne povedané príšerný. Je len pre Windows, ale našťastie funguje relatívne dobre aj vo wine.

Najviac softu sa dá nájsť u Dilwyna vo forme obrazov MDV a zipov. Nájdete tam však len public domain a to čo sa v priebehu rokov uvoľnilo na voľnú distribúciu. Plno softu však nenájede, lebo na ňom sedí kdejaká ropucha (napr. Quanta). Pozor však na to, že QLkové zipy sú trocha iné, lebo súbory v nich obsahujú aj QLkové hlavičky. Síce ich rozbalíte aj normálnym rozpakovačom, ale prídete práve o tie hlavičky a pri importe do QLka potom nič z toho nefunguje. Habiho IMG tool toto okľukou rieši tak, že si otvoríte zip ako image, a súbory z neho exportujete aj s hlavičkami. Následne už s nimi môžete ďalej narábať normálne, napríklad ich znova pomocou Habiho IMG toolu naimportujte na CF kartu. Pre istotu ďalej aspoň stručne uvádzam, ako s ním narábať.

Pre export QLkových súborov z QLkových zipov si spustite Habiho IMG tool, otvorte príslušný zip cez File > Open Image, potvrďte kliknutím na OK. V Options zaškrnite Extract a QL, potom v ľavej časti kliknite na Partition, v pravej časti označte všetky súbory a cez File > Extract files si do zvoleného adresára vyexportujte obsah archívu. Týmto úkonom si vlastne “rozbalíte” zip súbor so zachovaním QLkových hlavičiek. Pôvodný anglický návod s obrázkami od José Leandra nájdete TU.

Pre import takto vyexportovaných súborov na CFku si na nejakom kompe s windowsom spustite Habiho IMG tool ako admin, pripojte si CFku normálne cez čítačku (pozor, tupoň windows samozrejme po vás bude chcieť tú CF sformátovať, tak sa nepomýľte a nedovoľte mu to), cez Disc > Open disc otvorte priamo tú CFku a potvrďte klinkutím na OK. V Options zaškrnite len None, potom v ľavej časti kliknite na Partition a v pravej časti by sa vám mal zobraziť jej obsah. Pravým kliknutím sa dajú vytvárať adresáre, či mazať súbory. Importuje sa buď drag&dropom, alebo cez File > Insert files. Analogicky to funguje aj pre export. Pôvodný anglický návod s obrázkami od José Leandra nájdete TU.

Používanie tohto toolu pod Linuxom/wine je bohužiaľ obmedzené len cez dump CF karty, čo je dosť zdĺhavé, takže pokým mám po ruke stroj s windowsom, túto metódu nepoužívam. José Leandrov anglický návod nájdete TU.

Keď si na CFku nakopírujete všetky funkčné microdrive kazetky a natlačíte ďalší software cez Habiho IMG tool zistíte, že sa nedá skoro nič spustiť, pretože drvivá väčšina softvéru je napísaná tak, že beží natvrdo z MDV1_ prípadne MDV2_ a podobne to platí aj pre softvér, ktorý si tam nakopírujete z diskiet (FLP1_ a FLP2_). Ale nezúfajte, hneď o chvíľu si vysvetlíme, ako sa to dá okýchať.

Najprv vám ale ešte ukážem, ako si vylepšiť štart QLka, pretože QubATA vie po zapnutí alebo resete z WIN1_ automaticky spustiť BASICovský program nazvaný BOOT. Cez IMG Tool si na CFku trebárs do adresára SYS nakopírujte obsah tohto zipu. Je tam Toolkit2 pre tých, čo ho nemajú priamo v QLku a na začiatok jeden šikovný rezident, ktorý nám umožní súšťať software priamo z CFky. Mám evidentne sklerózu, lebo do toho zipu som vám nepredpripravil aj súbor BOOT. Našťastie nie je dlhý, takže si ho naťukajte sami:

10 LET dev$='win1_'
20 LET sys$=dev$&'Sys_'
30 basead=RESPR(250) : LBYTES sys$&'Exists_func',basead : CALL basead
40 IF NOT (Exists('TK2_EXT')) THEN
50 basead=RESPR(16876) : LBYTES sys$&'Toolkit_226',basead : CALL basead
60 END IF
70 TK2_EXT
80 WTV
90 LRESPR sys$&'sub_rext'
100 DATA_USE win1_
110 PROG_USE win1_
120 NEW

Uložte si ho pomocou SAVE WIN1_boot. Tento krátky programček pri štarte zabezpečí, že sa vám natiahne Toolkit2 ako rezident ak ho nemáte v QLku v ROM. Potom sa Toolkit2 aktivuje a prepne sa zobrazenie na užší font. Potom sa natiahne náš šikovný rezident, nastavia sa premenné a vyčistí sa BASIC.

A teraz nastáva tá finta fň. Povedzme, že máte trebárs Easel pre floppy v adresári WIN1_Easel. Napíšte si tento krátky programček:

10 SUB_USE FLP
20 SUB_DRV WIN1
30 SUB_USE 1,Easel
40 LRUN FLP1_boot

Uložte si ho pomocou SAVE WIN1_runEasel a potom ho skúste spustiť. Tadááá. Do budúcna potom stačí Easel spúšťať príkazom LRUN WIN1_runEasel. Ako vidíte, rezident sub_rext nám umožňuje takto elegantne presmerovať ľubovoľný adresár na ľubovoľné device. Týmto spôsobom sa dá rozbehať takmer čokoľvek, väčšinou vôbec netreba upravovať pôvodný program, stačí len podobný “loader”. Zatiaľ som skúšal len niekoľko programov a hier ale fungovali všetky. Ak potrebujete používať zároveň aj floppy, tak sa dá ešte premenovať pomocou príkazu FLP_USE FDK (napríklad). Takže floppy máte potom prístupné ako FDK1_ a FDK2_. Alternatívou by malo byť podobné šachovanie s adresármi a devices cez príkaz DEV_USE, ale asi som nepochopil príklady, lebo mne to nejako nefungovalo. Koho by to zaujímalo, je to popísané v manuáli pre Trump card.

No a to by bolo pre dnešok všetko. Nabudúce by som rád rozvinul ten WIN1_BOOT súbor o nejaké ďalšie rezidenty, ale ešte sám neviem o aké, takže vám neviem sľúbiť, že nejaké nabudúce bude 🙂 Alebo sa pozrieme bližšie na vDriveQL. Dovtedy vám želám príjemné QLkovanie s QubIDE.

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *