Shop menü

ZX SPECTRUM FOREVER! NEGYEDIK X!

A C64 negyven lett, és ahogy számíthattunk rá, a Csokonais konkurense is belépett a korba. Kicsit kitekintünk erre a konstrukcióra és az elejéről kezdjük a történetet.
HaverLaci
HaverLaci
ZX Spectrum forever! Negyedik X!

A hetvenes években a mikroprocesszor megjelenésével a számítógépek mérete, fogyasztása és fenntartásának költsége a korábbi töredéke lett, majd pár éven belül a töredék ár ismét nagyságrendeket esett. Ekkor még mindig példányonként ezer dollár körül járunk. A számítástechnika egyre jobban a köztudat része lett, és a konzolok - azaz inkább TV-játékok - megjelenésével az otthonokban, televízión kaphattuk meg egyszeri költség kifizetésével a játéktermi hangulatot, az ott szükséges játékmenetenkénti fizetés kényszere nélkül.

Clive Sinclair víziója az volt, hogy a számítógép minden háztartás része lesz, mint a mosógép.

Úgy gondolta, a gyorsabb elterjedés érdekében megcéloz egy piaci rést, és egy 100 angol font alatti összegbe kerülő, már éppen számítógépnek nevezhető eszköz fejlesztésébe kezdett. Ez az összeg, az akkor viszonylag elterjedtnek és olcsónak mondható Tandy TRS-80 / Atari 800 / TI-99/4A számítógépek kb. harmada volt.

1980. január 29-én megszületett a Sinclair ZX80, 99.95 angol fontos árral, mely megfelelt az eredeti elképzelésnek.  A barkácskedvűek további húsz fontot spórolhattak a KIT verzióval, de nekik tápegységet is kellett gyártaniuk, mivel az nem járt abban a csomagban. Az alacsony ár eléréséhez jónéhány trükköt kellett alkalmaznia Sinclairnek és csapatának: a beépített monitor helyett televízió, az adattárolásra háztartási kazettás magnó (nem volt az árban), élcsatlakozós bővítőport (a csatlakozó ára így megspórolható) - ezeket több házi számítógépben alkalmazták a későbbiekben.

A TV-kimeneten kívül három egyforma csatlakozó található a gépen, ráadásul egymás mellett. Ezekbe a kazettás egység két, és a tápellátás egy csatlakozója illett. Mivel megegyeztek a csatlakozók és a dugók is, fennállt a veszély, hogy a betápot mellédugjuk, így beláthatatlan károkat okozva a gépben... Gondoltam én, de a kézikönyv szerint semmi hibát nem okoz akár egy áram alatt lévő tápdugasz nem megfelelő aljzatba csatlakoztatása.

A burkolat csavarokat sem tartalmazott, azt is műanyag megoldással helyettesítették. A billentyűzet beépített volt, azonban az egyik legegyszerűbb megoldású: a nyomtatott áramkörön vezetékből kialakított érzékelőt a billentyűket "megjelenítő" fólia túloldalán található membrán érintkezése esetén aktiválja. Ez a legkevésbé ad nyomásérzetet (hasonló billentyűzet kialakítással találkozhattunk magyar konstrukcióknál is).

Ennek, valamint az amúgy sem emberes méretűre szabott "billentyűk" okozta kényelmetlenség enyhítésére a billentyű lenyomása egy-egy parancs kiírásával járt, annak teljes begépelését megúszhatjuk. Az árnyékolást sem az addig megszokott hajlított fémlemezzel, hanem egy speciális fém-festékréteg burkolatra juttatásával oldották meg. Hasonló megoldást a laptopokban máig láthatunk.

Reset gombról, ki/be kapcsolóról nem is álmodhattunk természetesen, ahogyan a hangkeltés is odaveszett az olcsósítás oltárán. Megjegyzem, ezzel együtt volt program, mely a processzor keltette gyenge AM modulációval egy közeli rádiókészüléken képes volt mégis zenét csiholni.

A módszer nem mondható újnak, a '60-as évek adatközpontjaiban is hasonló módszerrel ellenőrizték, hogy lefagyott, vagy végtelen ciklusba került-e a program. Hangkeltésre a kazetta csatlakozáson keresztül is lehetőség volt, leginkább csipogásra, bár hangot a programok ritkán adtak ki. Az utód ZX81 gyors/lassú módjának váltása szintén hangot adott ki a TV-n, azon ezt is kihasználták élelmes programozók.

Némileg érthetetlen módon szellőzőnyílásokat "festettek" a burkolat tetejére, azonban a felhasználók hamar rájöttek, hogy ez a festés nem oldja meg az egyébként elég jelentős melegedést. A korai prototípus burkolaton fel sem merült a szellőzés, a későbbin és a BASIC fejlesztői modellen viszont úgy látom még ott volt a valódi nyílás.

A fejlesztési költségek minimális szinten tartása érdekében a nyomtatott áramköri rajz kézzel készült, és az alaplap nem tartalmazott egyedi alkatrészeket. Mindent az elérhető és olcsó integrált áramkörökből építettek fel, 21 darab IC került az alaplapra. A csomagolás is egész puritán volt, mindössze egy barna kartondoboz rápecsételve az adatokkal, hungarocell béllel.

Az egyetlen komolyabb fejlesztés az itt még integer aritmetikájú (32768 - 32767 tartomány), 22 utasítással rendelkező Spectrum Basic megalkotása volt, melyet 1979-ben a Nine Tiles Networks Ltd készített, a tulaj John Grant, és Steve Vickers. Ez a helyszűke miatt hibaüzeneteket nem jelenített meg, csak két számot perjellel elválasztva: 10 féle hibakódot, és a hibás sor sorszámát. A hagyományos BASIC utasítások közül többet nem is ismert, pl az DATA, READ, RESTORE, mondhatni egy basic BASIC volt.

Előremutató képesség viszont, hogy az utasítások szintaktikáját - tehát hogy nincs-e elírás - soronként, már programozáskor ellenőrizte a fordító, és nem engedett tovább hiba esetén (az általános az volt, hogy csak a program futása során kaptuk meg a hibaüzeneteket).

Később, bővíthető volt 8 kilobájtos lebegőpontos aritmetikájú BASIC-re. Pontosabban a ZX80 fejleszthető volt az utód ZX81-re, a ZX81 árának töredékéért. Ehhez billentyűzet-fólia is járt az új BASIC utasításokkal, azonban a csomag a nem-maszkolható megszakítás áramkört nem tartalmazta (de arra is lett megoldás a közelmúltban).

Az alapgép specifikációja így: Z80 kompatíbilis processzor 3.25MHz (PAL) vagy 3.55MHz (NTSC), 1024byte RAM, 4KB ROM. Videóchipet nem tartalmazott, annak feladatát is a processzor látta el. A 32x24-es karakteres képernyő 64x48-as "felbontású" grafika megjelenítésére is képes volt a grafikus karakterekkel, melyek a teljes karakter területét negyed blokkokra osztották.

Egy karakter 8x8 pixel méretű, így az elméleti felbontás 256x192 pixel, amit RAMbővítés után ilyen-olyan trükkökkel azért csak sikerült előbb-utóbb pixelenként rajzolni, pl az ún. PseudoHires mód létrehozásával, mely a 8x8 pixeles karaktereket 1x8 pixelessé torzítja.

A Wilf Rigter által kifejleszett WRX módszerhez a külső memóriabővítőt belső bővítésre kell cserélni, vagy tiltani a WRX1k módszernél, utóbbi azonban csak csökkentett méretű képet támogat. A képernyő monokróm, azaz egy háttér- (fekete) és egy írás színnel (fehér) tudott gazdálkodni, grafikus mód nem volt, a karakteres felbontás pedig 32x24 ráadásul ebből "kiírni" sem lehet, mivel hibaüzenetet kapunk, a megszokott képgörgetés helyett.

Emlékezzünk, a memória mindössze 1024 byte, a 32x24-es képernyő megjelenítése pedig eleve 768 byte-ot el is vesz ebből. A maradékban tudjuk a programunkat tárolni, azonban egy kiskaput kaptunk: amennyiben a program meghaladta e méretet, a kijelzett sorok csökkenni kezdenek, hogy helyükre a programkód léphessen.

A képmegjelenítés feladatát a processzor oly módon látta el, hogy először a számításokat végezte el, majd a képet jelenítette meg. Mivel vagy programot futtatott vagy képet jelenített meg, a felhasználó találkozhatott a konstrukció egyik gyengéjével - mely így nem is tette lehetővé a folyamatos játékmenetet, pontosabban a mozgás megjelenítését - a vibrálással.

Minden billentyű leütése kiváltotta a vibrálást, sőt míg a gép a kódon "gondolkodott" a képernyő sötétre váltott, akár másodpercekre. A korai időkben a kazetták helyett a program begépelése volt a fő adatbeviteli mód, ehhez a kb. tíz, e platformra dolgozó szoftverfejlesztő cég kiadványai közül válogathattunk.

A játékok ebben az időben így néztek ki:

Később kazettán is megvásárolhatóvá váltak a programok, jelenleg is van elérhető:

A vibrálás-problémát az utód ZX81-ben az ún lassú móddal kiküszöbölték. Azonban a Macronics Software (Ken Macdonald, Ron Bissell, James Steventon, Jonathan Cranston) ezt már 1980-ban szoftveresen megoldotta: a képernyő elektronsugarának olyan állapotainál számolt a processzor, amikor az nem képinformációt rajzolt. PAL rendszer esetén 20ms, NTSC-nél 16.6ms alatt készíti el a teljes képet, a leghatékonyabb megoldásnál 1.592ms állt rendelkezésre a számoláshoz. A programokat blokkokra kell osztani, melyek ennyi idő alatt képesek lefutni, erre praktikusan a gépi kód volt alkalmas. A módszerrel a kép villódzásmentes lett, akár animálásra is lehetőség volt. Az amerikai NTSC szabányú - így 50 helyett 60Hz képfrissítésű - gépekhez a kódot módosítani kellett. A programot kazettán és programlista formájában is meg lehetett vásárolni.

A Quicksilva cég szintén képes volt erre, játékai vibrálásmentesek voltak, sőt Defender (az újabb verzió neve Defenda) című programjukhoz hangmodult is készítettek, mely 1981-ben a konkurensek jó részét lekörözte hangzásban. Ezzel, és a 16K-s bővítővel egész használható konfigurációt lehetett összehozni (persze kérdés, hogy a bővítésekkel növelt ár milyen viszonyban volt egy eleve ilyen számítógéphez képest).

A játékok ezt követően már "játékszerűbbek" lettek:

Kisebb méretű RAM-bővítők is kaphatók voltak pl 2KB-s, a programoknál meg volt adva mekkorára van szükség. 16, 32 és 48K-s létezett. 64K-s is volt, de mivel a Z80 összesen 64K-t tudott címezni, a ROM kapacitása levonódik a 64K-ból.

A külső memóriabővítők könnyedén kimozdultak, és ez a gép fagyásához, vagy újraindulásához vezetett. Mivel botkormány, vagy egyéb kontrollerek nem voltak használatosak, csak a billentyűzet a játékokhoz, ez nagy eséllyel előfordulhatott a játék hevében. Ezért a bővítőket kétoldalas ragasztóval, vagy más módon igyekeztek a gép burkolatához rögzíteni. 

A Macronics-os Ron Bissell fejlesztette "Amazing Active Display" villódzáselhárító rendszer mellett egy másik, a Dr. Ian Logan által kitalált "Auto-Display-Changing" alternatíva is megjelent, azonban az több RAM területet igényel.

2010 környékén ismét előtérbe került a ZX-80, ekkor hardver- és szoftverfejlesztések is történtek. A Chroma80 16 színűre bővíti, mely SCART kimenetet, RS232 soros portot, botkormányt és ROM cartridge csatlakozót is tartalmaz.

A korábbi monokróm programok helyett üdítő változatosság.

A ZXPand pedig egy igazán sokoldalú bővítő, mely lehetővé teszi programok betöltését és mentését SD kártyára, alkönyvtár is támogatott, 32k RAM bővítést tartalmaz, és AY-3-8910 hangchipet, továbbá Atari kompatibilis botkormány portot.

A viszonylag egyszerű felépítésű gép utánépítése is lehetséges: alaplap, billentyűzet, akár készülékház is elérhető, sőt a vibrálást megoldó áramkör is megvásárolható. Sőt a Tynemouth jóvoltából egyből 16K-s alaplap, mely ZX80 és ZX81 módban is működött, továbbá valamivel fejlettebb billentyűzet is kifejlesztésre került.

A ZX80-at népszerűsítette, hogy egy robotvezérlést alapoztak rá. A platformot többen is életben tartják, egyik legnagyobb név Paul Farrow, akinek nevéhez több forradalmi megoldás fűződik, de több honlapon is találhatunk korabeli és friss készítésű programokat.

Érdemes a Z80 processzort újabb, CMOS gyártástechnológiájúra cserélni, kisebb fogyasztás, melegedés, és nagyobb megbízhatóság jellemzi, de az egyik leggyengébb alkatrész, a melegedés első számú felelőse: a 7805-ös feszültségstabilizátor helyett is létezik hatékonyabb opció, végül a mára kb. használaton kívüli és amúgy is vitatható minőségű TV modulátor is fejleszthető.

De valójában a történet nem itt kezdődik, hanem az MK14-gyel. Ez nem a fegyver, hanem a Microcomputer Kit 14 egység. Az olcsó számítástechnika megvalósításának igénye már 1977-ben Sinclair és társai fejében volt. Az MK14 a Science of Cambridge által forgalmazott számítógépes készlet volt hobbistáknak 39,95 fontért. Az alacsony árhoz hozzájárult, hogy a National Semiconductornak nemcsak INS8060 CPU-ját, hanem egyéb kiegészítőit is használták (IntroKit, membrán billentyűzet). E burkolat nélküli gép 256 bájt RAM és 512 bájt ROM memóriát tartalmazott, LED diódákon keresztül kommunikált, de akár 32x16 karakteres szöveget vagy 64x64 képpontos grafikát is támogatott.

Az MK14 konstrukció több hibával is sújtott volt, nem is fogyott túl jól, de megmutatta az irányt Sinclairnek. Rajongói is akadtak, szimulátoros kipróbálás, és utánépítés is lehetséges.

Százezer körüli példány készült a ZX80-ból, tehát sikeresnek mondható, ha másban nem is, úttörő szerepében (mellyel az is járt, hogy nem volt összehasonlítási alap a szegmensben), és a verseny kirobbantásában a legalsó kategóriában. Kezdetben több hónapos várólista is volt megrendelés esetén. A fejlesztés tehát indokolt volt, egy évvel 1981. március 5-én bejelentették utódját, a ZX81-et.

Színes csomagolás, a nyikló-nyeklő burkolat kisebbre, de strapabíróbbra és dizájnosabbra cserélése - Rick Dickinson tervezői díjat is kapott ezért -, valamint a korábban emlegetett 21 integrált áramkör négyre vagy ötre (a memória szervezésétől függően1x  4118, vagy 2x2114) csökkentése: processzor; memória; itt már 8KB ROM, a fejlettebb BASIC-cel; és a maradék 17 IC egy, Uncommitted Logic Array-ra keresztelt, Ferranti által gyártott egyedi chipbe került. Ez jót tett a költségeknek (49GBP lett a KIT verzió ára, fele a ZX80-nak), később inkább átok lett, mert amennyiben ez elromlik - ami nem is ritka -, a csere kb. esélytelen, mivel nincs kiváltó IC. Egyik megoldásként a korábbi, ULA nélküli ZX80 alapú egység szolgált.

Alul a frissített revíziójú alaplapot láthatjuk, jobb oldalon pedig egy prototípus burkolat-maradványt.

Egy további javítás történt, a slow/lassú mód bevezetése, mely lehetővé tette a trükközés nélküli programozást - már ami a vibrálást illeti - akár BASIC nyelven is. A billentyűzet lényegében ugyanaz maradt a feliratoktól eltekintve. Az új konstrukció nem volt hajlamos a túlhevülésre, és a költségcsökkentést követően maradt pénz valódi, fém csavarokra is. A billentyűzet szalagkábelen keresztül csatlakozott az alaplaphoz és ezzel meg is jelent az ULA melletti második probléma:  a szalagkábel szakadása. Ez még sokáig kísérte a Sinclair és néhány kortárs gép útját.

A gyártási nehézségek miatt kezdetben heteket kellett várni a megrendelt készülékre, később üzletekben is megvásárolható volt ellentétben elődjével, melyet csak megrendelni lehetett. Kezdetben a tápegység miatt a meghibásodási arány sem volt túl rózsás, ez a 30%-ot is elérhette. És egy BASIC-ben talált hiba (PRINT SQR 0.25 hibás eredményt adott) is kiderült.

Sokunknak ez a gép volt az első találkozás a számítástechnikával, én is egy művelődési házban láttam. Négyen-öten görnyedtek körülötte és egy programot fabrikáltak épp, hazánkban is elég sikeres volt a ZX80 / ZX81.

Amerikában is kiadták a gépet együttműködve a TIMEX-szel a TIMEX-Sinclair 1000 2KB memóriával indult harcba. A későbbi 1500-as model 16KB memóriával és átdolgozott készülékházzal, alaplappal és a Spectruméhoz hasonló gumi billentyűzettel ugyanennyiért 1983-ban már bukás volt, melynek oka részben a konkurencia elhúzása, a korábbi megbízhatatlan gépek által okozott bizalomvesztés, és az, hogy az amerikai közösség inkább preferálta a megvásárolható programokat ahelyett, hogy megtanulta volna a programozást vagy legalább begépelte volna a programot. Az időközben kiadott Commodore VIC-20 minden tekintetben kielégítette ezt az igényt.

Mivel a 16- vagy akár 64kbyte-os memóriára bővített gép mondhatni korszerű volt, indokolt volt a kényelmetlen billentyűzetet és az apró burkolatot valami professzionálisabbra cserélni, ehhez több gyártó is kínált megoldást. Némelyik csak a billentyűzetre helyezhető gumi felületet - mellyel a nyomásérzet kialakul - mások komplett készülékházat.

Hangmodul is vásárolható volt hozzá beépített hangszóróval, a korszaknak megfelelő hangzással. Három csatorna, emellett a korszak egyik elterjedt hangchipjét használta, még hangerőszabályzó is volt.

Ahogy a ZX81-et, annak elődjét is a számítástechnikával ismerkedőknek ajánlották, de a rendkívül korlátozott képességei miatt el is riaszthatta a felhasználókat. Mivel a BASIC programozásra alkalmasabb lett az utód és a vibrálással sem kellett számolni, terjedelmes programgyűjtemény lett az eredmény, de a 16K-s RAMbővités megléte nagyrészt alapigénynek tűnik.

Az elérhető programokat átnézve néhányat kiemelnék:

1K ZX Chess: David Horne 1982-ben alkotta meg ezt a sakkprogramot, mely ismeri az alapvető lépéseket, és AI-t is tartalmaz, tehát képes játszani ellenünk, mindezt 672 byte-ból:

3D Monster Maze: Malcolm Evans fejlesztő 1981-ben kiadott 3D-s labirintus játéka, melyben egy dínó elől kell menekülnünk és a kijáratot megtalálni. A 3D látvány úttörő volt ebben az időben. 16K-s bővítést igényelt.

Forty Niner, és Rocket Man: PseudoHires grafikája miatt volt érdekes, megoldották a 64x48-nál nagyobb felbontás megjelenítését. Mondhatni animált mozgásokkal.

Em Busca Dos Tesuros: Nagyfelbontású grafika nincs, cserébe 313 pályát tartalmaz, és roppant nehéz játék. A Pitfall című játék ihlette a tizenéves brazil alkotót.

Against The Elements: Paul Farrow 2016-ban alkotta meg e korszakalkotó PseudoHires felbontású, izometrikus nézetű 3D-s programját. Valószínűleg a gép megalkotói sem gondolták volna, hogy erre képes a masina.

Nohzdyve: valódi "nagyfelbontású", mégis gyorsnak mondható grafika! A Fekete Tükör sorozat egyik epizódjából lehet ismerős.

A játékokon látható volt a fejlődés 1-2 év alatt, ahogy az újabb és újabb lehetőségeket felfedezték. Egyik-másik egész ötletes, de azért jópárhoz igencsak kellett a képzelőerő.

A ZX81-hez a hangbővítésen, a rengeteg memóriabővítőn kívül még egy viszonylag fura nyomtató volt csatlakoztatható. Ez egy speciális papírra nyomtatott mely ráadásul jóval keskenyebb volt a megszokott A4-nél, viszont a szükséges 32 karakter szélességet ki tudta nyomtatni.

Bár a ZX80 - ZX81 párost talán túlzás nélkül lehet hívni a számítástechnika (nyugati) legaljának, mégis viszonylag sikeres volt, és abban is biztos vagyok, hogy még leváltása után is sokan örültünk volna egy ilyennek, pedig a hazai számítógépes lehetőségek a vasfüggönyön innen elég jónak voltak mondhatók.

Ezzel együtt 1997-ben egy lelkes rajongó - a WRX-szel kapcsolatban már említett - Wilf Rigter, megalkotta a ZX97-et, ami kompatibilis volt a ZX81-gyel, viszont 32KB RAM, 128KB ROM-ot használt, a beszerezhetetlen ULA chipet pedig alacsony fogyasztású logikai IC-kkel helyettesítette, ezenkívül párhuzamos portot és RAM-disket is kapott. Az egy évvel későbbi Lite kivitel utóbbi kettő helyett, kazettacsatlakozóval lett felszerelve. Akit érdekel az utánépítés, az interneten minden infót megtalál, akár magyarul is.

De az eredeti ZX81-nek is utódot szántak a ZX81 Color, majd ZX82 néven...

(folytatjuk)

Neked ajánljuk

    Tesztek

      Kapcsolódó cikkek

      Vissza az oldal tetejére