Sinclair Spectrum Házi javítás


Hogyan romlik el a számítógép?
A Spectrum fő egységei
Mérési pontok
A melegedéssel kapcsolatos észrevételek
A billentyűzetfólia cseréje
Hibakeresés és hibajavítás


Az utóbbi években jónéhány könyv illetve dokumentáció jelent meg hazánkban a ZX Spectrum gépek különböző sorozataihoz, amelyek részletesen tárgyalják a gép lehetőségeit úgy software, mint hardware tekintetében. Mindazonáltal szükségét éreztük, hogy az LSI ATSz Spectrum-sorozatában helyet szorítsunk egy hardware-információkat tartalmazó résznek is, mivel a Spectrum-hardware-rel foglalkozó magyar nyelvű szakirodalom - főleg megjelenési példányszámok miatt - csak korlátozott mértékben jutott el az olvasókhoz, az idegen nyelvű pedig csak a műszaki könyvtárakban ismerős "bennfenrtesek"-nek áll a rendelkezésére.
A számítógép bonyolult műszaki rendszer, ami állandóan magában hordja a meghibásodás lehetőségét. A Spectrum-tulajdonosok még hálásak lehetnek a derék Sir Clive-nak, hogy gépének megkonstruálásakor a maximális egyszerűségre törekedett, lehetőséget adva arra, hogy a gép egyes hibáit akár házilag is javíthassuk. Könyvünkkel azoknak kívánunk segítséget nyújtani, akik már rendelkeznek némi jártassággal a digitális technikában (a mérésekhez, javításokhoz bizonyos gyakorlat szükséges), és gépük egyszerűbb javításaira nem kívánnak súlyos pénzeket kifizetni.
Fejezetünk a Spectrum házi javítására vonatkozó információkat és néhány hardware-kiegészítést tartalmaz, amelyekkel tökéletesíthetjük, praktikusabbá tehetjük gépünket. A hibakeresést / javítást egy algoritmus alapján állítottuk össze, ami megkönnyíti az olvasók dolgát.
Mindenekelőtt azonban egy figyelmeztetés: Spectrumunk számos érzékeny - s drága - alkatrésszel rendelkezik, amit avatatlan kéz a pillanatok tört része alatt sikeresen tönkretehet. Ezért szeretnénk a Kedves Olvasó figyelmébe ajánlani egy idézetet Murphy törvénykönyvéből:
"Természet Ősanyánk irtózik a kísérletezők fejében honoló űrtől."
A mi esetünkre vonatkoztatva ez annyit jelent, hogy CSAK AZOK fogjanak hozzá a javításhoz, akik képesnek érzik magukat erre!
Őszinte sajnálatunkra, a javításokhoz, illetve kiegészítésekhez szükséges alkatrészek beszerzéséhez nem tudunk segítséget nyújtani, mert a mikroszámítógépek alkatrészellátása hazánkban nem igazán megoldott dolog, esetleg a szakboltok gyakori látogatását tudjuk javasolni.

Hogyan romlik el a számítógép?

Gépünk meghibásodása általában két ok miatt következik be: a huzamos használat miatt illetve a felhasználó hibájából. A huzamosabb használat vonja maga után a billentyűzetfólia és a külső vezetékek (tápegység csatlakozó, EAR/MIC kábelek stb.) elhasználódását.
A második verzió sokkal sokrétűbb lehetőségeket kínál gépünk gyors tönkretételére. A legtipikusabb hiba általában a user port-on történő támadás a gép egészségi állapota ellen: a felhasználó betölti a játékprogramot és látja, hogy lehet joysticket is választani. "Hohó" - virul fel az arca, "hiszen nekem van joystick-interface-em", aztán rádugja (esetleg már rajta van, de leveszi, mert zavarja az esztétikai ízlését). A meghibásodást nem magának az áramkörnek a csatlakoztatása okozza, hanem - lévén az érintkezősáv kissé szoros -, a féloldalasan feszegetett rádugás. Ezzel a manőverrel könnyen rövidre zárhatunk adat-, cím-, vezérlő-, 5V-, GND- és egyéb kivezetéseket. Mivel a Spectrum kivezetései semmilyen védelemmel nincsenek ellátva, tevékenységünkkel a gép belső egységeit zárjuk rövidre, minekfolytán az némileg "beteggé válik. Ritka esetben megtörténhet, hogy nem idézünk elő hardware-hibát, de a gép mindenképpen "befagy" (nem fogad el semmilyen billentyűt). Ha a user port-ot rendeltetésszerűen használjuk (csak KIKAPCSOLT állapotban helyezünk fel / le a gépre valamilyen külső egységet), - szétszedés nélkül - elég nehéz a gépben olyan károsodást előidéznünk, ami hardware-javítást igényelne.
Sajnos a Spectrumot összetartó 5 csavar nem jelent különösebb akadályt az ún. "berhelők"-nek, akik kivont forrasztópákával támadnak a védtelen Spectrumra. Ezek az urak - általában a fiatalabb korosztályok tagjai - már többször láttak bekapcsolva oszcilloszkópot vagy valami hasonló titokzatos műszert, ebből kifolyólag elég ügyesnek érzik magukat néhány - önálló - átalakítás végrehajtására (pl. memóriát bővítenek, saját tervezésű interface-eket építenek és próbálnak ki). Ezzel általában sikerül mély nyomokat hagyni gépük lelkivilágában (vihetik szervizbe).
A következő részben az elromlott Spectrum házi javításához adunk útmutatót, miután áttekintettük a számítógép - házi javításának szempontjából lényeges - főbb egységeit. Már most kérnénk a profi hardware-esek megértését: ezt a fejezetet a kezdők szintjén írtuk meg (hiszen ők vannak többen), és a HW-egységek működésével is csak annyit foglalkozunk, amennyi a javításához elengedhetetlenül szükséges.

A Spectrum fő egységei

ZX Spectrum számítógépünk - meglehetősen - bonyolult számítógépes rendszer. Az alábbiakban áttekintjük a Spectrum legfontosabb egységeinek szerepét a rendszer működésében.
Egy számítógépet működés szempontjából két fő alkotórész határoz meg: a hardware (elektronikai egységek) és a software (programok). A hardware-egységek biztosítják a számítógép software-ének üzemeltetéséhez szükséges műszaki feltételeket, vagyis valamely hardware-egység meghibásodása a számítógép működésképtelenségét, illetve hibás működését eredményezi. A Spectrum hardware-ének elméleti működését az alábbi ábra szemlélteti:

A számítógép "lelke" a központi egység, a Z80-as mikroprocesszor. Ez teszi "számítógép"-pé a Spectrumot. A rendszer többi eleméhez úgynevezett "busz"-okon keresztül csatlakozik: az adat-, cím- és vezérlőbuszokon. Működéséhez mindössze annyi szükséges, hogy megfelelő kivezetéseire a tápfeszültséget, a földet és az órajelet rákapcsoljuk. E három jellemző már elegendő a működéséhez, de az általa végzett munka csak akkor válik értékessé, ha a Z80 munkáját valamilyen software segítségével a megfelelő mederbe tereljük. A "terelést" egy 16Kbyte-os operációs rendszer, a Sinclair BASIC végzi. Ez a ROM-ban (Read Only Memory = csak olvasható memória) helyezkedik el és a számítógép bekapcsolásakor azonnal futni kezd.
A Z80 tehát már a ROM által meghatározott módon üzemel: bemeneti (input) adatokat kér (hogy honnan, arról majd később), számol és kimeneti (output) adatokat küld. A számolás eredményét a RAM-memóriákba (Random Access Memory = véletlen elérésű memória) küldi és ott tárolja. A számítógép már gőzerővel üzemelhetne, ha a felhasználó valamilyen úton-módon input adatokat juttathatna a Z80-nak feldolgozásra. A felhasználó (billentyűzet) illetve egyéb egységek felől érkező input-adatok kezelése a Spectrum-ban a Sinclair cég által gyártott ULA nevű chip feladata. Az ULA szolgáltatja a Z80 működéséhez szükséges 3.5 MHz-es órajelet, lekezeli a perifériákhoz (billentyűzet, adathordozók, stb.) kapcsolódó input / output műveleteket, valamint - a video-áramkörön keresztül - ő állítja elő a televízión vagy a monitoron megjelenő képet.
Az előbb felsorolt egységek működésének elengedhetetlen feltételei a +5V, -5V, +12V nagyságú tápfeszültségek. Ezeket a Spectrumhoz csatlakoztatott, 220V hálózati feszültségből 9V feszültséget előállító külső tápegység segítségével a belső tápegység állítja elő:

A Spectrum többi hardware-egységével most nem foglalkozunk, mert javításuk nagyobb szakképzettséget igényel, mint amekkorával egy otthoni laikus rendelkezik, ezenkívül ezek rendkívül üzembiztos részei számítógépünknek, meghibásodásuk valószínűsége rendkívül csekély. Ismerkedjünk meg inkább alaposabban az eddig említett részek (Z80, ROM, RAM-ok, ULA) funkcióival illetve működésével.

A Z80A központi egység (IC2)

Mint már említettük, ez a kis 40 lábú chip a Spectrum "lelke". Elődjétől, a Z80 processzortól annyiban különbözik, hogy 4MHz-es órajellel is üzemeltethető (esetünkben az ULA 3.5MHz-es jellel működteti), ami nagyobb sebességet biztosít nekünk. A Z80A-val most nem kívánunk bővebben foglalkozni, csak a javításhoz, illetve mérésekhez elengedhetetlenül szükséges emlékeztetőt adjuk a lábkiosztásról. Akit a téma részletesebben érdekel, utánanézhet a "ZILOG mikroproceszszor családok" (LSI ATSz 1985.) vagy a "ZX Spectrum Hardware alkalmazási segédlet" (Ipari Informatika 1985.) című kiadványokban.

A0-A15
címbuszok. A 16 buszon összesen 65536 (2 a 16. hatványon) rekesz áll rendelkezésre memóriacímzésre.
CLK
itt érkezik az ULA által előállított órajel. Amikor az ULA olyan memóriarészhez kíván hozzáférni, amelyet a Z80 használ, ezt a jelet letiltja, és ameddig dolgozik, addig a processzor áll.
D0-D7
adatbuszok. Ezen a 8 buszon (összesen 256 érték használatával) folyik az input / output adatok forgalma a Z80 és a rendszer - hozzá csatolt - többi egysége között.
5V, GND
Az 5V és 0V lábakon a processzor tápfeszültsége illetve földelése található. Hiányuk esetén a Z80 működésképtelen.
INT
megszakítás kérését közlő input-láb, amely arról tájékoztatja a processzort, hogy valamelyik külső egységnek (pl. valamilyen interface-nek) megszakításra van szüksége. A házi javításhoz nincs rá szükségünk.
NMI
nem maszkolható interupt. Feladatában az INT-hez hasonló input-láb, abban különbözik tőle, hogy az itt érkező megszakítás-kérést a processzor mindig elfogadja. Számunkra most nincs jelentősége.
HALT
output-láb, ami azt jelzi, hogy a processzor valamilyen külső egységről érkező megszakításra vár. Most nincs jelentősége.
MREQ
output-láb, amelyen a processzor memóriától a címbuszon lévő cím engedélyezését kéri. Most nincs jelentősége.
IORQ
output-láb, amelyen a processzor jelzi, hogy a címbusz alsó byte-jón lévő címen input/output műveletet kér. Most nincs jelentősége.
RFSH
output-láb, amelyen a processzor jelzi, hogy a címbuszra a dinamikus memóriákat frissítő címet küldött.
MI output-láb, amely jelzi, hogy a processzor a soron következő utasítást olvassa be.
RESET
input-láb, amelyen keresztül a processzor alaphelyzetbe állítható. Ezt a lábat használjuk a később ismertetésre kerülő reset-kapcsoló beépítésekor.
BUSREQ
input-láb, amelyen külső egységek jelzik a processzornak, hogy a buszait kívánják használni. Most nincs jelentősége.
WAIT
input-láb, amelyen a processzor értesül arról, hogy a rendszer valamelyik egysége még nincs felkészülve az adatforgalomra. Most nincs jelentősége.
BUSACK
output-láb, amelyen a processzor jelzi, hogy a BUSREQ-en érkező kérésnek átadja a buszait. Most nincs jelentősége.
WR output-láb, amelyen a processzor jelzi, hogy az adatbuszon output-adat van.
RD output-láb, amelyen a processzor jelzi, hogy a megcímzett egységről input-adatot kér.

A Z-80 kivezetéseiről egyenlőre ennyit, később még jónéhányszor találkozunk velük...

A ROM-memória (IC5)

A Spectrum operációs rendszere, a Sinclair BASIC a ROM-memóriában található meg. Ez szabja meg a processzornak, hogy milyen módon üzemeljen. Mint azt a neve is jelzi, csak olvasható memória: működését gyárilag határozták meg (ezt a tartalmát a rendszer kikapcsolásakor sem veszti el), a processzor csak olvasni tud belőle, írni nem képes.
A ROM 28 lábára a tápfeszültség, a földelés, 8 adatbusz, a 16-ból 14 címbusz (ezekről már a Z80-nál beszéltünk) és két Z80-ra - is - kapcsolt vonal csatlakozik. Ennek a két vonalnak - javítás szempontjából - számunkra nincs nagy jelentősége, mindössze érdekességképpen jegyeznénk meg, hogy a ROMCS vonalat (kivezetése a user port 258 sávja) az 5V tápfeszültségre kötve a ROM működése leállítható és külső egységről célfeladatra programozott (pl. egy másik operációs rendszerre) ROM- vagy RAM-memóriát üzemeltethetünk. Ilyen dolgot - persze - csak olyan (szak)emberek műveljenek, akik a legteljesebb mértékben tisztában vannak a Spectrum rendszerének működésével.

RAM-memóriák

Ezekben tárolódnak azok az információk (adatok), amelyre a rendszernek szüksége van illetve a Z80 output-ként kiküldött. Mint a nevük is mutatja, a RAM-ok írható és olvasható memóriák, kikapcsoláskor azonban tartalmuk elvész. A RAM-okról elmondható, hogy ha a gépben elektronikai alkatrész hibásodik meg, akkor általában RAM az áldozat.
A 16Kbyte-os alaprészben 8 db 4116 RAM található (IC6-IC13), amelyek a 8 adatbusz egy-egy darabjának állnak a rendelkezésére. A RAM-ok címzését a Z80 alsó 14 címbusza végzi két, egyenként 7 bites LS157 címmultiplexeren (IC3-IC4) keresztül. A 48Kbyte-os memóriakapacitás az említetteken kívül a 8 db 4532 RAM-nak (IC15-IC22) és a hozzájuk tartozó multiplexereknek (IC25-IC26) köszönhető.
A 4116 és 4532 RAM-ok dinamikus memóriák. Ez azt jelenti, hogy a bennük lévő rekeszeket bizonyos időközönként újra meg kell címezni, mert különben a bennük tárolt információ elvész. Ezt a feladatot - mint már említettük - a címbuszokon keresztül a Z80 RFSH vonala végzi.
A RAM-ok működéséről dióhéjban egyenlőre ennyit.

Az ULA (IC1)

Az ULA a Sinclair Research Ltd. által speciálisan a ZX Spectrum számítógéphez készített áramkör. Feladata kulcsfontosságú a számítógép működésében: szabályozza és irányítja a Z80 adatforgalmát, kezeli a perifériákra (magnó, billentyűzet, RAM-ok, video stb.) vonatkozó input / output-ot, előállítja a Z80 működéséhez szükséges 3.5 MHz-es órajelet, stb.
Azokkal a kivezetésekkel, amelyek a javításhoz elengedhetetlenül szükséges, a Z80 ismertetésénél már foglalkoztunk, így most erre nem kerítünk sort.

A Spectrum egységeit ábrázoló rajz

Mérési pontok

A "Házi javítás" című fejezet ezen részében - a ZX Spectrum 3B sorozatú panelének a beültetési rajzán keresztül - néhány fontosabb mérési pontját, illetve a pontokon mérhető feszültségeket adjuk meg.

Tápfeszültség

Számítógépünk háromféle tápfeszültséggel működik, bármelyik hiánya működésképtelenséget okoz. A feszültségek mérésére használhatunk egyszerű digitális feszültségmérőt is, de ha tehetjük, inkább oszcilloszkóppal mérjünk. Az oszcilloszkóppal nemcsak a feszültségek értékét, hanem a "milyenségét" (szúrt, szűretlen, hullámforma stb.) is vizsgálhatjuk. Az alábbiakban ismertetjük az oszcilloszkópon látható információkat a működő számítógépen végzett méréseknél.

Az egyes feszültségeket a következő mérési pontokon vizsgálhatjuk:

Hátsó csatlakozósávon
+5 V
---
3A
+12 V
---
22B
-5 V
---
20B
+ 9V --- 4A Külső tápról bejövő feszültség (szűretlenül kb. 11-14V)

A ZTX 650 transzverter tranzisztor kollektorán lévő jel

A számítógép meghibásodását tekintve igen fontosnak mondható jel a ZTX 650 tranzisztor kollektorán mérhető feszültség. Ez a tranzisztor a Spectrum belső tápegységének a kritikus pontja, működés közben ennek köszönhetjük a számítógép jellegzetes "ciripelő" hangját. A tranzisztor kapcsoló üzemben dolgozik, ő állítja elő a számítógép áramköreinek a +12V-os feszültséget. Ha nem hallunk ciripelő hangot, illetve a jel alakja nem egyezik meg a képen látható jellel, akkor a tranzisztor nem üzemel (nincs sem +12V, sem -5V).

Az órajel (CLOCK)

Digitális szekvenciális rendszerek működésének egyik alapvető feltétele az órajel (CLOCK). A Spectrum órajele nem egy szabványos 3.5 MHz-es folyamatos négyszögjel, amelyet külső órajelgenerátor állít elő, hanem az ULA által engedélyezett illetve letiltott jel. Amikor az ULA letiltja az órajelet, a Z80 leáll. Ilyenkor az ULA fér hozzá a memóriákhoz, kezeli a képernyőt, perifériákat stb. Ez a jel csak a legritkább esetekben hibásodik meg, itt csak azért tartottuk lényegesnek az ismertetését, mert érdekes ez a fent említett megoldás, másrészt felhívja az amatőrök figyelmét arra, hogy digitális rendszerekben sem törvényszerű egy ideális alakú jel. Ilyen "rossz minőségű" órajellel működik jól a gép:

A0 és RFSH (RESET után)


A Z80 vezérlőjelei közül mérjük meg az RFSH frissítési jelet RESET és RESET után. Az RFSH jelet a 25B csatlakozó érintkezőn találhatjuk meg. Tapasztalataink szerint, ha a számítógépben Z80-meghibásodás történt, ez a jel is hibás volt. Ha a processzor normálisan működik, az alábbi jelformát láthatjuk:

Az RFSH után az oszcilloszkóppal lépjünk az A0 címvezetékre. Ha a processzor utasításokat hajt végre (pl. RESET után az operációs rendszer indítását a ROM-ból), rendre megcímezi a memóriát is (használja a címbuszt), tehát a legalsó címvezeték gyakran változik 0 illetve 1 között. Ha a processzor nem változtatja a címvezetéken mérhető jelet, akkor vagy a címbuszon lévő egységek valamelyike (címdekóder, ROM), vagy pedig maga a processzor hibásodott meg. A RESET megnyomásakor az összes címvezeték 0-ra áll be, felengedésekor pedig a következő jel mérhető A0-n:

A melegedéssel kapcsolatos észrevételek

A számítógép áramköreinek melegedése tájékoztatást és segítséget nyújt a meghibásodások gyors felderítésében. Az egyes áramkörök optimális hőmérsékletére nem állnak rendelkezésünkre pontos mérések, csupán észlelések. Kézzel való tapintás esetén észlelt hőmérsékleti értékek is segítséget nyújtanak a gyors hibakereséshez (a hőmérséklet érzékeléséhez a középső ujjunk köröm felöli oldalát használjuk):

A billentyűzetfólia cseréje

Mint már említettük, a leggyakoribb meghibásodás a billentyűzetfólia elhasználódottsága. Ez általában a gép korából adódik, vagy abból, hogy sport- illetve lövöldözős játékokat nem joystick-kel játszunk. A hibajelenség elég könnyen észlelhető: nyomjuk a billentyűzet valamely gombját és nem történik semmi.
Az érintkező fólia-megoldás - olcsósága miatt - még a ZX 81-ről maradt a Spectrumra, csak sérülékenysége miatt egy gumiból készült billentyűzettel lett megvédve (későbbi változatoknál, mint pl. Spectrum + és Spectrum 128K-sorozatok esetében műanyag billentyűzettel találkozunk).
A fólia két különálló műanyag rétegből áll, amelyekre - egymással párhuzamosan - két vezetőréteg van felvezetve. Ha egy billentyűt megnyomunk, a gomb alatt lévő részen a két vezetőréteg érintkezésbe kerül egymással, ami jelzi a számítógépnek, hogy melyik gombot nyomtuk meg.
Ahhoz, hogy a javítást elvégezhessük, szét kell szednünk a számítógépet. Húzzuk ki az összes kábelt, fordítsuk fel a Spectrumot és csavarjuk ki a tok két részét összetartó 5 csavart. Miután visszafordítottuk, óvatosan felemelhetjük a felső részt. A két részt most már csak a fólia két csatlakozó kábele tartja össze, amelyeket óvatosan kihúzva a csatlakozó aljzatukból a gépet teljesen szétszedhetjük.
A fóliával kapcsolatban három hiba léphet fel:

  1. A fólia két csatlakozószalagja közül valamelyik (esetleg mindkettő) nem illeszkedik rendesen a tartóaljzatába vagy kicsúszott belőle. Ez általában, akkor fordul elő, ha gépünket szétszedjük és a szalagokat nem jól helyezzük vissza (ezért célszerű összerakás után a klaviatúra üzemelését rögtön megvizsgálni). Ebben az esetben szerencsénk van, a teendőnk mindössze annyi, hogy szabályosan visszahelyezzük a szalagot az aljzatba.
  2. Az információt közvetítő vezetőréteg valahol megszakadt: vagy megtört a fólia, vagy pedig a vezetőréteg lehorzsolódott valahol. Ha egyszerre több gomb megnyomásakor is jelentkezik a fóliaproblémára utaló hibajelenség, akkor nem a billentyűzet alatt, hanem a csatlakozó szalagon keresendő a hiba. Mivel a fólián lévő vezetőréteg igen vékony, forrasztásra ne is gondoljunk, mert a páka magas hőmérséklete elpárologtatja a réteget és nemhogy nem tüntetjük el a szakadást, de meg is növeljük. Fogjunk inkább egy nagyítót meg egy ollót és vágjuk le a szalagot a szakadás mentén, majd az így megrövidített szalagot helyezzük vissza az aljzatba. Előfordulhat, hogy már nem először nyiszálgatunk le a szalagból és nem ér el az aljzatig. Még ilyenkor sincs baj, csak egy kicsit több munkánk lesz. Először is forrasszuk ki a csatlakozó aljzatokat a nyomtatott áramköri lapból és a szalagot vágjuk le egészen rövidre (3-4 cm). A kiszedett aljzatok forrasztási csúcsaira forrasszunk egy 15-20 cm hosszúságú szalagkábelt, csatlakoztassuk a rövidre vágott fóliaszalagot a helyére és az aljzatot ragasszuk fel valamilyen erős ragasztóval (pl. IS-sel) a billentyűzet hátoldalára. Ezek után meg lehetünk elégedve magunkkal: a fólia legsérülékenyebb részét, a csatlakozó szalagot helyettesítettük egy mindenképpen teherbíróbb szalagkábellel.
    Amennyiben a vezetőréteg szakadása nem a csatlakozó szalagon, hanem a fólia billentyűzet alatt elhelyezkedő részén következett be, sajnos nem tudunk mit tenni, ki kell cserélnünk egy újra.
  3. A két vezetőréteg "összeégett" (ez szétszedés után nagyon szépen látszik: a nem működő billentyűnek megfelelő pont körül a fólia elszíneződött, olyan, mintha egy kis ragasztó került volna a két réteg közé). Ez csak a billentyűzet alatt lévő fóliarészen következik be, sajnos új fóliát kell vennünk.

Ha a hibajelenséget csak a fólia kicserélésével tudjuk megoldani, első lépésünk a billentyűzetsablon (a gombokat körülfogó fémlemez) eltávolítása, amely - sorozattól függően - kétoldalas ragasztószalaggal vagy hajlított fémfülekkel van a tok felső részére ráerősítve (ez a művelet általában a fémlemez elgörbülését eredményezi, amit majd összeszerelésnél természetesen visszagörbítünk). A fémlemez eltávolítása után a fólia cseréje már nem okozhat gondot senkinek. Összeszereléskor a fémlemezt ragasztószalaggal rögzítsük vissza (ne ragasztóval, mert legközelebb nem tudjuk leszedni).
Fontos megjegyzés: A tok két részének összeillesztésekor mindig ellenőrizzük, hogy a fólia csatlakozószalagjai nem akadtak-e be a panel kiálló részeibe, mert ha igen, akkor hamarosan újra eljátszhatjuk ezt a műsort.
Végül megjegyeznénk, hogy normál (gumibillentyűs) Spectrumhoz általában kapható fólia a szakboltokban, 750-1200 Ft-os áron.

Hibakeresés és hibajavítás

A következőkben egy hibakeresési algoritmus segítségével (ami egyébként pimasz módon tegezi a Kedves Olvasót) áttekintjük Spectrumunk betegségének kórokozóit és egyben a védekezést is ellenük. Az algoritmus használata egyszerű: ha a kérdésre igen a válasz, a jobb oldali szöveget olvassuk, ha pedig nem, akkor lépjünk tovább lefelé. Amennyiben az algoritmus "rájött", hogy mi a gépünk baja, meghatározza, hogy az algoritmus után található hibajavítási útmutatóból melyik pontot kell figyelembe vennünk, ha pedig csak egyszerű cseréről van szó, akkor közli, hogy a - mellékelt beültetési rajz figyelembevételével - melyik alkatrészt kell cserélnünk.

Hibakeresés
Jól üzemel a géped? Akkor nem értem, hogy mit akarsz egy hibakereső algoritmustól
Kapcsold ki a gépet és szedj le róla minden külső egységet, majd kapcsold be újra  
Most már jól működik a gép? Valamilyen interface rendellenességgel volt dolgod (ezekkel majd talán máskor foglalkozunk)
Kapcsold ki és az előbbi részben említett módon szedd szét a gépet. Most lapozz hátra a beültetési rajzhoz. Ha foglalatban vannak, szedd ki a következő jelű IC-ket:

IC 15,16...22 (32K 4532-es RAM)
IC 23,24...26 (a RAM-okhoz tartozó címdekóderek)

Ezzel a gépet 48Kbyte-osról 16K-sra alakítottuk át. Kapcsold be a gépet.

 
Most működik a gép? A 48Kbyte-os részben van a hiba. Ugorj előre a "Kaptál copyright üzenetet?" kérdésig!
Hallasz zümmögő hangot? Belső tápegység hiba van, lásd a "Hibajavítás" 1. pontját!
Ellenőrizd a KÜLSŐ tápegységet! Mozgasd meg a 9V/DC csatlakozóját!  
El van törve a huzal? Cseréld ki. Ha hibajelenség a javítás után nem jelentkezik, akkor STOP. További jó munkát!
Mérd meg a 9V-os feszültséget (terheletlenül kb. 11-14V-ot fogsz mérni).  
Megvan a 9V stabilan? Belső tápegység hiba van. Lásd a "Hibajavítás" 1. pontját!
Szedd szét a külső tápegységet!  
Látsz rajta égett (zárlatos) diódát? Cseréld ki mind a 4 db-ot 1A-es diódára. Ha további hibajelenség nincs, akkor STOP.
A szűrőkondenzátor sérült? Cseréld ki (1000-2000 mikroF/25V). Ha további hibajelenség nincs, akkor STOP.
Mérd meg közvetlenül a transzformátor nyers feszültségét (Vigyázz, 220V!)!  
A transzformátor tekercsei épek? Vizsgáld meg a hálózati csatlakozó aljzatot, illetve a hosszabítódat, lehet, hogy hibás. STOP.
Új tápegységet kell venned! STOP  
 
Kaptál copyright üzenetet? Teszteld le a 16K-t a legmagasabb RAM-cím kiolvasásával (32767). Ha ez jó, kapcsold ki a gépet, tedd vissza a javítás elején kivett +32K RAM-okat és ugorj a "Hibajavítás" 4. pontjáig, a RAM-tesztig.
A képernyőn nagy fekete téglalap van? Z80 vagy ULA hiba, lásd a "Hibajavítás" 2. pontját.
Villogó attribútumokat látsz? RAM hiba, ellenőrizzük a melegedést, cím és adatvezetékeket, "Hibajavítás" 3. pont de nem 4116 csere)
Szemcsés a kép? Modulátor video IC (IC14) hiba, cseréld ki. Ha több hibajelenség nincs, akkor STOP.
Sávos a képernyő? A címdekóder hibája (IC3-IC4), cseréld ki.
ULA hiba, "Hibajavítás" 5. pont.  

Hibajavítás

1. Belső tápegység hiba

A hiba pontos behatárolásához el kell végeznünk néhány mérést. Mérjük meg a 9V-ot és a +5V-ot a 7805 tápstabilizátor lábain, illetve a +12V-ot és a -5V-ot a hátsó csatlakozó sávon.

2. Z80, ULA vagy ROM hiba

Itt egyelőre még csak elképzeléseink vannak a hiba mibenlétéről. A pontos behatároláshoz el kell végeznünk néhány manővert:
Zárjuk egy pillanatra rövidre a Z80 (IC2) RESET (26) és GND (29) lábait, ezzel újraindítjuk a mikroprocesszort. Figyeljük a képernyőt.

RESET alatt:

A0-A15 = 0
RFSH    = 1 (nincs frissítés)
MI           = 1
RD         = 1
WR        = 1
D0-D7   = az ábra szerint

Miután kiforrasztottuk a processzort, forrasszunk be a helyére egy jó minőségű 40 lábú foglalatot (későbbi Z80 cseréknél a forrasztgatás elkerülésére), és tegyünk bele egy új, biztosan működő Z80-at. Ha kapunk copyright üzenetet, olvassuk ki a gép által érzékelt legmagasabb memóriacímet, hogy RAM-hiba nem áll-e fenn. Ha ez jó, további jó munkát, ha nem, akkor cseréljünk RAM-ot a 3. pont szerint.
Ha processzorcsere után sem kapunk copyright üzenetet, kérjünk kölcsön egy ismerősünktől egy működő Spectrum-ot, vegyük ki belőle az ULA-t (IC1),és tegyük be a saját gépünkbe. Ha most már van copyright üzenet, akkor baj van, mert valószínűleg az ULA-nk ment tönkre. Ez minden bajok legrosszabbika: hazai beszerzése szinte egyenlő a lehetetlennel. Mindenesetre sok szerencsét kívánunk a vásárlási próbálkozásokhoz! (Arra nem is merünk gondolni, hogy valaki van olyan pimasz, hogy a kölcsönkért gépbe a saját ULA-ját teszi vissza...)
Ha a barátunk Spectrum-jának az ULA-jával sem sikerült copyright feliratot előcsalogatnunk, akkor ellenőrizzük a ROM-ot (IC5) melegedés, adat- és címvezetékek, illetve CS ás OE tekintetében.
Mivel ULA-ügyben már úgyis kéznél van, tegyük be a gépünkbe a barátunk Spectrum-jának ROM-ját. Ha a gépünk ezután már üzemel, akkor a ROM-unk volt hibás: készítenünk vagy vennünk kell egy olyan 27128-as EPROM-ot, amelybe a Spectrum operációs rendszere van beleégetve.
Ha a gépünk még ezután sem működik, vizsgáljunk meg mindent, amit eddig javítottunk a gépen, keressünk műhibákat (szétfolyt a cin forrasztás közben meg hasonlók) és ha még ezután sem találtuk meg a hiba forrását, akkor tegyük bele egy szatyorba a gépet és vigyük szervizbe, mert a hiba bonyolultabb, összetettebb annál, hogy otthon kijavíthatnánk.

3. 4116 RAM (IC 6-13) hiba

Forrasszuk ki a 8 db 4116-os IC-t (IC 6-13) és tisztítsuk meg a nyomtatott áramkört a forrasztási helyeken. Forrasszunk be az IC13 helyére foglalatot, a többi IC helyére pedig 7 db előzőleg vásárolt (tehát biztosan jó) RAM-ot. Forrasztás után feltétlenül ellenőrizzük a forrasztásokat, mivel a forrasztandó pontok igen közel vannak egymáshoz és könnyen összefolyhat a cin.
A foglalatba tegyünk be egyet az előzőleg kiforrasztott, "rossz"-nak minősített RAM-okból. Ha csere után jól működik a számítógép, akkor a foglalatban levő IC is jó. Ezzel a módszerrel teszteljük végig az összes "rossz" RAM-ot. Ténylegesen - általában - 1-3 db RAM-ot fogunk hibásnak találni. Ezeket helyezzük el az őket megillető helyen (a kukában), a többit meg tegyük a fiókunkba, jól fognak még jönni.
Fennáll annak a veszélye, hogy RAM-hibák egyéb alkatrészek (Z80, ULA stb.) meghibásodásával párhuzamosan lépnek fel és a jó RAM-ok is rossznak mutatkoznak a tesztelésnél. Ezt a buktatót könnyen elkerülhetjük úgy, hogy a fentebb leírt RAM-üzemtesztet egy másik, jól üzemelő gépen végezzük.
Ha a javítás után kaptunk copyright üzenetet, teszteljük a RAM-okat a 4. pont szerint. Ha copyright üzenetet nem kaptunk, de a RAM-ok cseréje után a képernyő megváltozik, akkor járjuk végig újra a hibakeresést a "Kaptál copyright üzenetet?" kérdéstől és végezzük el a további alkatrészcseréket az algoritmus utasításai szerint.
Ha nincs copyright üzenet és a képernyő sem változott, ellenőrizzük a belső tápegységet (ld. 1. pont) és ha itt sem találunk rendellenességet, akkor a Z80 ment tönkre, ld. 2. pont.

4. RAM-teszt

Olvassuk ki a - gép által "látott" - legmagasabb memóriacímet a

LET A=PEEK 23732+256*PEEK 23733: PRINT A

paranccsal. Ha ez jó (48K-s gépnél 65535, 16K-snál 32767), gépünk hibátlanul működik, további jó munkát kívánunk.
Ha 'A' értéke nem annyi, mint amennyinek lennie kéne, el kell döntenünk, hogy a hibás RAM a 16K-s vagy a +32K-s részben van. Ha 'A' értéke kisebb, mint 32767, akkor a 4116 RAM-ok (IC6-13), ha nagyobb, akkor a 4532 RAM-ok (IC15-22) között kell a hibát keresnünk.
Mivel 'A' értéke a legmagasabb érvényes címet tartalmazza, nyilvánvaló, hogy az első hibás cím 'A+1'. Ahhoz, hogy megtaláljuk azt a RAM-ot, amelyik ezt a címet tartalmazza, gépelgetnünk kell egy kicsit:

POKE A+1,170: PRINT PEEK A+1

ha PEEK A+1=170, akkor

POKE A+1,255: PRINT PEEK A+1

A PRINT által visszahívott számot alakítsuk át binárisra (170=BIN 10101010, 255=BIN 11111111) és amelyik biten a visszaolvasott szám különbözik a beírttól, az határozza meg a hibás RAM-ot, a következőképpen:

7.
6.
5.
4.
3.
2.
1.
0.
IC22
IC21
IC20
IC19
IC18
IC17
IC16
IC15

Tehát ha pl. 255 beírására 253-at kapunk vissza (BIN 11111101), akkor - mivel az eltérés az 1. biten van - a hibás cím az IC16 RAM-ban van, ezt kell cserélnünk.
Miután a cserét elvégeztük, olvassuk ki a legmagasabb memóriacímet, mert előfordulhat, hogy nem csak egy hibás RAM van (a fenti módszerrel egyszerre csak egy rossz RAM-ot tudunk behatárolni).
Egyszerre általában 1-3 RAM-ot fogunk hibásnak találni.

Vissza a hardware oldalhoz

Vissza a könyvekhez