[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Tue, 18 Jul 2023 at 08:30, Hans-Ulrich Hölscher via cctalk < cctalk@classiccmp.org> wrote: > Some questions if you don't mind ;-)) > Not at all! > > - Could you please give some instructions how you managed to install V1.0? > Yes, I suppose this should be documented, as I have been unable to find any installation documentation scans for Ultrix-32m 1.x. The installation process needs the disk to be rq0 and have two floppies, rq1 and rq2. 32m-bin-1.0/01 needs to be attached as the first floppy and 32m-1.0-bin/02 needs to be attached to the second floppy. I chose to use the RD52 for installation as 1.0 doesn't understand any of the larger RD-series disks. /etc/disktab does have entries for the RA80 and RA81 but my recollection is that trying to install to those disks didn't actually work. > - What kind of error messages did you get when you wanted to install V1.2? > It looks like there is an issue with the bootloader - the self-tests go into an infinite loop. I have yet to try moving the bootloader from 1.0 to the 1.2 system, but I believe this should work. > - What microvax1 simulator did you use: the OpenSiḿh one or that from Simh > (Mark Pizzolato)? > I am using OpenSIMH but I don't believe there are any significant differences between the two branches that would affect this system. > - What is in your microvax1.ini file? > Here is an INI file for installing 1.0; you don't have to use the QVSS but I enjoy the experience. set cpu idle=ULTRIX-1.X set cpu INSTRUCTIONS=D-FLOAT set tti 7b set tto 7b set cr dis set lpt dis set rl dis set rq0 rd52 att rq0 rd52.dsk # The installer freaks out if the floppies are locked! #set rq1 lock set rq1 rx50 att rq1 32m-1.0-bin/01 #set rq2 lock set rq2 rx50 att rq2 32m-1.0-bin/02 set rq3 dis set ts dis set tq dis set qvss enable set xq type=deqna # change this to whatever works in your environment att xq tap:tap1 boot
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
Some questions if you don't mind ;-)) - Could you please give some instructions how you managed to install V1.0? - What kind of error messages did you get when you wanted to install V1.2? - What microvax1 simulator did you use: the OpenSiḿh one or that from Simh (Mark Pizzolato)? - What is in your microvax1.ini file? This is what I get when trying to boot the 1st V1.0 floppy: Logging to file "ULT012_MV1_001.log" sim> b rq1 .2..1..0. Boot : ra(1,0)vmunix 186016+46652+44656 start 0x10bc Ultrix-32m V1.0 System #1: Fri Aug 17 11:57:07 EDT 1984 real mem = 2093056 avail mem = 1511424 using 102 buffers containing 208896 bytes of memory MicroVAX 1, microcode level = 5 Q22 bus rqd0 at bus0 csr 172150 vec 774, ipl 17 ra0 at rqd0 slave 0 ra1 at rqd0 slave 1 ra2 at rqd0 slave 2 panic: iinit syncing disks... done dumping to dev 901, offset 0 dump succeededRebooting... .2..1..0. Boot : ra(1,0)vmunix 186016+46652+44656 start 0x10bc ... Ulli Am Mo., 17. Juli 2023 um 20:42 Uhr schrieb Henry Bent via cctalk < cctalk@classiccmp.org>: > On Mon, 17 Jul 2023 at 13:06, Henry Bent wrote: > > > On Mon, 17 Jul 2023 at 12:59, Ethan Dicks via cctalk < > > cctalk@classiccmp.org> wrote: > > > >> > >> > From: http://www.chdickman.com/pdp11/pro380.txt > >> > > >> > "The RX50 floppy starts at track 1. Track 0 is logically placed after > >> > track 79. The sectors are interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8, > >> > 10. The track shift and interleave must be taken into account when > >> > moving disks between real PDP-11 and emulators." > >> > >> I have had good luck with a secfor convolver from the same page as this > >> comment: > >> > >> http://www.chdickman.com/pdp11/lbn2rx50.c > >> > >> It will go both ways, to and from physical block order and logical block > >> order. > >> > > > > That seems to have worked perfectly. Thank you for the utility and the > > explanation. Now off to working on the next steps! > > > > -Henry > > > > A brief follow-up on this: After lots of (virtual) disk-swapping I was able > to upgrade an existing 1.0 system but was not able to install a 1.2 system > from scratch. It seems that there is some sort of bootloader issue with a > clean install, which I suspect might be a SIMH problem and I will follow up > there after some more investigation. > > I truly feel for the folks who had to do this at the time, using 38 > floppies on a MicroVAX I. The installer does give time estimates for > certain milestones so that you could go and get a coffee or whatever. > "Configuring vmunix, this takes about 30 minutes" is certainly indicative > of the relative speed of the machine at the time. Also there is an > indication that there was a tape distribution but so far that has not > surfaced. I'm not even sure what medium that would have been - RC25? >
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
> On Jul 17, 2023, at 5:33 PM, Chuck Guzis via cctalk > wrote: > > On 7/17/23 11:53, Ethan Dicks via cctalk wrote: > >> Chuck Dickman's algorithm is in lbn2rx50.c >> >> #define RX50_TRACKS 80 >> #define RX50_SECTORS 10 >> >> int interleave[] = { 0, 2, 4, 6, 8, 1, 3, 5, 7, 9 }; >> >>track = lbn/RX50_SECTORS; >>track = (track + 1)%RX50_TRACKS; >> >>sector = lbn%RX50_SECTORS; >>sector = (interleave[sector] + 2*(track - 1) + RX50_SECTORS)%RX50_SECTORS; > > Depends on the application. Files-11 RX50 encoding is a bit stranger, > with Track 79 mapped to physical track 0. That's the RX50 standard mapping; Files-11 is not any different. Physical tracks are (logical track + 1) % 80, which is what the code cited above includes. > I can pass my algorithm along, if anyone is interested. > > On the other hand, DECMate II and Rainbow use sector interleave but not > track skew. > > If anything can be said about DEC, they were consistent in their > inconsistency. Interesting, I did not know that about Rainbow etc. But PDP11 and VAX are consistent (RQDX as well as Pro, the difference being that in the Pro the driver has to do the translation). paul
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, Jul 17, 2023, 3:34 PM Chuck Guzis via cctalk wrote: > On 7/17/23 11:53, Ethan Dicks via cctalk wrote: > > > Chuck Dickman's algorithm is in lbn2rx50.c > > > > #define RX50_TRACKS 80 > > #define RX50_SECTORS 10 > > > > int interleave[] = { 0, 2, 4, 6, 8, 1, 3, 5, 7, 9 }; > > > > track = lbn/RX50_SECTORS; > > track = (track + 1)%RX50_TRACKS; > > > > sector = lbn%RX50_SECTORS; > > sector = (interleave[sector] + 2*(track - 1) + > RX50_SECTORS)%RX50_SECTORS; > > Depends on the application. Files-11 RX50 encoding is a bit stranger, > with Track 79 mapped to physical track 0. > > I can pass my algorithm along, if anyone is interested. > > On the other hand, DECMate II and Rainbow use sector interleave but not > track skew. > > If anything can be said about DEC, they were consistent in their > inconsistency. > Yup. The Rainbow's track 0 and 1 were not interleaved to make the boot loader easier... I think the decmate did yhe same but with different tracks... The rainbow also had a cool partitioning format that looked like it was some general thing, but I never saw it elsewhere or have found an electronic copy of the printed docs I pulled off dec's tops20 support machine from the LSG in the late 80s Warner --Chuck > > > >
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On 7/17/23 11:53, Ethan Dicks via cctalk wrote: > Chuck Dickman's algorithm is in lbn2rx50.c > > #define RX50_TRACKS 80 > #define RX50_SECTORS 10 > > int interleave[] = { 0, 2, 4, 6, 8, 1, 3, 5, 7, 9 }; > > track = lbn/RX50_SECTORS; > track = (track + 1)%RX50_TRACKS; > > sector = lbn%RX50_SECTORS; > sector = (interleave[sector] + 2*(track - 1) + RX50_SECTORS)%RX50_SECTORS; Depends on the application. Files-11 RX50 encoding is a bit stranger, with Track 79 mapped to physical track 0. I can pass my algorithm along, if anyone is interested. On the other hand, DECMate II and Rainbow use sector interleave but not track skew. If anything can be said about DEC, they were consistent in their inconsistency. --Chuck
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, 17 Jul 2023 at 14:56, Warner Losh wrote: > > > On Mon, Jul 17, 2023, 12:42 PM Henry Bent via cctalk < > cctalk@classiccmp.org> wrote: > >> >> I truly feel for the folks who had to do this at the time, using 38 >> floppies on a MicroVAX I. The installer does give time estimates for >> certain milestones so that you could go and get a coffee or whatever. >> "Configuring vmunix, this takes about 30 minutes" is certainly indicative >> of the relative speed of the machine at the time. Also there is an >> indication that there was a tape distribution but so far that has not >> surfaced. I'm not even sure what medium that would have been - RC25? >> > > Doing a VMS install, twice, on a microvax ii is what convinced the powers > that be to get a tk50... and an eagle 400mb drive... or at least put them > over the edge to proposing work that got the upgrade funded... iirc... The > VMS install was on a crazy number of floppies, if you counted all the > layered products and third party packages... > > Warner > Ah, after a little research I see that the TK50 was introduced in mid-1985, and it was available for the MicroVAX I, so with Ultrix-32m 1.2 being shipped in 1986 it makes sense that it could have been distributed on a TK50. I did not previously think that the TK50 had been available that early. -Henry
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, Jul 17, 2023, 12:42 PM Henry Bent via cctalk wrote: > On Mon, 17 Jul 2023 at 13:06, Henry Bent wrote: > > > On Mon, 17 Jul 2023 at 12:59, Ethan Dicks via cctalk < > > cctalk@classiccmp.org> wrote: > > > >> > >> > From: http://www.chdickman.com/pdp11/pro380.txt > >> > > >> > "The RX50 floppy starts at track 1. Track 0 is logically placed after > >> > track 79. The sectors are interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8, > >> > 10. The track shift and interleave must be taken into account when > >> > moving disks between real PDP-11 and emulators." > >> > >> I have had good luck with a secfor convolver from the same page as this > >> comment: > >> > >> http://www.chdickman.com/pdp11/lbn2rx50.c > >> > >> It will go both ways, to and from physical block order and logical block > >> order. > >> > > > > That seems to have worked perfectly. Thank you for the utility and the > > explanation. Now off to working on the next steps! > > > > -Henry > > > > A brief follow-up on this: After lots of (virtual) disk-swapping I was able > to upgrade an existing 1.0 system but was not able to install a 1.2 system > from scratch. It seems that there is some sort of bootloader issue with a > clean install, which I suspect might be a SIMH problem and I will follow up > there after some more investigation. > > I truly feel for the folks who had to do this at the time, using 38 > floppies on a MicroVAX I. The installer does give time estimates for > certain milestones so that you could go and get a coffee or whatever. > "Configuring vmunix, this takes about 30 minutes" is certainly indicative > of the relative speed of the machine at the time. Also there is an > indication that there was a tape distribution but so far that has not > surfaced. I'm not even sure what medium that would have been - RC25? > Doing a VMS install, twice, on a microvax ii is what convinced the powers that be to get a tk50... and an eagle 400mb drive... or at least put them over the edge to proposing work that got the upgrade funded... iirc... The VMS install was on a crazy number of floppies, if you counted all the layered products and third party packages... Warner >
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, Jul 17, 2023 at 1:05 PM Paul Koning via cctalk wrote: > > On Jul 17, 2023, at 12:51 PM, Ethan Dicks via cctalk > > wrote: > > > > On Mon, Jul 17, 2023 at 12:48 PM Ethan Dicks wrote: > >> From: http://www.chdickman.com/pdp11/pro380.txt > >> > >> "The RX50 floppy starts at track 1. Track 0 is logically placed after > >> track 79. The sectors are... > > > > It should be "... interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8..." There > > is no "sector 10" when counting from 0. > > > > -ethan > > I don't know what to make of that web page's description, it certainly > doesn't have much connection to reality. Are those numbers supposed to > represent the placement of logical sector numbers onto the physical track? > If so, they show 5:1 interleave rather than 2:1 interleave. Or do they > represent the physical sector numbers for consecutive logical sectors? If > so, it seems to be backwards. It looks like it represents how to go from a physical track to get things back in the logical order that one would see from a PDP-11 or VAX on real hardware - i.e., the boot block (if any) is the very first thing you encounter. I agree, it's not a 2:1 interleave in any classic sense. > The actual algorithm is what I wrote in my previous email, which you can also > find in my RSTSFLX tools. That has been tested against real world RX50 > floppies, and against the source code of the RT11 RX50 driver. Chuck Dickman's algorithm is in lbn2rx50.c #define RX50_TRACKS 80 #define RX50_SECTORS 10 int interleave[] = { 0, 2, 4, 6, 8, 1, 3, 5, 7, 9 }; track = lbn/RX50_SECTORS; track = (track + 1)%RX50_TRACKS; sector = lbn%RX50_SECTORS; sector = (interleave[sector] + 2*(track - 1) + RX50_SECTORS)%RX50_SECTORS; -ethan
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, 17 Jul 2023 at 13:06, Henry Bent wrote: > On Mon, 17 Jul 2023 at 12:59, Ethan Dicks via cctalk < > cctalk@classiccmp.org> wrote: > >> >> > From: http://www.chdickman.com/pdp11/pro380.txt >> > >> > "The RX50 floppy starts at track 1. Track 0 is logically placed after >> > track 79. The sectors are interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8, >> > 10. The track shift and interleave must be taken into account when >> > moving disks between real PDP-11 and emulators." >> >> I have had good luck with a secfor convolver from the same page as this >> comment: >> >> http://www.chdickman.com/pdp11/lbn2rx50.c >> >> It will go both ways, to and from physical block order and logical block >> order. >> > > That seems to have worked perfectly. Thank you for the utility and the > explanation. Now off to working on the next steps! > > -Henry > A brief follow-up on this: After lots of (virtual) disk-swapping I was able to upgrade an existing 1.0 system but was not able to install a 1.2 system from scratch. It seems that there is some sort of bootloader issue with a clean install, which I suspect might be a SIMH problem and I will follow up there after some more investigation. I truly feel for the folks who had to do this at the time, using 38 floppies on a MicroVAX I. The installer does give time estimates for certain milestones so that you could go and get a coffee or whatever. "Configuring vmunix, this takes about 30 minutes" is certainly indicative of the relative speed of the machine at the time. Also there is an indication that there was a tape distribution but so far that has not surfaced. I'm not even sure what medium that would have been - RC25?
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
I have had good luck with a secfor convolver from the same page as this comment: http://www.chdickman.com/pdp11/lbn2rx50.cIt will go both ways, to and from physical block order and logical block order. For people working on P/OS or RSX, without a c compiler, here is a utility that can convert from track/sector order to LBN order. https://rsx11.blogspot.com/2018/02/rsx-utility-for-converting-track-sector.html -- Lee K. Gleason N5ZMR Control-G Consultants lee.glea...@ccomcast.net
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, Jul 17, 2023, 10:59 AM Ethan Dicks via cctalk wrote: > On Mon, Jul 17, 2023 at 12:48 PM Ethan Dicks > wrote: > > On Mon, Jul 17, 2023 at 12:28 PM Henry Bent via cctalk > > > I'm almost thoroughly unfamiliar with IMD - is there some obvious > > > extraction/conversion option that I am missing here? > > As mentioned previously, yes. There's an additional step that has to > happen to any direct imaging of RX50 disks. John Wilson's PUTR > happens to do this convolution internally. > > If you desire is to snapshot physical media for rewriting later, IMD > is excellent. If you want logical-block-order files for simh, you > need one more step (keep reading). > > > Were these disks actually imaged correctly? I would appreciate any > suggestions. > > Yes they were. > > > From: http://www.chdickman.com/pdp11/pro380.txt > > > > "The RX50 floppy starts at track 1. Track 0 is logically placed after > > track 79. The sectors are interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8, > > 10. The track shift and interleave must be taken into account when > > moving disks between real PDP-11 and emulators." > > I have had good luck with a secfor convolver from the same page as this > comment: > > http://www.chdickman.com/pdp11/lbn2rx50.c > > It will go both ways, to and from physical block order and logical block > order. > I've encountered this with Rainbow disks. I have a logical to phys conversion program. Also when i wrote the impdrive driver for the rainbow: you have to do the unmapping the Z80 code would do to make the 3.5" 720k floppy work in the Rainbow. The physical sectors are numbered 1-10 on the drive (maybe past track 0 and 1). And it is 1-10, there is no sector 0. These sectors refer to the logical sectors 1, 3, 5, 7, 9, 2, 4, 6, 8 ,10. My program filters the 'physical' disk into a 'logical' oneso that mtools can read the FAT contained on my MS-DOS disks. On the Rainbow, at least, the WD floppy controller didn't mess with the sectors, so the interleave was done at the lowest levels of whatever OS' floppy driver. Chances are quite good that there's a mismatch somewhere. If you always read in one way and write in that same way, it works (eg, both ends agree). Sometimes you need to convert from one to the other, which I always have to do via trial and error. For Venix, there was a different interleave (because of course there is), so there may be some experimenting that's needed. But since it is Unix, I suspect Ultrix may have its own interleave, but who knows. I've not looked at the source. I believe I've uploaded these to github, but can't find them at the moment. I can look if people want. This may be all that's needed. It's been handy for both DOS and Venix disks I've had to decode. Warner >
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, 17 Jul 2023 at 12:59, Ethan Dicks via cctalk wrote: > > > From: http://www.chdickman.com/pdp11/pro380.txt > > > > "The RX50 floppy starts at track 1. Track 0 is logically placed after > > track 79. The sectors are interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8, > > 10. The track shift and interleave must be taken into account when > > moving disks between real PDP-11 and emulators." > > I have had good luck with a secfor convolver from the same page as this > comment: > > http://www.chdickman.com/pdp11/lbn2rx50.c > > It will go both ways, to and from physical block order and logical block > order. > That seems to have worked perfectly. Thank you for the utility and the explanation. Now off to working on the next steps! -Henry
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
> On Jul 17, 2023, at 12:51 PM, Ethan Dicks via cctalk > wrote: > > On Mon, Jul 17, 2023 at 12:48 PM Ethan Dicks wrote: >> From: http://www.chdickman.com/pdp11/pro380.txt >> >> "The RX50 floppy starts at track 1. Track 0 is logically placed after >> track 79. The sectors are interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8, >> 10. The track shift and interleave must be taken into account when >> moving disks between real PDP-11 and emulators." > > Let me point out that this webpage quote accidentally lists too many > sectors for an RX50. > > It should be "... interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8..." There > is no "sector 10" when counting from 0. > > -ethan I don't know what to make of that web page's description, it certainly doesn't have much connection to reality. Are those numbers supposed to represent the placement of logical sector numbers onto the physical track? If so, they show 5:1 interleave rather than 2:1 interleave. Or do they represent the physical sector numbers for consecutive logical sectors? If so, it seems to be backwards. The actual algorithm is what I wrote in my previous email, which you can also find in my RSTSFLX tools. That has been tested against real world RX50 floppies, and against the source code of the RT11 RX50 driver. paul
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, Jul 17, 2023 at 12:48 PM Ethan Dicks wrote: > On Mon, Jul 17, 2023 at 12:28 PM Henry Bent via cctalk > > I'm almost thoroughly unfamiliar with IMD - is there some obvious > > extraction/conversion option that I am missing here? As mentioned previously, yes. There's an additional step that has to happen to any direct imaging of RX50 disks. John Wilson's PUTR happens to do this convolution internally. If you desire is to snapshot physical media for rewriting later, IMD is excellent. If you want logical-block-order files for simh, you need one more step (keep reading). > Were these disks actually imaged correctly? I would appreciate any > suggestions. Yes they were. > From: http://www.chdickman.com/pdp11/pro380.txt > > "The RX50 floppy starts at track 1. Track 0 is logically placed after > track 79. The sectors are interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8, > 10. The track shift and interleave must be taken into account when > moving disks between real PDP-11 and emulators." I have had good luck with a secfor convolver from the same page as this comment: http://www.chdickman.com/pdp11/lbn2rx50.c It will go both ways, to and from physical block order and logical block order. Cheers, -ethan
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
> On Jul 17, 2023, at 12:28 PM, Henry Bent via cctalk > wrote: > > Hi all, > > I just noticed that images of a full RX50 floppy set for Ultrix-32m 1.2 was > posted on Bitsavers ( > http://bitsavers.trailing-edge.com/bits/DEC/vax/ultrix/1.2/ULTRIX-32M_V1.2_RX50_1986.zip > ). I am having difficulty parsing these images into a usable raw format > for SIMH. > > As a reference, TUHS has a set of 1.0 floppies ( > https://www.tuhs.org/Archive/Distributions/DEC/Ultrix-32M/ ) that are > usable for installation purposes. (You can ignore the 1.2 floppies in that > archive, they aren't actually a full set). The first disk of that > installer, 32m-1.0-bin/01, has a bootloader that starts at byte zero as we > would expect. This should be approximately equivalent to disk 1 in the > Bitsavers set. Oddly though, in the "raw" dump the bootloader doesn't > start until 0x1400, and a number of the other disks I looked at appear to > have odd holes/zeroes in them. IMD format dumps of the 1.2 disks are > provided but when I converted the IMD format to a raw image I got the same > issue. It's unfortunate that there is no description of what format these image files have. From your description it looks like these are physical track/sector ordered copies of the floppy, while SIMH for the RX50 container files wants to see logical order. One tool that can convert between the two is the "rx50.py" utility that is part of my RSTSFLX V3 tool, a RSTS file system handler in Python. You can find it at svn://akdesign.dyndns.org/flx/trunk (that's a Subversion repository). Note that the rstsflx in the "simtools" repository of Open-SIMH is V2, that's an entirely different version written in C. It also has the interleave algorithm but no command line tool analogous to the rx50.py tool. The key element is that logical track 0 is physical track 1, and similarly all the others differ by one except logical track 79 which is physical track 0. That fits what you stated: bootloader starting at 0x1400, that is sector 10 so the first sector in physical track 1. The other parts of the address translation are: sectors on the track are 2:1 interleaved, and there is a 2 sector skew from each track to the next. So, for example, logical sector 0 is physical track 1 sector 0; logical sector 1 is physical track 1 sector 2; local sector 5 is physical track 1 sector 1, and logical sector 10 is physical track 2 sector 2. What you need to do is to invert that interleave algorithm to convert from the physical sector order to the logical. paul
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, Jul 17, 2023 at 12:48 PM Ethan Dicks wrote: > From: http://www.chdickman.com/pdp11/pro380.txt > > "The RX50 floppy starts at track 1. Track 0 is logically placed after > track 79. The sectors are interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8, > 10. The track shift and interleave must be taken into account when > moving disks between real PDP-11 and emulators." Let me point out that this webpage quote accidentally lists too many sectors for an RX50. It should be "... interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8..." There is no "sector 10" when counting from 0. -ethan
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On Mon, Jul 17, 2023 at 12:28 PM Henry Bent via cctalk wrote: > I just noticed that images of a full RX50 floppy set for Ultrix-32m 1.2 was > posted on Bitsavers ( > http://bitsavers.trailing-edge.com/bits/DEC/vax/ultrix/1.2/ULTRIX-32M_V1.2_RX50_1986.zip > ). I am having difficulty parsing these images into a usable raw format > for SIMH. You are not the first to encounter this. > Oddly though, in the "raw" dump the bootloader doesn't > start until 0x1400, and a number of the other disks I looked at appear to > have odd holes/zeroes in them. IMD format dumps of the 1.2 disks are > provided but when I converted the IMD format to a raw image I got the same > issue. Yes. IMD->raw just decompresses the IMD format back into the exact number of bytes, in the same order, of the original media. Keep reading for why this is not sufficient... > I'm almost thoroughly unfamiliar with IMD - is there some obvious > extraction/conversion option that I am missing here? Were these disks > actually imaged correctly? I would appreciate any suggestions. This is not an IMD issue. IMD files are numbered as they come off the media and can be written back out, as is, to make physical media, which was the primary purpose. For nearly all cases, this also happens to match sequential sector order so that the same data can be used for emulators (simh and others). The one case where the two situations don't match is the RX50. What DEC did was to put a software-defined sector interleave and track shifting into their RX50 controllers (RQDX1 et al). In addition to the sectors on the disk not being in "logical filesystem order", track 0 gets moved to the end of the list From: http://www.chdickman.com/pdp11/pro380.txt "The RX50 floppy starts at track 1. Track 0 is logically placed after track 79. The sectors are interleaved 1, 3, 5, 7, 9, 0, 2, 4, 6, 8, 10. The track shift and interleave must be taken into account when moving disks between real PDP-11 and emulators."
[cctalk] Re: Restoring Ultrix-32m 1.2 Floppies
On 7/17/23 09:28, Henry Bent via cctalk wrote: > Hi all, > > I just noticed that images of a full RX50 floppy set for Ultrix-32m 1.2 was > posted on Bitsavers ( > http://bitsavers.trailing-edge.com/bits/DEC/vax/ultrix/1.2/ULTRIX-32M_V1.2_RX50_1986.zip > ). I am having difficulty parsing these images into a usable raw format > for SIMH. > > As a reference, TUHS has a set of 1.0 floppies ( > https://www.tuhs.org/Archive/Distributions/DEC/Ultrix-32M/ ) that are > usable for installation purposes. (You can ignore the 1.2 floppies in that > archive, they aren't actually a full set). The first disk of that > installer, 32m-1.0-bin/01, has a bootloader that starts at byte zero as we > would expect. This should be approximately equivalent to disk 1 in the > Bitsavers set. Oddly though, in the "raw" dump the bootloader doesn't > start until 0x1400, and a number of the other disks I looked at appear to > have odd holes/zeroes in them. IMD format dumps of the 1.2 disks are > provided but when I converted the IMD format to a raw image I got the same > issue. > > I'm almost thoroughly unfamiliar with IMD - is there some obvious > extraction/conversion option that I am missing here? Were these disks > actually imaged correctly? I would appreciate any suggestions. A quick glance at the RAW dumps tells me that the sectors are interleaved. I haven't checked to see if it's the standard FILES-11 interleave, but it looks likely. --Chuck