EmuXL
From Atariki
Wersja z dnia 19:09, 7 cze 2006 KMK (Dyskusja | wkład) ← Previous diff |
Aktualna wersja CK (Dyskusja | wkład) (ARAnyM) |
||
Linia 1: | Linia 1: | ||
Niedokończony emulator ośmiobitowego Atari dla Falcona, powstały w latach 1997-2000. Autorem jest [[KMK]]. | Niedokończony emulator ośmiobitowego Atari dla Falcona, powstały w latach 1997-2000. Autorem jest [[KMK]]. | ||
- | W założeniu jest to emulator komputera zgodnego z Atari [[XL]]/[[XE]] przeznaczony dla [[Falcon030|Falcona]] lub [[TT030]]. W przeciwieństwie do [[Atari800]] ten emulator nie miał zapewniać stuprocentowej zgodności z oryginałem, a jedynie zgodność dostateczną do uruchomienia podstawowych programów użytkowych. Innymi słowy, emulowana maszyna miała być tylko częściowo zgodna z [[XL]] (np. wszystkie rozkazy [[6502]] robią dokładnie to samo, co na oryginale, ale nie muszą przy tym zachowywać proporcjonalnych czasów wykonania), projekt miał raczej na celu uczynienie z Falcona maszyny, na której można byłoby pracować jak na wersji rozwojowej linii [[XL]], z zachowaniem zgodności z programami użytkowymi, ale też nowymi możliwościami. W ramach tych ostatnich autor przewidywał m.in. dostęp do możliwości graficznych i dźwiękowych Falcona z poziomu emulatora, uruchamianie wstawek w natywnym kodzie maszynowym (Motoroli 68030) i tym podobne bajery. | + | W założeniu jest to emulator komputera zgodnego z Atari [[XL]]/[[XE]] przeznaczony dla [[Falcon030|Falcona]] lub [[TT030]]. W przeciwieństwie do [[Atari800]] ten emulator nie miał zapewniać stuprocentowej zgodności z oryginałem, a jedynie zgodność dostateczną do uruchomienia podstawowych programów użytkowych. Innymi słowy, emulowana maszyna miała być tylko częściowo zgodna z XL (np. wszystkie rozkazy [[6502]] robią dokładnie to samo, co na oryginale, ale nie muszą przy tym zachowywać proporcjonalnych czasów wykonania), projekt miał raczej na celu uczynienie z Falcona maszyny, na której można byłoby pracować jak na wersji rozwojowej linii XL, z zachowaniem zgodności z programami użytkowymi, ale też nowymi możliwościami. W ramach tych ostatnich autor przewidywał m.in. dostęp do możliwości graficznych i dźwiękowych Falcona z poziomu emulatora, uruchamianie wstawek w natywnym kodzie maszynowym (Motoroli 68030) i tym podobne bajery. |
- | Można nadmienić, że podobne założenia wdrożono nieco wcześniej w [http://en.wikipedia.org/wiki/Unix_Amiga_Emulator UAE], a nieco później w [[Aranym]]ie. | + | Można nadmienić, że podobne założenia wdrożono nieco wcześniej w [http://en.wikipedia.org/wiki/Unix_Amiga_Emulator UAE], a nieco później w [[ARAnyM]]. |
Niestety, mimo że EmuXL jest napisany od początku do końca w czystym asemblerze i z wykorzystaniem wszelkich przewag Motoroli 68030 nad 68000 (oraz przewag asemblera nad językami wysokiego poziomu, w granicach rozsądku), a autor spędził naprawdę wiele czasu na optymalizacji "silnika" emulującego 6502, standardowy Falcon okazał się maszyną o wiele za słabą - jeśli idzie o żywą moc obliczeniową - do realizacji podjętych zamierzeń. Dość wspomnieć, że silnik 6502 osiąga na Falconie ok. jednej trzeciej mocy oryginału (czyli jest to Atari [[800XL]] z zegarem 0,6 MHz), a ledwie dobija stu procent na dobrze wypasionym [[TT030]]. W tej sytuacji autor porzucił projekt i zajął się czymś innym. | Niestety, mimo że EmuXL jest napisany od początku do końca w czystym asemblerze i z wykorzystaniem wszelkich przewag Motoroli 68030 nad 68000 (oraz przewag asemblera nad językami wysokiego poziomu, w granicach rozsądku), a autor spędził naprawdę wiele czasu na optymalizacji "silnika" emulującego 6502, standardowy Falcon okazał się maszyną o wiele za słabą - jeśli idzie o żywą moc obliczeniową - do realizacji podjętych zamierzeń. Dość wspomnieć, że silnik 6502 osiąga na Falconie ok. jednej trzeciej mocy oryginału (czyli jest to Atari [[800XL]] z zegarem 0,6 MHz), a ledwie dobija stu procent na dobrze wypasionym [[TT030]]. W tej sytuacji autor porzucił projekt i zajął się czymś innym. | ||
Linia 9: | Linia 9: | ||
Na Falconie [[CT60]] (68060/66 MHz) silnik EmuXL działa 24 razy (!) szybciej niż na standardowym hoście i tym samym rozwija, jesli wierzyć programowi [[SysInfo]], moc obliczeniową rzędu 2,8 MIPS, osiem razy większą od oryginału. Autor uważa to za budujące, ale na razie nie przewiduje kontynuacji prac nad programem emulatora. | Na Falconie [[CT60]] (68060/66 MHz) silnik EmuXL działa 24 razy (!) szybciej niż na standardowym hoście i tym samym rozwija, jesli wierzyć programowi [[SysInfo]], moc obliczeniową rzędu 2,8 MIPS, osiem razy większą od oryginału. Autor uważa to za budujące, ale na razie nie przewiduje kontynuacji prac nad programem emulatora. | ||
- | Emulator ma zaimplementowane 2 (słownie: dwa) tryby graficzne: [[Graphics 0]] oraz [[Graphics 8]]. Emulacja dźwięku jest beznadziejna, a wszystko inne - oprócz silnika emulującego procesor - jest niedorobione. W tej sytuacji za osiągnięcie trzeba uznać fakt, że istnieją gry, w które na tym można pograć, jest to np. [[Quasimodo]], [[Amaurote]], tudzież [[Mercenary]]. | + | Emulator ma zaimplementowane 2 (słownie: dwa) tryby graficzne: [[Graphics 0]] oraz [[Graphics 8]]. Emulacja dźwięku jest beznadziejna, a wszystko inne - oprócz silnika emulującego [[procesor]] - jest niedorobione. W tej sytuacji za osiągnięcie trzeba uznać fakt, że istnieją gry, w które na tym można pograć, jest to np. [[Quasimodo]], [[Amaurote]], tudzież [[Mercenary]]. |
== Download == | == Download == |
Aktualna wersja
Niedokończony emulator ośmiobitowego Atari dla Falcona, powstały w latach 1997-2000. Autorem jest KMK.
W założeniu jest to emulator komputera zgodnego z Atari XL/XE przeznaczony dla Falcona lub TT030. W przeciwieństwie do Atari800 ten emulator nie miał zapewniać stuprocentowej zgodności z oryginałem, a jedynie zgodność dostateczną do uruchomienia podstawowych programów użytkowych. Innymi słowy, emulowana maszyna miała być tylko częściowo zgodna z XL (np. wszystkie rozkazy 6502 robią dokładnie to samo, co na oryginale, ale nie muszą przy tym zachowywać proporcjonalnych czasów wykonania), projekt miał raczej na celu uczynienie z Falcona maszyny, na której można byłoby pracować jak na wersji rozwojowej linii XL, z zachowaniem zgodności z programami użytkowymi, ale też nowymi możliwościami. W ramach tych ostatnich autor przewidywał m.in. dostęp do możliwości graficznych i dźwiękowych Falcona z poziomu emulatora, uruchamianie wstawek w natywnym kodzie maszynowym (Motoroli 68030) i tym podobne bajery.
Można nadmienić, że podobne założenia wdrożono nieco wcześniej w UAE, a nieco później w ARAnyM.
Niestety, mimo że EmuXL jest napisany od początku do końca w czystym asemblerze i z wykorzystaniem wszelkich przewag Motoroli 68030 nad 68000 (oraz przewag asemblera nad językami wysokiego poziomu, w granicach rozsądku), a autor spędził naprawdę wiele czasu na optymalizacji "silnika" emulującego 6502, standardowy Falcon okazał się maszyną o wiele za słabą - jeśli idzie o żywą moc obliczeniową - do realizacji podjętych zamierzeń. Dość wspomnieć, że silnik 6502 osiąga na Falconie ok. jednej trzeciej mocy oryginału (czyli jest to Atari 800XL z zegarem 0,6 MHz), a ledwie dobija stu procent na dobrze wypasionym TT030. W tej sytuacji autor porzucił projekt i zajął się czymś innym.
Na Falconie CT60 (68060/66 MHz) silnik EmuXL działa 24 razy (!) szybciej niż na standardowym hoście i tym samym rozwija, jesli wierzyć programowi SysInfo, moc obliczeniową rzędu 2,8 MIPS, osiem razy większą od oryginału. Autor uważa to za budujące, ale na razie nie przewiduje kontynuacji prac nad programem emulatora.
Emulator ma zaimplementowane 2 (słownie: dwa) tryby graficzne: Graphics 0 oraz Graphics 8. Emulacja dźwięku jest beznadziejna, a wszystko inne - oprócz silnika emulującego procesor - jest niedorobione. W tej sytuacji za osiągnięcie trzeba uznać fakt, że istnieją gry, w które na tym można pograć, jest to np. Quasimodo, Amaurote, tudzież Mercenary.