11. 5. 2009

Amiga + Minimig update

Jak využít několika dnů (pátků!) státních svátku? Možností je mnoho. Ale jelikož moje žena byla v zaměstnání od nevidím do nevidím, rozhodl jsem se, že dám dokupy svoje stroje. První byl Playstation 3, jak jsem psal níže, ale trošku odladit chtěla i hlavní Amiga, jakož i nový firmware do Minimigu vyšel.

U mé milované A1200 jsem se dostal do problémů poté, co mi začala zlobit CF karta (v IDE redukci sloužící jako harddisk). Koupil jsem tedy novou 2 GB CF kartu, nabootoval z diskety, správně nastavil maxtransfer a masku, kopnul tam nejlepčejší filesystem PFS3 (z hlediska funkce překračuje možnosti NTSF / WinFS o několik koňských délek, ani EXT3 se mi z koncepčního hlediska nezdá takto dobře navržený) a zkopíroval zálohu systému (OS 3.9). Všechno maká, jako hodinky, takže jsem si tam samozřejmě udělal 100 MB partition na Macintosh, který jede velice slušně (Warcraft je na hranici hratelnosti, ale jde to). Zbývá doladit kravinky - ROMky do WHDloadu, noclick utilitu, ale hlavně rozchodit WiFi a PCMCIA-CF redukci. Tím bude instalace zcela ukončena.

Minimig oproti tomu dostal nový kabátek (díky putují Chainovi), takže už nejde o obnaženou desku. Elegantní "Apple like" design mu vysloveně sluší, sháním nějakou pěknou nálepku (ideálně boingball s nápisem). Ale ke hlavní změně došlo uvnitř - ve firmware.


Že se Minimig rozvíjí po stránce softwarové je logické. Jde o opensource systém, který je na fanoušcích závislý, navíc první verze skutečně nebyly příliš stabilní a kompatibilní. Ovšem větším překvapením je, že se Minimig vyvíjí i po stránce hardwarové! Mám na mysli nejenom miniITX řešení, ale v tomto případě ARM nástavbu, která posouvá možnosti Minimigu daleko za hranice Amigy 500. Proč je to tak úžasné? Minimig se dá rozdělit na dvě části. První část je Amiga 500 v hardwarové emulaci, druhá část je obsluha samotného emulátoru. Hardwarová emulace je řešena pomocí čipu Spartan a Motoroly 68000, obsluha emulace (tj. vkládání virtuální disket z SD karty a další funkce) je řízená malým PIC švábem. Ten má ovšem konečnou kapacitu, která není moc velká, takže moc funkcí nepobere. Proto se vyvinul ARM adaptér, který se vloží do patice místo PICu. ARM má mnohem větší výkon, takže obslouží mnohem více funkcí. Mimo jiné tedy přibyla emulace až 4 disketových mechanik, emulace harddisku (HDF soubor) a více RAM paměti. A do toho všeho - možnost zvýšit frekvenci Motoroly z 7 MHz na 28! Demonstraci ARMu najdete na Youtube.

A co je vůbec nejlepší zpráva? Většinu těchto funkcí se podařilo realizovat i na originálním PICu, takže i bez ARM adaptéru (o kterém tak jako tak uvažuji ;) se dočkáme prakticky všeho! Vyjma harddisku a dvou mechanik - což je prkotina pro disketový systém.

Originální Amiga 500 jede na procesoru Motorola 68000 s frekvencí 7.14 MHz (s drobným rozdílem pro regiony US a EU). Minimig tento procesor obsahuje také, ale dneska se již na takto nízké frekvenci procesory nevyrábějí. Takže Motorola v Minimigu je taktovaná na 28.36 MHz, ale dále je podtaktovaná na originální rychlost. Je to zřejmé z hlediska kompatibility, zbytek čipsetu by se mohl zbláznit, že má takto rychlý procesor. Ovšem vývojem emulace je nyní možné nastavit frekvenci na plný výkon a Amiga prostě jede jako z praku! Abych demonstroval rozdíl, natočil jsem mobilem intro Frontiera. Kvalita je příšerná, ale zrychlení / zpomalení při přepínání rychlostí je dobře patrné (ano, rychlost lze přepínat za běhu emulace bez restartu!).



Z hlediska kompatibility je už jenom málo co vylepšovat. Například demo 9Fingers neustále obsahuje chybu s vertikálními pruhy, která je sice snesitelná, ale divná. Podobně tak Chaos Engine 2 obsahuje chybu graficky velice podobnou, ale navíc je nehratelně pomalý (a to i po přepnutí na 28 MHz), takže je chyba někde hlouběji.

Na druhou stranu jsme dostali dvě disketové mechaniky s dvounásobnou rychlostí načítání. Takže jsem se dal do testování Workbench. Boot trval původně 47 vteřin (což odpovídá reálné Amize), po zapnutí vyšší rychlosti mechanik jsme se dostali na 31 vteřin a po zapnutí 28 MHz dokonce na 25 vteřin! To je slušný výkon na starouška ;). Skoro polovina času, nemluvě o rychlejší práci v samotném grafickém rozhraní. Podle testů s ARM adaptérem je nyní Minimig přibližně 5x výkonnější, než Amiga 600 (tedy ECS). Je tedy možné spouštět i WHDLoad hry. No nacpat tam "nějak" AGA a moje A1200 může začít žárlit ;).


Krom toho byly doladěné mušky, jako je možnost přepínání NTSC/PAL při startu Minimigu (drží se klávesa F1 nebo F2), což ušetří hodně námahy. OSD menu se nyní pohodlně ovládá šipkami + ENTER + ESC na klávesnici, případně joystickem, jako za stara. Diskety na SD kartě se sice pořád řadí divně, ale je možné je hledat pomocí prvního písmena - vynikající pokrok. Vůbec je doladěné veškeré ovládání emulace, nemluvě o perfektně zpracované dokumentaci. Jaku Bednarski - pochvala před nastoupenou jednotkou (no jo, donation bude).

K dokonalosti chybí jen krůček a to sice podpora adresářů na SD kartě. Chain sice tvrdí, že to PIC prostě neutáhne, ale to říkal i o zápisu do ADF, rychlejším načítání a dalších featurách, které jsou nyní realizovány. Ale zase já tomu prd rozumím ;).

Podstatnou část prodlouženého víkendu jsem tedy trávil s joystickem, kde jsem si dával Alien Breed na Minimigu, Alien Breen 3D 2 na A1200/060 (jde to trochu hrát ;) a nadáváním na hry, které vyžadují pro provoz PAL (což moje LCD nezobrazí), takže třeba můj oblíbený Ruff'n'Tumble. No super prostě!