fredag 23. mars 2018

Råtten hukommelse i størrelse XL!

Etter å ha snust på Atari som en alternativ og naturlig fornybar kilde for mine arkaiske spillegleder så gikk det som ting går for meg for tiden, jeg la inn et bud på en altfor fristende ebay-pakke. Etter noen nervepirrende dager så endte jeg opp med en Atari 800XL av den typen som fungerte noen tiår tilbake, dessverre hadde den blitt testet før den ble lagt ut for salg!


Problemet med gamle strømforsyninger er at de, i likhet med de dødsfellene man får kjøpt direkte fra Kina for tiden, mangler alt av antydninger til sikringer. Kondensatorene, spesielt de av lavere kvalitet, som de batteriene de er starter å lekke etter håndfull år. Plutselig og før man vet ordet av det, så har man en strømforsyning som produserer spenning langt over det elektronikken er i stand til å håndtere - skaden skjer raskt, gjerne i løpet av noen få minutter. I tvil; aldri plugg inn aldrende strømforsyninger før man eventuelt har fått vurdert hvorvidt de fortsatt er stabile og innenfor spesifikasjonene!

"Fordelen" med testingen selgeren gjør før salg, om man i så fall kan kalle det en fordel, er at den siste gangen maskinen blir testet gjerne også er siste gangen den fungerte. De skjøreste av komponentene er de som ryker først, ofte så er dette RAM-brikkene og deretter eventuelle spesialbrikker utelukkende produsert for maskinen (mao. av typen vanskelig å få tak i, dyre i innkjøp).


En av de fine tingene med denne Atari-en er at hvis du ser på sammenlignings-reklamen mellom denne og en Commodore 64, se En Porsche snubler frem til målstreken, er at denne maskinen visstnok kommer med en innebygd selvtest (se reklamen ovenfor til venstre). Fornuftig nok så responderer den med en minnetest, da vet man i det minste hvor man skal starte - må visst fjerne noe råtten hukommelse fra maskinen!

Likevel, for å fikse minnefeilene så må man finne veien inn i maskinen først... noe som enklere sagt enn gjort - Atari har gjort en veldig god jobb på få maskinen til å virke solid og ikke en tiendedels-millimeter for mye plass i noen retning. Tastaturet er festet til hovedkortet med mylar, denne fjernes ved å ta et godt tak på begge sider av den og dra den forsiktig ut. Nå over til den lette delen, trodde jeg; hovedkortet er skrudd sammen med RF-skjold på begge sider, disse delene er deretter kilt nedi den nedre delen av kabinettet (i tillegg til to skruer). Kom noen skikkelige gloser utav meg før jeg fikk separert disse delene - hemmeligheten er å løfte den nederste delen av skjoldet litt ut slik at den kommer ovenfor skrufestene, deretter roteres hele sulamitten mot klokken mens man presser mot bakveggen.

Med en absurd mengde skruer fjernet, alle dokumentert med kameraet underveis for å ha noe håp om å kunne sette dem tilbake der de hører hjemme. Ser ut til at hovedkortet i maskinen daterer maskin til 1984, revisjon D, så maskinen var nok en av dem som ville vært tilgjengelig etter priskuttene som kom mot slutten av levetiden til maskinen. Det fins en helt annen utgave av disse maskinene, som oftest er de omtalt som 800XLF for å skille dem fra hverandre selv om kabinettene og merkingene på dem er helt identiske - disse har en helt annen layout på hovedkortet og var på mange måter en tidlig forgjenger for de senere XE-maskinene.

Nå som man det grunnleggende ute av veien, så er tiden kommet for å angripe minneproblemene. Man skulle sikkert tro at minnetesten som utføres automatisk skulle være i stand til å si noe om nøyaktig hva som er problemet, men dessverre så sier det ingenting om hvilken brikke det er - grunnen til dette er at hver brikke er på 64Kb. Den lille "b"-en her betyr at de 8 brikkene er ansvarlig for sin egen enkelte bit av hver eneste byte maskinen har, så dersom en enkelt brikke feiler så er det ingen deler av minnet som fungerer etterpå - noe den innebygde programvaren selvsagt burde vært i stand til å si noe om, men antar de glemte å den funksjonelle delen av programvaren!

Med andre ord så er vi overlatt til noen kalkulerte gjetninger for å finne brikken med feil, som oftest med en antagelse om at kun er en enkelt brikke som har feilet i systemet. Første test er å prøve å sette fingeren på midten av brikke for å vurdere hvorvidt noen av dem er varmere enn de andre, kunne dessverre ikke kjenne noen forskjeller på noen av dem så det hjalp lite i min bok.

Den neste tingen jeg prøvde ut var piggybacking (eksempel nedenfor til venstre), noe som betyr at man plasserer nytt minne oppå brikkene for å se hvorvidt maskinen plutselig gjør noe annet - både godt og dårlig skal visstnok bety at man er i nærheten. Underveis så tar man igjen bilde av hvert steg  og tilsvarende resultat for å holde tellingen.


Hoppet litt over den delen med valg av minne, hele den biten om hvor jeg i så fall fant tilgjengelige brikker av typen MT4264-15. Den korte forklaringen er at det gjør man ikke og hvis man gjør det så er det en grunn til at selgeren prøver å bli kvitt brikkene, minnebrikkene Atari brukte på disse maskinen var av notorisk horribel kvalitet - funksjonene som 4264-brikkene tilbyr over de ordinære 4164-brikker brukes ikke en gang av maskinen så hvorfor gjøre livet vanskelig for seg selv? Referer til listen på MinusZeroDegrees.net, bestill en 10-pakning av hva enn som du får tak i til en pris du kan leve med. Dette er den samme typen benyttes ved reparering av de øvre 32K av minnet på en ZX Spectrum eller på de fleste variantene av Commodore 64 så hvis du har flere maskiner er det like godt å ha liggende 2-3 dusin av dem for fremtidige reparasjoner (kjøp dem med hastighet på 150ns, en ekstra håndfull på 120ns er heller ikke å forakte)!

I utgangspunktet så var jeg litt skeptisk til maskinen ettersom den siste brikken allerede har vært byttet ut, så tok veldig lang tid på å gradvis teste ut hver brikke ved hjelp av prosedyren allerede beskrevet. Tok faktisk så pass lang tid at jeg begynte å tvile på metodene, gikk gjennom alt brikker og det eneste jeg kunne være sikker på var at alle kombinasjoner kun førte til forverringer slik den avbildet ovenfor til høyre eventuelt så fikk jeg kun svart skjerm.

Gitt at hver brikke kun håndterer en enkelt bit og har en enkelt bit innkommende, hvorfor sammenlignet jeg bare ikke disse signalene? Vel, det hadde sikkert vært en god idé dersom jeg hadde hatt tilgang til et oscilloskop med et minimum av to kanaler. Jeg har et oscilloskop av den typen som man lodder sammen selv, et DSO-138 - disse er grei for å se at ting foregår, men hjelper deg lite når det kommer til verifisering av nøyaktig hva som foregår. Tror jeg ønsker meg et oscilloskop, og sikkert også den fysiske plassen man trenger for å eie et av dem.

Til slutt ga jeg egentlig litt troen på nevnte metoder for å finne feilene, mer eller mindre fordi jeg mest trolig har langt mer enn en brikke med feil - med tanke på at de også var av et relativt råttent merke, så var vi egentlig kommet til det punktet der man bare klipper bort en og en av dem for så å teste maskinen innimellom for å se at ting ikke forverrer seg etter å ha montert ny brikke (socket først selvsagt). Uten motorisert tinnsuger, så med mindre man er en verdensmester i bruk av manuell avlodding av komponenter, så vil jeg alltid anbefale å rett og slett klippe bort komponenter som er enkelt og billig å erstatte - langt viktigere å unngå eventuell skada på PCB-en!


Erstatt en og en av brikkene, inntil maskinen magisk nok begynner å fungere - på denne så fikk jeg ikke maskinen til å fungere inntil jeg hadde erstattet hele seks av dem. Statistisk sett så var det sikkert en eller to som ble fjernet uten at de reelt sett hadde en feil på seg, men det betyr likevel at minimum 4 av dem var fullstendig råtne så regner det som en seier i min bok! Anbefaler også å se ut av vinduet relativt jevnlig, naturlig dagslys bakom en PCB fungerer overraskende godt for å se etter eventuelle skader på kortet - sjekk alle kandidater for rot med multimeteret satt til kontinuitet. Etter lodding sjekker du at pin-er som ikke er ment å være koblet sammen ikke er blitt det, dette kan fort bli vanskelig dersom man lodder på mer enn krets mellom kontroll!

Hvordan jeg visste at jeg hadde funnet alle feilene? Vel, maskinen fortalte meg det rimelig enkelt ved å vise meg den vakre blå READY-skjermen avbildet nedenfor! I og med at jeg nå kun satt igjen med 2 MT-brikker igjen, så røsket jeg dem så forsiktig som jeg kunne ut av maskinen når jeg først var i gang. På en Atari så regner man uansett sånt som proaktivt vedlikehold!


Jubler over hele linja, det som i realiteten tok relativt kort tid å beskrive tok meg noe slikt som en ettermiddag, mesteparten av natten og den påfølgende morgenen på å få i stand. Sånn er det første gangen man fikler med noe nytt, premien for alt er uansett en fungerende Atari og en Donkey Kong-cartridge man kan plugge inn i den.

Helt til samboeren min selvsagt påpekte at tittelskjermen var grønn og at Mario, den lille jævelen umulig kunne ha vurdert lilla underbukser på sin første runde over skjermen. Jeg elsker Atari... de lagde tydeligvis den dyreste dritten man overhodet kunne klare å oppdrive den gangen da!

Ingen kommentarer:

Legg inn en kommentar