id’s Doom (1993)

In 1993 was een gemiddelde IBM PC compatible Microsoft DOS thuiscomputer voorzien van een Intel 80386 processor met een VGA videokaart met een resolutie van zo’n 640 x 480 pixels. Geluid kwam via een PC luidspreker in beep geluiden, of vanuit een Sound Blaster of Gravis geluidskaart via stereo luidsprekers. Het geheel was in een mini tower behuizing verpakt, meestal een beige metalen doos met een kunststof voorzijde en een vaak luid loeiende ventilator. ‘Achter de PC zitten’ werd een geaccepteerde hobby en iedere nieuwe ontwikkeling op computergebied werd omarmd door een steeds grotere schare computergebruikers. Het was in die tijd dat John Carmack en John Romero onder de naam id Software met een klein team programmeurs naam maakten met Commander Keen, Wolfenstein 3D, en hun meesterwerk, Doom.

id Software was het bedrijf van John Carmack en John Romero, twee die-hard spelontwikkelaars die elkaar hadden ontmoet terwijl ze werkten bij Softdisk. Softdisk had een abonnementsdienst waar de leden iedere maand een computerdisk ontvingen voor hun Apple II of PC computer met software ontwikkeld door de programmeurs van Softdisk. Via verschillende, maar vergelijkbare routes waren Carmack en Romero bij Softdisk komen werken. De Johns waren hier een speciale afdeling PC games begonnen waar ze ontdekten dat ze, samen met twee andere Softdisk collega’s Tom Hall en Adrian Carmack, alles in huis hadden om een zelfstandig game-ontwikkelend bedrijf te beginnen, hetgeen geschiedde. De ontstaansgeschiedenis van id Software wordt mooi verwoord in het boek Masters of Doom.

Masters of Doom is het verhaal van de ‘Lennon en McCartney van videogames’: John Carmack en John Romero. Samen heersten ze over het grote bedrijfsleven en leefden ze een unieke en gewaagde American Dream, waarbij ze de gebroken gezinnen van hun jeugd ontvluchtten om de meest notoir succesvolle gamefranchises in de geschiedenis te produceren – Doom en Quake. Een verhaal over vriendschap en verraad, handel en kunstenaarschap en een krachtig en meelevend verslag van hoe het is om jong, gedreven en enorm creatief te zijn.” Voor een ieder geïnteresseerd in Doom en het ontstaan van een succesvol softwarebedrijf en de invulling van een ‘American Dream’ door twee typische underdogs is het boek een absolute aanrader. Ga voor de papieren versie: de eBook zit vol opmaakfouten.

De schrijver van het gezelschap, Tom Hall, vertaalde de spelideeën van de anderen in fantastische achtergrondverhalen, die bijvoorbeeld Doom een zeker extra cachet meegaf:

De Union Aerospace Corporation heeft geëxperimenteerd met teleportatietechnologie op de Marsmanen Phobos en Deimos. Na eerste succesvolle pogingen gaat er echter iets mis. Het lijkt erop dat de wetenschappers van UAC een poort naar de hel hebben geopend. De basis van Phobos wordt overspoeld met demonische wezens en heel Deimos verdwijnt gewoon. Een team mariniers wordt naar Phobos gestuurd, maar op één na worden ze allemaal snel afgeslacht. Het is aan de overlevende marinier om wat wapens te pakken en een vuist te maken naar de demonen.

Beschrijving van Doom, Tom Hall

Een typische schermafdruk van het spel Doom geeft veel inzicht in de ontwikkelvaardigheden van de mensen achter id Software.

Op basis van de afbeelding hierboven kun je de vaardigheden van de vier artiesten van id Software herkennen, te beginnen met de overduidelijke ‘fight of flight’ situatie waarin de speler zich op het moment van de schermafdruk zich bevindt, een spelelement waarin John Romero zich goed kon vinden. De pixelperfecte gelaatsuitdrukkingen van de zombie-mariniers en de vloeiende texturen van de omgeving zijn toe te kennen aan Adrian Carmack, de omgeving (bunkerachtige ruimtes als achtergrond voor een marinebasis op Mars) aan Tom Hall en de voor die tijd zeer geavanceerde vloeiende 3D-wereld met verlichting en texturen aan Jon Carmack.

Doom werd als shareware op de markt gebracht, met een gratis level waarbij de volgende levels betaald moesten worden. De broncode van het spel werd later als open source beschikbaar gemaakt. Dat maakt dat er talloze implementaties van Doom zijn, van computers en spelsystemen tot het scherm van een Honeywell kamerthermostaat. Er is in 2023 geen enkel grafisch scherm veilig voor een implementatie van Doom.

Apple’s iMac (1995)

Laptops waren in de jaren ’90 van de vorige eeuw nog geen gemeengoed en een gemiddelde thuiscomputer kwam in de vorm van een metalen doos in een creme of lichtgrijze kleur, met steevast een fantasieloos plastic frontje ervoor. De achterkant van die computer zat bezaaid met aansluitingen en een computertafel had voorzieningen om alle (tientallen) kabels weg te werken. Tot de komst van Apple’s iMac in 1995: kleurrijk, alles-in-een, geen verschillende poorten meer maar iets nieuws: USB. Ingebouwde luidsprekers en CD-speler. Prachtig om te zien, gemakkelijk om te gebruiken en nog niet eens zo duur ook. Het werd een instant hit, en in de jaren erop kwamen alle huishoudproducten (ook) in bondi blue. Want hip en cool.

De doorzichtige alles-in-een computer was meer dan een opvolger van de bestaande Macintosh modellen: het was de start van een nieuwe wind door Apple die invloed bleek te hebben op de gehele industrie: van computers, muziek, telefonie tot verpakking, productie en recycling. De eerste iMac G3 had een ei-vormig uiterlijk met een ingebouwde beeldbuis en een totaalomsluitende, gekleurde halfdoorzichtige behuizing waardoor de onderdelen van computer en monitor goed zichtbaar waren. De binnenkant was voorbeeldig afgewerkt en de computer was voorzien van een groot handvat om verplaatsingen binnenshuis, of bijvoorbeeld van huis naar de auto, eenvoudig te maken. Een bijpassend toetsenbord en muis maakten het geheel af. Het toetsenbord werd middels een nieuwe verbinding, ‘USB’ genaamd, verbonden met de computer en de muis prikte ook in zo’n USB aansluiting op de computer, of in het toetsenbord. Er was niet voorzien in RS-232 of een parallelle printerpoort, hetgeen op veel kritiek kon rekenen bij de introductie van de iMac, omdat nog geen enkele printer was voorzien van een USB aansluiting. De iMac had een ingebouwd telefoonmodem, ook bijzonder voor die tijd. Internet kwam vanuit de doos.

De aantrekkingskracht van de iMac was niet alleen de vormgeving, maar vooral het totaalconcept. Ten opzichte van andere computers had de iMac veel voor zich te zeggen:

  • Ingebouwde stereo luidsprekers, in plaats van losse luidsprekers op het bureau
  • Ingebouwd telefoonmodem en (via startaanbieding van Apple) internet uit de doos, in plaats van los modem kopen en internetabonnement afsluiten bij provider
  • Eén netsnoer, die ook nog eens netjes in de computer weggewerkt zat, in plaats van losse snoeren voor computer en monitor, plus nog de monitorkabel
  • Eén standaard poort voor alle mogelijke randapparaten, in plaats van RS-232 in 9 en 25-polige variant, parallelpoort, toetsenbordpoort, muispoort, audiopoort
  • Eenvoudig schoon te houden behuizing

Douglas Comer’s Operating System Design – The Xinu Approach (1984)

Een besturingssysteem is als een goed ontworpen, met liefde geweven tapijt dat degelijkheid, stijl en comfort combineert met bindingen en patronen die passen bij de inrichting van de ruimte en het gebruiksdoel van de eigenaren. Sinds de beginjaren van computersystemen is Unix een toonbeeld van hoe besturingssystemen kunnen werken en dit heeft bijgedragen tot het gebruik ervan in de beginjaren van het onderwijs in besturingssystemen op hogescholen en colleges over de hele wereld.

Het aantal boeken dat een besturingssysteem zowel conceptueel als aan de hand van volledige broncode uitlegt zijn zeer beperkt. Douglas Comer, docent aan de universiteit van Perdue, zag daarom de noodzaak voor een lichtgewicht, als Unix werkend besturingssysteem dat aan de binnenkant geheel in Ansi C met minimale, maar universeel toepasbare middelen zou werken. Hij noemde zijn besturingssysteem ‘Xinu’ (als in, “Xinu is not Unix”) en schreef zijn collegenotities in het boek Operating System Design.

Zelf studeerde ik Informatica aan de toen Rijkshogeschool Groningen (het tegenwoordige Hanzehogeschool) en smulde van de lessen, het boek en het besturingssysteem. In iedere les behandelden we een ander concept (concurrency, queueing, scheduling en context switching, procesmanagement, messaging, memory management.. de lijst was eindeloos) en bestudeerden we de broncode die het concept in de praktijk bracht. Ik kon me uren concentreren op de broncode en de werking en heb zelfs wat kleine onvolkomenheden uit de broncode opgespeurd.

Tegenwoordig is Xinu een lichtgewicht besturingssysteem dat met een footprint van nog geen 20 kilobyte eenvoudig in embedded systemen gebruikt kan worden.

Externe links

Pwnagotchi (2019)

Pwnagotchi is een open source zelfbouw ‘AI’ die van de verscheidene WiFi netwerken om zich heen de handshakes tussen het toegangspunt en de aangesloten apparaten verzamelt en deze in een standaard bestandsformaat op een geheugenkaartje bewaart. Deze handshakes kunnen vervolgens later met een Linux-tool als HashCat ontsleuteld worden om de bij het SSID behorende WiFi wachtwoord te achterhalen.

Pwnagotchi heeft een schermpje waarop verzamelde WiFi netwerken worden getoond. De ontwerper van Pwnagotchi heeft er een soort digitaal huisdier van gemaakt dat zich voedt met de opgevangen handshakes en blijer wordt naarmate er meer SSID’s kunnen worden ontdekt. De ‘blijheidsgraad’ wordt middels een eenvoudige gezichtsweergave getoond. Als er andere Pwnagotchi’s in de buurt zijn neemt de blijheidsgraad toe; een poosje geen nieuwe Wifi netwerken of handshakes ontvangen laat de blijheidsgraad afnemen.

Pwanagotchi luistert naar de IEEE 802.1X viervoudige handshakes die bij de totstandkoming van een verbinding tussen apparaat en draadloos WiFi toegangspunt worden uitgewisseld. Deze handshakes bestaan uit elk een pakket dat een deel van de sessiesleutel voor de communicatie tussen apparaat en toegangspunt bevat. Zodra de pakketten succesvol zijn uitgewisseld en de sleutels zijn gegenereerd kan het apparaat beginnen met verzenden en ontvangen van beveiligde pakketten naar en van het toegangspunt.

De vier pakketten kunnen eenvoudig worden opgevangen en opgeslagen. En eenmaal opgeslagen kunnen ze aan de hand van een woordenboek of met ‘brute kracht’ worden omgezet tot het oorspronkelijke WiFi wachtwoord. En voor het ontsleutelen van het wachtwoord zijn vaak ook niet eens alle vier de pakketten nodig: soms is zelfs één pakket voldoende.

Om voldoende handshakes te kunnen registeren heeft Pwnagotchi een duale strategie:

  • Deauthenticeer de apparaten die al verbinding hebben met het toegangspunt, zodat ze opnieuw het viervoudige handshakeproces moeten doorlopen
  • Stuur zelfstandig pakketten naar het toegangspunt om op deze manier informatie te ontfutselen

Externe links

GPD’s Pocket (2017)

In 2007 probeerden Microsoft en Intel iets nieuws dat ze Ultra-Mobile PC’s zouden gaan noemen: kleine laptops met een moderne vormgeving en een laag stroomverbruik en dus weinig rekenkracht maar op papier een volledige computer-voor-onderweg. Het concept sloeg niet aan, ondanks verwoede pogingen van grote merken als HP en Sony en Microsoft en Intel zelf om UMPC’s te promoten. “Tergend traag” en “onwerkbaar” waren de oordelen van reviewers. Tien jaar later echter vond GamePad Digital (GPD) het tijd voor een comeback en meer dan 8.000 investeerders waren het er toen mee eens.

Indiegogo en Kickstarter zijn crowfunding websites waar iedereen met een goed idee geld kan ophalen van een brede groep investeerders. Het lukte GPD in 2017 om op die manier 3,3 miljoen euro op te halen voor de realisatie van de GPD Pocket: een kleine laptop met een 7 inch scherm en een Intel Atom x7-Z8750 op 1.6 GHz. Reviewers konden het ontwerp van de behuizing en de stevige bouw waarderen en spraken lovende woorden over de hoeveelheid werkgeheugen en het heldere hoge-resolutiescherm. Minder tevreden waren ze over het layout van het toetsenbord, de hakkelende warmtehuishouding en het ontbreken van een SD-kaart slot. De GPD Pocket meet 180×106×18.5mm in gesloten toestand. Het enthusiasme van de verschillende reviewers voerde echter de boventoon. Verschillende gebruiksscenario’s passeerden de revue, waarbij verrassend genoeg verschillende games uit de Xbox Games Store succesvol werden uitgeprobeerd. De accu behaalde niet de geadverteerde 12 uur of meer, maar met “it’s more like 7 to 8 hours with normal use” maakte het desalniettemin indruk.

GPD Pocket 7″
BehuizingCNC gefreesde behuizing van magnesium-aluminiumlegering
SchermCorning Gorilla Glass 3
Afmetingen180×106×18.5mm
Gewicht0.480kg
WarmtehuishoudingVentilatorkoeling
Batterij12 uur werking, lithiumpolymeer (LiPo) accu
OSWindows 10
Ubuntu 16.04 LTS
CPUIntel Atom x7-Z8750 1.6GHz (burst 2.56GHz) quad-core processor/quad threading
GPUHD Graphics 405 integrated processor
RAM8GB LPDDR3-1600
Interne opslag128GB eMMC
Beeldscherm1920×1200, 16:10 aspect ratio, 7 inch, 323.45PPI, IPS technology, multi-touch
AudioRealtek ALC5645, enkele luidspreker, microfoon
NetwerkWiFi 802.11a/ac/b/g/n 2.4/5.0GHz dual-band
Bluetooth 4.1
Poorten1 x USB Type-C 3.0
1 x USB Type-A 3.0
HDMI Type D
3.5mm headset stereo audio output
Technische specificaties GPD Pocket 7″

In de jaren die volgden op de introductie van de Pocket wist GPD met opvolgende modellen indruk te maken en raakte de Pocket wat in de vergetelijkheid. In meer recente jaren ontdekten vooral Linux fans de Pocket opnieuw. Het hackers-delight Kali Linux heeft een eigen distributie dat nagenoeg alle eigenschappen van de GPD Pocket ondersteunt. Gecombineerd met de vele uitbreidingspoorten en de ingebouwde wifi en Bluetooth 4.1 vormt de Pocket een onweerstaanbare combinatie voor een ultradraagbare pen test uitrusting.

Ik heb een gebruikte GPD Pocket “used with possible scratches en signs of wear” gekocht van eBay, voor een schappelijke prijs, inclusief verzending, uit Japan. Ik verwachte er niet veel van, hoewel de foto’s een keurig apparaat lieten zien. Bij de verzendopties stond dat er binnen 10 dagen verzonden zou worden en dat de verzending zelf tot anderhalve maand in beslag kon nemen. En hoedt u voor invoerrechten! Hoe groot was mijn verbazing toen ik drie dagen later een FedEx doosje aangeboden kreeg, met een hierin zo goed als nieuwe GPD Pocket, verpakt in de originele doos. Met een Windows besturingssysteem in het Japans, dat dan weer wel. Om een indruk te krijgen van de gebruiksmogelijkheden heb ik Ubuntu Linux geïnstalleerd, ben weer teruggegaan naar de voorgeïnstalleerde Windows 10 en vervolgens Kali Linux uitgeprobeerd.

De GPD Pocket met Japanse versie van Windows 10 naast een 15″ MacBook Pro

Pocket met Ubuntu Mate Linux

Voor Ubuntu heb ik gebruik gemaakt van Ubuntu Mate, die een speciaal voor de GPD Pocket ontwikkelde distributie heeft, aanbevolen door GPD zelf. De door mij gedownloade versie was ubuntu-mate-20.04.1-desktop-amd64-gpd-pocket.iso, die met een programma zoals balenaEtcher of Raspberry Pi Imager op een 4 GB USB geheugenstick geschreven kan worden. De GPD Pocket kan van USB opstarten, door in het Bios (Del ingedrukt houden bij het opstarten) de opstartvolgorde te veranderen. Ubuntu Mate start eerst volledig werkend vanaf de USB stick op, en er is een optie om de 128 GB ingebouwde schijf ofwel op te splitsen in een Windowsdeel en een Linux deel, of alle bestaande partities te wissen en er één gehele Lunux schijf van te maken. De installer kan de Windows partitie verkleinen en op het vrijkomende deel een nieuwe partitie maken. Ik heb beide opties geprobeerd en beide werken prima (hoewel het booten van Windows of Linux dan wel het snelst gaat door de bootvolgorde in het bios aan te passen). De installatie van Ubuntu Mate neemt een uurtje in beslag en is dan weer helemaal bijgewerkt en functioneert dan als een zonnetje. Op het kleine scherm waren me de letters standaard net wat te klein, maar door de fontgroottes zo her en der op te krikken werd het geheel comfortabel leesbaar.

GPD Pocket met Ubuntu Mate Linux

Pocket met Windows 10

Bij de tweede keer installeren van Linux koos ik voor het geheel wissen van het ingebouwde 128 GB opslaggeheugen. Ik kneep ‘m een beetje, maar terug naar de oorspronkelijke Windows (Home) versie op de GPD Pocket bleek ook eenvoudig, hoewel het installeren van Windows tot het moment dat je door de laatste updates heen bent meer tijd kost dan bij Linux het geval is. Ik heb de GPD aanbevolen versie GPD Pocket--firmware of Windows OS(20170526).rar gedownload via de link op hun website. Die link verwees naar een bestand op het Mega fileshareplatform, me dunkt niemands favoriet. Na een kleine 8 uur was de download gereed en kon ik een USB geheugenstick klaarmaken. De instructies zijn, om een USB stick van 32 GB als NTFS onder Windows te formatteren (dat had ik dan gelijk even moeten doen toen er nog geen Linux op de Pocket stond) en deze WINPE te noemen. Vervolgens de .rar uitpakken met The Unarchiver (macOS) of 7zip (macOS, Windows). Er ontstaat een directory GPD Pocket OS 升级文件及说明(20170526) met een subdirectory genaamd WINPE. De bestanden in de subdirectory verplaatsen naar de root van de USB stick. Je kunt nu opstarten vanaf de USB stick, die geheel automatisch je 128 GB opslag partitioneert, leegmaakt en er vervolgens Windows 10 op installeert. Bye Ubuntu. Uiteraard vraagt Windows na een keer of wat opnieuw opstarten om een Activatiecode en uiteraard had de verkoper van de Pocket foto’s van de doos op eBay gezet met de activatiecode voor iedereen zichtbaar zodat deze activatiecode – uiteraard – niet meer door Microsoft werd geaccepteerd. De in de haast op Marktplaats aangekochte Windows licentie bleek een Windows 10 Pro in plaats van Home, zodat de Pocket nog wat extra Windows bestanden moest downloaden. Hierna was de Pocket echter weer volledig functioneel en viel er heel aardig mee te werken. Alles reageert vlot en voorspelbaar, iets minder vlot dan je van bijvoorbeeld een 2023 MacBook Pro M2 gewend zou kunnen zijn, maar alleszins werkbaar en ik zou er denk ik geen moeite mee hebben om er (met een aangesloten draadloze toetsenbord en muis) een dag mee te moeten werken, of er bijvoorbeeld in de trein wat artikelen mee te schrijven. YouTube video’s doen het opperbest.

GPD Pocket met Windows 10 Pro en een Bluetooth Microsoft Designer toetsenbord met Microsoft muis

Pocket met Kali Linux

Kali Linux is een Linux distributie specifiek bedoeld als pen test tool suite. Het wordt uitgegeven en onderhouden door Offensive Security (‘OffSec’), een Amerikaans internationaal bedrijf dat zich bezighoudt met informatiebeveiliging, pen testen en digitaal forensisch onderzoek. Het bedrijf, actief vanaf ongeveer 2007, creëerde open source-projecten, geavanceerde beveiligingscursussen, de ExploitDB-kwetsbaarheidsdatabase en de Kali Linux-distributie. Specifiek voor de GPD Pocket ontwikkelde Re4son een Kali installatie. Kali Linux is niet een handig besturingssysteem als je verder ook nog iets met je computer wilt doen. Veel van de ‘normale’ dingen die je met je besturingssysteem wilt doen, zijn bij Kali Linux uitgeschakeld of op een alternatieve manier ingericht. Zo heb je standaard geen verbinding met het internet; niet handig als je even wat wilt doen. Wat Kali Linux wél heeft, zijn diverse tools om pen testen mee uit te voeren, en daar een heleboel van. Het leek me daarom handig om Kali Linux vanaf een USB stick op te starten. Wordt het allemaal niet sneller van natuurlijk. Ik heb de Gnome desktop versie kali-linux-pocket-20180513.iso van Re4son gedownload en met balenaEtcher op een USB stick geschreven. Van de USB stick opstarten door in het Bios (Del ingedrukt houden bij het opstarten) de opstartvolgorde te veranderen. Kali Linux start volledig werkend in de modus Live Forensic, maar bewaren op schijf kan alleen door het resterende deel van de USB stick geschikt te maken voor schrijfdoeleinden,

Kali Linux op GPD Pocket

Het updaten van de wat gedateerde kernel voor de GPD Pocket levert in eerste instantie problemen op, die te fixen zijn met het volgende commando:

$ wget -q -O - http://archive.kali.org/archive-key.asc  | apt-key add
$ sudo apt update
$ sudo apt upgrade

Veel van de Kali tools zijn overigens ook prima onder andere Linux distributies te gebruiken. Onder Ubuntu bijvoorbeeld. Omdat er zo veel tools beschikbaar zijn onder Kali Linux is iets van een hulpje hier wel nodig. Een handig tool voor de selectie van Kali Linux tools is Katoolin, hoewel daar het één en ander op valt af te dingen.

Kali Linux installeren ván een USB drive óp een USB drive

De Kali Linux distributie van Re4son heeft als nadeel dat er sindsdien fors wat wijzigingen zijn geweest in de kernel en dat deze niet meekomen met de oudere distributie. Recentelijk heeft Gabe van Bit Drifting een poging gepubliceerd om een standaard versie van Kali Linux te installeren op de GPD Pocket en dat lijkt te werken. Abraham van Foss Linux kwam al eens met een ‘van USB naar USB’ installatieprocedure, waarbij je Kali Linux opstart van de ene USB drive en installeert op een andere. Klinkt als een moeite-waard-experimentje:

  • Installeer Kali Linux op een USB stick
  • Start op van de USB stick
  • Start het Kali Linux installatieprogramma
  • Installeer Kali Linux op een tweede USB stick
  • Start nu op vanaf de tweede USB stick en rond de configuratie af

YouTube reviews

Externe links

Psion’s 5 mx (1997)

Toen Psion in 1997 met de Psion 5 op de markt kwam, was die het resultaat van jarenlange iteratieve productontwikkeling en dat zag je. Het apparaat was aan alle kanten ‘af’: hardware, software, documentatie, verpakking: voor de technische georiënteerde zakenmens (lees: gadgetfreak) was de 5 mx hét hebbeding van het jaar. Het snelle en modern aandoende Symbian besturingssysteem, de ondersteuning van PCMCIA kaarten, connectiviteit, het uitklappende toetsenbord: niets leek een wereldverovering van Psion nog in de weg te staan.

De Psion 5 was een upgrade van de hiervoor immens populaire Psion 3, waarvan er ongeveer anderhalf miljoen waren gemaakt en die in sommige gevallen buiten de kaders van iedere denkbare vorm van use case werden gebruikt door zakenmensen, schrijvers, redacteuren en hobbyisten. De Psion 3 was een upgrade van de Psion Organisers II, die ook al bekend stonden als degelijke, innovatieve en breed inzetbare apparaten.

Anno 2023 zijn is de Psion 5 mx een collectors’ item geworden en maken mensen nog steeds gebruik van het compacte apparaat, hoewel het in duur en frequentie aanzienlijk minder zal zijn. Er zijn (succesvolle) pogingen om het Symbian besturingssysteem te vervangen door een Linux distributie (waarbij een alternatief, het gebruik van de 5 mx als terminal en het toevoegen van een Raspberry Pi Zero als Linux ‘server’, ook veelbelovend is).

Externe links

Lee Hart’s 6502 40th Anniversary Computer Badge (2017)

Een jubileumexemplaar op de 45e verjaardag van een iconische microprocessor op een handzame printplaat met lichteffecten, een kit die je zelf moet solderen en die je met batterijvoeding als kerstversiering kunt dragen. Veel meer retro wordt het niet en dat is precies de reden waarom Lee Hart, retrotechnicus in hart (haha) en nieren de single board computer ontwikkelde.

Vanuit een zeker perspectief is 1977 als startjaar van de thuiscomputerindustrie aan te merken; een jaar waarin zowel de Tandy TRS-80, Apple II en de Commodore PET het licht zagen. Die laatste twee werkten met een MOS Technology 6502 microprocessor, die enkele jaren daarvoor was ontworpen door Chuck Peddle van MOS Technology. Die 6502 had een elegant ontwerp die krachtige toepassingen op een eenvoudige manier mogelijk maakte en mede door de lage prijs in de meest succesvolste home computers werd toegepast.

Hoewel de markt ervoor in Nederland wat richting de permanente computermusea aan het verschuiven is, zijn de zogenaamde ‘Vintage Computer Festivals’ wereldwijd nog steeds een groot succes. Op deze evenementen laten hobbyisten hun vintage computers zien, soms nog in volledig originele vorm, soms met indertijd onmogelijk geachte uitbreidingen. Sommige van de festivals voeren een soort ‘badge’ voor de deelnemers en participanten en de Lee Hart’s 6502 40th Anniversary Computer Badge is hier een voorbeeld van.

De badge is een volledig werkende 6502-computer, met RAM, ROM, LED-display, seriële poort en ingebouwde BASIC. Het is volledig gebouwd met vintage technologie; geen moderne of vervangende. Sluit hem aan op een terminal of computer, laad een bericht en de badge schuift het over het LED-display. Of pronk met uw BASIC- of machinetaalexpertise door uw eigen programma’s te schrijven om iets echt spectaculairs te doen!

Externe link

People’s Computer Company’s Dr. Dobb’s Journal’s Tiny BASIC (1976)

De magie van een goede programmeertaal zit verscholen in de eenvoud waarmee een bepaald idee kan worden uitgedrukt. Processor-assembleertaal is complex, krachtig en moeilijk om te leren gebruiken. Om een programmeertaal in de beginjaren van de thuiscomputers te laten landen moest deze niet alleen ‘goed’ zijn, maar als programma ook nog passen binnen de toenmalige beperkingen op het gebied van opslag, verwerkingssnelheid en werkgeheugen (RAM). De Tiny BASIC programmeertaal, als concept voor het eerst voorgesteld door Dennis Allison in het septembernummer van People’s Computer Company’s Dr. Dobb’s Journal, voldeed aan die eisen. De Journal begon net met publiceren en had als doel te dienen als referentiewerk; publicatie van een programmeertaal paste fabelhaft in dat concept. Tiny BASIC was op het moment van publiceren nog geen programmeertaal met een wijde beschikbaarheid voor de diversiteit aan computerhardware in die tijd: van de lezers van het blad werd de bovengemiddelde inspanning verwacht om Tiny BASIC zélf voor de eigen hardware te implementeren. Diverse codevoorbeelden en implementatierichtlijnen hielpen daar echter bij en Tiny BASIC kwam je daarna in heel veel varianten tegen.

De eigenschappen van de voorgestelde Tiny BASIC waren als volgt:

  • Alleen 8-bit (of 16-bit) integerberekeningen in het bereik -128 tot +127 of -32768 tot +32767
  • 26 variabelen met namen A, B, C, D, .. , Y, Z
  • De RND functie
  • 7 BASIC statements: INPUT, PRINT, LET, GOTO, IF, GOSUB, RETURN
  • Strings alleen als parameter voor PRINT

Hoewel de uitrusting van Tiny BASIC beperkt lijkt, viel dat in het licht van de hardwaremogelijkheden van de computers in de jaren ’70 nog reuze mee en ook zonder later geïntroduceerde toeters en bellen waren complexe programma’s mogelijk. Met INPUT was het mogelijk om invoer van een gebruiker te vragen (beperkt tot geen input, of een geheel getal). Met LET konden alle mogelijke berekeningen worden uitgevoerd – expressies geëvalueerd – zolang de uitkomsten maar beperkt bleven tot gehele getallen. En met PRINT konden de antwoorden op het scherm worden getoverd. Vorwaardelijke verwerking werd mogelijk met IF en grotere programma’s konden gebruik maken van routines met GOSUB en RETURN. Tiny BASIC was dan ook een instant succes.

In de latere jaren kwam je Tiny BASIC in allerlei vormen en onder diverse namen tegen. Laatst zag ik een implementatie op een Arduino, die een listing op een miniatuur OLED scherm toonde. En het stond de programmeurs vrij om zelf uitbreidingen aan de taal te maken, bijvoorbeeld door functies toe te voegen voor wiskundige berekeningen, of specifieke hardware of I/O uitbreidingen. Succes verzekerd.

De basis Tiny BASIC instructies zijn voldoende voor ieder denkbaar programma die binnen de beperkingen van geheugen en integerberekeningen moet werken. Met de combinatie van IF en GOTO waren ook herhalingen mogelijk:

100 LET L = 0
110 PRINT "IN THE LOOP", L
120 LET L = L + 1
130 IF L < 10 THEN GOTO 110
140 PRINT "OUT OF THE LOOP"

In latere Tiny BASIC versies werd zonder uitzondering de FOR .. TO .. NEXT constructie toegevoegd, zodat de code hierboven herschreven kon worden als:

100 FOR L = 0 TO 9
110 PRINT "IN THE LOOP", L
130 NEXT L
140 PRINT "OUT OF THE LOOP"

Omdat de Tiny BASIC programmeertaal maar weinig woorden kent en deze woorden toch al als enkele ’token’ in het geheugen van de computer werden opgeslagen, zochten veel computerbouwers naar manieren om met een enkele toets een geheel BASIC woord in te kunnen voeren. Hieronder een voorbeeld van de toetsenbord-layout voor de Tiny BASIC implementatie op de Micro-Professor MPF-1, wat gezien de aanwezigheid van FOR .. TO .. NEXT al een meer uitgebreide versie betreft. De commando’s SAVE, CONT, LIST, NEW, LOAD, RUN en ENTER zijn geen programmeerinstructies, maar middelen om programma’s in z’n geheel te laden van of bewaren op cassetteband, een programma te starten, te ‘listen’, of een afgebroken programma te hervatten.

Externe links

Philips’ HL 3695 vertaal-machine (1979)

De Philips HL 3695 vertaal-machine is een apparaat waarmee woorden van de ene taal in een andere kunnen worden vertaald. De beschikbare talen zijn Nederlands, Duits, Frans, Engels, Noors, Spaans, Italiaans, Japans en Arabisch, met in elke taal 3000 woorden, waarvan 3 talen tegelijk in het apparaat kunnen worden geplaatst. De talen komen elk in een kunststof blokje die separaat werden verkocht. De vier AA-batterijen kunnen het apparaat een paar uur van stroom voorzien, maar het apparaat is snel aan- en uit te zetten waardoor de gebruiksduur fors kan worden verlengd.

Hoogspanningsdisplays werden in de jaren ’80 veelvuldig gebruikt in consumentenelektronica, maar minder in draagbare apparaten omdat de stroomverzorging ingewikkeld was met spanningen die hoger waren dan de voedingsspanning, complexe aansturing en een fors verbruik. De vertaal-machine (hij werd door Philips niet ‘computer’ genoemd) kwam misschien met het stroomverbruik weg omdat de theorie wellicht was dat het apparaat voor iedere vertaling zou worden aangezet en na gebruik weer uit. Een grote rode led aan de voorkant zorgde ervoor dat de gebruiker het uitschakelen niet zou vergeten. Er kan worden geschakeld tussen alkaline- en oplaadbare nikkel-cadmium batterijen maar ook het gebruik van een netadapter is mogelijk,

16 tekens ‘Vacuum Florescent Display’. De tekens zijn veelzijdiger dan de 7-segments displays die we van vroegere rekenmachines kennen, maar hebben niet de mogelijkheden van de displays die zijn voorzien van individueel aanstuurbare beeldpunten

Het display bevat 16 tekens en een woord kan in de eerste van de geplaatste talen worden ingevoerd en (indien beschikbaar) in één van de andere twee talen worden weergegeven. Enkele veelgebruikte zinnen zijn in iedere taal beschikbaar en berekeningen zijn, met wat goede wil van de gebruiker, mogelijk, zij het niet met een snelheid of nauwkeurigheid die je van een rekenmachine zou verwachten. Speciale features zijn ondermeer het tonen van de gehele inhoud van de woordlijst in één van de geplaatste talen naar keuze en het tonen van een kort lijstje met veelgebruikte zinnen. Naar huidige maatstaven bevat het apparaat beperkte functionaliteit: de totale woordenlijst past waarschijnlijk op een paar A4’tjes en legitimeert de vraag waarom geen boekje met woorden mee te nemen.

De Philips HL 3695 bevatte aan de binnenkant geen kenmerkende Philips onderdelen, terwijl Philips in die tijdsperiode zelf veel van de onderdelen, zoals de gebruikte TTL chips, zelf produceerde. Het apparaat is dan ook niet door Philips ontwikkeld of geproduceerd, maar een rebatch van de M100 van het Amerikaanse Craig. Het ontwikkeltraject van dit apparaat is terug te herleiden naar de inspanningen van één enkele individu:

In 1978 richtte uitvinder en ondernemer Ron Gordon het bedrijf Friends Amis, Inc. op en patenteerde een meertalige vertaler genaamd het Ami LANGUAGE System. Het ontwerp van dit apparaat was gebaseerd op een 8-bit Mostek MK3870-microcontroller met 2K intern programmageheugen en door de gebruiker verwisselbare taalmodules. Het systeem van apparaat en verwisselbare modules werd in de VS verkocht door de in Californië gevestigde elektronicafabrikant Craig, terwijl Friends Amis de binnenkant van het apparaat produceerde en de eindmontage deed. De vertaler werd in 1979 op de markt gebracht als een ‘Translator & Information Center’ en in andere landen waren rebatches beschikbaar, zoals onze Philips HL 3695 vertaal-machine en in Duitsland de MBO Pocket-Computer. Gordon suggereerde dat er 300.000 microcontrollers werden ingekocht om de vertalers te produceren.

Het Ami LANGUAGE System en de M100 en rebatches waren een noviteit in die zin dat ze niet programmeerbaar waren, maar nog steeds een volledig capabele computer, beeldscherm en toetsenbord bevatten. Daarin zag het Japanse Matsushita Electric Industrial Co. kansen voor een product dat toen nog niet bestond: een computer die enkele, zo niet de meeste, toeters en bellen had van een grote computer, maar draagbaar was en op batterijen werkte. Het moet klein en programmeerbaar zijn, connectiviteit hebben en een volledig qwerty-toetsenbord bevatten. Gordon’s Friends Amis ontwierp ook deze eerste Hand Held Computer (HHC) die Matsushita in 1981 op de markt bracht en produceerde.

Wikipedia (artikel geschreven door Rudi Niemeijer van retro-lab.nl)

De HL 3695 is opgebouwd rondom een voorgeprogrammeerde Mostek MK3870 microcontroller, die in 1978 werd geïntroduceerd. De eerste microcontroller op de markt was de TMS1000 van Texas Instruments, die vanaf 1974 veelvuldig in volumeproducten zoals speelgoed werd gebruikt. Een microcontroller is een microprocessor waar de RAM en ROM zijn ingebouwd. Hiervoor vervalt de noodzaak van de data- en adresbussen en de hierdoor vrijgekomen aansluitingen kunnen voor I/O toepassingen worden gebruikt, zoals het aansturen van leds of displays en het uitlezen van schakelaars of toetsenborden. De ROM-inhoud van microcontrollers werd in eerste instantie in de fabriek meegeëtst op de chip, maar was door de opkomst van EEPROM vanaf 1987 ook door de eindklant of eindgebruiker programmeerbaar. De gebruikte MK3870 heeft 2K aan ROM waarin de programmatuur voor het uitlezen van het toetsenbord, het aansturen van het beeldscherm, het inlezen van de taalmodules en het tonen van de juiste vertaling op basis van de invoer zit opgesloten. In de vertaal-machine vinden we naast de microcontroller nog enkele andere chips die helpen bij het opbouwen van de informatie op het display. Het display bestaat uit 16 tekens van elk 15 segmenten (inclusief de decimale punt).

BehuizingType aanduidingFabrikantOmschrijvingDatumcode
DIP40SL90200 / MK3870Mostek8-bit general purpose microcontroller with 2K mask-programmable ROM7944
DIP28DS8881NNational SemiconductorVacuum fluorescent display driver7945
DIP18CDP1824CERCACMOS 64-Word x 8-Bit Static RAM7941
DIP1674LS156NRAYCDual 2-line to 4-line decoders / demultiplexers7937
DIP18 (2x)DI 514-38014 (?)
Geïntegreerde circuits in de HL 3695 vertaal-machine

A review [..] in Personal Computer World magazine (Dec 1979) [..] indicates that the [Craig M100] is based on the [Mostek MK3870 microcontroller], where the on-chip ROM was crucial – Brainbank/Craig designer Ron Gordon told PCW he chose the chip “because it was the only one with 2K bytes at the time we made the choice.” He claimed his company, Friends Amis, had “three-quarters of the 400,000 unit world market for 1979.”

Simon N. Goodwin

Externe links

Creative Technology’s Sound Blaster (1989)

Toen de IBM PC in 1981 op de markt kwam had deze hele beperkte geluidsmogelijkheden. Een ingebouwde luidspreker produceerde een luide ‘piep’ bij het opstarten en softwaretoepassingen maakten hier gebruik van om de gebruiker alert te maken op bijzondere situaties. De enkele ‘piep’ was echter niet opgewassen tegen de geluidsmogelijkheden van de meer geavanceerde home computers zoals de Commodore Amiga of de spelcomputers die in die tijd populair waren. Verschillende fabrikanten sprongen in dit vacuum met interne en externe geluidsoplossingen die op verschillende technieken waren gebaseerd, van externe digitaal-analoogomzetters die via de parallelle poort werkten, tot uitbreidingskaarten met speciale FM-synthesischips zoals de AdLib. Geen van de oplossingen had een groot marktaandeel of grootschalige softwareondersteuning. Deze situatie veranderde echter voor het grote publiek definitief met de Sound Blaster uitbreidingskaart voor de IBM PC, waar Microsoft de ‘Multimedia PC’ standaard op zou baseren die vanaf dat moment als standaard zou gaan gelden.

De Sound Blaster 1.0 had een 11-stemmige FM-synthesizer die gebruik maakte van de Yamaha YM3812-chip, ook bekend als OPL2. Creative gebruikte het acroniem “DSP” om het digitale audiogedeelte van de Sound Blaster aan te duiden, dat bestond uit een eenvoudige microcontroller uit de Intel MCS-51-familie.

Hewlett Packard’s HP-20S (1989)

De HP 20 S (de schrijfwijze van het model verschilt tussen op het apparaat zelf en in de handleiding) is een programmeerbare wetenschappelijke rekenmachine die Hewlett Packard vanaf 1989 produceerde. Het apparaat is in vergelijking met hedendaagse rekenmachines in niets opvallend: een zwarte plak plastic met een kristallenscherm en een hoop toetsjes met gekleurde tekstjes. Maar dat is dan ook gelijk één van de opvallendste kenmerken: dat een apparaat van al meer dan 22 jaar oud zo onopvallend is. Onder de motorkap was het echter wel degelijk een bijzondere vinding die ook vandaag de dag nog fijn werkt.

De 20 S is om verschillende redenen ook nu nog een fijne rekenmachine om mee te werken. Het display is niet grafisch maar van een uitgebreid getallen-type met een instelbaar contrast én een instelbare weergave van het decimaalteken, in Nederland een komma. Je kunt net als iedere wetenschappelijke rekenmachine het aantal cijfers achter de komma instellen en, dit in tegenstelling tot eerdere modellen, berekeningen volgen het natuurlijke verloop in ‘2 x 21 =’, in plaats van de bij HP gangbare ‘2 21 x’. De rekenmachine is oerdegelijk, heeft gemakkelijk klikkende toetsen, is redelijk bestand tegen water en stof en komt, als je bij de aanschaf een beetje verder in de buidel tastte, in een degelijke kunststof doos.

De rekenmachine is voorzien van alle wiskundige en wetenschappelijke functies die je kunt bedenken, en kan ook schakelen tussen binair, octaal, decimaal en haxadecimaal. Het omrekenen tussen getalstelsels en het kunnen rekenen in binair of hexadecimaal maakt het apparaat een handig tool die ook tegenwoordig nog altijd op mijn bureau te vinden is.

De handleiding komt in spiraalbandvorm en is duidelijk maar toch compact. Het bevat alle voorbeelden en uitleg die je maar kunt wensen en leert de gebruiker programmeren met de rekenmachine. Het programmeren is in de vorm van toetsaanslagen, maar subroutines en herhalingen behoren tot de mogelijkheden. Er zijn vijf programma’s mogelijk, die elkaar kunnen aanroepen. Om met toetsaanslagen te kunnen programmeren zijn er extra functies om uitkomsten van tussenberekeningen om te wisselen met een nieuw getal, opslag in registers en het vragen om invoer. Dikke prima, goed werkbaar in het nu en knap staaltje werk voor een retro-apparaat van deze leeftijd.

Hewlett Packard’s HP 95LX (1991)

Twee jaar nadat Atari met de Portfolio de markt klaar had gemaakt voor Microsoft DOS-compatible palmtop computers bracht Hewlett Packard de HP 95LX uit. De HP 95LX had MS-DOS versie 3.22 aan boord, in plaats van Atari’s DIP DOS dat grotendeels compatible was met MS-DOS 2.20. Ook maakte de HP 95LX gebruik van het gestandaardiseerde PCMCIA, in plaats van de minder gangbare Bee Card. Het beeldscherm was een monochroom 40 tekens-bij-16-regels LCD zonder achtergrondverlichting. Standaard werd De Lotus 1-2-3 spreadsheet meegeleverd, wat de HP 95LX een must-have digitale assistent maakte voor iedereen die bedrijfsmatig met getallen en bedragen werkte.

Hoewel MS-DOS 3.22 was ingebouwd, betekende dit niet dat alle DOS programma’s die waren bedoeld voor 3.22 op de 95LX wilden draaien: het kleine scherm maakte dat lastig. Veel programma’s waren echter prima te gebruiken en er ontstond al snel een keur aan programmeer- en conversietools die het leven van de 95LX-gebruiker vereenvoudigden.

Intern was de HP 95LX een toonbeeld van degelijke eenvoud: een printplaat met voor die tijd geavanceerde VLSI chips, een aparte printplaat voor wat resterende analoge elektronica, een behuizing in enkele onderdelen en een eenvoudig maar goed afleesbaar monochroom scherm dat later door veel gebruikers zelf voorzien zou worden van een achtergrondverlichting, een groot deel van de voordelen van afleesbaarheid en batterijduur teniet doend.

Hoewel het nu moeilijk is voor te stellen was de HP 95LX een vooruitstrevend product dat in grote aantallen werd verkocht. Voor veel mensen was de HP 95LX een uitstekende computer ‘voor erbij’ en in deze periode, waarin het internet nog niet bestond en de verbinding met andere computers via modems en seriële poorten werd gelegd, was er niets op de markt dat suggereerde dat 20 jaar later iedereen met een telefoon-internetwebbrowser-muziekspeler op zak zou lopen.

Externe links

Economatics’ BBC Buggy (1983)

Fischertechnik en computersoftware vormden een ideaal stel in de beginjaren van het computerhobbyisme. Veel natuurkundeleraren maakten van deze combinatie een interessante toevoeging voor menig schoolcurriculum en de BBC Buggy (met software-op-audiocassette voor de Acorn BBC Micro computer) vormde hiervan een absoluut hoogtepunt. Fotogeniek en veelbelovend, de kit werd duizenden keren verkocht en nog vaker als hoofdrolspeler in een boek of tijdschrift afgebeeld.

De BBC Buggy was een bouwpakket dat bestond uit diverse Fischertechniek-onderdelen, stappenmotoren, een aansturingsprintplaat en een lang eind flatcable. De aansturing kon in principe met de meeste van de in die tijd beschikbare home computers, hoewel de meegeleverde handleiding en software bedoeld was voor de populaire (want in een BBC televisieprogramma gebruikte) Acorn BBC Micro computer.

Het aansturen van ‘hardware’ vanuit een computer had een hoog experimenteergehalte in de jaren ’80 en de experimenten waren niet geheel zonder risico voor de gebruikte computer. Interfaceboards met optische scheiding tussen de elektrische circuits van computer en aangesloten hardware waren een must. De kit van Economatics voorzag hierin, en de aansluiting tussen de BBC Buggy en computer werd met een lange, flexibele regenboogkabel uitgevoerd. De onderdelen van de bouwdoos moesten aan de hand van de meegeleverde handleiding met een schroevendraaier en een mini dopsleuteltje in elkaar worden gezet, hetgeen voor de gebruiker al gelijk een flinke dosis voorpret betekende. De software hielp met testen of de kit goed was geassembleerd en verschillende programma’s lieten het karretje met de toetsen van de computer besturen. De magie van het aansturen van hardware met een computer was veelsprekend, ook als was het ook voor het ongeoefende oog duidelijk te zien hoe de techniek in elkaar zat.

Externe links

Apple’s transitie van PowerPC naar Intel (2005)

De Apple Macintosh in 2005 had een PowerPC microprocessor waarop het Mac OS X 10.4 Tiger draaide. Tijdens de Worldwide Developers Conference in 2005 kondigde Steve Jobs aan dat er een transitie zou gaan plaatsvinden van de Freescale PowerPC processoren naar Intel Pentium microprocessoren. De belangrijkste redenen hiervoor waren snelheid en energieverbruik: de Pentium processoren waren aanzienlijk krachtiger dan de PowerPC processoren bij een lager stroomverbruik. En hoewel bij de aankondiging nog 2 jaar werd genoemd, ging de feitelijke transitie veel sneller en waren in 2007 de meeste Macs met een Intel processor verkrijgbaar.

De transitie van PowerPC had verstrekkende gevolgen. Zo moest Apple het besturingssysteem OS X geschikt maken voor een andere processor, moest nieuwe hardware ontwikkeld worden, moesten de ontwikkelaars voorzien worden van tijdelijke Intelgebaseerde Macs om hun software om te kunnen zetten naar de nieuwe architectuur, moesten de developers voorzien worden van alle tools om dit voor elkaar te krijgen en moest gezorgd worden voor een voorziening dat niet alle bestaande Macs ineens onbruikbaar zouden worden.

Apple had de transitie echter goed voorbereid en had zelf in het grootste geheim al jaren een versie van OS X in gebruik die op Intel was gebaseerd. Developers kregen daarom bijna direct de beschikking over Intel hardware en de tools die nodig waren om hun software om te zetten. Apple had een speciale simulator gemaakt, Rosetta, die PowerPC programma’s liet uitvoeren op een Intel microprocessor. Deze simulator maakte de programmaverwerking van oudere programma’s langzamer, maar door de extra snelheid van de Intel processoren was het netto effect een gelijke verwerking als op de oude PowerPC microprocessoren.

De transitie van PowerPC naar Intel was overigens niet de eerste keer dat Apple een verandering van de CPU architectuur doorvoerde: eerder was al overgegaan van de 68000 processor van Motorola naar de PowerPC van IBM.

Atari’s Portfolio (1989)

Een 40×8 tekens 240×64 pixel zwart-wit beeldscherm zonder achtergrondverlichting maar met DIP DOS 2.11, grotendeels compatibel met de zojuist uitgebrachte IBM PC. DIP DOS? Jazeker, DIP, voor DIP Research uit Surrey, Engeland. De rol van Atari was rebranding en marketing en de Atari Portfolio haalde het tot in de filmindustrie, als hackertool in Terminator 2: Judgment Day. Een paar honderd uur op drie AA batterijen en met het grootste gemak Turbo Pascal 3 in je tas meenemen. Er was een hoop goeds te zeggen over de Atari Portfolio.

De Atari Portfolio was de eerste palmtop-personal-computer: een IBM PC compatible computer die in de palm van je hand paste. Voor 1989 was dat een knappe prestatie, zeker voor een relatief klein bedrijf uit Surrey. DIP Research verkocht het recht om haar Pocket PC te produceren aan Atari, die er nog datzelfde jaar een grote hit van maakte als de Atari Portfolio. Diverse programma’s op ROM cartridges (want, Atari) waren beschikbaar, maar met een beetje moeite kon je duizenden DOS programma’s draaien, zolang die maar netjes BIOS-compatible waren geprogrammeerd.