Zebrawszy opinie i pomysły czyli tak zwany z angielska feedback,
kolega
Piotr "Artax" Mejer opublikował wersję 0.9 emulatora,
w której główna poprawka w stosunku do 0.8 polega na dorobieniu
emulacji dźwięku. Oczywiście prace trwają nadal, ale Piotr
chciałby, żeby przed wypuszczeniem wersji 1.0 kibice jego pracy
poświęcili chwilę na przetestowanie, czy i jak emulacja dźwięku
działa. Piotr niestety nie ma obecnie żadnego sprzętu Atari i całe
programowanie wykonuje na pececie, a sprawdza na emulatorze, który
jak wiadomo, nie gwarantuje 100% zgodności z oryginałem:
"(...) miałem obawy, czy to ruszy na prawdziwym sprzęcie.
Stosuję tam trochę sztuczek, które mogły zawieść, więc miałem pewne
obawy. A tu prosze, działa! Zabrałem się ostro do pracy i robię
nową wersję emulatora. Na razie podeślę Ci wersję z dźwiękiem,
który był niewątpliwie najtrudniejszy, a teraz biorę się za resztę.
Sikorowi podziękuje osobiście, szkoda tylko, że nie udało mu się
uruchomic emulatora na prawdziwej stacji dysków, ale nie można mieć
wszystkiego :).
Piotr "Artax" Mejer
Testy zajeły mi trochę więcej czasu niż myślałem, ale uzyskałem
stabilną wersję. Tryb
0 dżwięku - to tryb natywny Apple, ma
dużo zniekształceń ze względu na przerwania Atari,
2 to tryb
z emulacją na generatorze, dużo ładniejszy, ale odległy od
oryginału,
1 to miks tych dwóch trybów, pozostałe to
wariacje ze zniekształceniami generatora. Tryby i głośność dźwięku
można zmieniać w czasie emulacji, wciskając klawisz START i
przechodząc do opcji emulatora. Uwaga! Aby uruchomić obsługę
dźwięku, podczas uruchomienia emulacji głośność dźwięku należy
ustawić większą od zera. Nie zalecam uruchamiania obsługi dźwięku
dla programów, które go nie mają. Wracam do wersji 1.0, w której
uwzględniłem uwagi dotychczas zgłoszone. (...) Miłej zabawy."
Nie byłbym sobą, gdybym nie wypytał o tą nową wersję. Piotr ujawnił
nieco swoje zamierzenia:
"Oprócz poszerzenia funkcji obsługi
błędów, którą zawiera już wersja 0.8, zamierzam wprowadzić
możliwość definiowania parametrów emulacji już w momencie konwersji
programu z Apple na Atari i zaszycia ich w pliku wynikowym. Planuję
też dodać do parametrów emulatora listę punktów emulacji hardware'u
wraz z możliwością ich blokowania. Wiem, że brzmi to cokolwiek
zawile :), ale wyjaśnię to w instrukcji, a moim celem jest danie
możliwości testerom do eksperymentów w uruchamianiu nowych gier i
programów oraz w ich optymalizacji. Informację, komu się udało
uruchomić dany program/grę będzie można wpisać do pliku
wynikowego/na dyskietkę wyjściową i będzie ona widoczna w momencie
uruchamiania pod emulatorem. Jeżeli testerowi nie uda się uruchomić
programu, może go podesłać do mnie wraz z kodem błędu wyświetlanym
przez emulator. Generalnie zamierzam z testów urządzić dobrą
zabawę. Bo chyba o to chodzi, nie?"
Jak Piotr ocenia szybkość emulacji, co zresztą interesowało także
ludzi na Atari Age?
"Teoretycznie Atari powinno być szybsze niż
klasyczne Apple ze względu na wyższa prędkość pracy procesora
Atari. Ale jak obaj wiemy teoria teorią, praktyka sobie... Są dwa
podstawowe czynniki zwalniające emulację. Pierwszy to obsługa
grafiki w trybie hi-res. Im większy ustawimy parametr "SPEED
GRAPHICS" określający, ile linii grafiki jest odświeżane na jedno
przerwanie pionowe VBL, tym mniej czasu zostaje dla emulacji. Przy
standardowym ustawieniu na 6 prędkość emulatora jest niewiele
mniejsza niż prawdziwego Apple. Niestety jest drugi czynnik:
podsystem dyskowy i jego obsługa. Powiem tyle - spędziłem nad nim 2
miesiące i zrobiłem, co mogłem - ale nadal jest kilkadziesiąt razy
wolniejszy niż prawdziwy. Po prostu biedny procesor Atarki najpierw
emuluje elektronikę stacji dysków pracowicie przekodowując dane
wejściowe na impulsy na głowicy dyskowej i stany kluczy silnika
krokowego, a następnie już jako emulowany Apple równie pracowicie
je odkodowuje z powrotem. A biorąc pod uwagę moje mocno uzasadnione
podejrzenie, że twórca tego algorytmu musiał balować tydzień przed
jego stworzeniem i konsultował go z białą myszką i różowym słoniem,
to musi to trochę potrwać. Ciekawe, co oprócz części
elektronicznych, stało w tym garażu..."
.png)
wersja 0.9 obsługuje dźwięk
Poprosiłem też
Artax-a o opowiedzenie kilka słów o sobie, w
końcu wcześniej nie był znany w środowisku Atari, nie słyszałem o
jego większym programach, chociaż aby się upewnić, przekopałem
trochę internetu. Podejrzewałem, że musiał jednak coś pisać, bo
przecież z marszu nie pisze się emulatora Apple II dla małego
Atari... :). Piotrek wyjaśnił:
"Rzeczywiście kiedyś pisałem, ale
były to bardziej wprawki niż porządne projekty. Najbardziej
skomplikowaną rzeczą jaką do tej pory napisałem na małą Atarkę to
był loader do plików typu BOOT do jednego z systemów kasetowych
TURBO (były kiedyś takie cuda :). Skąd jestem? Z Krakowa. Nie wiem
dlaczego, ale zawsze w tym momencie chce mi się powiedzieć "Z
królewskiego miasta Krakowa" ;). Tu się urodziłem, tu żyje i
pracuje, i tu, mam nadzieję, umrę. Swoją drogą mam nadzieję, że
jeszcze trochę pociągnę... :D. A dlaczego zająłem się Atari? Jak
zacząłem się nad tym zastanawiać to mi wyszło że powodu klęski
Niemiec w drugiej wojnie światowej... Jak bym miał więcej czasu to
bym pewnie doszedł do wynalezienia ognia przez naszych przodków...
więc lepiej uważaj z niektórymi pytaniami ;). Ale z tymi Niemcami
to akurat szczera prawda..."
Sami możemy się więc przekonać, że Artax to ciekawy człowiek. A
download ciekawego programu napisanego przez ciekawego człowieka
znajduje się
tutaj. Jak można zauważyć, stworzyłem osobny katalog dla
emulatorów, zgodnie z pomysłem Sikora. Będzie to dobre miejsce na
gromadzenie dyskietek z programami Apple II, które działają z
emulatorem oraz zostały przekonwertowane do formatu dyskietek
atarowskich (to samo dotyczy programów ZX Spectrum). Mam nadzieję,
że Artax wkrótce opisze nam, jak wykonywać takie konwersje:
"Postaram się przygotować dokumentację do emulatora i programu
do konwersji dyskietek Apple II na standard Atari, co pozwoliło by
na rozpoczęcie testów." Na moją sugestię, że dysk atr, który
zawiera program dla Apple mógłby być jakoś oznakowany, żeby
odróżniać się od zwykłych dyskietek dla Atari, po próbie jego
odpalenia na Atari pokazywałby się jakiś tekst w stylu "Apple II
Emulator disc" Piotr odpowiedział:
"Będzie w nowej wersji. Ale
dodatkowo będzie się pokazywać nazwa dysku i osoba która go
stworzyła :)".
Na koniec zaproponowałem, aby wymyślić jakaś nazwę dla emulatora.
Samo "Apple Emulator" jest tak standardowe, że aż niewyróżnialne.
Swego czasu zaproponowałem xxl-owi nazwę dla jego emulatora ZX
Spectrum -
zXEmulator, tutaj również pokusiłem się o
propozycje: Orb (jabłko w sensie berła - oznaki władzy królewskiej,
tutaj: oznaka, że to Atari rzadzi!), Pulp (słowo oznaczające
rozkwaszone jabłko, tutaj: Atari emuluje Apple w sposob troszke
"zmiętolony"), Apple Juice (tutaj: wyciśniecie soków z Apple na
potrzeby Atari). Wspólnie z Artaxem ustaliliśmy, żeby dać szansę
wszystkim chętnym na wymyślenie jakiejś prostej, chwytliwej nazwy.
Tak więc do dzieła: jeżeli masz dobry pomysł to już wkrótce
wymyślona przez Ciebie nazwa będzie oznaczała słynny na całym
świecie emulator Apple II dla Atari... :). Pomysły można podawać
niżej w komentarzach. Jednoosobowe gremium w postaci Piotra
wybierze taką nazwę, która mu najbardziej pasuje.