W magazynie TPUG w lutym 1985 roku znajdziemy obszerny materiał o nowościach ze styczniowych targów CES, które już wtedy odbywały się w Las Vegas. Dziennikarze informują, że jak zawsze pokazano tam mnóstwo sprzętu i oprogramowania, a wśród nich także maszynę, która – choć rzeczywiście bardzo wszechstronna – to jednak nie odniosła sukcesu. To Commodore 128, czyli ostatni 8-bitowiec Commodore’a.
Co możemy wyczytać w relacji sporządzonej w 1985 roku? Nic szczególnego, podobnie jak i we współczesnych relacjach opisujących nowe komputery, smartfony i konsole. Dziennikarze czasem traktują dany temat dość pobieżnie, szczególnie, gdy piszą krótkiego newsa. W TPUG-u przeczytamy zatem, że C128 to komputer osobisty zamknięty w zgrabnej, jasnobeżowej obudowie z 92 klawiszami, w tym z 14-klawiszową klawiaturą numeryczną i ośmioma programowalnymi klawiszami funkcyjnymi, a także czterema do sterowania kursorem. Maszyna ta ma 128 KB RAM-u, może wyświetlać obraz 40- lub 80-kolumnowy i ma doskonały interpreter BASIC-a w wersji 7.0, który m.in. zyskał specjalizowane komendy do obsługi grafiki, sprite’ów i dźwięku. Podczas tych samych targów CES 1985 pokazano też Commodore LCD, ale to już zupełnie inna historia.
Słuszne wnioski z rynkowej porażki
Nas interesuje Commodore 128, który został stworzony dlatego, że firma Commodore próbowała stworzyć low-endowy rynek biznesowy. Pierwszą taką próbą zakończoną totalną porażką byłą rodzina komputerów oparta o nowy chipset TED, czyli tanie Commodore 16 i 116 oraz nieco droższy Plus/4 z programami biurowymi zapisanymi w ROM-ie. Teraz możemy się śmiać, że Plus/4 miał być następcą C64, ale wtedy naprawdę sądzono, że będzie to świetna maszyna, która na dodatek znajdzie zastosowanie w małym biznesie. Pod koniec 1984 już było wiadomo, że TED-zie lepiej zapomnieć. Bil Herd, konstruktor całej serii nietrafionych maszyn, został szefem nowego projektu – Commodore 128. Dlaczego twórcę porażki uczyniono głównym inżynierem nowej maszyny? Jak wspomina sam Herd, o wiele wcześniej wspominał, że np. brak zgodności z C64 oznacza porażkę. Tyle że pracując nad Plus/4 musiał podporządkować się decyzjom menedżerów.
Wymyślono zatem, że nowa maszyna będzie zgodna z C64, ma móc uruchamiać aplikacje dla systemu CP/M (C64 tego nie potrafił i to był ważny zarzut), ale ma mieć też większe możliwości niż C64. Niektórzy przebąkiwali nawet, że C128 ma być konkurentem dla zapowiedzianego przez Jacka Tramiela (wtedy już będącego właścicielem Atari) komputera Atari ST. Zgodność z C64 i obsługa CP/M oznaczała oczywiście, że Commodore 128 stanie się pierwszą, masowo produkowaną maszyną dwuprocesorową, która na dodatek ma dwa niezależne układy wideo. A, Commodore już w 1982 roku produkował dwuprocesorowy komputer SuperPET 9000, ale to był sprzęt niszowy, dla edukacji.
Inspiracją do zbudowania C128 był układ 8563, czyli nowy chip graficzny, potrafiący wyświetlać tekst w 40 lub 80 kolumnach oraz grafikę wysokiej rozdzielczości porównywalną z tą, jaką komputery PC oferowały dopiero na początku lat 90.
Bolesne narodziny nowego sprzętu
Nowy chip, zwany VDC, dostępny był od września 1984 roku, ale wówczas problemem była jego awaryjność. Podobno, tak przynajmniej wspomina Bil Herd, produkowano całe partie 8563, które do niczego się nie nadawały i fajczyły się niemal natychmiast. Zresztą, kolejne prototypowe C128 i tak się bez przerwy psuły, choć dlatego, że nierzadko dedykowane chipy zastępowano płytkami wtykanymi w ich miejsce. Takie awaryjne prototypy trafiały do programistów, którzy starali się stworzyć cały system zanim gotowy był hardware.
Przykładowo Von Ertwine, który zajmował się CP/M-em z feralnym 8563 radził sobie tak, że wykorzystał kubek z lodem, by chłodzić VDC (to właśnie 8563). Podobno jedna kostka lodu wystarczała średnio na pół godziny pracy. Kolejnym problemem była synchronizacja między układami taktowanymi różną częstotliwością, a np. VIC taktowany był kwarcem 14,318 MHz, a VDC – 16 MHz. Bil Herd twierdził też, że błędy zapisu danych do rejestrów zdarzały się o wiele częściej niż to dopuszczała i tak mało ambitna norma Commodore. Przekłamania zamiast pojawiać się raz na statystyczne trzy lata, zdarzały się trzy razy na sekundę. Konstruktorzy C128 jeszcze w grudniu 1984 roku mieli problemy z dostarczaniem odpowiedniego napięcia do poszczególnych układów oraz z samymi chipami, a przecież w połowie stycznia odbywał się CES, gdzie miała się odbyć premiera C128.
Gotowość rzutem na taśmę
Wspomniany już wielokrotnie Bil Herd twierdzi, że prace nad w pełni działającym egzemplarzem zakończono o drugiej w nocy, a o szóstej rano zaplanowano wylot na CES. I jeszcze jedna ciekawostka. Von Ertwine, ten od CP/M-u, podobno do samego końca pracował na prototypie z układem 8563 w czwartej wersji i dostosował oprogramowanie do sposobu działania tego wariantu VDC. Kłopot w tym, że na CES pojechała szósta wersja 8563, która działała nieco inaczej. Co zrobił Ertwine? Na szybko, w edytorze zawartości dyskietki pozmieniał poszczególne komendy tam, gdzie to było konieczne (nie miał już dostępu do aplikacji deweloperskich, w tym np. assemblera) , oczywiście używając kodów szesnastkowych i wymyślając nowe fragmenty kodu tak, by miały idealnie tę samą długość, co stary program. Potem jeszcze na piechotę obliczył sumy kontrolne i z tak przygotowaną dyskietką ruszył na CES. Później w prasie mogliśmy przeczytać, że prezentowane C128 działało pod kontrolą CP/M bez zarzutu.
Sam Bil Herd w końcu opuścił Commodore i zajął się własnymi projektami, ale w gronie jego podwładnych odpowiedzialnych za C128 był też Dave Haynie, który po odejściu Herda został szefem inżynierów. Warto tu wspomnieć, że Haynie później opracował też Amigę 2000, a potem z Bobem Wellandem skonstruował karty turbo A2620 i A2630, następnie zaś A3000, Zorro III, chipset AA (zwany później AGA), prototyp A3000+ i na koniec A4000 i A1200. Krótko mówiąc – napracował się w Commodore i to z niezłym skutkiem, szczególnie, gdy mowa o A2000 i A3000. A kto jeszcze konstruował C128? To Fank Palaia (kombinował, jak mogą bezproblemowo współpracować procesory Zilog Z80 i MOS 8502 oraz dwa chipsety graficzne), Fred Bowem (system), Terry Ryan (BASIC), Dave DiOrio (VIC), Greg Berlin (stacja 1571) oraz Dave Siracusa (oprogramowanie stacji 1571). Nazwiska osób pracujących przy PCB są zresztą w większości C128 podane na dole płyty głównej. Można je też zobaczyć wpisując SYS 32800,123,45,6.
Czy to maszyna dla biznesu?
Tak w bólach rodził się komputer, który wedle założeń Commodore miał zrewolucjonizować rynek biznesowy. Nawet na pudełku tej maszyny pisano, że jest to „personal computer”, podawano też, że wykorzystuje on Microsoft BASIC, bo wówczas istniały już klony IBM PC pracujące pod kontrolą MS DOS-u. Wykorzystanie nazwy „Microsoft” było więc nobilitacją, przynajmniej z punktu widzenia zastosowań biznesowych. Właśnie z myślą o firmach był do dyspozycji CP/M 3.0, zgodny z CP/M 2.2. Wystarczyło podłączyć nową, dwustronną stację dysków 1571, która potrafiła odczytywać CP/M-owe dyskietki zapisane w systemie MFM (krótko na rynku była też jednostronna stacja 1570). Potem nabywca C128 miał dostęp do ogromnej liczny aplikacji, w tym takich, jak np. WordStar albo Turbo Pascal. Problem w tym, że w tamtych czasach komputery zgodne z IBM PC szybko taniały, a producenci oprogramowania przerzucali się na MS DOS. Commodore ze swoją CP/M-ową maszyną był więc już przestarzały.
A co z trybem 128? Przede wszystkim mieliśmy w nim doskonały BASIC 7.0, bazujący na BASIC-u 3.5 z Commodore Plus/4. Wbudowany był też monitor kodu maszynowego. Krótko mówiąc, Commodore 128 stał się ulubionym komputerem programistów, którzy pisanie programów traktowali jako hobby. Poza tym, dostępnych było kilka ciekawych programów przeniesionych na C128 – to np. PaperClip, Paperback Writer czy nawet Home Designer, czyli niemalże profesjonalny CAD. Oprogramowanie to korzystało z 80-kolumnowego tryby graficznego, lepszej klawiatury oraz z pamięci masowej o większej pojemności (na dwóch stronach dyskietki C128 zapisywał 350 KB). Programów takich było jednak jak na lekarstwo.
Co się zmieniło?
Commodore 128 z jednej strony dawał użytkownikowi bardzo dużo nowych funkcji, z drugiej jednak – przynajmniej z punktu widzenia graczy – nie był urządzeniem rewolucyjnym. Przecież grafika i dźwięk pozostały niemal takie same, może pomijając bardzo szczególny tryb 80-znakowy, który jednak w większości gier był bez sensu, bo nie dawał możliwości wykorzystania ani sprite’ów ani przerwań rastra. Na czym więc gracze mogliby skorzystać? Chyba tylko na tym, że do dyspozycji było 128 KB RAM-u, co teoretycznie mogło oznaczać o wiele mniej wczytywania z dysku, gdy wchodziły w grę bardziej skomplikowane gry. Tylko że już C64, szczególnie w USA, było mocno związane z pamięcią dyskową. Stacja dysków 1541 była bardzo wolna, z czasem jednak doczekała się szybkich loaderów, które usprawniały wczytywanie kolejny poziomów w wielu grach. Niektóre nowsze gry potrafiły nawet doczytywać dane w trakcie rozgrywki – sam wykorzystałem tę opcję w jednym ze swoich demek na C64. Nawet używając C64, mogliśmy zatem zapomnieć o bardzo długim czasie standardowego, systemowego wczytywania.
Pewnie ktoś zaraz powie, że przecież C128 był komputerem o dwóch różnych osobowościach, ponieważ na jego pokładzie zamontowano dwa procesory: jeden zgodny z CPU zastosowanym w C64, ale w nowszej wersji – to MOS 8502 (z zegarem 1 lub 2 MHz), drugi zaś to po prostu Zilog Z80A (4 MHz), znany np. z ZX Spectrum, ale także z maszyn pracujących pod kontrolą systemu CP/M.
Fakt, w praktyce Commodore 128 to aż trzy różne komputery w jednym. W podstawowej wersji to pełne C128, w którym mieliśmy dostęp do 128 KB pamięci (rozszerzalnej do 640 KB), doskonały BASIC 7.0 oraz 80-kolumnowy tryb graficzny wyświetlany przez złącze RGB. Kolejny tryb to klasyczne C64, w który można było korzystać z oprogramowania i dużej części sprzętu dla C64. Ostatnia opcja to CP/M 3.0 i co za tym idzie ogromna liczba biznesowych aplikacji. Oczywiście dziś nikt już z tych aplikacji nie korzysta, bo przecież nawet ja, miłośnik retro, swoje teksty piszę na całkiem nowoczesnym Wordzie, a nie wykorzystując 8-bitowe edytory tekstu. Nawet świetny CED z Amigi to już dla mnie przeszłość. Ciekawostką jest zaś, że całą procedurę startu C128 odpowiadał procesor Z80 – odpowiedni kod najpierw poszukiwał dyskietki CP/M, potem sprawdzał przycisk Commodore służący do uruchamiania trybu C64, a na koniec przekazywał kontrolę procesorowi 8502.
Gry dla C128, czyli krótka lista
No dobrze, a czy dla trybu C128 powstały jakieś sensowne gry, które faktycznie wykorzystywały szybszy procesor, większą pamięć? W tym również pamięć dyskową o większych możliwościach (stacja 1571), bo z zapisem dwustronnym – nie trzeba było już wycinać ząbka w 5,25-calowych dyskietkach. Dzięki temu mieliśmy dostęp do niebagatelnej pojemności równej 330 KB. Później zbudowano też bardzo ciekawą stację 1581, na dyskietki 3,5-calowe – w stylizacji odpowiadającej beżowym obudowom C64C i C128. Stacja 1581 jest o tyle ciekawa, że ma większą ilość RAM-u, dzięki czemu radzi sobie z szybką obsługą dużych plików z danymi. Tylko czy ktoś te wszystkie możliwości realnie wykorzystał? Niestety, nie bardzo.
Pewnie widzieliście już wiele dyskietek z grami oznaczonymi jako Commodore 64/128. Można by się spodziewać, jak w tytułach dla ZX Spectrum 128, że będą to gry w dwóch wersjach, ale niestety zwykle tak nie było. Producenci dorzucali oznacza „128” tylko dlatego, że gra faktycznie działała na nowym Commodore, ale… w trybie C64. Prawda jest taka, że bez problemów na C128 działało ponad 95 proc. programów z C64 i były naprawdę świetne. A tryb 128 KB? Po co, skoro na C64 wydano mnóstwo gier dyskietkowych, które całkiem sprawnie doczytywały kolejne poziomu. W tym kontekście C128, z punktu widzenia graczy, nie było wielką rewolucją.
Na początek pojawiło się tylko kilka gier, w których zastosowano drobne poprawki, jak np. lepszej jakości sample oraz dodatkowy poziom w The Last V8. To za mało, by móc pochwalić się przed kumplami, że mamy coś więcej niż zwykłe C64. A przecież dobrego edytora tekstu lub bazy danych pod CP/M-em nikt nie doceni.
Jedna z ciekawostek to The Rocky Horror Picture Show wydana w wersji na Commodore. Tyle że wariant dla C64 był beznadziejny, z grafiką a’la ZX Spectrum (bo jakby z niego przeniesiony), natomiast ten dla C128 miał o dziwo lepszą, bardziej kolorową grafikę oraz nowe lokalizacje. Oczywiście te poprawki nie zmieniły nic, jeśli chodzi o marną grywalność i głupią fabułę. Kolejne przykłady to coś, co świetnie znamy ze 128-kilobajtowego ZX-a. To choćby Straton z większymi przestrzeniami do (nudnej) eksploracji albo Thai Boxing z dodaną publicznością. Czasem wykorzystywano też większą moc obliczeniową procesora: w grach pojawiało się więc więcej pocisków, więcej wrogów, czasem nieco lepsza muzyka albo w ogóle jakaś muzyka, bo przecież odtwarzanie jej też zabierało czas procesora. Mało imponującą ciekawostką były też tekstowe przygodówki, które w wersji dla C128 mogły wczytać do pamięci więcej zawartości i nie musiały często korzystać ze stacji dysków.
Niewykorzystany potencjał
Jak widać, oprogramowania dedykowanego C128 nie było zbyt wiele. W zasadzie, była to totalna porażka. Kłopot w tym, że przyszłość Commodore 128 i tak była przesądzona. Czas takich maszyn się skończył, a w 1985 roku miały miejsce dwie ważne prezentacje komputerów domowych nowej generacji: Amigi 1000 oraz Atari ST. I nie pomogły tu próby reanimacji C128 poprzez wprowadzenie na rynek komputerów z oddzielną obudową klawiaturą, czyli C128D w dwóch wersjach: z plastikową obudową wyposażoną w miejsce mocowania klawiatury i uchwyt do przenoszenia oraz z metalową, bez tych gadżetów. Niektórzy pewnie zwrócą uwagę, że 128D był komputerem trójprocesorowym, bo oprócz 8502 i Z80, na pokładzie był też stary, dobry 6502, który odpowiadał za obsługę wbudowanej stacji dysków 1571.
Inna interesująca informacja to fakt, że w wersji plastikowej C128D było VDC o oznaczeniu 8568 z aż 64 KB VideoRAM. To umożliwiało przechowywanie większej ilości informacji graficznych bez obciążania zwykłego RAM-u. Tyle że ta nowa cecha jednej z wersji C128D pozostała na tyle niszowa, że żadne istotne programy z tego nie korzystały, a jedynym sensownym rozwiązaniem, które wykorzystywało nowe możliwości był GEOS.
Według Wikipedii w sumie sprzedano 5,7 mln egzemplarzy Commodore 128 (choć może to dotyczyć sprzedaży razem ze 128D i 128DCR), co w sumie i tak nie jest takim złym wynikiem. Inne źródła podają bardziej realistyczną wartość około 4 mln sztuk. Nie zmienia to jednak faktu, że firmy produkujące oprogramowanie niespecjalnie zainteresowały się tą maszyną – powstało ponoć zaledwie 100-200 tytułów dedykowanych C128. I właśnie dlatego sądzę, że C128 było mimo interesujących możliwości, rynkową porażką. Chyba mało kto kupował go dla trybu C128, a większość decydowała się na tę maszynę ze względu na zgodność z C64 i radość posiadania sprzętu, który był czymś nowym. Z drugiej strony sam Bil Herd twierdził, że spodziewano się, iż C128 będzie sprzedawane przez około rok, a do klientów trafi najwyżej kilka milionów egzemplarzy. Jeśli faktycznie tak było, to z punktu widzenia Commodore, C128 spełnił pokładane w nim nadzieje, a po 1989 roku jego produkcja nie miała już sensu – ponoć jej koszt w przypadku 128D był taki, jak Amigi 500, która jednak była o wiele droższa. Rachunek był zatem prosty.
1 komentarz
Moja najlepsza przyjaciółka, czyli historia Amigi - RetroFan · 22 grudnia, 2018 o 3:36 pm
[…] tak dobrze jak kiedyś, C128 nie był tak ciepło odebrany przez rynek (jego historię opisałem tutaj), jak mieli nadzieję szefowie firmy, a rewelacyjna Amiga 1000 początkowo nie sprzedawała się […]