H.B.Hansens beskrivelse af DASK/Del 1

Fra DDHFwiki
Spring til navigation Spring til søgning

DASK - en 1. generations computer

af H. B. Hansen

Hvordan Dask blev født

Dask var den første elektroniske datamaskine, der blev konstrueret og bygget i Danmark. Den blev officielt indviet den 13. februar 1958, men dens oprindelse kan spores helt tilbage til 1947, hvor Akademiet for de tekniske Videnskaber (ATV) nedsatte et udvalg med den opgave at "følge udviklingen på de moderne regnemaskiners område". Udvalgets formand blev professor Richard Petersen, kaldet "lille p" på grund af sin ringe legemshøjde. På den tid var det en bekostelig affære at bygge en ciffermaskine, men lille p så en mulighed for at skaffe penge gennem Forsvarets Forskningsråd, der blev oprettet i 1952. Dette viste sig at holde stik, idet det lykkedes ham at skaffe en bevilling på 900.000 kr. fra Marshallhjælpen. Bevillingen blev givet til forsvarsministeriet, men forsvaret havde ingen ambitioner om at gå ind i edb-branchen, og derfor blev der indgået en aftale med ATV og ministeriet gående ud på at ATV oprettede et institut, der skulle bygge maskinen for pengene fra bevillingen, og derefter for egen regning skulle drive maskinen gennem en offentligt tilgængelig serviceorganisation.

Dette blev starten på Regnecentralen, Dansk Institut for Matematikmaskiner, der blev oprettet som en selvejende institution under ATV den 12. oktober 1955. Bestyrelsen bestod af to medlemmer fra hver af institutionerne Danmarks tekniske Højskole, Forsvarsministeriet, Industrirådet, Københavns Universitet og ATV. Det lykkedes for lille p, der var formand for bestyrelsen, gennem Carlsbergfondet at opspore en villa, der tilhørte Carlsberg, og som lå på Bjerregaardsvej nr. 5 i Valby; her påbegyndtes opførelsen af Dask i april 1956.

Det lettere humoristiske navn Dask vakte nogen betænkelighed i bestyrelsen, men blev dog aksepteret, måske fordi det passede godt sammen med navnet på den svenske maskine Besk, der var nogle år forud for Dask. Besk står for "Binär Elektronisk Sekvens Kalkulator" mens Dask betyder "Dansk Aritmetisk Sekvens Kalkulator". Det var oprindelig meningen at Dask skulle være en kopi af Besk, og allerede i 1952 opnåede man tilsagn fra det svenske Matematikmaskinnämnden om at få stillet tegninger og know-how til rådighed. Chefdesigneren for Dask, civilingeniør Bent Scharøe Petersen, havde allerede i sit eksamensprojekt fra 1953 vist interesse for digitalteknik. Han blev headhuntet af lille p, og blev sendt til Stockholm for at lære noget af svenskerne. I maj 1954 blev de første kurser i kodning for Besk afholdt, og her deltog fra dansk side bl.a. Scharøe og en vis beregner fra Københavns Telefon A/S, Niels Ivar Bech, der blev den første og - kan man vist uden overdrivelse sige - mest dynamiske leder af Regnecentralen.

Set i lyset af den hastige udvikling af teknologien der skete netop i disse år, blev det ret hurtigt klart at der kunne opnås forbedringer ved at videreudvikle Dask i forhold til Besk. Dask blev derfor ikke en kopi af Besk, men en helt selvstændig konstruktion. Dog blev det besluttet at Dask skulle være kompatibel med en anden svensk maskine, SMIL i Lund, da man mente at så var hele behovet for regnekapacitet i Øresundsregionen dækket adskillige årtier fremover (!).

Den 29. september 1957, en søndag eftermiddag, løb det første testprogram fejlfrit gennem Dask. Det var på høje tid, for allerede i oktober skulle Dask demonstreres på en udstilling i Forum om Elektricitetens og Atomenergiens mulige anvendelser. Der kunne ikke være tale om at flytte Dask, men i samarbejde med Standard Electric A/S blev der etableret fjernbetjening af Dask, med datatransmission fra Valby til Forum. Det er så vidt jeg ved et af de tidligste eksempler på datatransmission over telefonnettet i Danmark. I dagene op til udstillingen var der hektisk aktivitet på Regnecentralen, for alle demonstrationsprogrammerne skulle kodes og testes. Det lykkedes, og på udstillingen kunne man demonstrere skatteberegninger, beregning af trekanttilfælde (til glæde for gymnasieelever), og løsning af lineære ligninger. Efter udstillingen rejste Bech og Scharøe rundt i landet vest for Storebælt med dette nummer, ved demonstrationer arrangeret af telefonselskaberne.

Den første indtægtsgivende opgave på Dask blev stillet af Danfoss og drejede sig om beregning af formen på tandhjulene i hydrauliske pumper. Denne opgave blev kodet af Bech og blev fuldført i juledagene 1957, altså før den officielle indvielse af Dask.

Dask set udefra

Dask var bygget ind i og fyldte hele spisestuen i villaen på Bjerregaardsvej, og det havde været nødvendigt at afstive kælderloftet med nogle solide bjælker på grund af dens vægt på ca. 3.5 ton. Werner Johansen ved DASK Centralenheden bestod af to lyseblå stålskabe der strakte sig fra gulv til loft, og som stod ved siden af hinanden i hele spisestuens længde. Disse skabe havde på forsiden skydedøre af glas, bag hvilke man kunne se en masse elektronrør. Det ene stålskab rummede strømforsyningen og regneenheden, mens det andet indeholdt styreenheden. Stålskabene var forbundet med hinanden ved hjælp af kabler under parketgulvet. Den omfattende elektronik udviklede en masse varme, og derfor måtte Dask afkøles. Det skete ved hjælp af et vandkølingssystem med pumpe etc., der var installeret i kælderen, og som ellers bestod af smalle vandrør der løb gennem hele maskinen forsynede hver komponent med kølevand. Jeg ved ikke hvor vandet kom fra, formentlig fra det kommunale vandforsyningssystem, men kølevandet løb i hvert fald ud nede i vaskekælderen under spisestuen, hvor det forsvandt i en rist i gulvet, det har jeg selv set. Billederne viser det ene af de to stålskabe set fra hver sin side. På det øverste billede står tekniker Werner Johansen (jeg er ikke helt sikker på navnet) og kontrollerer nogle af de aritmetiske registre, og på det andet står Tage Vejlø (der senere blev leder af Regnecentralens produktionsdafdeling i Præstø) og Scharøe (det er ham bag blitzglimtet) ved bagsiden af det samme panel og drøfter nogle detaljer vedrørende de elektroniske kredsløb. Her er bagklædningen fjernet, så billedet stammer formentlig fra en tid før Dask var helt færdig.

Vejlø og Scharøe ved DASK
Vejlø og Scharøe ved DASK

Dask var en af de hurtigste computere på sin tid. Den kunne udføre en addition på 56 mikrosekunder, benævnt 1 AT (for AdditionsTid), som svarer til 17857 additioner pr. sekund. Det er ikke imponerende efter vore dages standard, men dengang var det utroligt hurtigt. Man regnede i fuld alvor med at Dask ville kunne klare hele Danmarks regnebehov. I 1959 var der fx et arrangement i Ingeniørforeningen der hed "Elektronregnemaskinen som værktøj for maskiningeniøren", hvor en del af medarbejderne på Regnecentralen - heriblandt jeg selv - fortalte om hvad vi gik og lavede. I næste nummer af Ingeniørens Ugeblad var der en meget rosende omtale, hvor det bl.a. hed:

"Det var en fornøjelse at stifte bekendtskab med dette friske team, der virker som operatører på en maskine, som de fleste virksomheder her i landet næppe nogensinde vil anskaffe magen til ...".

I dag kan man jo købe alle komponenter til en computer, men dengang måtte man lave det hele selv. Derfor blev billardkælderen i villaen indrettet som et mekanisk værksted, hvor alle specialkomponenterne blev fremstillet. RAM-lageret, fx, var et ferritlager bestående af små ferritringe med ledninger igennem efter et bestemt system. Den mekaniske konstruktion til dette lager blev fremstillet i billardkælderen. Selve fremstillingen af ferritmatricen er malende bekrevet af Tage Vejlø i bogen "Niels Ivar Bech - en epoke i edb-udviklingen i Danmark" som også på mange andre områder er en god kilde til information om edb-alderens første år i Danmark.

Der blev indkøbt 65.000 ferritringkerner i USA. To teknikere rejste til Stockholm med alle ringene; der havde de nemlig et apparat som kunne kontrollere om ringene fungerede. Ud af de 65.000 ringe blev der udvalgt 43.000 af de bedste, som efter hjemkomsten til Danmark blev indsyet i planer med et net af 0.3 mm kobbertråd, hvor der i hvert kryds blev placeret en ringkerne. Dette syarbejde blev udført hjemme hos medarbejdernes koner, som "kompensation" for den manglende ægtemage, der praktisk taget altid var på arbejde. Lageret bestod af 1024 såkaldte helceller eller helord, hver på 40 bits. I moderne enheder svarer det til 1024*40/8 = 5120 bytes eller 5 Kbyte. Lageret var dog ikke opdelt i bytes men i helceller og halvceller. Helcellerne havde lige adresser, og halvcellerne havde både lige og ulige adresser (to halvceller pr. helcelle). Det var derfor ikke så let at arbejde med tekster som nu til dags, men Dask var også tænkt som en matematikmaskine, og en tallængde på 40 bits giver faktisk en større præcision end på de fleste moderne maskiner.

Den første enhed, der blev færdigbygget, var strømforsyningen. Dens ensretterrør lyste med et ret kraftigt blåt skær, som kunne ses ude på Bjerregårdsvej. I vejens nederste ende boede nogle ældre mennesker, som passerede nr. 5 når de skulle i byen. En aften var lille p blevet inviteret til middag hos disse beboere, og på et tidspunkt under middagen beklagede fruen sig over at det jo ikke længere var muligt at gå op gennem Bjerregaardsvej med alle disse atomer og elektroner. Ved passage af nr. 5 kunne man tydeligt mærke en voldsom prikken i huden, og det var da klart at det stads ikke kunne holdes inden døre. Hvordan lille p klarede sig ud af denne situation melder historien ikke noget om.

Efterhånden som Dask blev taget i brug blev kapaciteten af ferritlageret utilstrækkelig. Så måtte man supplere med et par tromler, der blev indkøbt som halvfabrikata, og færdiggjort i billardkælderen. Færdiggørelsen bestod i at sprøjte den magnetiske belægning på samt at fremstille og montere læse/skrivehovederne. Den magnetiske belægning, hjemkøbt fra USA, blev sprøjtet på tromleoverfladerne med en malerpistol drevet af en støvsuger. Læse/skrivehovederne blev fremstillet på basis af hjemkøbte ferrithalvdele, som blev poleret på samlingsfladerne og derefter forsynet med en spole på hvert ben og limet sammen. Luftgabet udgjordes af 0.05 mm Aluminiumsfolie. Tromlerne havde en samlet kapacitet på 256 kanaler à 32 helceller, eller 40 Kbyte i moderne måleenheder. Det syntes vi var meget!

En helt uundværlig del af Dask var kontrolbordet. Til at begynde med var det placeret i havestuen på et vaskebord hentet op fra kælderen, men senere blev det flyttet til en krog i spisestuen, hvor det fik et mere solidt skrivebord at stå på. Til sidst blev der lavet et hul i væggen mellem spisestuen og dagligstuen, og her blev kontrolbordet placeret, så man kunne betjene det inde fra dagligstuen. Ved denne lejlighed blev der installeret en soroban oven over kontrolbordet, forsynet med følgende indskrift: Ved maskinfejl, knus ruden og regn videre.

Aage Melbye ved kontrolbordet
Aage Melbye ved kontrolbordet

Personen på billledet er Aage Melbye, der senere blev direktør for Sparekassernes Datacenter og præsident i IFIP. Han sidder faktisk og læser hullerne i en papirstrimmel, i håb om at finde en fejl. Dette var ganske almindeligt, alle kodere kunne læse papirstrimler, og nogle var ganske fantastiske til det.

Mulighederne for at få data ind og ud af Dask var nemlig yderst begrænsede set med nutidige øjne. Fra starten var der kun følgende ind/ud-enheder: en 5-kanals strimmellæser, en 5-kanals perforator udlånt af Post- og Telegrafvæsenet, samt en elektrisk skrivemaskine med typearme (det var før kuglehovedet var opfundet), som dog kun kunne bruges til output. Skrivemaskinen kunne i teorien trykke 12 tegn pr. sekund, men var meget upålidelig. Problemet var at typearmene ofte faldt for langsomt tilbage efter et anslag, hvilket medførte at typearmen for næste anslag kom for tidligt og ramte den faldende typearm, hvorved de filtrede sig ind i hinanden. Dask kørte dog glad og fro videre, så de næste aktiveringer af typearme skabte en ren fuglerede af indfiltrede typearme, som var meget vanskelig at rede ud. Derfor blev skrivemaskinen kun brugt til kontroludskrifter af mindre omfang. Da der således hverken var noget tastatur eller nogen dataskærm, måtte al indlæsning og trykning ske off-line via papirstrimmel. Off-line apparaturet var et fjernskriverlignende apparat kaldet en flexowriter, der var en skrivemaskine med mulighed for hulning og læsning af papirstrimler. Produktion af strimler på flexowriteren var forholdsvis problemfri, men læsning af de srimler, der blev produceret at perforatoren på Dask, voldte en del problemer; det skyldtes at afstanden mellem hulrækkerne på stimlen af og til varierede så meget, at flexowriteren, der læste strimler ved hjælp af et lille tandhjul, der greb ind i nogle små føringshuller midt på strimlen, ikke kunne læse stimlen, men blot førte den gennem læseaggregatet uden at aktivere typearmene.

Hastigheden af strimmelæser og perforator var ikke imponerende: hhv. 200 og 140 tegn pr. sekund. Hen ad vejen blev denne ret umulige tilstand dog afhjulpet, ved at der kom en ny strimmellæser samt en linieskriver.

Den oprindelige 5-kanals strimmellæser virkede på den måde at den ene kanal var afsat til synkroniseringsformål ved indlæsning, idet den virkede som et slags taktspor der signalerede at der var et tegn under læseaggregatet. Dette gjorde læsningen ufølsom overfor variationer i afstanden mellem tegnene på strimlen. Til gengæld var der kun fire kanaler til rådighed for egentlige data, hvilket gav mulighed for 16 forskellige hulkombinationer, altså et hexadecimalt - eller som man sagde den gang: sedecimalt - tegn. Denne begrænsning havde store konsekvenser for operativsystemet på Dask. Fx var det nødvendigt at kode tallene; et tal som 2.35 skulle - opfattet som flydende tal - kodes således: C2D35A. Ved udlæsning var der flere tegn til rådighed, bl.a. plustegn, minustegn og punktum, så tal kunne altså (heldigvis)trykkes på en læselig måde.

Billedet viser strimmellæseren set fra siden. Den var bygget ind i en stålkasse af samme farve som panelerne på Dask, men siderne af denne kasse er fjernet på billedet. Man kan se elektronikken i bunden af skabet og oven over ser man den vandrette lyskanon med en lille lommelampepære længst til højre. Lyset fra denne pære blev kastet ind i et prisme der sad på læserens frontplade, og her blev det afbøjet i en ret vinkel og fortsatte ned på strimlen. Nedenunder strimlen (længst til venstre på billedet) kan man skimte en kasse, der indeholdt nogle fotoceller som opfangede det lys der slap igennem strimlen, d.v.s. dér hvor der var huller.

Direktør Bech havde tidligt store visioner om at anvende computere til kontorautomatisering, og her var de fire databits naturligvis håbløst utilstrækkelige. Det var nødvendigt at kunne behandle både tekst og tal. De sedecimale cifre havde en ekstern repræsentation på flexowriteren som de 10 cifre plus bogstaverne A til F, og vi spekulerede en overgang meget over hvad man egentlig kunne skrive med dette begrænsede alfabet. En af de få sætninger vi kom frem til var FEDE ABE, men det kommer man jo ikke langt med indenfor kontorautomatisering. Løsningen på dette problem var at videreudvikle 5-kanals strimmellæseren til at kunne læse 8-kanals strimler. Med én kanal afsat til kontrolformål er der da mulighed for 128 forskellige tegn, svarende til fx ASCII alfabetet som vi kender det den dag i dag. Dette blev da også gjort, men det var lidt besværligt, idet der måtte monteres en omskifter på kontrolbordet til valg mellem de to muligheder, samt udvikles en særlig sko til læseaggregatet, baseret på et prisme og otte lysledere. Dog havde man stadig problemet med den ringe læsehastighed. Det viste sig at den kunne presses op til 400 tegn/sek, men det var stadig utilfredsstillende til de store datamængder der var tale om indenfor administrativ databehandling. Løsningen var enten at anskaffe hulkortudstyr eller at udvikle en hel ny strimmellæser. Begge dele blev realiseret, men med noget vekslende held.

Strimmellæseren var den navnkundige RC2000, der blev præsenteret i efteråret 1963, men havde været i drift på Dask og Gier et stykke tid forinden. Princippet i denne strimmellæser var at fremføringen af stimlen ikke skulle starte og stoppe på hvert enkelt tegn, men at der blev læst tegn ind i en elektronisk buffer, hvis fyldningsgrad styrede læsehastigheden. Tophastigheden kunne herved sættes op til 2000 tegn pr. sekund, hvilket svarede til en mekanisk fremføringshastighed af strimlen på 18 km i timen. Det var faktisk sådan at strimlerne stod vandret ud fra læseren og blev opfanget i en platicspand, der blev anbragt i en afstand af 2 til 3 meter fra læseren. Denne opfindelse blev gjort af en meget beskeden og lavmælt tekniker ved navn Kurt Andersen, der var ansat i Regnecentralens Aarhusafdeling. Da han luftede sin idé for Scharøe blev han afvist med den begrundelse at de mekaniske problemer ville være for store, men han var modig nok til at gå til Bech, som gav grønt lys for ideen og under hånden bevilgede penge til inkøb af de nødvendige materialer. RC2000 blev så at sige født i dølgsmål. Der blev gjort forsøg på at patentere RC2000, men det blev afvist med den begrundelse at princippet var beskrevet som eksempel på automatisk styring i en elementær lærebog; her så man altså bort fra alle de geniale detaljer læseren er fuld af, bl.a. gevindskårne lyskanaler til reduktion af uønskede reflekser ved den fotoelektriske aflæsning af hullerne i strimlen, og meget mere. RC2000 blev en kommerciel succes; der blev solgt ca. 1200 af dem fra 1963 til 1973. Billedet herunder viser Bech med sin elskede RC2000.



Hulkortudstyret på Dask var en eklatant fiasko. Det er ikke lykkedes for mig at finde dokumenteret information om dette udstyr i kilderne. Der var tale om en kombineret hulkortlæser/punch af typen Bull-PRD. Udstyret blev kun brugt i yderste nødstilfælde, da det var meget upålideligt. For at forstå hvorfor man ikke købte noget ordentligt hulkortudstyr må man tænke på konkurrencesituationen på edb-området i tresserne. Hovedkonkurrenten var IBM, og IBM baserede sine løsninger på hulkort; hulkort var derfor pr. definition noget skidt! Der udkæmpedes en slags religionskrig mellem tilhængere af papirstrimler og tilhængere af hulkort, og medarbejderne på Regnecentralen var uden undtagelse overbeviste strimmelfundamentalister. Det dårlige hulkortudstyr på Dask blev så at sige en bekræftelse på at hulkort ikke kunne bruges til noget fornuftigt.

Hulkortudstyret er ellers interessant, fordi det var det første udstyr på Dask der krævede et drivprogram (det er det der hedder en driver på nudansk). Ved alle de andre hidtil omtalte ydre enheder kunne man anvende maskinens grundoperationer for input/output. Det var forbudt at benytte disse grundoperationer i forbindelse med hulkort. Der var ganske vist intet til hinder for at man alligevel gjorde det, Dask havde ingen beskyttede ordrer, men man pådrog sig alles vrede, og det var sikkerhed nok. Drivprogrammet blev programmeret af en medarbejder ved navn Brodersen. Han gik meget op i programmeringsmæssige detaljer (det man i dag kalder en "bitnusser"), og hans navn blev derfor udtalt med tryk på anden stavelse, Brodérsen, når han ikke selv var til stede. Hans drivprogram viste sig da også at være helt utilgængeligt for andre end ham selv - en vaskeægte black box. Jeg husker et projekt vi havde for prins Peter, der havde været i Tibet og havde målt dimensionerne af hovedskallerne på en masse tibetanere. Disse data var registreret på hulkort, flere kasser fulde, og prins Peter ville gerne have udført nogle statistiske beregninger på dataene. I en sen nattetime læste en af mine gode kolleger den gang, Morten Pust, hulkortene ind i Dask ved hjælp af Brodérsens læseprogram. Pludselig smed hulkortmaskinen ca. 50 hulkort hulter til bulter ud på gulvet og stoppede med en fejludskrift i form af et nummer trykt på skrivemaskinen. Pust slog op i Brodérsens dokumentation, og fortalte mig næste morgen at der stod: "Indlæs de tabte hulkort igen i samme rækkefølge". Uheldigvis var prins Peters hulkort ikke nummererede! Hvordan han klarede situationen husker jeg ikke - formentlig spillede rækkefølgen ikke nogen rolle for beregningerne.

Hen ad vejen fik Dask også en linieskriver, som var helt nødvendig til administrativ databehandling Det var lidt af et monstrum, men den virkede. Den kunne trykke med den formidable hastighed af 1000 linier pr. minut. Det mest imponerende ved dette apparat var måske nok styreenheden, der fyldte et stålskab på størrelse med et mindre klædeskab. Denne styrenhed var konstrueret af Regnecentralens egne folk, og dens størrelse skyldtes at linieskriverens hammerforstærkere (det er de forstærkere, der sidder i hver trykposition, og som slår typerne ind på papiret) krævede en samlet kapacitet på 1 Farad for at virke tilfredsstillende. Kondensatorer i frit køb har ikke så store kapaciteter; deres kapacitet måles i milliFarad eller endog picoFarad. Derfor sad der i tusindvis af kondensatorer i parallel inde i skabet. Selve linieskriveren kunne ved hjælp af en omskifter på kontrolbordet erstatte enten skrivemaskinen eller perforatoren, og kunne indstilles til 5-kanal eller 8-kanals alfabetet ved hjælp af nogle koblingstavler; det er de små kasser der hænger på styreenheden på billedet. Linieskriveren kunne trykke tekst på papir af tre formater: A4 på højkant, A4 på tværs, og hvad vi kaldte "stor DASK" (102 linier à 120 anslag pr. side). På billedet er der stor DASK i linieskriveren, og der ligger en stak A4 på den nederse hylde. Der kunne kun trykkes på særligt papir med føringshuller i kanterne.

Endelig må det nævnes at der skam også med tiden kom magnetbåndsstationer på Dask. De var af mærket Ampex og der var fire af dem. Hvorfor der kun er tre på nedenstående billede skal jeg lade være usagt. Hver spole havde en kapacitet på 7000 blokke á 65 helceller. Det første ord på hver blok indeholdt bloknummeret, og var spærret for skrivning. Rådighedskapaciteten var derfor 7000*64*40/8 = 2.24 Mbyte/spole, altså ca. det dobbelte af en moderne 3.5" diskette. Også disse ydre enheder krævede særlige drivprogrammer, som imidlertid var af bedre kvalitet end drivprogrammet til hulkortudstyret. Men båndstationernes fysiske kvalitet var desværre meget ringe. Der kom ustandselig fejl ved læsning og skrivning, så det var en træls affære at lave registerbehandling på Dask. Jeg husker en episode hvor Bech skulle demonstrere båndsortering for nogle potentielle kunder. Det var en proces der normalt tog adskillige minutter selv for ret små datamængder. Som et eksempel kan jeg nævne, at en sortering af 1000 blokke, i en af mine kilder (en beskrivelse af et sorteringsprogram), angives at have taget 21 minutter. Bechs demonstration gik godt nok i gang, båndene rullede lystigt rundt på båndstationerne, men efter ca. 30 sekunders forløb gik det hele i stå. Vi andre fik røde ører, men Bech sagde lynhurtig uden at fortrække en mine: "Det var det. Og her henne har vi så selve kontrolbordet.", hvorefter selskabet imponeret gik videre i rundvisningen.

Det var først og fremmest magnetbåndsstationernes upålidelighed der var årsagen til det meget forkætrede rygeforbud i spisestuen og dagligstuen på Bjerregaardsvej. Før magnetbåndenes tid skulle man af og til kæmpe sig gennem tætte røgskyer hvis man ville hen til kontrolbordet.



Efter at magnetbåndene var koblet til Dask kom der rigtig gang i den administrative databehandling. Der blev bl.a. udviklet programmer til manipulation af data på magnetbånd, og her iblandt først og fremmest sortering. Der udviklede sig ligefrem en kappestrid om hvem der kunne lave det mest effektive sorteringsprogram, men som altid på Regnecentralen i en venlig og sportslig atmosfære. Jeg husker således at Ove Reé, der forøvrigt var uddannet jurist og senere startede sit eget konsulentfirma, pludselig en dag i april 1962 udgav en programspecifikation med følgende forside:


H A R D E S O R T E R I N G S B E S V Æ R ?

Lad Radix ordne det for Dem

RADIX den nye vidundermetode løser legende let og lynhurtigt de mest indviklede sorteringsopgaver

ANBEFALET AF FØRENDE SPECIALISTER

Radix skåner båndene og

Kører 93 % sikrere end før

Ingen -dage med Radix

De undgår dårlige nerver og mavesår

Vil De have succes.....

BRUG RADIX

Radix giver nyt liv til gamle programme


Det syede lager

Det er bemærkelsesværdigt, at en af de første oversættere til programmeringssproget Algol kørte på Dask. Den blev udviklet af en gruppe kaldet compilergruppen, ledet af Peter Naur, og med Jørn Jensen som programmeringsmæssig ankermand. DaskAlgol blev færdig i september 1961. Det er klart at kørsel baseret på strimler er helt uakseptabelt når man vil programmere i Algol. Fx skal alle standardfunktionerne jo ligge permanent i maskinen. Men det var ferritlageret for lille til. Løsningen på dette dilemma blev hvad jeg tror er et af de første ROM-lagre i verden.

Der var enkelte ubenyttede ordrer i Dasks ordrerepertoire, de såkaldte blindordrer. En af dem blev nu ophøjet til at være et sekvenshop (dvs. et hop med gemning af returadressen) til et nyt lager, det syede lager. I dette lager var der en stor permanent magnetring for hver bit i et ord, ialt 40. Gennem eller udenom - svarende til henholdsvis 1 og 0 - var der trukket ledninger, lige så mange som der var celler i lageret, ialt 1024. Lageret var syet på en sådan måde at dets indhold opfattet som ordrer netop var de hjælpeprogrammer der skulle bruges af Algoloversætteren. Programmering af dette lager bestod altså i at trække alle ledningerne, med andre ord i ren binær programmering. Den eneste måde at komme i forbindelse med lageret på var med det nye sekvenshop; det var altså umuligt at skrive i lageret, der var kun ordrer i lageret, og man kunne kun hoppe til det.

Dette lager var ifølge sagens natur også tilgængeligt for os andre, der programmerede i maskinkode, og det betød en stor lettelse, fordi alle standardfunktioner nu var tilgængelige on-line, hvis man blot kendte deres indhopsadresse i det syede lager. Man skulle imidlertid være forsigtig, for der var ingen sikkerhedsnet. Hvis man hoppede forkert ind i lageret kunne man risikere at kontrollen forblev inde i lageret til evig tid, i en uendelig løkke, og så var man hjælpeløst fortabt. Det eneste der var at gøre var at slukke for Dask og starte igen, hvilket var en højst kompliceret affære der involverede manipulation af adskillige kontakter og afbrydere.

Dask til folketingsvalg

En af de mere spektakulære anvendelser af Dask var dens medvirken ved folketingsvalget i den 15. november 1960 (altså før Algol og det syede lager). Programmet til denne lejlighed blev kodet af en gruppe på en fire fem mand, hvor bl.a. jeg selv var med. Hele opgaven blev opdelt i stumper, der var nogenlunde uafhængige af hinanden: indlæsning af afstemningsresultater (som vi fik fra indenrigsministeriet pr. telefon), optælling af stemmer for valgsteder, valgkredse, kommuner, amter, områder og hele landet, udregning af prognoser og trykning af valgresulteter. Jeg kodede stemmeoptællingsdelen af programmet. Hele programmet blev planlagt og kodet i maskinkode (ialt ca. 4000 ordrer) på omkring 5 uger, hvilket må siges at være lidt af en præstation, når man tager i betragtning at man også skulle planlægge afviklingen af selve valgaftenen i samarbejde med Indenrigsministeriet og Danmarks Radio. Der medvirkede omkring 35 af Regnecentralens medarbejdere på valgaftenen, til telefonaflytning fra Indenrigsministeriet, hulning, kontrol, fejlrettelser etc. Det var Aage Melbye der stod for systemarbejdet og hele planlægningen, men det blev ikke kaldt systemarbejde, for det begreb var ikke kendt på den tid. Man talte kun om kodning og planlægning.

En af vanskelighederne bestod i at Dask jo ikke kunne flyttes. Derfor blev der etableret datatransmission fra Bjerrgaardsvej til Rosenørns Allé, og Scharøe udviklede noget specialudstyr så man kunne læse strimler ind på Bjerrgaardsvej og få hullet dem ud igen i Radiohuset. Her blev de så udskevet på flexowriter. TV befandt sig også i sin barndom, så af tekniske grunde måtte tallene overføres til store skilte af en hel hær af skiltemalere. Det var disse skilte der sluttelig blev vist på TV-skærmene i de små hjem.

Generalprøven viste at der var nogle kodefejl hist og her, og jeg fik til opgave at indføre rettelserne i programmet mens det var i maskinen (der var ikke tid til at lave nye strimler). Alle døre ind til dagligstuen blev lukket, alle andre blev jaget ud, og så sad jeg der i fuldstændig isolation og indførte alle rettelser ved af manipulere med kontrolbordet. Det foregik lige inden vi gik i luften og er måske nok de mest nervepirrende minutter i hele min datalogiske løbebane.