Closed decuser closed 10 months ago
Does it work if you ask for ./rk05 ?
No. It's the same error: PDP-11 simulator V4.0-0 Current git commit id: 65410851 sim> att rk0 rk0 %SIM-ERROR: RK device: Non-existent parameter - RK05 sim> att rk0 ./rk0 %SIM-ERROR: RK device: Non-existent parameter - RK05
I also tried with the full absolute path, same issue.
Try with the simulator at the https://github.com/simh/simh repo
@markpizz - the most recent there works as expected, it looks like you have made a couple of commits related to pdp11_rk.c in the last couple of months (between Feb and now).
also, after reading the help more carefully and digging into it, it looks like it's actually attaching, so maybe it's just an erroneous error?
PDP-11 simulator V4.0-0 Current git commit id: 65410851 sim> show rk0 RK0 1247KW, not attached, write enabled RK05, autosize, AUTO detect format sim> att rk0 rk0 %SIM-ERROR: RK device: Non-existent parameter - RK05 sim> show rk0 RK0 1247KW, attached to rk0, write enabled RK05, autosize, RAW format
I don't know what causes that particular defect, but the trigger is the presence of the MarkP metadata appendage.
Do "zap rk0" to remove that; the message should not appear afterwards.
Hmm.. something up with autosize is my guess. I worked around it with:
(base) nebula:v6 wsenn$ pdp11
PDP-11 simulator V4.0-0 Current git commit id: 65410851 sim> set rk0 en noautosize sim> att rk0 rk0 %SIM-INFO: RK0: Creating new file: rk0 sim> q Goodbye (base) nebula:v6 wsenn$ pdp11
PDP-11 simulator V4.0-0 Current git commit id: 65410851 sim> set rk0 en noautosize sim> att rk0 rk0 sim> show rk0 RK0 1247KW, attached to rk0, write enabled RK05, noautosize, RAW format sim> q Goodbye
Dunno if this is ok, but it works?
Is the metadata stuff what causes: %SIM-INFO: and %SIM-ERROR: That is present by default isn't it? Should it normally be disabled?
A while back, there was user confusion between informative messages vs error messages. I added the display of %SIM-INFO for informative messages and %SIM-ERROR for errors.
In general messages can be suppressed if the command that caused them is invoked with the -Q switch.
AFAICT, the problem here is that when AUTOSIZE is on, sim_disk_attach_ex2()
tries to iterate over all disk types passed in the last parameter (for RK, there's only "RK05" in that array), and to issue the "SET RKn RK05" command internally. (Also, at the end, it tries to revert to the original drive type, which was also passed as "RK05", in a dtype
parameter.) The RK module does not recognize such a SET command, even though it recognizes "SHOW RKn TYPE" one. I think there's a logic error in using the drive types in this particular case. Or, at least it should have checked that the "dtype" was matching the entry from "drivetypes" and not attempted to use it -- since it's already the current drive type.
Anyways, the AUTOSIZE logic in that function is extremely convoluted, so no wonder it just back fires at the corner cases.
The obvious answer is that autosize is not meaningful, and should not be done, for devices that come in only one size. Unless someone adds RK02 support, that is true for the RK emulation. One reason why this makes sense is because for single-size devices, SET
Interesting. It seems to be the only PDP-11 disk controller for which that is true. (If we add Pro support, it would also be true for the Pro floppy controller.)
@decuser : can you please check that the issue has been addressed in the current codebase? Thx
I've not been following this lately, but sure, I'll check it out in the next day or so.
Oops. This completely dropped off my radar. Yes, it works now and appears to be fixed in the current build
PDP-11 simulator Open SIMH V4.1-0 Current git commit id: cc76d9a7
Thanks for checking!
So I suppose this can be closed then?
Context
The default pdp11 simulation no longer attaches RK images created by the simulator:
(base) nebula:open-simh-newest wsenn$ BIN/pdp11 PDP-11 simulator V4.0-0 Current git commit id: 65410851 sim> att rk0 rk0 %SIM-INFO: RK0: Creating new file: rk0 sim> q Goodbye
(base) nebula:open-simh-newest wsenn$ BIN/pdp11
PDP-11 simulator V4.0-0 Current git commit id: 65410851 sim> att rk0 rk0 %SIM-ERROR: RK device: Non-existent parameter - RK05 sim> q Goodbye
the output of "sim> SHOW VERSION" while running the simulator which is having the issue
sim> show version PDP-11 simulator V4.0-0 Current Simulator Framework Capabilities: 32b data 32b addresses Threaded Ethernet Packet transports:PCAP:VDE: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 Apple LLVM 13.1.6 (clang-1316.0.21.2.5) Simulator Compiled as C arch: x64 (Release Build) on Oct 19 2022 at 11:59:05 Build Tool: simh-makefile Memory Access: Little Endian Memory Pointer Size: 64 bits Large File (>2GB) support SDL Video support: SDL Version 2.24.0, PNG Version 1.6.38, zlib: 1.2.12 PCRE RegEx (Version 8.45 2021-06-15) support for EXPECT commands OS clock resolution: 1ms Time taken by msleep(1): 1ms Ethernet packet info: libpcap version 1.9.1 OS: Darwin nebula.local 21.6.0 Darwin Kernel Version 21.6.0: Wed Aug 10 14:25:27 PDT 2022; root:xnu-8020.141.5~2/RELEASE_X86_64 x86_64 Processor Name: Intel(R) Xeon(R) CPU X5670 @ 2.93GHz tar tool: bsdtar 3.5.1 - libarchive 3.5.1 zlib/1.2.11 liblzma/5.0.5 bz2lib/1.0.8 curl tool: curl 7.85.0 (x86_64-apple-darwin21.3.0) libcurl/7.85.0 OpenSSL/3.0.5 zlib/1.2.12 brotli/1.0.9 zstd/1.5.2 libidn2/2.3.3 libpsl/0.21.1 (+libidn2/2.3.2) nghttp2/1.50.0 git commit id: 65410851 git commit time: 2022-10-15T17:53:47+0200 sim>
how you built the simulator or that you're using prebuilt binaries
(base) nebula:sandboxes-git wsenn$ cd ~/sandboxes-git (base) nebula:sandboxes-git wsenn$ git clone https://github.com/open-simh/simh.git open-simh-newest Cloning into 'open-simh-newest'... remote: Enumerating objects: 34551, done. remote: Counting objects: 100% (65/65), done. remote: Compressing objects: 100% (47/47), done. remote: Total 34551 (delta 21), reused 51 (delta 18), pack-reused 34486 Receiving objects: 100% (34551/34551), 77.51 MiB | 32.89 MiB/s, done. Resolving deltas: 100% (26745/26745), done. Updating files: 100% (1573/1573), done. (base) nebula:sandboxes-git wsenn$ cd open-simh-newest (base) nebula:open-simh-newest wsenn$ make clean lib paths are: /usr/lib /opt/local/lib /usr/lib/ include paths are: /usr/local/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include /opt/local/include using macOS libpthread: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/pthread.h using libpcre: /opt/local/lib/libpcre.dylib /opt/local/include/pcre.h using macOS dlopen with .dylib using libedit: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/editline/readline.h using libpng: /opt/local/lib/libpng.dylib /opt/local/include/png.h using zlib: /opt/local/lib/libz.dylib /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/zlib.h using mman: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/mman.h rm -f -rf BIN/ (base) nebula:open-simh-newest wsenn$ make pdp11 lib paths are: /usr/lib /opt/local/lib /usr/lib/ include paths are: /usr/local/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/13.1.6/include /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include /opt/local/include using macOS libpthread: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/pthread.h using libpcre: /opt/local/lib/libpcre.dylib /opt/local/include/pcre.h using macOS dlopen with .dylib using libedit: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/editline/readline.h using libpng: /opt/local/lib/libpng.dylib /opt/local/include/png.h using zlib: /opt/local/lib/libz.dylib /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/zlib.h using mman: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/mman.h using libSDL2: /opt/local/include/SDL2/SDL.h *** No SDL ttf support available. BESM-6 video panel disabled.
Info Install the MacPorts libSDL2-ttf development package to provide this Info functionality for your OS X system: Info # port install libsdl2-ttf-dev using libpcap: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/pcap.h using libvdeplug: /opt/local/lib/libvdeplug.dylib /opt/local/include/libvdeplug.h
pdp11 Simulator being built with: - compiler optimizations and no debugging support. Apple clang version 13.1.6. - dynamic networking support using OSX provided libpcap components. - Local LAN packet transports: PCAP VDE NAT(SLiRP) - video capabilities provided by libSDL2 (Simple Directmedia Layer). - Per simulator tests will be run.
git commit id is 65410851d5d5f3931eff322c3c677d014c18a448. git commit time is 2022-10-15T17:53:47+0200.
gcc -std=c99 -U__STRICT_ANSI__ -O2 -fno-strict-overflow -finline-functions -DSIM_GIT_COMMIT_ID=65410851d5d5f3931eff322c3c677d014c18a448 -DSIM_GIT_COMMIT_TIME=2022-10-15T17:53:47+0200 -DSIM_COMPILER="Apple clang version 13.1.6" -DSIM_BUILD_TOOL=simh-makefile -I . -D_GNU_SOURCE -I/opt/local/include -DUSE_READER_THREAD -DSIM_ASYNCH_IO -DHAVE_PCRE_H -DHAVE_SYS_IOCTL -DSIM_HAVE_DLOPEN=dylib -DHAVE_EDITLINE -DHAVE_UTIME -DHAVE_LIBPNG -DHAVE_ZLIB -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 ./PDP11/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 ./PDP11/pdp11_rom.c ./PDP11/pdp11_ch.c ./PDP11/pdp11_dh.c ./PDP11/pdp11_ng.c ./PDP11/pdp11_daz.c ./display/display.c ./display/sim_ws.c ./display/ng.c ./display/vt11.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/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/ -DBPF_CONST_STRING -DUSE_SHARED -DHAVE_VDE_NETWORK -Islirp -Islirp_glue -Islirp_glue/qemu -DHAVE_SLIRP_NETWORK -DUSE_SIMH_SLIRP_DEBUG slirp/.c slirp_glue/.c -DUSE_DISPLAY -DHAVE_LIBSDL -DUSE_SIM_VIDEO
sdl2-config --cflags
-DSDL_MAIN_AVAILABLEsdl2-config --libs
-o BIN/pdp11 -L/opt/local/lib -lpthread -lpcre -L/opt/local/lib/ -ledit -lpng -lz -lvdeplug -L/opt/local/lib/ BIN/pdp11 RegisterSanityCheck </dev/null Running internal register sanity checks on PDP-11 simulator. *** Good Registers in PDP-11 simulator. (base) nebula:open-simh-newest wsenn$the simulator configuration file (or commands) which were used when the problem occurred.
the expected behavior and the actual behavior
expected behavior: (base) nebula:simh-newest wsenn$ BIN/pdp11 PDP-11 simulator V4.0-0 Current git commit id: 2673530d sim> att rk0 rk0 %SIM-INFO: RK0: Creating new file: rk0 sim> q Goodbye (base) nebula:simh-newest wsenn$ BIN/pdp11 PDP-11 simulator V4.0-0 Current git commit id: 2673530d sim> att rk0 rk0 sim>
actual behavior:
(base) nebula:open-simh-newest wsenn$ BIN/pdp11 PDP-11 simulator V4.0-0 Current git commit id: 65410851 sim> att rk0 rk0 %SIM-INFO: RK0: Creating new file: rk0 sim> q Goodbye
(base) nebula:open-simh-newest wsenn$ BIN/pdp11
PDP-11 simulator V4.0-0 Current git commit id: 65410851 sim> att rk0 rk0 %SIM-ERROR: RK device: Non-existent parameter - RK05 sim> q Goodbye
you may also need to provide specific pointers to data files that may be necessary to demonstrate the problem