Sida 7 av 15
Re: Restaurera en PDP11/04
Postat: 11 september 2013, 21:08:45
av anders_bzn
Angående DIP-switcharna, hur har datorn förvarats? Jag läste lada någonstans, innebär det att den stått kallt?
Om det inte varit fukt inblandat så förstår jag inte hur de slutat att fungera, jag menar att de borde behållit "värdet" de var inställda på.
Re: Restaurera en PDP11/04
Postat: 11 september 2013, 22:30:18
av bqt
I mitt fall har det varit stående i datorhall. Jag vet inte om DEC använde någon riktigt låg kvalitet på dip-switchar ett tag, men dom tenderar att bli opålitliga. Och rör man dom är det nästan garanterat att dom sedan blir fel. Men motion brukar få ordning på dom igen. Så det är något form av ärgning i vara vanlig luft som är nog för att dom ska få kontaktproblem.
Re: Restaurera en PDP11/04
Postat: 12 september 2013, 07:52:21
av MattisLind
anders_bzn skrev:Angående DIP-switcharna, hur har datorn förvarats? Jag läste lada någonstans, innebär det att den stått kallt?
Om det inte varit fukt inblandat så förstår jag inte hur de slutat att fungera, jag menar att de borde behållit "värdet" de var inställda på.
Den har stått i en torr för detta lada. Det blir naturligtvis kallt på vintern, eftersom det inte finns någon uppvärmning. Men det finns inga djur där (det var väldigt länge sedan) så det blir ju inte fuktigt.
Det som jag tyckte var märkligt var att det inte hjälpte att "motionera" switcharna.
Re: Restaurera en PDP11/04
Postat: 12 september 2013, 20:44:16
av MattisLind
PDP11GUI
Jag skulle ju prova PDP11GUI skrivet av Jörg Hoppe. Först knåpade jag ihop en "Machine Description". Därefter krånglade jag med drivers för Prolific chipet som sitter i USB<->serieports-dongeln. Dessa drivers verkar ha stor förmåga att ge Kernel Panic på vilken maskin som helst. Både Mac och Windows... Nåja. Efter ett tag fungerade det.
Det går inte snabbt precis när man kör allt över 9600 bps. Man kan testa minne och disassemblera kod. Det går att ladda in filer från värddatorn in i minnet på maskinen och exekvera dem. Man kan kopiera en skivminnesimage till ett disk-device i maskinen. Väldigt mycket mer användbar än föregångarna. Fast det är klart, det är ju naturligtvis fusk att använda en dator med 1000 gånger högre prestanda för att agera konsol...
Re: Restaurera en PDP11/04
Postat: 12 september 2013, 21:51:14
av anders_bzn
Det ser ju riktigt kompetent ut. Borde man prova. Finns det disk-image:ar så man kan få igång till RSX om man saknar media själv?
Vi har flera PDP11 som ska igång, men jag vet inte om vi har så bra ordning på diskarna...
Har 11/23+ 11/34 11/35 11/84 och en micro 11/73.
Jag har aldrig jobbat med PDP11 eller kört någon. 11/35 har jag haft ström på och det gick göra deposit/examine till minnet. Med denna tråden blir man bra sugen...
Fast det står en 8/A på tur också...
Re: Restaurera en PDP11/04
Postat: 14 september 2013, 20:07:14
av MattisLind
BASIC!
Det vore kul att köra något på riktigt i maskinen. Det finns ganska många filer som är kopior av pappersremsor liggandes på nätet. T ex BASIC:
http://iamvirtual.ca/PDP-11/Basic-11/DE ... PB-PB.ptap
Problemet är att den är i "Absolute Binary Loader" format. PDP11GUI läser inte detta format (än). Så jag skrev ett litet program i C som konverterar filen till ett enklare format med en adress och en 16 bitars data ord per rad i oktalformat.
Kod: Markera allt
#include <stdio.h>
#include <stdlib.h>
int main (int argc, char ** argv) {
FILE * input, * output;
int ch, state = 0, count, size, sum = 0, address, data=0, start=0;
if (argc==3) {
input = fopen (argv[1], "rb");
if (input == NULL) {
fprintf(stderr, "cannot open file %s for reading\n", argv[1]);
exit(1);
}
output = fopen (argv[2], "w+");
if (output == NULL) {
fprintf(stderr, "cannot open file %s for reading\n", argv[2]);
exit(1);
}
}
else {
fprintf(stderr, "Usage conver <input> <output>");
exit(1);
}
while(!feof(input)) {
ch = fgetc (input);
//fprintf (stderr, "state=%d ch=%02x sum=%02x count=%d start=%d\n", state, ch, sum, count, start);
switch (state) {
case 0:
if (ch != 1) state = 0;
else {
state = 1;
count = 1;
sum += ch;
sum &= 0xff;
}
break;
case 1:
if (ch != 0) state = 0;
else {
state = 2;
count ++;
sum += ch;
sum &= 0xff;
}
break;
case 2:
// read low count byte
size = ch;
state = 3;
sum += ch;
sum &= 0xff;
count ++;
break;
case 3:
// read count
size = size | (ch << 8);
state = 4;
sum += ch;
sum &= 0xff;
if (size==6) {
start = 1;
}
count ++;
break;
case 4:
// read address low
address = ch;
sum += ch;
sum &= 0xff;
state = 5;
count ++;
break;
case 5:
address = address | (ch << 8);
state = 6;
sum += ch;
sum &= 0xff;
count ++;
if (count == size) {
state =0;
}
if (start==1) {
fprintf (stderr, "Start at %06o\n", address);
fclose (input);
fclose (output);
exit(0);
}
break;
case 6:
data = ch;
sum += ch;
sum &= 0xff;
count ++;
if (count == size) {
state = 7;
} else {
state = 8;
}
break;
case 8:
sum += ch;
sum &= 0xff;
data = data | (ch <<8);
fprintf (output, "%06o %06o\n",address, data);
address +=2;
count++;
if (count == size) {
state = 7;
}
else {
state = 6;
}
break;
case 7:
// checksum
sum += ch;
sum &= 0xff;
if (sum!=0) {
fprintf (stderr, "Checksum error chsum = %02X\n", sum);
exit(1);
}
sum = 0;
state = 0;
}
}
}
Därefter kunde jag få PDP11GUI att läsas in det och starta det på adress 016104:
Jag har tydligen tappat allt vad kunnande i BASIC jag någonsin hade på de senaste 20 åren. Dessutom så kan den bara hantera versaler. Efter att ha försökt kopiera in med CTRL-V så HALTade den sig. Kanske skickade terminalprogrammet i PDP11GUI CTRL-V och fick den att göra HALT. Nåja. Den fungerar i alla fall!
Re: Restaurera en PDP11/04
Postat: 14 september 2013, 20:15:23
av bqt
10 FOR A=1 TO 10
20 PRINT "HEJ"
30 NEXT A

Re: Restaurera en PDP11/04
Postat: 14 september 2013, 22:54:31
av pbgp
Snyggt jobbat!
Re: Restaurera en PDP11/04
Postat: 15 september 2013, 16:39:34
av MattisLind
anders_bzn skrev:Det ser ju riktigt kompetent ut. Borde man prova. Finns det disk-image:ar så man kan få igång till RSX om man saknar media själv?
Vi har flera PDP11 som ska igång, men jag vet inte om vi har så bra ordning på diskarna...
Har 11/23+ 11/34 11/35 11/84 och en micro 11/73.
Jag har aldrig jobbat med PDP11 eller kört någon. 11/35 har jag haft ström på och det gick göra deposit/examine till minnet. Med denna tråden blir man bra sugen...
Fast det står en 8/A på tur också...
Ja, den kan verkligen lite av varje. Det är ju betydligt enklare att ha en bootstrap på fil och dumpa in den i minnet än att sitta och knappa på konsolen (med switchar eller ej). Jag kontaktade Jörg angående Absolute Loader. Han la in koden jag skickade och nu kan man med version 1.36 ladda in sådana pappersremsor direkt. När det gäller diskimager så måsta man ju ha det verkliga devicet för att det ska fungera. PDP11GUI klarar MSCP, RL-diskar och RM-diskar. Det finns den del diskimages på bitsavers för RL. Bland annat en RSX11M version 3.2. Hade jag haft en RL11 och en RL02/RL01 skulle jag kunnat använda PDP11GUI att kopiera in en image på disken. Fast jag skulle tro att det tar fruktansvärt lång tid att föra över 5 Mbyte eller så med hjälp av PDP11GUI med 9600 bps serielina.
Re: Restaurera en PDP11/04
Postat: 15 september 2013, 16:44:06
av bqt
Fast du vill nog inte försöka köra RSX på en 11/04... Det är möjligt, men nu pratar vi omappad RSX, vilket gör att man får ett väldigt mycket mer begränsat system. Om man har någon specifik applikation man vill köra kan jag tänka mig RSX, annars är nog RT-11 bättre anpassat för den hårdvaran.
Sedan finns ju RSX-11S också, om man vill köra disklöst. Men då vill du kanske ha en annan maskin i närheten som kan serva saker.
Förresten, men 9600 bps så skickar du ju runt 1K i sekunder. 5 MB skulle alltså i runda slängar ta 5000 sekunder, eller 83 minuter, eller knappt en och en halv timme... Det är ju ett tag, men inte helt omöjligt. Finns det någon felkontroll i den överföringen? Annars skulle jag nog vara orolig för en eller annan missad byte, eller bitfel någonstans.
Re: Restaurera en PDP11/04
Postat: 23 november 2013, 14:08:44
av MattisLind
PROM programmering och BOOT
I ett tidigare inlägg i tråden nämnde jag att det skulle vara bra att ha en programmerare som kunde programmera bipolära PROM. Det visade sig att elektronikforum-medlemen "Säter" hade en DATA I/O 29B. En programmerare från tidigt 80-tal. En dag i början på hösten hade han ett ärende förbi Stockholm och tog med sig programmeraren som jag då fick låna. Tackar så mycket för det "Säter"!!
Med denna trevliga maskin kopplad via en USB serieport till datorn gick det perfekt att bränna äldre PROM:ar. Dessutom hade jag lyckats få tag på de sista Bipolära PROM som Belganet Data Elektronik hade på lager. Så nu har jag tre stycken Motorola MCM7621 PROM brända med bootstrap för TU58 (DD), TU60/TA11 (CT) och MSCP-disk (DU) monterade på mitt M9312 bootstrap kort!
TU58, även kallad DECTape II är en lustig sak som Digital skapade som efterträdare den den gamla DECtape. Kassetter av DC100 typ i en bandstation kopplad med ett kontrollerkort till en serieport på datorn. Varje kassett rymmer 262144 bytes... Problemet med TU58 och nästan alla äldre bandstationer med gummi capstan är att gummit torkar eller faller sönder med tiden. Jag har ett flertal TU58 på lager men alla har mer eller mindre havererade capstan. Det är faktiskt ett enormt stort problem om man ska bevara saker i plast och gummi att polymererna inte är långtidsstabila utan plötsligt faller sönder. Lösningen är att man ganska lätt kan emulera TU58 protokollet på en PC. Det finns varianter att köra under DOS och andra som går att köra på Linux. Jag hittade denna som efter en liten förändring kompilerade fint för MacOS.
http://www.ak6dn.dyndns.org/PDP-11/TU58 ... index.html
Nästa steg är att försöka boota något med hjälp av en TU58 image
Re: Restaurera en PDP11/04
Postat: 23 november 2013, 14:24:19
av säter
Roligt att brännaren fungerar.
Kom du någon vart med att bränna Harris 7611?
Re: Restaurera en PDP11/04
Postat: 23 november 2013, 14:37:13
av sodjan
> Med denna trevliga maskin kopplad via en USB serieport till datorn
He he, vi hade ungefär samma modell (tror att det var DATA I/O 19B) kopplad till en
serieport på våran PDP 11/23. Vi fick PROM filer från utvecklarna i Stockholm (över en
uppringd 2.400 lina) som vi sedan överförde till Data I/O'n. PROM'ar till kretskort för
Ericssons transmissionsutrustning...
Oh well...
Re: Restaurera en PDP11/04
Postat: 23 november 2013, 14:56:40
av MattisLind
säter skrev:Roligt att brännaren fungerar.
Kom du någon vart med att bränna Harris 7611?
Tyvärr inte. Programmeraren visade någon märklig felkod och sedan blev det inget mer. Kanske är det ett problem som man rättat i senare firmware. Men byte av firmware är inte så lätt. Man ska dels hitta en som passar just till denna hårdvara och dels ha rätt sorts EPROM och PAL:ar.
Re: Restaurera en PDP11/04
Postat: 23 november 2013, 15:29:13
av MattisLind
Skapa TU58 image med Ersatz-11
Hur får man tag på en TU58 image att prova på sin gamla maskin. Man kan ju försöka med google, fast det ger inte många bra träffar. Bättre är att laga till en egen! Det gör man med det förträffliga verktyget Ersatz-11, eller E11:
http://www.dbit.com Finns för DOS, Windows, Linux, OS/2 och rå X86 plåt. Som hobbyist är den gratis att använda. E11 emulerar fullt ut en hel massa olika varianter av PDP-11 med tillhörande pereferienheter. Man kan sätta exakt vilken CPU som ska emuleras och hur mycket minne den ska ha.
På bitsavers finns det disk-image:ar som man kan ladda ned och köra. Perfekt om man vill prova ett stenåldersoperativsystem utan att krångla med gammal hårdvara (även om det naturligtvis har sin tjusning). Så här gjorde jag för att skapa en bootbar TU58 image:
Kod: Markera allt
mattis@mattis-VirtualBox:~/Desktop/E11v7$ dd if=/dev/zero of=rtv4dd2.dsk bs=512 count=512
512+0 records in
512+0 records out
262144 bytes (262 kB) copied, 0.00659226 s, 39.8 MB/s
mattis@mattis-VirtualBox:~/Desktop/E11v7$ ./e11
Ersatz-11 V7.0 Demo version, COMMERCIAL USE LIMITED TO 30-DAY EVALUATION
Copyright (C) 1993-2013 by Digby's Bitpile, Inc. All rights reserved.
See www.dbit.com for more information.
E11>mount dk0: /rk05 rtv4_rk.dsk
E11>assign tt1: dda:
E11>mount dda0: rtv4dd2.dsk
E11>boot dk0:
RT-11SJ V04.00C
.D 56=5015
.TYPE V4USER.TXT
Welcome to RT-11 Version 4. RT-11 V04 provides new hardware support
and some major enhancements over Version 3B.
Please use the HELP command; it describes the new options in many
of the utilities.
If you are using a terminal that requires fill characters,
modify location 56 with a Deposit command before proceeding with
system installation. LA36 DECwriter II and VT52 DECscope terminals
do NOT require such modification.
.D 56=0
.INITIALIZE DD0:
DD0:/Initialize; Are you sure? Y
.COPY/SYS DK0:RT11SJ.SYS DD0:
Files copied:
DK0:RT11SJ.SYS to DD0:RT11SJ.SYS
.COPY/SYS DK0:DD.SYS DD0:
Files copied:
DK0:DD.SYS to DD0:DD.SYS
.COPY/SYS DK0:TT.SYS DD0:
Files copied:
DK0:TT.SYS to DD0:TT.SYS
.COPY DK0:(PIP,DUP,DIR,RESORC).SAV DD0:
Files copied:
DK0:PIP.SAV to DD0:PIP.SAV
DK0:DUP.SAV to DD0:DUP.SAV
DK0:DIR.SAV to DD0:DIR.SAV
DK0:RESORC.SAV to DD0:RESORC.SAV
.COPY/BOOT DD0:RT11SJ.SYS DD0:
.COPY/SYS DK0:SWAP.SYS DD0:
Files copied:
DK0:SWAP.SYS to DD0:SWAP.SYS
.COPY STARTS.COM DD0:
Files copied:
DK:STARTS.COM to DD0:STARTS.COM
.COPY DK0:V4USER.TXT DD0:
Files copied:
DK0:V4USER.TXT to DD0:V4USER.TXT
.BOOT DD0:
RT-11SJ V04.00C
.D 56=5015
.TYPE V4USER.TXT
Welcome to RT-11 Version 4. RT-11 V04 provides new hardware support
and some major enhancements over Version 3B.
Please use the HELP command; it describes the new options in many
of the utilities.
If you are using a terminal that requires fill characters,
modify location 56 with a Deposit command before proceeding with
system installation. LA36 DECwriter II and VT52 DECscope terminals
do NOT require such modification.
.D 56=0
.DIR DD0:
RT11SJ.SYS 67 01-Feb-82 DD .SYS 5 01-Feb-82
TT .SYS 2 01-Feb-82 PIP .SAV 23 01-Feb-82
DUP .SAV 41 01-Feb-82 DIR .SAV 17 01-Feb-82
RESORC.SAV 15 01-Feb-82 SWAP .SYS 25 01-Feb-82
STARTS.COM 1 01-Feb-82 V4USER.TXT 1 01-Feb-82
10 Files, 197 Blocks
307 Free blocks
.Killed
mattis@mattis-VirtualBox:~/Desktop/E11v7$ ./e11
Ersatz-11 V7.0 Demo version, COMMERCIAL USE LIMITED TO 30-DAY EVALUATION
Copyright (C) 1993-2013 by Digby's Bitpile, Inc. All rights reserved.
See www.dbit.com for more information.
E11>assign tt1: dda:
E11>mount dda0: rtv4dd2.dsk
E11>boot tt1
RT-11SJ V04.00C
.D 56=5015
.TYPE V4USER.TXT
Welcome to RT-11 Version 4. RT-11 V04 provides new hardware support
and some major enhancements over Version 3B.
Please use the HELP command; it describes the new options in many
of the utilities.
If you are using a terminal that requires fill characters,
modify location 56 with a Deposit command before proceeding with
system installation. LA36 DECwriter II and VT52 DECscope terminals
do NOT require such modification.
.D 56=0
.Killed
mattis@mattis-VirtualBox:~/Desktop/E11v7$ ./e11
Ersatz-11 V7.0 Demo version, COMMERCIAL USE LIMITED TO 30-DAY EVALUATION
Copyright (C) 1993-2013 by Digby's Bitpile, Inc. All rights reserved.
See www.dbit.com for more information.
E11>assign tt1: dda:
E11>mount dda0: rtv4dd2.dsk
E11>set cpu 04
E11>set mem 16
E11>boot tt1
?BOOT-U-�Insufficient memory
%HALT
R0/000765 R1/002124 R2/005006 R3/000035 CM=K PM=K PRIO=0
R4/177276 R5/035606 SP/007762 PC/000724 N=0 Z=1 V=0 C=0
000724 br 000722
E11>set mem 24
E11>boot tt1
RT-11SJ V04.00C
.D 56=5015
.TYPE V4USER.TXT
Welcome to RT-11 Version 4. RT-11 V04 provides new hardware support
and some major enhancements over Version 3B.
Please use the HELP command; it describes the new options in many
of the utilities.
If you are using a terminal that requires fill characters,
modify location 56 with a Deposit command before proceeding with
system installation. LA36 DECwriter II and VT52 DECscope terminals
do NOT require such modification.
.D 56=0
.
Tja, inte så komplicerat. Det man kan nämna är att på E11 i min miljö (Linux / Virtualbox / MACOS) så kan man inte trycka SHIFT-ENTER för att komma tillbaka till E11 prompten. Kör jag Windows / Virtualbox / MACOS fungerar det utmärkt. Det är väl något med hur det hanterar tangentbordsinput under Linux skulle jag tro. Resultatet blev i alla fall att för att boota om så fick jag helt enkelt döda processen.
Tyvärr visade sig en lite irriterande komplikation i och med ovanstående övning: Man måste ha minst 24 k minne för att boota RT11 V4 om man vill använda TU58. Äldre versioner av RT11 fungerar med mindre minne, men i dessa finns ingen driver för TU58.
Målet är i och för sig att köra från den TU60 som kom med datorn. RT11 V3 har driver för TU60 så det ska vara möjligt. Återstår bara att försöka dels få igång TU60 bandstationen och dels skapa ett bootbart band. Inte helt enkelt, men möjligt.