SimH IBM1130 GUI appears "fixed"

JAMES FEHLINGER jfehlinger at
Sat May 13 13:32:24 CDT 2017

I wrote, above:

> The trajectory plot for a given flight doesn't seem to
> appear on the lineprinter until the **succeeding** flight has
> terminated.  The visible trajectory plot always seems to be one
> flight behind the one just terminated.  I don't know what
> that's about.

This turns out to be a subtle operational difference between
using the SimH 1130 and a real machine.

When the flight terminates, the console displays
and the 1130 goes into a wait state (or SimH drops
back to its command prompt), in response to a Fortran
PAUSE statement in the main program.

If you were using a real machine, this would be a
chance to alter the data switches -- including, e.g.,
in which case, when you continue, the plot data is **not**
dumped to the lineprinter (though the headings for
"TRACE EVERY TENTH ITERATION" are still printed, along
with the trace data if switch #1 is on).

But if switch #5 is off and you press PROGRAM START at
that point, by the time ENTER ANGLE shows up on the console
in preparation for the next flight, the plot diagram for
the last flight is already coming out on the lineprinter.
Which you can just walk over and see.

But if you're using SimH, then this PAUSE (while also giving
you a chance to alter data switches) is the **only** opportunity
you'll get to view the lineprinter output (either by clicking
the lineprinter icon in the GUI or by typing
detach prt, view "printer.txt", !del printer.txt, attach prt printer.txt
on the command line)  without forcibly stopping
the program (by clicking IMM STOP or by typing ^E in the console)
after it has cycled around to display the next ENTER ANGLE prompt
on the console.

The location of the PAUSE statement in the main program comes
immediately after "PLOT DIAGRAM IS READY." message is printed on the console,
but **before** the plot data is actually written to the lineprinter.

So if you do click the lineprinter icon in SimH when the program
pauses after the message, you won't see the plot diagram for the flight
that just ended, because it hasn't yet been sent to the lineprinter.
And if you click the lineprinter icon after you've continued
through the next flight and the program has once again paused after
"PLOT DIAGRAM IS READY.", then you'll only see the plot diagram
for the **previous** flight.

I "fixed" this, just to make things more convenient for SimH, by
commenting out the PAUSE statement on card LUNAR052 in the main program,
and inserting a new PAUSE statement just after card LUNAR084 (immediately
after the "DO 42" loop that writes the plot data out to the lineprinter).

Of course, on a **real** 1130, this "fix" would make it impossible
to avoid wasting time and paper if you decided you didn't need the plot for
the just-completed flight.

You can't have it both ways!

BTW, if you enter angle "-135." and velocity increment "5000." the plot
diagram shows that your ship loops once around the earth before heading
off into space.  It's also the case here that the program pauses
twice **before** pausing for "PLOT DIAGRAM IS READY.".
I was confused by this, but the instructions reveal what's going on:
VELOCITY APPROACHES ZERO..."  That happens at the right and left
extremities of the orbital loop.  If you turn on tracing (switch #1), you can
see the 'X' VELOC. changing sign and going through zero twice.

And sure enough, when the program pauses, the Accumulator (in the GUI)

__ __ _2 __    __ __ _6 __    __ __ 10 __    __ __ 14 __
 0  1  2  3     4  5  6  7     8  9 10 11    12 14 14 15


0010  0010  0010  0010
   2     2     2     2

More information about the cctalk mailing list