Interesting, I'd never played with lk for Ultrix. It appears that it comes with VAX C, which is part of the base Ultrix packages. VAX Fortran was definitely a separate, paid addon. lk can indeed produce load maps, with "lk -M". It also seems that at some point someone thought this would be a good idea to add to regular ld, but never really got very far - "ld -M" produces what the manual calls a "primitive load map," which is really nothing more than a list of object files being linked.
-Henry On 7 July 2015 at 14:57, Clem Cole <[email protected]> wrote: > Mark, > > No problem -- Indeed, "nm -n" has been my friend for years. > > That said, I was replying to Henry's comment about the lack of a link > map/output file for Ultrix. Indeed, my experience over the years is that > there are times when a link map can be handy and I remember that Ultrix > (as opposed to "pure joy" could create them). I faintly remember when the > feature request came into Unix-land asking that the Unix ld be changed to > add them and the reply was to use the VMS linker that had been modified to > grok a.out (for Fortran - I had forgotten why it was done - Paul reminded > me - at the time it was felt that it was easier to port the DEC linker than > try to add the features Fortran needed to BSD's ld). > > I just had forgotten the details, but as I expected; he who authored the > hack, did indeed remember them. The key is that if you have lk from the > Fortran kit, it can be used to create a.out files. That said, I wonder if > their are features supported by ld that lk did not (and might be used by > the kernel linkage). I suspect lk > ld but not a complete super-set. My > experience with the language team is that they would have only done > "enough" to make the DEC languages (and in particular) VAX Fortran work. > I have faint memories of playing with lk (but had forgotten the command > name and anything much else other than it existed). > > BTW: when he came over he tells me lk was further hacked to support Elf in > later version, he started saying well "if you used the itanium VMS port you > can get a VMS to create linux binaries." - I said that was more than I > though people cared about I think for this exercise. > > Clem > > On Tue, Jul 7, 2015 at 2:32 PM, Mark Pizzolato - Info Comm < > [email protected]> wrote: > >> The suggested “nm –n” is completely useful. >> >> >> >> *From:* Clem Cole [mailto:[email protected]] >> *Sent:* Tuesday, July 7, 2015 11:28 AM >> *To:* Henry Bent >> *Cc:* Mark Pizzolato - Info Comm; [email protected] >> >> *Subject:* Re: [Simh] Booting the vax750 simulator. >> >> >> >> Boy the bits in my memory are stale and could be confused, but my memory >> is that there was a way to wash it though the VMS linker to get such a >> map. The author the VMS linker sits a few feet from me, I just sent him >> email asked him if he remembers how we did that. I suspect he will make an >> appearance in my cube after he reads it asking why I want to know :-) >> >> >> >> Clem >> >> >> >> On Mon, Jul 6, 2015 at 5:42 PM, Henry Bent <[email protected]> wrote: >> >> I took a quick look at this under Ultrix 4.3, where the same problem >> occurs. There are Ultrix 4.3 sources, so that makes things somewhat >> easier. The panic occurs in ubarelse(), which releases uba resources. >> >> Unfortunately, as far as I know, the Ultrix linker does not have a way to >> produce a link map. You can at least see what the function addresses are >> by using "nm -n" on the kernel you're running. >> >> -Henry >> >> >> >> On 6 July 2015 at 15:41, Mark Pizzolato - Info Comm <[email protected]> >> wrote: >> >> Hi Mattis, >> >> >> >> I’m working with the disk image you provided. I see the failure on the >> VAX750 simulator. >> >> >> >> What is the root password on this disk? >> >> >> >> Do you know if any sort of link map is available from this kernel build? >> >> >> >> Have you tried earlier versions of Ultrix on the 750 simulator? As I >> recall, I think I once came across Ultrix sources for some prior versions. >> It would seem that the VAX750 would be supported pretty much back at the >> beginning so, if we can reproduce this failure on a version with sources >> we’d have more to go on. >> >> >> >> I initially look at the crash message: >> >> >> >> sim> b rq0 >> >> Loading boot code from vmb.exe >> >> >> >> Ultrixboot - V4.0 Sat Mar 31 04:11:56 EST 1990 >> >> >> >> Loading (a)vmunix ... >> >> >> >> Sizes: >> >> text = 593304 >> >> data = 100864 >> >> bss = 320516 >> >> Starting at 0x2d4d >> >> >> >> ULTRIX V4.0 (Rev. 161) System #1: Thu May 20 23:26:51 GMT+0100 1976 >> >> real mem = 15728640 >> >> avail mem = 12378112 >> >> using 384 buffers containing 1572864 bytes of memory >> >> VAX 11/750, hardware level = 0x9c, microcode level = 99 >> >> mcr0 (MS750) at address 0xf20000 >> >> mba0 at address 0xf28000 >> >> 0 mba's not configured >> >> mba0 at address 0xf2a000 >> >> 0 mba's not configured >> >> uba0 at address 0xf30000 >> >> uda0 at uba0 >> >> uq0 at uda0 csr 172150 vec 774, ipl 15 >> >> dz0 at uba0 csr 160100 vec 300, ipl 15 >> >> >> >> machine check 2: non-existant reference error >> >> sumpar = 2 >> >> va = 80001a90 >> >> errpc = 0 >> >> mdr = 0 >> >> smr = 0 >> >> rdtimo = 0 >> >> tbgpar = 0 >> >> cacherr = 0 >> >> buserr = 140008 >> >> mcesr = 0 >> >> pc = 80087c61 >> >> psl = 4150008 >> >> >> >> mcsr = 140000 >> >> >> >> I note that the PC mentioned is: 80087c61. >> >> >> >> If I do the following: >> >> >> >> sim> BRE 80087c61 >> >> sim> SET CPU HISTORY=300 >> >> sim> B RQ0 >> >> >> >> Execution flows up to the indicated address and if I single step from >> there, the exception is taken. >> >> >> >> The instruction which causes the exception is: >> >> BISL2 #60000001,(R0) >> >> And R0 contains: >> >> >> >> But the instructions executed prior to the failing instruction seems to >> be walking through some memory structures, which no real clue yet exists as >> to what it might be trying. Hence, my request for a link map and also to >> try and reproduce this with an OS version that has source… >> >> >> >> - Mark >> >> >> >> *From:* Simh [mailto:[email protected]] *On Behalf Of *Mattis >> Lind >> *Sent:* Sunday, June 21, 2015 1:42 PM >> *To:* [email protected] >> *Subject:* Re: [Simh] Booting the vax750 simulator. >> >> >> >> >> >> >> >> >> >> >> >> >> >> 2015-06-21 18:22 GMT+02:00 Mark Pizzolato - Info Comm <[email protected] >> >: >> >> Hi there Mattis, >> >> >> >> Well, what you’re asking for (running model specific diagnostics) has >> been out of scope for all of the simh VAX simulators. The scope has been >> to be able to run operating system and application software that ran on >> these systems. If you had source code for the diagnostic you’re trying to >> run maybe some understanding of why it fails on both the real hardware and >> what might be needed in the simulator to support it would be possible…. >> >> >> >> Unfortunately I don't have the source for the diagnostic. It is a pain >> and that was one of the reasons for trying the simulator in the first >> place. But I certainly understand that it is quite different to simulate it >> to pass a diagnostic which tries to do all sorts of strange things than >> running a real operating system. >> >> >> >> As for Ultrix 4.0 on the VAX750 simulator, well I haven’t explored the >> documentation, but it might be possible that by the time Ultrix 4.0 came >> along, it never got tested on the older hardware. Does this disk image >> boot using the VAX780 and VAX8600 simulators? >> >> >> >> This kernel I built was only microvax II and VAX-11/750 so it won't >> directly boot on a 11/780 nor a VAX8600. But if I add a line CPU >> "VAX780" and CPU "VAX8600" it boots on both. >> >> >> >> But still no-go on vax750. I even tried to remove some more optional >> features in the kernel config but no difference. Still boot on vax780, >> microvax2 and vax8600 simulator though. >> >> >> >> Here is the image I tried : >> https://dl.dropboxusercontent.com/u/96935524/Datormusuem/VAX11-750/ultrix3.dsk >> >> >> >> >> >> /Mattis >> >> >> >> >> >> - Mark >> >> >> >> *From:* Simh [mailto:[email protected]] *On Behalf Of *Mattis >> Lind >> *Sent:* Sunday, June 21, 2015 1:10 AM >> *To:* [email protected] >> *Subject:* Re: [Simh] Booting the vax750 simulator. >> >> >> >> >> >> >> >> 2015-06-19 16:33 GMT+02:00 Johnny Billquist <[email protected]>: >> >> I would suggest you start off by creating the system using a simulated >> uVAX II, as that can boot from tape. Once you have the system running. move >> the disk over to an emulated 11/750, and continue playing from there. >> >> >> >> >> >> I did as Johnny recommended and then I got VMS 6.1 working on the vax750 >> simulator. Getting Ultrix 4.0 to work seems to be harder. I made a kernel >> config with just the uda and dz drivers. Exactly the same kernel boots just >> fine in the microvax2 simulator, but it fails on me in the vax750 >> simulator. Anyone got Ultrix 4.0 working on the vax750 simulator? >> >> >> >> Since another of the reasons for using the vax750 simulator is to >> understand how the diagnostics work (since the Cache/TB fails on the real >> machine. Either there is areal fault or possibly some kind of >> incompatibility between the board set I have and the diagnostic). >> >> >> >> It would be very useful if they could run in the simulator as well. >> Anyone succeeded in running the diagnostics in the vax750 simulator? >> >> >> >> sim> boot rq0 >> >> Loading boot code from vmb.exe >> >> >> >> Ultrixboot - V4.0 Sat Mar 31 04:11:56 EST 1990 >> >> >> >> Loading (a)vmunix ... >> >> >> >> Sizes: >> >> text = 664356 >> >> data = 113152 >> >> bss = 342256 >> >> Starting at 0x2b4d >> >> >> >> ULTRIX V4.0 (Rev. 161) System #2: Wed May 19 13:29:37 GMT+0100 1976 >> >> real mem = 8388608 >> >> avail mem = 5818368 >> >> using 204 buffers containing 838656 bytes of memory >> >> VAX 11/750, hardware level = 0x9c, microcode level = 99 >> >> mcr0 (MS750) at address 0xf20000 >> >> mba0 at address 0xf28000 >> >> 0 mba's not configured >> >> mba0 at address 0xf2a000 >> >> 0 mba's not configured >> >> uba0 at address 0xf30000 >> >> uda0 at uba0 >> >> uq0 at uda0 csr 172150 vec 774, ipl 15 >> >> dz0 at uba0 csr 160100 vec 300, ipl 15 >> >> >> >> machine check 2: non-existant reference error >> >> sumpar = 2 >> >> va = 80001890 >> >> errpc = 0 >> >> mdr = 0 >> >> smr = 0 >> >> rdtimo = 0 >> >> tbgpar = 0 >> >> cacherr = 0 >> >> buserr = 140008 >> >> mcesr = 0 >> >> pc = 800991c1 >> >> psl = 4150008 >> >> >> >> mcsr = 140000 >> >> >> >> >> >> cpu 1 panic: mchk >> >> >> >> >> >> locks held by cpu 1 >> >> >> >> >> >> print locks held by non-active processes >> >> done >> >> >> >> >> >> >> >> *************************** >> >> cpu 1 register dump >> >> sp = 800017d4 ap = 80001850 fp = 80001830 >> >> pc = 80084a88 ksp = 7ffffe88 usp = 7fffc800 >> >> isp = 80001780 p0pr = 80bd8c00 p0lr = 00000000 >> >> p1br = 803d8e00 p1lr = 001fffe4 sbr = 000bde00 >> >> slr = 00008d9a pcbb = 00111a00 scbb = 00000600 >> >> ipl = 0000001f astlvl = 00000004 sisr = 00000000 >> >> iccs = 00000041 >> >> >> >> interrupt stack: >> >> 80001780: 800aa989 800017ac 00000001 8010190c >> >> 80001790: 801018d8 80101998 800b44ba 00000080 >> >> 800017a0: 00000178 00000020 00000000 20000000 >> >> 800017b0: 80001818 800017d4 8004a0e2 00000003 >> >> 800017c0: 800b44b5 00000001 800017e4 00000002 >> >> 800017d0: 00000000 00000000 * 2fff0000 80001850 ap >> >> 800017e0: 80001830 fp 80084a88 pc 00000000 r0 0000001f r1 >> >> 800017f0: 00000001 r2 8000197c r3 00000026 r4 00000000 r5 >> >> >> >> kernel stack: >> >> 7ffffe88: 00000000 2fc00000 7ffffee0 >> 7ffffec4 >> >> 7ffffe98: 80009bad 00000000 80189f54 00000000 >> >> 7ffffea8: 00000000 00000000 80189f54 00000003 >> >> 7ffffeb8: 80189f54 00000014 800edd18 00000000 >> >> 7ffffec8: 2c000000 7fffff14 7ffffeec >> 80076967 >> >> 7ffffed8: 80e0509c 800925d4 00000001 80189f54 >> >> 7ffffee8: 00000000 00000000 2f800000 7fffff48 >> >> 7ffffef8: 7fffff30 80092914 00000000 801285d8 >> >> 7fffff08: 00000000 800bdd48 80e05000 00000003 >> >> 7fffff18: 800925d4 00001701 80e0509c 00000000 >> >> 7fffff28: 00000000 80e02400 00000000 28000000 >> >> 7fffff38: 7fffff6c 7fffff58 80092746 >> 00000006 >> >> 7fffff48: 00000003 00001701 800e7cc8 00000000 >> >> 7fffff58: 00000000 20000000 7fffff94 >> 7fffff78 >> >> 7fffff68: 8003d454 00000001 00001701 800e7cc8 >> >> 7fffff78: 00000000 2c000000 7fffffb8 >> 7fffff9c >> >> 7fffff88: 8003cde3 007ff800 00000006 00000000 >> >> 7fffff98: 800a8a58 00000000 2c000000 7ffffff8 >> >> 7fffffa8: 7fffffcc 8003c49d 007ff800 00000006 >> >> 7fffffb8: 00000000 00000000 00000000 800e9cc0 >> >> 7fffffc8: 00000000 00000000 2fc00000 00000000 >> >> 7fffffd8: 00000000 80003042 00000000 00000000 >> >> 7fffffe8: 00000000 00000000 007ff800 00000000 >> >> 7ffffff8: 00000001 0000089b >> >> dump area improper >> >> >> >> >> >> >> >> >> Johnny >> >> >> >> On 2015-06-19 16:14, Mattis Lind wrote: >> >> Hello! >> >> I am in the process to revive an VAX-11/750 machine but since I have no >> tape (nor install tapes) drive my idea was to create an image which I >> could transfer to a SCSI disk and then use a MSCP SCSI controller to >> boot the machine. >> >> I thought it would be a good idea to use the SimH vax750 simulator to do >> this work. But I encounter problem. Many of these problems are probably >> due to the fact I am not very familiar with SimH. Although I think I >> read though several documents and studied the source code. >> >> The booting process of the SimH vax750 simulator seems to differ from >> the real VAX-11/750. On the real thing when I insert console media and >> boot it it will read and I get a BOOT58> prompt. This doesn't happen at >> all on the simulator. Instead it seems that it preloads vmb.exe and then >> execute it. >> >> The images I have been using was found on >> http://iamvirtual.ca/VAX11/VAX-11-software.html >> >> All tests below is run using SimH from github compiled on MACOS. >> Although I have also tested to compile it on Linux with the same result. >> >> This is what happen on the simulator: >> >> sim> boot td0 >> Loading boot code from vmb.exe >> >> >> >> Please remove the volume "CONSOLE" from the console device. >> >> Insert the first standalone system volume and enter "YES" when ready: YES >> >> Resuming load operation on volume "CONSOLE", please stand by . . . >> >> >> 1 BRK AT 00001C50 >> 00001C50/CF00FB01 >> >> It seems some kind of command line is active since I get this output >> when I press some random keys: >> >> >> EH? >> EEE >> 00000EEE /8AAF9552 >> >> >> -------- >> >> Booting a standalone backup works OK if I don't follow the instructions >> to replace the console media the first time. >> >> >> sim> attach td0 /Users/mattis_lind/Downloads/BE-CT97A-BE.TAP >> TD: writing buffer to file >> TD: buffering file in memory >> sim> boot td0 >> Loading boot code from vmb.exe >> >> >> >> Please remove the volume "SYSTEM_1" from the console device. >> >> Insert the first standalone system volume and enter "YES" when ready: YES >> >> Resuming load operation on volume "SYSTEM_1", please stand by . . . >> >> >> Please remove the volume "SYSTEM_1" from the console device. >> >> Insert the next standalone system volume and enter "YES" when ready: >> Simulation stopped, PC: 000083D8 (MFPR #20,R0) >> sim> attach td0 /Users/mattis_lind/Downloads/BE-CT98A-BE.TAP >> TD: writing buffer to file >> TD: buffering file in memory >> sim> cont >> YES >> >> Resuming load operation on volume "SYSTEM_2", please stand by . . . >> >> >> >> VAX/VMS Version V4.0 15-SEP-1984 22:29 >> >> >> Please remove the volume "SYSTEM_2" from the console device. >> >> Insert the standalone application volume and enter "YES" when ready: >> Simulation stopped, PC: 80008B1F (BRB 80008B1F) >> sim> attach td0 /Users/mattis_lind/Downloads/BE-CT99A-BE.TAP >> TD: writing buffer to file >> TD: buffering file in memory >> sim> cont >> YES >> >> Resuming load operation on volume "BACKUP", please stand by . . . >> >> >> %BACKUP-I-IDENT, Stand-alone BACKUP V4.0; the date is 17-JUN-1984 >> 22:40:44.48 >> $ >> >> --------- >> >> Then trying to run various diagnostics images that are supposed to be >> standalone and do read on the real thing but gives the following result: >> >> sim> attach td0 /Users/mattis_lind/Downloads/BE-S198Q-DE.TAP >> TD: writing buffer to file >> TD: buffering file in memory >> sim> boot td0 >> Loading boot code from vmb.exe >> >> >> >> Please remove the volume "VMS Exchange" from the console device. >> >> Insert the first standalone system volume and enter "YES" when ready: YES >> >> Resuming load operation on volume "VMS Exchange", please stand by . . . >> >> ECKAL -- VAX 11/750 Cache/TB Diagnostic >> HALT instruction, PC: 00002608 (MTPR #F,#26) >> sim> attach td0 /Users/mattis_lind/Downloads/BE-S199T-DE.TAP >> TD: writing buffer to file >> TD: buffering file in memory >> sim> boot td0 >> Loading boot code from vmb.exe >> >> >> >> Please remove the volume "VMS Exchange" from the console device. >> >> Insert the first standalone system volume and enter "YES" when ready: YES >> >> Resuming load operation on volume "VMS Exchange", please stand by . . . >> >> %BOOT-F-Unable to locate BOOT file >> HALT instruction, PC: 000004C7 (BLBS 549,4C6) >> sim> attach td0 /Users/mattis_lind/Downloads/BE-S200I-DE.TAP >> TD: writing buffer to file >> TD: buffering file in memory >> sim> boot td0 >> Loading boot code from vmb.exe >> >> >> >> Please remove the volume "" from the console device. >> >> Insert the first standalone system volume and enter "YES" when ready: YES >> >> Resuming load operation on volume "", please stand by . . . >> >> %BOOT-F-Unable to locate BOOT file >> HALT instruction, PC: 000004C7 (BLBS 549,4C6) >> sim> >> >> As you can see the Cache/TB diagnostic do read in and seem to execute >> but fails. The others doesn't even seems to boot correctly. When tested >> on the real hardware all these start (although the Cache/TB fail, alas >> not at the same location) >> >> Maybe the best idea is to dump out the real BOOT PROMs from the actual >> machine an load those into memory and start those? I haven't been able >> to test this since the machine 100 km away. >> >> >> I did successfully boot a Ultrix-4.0 tap file from bitsavers in the vax >> andra microvax2 simulator. But how can I do that on the vax750 >> simulator? Doing "boot tq0" give "Command not allowed". Although help >> file indicate it is a valid command!? >> >> Any help appreciated! >> >> /Mattis >> >> _______________________________________________ >> Simh mailing list >> [email protected] >> http://mailman.trailing-edge.com/mailman/listinfo/simh >> >> >> >> -- >> Johnny Billquist || "I'm on a bus >> || on a psychedelic trip >> email: [email protected] || Reading murder books >> pdp is alive! || tryin' to stay hip" - B. Idol >> _______________________________________________ >> Simh mailing list >> [email protected] >> http://mailman.trailing-edge.com/mailman/listinfo/simh >> >> >> >> >> >> >> _______________________________________________ >> Simh mailing list >> [email protected] >> http://mailman.trailing-edge.com/mailman/listinfo/simh >> >> >> >> >> _______________________________________________ >> Simh mailing list >> [email protected] >> http://mailman.trailing-edge.com/mailman/listinfo/simh >> >> >> > >
_______________________________________________ Simh mailing list [email protected] http://mailman.trailing-edge.com/mailman/listinfo/simh
