Renovering Datapoint 2200 retrodator

Berätta om dina pågående projekt.
MiaM
Inlägg: 9990
Blev medlem: 6 maj 2009, 22:19:19

Re: Renovering Datapoint 2200 retrodator

Inlägg av MiaM »

(inte sett hela videon - jag är slacker :D )

"När man ser videon förundras man över hur mycket av administrationen som var helt manuellt. Många telefonsamtal hit och dit." Allmänt så var det väl väldigt mycket manuellt på 70-talet även om man datoriserade saker. Terminalerna var dyra jämfört med personal. Britterna verkar väl också mer ha haft järnvägen som arbetsmarknadspolitisk åtgärd än vi har (haft?). Jämför att just nu är det ramaskri från personalen att de stänger biljettluckor. Hur ska tant Agda köpa biljett nu, brölar de fast de mest bara bryr sig om sina arbetstillfällen.

Vet inte hur Sverige styrde frakt osv. Men däremot var vi väl hyggligt tidigt ute med elektronisk platsbokning osv. Det var tänkt att vara samarbete med norska NSB men det slutade med att enbart SJ körde detta. SNAP = Sverige Norge Automatisk Platsbokning, kördes på minidatorer från Norsk Data. Tror att de första varianterna enbart kunde dela upp sträckor på ett fåtal stationer, så om man t.ex. köpte platsbiljett från Kolbäck till Enköping så var det nog risk att biljetten var bokad hela vägen mellan Örebro och Stockholm i systemen trots att det stod Kolbäck och Enköping på biljetten.
MattisLind
Inlägg: 742
Blev medlem: 27 maj 2011, 20:27:12
Ort: Älvsjö
Kontakt:

Re: Renovering Datapoint 2200 retrodator

Inlägg av MattisLind »

Jag har inte hållit på speciellt mycket med Datapoint 2200 hårdvaran på sista tiden, men mer med en liten simulator för den som jag kallar dp2200sim.
Nu har jag kommit så lång att jag kan exekvera instruktioner och se minnesinnehåll och registerinnehåll. Mycket återstår innan den går att använda på något vettigt sätt. Men målet är att de band som fungerar ska kunna köras i simulatorn. Kan vara bra att ha när man ska debugga hårdvaran kanske. Eller om man ska skriva ett program för den.
Screenshot 2023-10-29 at 17.33.56.png
Man fick i alla fall lära sig en hel del om curses och refresha det man glömt om c++.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
MiaM
Inlägg: 9990
Blev medlem: 6 maj 2009, 22:19:19

Re: Renovering Datapoint 2200 retrodator

Inlägg av MiaM »

Trevligt!

Frågan som alla nyfikna slackers (nån mer än mig?) ställer är: Hur lik/olik är den jämfört med Intel 8008? :)

Sidospår: Det där med att lära sig curses var väl vad som fick mig att inte orka fortsätta när jag var i färd att göra simulator för Motorola MEK6802D5 (6802-enkort-utvärderings/inlärningskort som jag köpte här på forumet för en evighet sen). Vilket år som helst kanske man skulle ta tag i det igen...

Gravt sidospår: Nu när Linux går över från X11 till Wayland (eller vad det heter) så kan man hoppas att de också gör nån liknande omvälvande ändring för terminalen.
MattisLind
Inlägg: 742
Blev medlem: 27 maj 2011, 20:27:12
Ort: Älvsjö
Kontakt:

Re: Renovering Datapoint 2200 retrodator

Inlägg av MattisLind »

8008 och Datapoint 2200 är väldigt lika. Alla instruktioner mellan 200 oktalt och 377 oktalt är identiska. IO är helt annorlunda. 8008 har en ganska generisk mekanism medan Datapoint är rätt hårdkodad. Det finns inga Increment och Decrement instruktioner i Datapoint 2200. Datapoint 2200 har 16 nivåers stack. Datapoint 2200 version II har två registeruppsättningar, ALPHA och BETA. Och så lite andra småsaker.

Tyckte nog att ncurses inte var så jobbig ändå. Lite störande att vissa saker är macros som man tror är funktioner. Man inbillar sig att man ska skicka in en pekare som argument.. Men icke. Går förhållandevis enkelt att peta ihop ett enkelt fönstersystem och hex-edito och lite annat.
MattisLind
Inlägg: 742
Blev medlem: 27 maj 2011, 20:27:12
Ort: Älvsjö
Kontakt:

Re: Renovering Datapoint 2200 retrodator

Inlägg av MattisLind »

IMG_2685.JPG
Jahopp. Det har gått en månad och det som har hänt är att jag kopplade upp nätagget till en variac för att kunna mata på AC. Kopplade in 4 stycken parallelkopplade 60Watt lampor för att strömbegränsa liyte om det skulle gå käpprätt åt skogen. Hade dessutom ersatt trimpotten med en riktig pot för att inte kortsluta något eller döda mig själv när jag petade runt i PWM-generatorn som ligger och flyter på AC-in.

Det gick inte åt skogen. Vid full 235VAC in så låg det 38V över lamporna och strömmen som gick in i agget var på 0.41A. Lamporna glödde hemtrevligt. Ut fick jag 6A vid 6V över ett par seriekopplade 0.5ohms motstånd. Körde så en halvtimme och anser nu att allt fungerar så bra att nästa steg är att verifiera den riktiga kontroll-logiken och koppla ihop allt.

Jag har under månaden som gått också arbetat rätt mycket med att få fason på simulatorn och nu tycker jag den funkar ganska bra.



Man kan t ex köra en kassett-avbild som heter Games.tap. Jag fick den skickad till mig som WAV-fil och modifierade en existerande dekoder så att den lyckades hantera datat. Ut kom en .tap-fil som kan köras i simulatorn. I repot finns den filen och en del andra .tap-filer med om man vill prova (https://github.com/MattisLind/DP2200/). Den bygger under Linux och MacOS.

Spelen är ganska simpla och ibland svårt att veta hur de fungerar. De exekverar ofta allt för snabbt vilket man kan lösa genom YIELD kommandot så minskar hur mycket CPU-tid simulatorn får. Det kan ju vara så att det fortfarande finns mindre problem med hur simuleringen hanterar keyboard och display IO, vet inte helt säkert.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
MattisLind
Inlägg: 742
Blev medlem: 27 maj 2011, 20:27:12
Ort: Älvsjö
Kontakt:

Re: Renovering Datapoint 2200 retrodator

Inlägg av MattisLind »

Plockade from själva moder-modemet till Datapoint 2200 och jämförde mot schemat för att ta reda på vilka funktioner som fanns var. Resultatet blev denna bild.
DP2200.png
På kretskortet har vi två 74181 som är ALUn. Två stycken 74194 shiftregister är accumulator A, en för ALPHA och en för BETA (två uppsättningar register som man kan växla mellan). Övriga register, B, C, D, E, H och L finns i två 7489 RAM chip. Flaggor, Parity, Carry, Sign och Zero lagras i fyra stycken 7474 Dual-D-vippor. Paritet beräknas med hjälp av en 74180. Stacken består av fyra stycken 7489 RAM. Ger sexton nivåers stack. En 74193 är stackpekare. P-registret (programräknaren) är implementerat genom fyra 74193 räknare. För att adressera minne används fyra stycken 7475 Quad-D-vippor. Till detta minnesaddressregister överförs H och L när data ska läsas eller skrivas till minnet. Det finns sexton 1k minnesbankar fördelat på upp till fyra kort. Aktiv minnebank pekas ut med en 74154. Instruktionsregistert är två 7475 och för att skapa alla states i sekvensmaskinen använder man fyra 7495 shift-register. Maskinen har inget boot-ROM utan bootar genom att sekevnsmaskinen läser seriellt data direkt från kassett-enheten rakt in i minnet och sedan hoppar till adress 0.

Schemat består av fem sidor varav tre ägnas åt instruktionsavkodning och sekvensgenerering medan datavägarna bara tar upp två sidor.

Intressant att så stor andel av komponenterna på kortet utgörs av logik för avkodning och sekvensgenererimng och så lite utgörs av de faktiska datavägarna. Totalt 112 chip på kortet, inte ett enda programmerbart chip så långt ögat kan nå.

Jag undrar just om inte en mikrokodad design hade tagit upp mindre plats. Datapoint 2200 version II är ungefär samtida med PDP-11/05 som använda rätt mycket programmerbar logik för instruktionsavkodning och dessutom har 256x32 bits mikroprogram.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
anders_bzn
Inlägg: 5462
Blev medlem: 17 december 2008, 19:22:18
Ort: Kävlinge
Kontakt:

Re: Renovering Datapoint 2200 retrodator

Inlägg av anders_bzn »

Det är intressant att läsa, om hur du angriper problemet och verkligen förstår hur maskinen ska fungera innan du startar den. Detta är en mycket bra metod har jag insett. Nu ser jag ifram emot fortsättningen.

Dessutom verkarj ju bootmetoden vara väldrigt "rå". Att boota från RK05 på PDP-8 är ju lite i samma klass som detta. Fast där behöver man ladda en bootloader på hela två instruktioner.
MiaM
Inlägg: 9990
Blev medlem: 6 maj 2009, 22:19:19

Re: Renovering Datapoint 2200 retrodator

Inlägg av MiaM »

Frågan är väl vad mikrokod hade gjort för hastigheten?

Vet inget om hur snabb den är i förhållande till hur snabb den behöver vara för att göra ett bra jobb, men allmänt så blir väl mikrokod nästan alltid långsammare om allt i övrigt är byggt med kretsar som klarar samma hastighet?
Användarvisningsbild
petertub
Inlägg: 391
Blev medlem: 21 september 2022, 15:59:11
Kontakt:

Re: Renovering Datapoint 2200 retrodator

Inlägg av petertub »

Väldigt intressant arkeologi om datapoint.

Datapoint hade en buss som kopplade samman periferienheter. Till denna kunde man ansluta skrivare.
Undertecknad lyckades tillverka ett kort till detta så vi kunde sälja facits 45-series skrivare , en prisvärd
och snabb skrivare som konkurrereade ut det datapoint kunde sälja. Vi kunde dessutom använda
kortet till lineprinters, datapoint sålde dataproduct 2230 ( 300 radet / minut) vi sålde 2260 ( 600 rader/minut)
för ett lägre pris. Men det visade sig att bussen blev så nedlastad att den knappt skrev med mer än
300 rader/minut och dessutom slöades hela anläggningen ner.

Men bussen var intressant och kunde varit ett föredöme .
MattisLind
Inlägg: 742
Blev medlem: 27 maj 2011, 20:27:12
Ort: Älvsjö
Kontakt:

Re: Renovering Datapoint 2200 retrodator

Inlägg av MattisLind »

Efter diskussioner med en annan 2200 expert så måste jag nog rätta mig när det gäller bilden ovan. A registret ligger in register-filen (7489) och verkar kopieras in till accumulatorn som utgörs av två 74194 fyra bitars skiftregister. Alltså inget ALPHA och BETA där som jag svamlande om.

anders_bzn skrev: 4 december 2023, 18:42:20 Det är intressant att läsa, om hur du angriper problemet och verkligen förstår hur maskinen ska fungera innan du startar den. Detta är en mycket bra metod har jag insett. Nu ser jag ifram emot fortsättningen.

Dessutom verkarj ju bootmetoden vara väldrigt "rå". Att boota från RK05 på PDP-8 är ju lite i samma klass som detta. Fast där behöver man ladda en bootloader på hela två instruktioner.
Tackar! Tror det är lite enklare att förstå maskinen om man gör så. Förhoppningsvis lyckas man reparera den om den är trasig sedan. Bootloaderna är verkligen enkel i denna. 0 instruktioner! Hårdkodat att börja spela bakre kassetten och sedan bara skifta in data byte för byte och uppdatera P mellan varje.
MiaM skrev: 4 december 2023, 20:14:12 Frågan är väl vad mikrokod hade gjort för hastigheten?

Vet inget om hur snabb den är i förhållande till hur snabb den behöver vara för att göra ett bra jobb, men allmänt så blir väl mikrokod nästan alltid långsammare om allt i övrigt är byggt med kretsar som klarar samma hastighet?
Ja, det är ju en bra fråga. Tror nog att det kan gå i vilken riktning som helst. Beror på hur bred mikrokoden är och hur mycket den lyckas göra parallellt. Det är ju bara två olika sätt att göra en tillståndsmaskin. Men visst, PROM-accesstiden måste ju vara låg på sammsa sätt som fördröjningen i grindnätverket måste vara låg om man använder random-logic. Tror att huvudanledningen i det här fallet var att bipolära PROM var helt nytt 1971 och väldigt dyra fortfarande.

En Datapoint 2200 verkar ha en klocka på 4 MHz (om man får tro schemat) som delas ned till 2MHz. Den matas till en serie 7495 skift-register som skapar de olika staten. Känns som väldigt låg hastighet.

petertub skrev: 6 december 2023, 08:52:52 Väldigt intressant arkeologi om datapoint.

Datapoint hade en buss som kopplade samman periferienheter. Till denna kunde man ansluta skrivare.
Undertecknad lyckades tillverka ett kort till detta så vi kunde sälja facits 45-series skrivare , en prisvärd
och snabb skrivare som konkurrereade ut det datapoint kunde sälja. Vi kunde dessutom använda
kortet till lineprinters, datapoint sålde dataproduct 2230 ( 300 radet / minut) vi sålde 2260 ( 600 rader/minut)
för ett lägre pris. Men det visade sig att bussen blev så nedlastad att den knappt skrev med mer än
300 rader/minut och dessutom slöades hela anläggningen ner.

Men bussen var intressant och kunde varit ett föredöme .
Intressant! När ungefär i tiden var detta?

Datapoint IO bussen är väldigt enkel i sin utforming. 8 databitar ut, 8 data bitar in. Antingen kan STATUS eller DATA läsas in. Det finns fyra kontroll-strobe signaler som låser data i kontroll-register i perifieri-enheten. En data-strob för att låsa data. Inga interrupt, ingen DMA eller liknande. Datorn måste polla devicet och flytta allt data för hand. Diskkontrollers hade buffert för att kunna mellanlagra ett antal sektorer som datorn kunde hämta upp när de var klara.

Kan nog tänka mig att det går en hel del processor-tid för att hantera 300 rader per sekund. Den ska polla och sedan skriva en byte.

Jag har inga IO-enheter, men har en plan om att bygga en IO-enhet med en modern mikrocontroller och lite kring-logik. T ex för att emulera en floppy-drive och kanske en printer. har en Diablo typhjulsskrivare som jag skulle vilja koppa till den. Men kan jag hitta rätt drivrutiner?
Användarvisningsbild
petertub
Inlägg: 391
Blev medlem: 21 september 2022, 15:59:11
Kontakt:

Re: Renovering Datapoint 2200 retrodator

Inlägg av petertub »

Anpassningen till DP bussen gjordes 1981-82 eller möjligen något år senare.

Vi sålde åtskilliga facit och några dataproduct till DP installationer.
Skriv svar