Upravene ZX romky

Jedneho dna, zaciatkom roku 1990, po skonceni vsetkych skusok, este pocas skuskoveho obdobia na vyske, som si ku Spektru pripojil 16 kB pridavnej ramky, ktorou sa dala nahradit povodna romka. A hned som to aj prakticky pouzil - skopiroval som do ramky povodnu romku a vsetky, uplne vsetky texty (prikazy, kazetove napisy a chybove hlasenia) som prepisal do cistej slovenciny. Tak vznikla moja vobec prva upravena romka ktoru som nazval tak smiesne ze vraj Ha-ha rom.

Kazdy, kto programuje v asembleri alebo priamo v strojaku, urcite obcas zazil situaciu, ked sa mu testovany program nezosypal a nezamrzol. Viem, dost zriedkava situacia... :-) Ale co v tych ostatnych pripadoch ? A tak som zacal romku skopirovanu v ramke rozne aj prakticky upravovat a vylepsovat. Hned prve, co som tam urobil, bolo jednoduche menu pre obsluhu NMI, ktore umoznilo urobit NEW so znizenym RAMTOPom alebo skok do debuggera MRS, kde som mohol krokovanim pokracovat tam, kde bol program preruseny NMIckom.

Hlavna seria BS rom XX

A tak postupne vznikali BS romky 22, 30, 65... (a plno dalsich verzii). Pritom som sa nechal inspirovat roznymi vlastnostami inych upravenych romiek, ako napriklad Izo rom, Groot rom, Imc rom, Sapo rom. Tymto by som chcel tiez podakovat mojmu kamaratovi WWW-ckovi a jeho upravenej WWW-romke, ktorou som sa tiez nechal inspirovat a ktory mi tiez dal niekolko zaujimavych napadov ako urobit romku este lepsou a uzitocnejsou.

Najnovsie romky maju cisla 118 a 140. Obe tieto verzie su pouzite ako sucast operacneho systemu BS-DOS 308 pre disketovu jednotku MB-02. Ak nemate MB-02, mozete vsetky tieto romky pouzit aj samostatne. Napriklad si ich napalite do EPROMky a tu vlozite do pocitaca miesto originalnej romky.

V nasledujucich balickoch na stiahnutie najdete okrem samotnych romiek aj popis vsetkych zmien, roznych oprav a dalsich vylepseni ktore som v danych romkach urobil. V balickoch pre romky 118 a 140 je dokumentacia aj v anglickom jazyku.

Name
Meno

Release
Vytvorenie

Size
Dlzka

Download
Stiahnutie

BS rom 22

??.??.1990

20 kB

bsromold.rar

BS rom 30

??.??.1991

BS rom 65

03.12.1991

BS rom 88

22.04.1992

BS rom 101

26.06.1992

BS rom 111

08.09.1993

BS rom 118

13.03.1994

24 kB

bsrom118.rar

BS rom 140

22.04.1997

26 kB

bsrom140.rar


Dalsie upravene romky

Okrem hlavnej "oficialnej" serie svojich modifikovanych romiek som vymyslal aj rozne dalsie upravene romky. Napriklad uplne prva uprava romky, co som urobil, bola uz vyssie spomenuta Ha-ha rom, ktora sa mi zial nezachovala (ale stale mam nadej ze ju niekde vo svojich starych archivoch objavim).

Na prosbu VELESOFTa som upravil standartnu ZX romku tak aby mohla bezat v normalnej ramke ZX Spektra na vyssich adresach. Na systemoch, ktore umoznuju v dolnych 16kB strankovat pamet, bude tym padom tato pamet priamo pristupna aj zo samotneho basicu.

Name
Meno

Release
Vytvorenie

Size
Dlzka

Download
Stiahnutie

Ha-ha rom

??.02.1990

16 kB

 

ZX rom in RAM

27.07.2017

16 kB

zxromra1.rar


Rozsirenie romky pre 64 znakov na riadok

Samostatnou kapitolou su moje rozsirenie romky pre vypis 64 znakov na riadok uzkym fontom v rastri 4x8 bodov. S myslienkou rozsirit romku o tento sposob vypisu ma oslovil Hood, ja som jeho vyzvu prijal a vysledkom je niekolko romiek s tymto sposobom vypisu. O rozsireni si mozete precitat aj priamo na Hoodovej stranke.

Kedze v mojich upravenych BS romkach 118 a 140 uz nebolo prakticky ziadne volne miesto, rozhodol som sa ze obetujem povodny znakovy font 8x8 a tychto uvolnenych 768 bajtov vyuzijem pre rozsirenie - novy font 4x8 a vsetky rutinky potrebne pre vypis tymto fontom. Kedze vsetky vypisy bezia v rezime 64 zn/r, povodny font uz prakticky aj tak nie je potrebny. Moze to byt ale problem pre rozne aplikacie ktore tento povodny romkovy font vyuzivaju - tieto aplikacie budu proste vypisovat nezmysly :)

Uprava originalnej ZX romky bola jednoduchsia vdaka tomu ze tu je k dispozicii vyse 1kB volneho miesta. Rozhodol som sa preto urobit upravu, ktora zachovava spetnu kompatibilitu - t.j. romka okrem noveho rezimu vypisu 64 zn/r podporuje aj povodny rezim 32 zn/r. To znamena ze v romke zostal aj povodny font 8x8 a tym padom vsetky aplikacie ktore ho vyuzivaju pobezia spravne. Ak sa vam nechce citat prilozenu dokumentaciu, postaci ak si zapametate ze POKE 23611,220 zapne rezim 64 zn/r a POKE 23611,204 zase zapne povodny rezim 32 zn/r.

Dalsou myslienkou bolo vyuzit vecsiu pamet MB02 - vsetky potrebne rutinky a font umiesnit do inej RAM banky tak, aby sa rozsirenie dalo aplikovat aj na akekolvek upravene romky v ktorych uz nezostalo na dalsie rozsirenia ziadne miesto. Tato myslienka priniesla nielen moznost vyuzivat vsetky vyhody BS romiek a zaroven mat k dispozicii oba rezimy vypisu 32 aj 64 zn/r, ale dostatok volnej pameti v druhej MB02 banke umoznil optimalizovat vypisove rutinky na rychlost, ktora (priznajme si to, hlavne pri fonte 4x8) obvykle nebola ktovieaka. Vytvoril som preto pre MB02 specialny univerzalny patch m64, ktory nainstaluje rozsirenie pre vypis 64 zn/r do akejkolvek romky, ktoru prave uzivatel pouziva. Tento patch nie je viazany len na MB02, ale je pouzitelny aj obecne pre akykolvek hardwer umoznujuci v dolnych 16kB prepinat dve banky ROM alebo RAM pameti (napr. DivIDE s rozsirenym MB02 strankovanim).

Name
Meno

Release
Vytvorenie

Size
Dlzka

Download
Stiahnutie

Original ZX rom

10.05.2017

14 kB

zxrom64m.rar

BS rom 118 & 140

28.04.2017

16 kB

bsrom64z.rar

Patch 64 zn/r pre MB02

07.06.2017

4 kB

mb02m64z.rar


Romky s rozsirenim pre BSDOS a ESXDOS

Vzhladm na to, ze MB02 nema automaticke prepinanie romiek podobne ako ine disk(et)ove jednotky, musi byt romka v nej pouzivana doplnena o prepinacie rutinky ktore v pripade diskovych operacii zabezpecia volanie bsdosu a po vykonani operacie navrat do romky.

V nasledujucom balicku najdete takto zmodifikovanu BSrom118 ktoru vecsina uzivatelov standartne pouziva s bsdosom uz dlhe roky. Tiez tu najdete aj najnovsiu BSrom140, ktoru mozete pouzit namiesto verzie 118. A na koniec tu najdete aj standartnu originalnu ZX romku, ktoru je vhodne pouzit v pripade, ak by vam funkcionalita v BS romkach z nejakeho dovodu prekazala. Pri vsetkych troch romkach je aj presny vypis modifikacii pre bsdos.

Name
Meno

Release
Vytvorenie

Size
Dlzka

Download
Stiahnutie

BS rom 118

08.11.2013

17 kB

bsdosrom.rar

BS rom 140

08.11.2013

Original ZX rom

24.11.2013

Hodne pouzivanym systemom je aj ESXDOS. Problem ale je, ze moje modifikovane romky z hlavnej serie nie su s tymto systemom kompatibilne. S myslienkou aby sa dala BSrom140 pouzit aj spolu s ESXDOSom ma oslovil tentokrat LMN. Po zanalyzovani pricin nekompatibility (s vydatnou pomocou Lanex-a) som vytvoril nasledujucu patchnutu verziu BSrom140 ktora sa funguje aj s ESXDOSom.

Name
Meno

Release
Vytvorenie

Size
Dlzka

Download
Stiahnutie

BS rom 140 for ESXDOS

07.07.2022

14 kB

bs140esx.rar


Upravene romky pre ZX Spektrum 128

Modely ZX Spektrum 128 a +2 maju romku rozsirenu na 32kB. Z toho 16kB je klasicka zx romka (ako aj na ZX Spektre 48) s drobnymi upravami, a v dalsich 16kB sa skryva rozsirena funkcionalita systemu - pekne farebne uvodne menu, specialny kalkulackovy rezim, pohodlny celoobrazovkovy editor pre pisanie basicu a aj pre kalkulacku, utilitka na precislovanie basic riadkov, obsluha ramdisku... Samozrejme ani tato rozsirena romka zo Spektra 128 neusla mojej pozornosti a aj do nej som robil rozne upravy.

Ked som si (aj s pomocou MDV) vybudoval disketovu jednotku MB01 s moznostou nastrankovat viac RAM baniek do dolnych 16kB, upravil som si romku zo ZX Spektra 128 +2 tak aby sa strankovala nie cez standartny 128 port #7FFD, ale cez prepinaci port na MB01 a aby tak mohla fungovat v dvoch RAM bankach na MB01. Neskor som spravil aj adaptaciu na MB02, ktora sa lisila len hodnotami posielanymi na strankovaci port MBxx.

Pri pisani svojich casti do dema COWINA som potreboval vediet presne kolko casu trvaju jednotlive basicove prikazy a funkcie. Urobil som si preto do 128 romky jednoduchu upravu, ktora mi farebnymi pruhmi v borderi zobrazovala casovanie, presne tak isto ako to vzdy pouzivam pri ladeni multicolorov. Neskor som si do tejto romky pridal nejake dalsie upravy, ktore mi ulahcili a zjednodusili pisanie basicovych programov. A takto postupne zacala vznikat upravena romka, ktoru som honosne nazval BSrom128edit01. Jej vyvoj nasledne velmi intenzivne pokracoval v ramci pisana dalsieho basicoveho dema BALIK - vzdy ked som mal pocit, ze sa mi nejaka funkcia alebo vlastnost hodi pre pisanie programu v basicu, a nebolo by prilis zlozite ju naimplementovat, tak som ju do tejto romky doplnil. Dalo by sa napisat, ze vsetky vylepsenia, ktore tato romka ma, som tam spravil prave preto, lebo som ich potreboval v ramci tvorby tychto dvoch dem.

Medzi upravene 128 romky zaradujem aj moj konvertor na prevod hudby pisanej v prikaze PLAY na formu ktora moze byt prehravana z prerusenia na pozadi. Jedna sa o klasicku 32kB romku zo ZX Spektra 128+2 rozsirenu o "odchytavanie" dat posielanych do AY-3-8912 pocas hrania hudby cez prikaz PLAY. O tomto "konvertore" sa viac docitate na samostatnej stranke.

Name
Meno

Release
Vytvorenie

Size
Dlzka

Download
Stiahnutie

128 rom 13

??.??.1990

25 kB

128rom13.rar

BS rom 128 edit 01

20.04.2018

30 kB

bsr128e1.rar

PLAYtoINT konvertor

17.09.2013

30 kB

play2int.rar


Aplikacie pre upravu romiek

Pre lahsiu pracu s modifikovanymi romkami (hlavne, ale nie len) na MB02 som vytvoril aplikaciu, ktora porovna dve 16kB romky, a zo vsetkych najdenych rozdielov vygeneruje kratky program (patch), ktory nasledne po spusteni zapise vsetky zmeny do povodnej romky. Pred samotnym zapisom sa kontroluje povodny obsah romky pre pripad, ze by romka uz obsahovala nejake ine zmeny, ktore by mohli kolidovat s patchom. Ak sa zisti nejaka kolizia, program v takom pripade vypise miesto kde nasiel koliziu a zmeny nezapise.

Tato aplikacka moze byt uzitocna ak potrebuteje zmeny v jednej romke preniest do uplne inej romky. Priklad: Radi by ste spolu s bsdosom pouzivali nejaku inu romku (WWW rom, Sapo rom...). Vezmete originalnu ZX rom, porovnate ju s verziou obsahujucou patch pre bsdos, a nasledne vygenerovany patch aplikujete na vasu vlastnu romku. Tym padom do nej zapisete vsetky potrebne rozsirenia nutne pre beh bsdosu a mozete ju pouzit.

Name
Meno

Release
Vytvorenie

Size
Dlzka

Download
Stiahnutie

MakePatcher1

25.04.2017

1.4 kB

patcher1.rar


Porty ZX romky na ine platformy

Viackrat som sa hral s emulatorom ZX Spektra na znamom C64. Ono to vlastne nie je emulator ako taky, ale iba standartna ZX romka prepisana tak aby vedela bezat na hardweri C64. Neskor som videl ZX romku preportovanu aj na ceskoslovensky mikropocitac Ondra. Vtedy sa vo mne zrodilo rozhodnutie, ze moja druha najoblubenejsia platforma - PMD85 - by si tiez zasluzila pysit sa preportovanou ZX romkou. A tak padlo rozhodnutie, a svetlo sveta uzrel port pre tuto platformu PMD85.

Podobne ako na platformach C64 a Ondra, ani na PMD85 to uz nie je romka v pravom slova zmysle, t.j. data ktore je mozne napalit do ((E)E)PROM (Flash) a fyzicky vlozit do pocitaca, ale je to klasicka aplikacia, ktora funguje na pocitaci bez akychkolvek HW uprav a ktoru treba normalne nahrat a spustit.

Name
Meno

Platorma
Platform

Release
Vytvorenie

Size
Dlzka

Download
Stiahnutie

ZX rom 01

PMD85

28.05.2016

26 kB

zxromp01.rar

ZX rom 02

PMD85

20.07.2018

28 kB

zxromp02.rar


Ine aplikacie v podobe ZX romky

V tejto sekcii sa nachadzaju programy vyhotovene ako romky alebo urcene pre napalenie do romky, ktore nijak priamo nesuvisia s originalnou ZX romkou.

Pred nejakym casom sa objavila takato vyzva od cloveka menom Jiiira:
Rad bych obohatil naprogramovanou ROMku pro zajemce o stavebnici Sparrowa/Sparrowa SX o nejake demo, ktere by bylo v ROMce jako jedna ze stranek na vyber (v ROM selectoru). Najde se nekdo, kdo by takove demo udelal? Odmenou mu bude nehynouci slava a sireni jeho (dobreho) jmena v ROMkach pro Sparrowa...
Tato vyzva ma zaujala. Kedze som nemal casopriestor vyvijat nieco uplne nove, a uz existujuce hotove dema by nebolo uplne trivialne prisposobit pre tento ucel (jednou z poziadaviek bolo ze to musi behat so 48kB pametou), rozhodol som sa, ze vytvorim aspon taku kolekciu 1k intrier. Zobral som nejake zname 1k intra (hlavne) z Foreverov a JHconov ktore idu aj na 48k, pridal k tomu take jednoduche menu pre vyber, okolo menu dal animovany farebny ramcek aby to nebolo uplne suche, a cele to spakoval mojim LzxPack-om. A tak vzniklo ZX48 ROM 1k intro collection 1. Aby si tuto kolekciu mohli pustit aj ludia ktori nemaju moznost si ju napalit do romky alebo inak podstrcit do spodnych 16kB, v balicku sa tiez nachadza verzia vo forme normalnej aplikacie ktoru je mozne klasicky nahrat a spustit na ktoromkolvek ZX Spektre 48kB.

Name
Meno

Release
Vytvorenie

Size
Dlzka

Download
Stiahnutie

ZX48 ROM 1k intro collection 1

28.11.2019

17 kB

romcol01.rar

Nazad / back