1964. május 1. hajnali 4 óra. A John G. Kemeny (igen, magyar :))) és Tom Kurtz által kitalált és megalkotott BASIC parancsértelmező lefuttatja az első programot. Nem is sejtették, hogy abban a pillanatban megváltoztatták a világot. Az alapötlet szerint egy könnyen megtanulható, felhasználóbarát programozási nyelvet szerettek volna kifejleszteni, ami közelebb hozza a számítástechnikát az átlagfelhasználókhoz. (Akkoriban főként az egyetemistákhoz) Talán így 44 év távlatából nyugodtan mondhatjuk, hogy sikerült is nekik. Ismét egy magyar, akinek sokat köszönhet a világ... (Bár Kemény János elmondása szerint az eredetileg kitalált BASIC strukturált nyelv volt, amit később a mikroszámítógépek gyártói csonkítottak meg, gondolom, hogy beleférjenek a szűkös memóriakeretbe...)
De hogy is jön ide a sokak által "kedvelt" Micro$oft? A '70-es évek környékén egy bizonyos Bill Gates és társa, Paul Allen kifejlesztett egy BASIC értelmezőt az akkoriban megjelent M.I.T.S által gyártott Altair típusú számítógépre. Természetesen felkeresték a gyártót, akinek bejött az ötlet, hogy végülis miért ne tákolhatnánk bele egy király kis BASIC-et a gépbe?
Valahonnan innen indult a Micro$oft sikersztorija. De ennek mi köze van a hőn szeretett veterán masinánkhoz? Mindjárt megtudhatod :)
Természetesen nem álltak meg itt, szinte az összes létező gépre átírták a szuper BASIC-üket. 1976-ban megjelent az első 6502 BASIC, ami bármilyen 6502 procival rendelkező gépen elfutkorászott, mint pl a Commodore PET szériája, Apple II, 8bites Atarik, és egyéb mikroszámítógépek.
Hümhümm, mindenki érzi már ugye, hova fogunk kilyukadni? Igen, igen. :) A Commodore 1977-ben megvette a Micro$oft BASIC-et, ráadásul igen kedvező feltételekkel. Egyszeri díjat fizettek érte, és semmi többet. A M$ bízott abban, hogy majd a későbbi verziókra is igényt tartanak, és szépen lehúzzák a Commodore-t. Természetesen nekik több eszük volt, elfelejtették Bill Gates-t és bandáját, és kicsit feltupírozták azt a bizonyos BASIC-et. (Pl teljesképernyős szerkesztő, és egyéb nyalánkságok) Megszületett a Commodore Basic V1.0, amit gyorsan beletuszkoltak a PET-be. A V2.0 pedig mehetett a PET2001-be, VIC20-ba, és C64-be.
Álljunk csak meg egy szóra. Már kezdő C64-es koromban sem értettem, hogy mi a fenéért ekkora sz*r BASIC-et raktak a gépbe. Nincs egy normális lemezkezelő, grafikus vagy hanggeneráló utasítás sem. Gyakorlatilag használhatatlan, ha az ember komolyabb programokat szeretne írkálni. (PEEK/POKE nélkül természetesen)
Mi az oka, hogy a '82-ben piacra dobott 64-ben nem a már '79-ben létező V4-es BASIC interpreter ciripel?
A történetünk 1981 végén kezdődik, mikoris 3 fiatalember, - név szerint Robert Russell (VIC20 rendszerprogramozó), Bob Yannes (SID mérnök) és Dave Ziembicki - Al Charpentier és Charles Winterble segítségével nekiállt a VIC20 utódjának megalkotásához.
Az eredetileg VIC40-nek nevezett masinát gyakorlatilag a semmiből kellett összerakniuk. A tervek szerint a gépnek hiperolcsónak kellett lennie, és mindössze egy pár hónapuk volt a megalkotására. A prototípust mindenféleképpen be kellett mutatni a '82-es CES-en. Egy másik kikötés a 64Kb memória volt. Igenám, de ekkoriban 64K-nak igencsak 100 dolcsi körül volt az ára. Abban reménykedtek, hogy mire a gyártósorra kerül a gép, addigra a DRAM árak is lejjebb kúsznak.
Yannes megpróbálta a lehető legegyszerűbb rendszert összerakni, a lehető legkevesebb alkatrészből. (A választás azért került rá, mert a chip teamből ő volt az egyedüli aki rendelkezett annyi tudással, hogy üssze tudjon rakni egy működőképes _rendszert_ idő alatt) Jack Tramiel üzletpolitikája ekkor már a "minél többeknek minél olcsóbban" mellett elég erősen hajazott az akkoriban feltörő videójáték őrültekre is. (Színek, sprite-ok, stb)
Így Yannes gyorsban kidobta a VIC20 cartridge rendszerét, és kölcsönvette az akkor még félkész Commodore Max névre keresztelt játékkonzol néhány ötletét. A terv szerint a Max-os játékok is tökéletesen elfutkorásznak majd a kütyün. Gyakorlatilag egy játékkonzol a számítógépbe építve. A képernyő színeinek a kéket és a fehéret választották a gyakori dögunalmas fekete-fehér párosítással szemben. Azt akarták, hogy az emberek egyből lássák a gép csodálatos színeit.
A közeli határidő miatt nem volt idejük új házat bütykölni, ezért egyszerűen belepaszírozták egy VIC20 dobozába. Charles Winterble szerint ez a leghető legrosszabb rossz döntés volt, hiszen a szűkös hely miatt rengeteg időt töltöttek az alkatrészek összenyomorításával.
És mégis '81 december végére, kicsit több, mint egy hónap után készen volt a masina. Mégis kellett valami program, ami bemutatja a gép szuper lehetőségeit. Fred Bowen segítségével összedobtak valami gagyi Basic programot, rengeteg poke-al. Mivel assembler progi még nem lévén, a gépi kódú programot a beépített basic segítségével kellett 'bepokézni' a memóriába. (Ugye mindenki emlékszik még a Commodore Újságra? Ó, azok a soha véget nem érő data sorok... :) Többféle demo is készült, sprite-ok, átlátszóság, a háromcsatornás SID muzsika, és 16 szín vakította a népet... :)
A téli CES lezajlott, a C64-nek nem volt ellenfele. Rendelkezett minden földi jóval, míg a vetélytársak inkább csak az előző gépek toldozott-foldozott verzióit mutogatták. Ráadásul el volt látva rengeteg perifériával, ugyanis a VIC20 lemezegység és nyomtató tökéletesen működött vele. Mindemellé a bejelentett ára 595 dolcsi volt, amire az Ataris srácok egész egyszerűen közölték, hogy ennyiért ez lehetetlen. ;)
A problémák csak itt kezdődtek. A gépet minél előbb piacra kellett dobni, de még közel sem állt olyan állapotban. Az idő továbbra is sürgetett. Kit Spencer marketinges és Winterble rengeteget csatáztak, hogy mit javítsanak a gépen, hogy az eladható legyen de olcsó is maradjon. Spencer szerint az operációs rendszer iszonyatosan elavult volt már, hiszen megegyezett az 5 évvel korábban kiadott PET gépekével. A Basic nyelv nem rendelkezett sem grafikus, sem hanggenerálásra alkalmas utasításokkal, így megnehezítette volna a programozók munkáját a rengeteg poke-al. Mindezek mellett az új "VIC40" egyáltalán nem volt kompatibilis a VIC20-szal.
Spencer meglátta az IBM PC-ken futó DOS-ban rejlő lehetőségeket, és profi OS-t akart. Megpróbálta ráerőltetni a mérnökökre a CP/M operációs rendszert, amelyre akkoriban rengetegeg komoly üzleti alkalmazás is épült. (Az egyik legfontosabb tulajdonsága a lemezkezelés volt, ugyanis létre lehetett hozni vele könyvtárstruktúrákat is.) Végül kompromisszumos megoldásként megszületett a CP/M cartridge Z80 processzorral. Mivel a mérnökök úgy gondolták, hogy a gép CP/M-et fog használni, ezért Russell nem törte magát, hogy javítson a beépített operációs rendszeren. Állítása szerint volt még egy nagyon prózai oka a V2-es Basic-nek: egyszerűen ennyi fért bele egy 8Kb-os ROM chipbe.
Természetesen mindannyian tudták, hogy így ez a Basic minden, csak nem felhasználóbarát. A főnök, Jack Tramiel számára maga a szoftver lényegtelen apróság volt csupán. Mivel írógépek javításával kezdte a pályáját, eléggé hardverközpontú szemlélettel rendelkezett, úgy gondolta, hogy minden dollár amit a 'láthatatlan és megfoghatatlan' szoftverre költ, az ablakon kidobott pénz. Vicces, hogy az extra ROM chip kb. 3$-al növelte volna az előállítási költségeket...
Mivel sem idő, sem pénz, sem ember nem volt a C64 igazi lehetőségeit kiaknázó Basic bővítésre, úgy gondolták, majd később visszatérnek a problémára. A "visszatérést" a Super Expander cartridge jelentette, ami egy Basic bővítés volt, bár a piacon nem nagyon terjedt el.
A VIC20-szal való kompatibilitást megnehezítette, hogy az új VIC-II grafikus chip eltérő felbontást használt, mint a VIC-I. Ez az alapvető probléma teljesen értelmetlenné tette a további küzdést. A két gép különbözősége miatt rengeteg új hardver beépítésére lett volna szükség. Tramiel szerint ha az emberek vesznek egy jó gépet olcsón, akkor ki a fenét fog érdekelni a kompatibilitás? Így ehelyett inkább sprite-okat kaptunk.
Mire Russell végzett a ROM-mal, maradt kemény 5 szabad byte-ja. Mivel 5 byte elég kevés bármi értelmes dologra, ámde üresen hagyni vétek, így gyorsan beledobta a két 'apuka' monogramját a C64 ROM-ba. Úgyhogy emulátorra fel, monitorprogram be, és M FFF6...
A fejlesztés közben lassan elkopott a VIC40 megnevezés is, kellett helyette valami más, ami jobban illik a többi Commodore géphez. Mivel már volt P128 (P mint personal), és B256 (business), az átlagfogyasztóknak szánt otthoni masinát elnevezték Consumer 64-nek...
A C64 '82 őszén vált elérhetővé a nagyközönség számára 600$ alatti áron. Azonnal megszerették a kék képernyőt, a csilingelő muzsikát és a hihetetlen grafikus képességeket. Ráadásul a konkurens cégek gépei kb. kétszer ennyibe kerültek. 1984-ig 4 millió darabot adtak el belőle, gyakorlatilag vitték, mint a cukrot.
Talán nem véletlen, hogy a Guinness Rekordok Könyvében a legnagyobb példányszámban eladott számítógép konfiguráció címszónál a Commodore 64 neve szerepel. Robert Russell és Bob Yannes álma valóra vált. Gyermekük totális sikert könyvelhetett el azon a piacon, amire szánták. Játékgép volt a számítógépben.
De álljunk csak meg egy szóra. Gyermekkorunk legszebb pillanatait tényleg Bill Gates-nek köszönhetjük? Vajon milyen Basic került volna a gépekbe nélküle? Jack Tramiel "szoftvervakságát" ismerve valószínűleg még ilyen se... :)
Vajon a V4-es Basic felnevelt volna-e annyi agyafúrt, rafinált, a tervezőket megszégyenítő trükköket kitaláló programozót? Megfertőződtünk volna ugyanígy az IT-mániával? Kihívás volt a javából szép és gyors grafikát megjeleníteni, 8-nál több sprite-ot mozgatni a képernyőn, vagy rajzolni a keretre. Talán az utolsó gép volt, ami még kihozta a fejlesztőkből a maximumot.
Hiszen hová jutott a világ... Az 1970-es 4Kb-os Microsoft Basicből mára száztrillió gigabájtos vindózviszta lett. 100 programozóból hányat érdekel, hogy gyors kódot írjon? Hányat érdekel, mekkora a végeredmény? 3 vagy 4 DVD? 800 gigahertzes proci kell hozzá? Meg 60 giga ram? Majd vesz új gépet a paraszt.
A lényeg viszont mégsem változott. Az emberek szeretnek játszani. Hogy CoVboy-t idézzem: "A legjobb játék a videojáték"... És az emberek még mindig azt hiszik, hogy a számítógépes játéknál nincs jobb.
Talán azért vettem konzolt, mert egy kicsit kiszakít ebből a gigabájt háborúból. Nem kell idegeskednem a memória, proci meg a videókártya miatt. Nem kell helyet csinálnom azon a tetves pc-n...
Csak ledöglök, bambulom a tv-t kezemben a joystickkal, és játszom. Egy pár órára visszakapom annak a régi érzésnek egy darabkáját. Hiszen én is csak szórakozni akarok. Furcsa érzés, hogy ezt is a Microsoft nevével fémjelzett masinának köszönhetem...
Lehet, hogy mindössze ez volt a 64 sikerének a titka? Talán inkább számítógép volt a játékkonzolban...
Update: A Basic-es infókat innen-onnan vadásztam. Wikipédia, google, egyéb oldalak. Tessék keresni.
A C64 összepakolás története:
The Spectacular Rise and Fall of Commodore Copyright © 2005 by Brian Bagnall
Könyv. Neten is rendelhető. Angol nyelvű. Ha valamit félrefordítottam, utólag is sorry.
Akit érdekel a folytatás, az itt megnézheti
(Reméljük nem hangkártya-csata lesz a vége... :)