Hi all
It seems it is Centos6 (specifically Centos 6.9, kernel 2.6.32-696) since I also tried on my Centos 7 -- not as recent as yours Mark (I don't like RHEL7/Centos7 so tend not to use it unless I need something specific).
Just like you I re-used my simh-master.zip (recent), built SimH (4.0.0-current) and ran pdp11 (no DEBUG).
I copied the RL01 image I had already that I knew worked from my Win 10 storage onto Centos7 "local storage". I then did a cmp on the two for confirmation they were identical. Then created 11/70, 1MB RAM, IDLE enabled. Attached the new disk from local Centos7 storage and noted it was immediately correctly recognised (thanks for the tip Mark), booted and et voila!
So there is something screwy with my Centos6 or the kernel. I will re-update Centos6 later and re-try, just in case.
Phil
----- Original Message -----
From: Mark Pizzolato <***@infocomm.com>
To: Phil Fisher <***@peejayeff.co.uk>, <***@gmail.com>
Cc: Bob Supnik (simh) <***@trailing-edge.com>
Sent: 30/03/2018 15:35:48
Subject: RE: [Simh] Problem booting RSX11M on pdp11 (halt at loc 0)
________________________________________________________________________________
Post by Phil Fisherthe point on another Linux is valid -- as I suspect VBox itself is not to blame
since I had similar results with VMware Workstation (although I have not
attempted to find a way to access "real" store on there I think it would work if
I could do so).
Based on other responses and comments from the mailing list that others
have run other SimH simulators under virtualisation (but maybe more
commercial ones) with no issues I suspect it may be something on my
hardware setup on the HP laptop (relating to virtualisation) or the Win 10
itself.
I am not yet good with SimH debugging (it took me a while to get to provide
the help it did and I am still not convinced I did it correctly) so any
suggestions welcome on that front.
You found your way there reasonably well. Building with DEBUG=1 is only
necessary if you're planning on running the simulator under a debugger and
plan to set breakpoints, etc directly in the simulator code. The simh
provided debug output is always there without regard to having built
things with DEBUG=1.
Meanwhile, you've isolated things well to what seems to be where the
Disk image file is located. To help yourself you should use host system
tools to assure that the files are indeed EXACTLY the same.
I pulled down a CentOS 7 ISO image and installed that in a newly
created VirtualBox VM on my Windows 10 Laptop. I pulled the latest
code from github.com/simh/simh master branch and built it and tested.
This is what happened to me:
[***@localhost simh]$ make pdp11
*** Installing git hooks in local repository ***
lib paths are: /lib64/ /usr/lib64/dyninst/ /usr/lib64/iscsi/ /usr/lib64/mysql/
include paths are: /usr/include
using libm: /lib64/libm.so
using librt: /lib64/librt.so
using libpthread: /lib64/libpthread.so /usr/include/pthread.h
using regex: /usr/include/regex.h
using libdl: /lib64/libdl.so /usr/include/dlfcn.h
using mman: /usr/include/sys/mman.h
*** Info ***
*** Info *** The simulator you are building could provide more
*** Info *** functionality if video support were available on your system.
*** Info *** Install the development components of libSDL packaged by your
*** Info *** operating system distribution and rebuild your simulator to
*** Info *** enable this extra functionality.
*** Info ***
using libpcap: /usr/include/pcap.h
*** Info ***
*** Info *** pdp11 Simulator are being built with
*** Info *** minimal libpcap networking support
*** Info ***
*** Info ***
*** Info *** Simulators on your Linux platform can also be built with
*** Info *** extended LAN Ethernet networking support by using VDE Ethernet.
*** Info ***
*** Info *** To build simulator(s) with extended networking support you
*** Info *** should read 0readme_ethernet.txt and follow the instructions
*** Info *** regarding the needed libvdeplug components for your Linux
*** Info *** platform
*** Info ***
***
*** pdp11 Simulator being built with:
*** - compiler optimizations and no debugging support. GCC Version: 4.8.5.
*** - dynamic networking support using Linux provided libpcap components.
*** - Local LAN packet transports: PCAP TAP NAT(SLiRP)
***
*** git commit id is b0ff29781b2e6f526f6f36602590fcd91adc0c95.
*** git commit time is 2018-03-29T21:12:44-0700.
***
gcc -std=gnu99 -U__STRICT_ANSI__ -O2 -finline-functions -fgcse-after-reload -fpredictive-commoning -fipa-cp-clone -fno-unsafe-loop-optimizations -fno-strict-overflow -Wno-unused-result -DSIM_GIT_COMMIT_ID=b0ff29781b2e6f526f6f36602590fcd91adc0c95 -DSIM_GIT_COMMIT_TIME=2018-03-29T21:12:44-0700 -DSIM_GIT_COMMIT_TIME=2018-03-29T21:12:44-0700 -DSIM_COMPILER="GCC Version: 4.8.5" -I . -D_GNU_SOURCE -DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_REGEX_H -DHAVE_DLOPEN=so -DHAVE_UTIME -DHAVE_GLOB -DHAVE_SHM_OPEN sim_BuildROMs.c -o BIN/BuildROMs
BIN/BuildROMs
rm -f BIN/BuildROMs
gcc -std=gnu99 -U__STRICT_ANSI__ -O2 -finline-functions -fgcse-after-reload -fpredictive-commoning -fipa-cp-clone -fno-unsafe-loop-optimizations -fno-strict-overflow -Wno-unused-result -DSIM_GIT_COMMIT_ID=b0ff29781b2e6f526f6f36602590fcd91adc0c95 -DSIM_GIT_COMMIT_TIME=2018-03-29T21:12:44-0700 -DSIM_GIT_COMMIT_TIME=2018-03-29T21:12:44-0700 -DSIM_COMPILER="GCC Version: 4.8.5" -I . -D_GNU_SOURCE -DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_REGEX_H -DHAVE_DLOPEN=so -DHAVE_UTIME -DHAVE_GLOB -DHAVE_SHM_OPEN PDP11/pdp11_fp.c PDP11/pdp11_cpu.c PDP11/pdp11_dz.c PDP11/pdp11_cis.c PDP11/pdp11_lp.c PDP11/pdp11_rk.c PDP11/pdp11_rl.c PDP11/pdp11_rp.c PDP11/pdp11_rx.c PDP11/pdp11_stddev.c PDP11/pdp11_sys.c PDP11/pdp11_tc.c PDP11/pdp11_tm.c PDP11/pdp11_ts.c PDP11/pdp11_io.c PDP11/pdp11_rq.c PDP11/pdp11_tq.c PDP11/pdp11_pclk.c PDP11/pdp11_ry.c PDP11/pdp11_pt.c PDP11/pdp11_hk.c PDP11/pdp11_xq.c PDP11/pdp11_xu.c PDP11/pdp11_vh.c PDP11/pdp11_rh.c PDP11/pdp11_tu.c PDP11/pdp11_cpumod.c PDP11/pdp11_cr.c P
DP11/pdp11_rf.c PDP11/pdp11_dl.c PDP11/pdp11_ta.c PDP11/pdp11_rc.c PDP11/pdp11_kg.c PDP11/pdp11_ke.c PDP11/pdp11_dc.c PDP11/pdp11_dmc.c PDP11/pdp11_kmc.c PDP11/pdp11_dup.c PDP11/pdp11_rs.c PDP11/pdp11_vt.c PDP11/pdp11_td.c PDP11/pdp11_io_lib.c scp.c sim_console.c sim_fio.c sim_timer.c sim_sock.c sim_tmxr.c sim_ether.c sim_tape.c sim_disk.c sim_serial.c sim_video.c sim_imd.c sim_card.c -DVM_PDP11 -I PDP11 -DHAVE_PCAP_NETWORK -I/usr/include/ -DBPF_CONST_STRING -DUSE_SHARED -DHAVE_TAP_NETWORK -Islirp -Islirp_glue -Islirp_glue/qemu -DHAVE_SLIRP_NETWORK -DUSE_SIMH_SLIRP_DEBUG slirp/*.c slirp_glue/*.c -o BIN/pdp11 -lm -lrt -lpthread -ldl
[***@localhost simh]$ cd BIN
[***@localhost BIN]$ wget http://www.mirrorservice.org/sites/www.bitsavers.org/bits/DEC/pdp11/discimages/rl01/rsx11m_3.2/RSX-11M_V3.2_RSX11MBL26_3.2.DSK.gz
--2018-03-30 10:00:26-- http://www.mirrorservice.org/sites/www.bitsavers.org/bits/DEC/pdp11/discimages/rl01/rsx11m_3.2/RSX-11M_V3.2_RSX11MBL26_3.2.DSK.gz
Resolving www.mirrorservice.org (www.mirrorservice.org)... 212.219.56.184, 2001:630:341:12::184
Connecting to www.mirrorservice.org (www.mirrorservice.org)|212.219.56.184|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1607457 (1.5M) [application/x-gzip]
Saving to: ‘RSX-11M_V3.2_RSX11MBL26_3.2.DSK.gz’
100%[======================================>] 1,607,457 575KB/s in 2.7s
2018-03-30 10:00:30 (575 KB/s) - ‘RSX-11M_V3.2_RSX11MBL26_3.2.DSK.gz’ saved [1607457/1607457]
[***@localhost BIN]$ gzip -d RSX-11M_V3.2_RSX11MBL26_3.2.DSK.gz
[***@localhost BIN]$ ./pdp11
PDP-11 simulator V4.0-0 Current git commit id: b0ff2978
sim> att rl0 RSX-11M_V3.2_RSX11MBL26_3.2.DSK
RL0: 'RSX-11M_V3.2_RSX11MBL26_3.2.DSK' Contains an ODS1 File system
RL0: Volume Name: RSXM26 Format: DECFILE11A Sectors In Volume: 10240
sim> b rl0
RSX-11M V3.2 BL26 28K
Post by Phil FisherMOU DL:RSXM26
@DL:[1,2]STARTUP
Simulation stopped, PC: 001330 (CLRB (R1)+)
sim> q
Goodbye
[***@localhost BIN]$ ls -l RSX-11M_V3.2_RSX11MBL26_3.2.DSK
-rw-rw-r--. 1 mark mark 5243087 Mar 30 10:01 RSX-11M_V3.2_RSX11MBL26_3.2.DSK
[***@localhost BIN]$ md5sum RSX-11M_V3.2_RSX11MBL26_3.2.DSK
7ae69baabd1c15fb2006545c457feb5d RSX-11M_V3.2_RSX11MBL26_3.2.DSK
[***@localhost BIN]$ ./pdp11
PDP-11 simulator V4.0-0 Current git commit id: b0ff2978
sim> show ver
PDP-11 simulator V4.0-0 Current
Simulator Framework Capabilities:
32b data
32b addresses
Threaded Ethernet Packet transports:PCAP:TAP:NAT:UDP
Idle/Throttling support is available
Virtual Hard Disk (VHD) support
RAW disk and CD/DVD ROM support
Asynchronous I/O support (Lock free asynchronous event queue)
Asynchronous Clock support
FrontPanel API Version 12
Host Platform:
Compiler: GCC 4.8.5 20150623 (Red Hat 4.8.5-16)
Simulator Compiled as C arch: x64 (Release Build) on Mar 30 2018 at 00:51:38
Memory Access: Little Endian
Memory Pointer Size: 64 bits
Large File (>2GB) support
SDL Video support: No Video Support
RegEx support for EXPECT commands
OS clock resolution: 1ms
Time taken by msleep(1): 1ms
OS: Linux localhost.localdomain 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
git commit id: b0ff2978
git commit time: 2018-03-29T21:12:44-0700
sim> q
Goodbye
This the exactly the expected result and essentially identical to what happens on other Linux, OS X, and Windows systems.
What is the size and md5sum of the file you are attaching to the RL0 device?
Notice in my test the directory I'm working in the one for my user account on the local CentOS file system and is not a shared drive. The same results are observed if I use a file on a shared drive.
If the md5sum of the disk image file is the same as mine, then I'll go and find a CentOS 6 image and dig further.
If the md5sum of the disk image file differs, then first pull down and unzip a new disk image:
$ wget http://www.mirrorservice.org/sites/www.bitsavers.org/bits/DEC/pdp11/discimages/rl01/rsx11m_3.2/RSX-11M_V3.2_RSX11MBL26_3.2.DSK.gz
$ gzip -d RSX-11M_V3.2_RSX11MBL26_3.2.DSK.gz
$ md5sum RSX-11M_V3.2_RSX11MBL26_3.2.DSK
If this file doesn't have the same value as I do, then clearly the problem has nothing to do with simh.
Once you've got matching input files, try with the minimal 2 SCP commands I used:
sim> attach RL0 RSX-11M_V3.2_RSX11MBL26_3.2.DSK
sim> B RL0
As you noticed, the output produced by the attach command will predict whether the boot will succeed.
= Mark