[Simh] HP2100 MSU BASIC
Tim Riker
Tim at Rikers.org
Mon Feb 25 12:57:30 EST 2008
J. David Bryan wrote:
> [ Tim, I've trimmed ClassicCmp off of the reply list, as I think that this
> is either a SIMH issue or a limitation of the BASIC program. I'd recommend
> posting a summary back to ClassicCmp when we resolve it. ]
makes sense
> I used the default SIMH setup, but I've just tested now with your
> configuration, and it works OK too. The only things I did differently were
> to specify the TTY select code for both the LOG TTY and the CHANNEL 1 TTY
> addresses, and I did not punch a tape but instead continued execution
> directly.
ok
> I did have a squint at the source code, and the "information table" is
> simply one to ten text lines that are printed as a "message of the day"
> when you log in. So something like "WELCOME TO MSU BASIC" would be an
> appropriate entry.
ok
> If I patch the LOG TTY routines READL and OUTL to do an immediate JMP
> READL,I and JMP OUTL,I right after the subroutine entries, BASIC seems to
> work fine. I can log in, enter a program, run it, log out, etc. If the
> READL and OUTL routines are executed (to read and print on the LOG TTY),
> though, I get a hang. That, coupled with the abstract in the catalog that
> says that "two to five TTYs are supported," leads me to believe that you
> need a second TTY, which SIMH doesn't support. I suspect that trying to
> point both the LOG TTY and the user TTY to the same device is causing some
> interference.
agreed. ok, made the same change
> You could patch the program as above, though, if you don't need the log
> device. Here's a transcript of the session with the patches in place:
>
> [...]
> YEAR? 75
> MONTH? 12
> DAY? 12
> TIME? 1212
> HELLO-ROOT
> NAME-I.D.BILL-0
> CHAN: 1 ACCOUNT 0
> TIME ON: 1212 12/ 12/ 75
> WELCOME TO MSU BASIC
>
> READY
> 10 PRINT "HELLO FROM MSU BASIC"
> 20 END
> RUN
> HELLO FROM MSU BASIC
>
> READY
> BYE
>
> CHAN: 1 ACCOUNT 0
> CONNECT TIME: 1
> GLAD TO BE OF SERVICE, BYE
Hmm. still not seeing this. Log attached (hope it makes it through if
not: http://rikers.org/hp2100/simh-msu-log.txt). What version of simh
are you using? What OS are you running it on?
> SIMH could be enhanced to respond to:
>
> sim> set tty dev=10,14,17
>
> ...for example, to support multiple devices. But the problem isn't syntax
> but rather reentrancy. A SIMH device has only a single set of state data,
> unless it's explicitly written to handle an array of states (e.g.,
> multiplexers, disc controllers with multiple drives). It'd be nice if the
> framework duplicated the device state automatically, so that one could have
> as many TTY cards (e.g.) as desired, but it'd be a big rewrite -- not only
> the framework, but every device simulation would have to be changed as
> well.
yes, these changes would require that the device state be tied to the
slot, and not just directly to the device.
>> While I'm at it, I suppose I'd rather see part numbers than names, but
>> that's just me. (ie 12531C instead of TTY)
>
> Might be a problem with multiple devices that used the same type of
> interface card, e.g., PTR and PTP both used the 12597 duplex register,
> several different printers used the 12845 printer interface, etc. Device
> names are probably more reasonable, because we simulate both the peripheral
> device and its associated interface card as a unit.
perhaps. I'd rather see some division there so that attached devices
were abstracted a bit. One of the cards I have is an HP-IB card. It
would be nice to be able to "attach" multiple external devices to that
for example.
--
Tim Riker - http://Rikers.org/ - TimR at Debian.org
Embedded Linux Technologist - http://eLinux.org/
BZFlag maintainer - http://BZFlag.org/ - for fun!
More information about the Simh
mailing list