Powstała też wersja Commodore Educator 64 przeznaczona do szkół. Sprzętowo nie różniła się od Commodore 64 z wyjątkiem monochromatycznego monitora wbudowanego w obudowę.
Historia
Komputer C64 powstał w styczniu 1982 r. jako następca modelu VIC-20. Początkowo sprzedawany był w cenie 595 USD, jednak cena ta była znacznie wyższa od ceny produktów konkurencji (ZX Spectrum), stąd nie przyniosła popularności modelowi.Firma Commodore, będąc właścicielem firmy MOS Technology, produkującej większość podzespołów do C64, oszacowała koszt produkcji każdego modelu na 135 USD. Cena maszyny znacznie spadła, a firma rozpoczęła agresywną politykę marketingową, kierując komputer w stronę rynku gier. Wkrótce model C64 stał się najpopularniejszym komputerem.
Komputer, choć o wysokich możliwościach technicznych, był jednak stosunkowo słaby. BASIC v.2 (stworzony przez firmę Microsoft) był poprawny logicznie, ale nie pozwalał na pełną kontrolę nad maszyną: był zbyt powolny, nie zawierał żadnych instrukcji do generowania dźwięku, grafiki, czy też obsługi dżojstika. Firma zdecydowała się wypuścić w 1984 r. następcę C64, komputer Commodore Plus/4, z nowszą wersją BASIC-a i wbudowanymi w ROM aplikacjami (np. arkusz kalkulacyjny), ale z braku kompatybilności z C64, nowy produkt nie zdobył przychylności rynku.
Po nieudanych próbach z Commodore Plus/4, a także z Commodore 16, firma wypuściła w roku 1985 model Commodore 128. C128 miał lepsze osiągi w porównaniu z C64, dodatkowo projektanci, nie chcąc utracić już zdobytego rynku, wyposażyli go w możliwość pełnej emulacji C64. Jednak komputer ten nie zdobył popularności C64, być może z powodu ceny, przesycenia rynku i starzejących się technologii.
C64C z widocznym rozszerzeniem pamięci
Czwarta wersja komputera łączyła obudowę C64 z klawiaturą C64C. Główne zmiany zaszły wewnątrz urządzenia: z poprzedniej wersji pozostał układ 6526 oraz pamięć ROM, procesor zamieniono na układ 8500 R4 o identycznej w stosunku do 6510 liście rozkazów. Układ graficzny VIC 6569 oraz dźwiękowy SID 6581 zamieniono na (odpowiednio) 8569 i 8580 (decyzja podyktowana była kwestiami związanymi z zasilaniem - tylko układ SID 8580 był zasilany napięciem +12V.
Zmierzch komputera nastąpił pod koniec lat 80. Oficjalnie firma zakończyła produkcję w 1993 r., sprzedawszy ok. 17-25 mln egzemplarzy (oficjalny rekord Guinessa). Najwięcej komputerów zostało sprzedanych w czasie, gdy na rynku pojawiła się już Amiga. W Polsce komputery Commodore 64 sprzedawała Baltona.
Dużą zaletą Commodore 64 były jego możliwości graficzne i muzyczne. Na tym komputerze wzięła swój początek tzw. demoscena, czyli społeczność fascynatów, którzy tworzyli prezentacje swoich programistycznych i artystycznych umiejętności, nierzadko wykraczających poza ograniczenia nałożone przez samych projektantów C64. Wielu użytkowników komputera – o ile tylko pozwoliły im na to zasoby finansowe – zakupiła nowszą produkcję Commodore: Amigę 500.
Komputer stał się popularny dzięki dużej liczbie gier, ale jego możliwości umożliwiały także pracę biurową. Dostępne były proste (z dzisiejszego punktu widzenia) arkusze kalkulacyjne, edytory tekstu, kompilatory języków programowania. O możliwościach C64 świadczy okres jego zmierzchu: gdy wychodziły pierwsze poważne gry na Amigę i PC, wiele firm ciągle tworzyło wersje dla C64 (Pirates!, North & South i inne).
Konstrukcja
Procesor i pamięć
Procesor
Procesor MOS 6502
Pamięć RAM składała się z 64 kB (stąd nazwa komputera), zaś ROM – ok. 20 kB (zawarto tam jądro systemu, interpreter języka BASIC w wersji 2.0 przygotowany przez Microsoft oraz tablicę znaków). Standardowo, po włączeniu, komputer oferował ok. 38 kB na programy w BASIC. Reszta pamięci była zajęta poprzez zmapowane na nią obszary ROM. Pozwalało to m.in. na „przepisanie” systemu operacyjnego ze stałej pamięci ROM do pamięci RAM, umożliwiając użytkownikowi jego modyfikacje. Można było odłączyć pamięć ROM, uzyskując prawie pełne 64 kB (bez obsługi BASIC). Był to pierwszy komputer domowy, który dawał taką możliwość.
Grafika
VIC II 8565R2 z C64 II
Dodatkowo, VIC obsługiwał 8 duszków (sprajtów – ang. sprites). Były to niezależne od wyświetlanego trybu graficznego, dowolnie definiowalne, ruchome obiekty o rozmiarze 24×21 pikseli (lub 12×21 pikseli w przypadku duszków wielokolorowych). Mogły być one dodatkowo niezależnie rozciągane wzdłuż obu wymiarów do podwójnego rozmiaru.
Dzięki dużym możliwościom układu graficznego VIC-II (np. licznikowi wyświetlanych linii rastra) oraz innych układów komputera, zaawansowani koderzy (najczęściej członkowie demosceny) mogli uzyskiwać efekty daleko wykraczające poza podstawową specyfikację. Możliwa była np. zmiana atrybutów (kolorów wykorzystywanych w obrębie obszaru znaku) przy każdej wyświetlanej linii (tzw. tryb FLI – ang. Flexible Line Interpretation) tak, że zamiast kolorów zdefiniowanych dla obszaru 8×8 (lub 4×8) pikseli, były one ograniczone do obszarów 8×1 (4×1) pikseli.
Za pomocą wyświetlania dwóch różnych obrazów na zmianę w następujących po sobie odświeżeniach ekranu (tzw. interlace lub inaczej przeplot), można było zwiększyć paletę postrzeganych barw do 128 kolorów. Dodatkowo, przy wykorzystaniu przeplotu, w trybie multicolor (160×200) pikseli, można było uzyskać pozorną rozdzielczość 320×200 pikseli. Dokonywano tego poprzez przesunięcie ekranu w jednym z przeplatanych obrazów o jeden piksel w bok (czyli o pół piksela trybu multicolor), co dawało wrażenie wyższej niż faktyczna rozdzielczości – oczywiście wciąż utrzymując wrażenie korzystania z palety 128 barw.
Dzięki podobnym trikom, możliwe było również, teoretycznie niemożliwe, wyświetlanie duszków na normalnie niedostępnej dla grafiki ramce ekranu lub zwiększenie liczby duszków ze standardowych 8 do nawet kilkudziesięciu.
Powstały także tryby graficzne, o nazwach takich jak np. Super Hires Interlace FLI, wynikający ze skrzyżowania wszystkich możliwości podanych uprzednio – czyli trybu multicolor, techniki FLI oraz przeplotu, a także nakładanych na taki obraz sprajtów.
Dźwięk
Układy scalone SID (ang. Sound Interface Device) firmy MOS Technology. Po prawej stronie układ 6581, po lewej układ 8580
W swojej pracy C64 używał np. popularny polski zespół tego okresu, Kombi. Sławomir Łosowski korzystał z niego jako sekwencera dla syntezatorów, co widać na archiwalnych zapisach z koncertów. Wbrew powszechnej opinii nie służył on do generowania dźwięku. Ponadto niemiecka grupa muzyczna Welle: Erdball używa go do tej pory jako główny instrument, aczkolwiek był ten komputer wykorzystywany głównie jako sekwencer, sterując profesjonalnymi syntezatorami poprzez MIDI. Do tej pory wielu fascynatów tworzy muzykę na tym komputerze.
Możliwości dźwiękowego procesora SID zostały docenione po latach – w 1996 roku komputerowy magazyn Byte umieścił go w dwudziestce najważniejszych wynalazków w historii komputeryzacji.
Obudowa i gniazda
Kartridż Black Box dla C64/C128
Porty Commodore 64 (od lewej Cartridge, RF-adj, RF, A/V, 488, Tape, User + Joy1, Joy2, Power)
- gniazdo zasilacza zewnętrznego;
- dwa porty dżojstików typu DE-9M, które mogły służyć również do podłączenia myszki, pokrętła sterującego (paddle) lub pióra świetlnego;
- wyłącznik zasilania.
- Expansion Port – służył do podłączania kartridży (ang. cartridges), czyli modułów z grami czy programami, najczęściej rozszerzającymi możliwości komputera. Przykładami mogą być moduły teletekstu, „Black Box”, „Final 2”, „Final 3”, „Action Replay”, czy „X”, zawierające takie rozszerzenia jak kod przyspieszający działanie magnetofonu, stacji dysków lub monitor (program umożliwiający przeglądanie i modyfikację pamięci komputera). Mogły one także posiadać przycisk „Freeze” umożliwiający wstrzymanie działania programu i uruchomienie monitora w trakcie jego działania. Kartridże często udostępniały również przycisk „Reset”, którego Commodore 64 normalnie nie posiadał, a którego użycie było dużo bezpieczniejsze niż każdorazowe wyłączanie i ponowne włączanie komputera. Do tego portu można było również podłączyć tzw. sound expander (moduł syntezy fm) i rozszerzenie pamięci.
- RF Out – czyli gniazdo antenowe, dające zmodulowany sygnał audio i wideo, służące do podłączenia komputera do telewizora;
- Video/Audio – port umożliwiający podłączenie monitora lub sprzętu audio w celu uzyskania lepszej wyjściowej jakości obrazu lub dźwięku;
- Serial Port – port szeregowy w standardzie IEEE-488, do podłączenia urządzeń szeregowych, jak stacje dysków lub drukarki. Stacja dysków obsługiwała dyskietki 5¼" (model 1541) lub 3½" (1581);
- Casette Port – złącze magnetofonu kasetowego (służącego jako tańsza, alternatywna względem stacji dysków, pamięć masowa). Musiał to być specjalny, dedykowany magnetofon Commodore 1530, tzw. Datassette. Zwykłe magnetofony nie mogły być stosowane, jak to miało miejsce np. w komputerach ZX Spectrum.
- User Port – programowalny port wejścia-wyjścia, mogący służyć jako port standardu RS-232.
Jako ciekawostkę warto dodać, że do C64 stworzono także dysk twardy. Niestety, jego ogromna – jak na owe czasy – cena, nieduża pojemność oraz spadająca popularność komputera sprawiły, iż nigdy nie trafił on do masowej sprzedaży. Istniał również moduł zawierający procesor Zilog Z80 umożliwiający uruchomienie systemu CPM+. W późniejszym czasie Commodore C128D oferowano w sprzedaży wraz z tym systemem, który w tym okresie był dość popularny.
Do komunikacji z użytkownikiem komputer umożliwiał wykorzystanie zwykłego odbiornika telewizyjnego, wyposażonego w gniazdo koncentryczne 75 Ohm (odbiór na kanale 36 UHF) lub dedykowanego monitora.
Dane techniczne
- Procesor: MOS Technology 6510 (lub w nowszych wersjach 8500), 0,985 MHz (PAL) lub 1,023 MHz (NTSC)
- Układ grafiki: MOS Technology 6567 (NTSC) lub 6569 (PAL) (w nowszych wersjach odpowiednio 8562 i 8565), znany jako VIC-II (VIC – Video Interface Controller)
- Układ dźwięku: MOS Technology 6581 (w nowszych wersjach 8580), o nazwie SID (SID – Sound Interface Device)
- Pamięć RAM: 64 KB
- Pamięć ROM: 20 KB (8 KB BASIC, 8 KB KERNAL, 4 KB generator znaków)
- Tryb tekstowy: 40×25 znaków, każdy znak 8×8 pikseli, w jednym z 16 kolorów, możliwe przedefiniowanie zestawu znaków.
- Tryby graficzne:
- 320×200, 1 bit na piksel (tzw. hi-res)
- 160×200, 2 bity/piksel (tzw. multicolor).
- Dźwięk: 3 niezależne głosy, 6 oktaw, 4 kształty fali do wyboru (trójkątny, piłokształtny, kwadratowy ze zmiennym wypełnieniem oraz szum), możliwość zmiany parametrów obwiedni (ADSR) (4 bity na każdą).
- Porty wejścia/wyjścia:
- video
- TV RF
- 2 porty dżojstików (9 pinowe)
- port dla cartridge
- port dla magnetofonu (Datasette)
- USERPORT - port równoległy umożliwiający transmisję szeregową RS-232
- szyna szeregowa dla drukarki lub stacji dysków
- zasilanie: 5 V DC i 9 V AC
Oprogramowanie
Commodore BASIC V2.0
Również współcześnie rozwijane jest oprogramowanie na platformę C64 – takimi projektami są między innymi LUnix, WINGS oraz Contiki (pierwszy system operacyjny dla C64 z wielowątkowością i obsługą TCP/IP).
Mam nadzieje, że się podobało.