SimH IBM1130 GUI appears broken
JAMES FEHLINGER
jfehlinger at comcast.net
Wed May 3 11:41:23 CDT 2017
I originally attempted to post this to simh at trailing-edge.com,
but they have a policy of automatically rejecting any messages from
non-subscribers, and as I only read that list via the Web
interface, it doesn't seem worth it to subscribe just in order to
post one message. However, I suspect that Brian Knittel and/or
Mark Pizzolato probably see stuff that's posted here too.
---
Once upon a time (i.e., prior to early January, 2016), the
SimH IBM1130 GUI worked like this (on Windows):
You start the simulator in a console window and issue the
commands (either manually or via a command file argument):
-------------------------
reset
detach prt
delete printer.txt
att dsk0 dms.dsk
att prt printer.txt
boot dsk
-------------------------
At this point, the simulator, after having booted the DMS
operating system, enters a "Wait state" and drops
back to the SimH prompt. The console window shows
(if you've started the simulator with the command file
argument "guijob" containing the above commands):
-------------------------
IBM 1130 Simulator V4.0-0 Beta git commit id: e8ea427d
guijob-2> detach prt
Not attached
PRT: creating new file
Loaded DMS V2M12 cold start card
Wait, IAR: 0000002A (4c80 BSC I ,00028 )
sim>
-------------------------
The line printer icon in the GUI now "shows paper" which,
if you view it (thereby "tearing it off" and causing
the creation of a new printer file) will show the boot
message from DMS.
At this point, you can submit a "job deck" by dragging a
file to the GUI's card reader icon -- e.g., one of the
decks from the software kit at ibm1130.org
(such as a job to print the LET [Location Equivalence Table] list.job,
a sample Fortran program for.job or one of the more substantial
Fortran programs like csort.job or swave.job, etc.)
Each time you drag the "job deck" file over the GUI's
card reader icon, the depicted input tray "fills up" and
the console shows, e.g.
sim> attach cr "C:\ibm1130\dms\list.job"
sim>
You then click the green PROGRAM START button, the blinkenlights
flash briefly, the card reader "empties", the printer "shows paper"
(if it was empty beforehand) and, most significantly here,
**the simulator enters Wait state and drops back to its prompt
when the program has finished**. The console window now shows (e.g.)
sim> attach cr "C:\ibm1130\dms\list.job"
sim> cont
Wait, IAR: 0000002A (4c80 BSC I ,00028 )
sim>
You can continue to submit jobs, without rebooting DMS, by dragging
a new deck to the card reader icon, and clicking PROGRAM START.
Each time, the simulator swallows the "cards", flashes the blinkenlights,
adds output to the line printer file, and enters Wait and drops
back to its prompt.
The "git commit id" in the IBM1130.exe used for the above example is e8ea427d from
https://github.com/simh/Win32-Development-Binaries archive
simh-4.0-Beta--2016-01-07-e8ea427d.zip (January 7, 2016).
If I use the IBM1130.exe from the very next archive
simh-4.0-Beta--2016-01-29-b8049645.zip (January 29, 2016), I get
a different result (using the same file of startup commands):
-------------------------
IBM 1130 Simulator V4.0-0 Beta git commit id: b8049645
guijob-2> detach prt
Not attached
PRT: creating new file
Loaded DMS V2M12 cold start card
-------------------------
Here, the simulator has not entered a Wait state and dropped back
to a prompt. If I try to drag a "job deck" file to the card reader
icon, the attempt is rejected with a Windows error gong and
the card reader remains empty.
I can get around this by performing the following:
Click the red "IMM STOP" button.
Drag the "job deck" file to the card reader icon. The reader
"fills up".
In the console window, type "boot dsk" to re-boot DMS
(clicking PROGRAM START doesn't work here!),
The card reader empties, the blinkenlights flash and apparently
the program runs. However, the simulator does not enter
Wait state when the program is finished. (Nor can I click on
the lineprinter icon to "tear off" and view the results at this point.)
However, if I again click the red "IMM STOP" button and then
click the lineprinter icon, I can see the results of the
program that just ran. Or, I can click IMM STOP, submit a
new job deck to the card reader, type "boot dsk" (you have
to re-boot DMS; PROGRAM START won't work!),
and the new program will run and add its results to the lineprinter output.
The very latest Win32 build of IBM1130.exe, from
simh-4.0-Beta--2017-05-02-e9dea63b.zip (May 2, 2017)
exhibits slightly different (but still apparently broken)
behavior.
When the startup command file executes, the initial result looks
correct (i.e., the same as the January 7, 2016 result above):
-------------------------
IBM 1130 Simulator V4.0-0 Beta git commit id: e9dea63b
guijob-2> detach prt
Not attached
PRT: creating new file
Loaded DMS V2M12 cold start card
Wait, IAR: 0000002A (4c80 BSC I ,00028 )
sim>
-------------------------
Note that the simulator has entered the Wait state and dropped back
to its prompt, and you can now drag a job deck to the card reader
and start the program normally by clicking PROGRAM START.
However, at this point the simulator reverts to the broken behavior
exhibited by the January 29, 2016 example above -- when the program is
finished running, the simulator does not enter Wait state and
drop back to a "sim>" prompt. The console window looks like:
-------------------------
IBM 1130 Simulator V4.0-0 Beta git commit id: e9dea63b
guijob-2> detach prt
Not attached
PRT: creating new file
Loaded DMS V2M12 cold start card
Wait, IAR: 0000002A (4c80 BSC I ,00028 )
sim> cont
-------------------------
and the simulator remains unresponsive until the IMM STOP button
is pushed. Then we see:
-------------------------
IBM 1130 Simulator V4.0-0 Beta git commit id: e9dea63b
guijob-2> detach prt
Not attached
PRT: creating new file
Loaded DMS V2M12 cold start card
Wait, IAR: 0000002A (4c80 BSC I ,00028 )
sim> cont
Immediate Stop key requested, IAR (4c80 BSC I ,00028 )
-------------------------
At this point, the GUI becomes responsive again, and the
line printer output can be "torn off" and viewed, or a
new job can be dragged to the card reader.
However, you cannot then use the PROGRAM START button to
start the new program. If you do, the simulator will issue
a "cont" command, but the card reader will not empty and
the new program will not run.
You have to type "boot dsk" in the console window to reboot DMS.
At this point, the loaded card reader will empty by itself,
the new program will run, and the program's output will be added
to the lineprinter listing.
For each additional job deck you want to run, you have to use
the IMM STOP, load card reader, "boot dsk" (reboot DMS)
sequence.
So it appears something happened to break the normal functioning
of the 1130 GUI back in January of last year, which has not yet
been completely repaired.
More information about the cctech
mailing list