This package contains a bootable SimH HP2100 7906 disk image
containing a HP-IPL/OS-based disk menu and several old-comp and
old-comp-style programs to run. The disk image can also be directly
copied to an IDE disk, connected to a HP2113E or compatible CPU using
an 8052-based interface, and booted without change other than
reconfiguring the software/hardware to use the same device slots.
Here's the system in operation... (in Konsole running under Ubuntu)

The letter A had been pressed to run BASIC, a program entered then
BYE given to return to the menu, at which point options 7 to 9 became
visible (and whenever there's a binary system in "alternate memory", a
buffer for 31KW memory images). If option 7 is selected the menu asks
to run MSUPATCH (if MSU BASIC detected) which can be used to
change the text displayed when it starts (among things), then it
prompts for a name to save the file to. If a name is given the program
is saved and displayed on the menu. When the newly saved program is
selected to run it still contains the program that was entered, ready
to RUN or edit further. Pretty nifty stuff for a system that has no
knowledge of disk files, but that doesn't matter - HP-IPL/OS binary
files are simply 31KW chunks of memory that are loaded and run from 2.
Before running the binary HP-IPL/OS copies itself to alt mem and
puts a short program in memory at location 77000, when run this
"swapper" program swaps alt and main memory and runs from 2, rerunning
HP-IPL/OS and leaving whatever was running in alt mem where it can be
saved or otherwise processed. MSU BASIC has been patched to not clear
memory, and to run 77000 when BYE is given (if the swapper exists).
"BCS" binaries such as the CHESS, 31-ODD and REVERSIX programs have no
knowledge of this so after using them they have to be halted to run
77000 manually to return to the menu. These programs also require CRLF
enters or control-J has to be pressed to enter data, so option 2 for
halting is handy for entering set tty autolf and set tty noautolf and
other sim commands.
The SUMMARY text file is a copy of summary.txt
that comes with the main HP-IPL/OS archive. Not everything described is
included or is able to run under sim, and doesn't describe everything
that is included, but it's the best reference available for IPL
programming. IPL, assembly and text files from the main HP-IPL/OS
archive can be browsed from the Files
Index. The NOTES file was created using the provided FED editor and
describes the included programs and the operating system. Refer to the
readme.txt file in the 7906sim.zip file for startup instructions for
Windows and Linux. The zip also contains another zip containing the sim
scripts and source used to make the simulation, and if needed can be
used to make a version of the operating system for the smaller 7900
disk. I don't know if this software actually works on real 7900 or 7906
disks, it has only been tested under simulation and running from an IDE
disk.
Notes...
binpatch.txt (3/25/08) - How to patch
binaries using HP-IPL/OS
simextra.txt (4/18/08) - Additional
"technical" notes
update151p.txt (8/12/08) - How to
update an existing sim (older version, same procedure for newer)
3/16/09 - The previous printer driver worked under simulation but
not with real hardware. Updated PRINT.IPL and SUMMARY to fix (file
dates 3/15/09). The new printer driver renames the words, MSPRN etc is
now MSLPT to match other LPT references in CONFIG etc, and adds
stand-alone print words so things can be printed directly without
involving MS redirection. The printer driver is of limited use under
simulation but +PE function is handy for logging all console I/O to a
file.
12/4/08 - Added a throttle setting to the sim script so it
won't load the CPU to 100%, presently set to 80% which on my systems
actually uses about 66% of the CPU. Reduce for very fast machines or
laptops but if set too slow can interfere with pasting code into MSU
BASIC. No changes to the simulation disk itself, added this line
because some (in my opinion broken) machines cannot sustain 100% CPU
usage without problems.
9/14/08 - Updated EDIT.IPL to a new version
that uses machine code
(faster), updated SUMMARY to match. Added information about running on
real hardware to the readme file.
9/1/08 - Replaced the lib2.ipl and a2l.ipl library packages with the
new sfslib.ipl
library system, updated SUMMARY and NOTES to describe.
8/20/08 - Updated the sim's boot system and DM2.IPL
source for the
menu (8/19/08, now 1.52A). The new menu fixes the import text from PTR
function so that it properly skips the leader, not really an issue
under sim but this is for real hardware too and some PTR emulators
require a leader of zeroes. Dropped an empty string if just enter
pressed at the save binary file name prompt. Now displays the HP-IPL/OS
version string in the title rather than a generic title. Better
handling of invalid keypresses at the main menu by backing up and
reprinting the prompt. PC keyboards still cause inadvertent running if
cursor keys etc pressed due to capitol letters in the escape sequence
but would take too much code to ignore that, just don't do it. The load
ABS function now has a way out if inadvertently selected (without
having to halt and restart). DM2.IPL no longer requires (but still
uses) MSUPATCH to reduce requirements when using for other apps. Added
a conversion of the classic LANDER game, updated NOTES and SUMMARY docs.
8/12/08 - Updated the sim's boot system and DM2.IPL source for the
menu (8/11/08, now 1.51P). While playing with it on my HP2113E I used
the Load ABS from PTR option to copy over the another build, then saved
it to disk using the Save binary option, got 7Filename: for the
prompt... oops... moved a CRLF.
8/10/08 - Updated the sim's SFS/EDIT build and associated files with
the latest version of SFS from HP-IPL/OS v1.52 (previous version could
destroy a directory if the required buffer memory wasn't present, now
the DIRECTORY word does a memory test). Added A2L.IPL to use with the
SFS library system (in LIB2.IPL) to permit using the editor to craft
multi-word library applications. Added instructions to the NOTES file
for creating and using a SFS library system to provide quick access to
utilities without having to inflate the dictionary or disturbing
alternate memory during the loading process. Also added CONALT.IPL and
BKFILE.IPL for dumping and restoring files to and from the console as
encoded text. These are mainly for me so I can back up files from my
HP2113E which doesn't have a PTP connection. No changes to the boot
system or other included software.
4/18/08 - Added MSU BASIC binaries containing GOLF, BEASTI and
GOMOKU. Edited simextra.txt linked above to clarify how the SFS disk
layout derives a file's location, added more technical docs to the
sim's NOTES file.
4/11/08 - Cleaned out and condensed this section... no need for all
the editor update notes, the boot system was barely touched and the
editor problems probably wouldn't have been noticed except for pushing
it hard in the preperation of the IPL and NOTES files included with the
sim (that's a good thing, bugs got found and fixed). Technical notes
are now in a separate text file.
4/7/08 - Imported the new FED.IPL "standard" editor for the FED on
the menu, and AEDIT.IPL for the "experimental" version that's in the
SFS/EDIT build, now version 1.51L and all appears well. With any luck
there are no more bugs to fix and the next update can be to actually
add additional content. Or at least sneak in fixes along with new
content... I'm ready to get back to BASIC.
3/27/08 to 4/6/08 - [condensed] various fixes to the editor and
SFS/EDIT build, took a few tries.
3/27/08 - [condensed] Renamed +IRQ to !IRQ to enable interrupts in
the boot system, now version 1.51F. Interrupts are not necessary here
but can cause problems if used as a base to make other builds. In
particular SFS requires that interrupts be enabled (even if only
briefly then disabled) or file writes fail.
3/22/08 - [condensed] Updated the menu program (DM2.IPL) to avoid
renaming files
to no name if just enter pressed at the new name prompt, now it does
nothing in that situation. Boot system is now version 1.51E. Here's the
bootup menu from the original 3/15/08 1.51D version...

The new menu is fancier than the original dmenu.ipl version [in the
HP-IPL/OS archive]...

...but it's much more bloated and specific to MSU BASIC. No plans to
replace the simpler menu in the main archive which directly supports
saving HP paper-tape BASIC programs with an extra trick - can patch
them to automatically run the embedded program. But I don't mind
entering RUN. The most useful aspect of the new menu (and the cause of
most of the bloat) is the inclusion of common operations - renaming,
deleting, punching and loading ABS binaries and a submenu for importing
and exporting files. The menu's text import function does not require
knowing the byte-size of the file (unlike the stock MS2F command),
instead it just stops when the first zero byte of the trailer is
detected, which later versions of the HP2100 simulator automatically
add by default. Of course this limits it to text but I'll take it,
beats having to do ! ls -la file.ipl (! dir file.ipl for Windows) then
after attaching the file doing DECIMAL [bytes] OCTAL "FILE" MS2F. Now
it's just press a key, press Y to halt, attach ptr file, c, c, done. By
the way... to avoid creating a 0-byte file if the file doesn't exist,
attach -e ptr file instead of just attach ptr file.
Page created 3/22/08, last modified 3/16/09
Terry Newton (wtnewton@infionline.net)