Source code for 4-user MSU BASIC

The following files were obtained from the HP 2100 Archives.
(http://oscar.taurus.com/~jeff/2100/index.html) (renamed to pn's)
They appear to be raw tape dumps and contain binary 0 bytes and label info.

Prepare program...

22255-80001.txt
22255-80002.txt
22255-80003.txt
22255-80004.txt
22255-80005.txt
22255-80006.txt
22255-80007.txt
22255-80008.txt
22255-80009.txt

Monitor program...

22255-80010.txt
22255-80011.txt
22255-80012.txt
22255-80013.txt
22255-80014.txt
22255-80015.txt
22255-80016.txt
22255-80017.txt

The following files were obtained from Tim Riker's site.
(http://rikers.org/hp2100/msu/) (.txt extensions added)
Web date for ..mon.asm 23-Feb 2008, rest 28-Feb 2008.
Nolog version has log disabled to permit using a single console.
ABS binaries for these sources included.

22255mon.asm.txt
22255mon.lst.txt
22255prep.asm.txt
22255prep.lst.txt
22255prep-nolog.asm.txt
22255prep-nolog.lst.txt

Notes...

The maximum supported memory of this version is 16KW.
The card/photo readers are not supported by SimH HP2100.
Console output contains TTY control codes, some terminal emulators
or command shells show extra junk characters before each line.
Punch works for saving the configured system.

The following is a SimH HP2100 log showing a possible configuration...

HP 2100 (modified) simulator V3.8-1
sim>;for reference
sim>sh clk
CLK, devno=13, calibrated
sim>sh tty
TTY, devno=11, 3 units
TTY0, UC
TTY1, UC
TTY2, not attached, 8b
sim>sh ptp
PTP, devno=12, not attached
sim>;the following are needed to avoid sim errors
sim>d tty ttime 1000
sim>d tty ktime 40000
sim>;put tty slot# in s register
sim>d s 11
sim>;load the binaries
sim>load 22255prep-nolog.abs
sim>load 22255mon.abs
sim>;attach output binary
sim>attach ptp msubas.abs
PTP: creating new file
sim>;start the configure program at 30000
sim>run 30000

CLOCK I/O ADDRESS? 13

LOG TTY I/O ADDRESS? 11

NUMBER OF CHANNELS? 1

CHANNEL 1 TTY I/O ADDRESS? 11

CARD READER IN SYSTEM?
YES OR NO: NO

PHOTO READER IN SYSTEM?
YES OR NO: NO

ENTER CODE-WORD TABLE


ACCOUNT NUMBER? 0
CODE WORD? ROOT

ACCOUNT NUMBER? /E

ENTER INFORMATION TABLE

MSU BASIC NOLOG 1 ACCOUNT
/E
DECIMAL FREE CORE AVAILABLE: 8986
STANDARD FREE CORE IS DECIMAL 8986

ACCEPT STANDARD CORE?
YES OR NO: YES

PUNCH ABSOLUTE TAPE?
YES OR NO: YES
SYSTEM PUNCH DEVICE I/O ADDRESS? 12
HALT instruction 102077, P: 23420 (LIA 1)
sim>detach ptp
sim>;configured system punched
sim>;clear memory...
sim>d 2-37677 0
sim>load msubas.abs
sim>e 2
2: 124003
sim>e 3
3: 031115
sim>run 2


YEAR? 78
MONTH? 11
DAY? 11
TIME? 1111
HELLO-ROOT
NAME-I.D.ROOT-0
CHAN: 1 ACCOUNT 0
TIME ON: 1111 11/ 11/ 78
MSU BASIC NOLOG 1 ACCOUNT

READY
100 PRINT "TEST"
110 END
RUN
TEST

READY
BYE

CHAN: 1 ACCOUNT 0
CONNECT TIME: 2
GLAD TO BE OF SERVICE, BYE

Program memory is lost when logging on and off.
The msubasic.zip archive contains a version with a slightly modified and relocated
prepare program that permits using 31KW memory (leaving the top 1KW for OS use),
and patches that bypass the logon and logoff code to permit saving binaries with the
BASIC program intact. The actual interpreter (the "mon" program) was not modified.


MSU BASIC was contributed to the HP Library of Contributed User Software, which
permits the software to be "used without modification or as a starting point for
developing special purpose software."

The following description appears in the 1977 LOCUS catalog...

CONTRIBUTION #:  191                      PART NUMBER: 22255E-K01
CLASS: 18 PRICE: $170
CONTRIBUTER: N. K. SHRAUGER DATE CODE:
MONTANA STATE UNIVERSITY LANG: ASSEMBLY ABSOLUTE
OP SYS: SELF CONTAINED

MSU MULTI-TERMINAL HP BASIC SYSTEM WITH CARD READER CAPABILITY

THIS MULTI-TERMINAL HP BASIC SYSTEM WITH CARD READER CAPABILITY
IS AN EXPANDABLE LOW LOST (TIME-SHARE) SYSTEM REQUIRING AN HP2116B
COMPUTER WITH 16K, TWO TO FIVE TELEPRINTERS WITH INTERFACE, AND
TIME BASE GENERATOR. THE OPTIONAL CARD READER (HP2761-007 MARK
SENSE CARD READER FOR EDUCATIONAL BASIC) CAN BE USED FOR INPUT ON
ONE OF THE FOUR USER PORTS. THE SYSTEM PROVIDES 8500 WORDS OF
MEMORY WHICH CAN BE DIVIDED AMONG THE FOUR USERS, AUTOMATIC
LOGGING AND ACCOUNTING OF USERS FOR UNATTENDED OPERATION, AND A
MESSAGE COMMAND FOR SIGNALLING THE COMPUTER OPERATOR. USER CODE
WORDS FOR SIGN-ON PREVENT UNAUTHORIZED USE. A RENUMBER COMMAND
RESEQUENCES STATEMENTS, A PTAPE COMMAND LOADS USER-DEVELOPED OR
--- page break ---
SYSTEM LIBRARY PROGRAMS FROM THE PHOTOREADER, CALL AND WAIT
STATEMENTS ARE DELETED, AND ALL OTHER USER COMMANDS ARE IDENTICAL
TO THOSE OF HP SINGLE TERMINAL BASIC, 20392.

EXTENDED DOCUMENTATION - ORDER #22255E-D00 $15.00