• Please review our updated Terms and Rules here

SIMH PDP8 Ubuntu system build questions

MauriceH

Experienced Member
Joined
Apr 2, 2014
Messages
399
Location
Dordrecht , Netherlands
Having some problem building a new system
I am Running UBUNTU. (I am a complete newby at Ubuntu)
Followed these steps simh-pdp8. (link)
attach the mentioned 3 files.
Boot RX0 -all went well.

Then I am stuck at :
"We start with formatting the disk with the ZERO command:"
.ZERO RKA0:
OUTPUT ERROR
.ZERO RKB0:
OUTPUT ERROR

I get these errors.

Next followed the steps to build.

I run:
".RUN SYS BUILD"

Did a Print and insert the PT8E:pTR,indeed the * is now at PTR
also I notice the SYS * is at RX8E

Ok , Then want to use the RK05.
$DSK RK8E:SYS

SYSTEM and BOOTSTRAP​

The SYSTEM command specifies devices that are system handlers. ....
...
To mark the RK05 drive as the system device:
$SYSTEM RK8E

$BOOT
?SYS
$
-So a failure, what goes wrong here?

Then I took: BUILD the new device

All went well till : And with Print System is at RK8E*
"Run BOOT again and it should work. " Well How to BOOT at $ -prompt.
Save the BUILD data:
.SAVE SYS BUILD

QUESTION:
If I type at "$"prompt BOOT, system hangs.
Then How do I get to the "." DOT-Prompt. to save the build.
Have no clue how to get to the DOT-Prompt from $.
Cntr-E gets me back to sim> and have to start over again.
Cntr-C gets me to DOT but if I :
.SAVE SYS BUILD
I get a SAVE ERROR

If I at "DOT"-prompt type .BOOT RK0 I get a "/" prompt

Thanks for the help
 
One thing I learned recently is that there are two forks of SIMH. If you did the apt-get, you probably have the 3.x fork (my Debian WSL /usr/bin/pdp8 says V3.8-1). The one on github is the other fork and my /home/vrs/bin/pdp8 identifies as "V4.0-0 Beta git commit id: 3eda8f90".

I'd like to believe that either would work for what you are doing, but I have little experience with the V3 SIMH.

This bit:
.ZERO RKA0:
OUTPUT ERROR

makes me think your emulated RK8E isn't working. Most likely the attach command didn't work,so it's as if no pack were inserted. Without "RK05" media attached, the simulation can't initialize your new bootable pack.

Vince
 
One thing to note is that simh pays attention to the files in your current directory. So if your rk05 images are in ~/Downloads or similar, you will want to type cd ~/Downloads before running simh.
 
Vince thanks, Indeed used the sudo apt-get install simh.
As I start PDP8 I get "pdp-8 simulator V3.8-1"

After long search the how to etc etc .
I did not get the argument "sudo"at first, just used apt-get, but get simh installed.

As I just found a new work around at this site: pdp8 emulator Big Dan (link)
That worked and found the missing link, it is

Now type:

$SY RK8E <<<<<<That was the missing argument!
$BOOT
WRITE ZERO DIRECT?Y
SYS BUILT
.
---------
I can now Indeed BOOT RK0 -> Great success after some huge amount of hours/days to get this far.
and have a DIR with files on the RK0 drive, pfff day;s it was.

Ok Now time to get to know how to Load a BIN file , or get something to the REAL PDP8/M.
As at the moment nothing seems to run on that PDP8/M.
Not a boot through a real M8357 with RX02 drive attached in RX01 mode..
Not a boot through a real M8357 with RX02 Arduino Emulation
Not a boot Through OS8DISK SERVER.
All hang in some loop.Lights are flashing on the real PDP8 but that's it.
Used a second CPU set, same results, used a second M8357, exact same result.
Checked manual if I can reach the FIELD1 of the 8k mem. Indeed.
I now understand the EMA Lights.
If 0010 (Bits 6-8) ext adress load -> is select field 1
If I then when EMA=001 ,Load adress 0000 and deposit 0030, I check again and its there.
If I then back to Field 0 , 0000 ext addr load, and Load addr 0000, deposit 0003 I get MD=0003
Back to 0010 (6-8 set Field 1) EXT adrs Load, Load Adrss 0000 Examn the 0030 is still there.
So That part is working.
I don't know if the bits 9-11 work, seems so , as I deposit them and look at STATUS the correct Lights 9-11 are On/Off.

Now have to run Maindec from https://www.ak6dn.com/PDP-8/MAINDEC/
To see if that is the problem.
Otherwise I have no clue why .
All Processor test are OK.
 
Not a boot through a real M8357 with RX02 drive attached in RX01 mode..
Not a boot through a real M8357 with RX02 Arduino Emulation
A note about RX02 on PDP8 -- just don't! Unless you know what you are doing and have the latest OS/8 with just exactly the right drivers, bootstraps, etc., it won't work, and worse, will scribble the media so that it can't boot as RX01 either.

Virtually all extant RX images for OS/8 will be RX01 images (you should be able to tell by the file size), and have RX01 only(!) drivers that malfunction if an RX02 drive is used.

The RX01 had "reserved" bits that the drivers don't bother to keep clean. These do bad things when the garbage is loaded into the registers of an RX02.

Vince
 
There will be a switch inside your RX02 drive that needs to be set to the RX01-only mode.

There's probably something similar in Don's emulator, because I've used it successfully with RX01 images many times. (I set that up way too long ago to remember.)

Vince
 
Vince,
The RX02 drive is with inside SW set to RX01, so real 256B disks are used.
Those I also can format RX01 at a real DOS -PC with a 8"drive attached to it.
Can read the DIR with PUTR on that DOS-PC with real 8"drive attached.

The RX drive Bootstrap RX8 (RX01) does initialize the "RX01" drive (head Load)
Then is is stepping though the disk, but as I can notice on the AC-Lights is seems to be in some kind of loop.

So I build The RX02 Emulator from Don.And try to use that as an RX01 drive
I use RX01 image.
See attached photo's of the RX02-Emu run.
 

Attachments

  • RX02-emu-test1.jpg
    RX02-emu-test1.jpg
    326.4 KB · Views: 3
  • RX02-emu-test2.jpg
    RX02-emu-test2.jpg
    273.5 KB · Views: 3
  • RX02-emu-test3.jpg
    RX02-emu-test3.jpg
    348.9 KB · Views: 3
Maurice can you also show the RX02 emulator configuration as printed by the 'p' command. Here is a sample of what it looks like.
This emulator is in RX02 mode, so yours should be a bit different.

p --- RX Emulator State Dump --- i/f width = 8. i/f mode = PIO i/f init = 1 i/f run = 0 rx.cs = 000000 rx.es = 0244 rx.ec = 0000 rx.wc = 000 rx.tc = 000 rx.ta = 001 rx.sa = 001 rx.pos = 6656. rx.len = 256. rx.den = D rx.unit = 0 rx.type = RX02 rx.cmdcnt = 0. rx.errcnt = 0. rx.timing = 0 rx.fcn.code = 10 rx.fcn.name = INIT rx.drv[0].name = 'RX0.DSK' rx.drv[0].mode = RW rx.drv[0].rdy = Y rx.drv[0].den = D rx.drv[0].ta = 001 rx.drv[0].sa = 001 rx.drv[0].pos = 6656. rx.drv[0].len = 256. rx.drv[1].name = 'RX1.DSK' rx.drv[1].mode = RW rx.drv[1].rdy = Y rx.drv[1].den = D rx.drv[1].ta = 001 rx.drv[1].sa = 001 rx.drv[1].pos = 6656. rx.drv[1].len = 256.
 
Ok, I question whether you want to be in "RX02+any" (mode 2) as you are, versus "RX01+RX8E" (mode 1).
You have explicitly mounted an RX01 image on unit 1 (ie, .RX1), but I can't tell if your unit 0 (.DSK) is RX01 or RX02 format.
SInce it is an OS8 boot + diag disk, I am guessing it is really an RX01 image, and you should be in mode 1 (m 1) and not mode 2.
Mode 2 is true RX02 mode as would be used on a PDP-11 with RX02 images and an RX211/RXV21 controller.
Or mode 2 could be an RX02+RX28 controller on a PDP-8efm with an OS8v3D boot disk. But I am guessing not.

FYI there are known good OS8 RX01/RX02 boot images here: https://github.com/AK6DN/rx02_emulator/tree/master/disk_images
 
This is My RX02 P-CMD
And the Consequent after loading the Bootloader RX8E
This is the right P-List of EMU in RX01 mode with OS8 boot disks.
0 os8_RX.dsk
1 os8f4_rx.rx01
Y 0
Y 1
M 1=RX01+RX8E
D 1
T 2
 

Attachments

  • RX02-EMU_RUN_RX01.jpg
    RX02-EMU_RUN_RX01.jpg
    263.1 KB · Views: 3
  • RX02-emu-run1.jpg
    RX02-emu-run1.jpg
    229.6 KB · Views: 3
  • RX02-emu-run2.jpg
    RX02-emu-run2.jpg
    287.3 KB · Views: 3
OK, some comments.
.DSK extension can be either RX01 image or RX02 image. Size of the image (256,256 or 512,512 determines format detection).
.RX1 forces RX01 format, .RX2 forces RX02 format.
.RX01 or .RX02 are not recognized by the s/w
Images default to R/W, so the Y commands are basically no-op in this context.
I'd leave timing at T 0 (the default, fastest) for now. T 2 just slows things down to seek like a real RX02. Just irritating IMHO.
You set the mode via typing 'M 1' correct? Typing 'M 1=RX01+RX8E' is NOT correct (not sure what it does, maybe nothing).
I would grab the OS8 labeled RX01 and RX02 images from the link I posted above. I know these boot as OS8 RX01 or OS8 RX02 images.
 
Looking at your log OS8V3Q.RX1 and Mine, I am missing the first 2 commands. 0406 & 0402
At the start after INIT rx_xmit and start of the process transfer.

YOURS:::
RX: waiting for INIT to clear ... t=31923ms
RX: INIT has cleared t=32483ms
RX: INIT rx_xmit_es(0204)

RX: cmd=0406
RX: RDSECT unit=0 den=S
RX: RDSECT sa=001
RX: RDSECT ta=001
RX: RDSECT pos=3328. len=128.
RX: RDSECT rx_xmit_es(0000)

RX: cmd=0402
RX: EMPBUF unit=0 den=S
RX: EMPBUF wc=040
RX: EMPBUF rx_xmit_es(0000)

RX: cmd=7006
RX: RDSECT unit=0 den=S
RX: RDSECT sa=003
RX: RDSECT ta=001
RX: RDSECT pos=3584. len=128.
RX: RDSECT rx_xmit_es(0000)

RX: cmd=0002
RX: EMPBUF unit=0 den=S
RX: EMPBUF wc=040

MINE::
22:42:44.333 -> ... INIT complete
22:42:53.366 -> RX: waiting for INIT to clear ... t=137510ms
22:42:53.366 -> RX: INIT has cleared t=137511ms
22:42:53.412 -> RX: waiting for INIT to clear ... t=137542ms
22:42:53.412 -> RX: INIT has cleared t=137543ms
22:42:53.459 -> RX: INIT rx_xmit_es(0204)
22:42:53.459 ->
22:42:53.459 -> RX: cmd=7006
22:42:53.459 -> RX: RDSECT unit=0 den=S
22:42:53.459 -> RX: RDSECT sa=001
22:42:53.459 -> RX: RDSECT ta=001
22:42:53.459 -> RX: RDSECT pos=3328. len=128.
22:42:53.459 -> RX: RDSECT rx_xmit_es(0000)
22:42:53.459 ->
22:42:53.459 -> RX: cmd=0002
22:42:53.459 -> RX: EMPBUF unit=0 den=S
22:42:53.459 -> RX: EMPBUF wc=040
22:42:53.459 -> RX: EMPBUF 000: 7577 0001 4021 3044 6201 1002 3017 4021
22:42:53.459 -> RX: EMPBUF 010: 4021 1060 3420 6757 4402 7645 7623 0004
22:42:53.459 -> RX: EMPBUF 020: 7126 1060 6751 7326 1003 4053 3003 7201
22:42:53.459 -> RX: EMPBUF 030: 4053 6755 5054 6754 7410 7402 7450 5421
22:42:53.459 -> RX: EMPBUF 040: 7326 6751 6211 4053 3417 5044 0000 7607
22:42:53.459 -> RX: EMPBUF 050: 7607 0000 0000 0000 0000 0000 0000 0000
22:42:53.459 -> RX: EMPBUF 060: 0000 0000 0000 0000 0000 0000 0000 6202
22:42:53.459 -> RX: EMPBUF 070: 4207 1000 0000 0007 7746 6203 5677 0400
22:42:53.506 -> RX: EMPBUF rx_xmit_es(0000)
22:42:53.506 ->
22:42:53.506 -> RX: cmd=7006
22:42:53.506 -> RX: RDSECT unit=0 den=S
22:42:53.506 -> RX: RDSECT sa=003
22:42:53.506 -> RX: RDSECT ta=001
22:42:53.506 -> RX: RDSECT pos=3584. len=128.
22:42:53.506 -> RX: RDSECT rx_xmit_es(0000)
22:42:53.506 ->
22:42:53.506 -> RX: cmd=0002
22:42:53.506 -> RX: EMPBUF unit=0 den=S
22:42:53.506 -> RX: EMPBUF wc=040
 
I think those initial command differences are likely due to a difference in the bootstrap program used.
Once the Reads of track1/sectors3,5,7,9,... starts the files are the same.
Until much later and then your capture diverges into a significantly difference sequence of writing sectors.
Don't know why that would be yet.
 
0406 and 0402 is when you load RX02 RX28 BootCODE!
I use RX01 Bootloader

Well that I ve tried before and that never work on my machine

At moment it does not start at all, only a clear will accept
2 codes and thats it.
Run Keeps on, Green LED, but thats it.
Uploaded to MEGA2650 again, 5 times even
Put new files on SD., Renamed 256 files to .RX1
Zero, it now never even starts to load. I mean Streaming to PDP8
I Use EMU V1.95
Used a 12Vdc adapter for extra power on mega2650 instead of just the USB.
Used a short flatcable instead of the long one from the org DEC RX02-floppy drive

This is it, nothing more happens than a short flash of the yelow LED , Green stay on and Run Light.
further no activity in the AC,
Yeb used an other SD card also.

RX: cmd=7006
22:42:53.459 -> RX: RDSECT unit=0 den=S
22:42:53.459 -> RX: RDSECT sa=001
22:42:53.459 -> RX: RDSECT ta=001
22:42:53.459 -> RX: RDSECT pos=3328. len=128.
22:42:53.459 -> RX: RDSECT rx_xmit_es(0000)
22:42:53.459 ->
22:42:53.459 -> RX: cmd=0002
22:42:53.459 -> RX: EMPBUF unit=0 den=S
22:42:53.459 -> RX: EMPBUF wc=040

Thanks for all the Help, I m Totaly done with this episode.
 
0406 and 0402 is when you load RX02 RX28 BootCODE!
I use RX01 Bootloader

Well that I ve tried before and that never work on my machine
Yes, I use the RX28/RX02 RX8E/RX01 auto detect bootloader, so it first tries dual density then falls back to single.
That is the difference in the first two commands. Once it loads the boot sectors tho it should be identical, booting from the same disk image.

I've attached a zip file with my RX28 boot code (I download rx28boot.rim over the TTY link to my PDP-8m and launch it).
I also included the source, listing, and bin/rim files of my test program rxtest.pal that I used in bringing up and testing the board.
It exercises the emulator in SD/DD modes, 8b/12b mode, unit0/1, read/write via switch selections.
Also are .ini files to run the rxtest.bin program under SIMH (I use 4.0 from github) to play with it there too.

Given all the changes/swapping you did in your post notes, I have to ask have you run the DEC MAINDEC diagnostics on your PDP-8 CPU?

Don
 

Attachments

  • rxtests.zip
    38.9 KB · Views: 3
Thanks Don, I'll try that. I use the Rim Loader from M847E From Ronald, Great work he has done. And So if I use RX28 is auto detects RX01 RX02?
List 03 RX02 RX28 Bootloader.
M8357 is at Device code 675x
So if I put a Real RX01 disk in a Real RX02 FF drive and Load the RX28 bootloader, it should boot that RX01 disk?
Where as the RX02 FF Drive is set SW at RX02 at CPU in that drive?
I then Use a Real SD FF disk, that has the Index at 1 o'clock not at 2'o clock?
Formatted at 256. And your OS8V3Q.RX1 ?
That should boot my pdp8M?

As my PDP8/M configuration at the moment.
Frontpanel
M8330
M8310
M8300
M837
M8655 9600n1
M8655 9600n1
M8357 675x
xx
xx
M847E (Roland) Or the M847 configured as Bootstrap RX01 checked that. 3e adrr 0027 is 6751,
x
x
M849
G111
H212
G233C
x
M8320

M847 my Bootstrap checked. Simular to :
M847 RX01 Bootsrap kaart
os/8 bootstrap from rx01/02 pocket service guide
page 13 ek-rx012-ps-002
My code on that M847:
0025 7126
0026 1060
0027 6751
0030 7201
0031 4053
0032 4053
0033 7104
0034 0000 (start adres)( 6755)
0035 5054
0036 6754
0037 7450
0040 7610
0041 5046
0042 1060
0043 7041
0044 1061
0045 3060
0046 5024
0047 6751
0050 4053
0051 3002
0052 2050
0053 5047
0054 0000
0055 6753
0056 5033
0056 6752
0057 5453
0060 7024
0061 6030
0062 7777
0063 7777 32e positie van de kaart
 
The rx28boot.lst I provided in the .zip file is the RX boot from the DEC standard "RX01/RX02 Reference Card".
That is what I use to boot either the OS8 RX01 or OS8 RX02 bootable images.
I have a DEC PDP-8m similar to yours (altho I do have the EAE option) and I have my M847 card setup with the RIM boot on the console line.
So when I toggle the SW boot switch, it invokes the RIM loader on the console serial line.
I then download rx28boot.rim, which runs and then boots the RX floppy image.
 
Don, If you have the will and opportunity to pull out those 2 EAE cards?
I think those Boot disks have some pre loaded definitions that needs a EAE card?

The trick what I have is the New developed M847-E card from the great work of Roland.
With a Arduino CPU it loads a selected Bootloader.
It works as a M847 but with app. 40 Bootloaders instead of 1 per card.
Just couple of times toggle the SW switch to select a Bootloader.

This Card I borrowed from Roland him self, so that particular card has worked in his system.
So deff a good working card. Its a joy to work with. All Test Toggles are pre programmed.

Also build a new Low small version of this M847-E to load console software for a PDP8A system.
And I tested that card in My PDP8M system to check if its correct working.
So It does. The console software also and I can fill memory through that console prog with TerraTerm.
As that PDP8A has lack of the org Console with reg switches display etc. The 3 toggle to power up halt etc it has.

This PDP8A use the same PDP8E CPU set 8300,8310,8330,M8320. Sadly that 16k Core mem has problems.
So that PDP8A is not operational jet. That way I have a "spare" cpu set to see if my cpu set have problems.
As it had many off in as you know. There for I also have a "spare"M8357 RX8E card that of course I don't know
of it is actual working, same as my own M8357 card. But as Both cards show exact same result I think
Both are working cards.
The RX02 FFDrive is from the PDP1123 system and is a known working drive.

I also have the RK05 PDP8E Card set M7104-7105-7106. But still lack of the drive it selves.(Wish List)
Diskpacks I have but the wrong Bits, Later found out. Thats a project in its self to change the metal ring.

I use f.i. the 11 RIM Loader and 12 BIN loader to load papertapes with the
Facit papertape reader Model 4030. At 1200Bd.

The list to choose from:
These programs can be selected by SW switch OR set as default with dip-switches

01 OS8 disk server 40/41
02 RX01 (RX8)
03 RX02 (RX28)
04 RK05 (RK08)
05 TU56 (TD8E)
06 TU56 (TC08)
07 TU60 (TA8E)

10 PC04 (PC8E)
11 RIM loader 03/04
12 BIN loader 03/04
13 BIN loader 40/41
14 Kaleisoscope
15 MI8-EE Typeset
16 MI8-EF Edu sys low
17 MI8-EG Edu sys high

The next can only be loaded by toggling the SW switch or push button on the PCB only.

20 group 1 microinstructions
21 group 1 microinstructions
22 Operate instructions
23 ISZ instructions
24 JMS instruction
25 JMP instruction
26 AC increment
27 checker board runs endless MD alters between 0000 and 7777

30 checker board runs endless MD alters between 5252 and 2525
31 print character in switch register
32 console print test
33 Echo test for one terminal at 03/04
34 echo 1-4 terminals
35 PC04 Punch alternating 1's and 0's
36 PC04 read the papertape (doesn't load to core, just for test purposes)
37 Place received character into AC from terminal at 03/04

40 Wipe core field 0 (Just let it run for a few seconds)

This is that M847-E card, Upper left the M847E system.
Also has a proto of the 32k MOS MEM version But that has some problems, its disabled.
Next the Low Card I build for that Console Program and can change the CPU ic to org M847E function
for the Bootloaders and test Toggles.

Also Build the M8331R Rebuild TU60 card. Sadly that TU60 drive has some issues.To Do List.
Rebuild Powersupply, new belts cleaning and checking done, Its now up to debug logic.
So I've been busy.
 

Attachments

  • M847-E_Big-Card.jpg
    M847-E_Big-Card.jpg
    287.7 KB · Views: 4
  • M847-E_Low-Card.jpg
    M847-E_Low-Card.jpg
    210 KB · Views: 4
  • M8331R-Build_MGH_Nov2021.jpg
    M8331R-Build_MGH_Nov2021.jpg
    252.4 KB · Views: 4
Back
Top