Ik kom door mijn retro computer verzamelaar website veel mensen tegen bij de zolderopruiming hun spullen tegenkomen die ze weg gaan doen, omdat het ligt te verstoffen. Die prachtige, oude computers brengen mooie herinneringen terug van de tijd dat ze met die computers zijn opgegroeid. De meeste mensen hebben dan ook diepgaande kennis van systemen, omdat ze aan de wieg van de ontwikkelingen hebben gestaan. Nu viel het me op, dat die mensen vaker ook kennis hebben die wellicht eens verloren kan gaan. Zo heb ik wel eens met iemand gesproken, die het hadden over bepaalde IBM mini computers, waar nauwelijks iets van te vinden is op internet. Daarom wil ik een initiatief starten dat mensen over hun memoires schrijven (dan dat mag zo uitgebreid als ze zelf willen) en dat ik deze hier ga publiceren op deze website. Ik ben altijd voor een community van gebruikers, of het nu gaat over computers of synthesizers wat ook een van mijn favoriete onderwerpen is. Als je zelf ook een verhaal hebt; stuur die gerust naar mij toe. Als je foto’s hebt die bij het verhaal horen, dan stuur deze zeker mee. Zo kan iedereen meegenieten van die geweldige tijd van de computer revolutie.
De eerste meneer die graag een aantal herinneringen met ons wilt delen is Hans Christen.
Hans was een fanatieke computer enthousiasteling, die computers van de transistor af aan bouwde. Lees zijn verhaal hieronder.
“Computers? Wat was dat?
Ergens rond 1980, wilde ik ook wel eens weten wat een computer nu precies was.
Ik kocht een setje van Elektuur, de Junior computer, een printje van 20×10 cm met een zakje onderdelen. Hexadecimaal LED-display, 4 blokjes voor het adres en 2 voor de data, een 6502 8-bits processor en 1k ram, je leest het goed, 1000 bytes! Dat kostte toen zo’n 400 gulden…
Dit werd in de loop der jaren uitgebreid met 8k geheugenkaarten, cassette interface, monitor, etc.
Na een tijd met het rode hexadecimale display gewerkt te hebben en langzaam begon te begrijpen wat een computer nu eigenlijk inhield wilde ik natuurlijk meer.
Een van de uitbreidingen van Elektuur was een interface om een klein TV’tje aan te sluiten met een coax kabel.
Dat vond ik uiteindelijk natuurlijk ook weer niet genoeg, ik had een prachtige monitor gezien bij DIL elektronica in Rotterdam.
Groene puntjes, 512×256, kostte meer dan 500 gulden.
Een inbouwmonitor, elke keer als ik in de winkel was kon ik mijn ogen er niet vanaf houden.
Het lijkt op de gevoelens die kinderen kunnen hebben in de speelgoedwinkels.
Eerst moest ik dan hardware hebben om dat aan te sturen.
Zo stuitte ik op een advertentie in het HCC blad:
Harm Geert Muller gaf uitkomst, de man van de schaakcomputer in een lucifersdoosje.
Hij had een print voor een grafische kaart gemaakt, prachtig doorgemetalliseerd…
Kostte wel weer een paar honderd euro en nu moest ik ook nog de onderdelen erbij zoeken en bestellen bij DIL.
Maar eenmaal in elkaar gesoldeerd ben je er nog niet.
Ten eerste moest ik de juiste verbindingen maken met de VIA,
Dat is een interface chip op het “moederbord”, niet te vergelijken met de huidige moederborden, maar dat was zeker een moederbord in de ware zin des woord.
Je hebt gesoldeerd en aangesloten, zo goed als je kunt,
Dan moet er nog interactie zijn, dat gaat niet vanzelf!
Je maakt dan een programmaatje, in assembler, hoe kan het ook anders?, en na ettelijke pogingen zag ik ineens een groen puntje op de monitor!
Dus toch alle draden goed aangesloten!
De vreugde die dat teweeg bracht is bijna niet te beschrijven…”
Na de euforie van de punt op een monitor wilde ik natuurlijk meer. Ik ging routines schrijven voor een lijn en een cirkel bijvoorbeeld. Wat betreft de character set, het alfabet zeg maar, had ik hulp van Harm Geert geloof ik.
Hoe dat zat weet ik niet meer precies, ik denk dat hij een tabel meegestuurd had hoe je
letters zou kunnen maken. Uiteindelijk heb ik denk ik gewoon alle plaatjes van de letters gemaakt en die
toegewezen aan een ASCCI code.
Trouwens, elke keer als ik weer meer dingen aansloot moest de transformator voor de voeding ook groter worden. Hetgeen ik braaf deed.
Ik was vaste gast op de HCC beurs in Utrecht, en daar kocht ik voor het enorme bedrag van 800 gulden een Itho printer, een professionele matrix printer in die tijd.
Begin van de week werd ie afgeleverd en daar sta je dan. Ik had natuurlijk geen parallelle printer aansluiting op dat gedrocht van mij…
Alleen een gedetailleerd schema van de printer connector en de kennis van mij VIA chip en hoe ik die moest aansturen.
Het mag geen verwondering wekken dat na drie dagen prutsen en volkomen stilte, toen het ding toch ineens begon te ratelen de tranen mij in de ogen schoten en ik een rondedansje uitvoerde.
Ik kon nu op een scherm kijken, en printen. Maar wat nu als ik een programma intypte en nadat de spanning weg was het ingetypte ook weg was?
Opslag!
De opslag!
In het begin was die er helemaal niet, als ik het ding uitzette was alles weg. Althans het werkgeheugen.
Daarnaast was het Operating system opgeslagen in een zogenaamde eprom. Je moet ergens beginnen met iets dat altijd blijft, zoals bv een BIOS op moderne moederborden.
Meest gebruikelijk in die tijd waren 8, 16 of 32 kilobyte eproms. Dit waren chips die met een speciale eprom-programmer te programmeren waren en met een lading UV licht weer te wissen waren.
Voor jullie in 2017 niet meer voor te stellen, nu de terrabytes je om de oren vliegen. Van megabytes konden wij alleen nog dromen.
De eprom-programmer was weer een aparte print, ook die had ik natuurlijk. Daarmee kon ik wijzigingen aanbrengen in het OS.
Of ook nieuwe dingen toevoegen. Zoals de 8k basic van Bill Gates.
Ik had in de opstart een sprong mogelijk gemaakt naar die Basic. Ik had een dikke UV lamp in een schoenendoos gemonteerd en als ik daar eproms in legde waren die na verloop van tijd weer “schoon”. Uiteindelijk was er de cassetteinterface van Elektuur.
Ik heb op grond van de bestaande hardware eigen routines gemaakt die veel sneller waren dan die van Elektuur.
Iedereen kent het geluid nog wel, computers met audioopslag…Prrrrrrbzzzzzzzzzzscccccccccccccccccccccrrr…..
De computer, wat doe je er uiteindelijk mee?…
Nu mijn Junior min of meer een Senior was geworden rijst de vraag:
Kan je er ook wat mee?
Ik kon nu mijn gegevens opslaan op cassette, op een scherm kijken en dat was ik nog vergeten te vertellen: het toetsenbord! Ook dat ding kostte toen ettelijke honderden guldens en leverde hetzelfde probleem op als de printer en de grafische kaart.
Bij het totale gebrek aan standaard verbindingen moesten er allerlei verbindingen met de magische chip 6522 gemaakt worden. Vandaar ook die wirwar van draden.
Aan de ingang van de 6522 kon je allerlei signalen, bv van een toetsenbord, hangen; de uitgang van de chip bestond uit ettelijke adressen die voor de processor toegankelijk waren en door middel van een programma kon dus de data aldaar geïnterpreteerd en verwerkt worden.
Nadat ik de grafische kaart had heb ik nog wat geknutseld met graphics, bv een maanlandertje dat daalde op een oppervlak.
Het dochtertje van een vriend was totaal niet onder de indruk, en terecht…
Vergeleken met virtuoze tekenfilms was dit totaal niet indrukwekkend!
De eerste jaren bestonden voornamelijk uit het knutselen als hobby “an sich” en zelf verbaasd staan van wat er eventueel mogelijk zou kunnen zijn. In die jaren was ook de opkomst van de schaakprogramma’s gaande. Aangezien ik zelf geïnteresseerd in schaken was diende zich een eventuele toepassing van mijn computer aan.
Echter, daar schaken een zeer gecompliceerd spel is, koos ik het spel Reversi om te proberen dat te programmeren.
Daarnaast kon ik ook brieven schrijven en door middel van de Itho afdrukken.
Ik pijnig nu mijn oude hersens om te bedenken hoe ik dat deed, want van een tekstverwerker was nog geen sprake.
Wat is eigenlijk programmeren?
Om te programmeren had ik een programma geheten “Micro-ADE”. Micro-ADE was een assembler voor de 6502 processor.
Je moet je voorstellen, om een processor te programmeren moet je een lijst met codes invoeren, elke code staat voor een specifieke operatie. De 6502 had 3 zogenaamde registers, X, Y, en A geheten de accumulator.
A was de meest belangrijke. Een instructie is bijvoorbeeld load accumulator with #03
In machinetaal is dat A903, als ik mij goed herinner. Met een assembler wordt het iets begrijpelijker om in te voeren,
Je schrijft dan LDA #03, waarbij LDA staat voor “Load accumulator”,
Nog een monnikenwerk, maar het wordt iets overzichtelijker.
Het grappige is dat je door middel van een enorme lijst van allerlei operaties met data, van accu naar geheugen, 1 optellen, van X naar Y etc. uiteindelijk tot een voor gewone mensen begrijpelijk resultaat kan komen.
Nog grappiger is dat een mens, de programmeur, zelf weer gefascineerd kan raken door allerlei slimmigheden die je in een “domme” methode kan stoppen. De menselijke hersenen werken heel anders, bijvoorbeeld met heel snelle patroonherkenning.
Computers werken in feite alleen maar met nullen en enen, 5 volt en nul volt, en daaruit volgend met getallen, terwijl neuronen in de hersenen vele verbindingen hebben en daardoor verfijnder reacties mogelijk zijn dan alleen 0 en 1.
Bijvoorbeeld, een bepaalde zenuwcel zal zelf alleen maar afvuren als hij van 7 kanten geprikkeld wordt.
Zoals gewoonlijk dwaal ik weer af…
In het volgende meer over mijn pogingen Reversi te programmeren.
Programmeren, een heidense klus…
Het was de tijd dat ik zeer gefascineerd was door de pogingen schaakcomputers te fabriceren.
Ik heb nog steeds een collectors item in bezit; De Chess Challenger 10.
Eigenlijk wilde ik een schaakprogramma maken, maar ik realiseerde mij dat dit zo moeilijk was, dat ik koos voor een simpeler spel: Reversie.
Het principe bleef gelijk.
Het definiëren van het bord.
Het maken van een zettengenerator en dan het moeilijkste, het zoekprogramma in de boom van mogelijkheden.
Ik had voorbeelden gezien in een hogere programmeertaal, maar ik deed alles in assembler en dat heeft mij vele hoofdbrekens gekost.
Brute force kreeg ik voor elkaar, dat betekent dat elke mogelijke zet onderzocht wordt.
De volgende stap was het alpha beta algoritme,
Als ergens in de boom een hoge, of heel lage, waarde ontdekt werd, dan kon je die waarde gebruiken om in de boom te kappen.
Uiteindelijk heb ik dat principe kunnen implementeren.
Ook tijdsindeling en rekenen in de tijd van de tegenstander had ik erin verwerkt.
Uiteindelijk deed ik mee met het kampioenschap Reversi van de HCC.
Ik verloor een partij door een bug, de tijdsindeling…
Een andere partij ging verloren door onbekende oorzaken. Een derde werd gewonnen.
De evaluatie functie is zeer belangrijk en ook moeilijk te doorgronden wat betreft het uiteindelijke resultaat.
Ik heb geëxperimenteerd met randvelden en hoekpunten.
Zoals bij schaken de waarde van loper, paard, vrijpion etc.
Ik kwam met mijn programma tot 5 a 6 ply.
Een 8bits 6502 op 2 Mhz.
Ongelooflijk wat Stockfish nu presteert als schaakengine!!