Atari,  Atari XL/XE,  Software

AVGCart…najlepszy multicart dla 8-bitowego Atari? – cz.1

Maj nareszcie rozpościera swe spóźnione o kilkanaście dni kolory i zapachy. Zrobiło się ciepło a temperatura przekroczyła liczbę składającą się z tandemu dwójki ciągnącej za sobą zero. Wszyscy ruszyli do ogrodów sadzić, przycinać, nawozić, kosić. Powoli pojawiają się pszczoły, chociaż w tym roku jest ich wyjątkowo mało. Skoro już wspomnieliśmy to ciągnące się za dwójką zero, to okazuje się, że nie pojawiło się ono od razu wraz z powstaniem systemów liczbowych a w niektórych z nich nie występuję wcale. Za przykład można tu podać chociażby dobrze nam znany system liczb rzymskich. Kto zatem wynalazł zero? Zacznijmy od tego do czego zero było ludziom potrzebne. 🙂

Babilońskie cyfry, by Josell7, CC BY-SA 4.0, via Wikimedia Commons

Po pierwsze wypełniało puste miejsce w pozycyjnych systemach liczbowych takich jak np. system dwójkowy i nasz powszechnie stosowany system dziesiętny, chociaż przez 1000 lat Babilończykom nie przeszkadzało, że w ich sześćdziesiątkowym systemie pozycyjnym nie było zera. Co ciekawe sześćdziesiątkowy system stosujemy do dzisiaj przy pomiarze czasu gdzie 60 sekund to 1 minuta a sześćdziesiąt minut to godzina.

Świątynia w Gwalior, by Geek 007, CC BY-SA 3.0 via Wikimedia Commons

Drugim zastosowaniem zera było oznaczenie czegoś czego nie ma, a zatem zero stało się synonimem słowa “nic”. Pierwszym znanym nam zastosowaniem zera jako miejsca w pozycyjnym systemie liczbowym poszczycić mogą się Indie. Otóż w roku 876 naszej ery powstała tabliczka z zapisanymi liczbami 50 i 270, mówiąca o tym, że z pobliskiego ogrodu o wymiarach 170×270 łokci indyjskich (1 hasta = 45 cm) można dostarczyć 50 girland do  świątyni Chaturbhuj w Gwalior.

Drugim walczącym o plamę pierwszeństwa w wyścigu o najwcześniejszy znany nam zapis liczby zero jest utrwalony na korze brzozowej indyjski manuskrypt Bakhshali datowany bardzo niedokładnie bo na III wiek naszej ery przez jednych naukowców, a na X wiek naszej ery przez innych. Jeżeli zaś mówimy o zerze jako liczbie to tu także Indie mogą się poszczycić koncepcjami matematycznymi w tym zakresie. Między innymi matematyk Brahmagupta w VII wieku naszej ery stworzył kilka twierdzeń związanych z arytmetycznymi operacjami z użyciem liczby zero, które do dziś są w użyciu za wyjątkiem dzielenia przez zero gdzie stwierdził, że zero podzielone przez zero daje zero. 🙂 Wielu matematyków próbowało rozwiązać problem dzielenia przez zero co zakończyło się szkolnym wierszykiem: “Pamiętaj cholero nie dziel przez zero!” 😉

Cyfry Majów, by Neuromancer2K4 Vector: Bryan Derksen, CC BY-SA 3.0, via Wikimedia Commons

Mniej więcej w podobnym czasie koncepcję liczby zero i jej użycia w swoim bazującym na liczbie 20 pozycyjnym systemem liczbowym opracowali Majowie.

Do Europy zero trafiło z krajów arabskich, które przyjęły opracowaną w Indiach koncepcję pozycyjnego dziesiętnego systemu liczbowego. Powstały cyfry indyjsko-arabskie, które wyglądem nie przypominają zeuropeizowanych znanych nam liczb arabskich:

  • europeizowane cyfry arabskie: 1234567890
  • cyfry indyjsko-arabskie: ١٢٣٤٥٦٧٨٩٠
  • cyfry wschodnio-indyjsko-arabskie: ۱۲۳۴۵۶۷۸۹۰

Twierdzeniami dotyczącymi zera w krajach arabskich zajmował się w XII wieku także matematyk Al-Samawal.

Leonardo Fibonacci

Ostatecznie osobą, która indyjsko-arabską koncepcję zera i systemu liczb dziesiętnych ugruntowała w Europie, a potem za pośrednictwem handlu i kolonializmu na całym świecie był urodzony w Pizie we Włoszech Leonardo Fibonacci.

Liber Abacci

W swoim pochodzącym z roku 1202 dziele “Liber Abacci” wprowadził cyfry arabskie jako element systemu dziesiętnego oraz przedstawił słynny ciąg Fibonacciego. Pamiętacie ten ciąg z lekcji matematyki? Jeżeli nie to już mówię o co chodzi. 🙂 Pierwszy element tego ciągu to 0, drugi to 1, a każdy następny jest sumą dwóch poprzednich czyli:

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, …

Zero zawsze sprawiało matematykom kłopoty ale i my także daliśmy się złapać w pułapkę. 🙂 Pamiętacie Sylwestra 1999 r. gdy wszyscy na wielkich balach czekaliśmy na nowe millenium? No tak, ale tak naprawdę, ponieważ nie ma roku zerowego, XX wiek zakończył się 31 grudnia 2000 roku, no bo przecież millenium to 10, a nie 9 wieków. Ktoś tu nas nieźle na szaro zrobił! 😉 Zero jeszcze pod jednym względem było problematyczne. W czasach retrokomputerów, gdy rozdzielczości trybów tekstowych były raczej skromne, aby odróżnić zero od litery “O”, ten pierwszy znak przekreślano.

Czym dzisiaj się zajmiemy? Na jednym z Demo-Party uwagę moją dzięki Norbiemu, którego serdecznie pozdrawiam zwrócił multi-cart o nazwie AVG. Mam już co prawda SIO2SD od Lotharka, ale gdy dowiedziałem się, że ten cart dodatkowo rozszerza pamięć 8-bitowego Atari i ma jeszcze kilka ciekawych cech postanowiłem się przyjrzeć temu rozwiązaniu bliżej. Zanim jednak przejdziemy do świata Atari tradycyjnie szybka relacja z tego, co dzieje się w ogrodzie. Generalnie widać tu opóźnienie.
Dopiero teraz zaczynają kwitnąć rododendrony i lilak, które zazwyczaj w pierwszym tygodniu maja cieszyły oko i roztaczały przyjemną woń w ogrodzie. Sroki mają już w gnieździe młode, wszystkie trzy budki typu “A” projektu prof. Sokołowskiego są zasiedlone i słychać w nich pisklęta. 🙂 Dodatkowo w tym roku mamy premierę w półotwartej budce typu “P”, gdzie widać cztery łakome dzioby piskląt kopciuszków. Kopciuszki z dużą ostrożnością zbliżają się do swojego gniazda aby nakarmić młode i zrobienie in zdjęcia nie było łatwe. Kos natomiast, który zazwyczaj śpiewa tylko rano i wieczorem wyśpiewuje teraz serenady przez cały dzień, a to z czubka brzozy, a to z dachu altany, a to z kalenicy domu, rewanżując się za wykładane przez całą zimę przeze mnie połówki jabłek “dla kosa”. A że to jeden z najładniej śpiewających naszych ptaków, to powodów do narzekań poza może pobudką o 5:00 mieć nie można. 🙂 A co dzieje się u psa? Jest teraz na L4 z racji małego zabiegu chirurgicznego, ale za to swym wiktoriańskim kołnierzem odbierać może Astrę, EutelSat i HotBird’a, gdzie czasem da się nawet wyłapać całkiem niezły film lub serial. 😉

Tyle wieści z ogrodu, szykujcie aromatyczną kawę, wygodne miejsce i jeżeli jesteście gotowi to możemy zaczynać! 🙂

***

Tak jak już wielokrotnie wspominałem to co mnie najbardziej interesuje to połączenie retro komputerów z nowoczesną elektroniką dającą ogromne możliwości, o jakich 30-40 lat temu nikt nawet nie śmiał marzyć. Jeszcze lepiej jeżeli ta elektronika nie ingeruje w obwody czy obudowę retrokomputrów, a wykorzystuje jedynie dostępne porty i złącza oryginalnych maszyn. Taki “idealny” stan rzeczy mamy w przypadku multi-cart’a AVG opracowanego w 2018 przez użytkownika forum AtariAge o pseudonimie TMP mieszkającego w Słowacji. Co ciekawe ‘TMP’ nie był użytkownikiem 8-bitowego Atari od samego początku, gdyż jego komputerowa przygoda sprzed lat łączy się z Commodore C64, czyli zaciętym rywalem 8-bitowego Atari. ‘TMP’ zapytany co oznacza skrót “AVG” odpowiedział, że to nic specjalnego, to skrót od angielskiego słowa “Average” (ang. średni), czyli mamy “Average Cart”.  A czy jest on rzeczywiście tylko średni to zaraz się o tym przekonamy. 🙂 AVG Cart ewoluował przez kilka lat gdzie pojawiały się kolejne jego możliwości. W chwili obecnej po 5 latach rozwoju jest już “dorosłym” rozwiązaniem dla ośmiobitowego Atari. A zatem czas zaopatrzyć się w niego.

Kartridż zamówiony został przeze mnie w sklepie wskazanym przez ‘TMP’ i rozpoczął swą drogę ze Słowacji. Po 3 dniach (skorzystaliśmy z sieci największego polskiego operatora paczkomatów, który działa także w Słowacji) przesyłka czekała już w paczkomacie nieopodal mojego domu. Po odebraniu od razu trafia na retrowarsztat. 🙂

Po wyjęciu widać że wszystko zostało porządnie zapakowane i zabezpieczone.

Już powoli tradycją staje się w retro-świecie miła słodka niespodzianka, tu mamy do dyspozycji dwóch przedstawicieli słowackiego przemysłu cukierniczego. 😉

Przyjrzyjmy się samemu kartridżowi, porządna dobrze spasowana obudowa o wymiarach 67x90x18 [mm] z profesjonalnie wykonaną naklejką.

Po prawej stronie mamy gniazdo do podłączenia kabla SIO:

Po lewej natomiast stronie znajduje się gniazdo umożliwiające podłączenie kartridża do złącz rozszerzeń: PBI (ang. Parallel Bus Interface), w które wyposażone są komputery Atari 600XL/800XL lub ECI (ang. Enhanced Cartridge Interface) charakterystyczne dla komputerów Atari 130XE, 800XE i kilku ostatnich serii 65XE:

U góry kartridża znajdziemy gniazdo karty SD i dwa przyciski do sterowania:

Standardowym wyposażeniem kartridża jest kabel SIO (ang . Serial Input/Output) umożliwiający fizyczne emulowanie sygnałów urządzeń pamięci masowej takich jak stacja dyskietek lub magnetofon.

Jeżeli chcemy skorzystać z dodatkowych możliwości jak np. rozszerzenie pamięci naszego Atari to dodatkowo musimy dokupić przewód ECI (Atari 130XE, 800 XE, 65XE z ECI):

lub PBI (Atari 600XL/800XL):

Aby uruchomić kartridż potrzebować będziemy jeszcze karty SD. Sprawdzony model SanDisk 32GB w zupełności wystarczy.

Kartę formatujemy w trybie FAT32, instalujemy na niej oprogramowanie i umieszczamy w gnieździe kartridża etykietą do dołu.

W następnym kroku podłączamy do kartridża kabel SIO (po prawej) i ECI (po lewej stronie) oraz wsuwamy kartridż i obie wtyczki do odpowiednich gniazd komputera Atari 65 XE:

W przypadku wtyczki ECI montujemy ją wkrętami do dołu (ja dodatkowo oznaczyłem tę wtyczkę dla lepszej identyfikacji góra-dół. 🙂

Czas uruchomić komputer. Po włączeniu od razu ukazuje się proste menu, w myśl mojej ulubionej zasady skandynawskiego designu, że prostota sama się broni. 🙂

Pomimo prostego interesu użytkownika producent na swojej stronie www obiecuje wiele cech i wsparcie dla dużej liczby dostępnych formatów plików:

AVGCARTUltimateCartUnoCartSIDE 2SIDE 3
NośnikSDSDSDCFSD
pliki CAR do 1MBvv128kBv
pliki XEXvvvvv
ATR (ograniczony)vvv
ATR (pełny)v (kabel SIO)
ATX (tylko odczyt)v (kabel SIO)
pliki CASv (kabel SIO)
wyszukiwarka plikówvvvv
Autorun/bookmarksv
PDM Audiovvv
Phaeron videovv
emulacja HDD z Ultimate 1MBvvv
aktualizacja firmware’uvvv

Zobaczmy czy te obietnice mają pokrycie w rzeczywistości.

Rozszerzenie pamięci RAM

AVG Cart umożliwia rozszerzenie pamięci RAM o dodatkowe 512KB. Aby było to możliwe konieczny jest zakup opcjonalnego kabla ECI (dla Atari serii XE – 130 XE, 800 XE i ostanie serie 65 XE) lub PBI (dla Atari 600XL/800XL). Po podłączeniu kartridża opcja rozszerzenia pamięci jest standardowo włączona. Zobaczmy co powie nam na ten temat SysInfo w wersji 2.26:

Program pokazuje nam dodatkowe 512 KB, a zatem mamy rozszerzenie pamięci i to bez ingerencji we wnętrzu komputera! 🙂

Spróbujmy uruchomić program, który działa tylko przy 128KB pamięci. Doskonałym testem będzie nasza polska “Laura” od Larka, którego mieliśmy przyjemność gościć już na naszym blogu. 🙂

Program uruchamia się bez problemu. 🙂

Gdybyśmy wyłączyli dodatkową pamięć za pomocą klawiszy ‘Control+M’ co odnotowane zostanie na ekranie przez AVGCart’a:

to powrócimy do wyjściowej konfiguracji stock’owego Atari:

Oczywiście teraz próba wczytania Laury od razu spotka się ze zdecydowaną odmową. 🙂

A zatem mamy działające poszerzenie pamięci, pod warunkiem zakupienia opcjonalnego kabla. 🙂

Obrazy kartridży

Wiele gier dla 8-bitowego Atari zostało wydanych także na kartridżach. Czasem były to bogatsze wersje niż te oferowane na dyskietkach czy taśmach magnetofonowych z prostej przyczyny, kartridże posiadały więcej pamięci i nie obciążały pamięci operacyjnej komputera. Wiele gier, które w wersji dyskietkowej wymagało 128KB pamięci RAM, wydane na kartridżu dawało się uruchomić już na komputerach wyposażonych w 64KB. AVG wspiera większość formatów kartridży. Spróbujmy wczytać wymagający program Space Harrier w formacie kartridża Atarimax 1MB. W tym celu wybieramy plik o rozszerzeniu .car:

Program uruchamia się natychmiast. 🙂

Dodatkowo jeżeli wybierzemy plik o rozszerzeniu .rom to możemy wybrać jaki typ kartridża ma być emulowany: 

Następnie plik jest ładowany i program uruchamia się stosownie do wybranego typu kartridża:

Obsługa plików XEX

Podstawową cechą kartridża dostępną bez dodatkowych kabli oprócz odczytu plików .car  jest także odczytywanie wykonywalnych plików .xex. Sprawdźmy jak to działa, chociaż nie powinno być tu żadnych trudności. Uruchommy kolejny klasyk, stworzony przez Garrego Kitchen’a:  “Keystone Kapers”:

Program uruchamia się bez problemu. 🙂

Obsługa plików ATR

Plik ATR jest zapisywalnym obrazem dyskietki Atari. Sprawdźmy czy uda nam się wczytać 2-dyskietkowe wydanie długo wyczekiwanego przez fanów Atari “Prince of Persia” (tu także przyda się rozszerzenie pamięci operacyjnej 🙂 ) Za pomocą klawisza ‘CLR’ przypisujemy obrazy dyskietki do wirtualnych napędów 1 i 2.

Następnie naciskamy klawisz ‘SPACE’ i rozpoczyna się ładowanie pliku począwszy od obrazu zaznaczonego jako pierwszy. Po chwili program prosi o zmianę dyskietki:

Aby zmienić dyskietkę naciskamy prawy przycisk kartridża:

i wciskamy klawisz ‘RETURN’. Program ładuje się bez problemu. 🙂

Obsługa plików ATX

Zobaczmy, czy uda nam się wczytać plik ATX, który jest bardzo dokładnym obrazem dyskietki 8-bitowego Atari. Kolejny klasyk Silent Service z 1985 roku, który wyszedł spod ręki mistrza –  Sida Meiera z adaptacją dla Atari XL/XE wykonaną przez Randalla Dona Masteller’a wchodzi do gry. Mamy tu jednak do czynienia z długą nazwą pliku, która nie mieści się na ekranie.

Naciśnięcie klawisza ‘INV’ wyświetla pozostałą część nazwy. 🙂

Wczytujemy program i po chwili pojawia dobrze znana fanom Atari pięknie narysowana plansza:

Pamiętam godziny spędzone na Oceanie Spokojnym… nawet nie będę zaczynał rozgrywki bo dzisiejszy artykuł będzie jeszcze dwa tygodnie powstawał. 😉

Emulacja magnetofonu – pliki CAS

Teraz coś dla najzagorzalszych fanów Atari czyli obsługa magnetofonu z prędkością 600 bodów (bit/s). 😉 Wczytajmy kolejny klasyk “Bruce Lee” stworzony przez Rona J. Fortier’a i Kelly Day w 1984 roku.

Trzymając wciśnięte klawisze Option (wyłączenie BASICa) i Start (odczyt z magnetofonu) naciskamy klawisz ‘RETURN’:

Po chwili słychać pojedynczy jakże znajomy fanom Atari dźwięk i po kolejnym naciśnięciu klawisza ‘RETURN’ rozpoczyna się binarna symfonia, której z namaszczeniem i w ciszy wysłuchiwali posiadacze magnetofonu 1010 lub XC12, a jak się później okazało błędy przy wczytywaniu nie miały jednak nic wspólnego z bratem wchodzącym do pokoju, 😉 tylko z problemami technicznymi samego komputera.  Czas zatem przeprosić rodzeństwo za wszystkie kalumnie z tym faktem związane 😉 ). Program wczytuje się powoli i nawet 4 zamiast 3 kropek autorzy tu dali. 😉

Po słusznej swymi rozmiarami chwili możemy już “zasuwać” naszym Bruce’m przez kolejne lokacje będąc niepokojonym nieustannie przez zielonego ze złości Yumo i wojownika Ninja. 🙂

Co ciekawe podczas testów udało mi się uzyskać błąd ładowania więc teoria o problemie w samym komputerze potwierdziła się w 100%. 🙂

Wyszukiwarka plików

Przejdźmy teraz do kolejnej obiecanej przez producenta cechy, a mianowicie wyszukiwarki plików. Tu od razu muszę przyznać, że jest bardzo szybka. Aby rozpocząć wyszukiwanie wystarczy wpisać kilka liter szukanego tekstu. Operacja przeszukiwania rozpoczyna się na poziomie, na którym obecnie się znajdujemy i wchodzi głębiej w strukturę katalogów podrzędnych. W każdej chwili możemy przerwać wyszukiwanie wciskając klawisz ‘ESC’, a wciskając go ponownie możemy wyjść z tego trybu całkowicie. Doskonała i szybka wyszukiwarka, która z nawiązką rekompensuje prosty interfejs użytkownika.

Przy okazji AVG Cart od wersji firmware’u: 0021 wspiera zapis na kartridżu, dając tę możliwość fanom opisywanej już na blogu doskonałej gry ‘Flob‘, której autorem jest Bocianu. Ważne jest tylko to, abyście pobrali ze strony Bocianu wersję przeznaczoną właśnie dla AVG Cart’a.

Autorun/Bookmarks

Kartridż umożliwia również automatyczne uruchamianie danego programu przy stracie komputera i tworzenie bookmarków (zakładek/skrótów). Aby wybrać plik do automatycznego startu stajemy na jego nazwie i naciskamy klawisze ‘Control’+’Shift’+’N’.

Po ustawieniu opcji Autorun, uruchamiamy ponownie komputer i od razu startuje ładowanie wybranego wcześniej programu, tym razem jest to atarowska edycja “Return of Fury” z 2022 roku wydana przez Rebelandroid, będąca kontynuacją klasycznego Bruce’a Lee z 1984 roku. :

Po wczytaniu pojawia się kolejna odsłona przygód mistrza Karate. 🙂

Jak teraz przejść do Menu AVG? Wystarczy nacisnąć klawisz RESET. Restart komputera znowu uruchomi nam wcześniej wybrany program, więc aby wyłączyć autorun musimy nacisnąć sekwencję klawiszy ‘CONTROL’+’N’.

Druga opcja to tworzenie skrótów (zkładek), które umożliwiają szybkie uruchamianie wybranych programów. Weźmy tym razem inny klasyk Atari, stworzoną w 1983 roku przez Billa Williamsa grę “Alley Cat”. Wyszukajmy ją najpierw naszą wyszukiwarką i ustawmy sekwencją klawiszy ‘CONTROL’+’0’ pierwszy skrót dla wersji ATR.

W następnych krokach ustawimy sekwencjami: ‘CONTROL’+’1’ skrót dla wersji XEX i ‘CONTROL’+’2’ skrót dla wersji CAR. Do dyspozycji mamy tu aż 10 slotów (numerowanych od 0 do 9). Teraz już wciskając klawisz ‘0’ załadujemy wersję dyskową (ATR).  Przy wciśnięciu ‘1’ będziemy mieli wersję XEX, a przy ‘2’ załaduje się wersja kartridżowa programu.

Oczywiście nie mogę sobie tu odmówić kilku susów tytułowym dachowcem, którego życie nie należało do najłatwiejszych. 😉

***

Czas już kończyć dzisiejszy wpis bo rozrósł się do naprawdę sporych rozmiarów. 🙂 W kolejnym zajmiemy się pozostałymi cechami AVG Carta. Co ciekawe podczas tworzenia tego wpisu młode kopciuszki zdążyły już opuścić budkę typu P i jeden z podlotków dał już nawet radę wpaść w niezłe tarapaty lądując na dnie komina spalinowego. Na szczęście usłyszałem jak wołał rodziców i podjąłem szybką akcję ratunkową. Maluch cały i zdrowy opuścił przewód kominowy przez klapę do wyczystki, zaliczył przelot po garażu i usiadł na przygotowanym do naprawy Atari 800XL. 😉 Potem poleciał szukać rodziców, a kominy do końca życia będzie już raczej omijał szerokim łukiem. 🙂 Życzę Wam udanego tygodnia, pięknej pogody i nie zapominajcie o spacerach, gdyż właśnie teraz przyroda rozkwitła pełnią swego piękna. W następnym wpisie powitamy już czerwiec, ostatni przedwakacyjny miesiąc z potencjalnym długim weekendem w okolicach święta Bożego Ciała. 🙂



Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.