29. 8. 2009

PIT - další vylepšení

Aby toho dnes nebylo málo, tak mám pro Vás dnes novou verzi PITa:





Aaaaa, špatně, myslím tohoto PITa. ;)

Možná se ptáte co je nového. Nová verze PIT 1.2 má pouze jednu vlastnost navíc. Když si pomocí PITa opatchujete systém a spustíte tento patch znova, vše se uvede do stavu jako před patchnutím - prostě se nebudou vypisovat údaje o čase a datumu. (Pro Ataristy - tuhle činnost můžete provádět pořád dokola... ;) ).

Keep coding.

Rádobyseriál: TrueWare (2)

Takže dnes se podíváme na aktuální stav TrueWare.

Jelikož DivIDE je opravdu na <|>u, tak jsem se rozhodl vše programovat na reálném ZX Spectru, MB-02+ a v Prometheovi (neboť v něm umím, má výborný monitor na ladění...). Takže věc se má aktuálně takto:

Prográmek zjistí informace o první partition na CF kartě (dále zjistí první sektor FAT, první datový sektor, zjistí se číslo DIR sektoru).

- zatím vše funguje jak má, vše mám odzkoušeno, čte se DIR sektor i FATka... (jupííí) ;)

Chybí prohledat FATku, abysme našli volný sektor od kterého začneme zapisovat data na FAT16.

Prozatím zkusíme zapsat na disk soubor pokus.txt, který bude obsahovat text:

DivIDE sux!

;) ale nepředbíhejme...

A je to tu zase: DivIDE

Jak jsem slíbil, tak jsem začal pracovat na TrueWARE. Pokoušel jsem se sehnat nějaké info o emulátoru, který by uměl DivIDE porty a uměl by pracovat s nějakým image diskem naformátovaným pod FAT16. Chvíli jsem si hrál s Fuse, ale bylo to hodně krkolomné, prostě něco jako drbat se pravou rukou za levým uchem.

Rozhodl jsem se tedy, že budu TrueWare zkoušet na realné mašině. Ačkoliv jsem zarytý MBčkář, tak jsem se rozhodl, že testovací systém bude DivIDE a to z jediného důvodu - jsem líný tvor. Mám na MBčku pouze jednu IDE CF redukci a pro vyzkoušení zápisu na FAT16 bych musel pořád dokola prohazovat CFku (s BS Dosem a FAT16), což je malinko nepraktické.

Idea byla ta, že si do DivIDE flashnu FatWARE, nahraju si do paměti z CF karty Devastaci (qůli ladění) a pak si z PeCe vypískám TAPku s TrueWARE a podívám se, co to vlastně dělá (pomocí Devastace...).

JENŽE: DivIDE, resp. FatWare, je opravdu jen pro lidi, kteří si chtějí hrát gamesy a nic jiného neumožňuje (opět mimo MDosu3, ale to můj problém neřeší). FatWare neumožňuje přepnout LOAD a SAVE na reálný kazeťák, pořád se nahrává jen TAPka z Fat16...

A abych pořád dokola vyndaval CFku, na PeCi nahrál na tuto CFku TAPku s TrueWare a tu pak zase vložil do DivIDE, to mi přijde milejší prohazovat CF karty na MB-02+...

Takže si všichni užívejte DivIDE a úžasného čtení z FAT16, ja mohu jen dodat, že na práci to opravdu není...

MB-02+ rox!

28. 8. 2009

Rádobyseriál: TrueWare (1)

Tak jak jsem slíbil, budu zde postupně uveřejňovat kód prográmku TrueWare, který si klade za cíl se stát nativní kopírkou z/na FAT16 medium.

Takže žádné dlouhé okecávání a jdem na to:

Zde si můžete stáhnout zdorjový kód v TXT.

Co dělá tahle rutinka? Vlastně skoro nic, co by bylo vidět, ale na druhé straně připravuje samotný zápis souboru do FAT16 (víme první sektor FAT tabulky, oblast kořenoveho adresáře a první datový sektor).

Tak a co bude dál?

Chybí např. najít volný sektor ve FATce a to si ukážeme příště.

Takže kdyby někdo měl chuť, tak mi muže kód zkontrolovat. Upřímě si myslím, že tam nějaká ta chyba bude, neladil jsem ho na skutečném HW, jen jsem si ho procházel v hlavě...

btw. nevíte o nějakém linux friendly emulátoru, který by podporoval PVL porty, umožňoval si hrát s nějakou image disku (FAT16) a zároveň měl nějaký debugger?

27. 8. 2009

Co se 128k flash v MB-02+ ?

Mám už pár měsíců ve svém MBčku 128kB flash. Proč? Proč ne!

BS-DOS a BS-ROM zaberou sotva dvě 16k stránky i s FlashBootem a krásným logem od Factora6. To máme ještě dalších šest volných stránek. Dumal jsem co s nimi a pak jsem narazil na web zabývající se Interface 2. Na něm jsou ke stažení image s různými hrami a softwarem pro tento interface. Zkusil jsem cvičně Space Raiders a emulátor Jupiter Ace, což je klon ZX-81, který místo BASICu měl v ROMce zásobníkový jazyk Forth (o Forthu si můžete přečíst tady a tady). Oboje fungovalo na jedničku. I když obraz, který přes K-Mouse interface produkuje do TV tuneru v Macu moje plusko nestojí za moc, udělal jsem video, které ukazuje první zmiňované - Space Raiders.

Kód, který spouštím na videu je opravdu hyperkomplikovaný:
ld a, 130
out (23), a
rst 0






Plánuji využít možností MB-02+ s velkou flashkou k typicky megalomanským účelům ala MB Maniax.

Již brzy...

26. 8. 2009

Zvýraznění syntaxe Z80 v editoru Gedit

Před pár měsíci jsem se snažil zprovoznit zvýraznění syntaxe assembleru procesoru Z80 v textovém editoru Gedit. Neúspěšně. Vykašlal jsem se na to, s dodatkem: "Prostě to nejde, PeC...". ;)

Dnes jsem našel tyto stránky s rozšířením pro Gedit, kde se mimo jiné píše, že jedna z featur je: Syntax highlighting for ASM cod.

Rozhodl jsem se, že soubor stáhnu a případně upravím pro assembler procesoru Z80. Jaké bylo mé překvapení, když po rozbalení archiv obsahoval soubor z80asm.lang a po zkopírování do adresáře /usr/share/gtksourceview-2.0/language-specs/ mi Gedit krásně zobrazoval zvýrazněnou syntax i v tomto mém oblíbeném textovém editoru pro Gnome.

Co dodat? 3x hurá!!! :) (ať žijou barvičky).

K čemu je vlastně autosys?

Jelikož se ukázalo, že Hoodův komentář ohledně autosys je tím správným řešením problému, kvůli kterému chudák Shrek dělal celou novou verzi FlashBootu (nicméně již brzy se i tak bude tato verze velmi hodit, nechte se překvapit), rozhodl jsem se odhodit hrdost a přiznat, že i po letech nevím, k čemu vlastně je.

Napsal jsem proto Busymu (kdo by měl být povolanější?) a zeptat se ho. Odpověď zveřejňuji tady, protože je třeba aby i ostatní případní ignoranti došli osvícení:

Subor "autosys" sa spusta ako prvy po nabootovani BS-DOSu. Kedze ale vo vseobecnosti po nabootovani (resp. po zapnuti Spektra / po resete) nemusia este existovat systemky BASICu, tak autosys je kratky program v strojaku, ktory BASICove systemy vytvori, a potom zavola klasicke NEW "autoexe". Ty padom subor "autoexe" uz moze byt aj BASIC.

Tento napad na nazov "autosys" som zobral z nejakych starsich MS-DOSov, ktore sice mali autoexec.bat ale ako som zistil, po config.sys-e si najprv spustili subor auto.sys ktory bol schovany niekde v adresari C:\DOS a az potom sa spustal klasicky a dobre znamy autoexec.bat :)

A este som zabudol napisat, ze ked sa subor autosys nenajde, tak po nabootovani sa urobi klasicky velky 128k reset (bsrom=>NMImenu=>E) a system je pripraveny na pouzivanie.

23. 8. 2009

FlashBoot v4 - malá změna

Jelikož Logoutovi přišla z opravy MB-02+, ve které měl nově namontovanou FlashROM, rozhodl se, že prubne náš FlashBoot, ale pokus o nabootování mu vždy skončil v NMI menu. Stačilo sice stisknout klávesu ´E´ a BS Dos nastartoval, ale dle slov našeho duchovního představitele: "Je to opruz!".

Ten kdo zná mé programátorské "kvality" jistě ví, že mám problém hlavně s jednou věcí, které souvisí s tím, že mám v ZXku deprchátor - tudíž nestarám se o reg. I.

To byl pravděpodobně i problém našeho FlashBootu (píšu pravděpodobně, neboť Logout to bude moct vyzkoušet až po víkendu).

Jelikož jsem se ptal dost lidí na reg. I a jeho bezproblémovou hodnotu a nikdo mi nedal dostačující odpověď, prubl jsem to a do reg. I jsem hodil hodnotu 0. Teď mi můžete nadávat, pomlouvat mne, pokud jsem tuto hodnotu urcil spatně... jen mi prosím Vás už někdo řekněte, jaká hodnota tam tedy má být, aby to fungovalo aj Logoutovi ;).

Stahovat můžete zde.

V archivu se nachází tyto soubory:

  • EEPROM_Dron.cod, EEPROM_PVL.cod - poslední verze, publikovaná po JHConu 2007. Tyto soubory stačí přímo vlashnout do MBčka. Nejedná se o opravenou verzi.
  • f6boot.cod - zkomprimovaný obrázek od Factora6
  • pack_dos.bin - komprimované stránky MBčka (BS Dos, BS Rom)
  • easy_hdd_light_Dron.bin, easy_hdd_light_PVL.cod - očesaná verze EasyHDD
  • hlavni.a80 - tenhle zdroják vytvoří "prográmek", který Vám do stránek 0 a 1 rozbalí BS Romku a BS Dos a ten pak opatchuje pomocí HDD Patche.
  • booting.a80 - tenhle zdroják vytvoří další "prográmek", který dostane výše uvedenou rutinku (hlavni.a80) z Flash paměti do RAMěti ZX Spectra a spustí ho - čímž se zavede BS Rom, BS Dos a opatchuje ho HDD Patchem...
Takže návod na zkompilování:

  • zkompilovat hlavni.a80 - upravit si PVL nebo Dron porty (určuje se podle easy_hdd_light_Dron.bin, easy_hdd_light_PVL.cod, které se includuje do zdrojáku) - defaultně Dronovo porty.
  • pak jen stačí zkompilovat booting.a80 a výsledný booting.bin flashnout do MBčka...

Možná Vás překvapuje proč jsem napsal tento dlouhosáhlý popis veškerých souborů. Věřte, že když jsem se na zdrojáky bez jediného popisu podíval po více jak roce, tak jsem byl zmatenej, takže tenhle článek je hlavně pro mou osobu, až se za dalších pár let budu opět v těchto zdrojákách hrabat... ;)

Jináč myslím, že podobný problém měl i Hood...

2. 8. 2009

MB Maniax na Twitteru

Co je Twitter ví dneska už kdejaký Commodorista. Právě proto ale nejen proto by neměl Spectrista zůstat pozadu. Ode dneška tedy tuto síť používají i MB Maniax. Uvidíme, kolik lidí zvládneme naštvat ve 140 znacích.

Náš Twitter feed můžete sledovat zde.