ReAmiga 4091 project

Zájem o využití SCSI řadičů na amigách oživil příchod redukcí od Acardu, SCSI2SD či ZuluSCSI. Rychlé SCSI na Amize existuje na turbo kartách, pomalejší pro Zorro II sloty a pro Zorro III? V podstatě dvě karty, FastlaneZ3, která navíc umí i rozšířit paměť, a pak - Commodore A4091. A když se dva firmwaroví inženýři setkají v garáži v Silicon Valley a začnou společně vytvářet hardware, vznikne z toho co? ReA4091!

Číst dále...

Amiblaster Deluxe

Amiblaster Deluxe je 16-bitová zvuková karta určená pro Zorro sloty. Je to evoluční následovník zvukové karty Prelude od A.C.T (Albrecht Computer Technik), přesněji repliky Prelude (první repliky). Právě replika Prelude a její možná omezení vedla Alexandera Engelhardta (Alf24de) k vytvoření Amiblasteru. Na práci na kartě se dále podíleli Matthias Hampel (Mattymuc) a Thomas Wenzel (TomSoniq).

Číst dále...

Access (Refit)

Access je dílem firmy Index Information Ltd., konkrétně Steva Rencontra a Micka Tinkera. V době svého vzniku (1997) se jednalo o unikátní zařízení. Tato unikátnost vycházela nejen z jeho stavby, ale také z použité technologie FPGA. Celé zařízení je totiž základní deska, kterou lze díky svým rozměrům umístit do standardní 5,25" pozice libovolné skříně/toweru, přesněji řečeno - pokud se tam vleze.

Číst dále...

Motorola 680x0 emulátory v AmigaOS 4.x

Napsal Prober on .

Dlouhou dobu byly Amigy vybaveny slavnými procesory Motorola 680x0. Bohužel, čas procesorové řady 680x0 postupně ustoupil před jinými architekturami. Amiga přešla k nové éře procesorů už před nějakým časem, kdy se objevily první turbo karty pro klasické systémy s využitím PowerPC procesorů.

V původním operačním systému (Workbench 3.1) nebylo možné využít plnou výhodu nových procesorů. Samotný systém a většina aplikací vyžadovaly původní procesor Motorola 680x0. Pro PowerPC nebyla k dispozici žádná emulace původního 680x0, takže 680x0 nemohlo být „vypnuto“.

Nové procesory tak jen zůstaly sice jako výkonný, ale většinou nevyužitý doplněk k hlavnímu 680x0procesoru. Nativní PowerPC programy se objevovaly jen vzácně a pokaždé, když PowerPCprogram zavolal systém, docházelo k tzv. "context switch" mezi 680x0 a PowerPCprocesory, což často způsobilo velký pokles ve výkonu.

Nová Amiga platforma je založena na PowerPCprocesorové rodině, proto nová verze systému AmigaOS musela zajistit hladký přechod z 680x0. Toho je dosaženo emulací staré architektury procesorů. Samotný operační systém je napsán téměř ze 100% pro PowerPCprocesory, ale starší 680x0aplikace vyžadují emulovaný 680x0 procesor.

Emulátory v AmigaOS 4.0

V AmigaOS 4.0 byly implementovány dva různé emulátory. Jeden byl nástupcem emulace BlackBox, což je interpretační emulátor, takže rychlost emulace je průměrná. Na druhou stranu má velmi nízkou reakční dobu a je ideální pro časově kritické části, jako jsou například přerušení.

Druhým emulátorem je Petunia, JITemulátor. Rychlý, ale méně kompatibilní způsob emulace starších procesorů Motorola. Je určen především pro emulaci aplikací, a proto, když provádění aplikace opustí hranice segmentu kódu aplikace, emulace klesne zpět k interpretační metodě, kde provede svou práci a znovu se vrátí k emulaci JIT.

Dynamická rekompilace (také nazývaná kompilace just-in-time nebo jednoduše kompilace JIT) je technika překladu strojového kódu cizího procesoru do nativního strojového kódu „za běhu“.

Tato technika je dnes běžná a běžně se používá ve virtuálních strojích JAVA a úspěšně se používá i v několika emulátorech. V dynamické rekompilaci existuje možnost běhové optimalizace emulovaného kódu shromažďováním statistik procesu provádění. Proto (teoreticky) může být finální spuštěný kód ještě rychlejší než původní kód na původním procesoru.

Vlastnosti emulovaného procesoru

Emulované opcody:

  • všechny uživatelské a supervisor opcody procesoru Motorola 68040

  • všechny FPU opcody koprocesoru Motorola 68881/68882

    • AmigaOS slibuje pouze kompatibilitu s aplikacemi 68020 / 68881, protože se jedná o nejbezpečnější úroveň kompatibility. Ovšem oba emulátory jsou kompatibilní se strojovým kódem až na úroveň procesorů 68040 a 680060.

    • V době kompilace umožňuje nízkoúrovňová analýza příznaků a analýza kontroly větvení za běhuoptimalizaci kompilovaného kódu.

Odstranění JIT emulátoru

Použití dynamického překladu vyžaduje mnohem více paměti než interpretační emulace. Přeložený kód je třeba někde uložit, nemluvě o tabulkách sběru dat. Pokud však rychlost není natolik důležitá jako spotřeba paměti systému, lze JIT emulátor odebrat a úlohu ponechat na interpretačním emulátoru.

Díky modulárnímu designu kickstartu systému AmigaOS 4.x stačí upravit soubor „Sys:Kickstart/Kicklayout“ a jednoduše vložit středník (;) na začátek řádku modulu Petunia.library.kmod. Po úplném restartování systému nebude již JITemulátor znovu načten. Ujistěte se, že změníte příslušnou konfiguraci v souboru Kicklayout, protože může existovat několik alternativních konfigurací s různými názvy, jako je "DefaultJIT" nebo "DefaultNoJIT".

Nastavení emulátorů

Emulátor Petunia pracuje s tzv. „černou listinou“. Ve výchozím nastavení emuluje Petunia každý program nebo 680x0 knihovnu, která je načtena funkcí DOS.library/LoadSeg, ale pokud spustitelný soubor nebo knihovna vykazuje nekompatibilitu s Petunií, lze ji explicitně potlačit z dynamické rekompilace jejím zadáním do tohoto seznamu.

Pokud je třeba na seznam přidat spustitelný soubor, lze jej provést rozšířením souboru „DEVS:Applications.dos“ pomocí preferenčního programu "Compatibility"m který naleznete v adresáři Prefs. Přidání názvu programu na seznam a jeho zatrhnutí zabrání Petunii v emulaci tohoto programu a bude místo toho interpretována vestavěným interpretem. Odebrání programu ze seznamu nebo jeho odškrtnutí (což umožňuje Petunii jej znovu emulovat) pomocí stejného preferenčního programu.

Poznámka: Některé programy se skládají z více spustitelných souborů (sdílené knihovny, pluginy). Pokud chcete úplně zakázat překlad takových programů, musí být do seznamu přidána každá jeho část.

Chcete-li například zcela zakázat program UnArc, musíte do seznamu přidat všechny soubory z libs: xad a xadmaster.library.

Přidat komentář

Rozšíření Amig podle typu

Chart

  • 01 Running
  • 02 Strength Training
  • 03 Cycling
  • 04 Skating
  • 05 Swimming