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 main menu... (in Konsole running under Ubuntu)
An antique chess game written in ALGOL/assembly...
The Sea Battle program...
A pair of Treks...
HPBASIC doing color... (a new hack for a 40 year old interpreter)
The operating system can run just about any "absolute" HP21xx
minicomputer application that restricts itself to 31KW or less,
including suitably prepared BCS apps such as the chess program. An
enhanced version of HPBASIC and the vintage assembler and compilers are
included on the disk image for restoring old code and writing new code
using the old development tools.
6/12/11 - Updated the simulation to use a modified HPBASIC rather than MSUBASIC, the updated BASIC permits using a regular backspace to correct mistakes rather than the old "rubout" character ("_"), and has an overlay added to provide calls for peek/poke, character I/O and other features. Dropped menu programs HAMURABI, MANDPLOT, 31-ODD, 1DCA, and ECAL. Replaced OTH with OTHOV, REVERSIX with REVRSI, BEASI with BEASIOV and SFS/EDIT with SFS UTILITY. Added menu programs SEA BATTLE and OREGON. Chess and REVRSI source code now menu entries for reading. Removed some of the optional IPL files, added vintage assembler, FORTRAN, ALGOL and BCS linker with words to run them in the SFS utility build. BCS was built with an experimental modified TTY driver that eliminates having to switch to CRLF enters or press control-M control-J to enter lines. Manually hacked the boot build to alter a text message about that, and changed the BASIC re-enter vector to 2027 to properly display READY, incremented the boot system version to 1.61 (not really a new version yet, next real version should be 1.64). This new version of the simulation focuses less on HP-IPL/OS and removes dubious IPL's like the "printer" driver and SFS library stuff, and instead focuses more on vintage and vintage-style applications made using minorly adapted versions of the original HP21xx software. Everything that was removed can be added back by importing files from the HP-IPL/OS archive, nothing is lost just makes room for including better and more interesting apps.
This is a fairly drastic change so keeping the previous MSUBASIC-based version around in the 7906sim_101002.zip archive, at least for
These links are pretty outdated, but may still contain useful info...
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 (covers an older version)
10/2/10 - Updated the simulation to version 1.60 with dictionary
overflow protection and an ERASE word that erases the last package
loaded, both are very useful when making new builds. The boot system
includes an updated menu that fixes a bug that kept menu option Z from
being used, this version permits 6 more entries past Z using ascii
characters ("[" through "`") and can save HPBASIC as well as MSU BASIC
programs. Added TTY TREK and MANDPLOT programs (MSU BASIC), updated
DM2.IPL, added SIOBCS.IPL, updated SUMMARY and NOTES. The readme.txt
file was updated to include KDE4-compatible bash running scripts (I
hope:-), updated the scripts in mkdisk.zip to be compatible with the
"testing" archive in hpiplos_main_testing.zip,
is based upon.
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
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
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
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
...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 6/12/11
Terry Newton (firstname.lastname@example.org)