MS-DOS hosted p-System

The DOS-hosted p-System

Since, on a real machine, the p-System is emulated, it was reasonable to create a version of it to run as an application program under operating systems that always run in native code. Such versions exist for at least UNIX, DOS, and VAX VMS. There are extremely few differences, perceptible to the user, from the autonomous version.
A new file type is created in the host operating system, whose internal structure simulates a p-System blocked volume; it is therefore called a virtual volume file.
Units to support communications and data exchange between the p-System and the host operating system are added to the operating system, and (at least in the case of DOS) a special filer, DOSFILER.CODE, provides manipulation of DOS directories, and also the creation, mounting, and dismounting of DOS virtual volume files.
The DOS-hosted p-System is run by executing PSYSTEM.COM (experienced DOS users will note the age of this executable by the fact that it is a .COM file, rather than an .EXE), with (almost) arbitrarily many virtual volume files as parameters. The first will be used to boot the system from, so it must contain a bootable system configuration (see the manuals). It will be designated the root volume, and at least at initialization, the prefixed volume. Other virtual volume parameters will also have the volumes they contain mounted on-line.
If the p-System’s file SYSTEM.CONFIG has the appropriate drivers installed, the DOS-hosted p-System, when run on a PC whose hard drive contains autonomous p-System partitions, will mount each partition in addition to mounting the virtual volume files.

An obvious usage of virtual volume files is to place a common boot volume file, and a common volume file of tools and library units, onto a central file server from which all PC’s using the p-System can use them to boot.

On modern systems PSYSTEM.COM can only be used in a DOS emulator (Windows, Linux). DOSBOX works fine, see the console session below.

TDI MS-DOS hosted p-System (full scan!)
Personal computing with the UCSD p-System
Personal computing with the UCSD p-System
Second Edition

Hosted p-System dated 1984 (IV 2.1)

Archive with a complete MS-DOS hosted p-System dated 1984

DOS hosted psystem use:

Start by executing the file psystem (either from command line or double
clicking on it).

It supports volumes #14..#19, volume psystem.vol get mounted on #14 by default.  The volumes can be specified on the command line and are mounted
in order.

To mount or dis-mount volumes from the psystem run the dosfiler.code program:
{code]
X->psystem:dosfiler or X->#14:dosfiler.
[/code]

Hosted p-System dated 1988 (IV 2.2 R1.1

Archive with a complete MS-DOS hosted p-System dated 1988

With MS-Mouse support. Large system volume, alternatives in folders.

This folder contains the sources and some old data for an accounting system.
To run it:-
1. Call the batch file (accs.bat)
2. Ignore the 'redirection error'
3. Enter 'x' (short for 'execute')
4. Program prompts 'Execute what file ?'
5. Enter 'ledger l=*acclib' and hit enter.
6. All passwords are empty.

Sources for the nominal ledger           are in the volume idxacc3:
   "     "   "  sales & purchase ledgers  "   "  "    "    idxspl3:  
   "     "   "  utilities                 "   "  "    "    idxutl3:
The data files                            "   "  "    "    legdat:  
Compiled utilities                        "   "  "    "    accutl:

Sample session with the 1988 version

Assuming that all files can be found at D:\UCSD\PSYS22

D:\ucsd\psys22psystem psystem.vol putil.vol

Command: E(dit, R(un, F(ile, C(omp, L(ink, X(ecute, A(ssem,? [IV.2.2 R1.1] X

Execute what file? DOSFILER

DOS Filer: L(ist dir, E(xt dir, C(hange, R(emove, P(refix, T(o DOS,? [1R1.4] M

Mount what file? PUTIL.VOL

D:\UCSD\PSYS22\PUTIL.VOL mounted.

DOS Filer: L(ist dir, E(xt dir, C(hange, R(emove, P(refix, T(o DOS,? [1R1.4] Q

Command: E(dit, R(un, F(ile, C(omp, L(ink, X(ecute, A(ssem,? [IV.2.2 R1.1] F

Filer: L(dir, R(em, C(hng, T(rans, D(ate, Q(uit, B(ad-blks, E(xt-dir,? [6R4.0d] V
Vols on-line:
  1   CONSOLE:
  2   SYSTERM:
  6   PRINTER:
  7   REMIN:
  8   REMOUT:
 12 # PSYS:    [ 5000]
 13 # PUTIL:   [ 1440]
 20 # SYD:     [   61]  on volume PSYS:  starting at block 470
 22 # CON2:    [  131]  on volume PSYS:  starting at block 729
 23 # MSMOUSE: [   34]  on volume PSYS:  starting at block 860
Root vol is - PSYS:
Prefix is   - PSYS:

Filer: L(dir, R(em, C(hng, T(rans, D(ate, Q(uit, B(ad-blks, E(xt-dir,? [6R4.0d] L
Dir listing of what vol ? PSYS:

PSYS:
SYSTEM.FONT        2  4-Jan-84           SYSTEM.PME.86     32  8-Jul-86
SYSTEM.CONFIG     27  1-Jul-99           SYSTEM.FILER      46  6-Jan-86
SYSTEM.SYNTAX     16  5-Feb-87           SYSTEM.MISCINFO    2 23-Jun-99
SYSTEM.COMPILER  116 21-Aug-87           SYSTEM.PASCAL    163  4-May-88
CONFIGURE.CODE    60 25-Sep-84           SYD.SVOL          61 30-Mar-88
SYSTEM.STARTUP    10 31-Aug-87           CON1.SVOL        177 30-Mar-88
CON2.SVOL        131  1-Oct-87           MSMOUSE.SVOL      34  1-Apr-88
SYSTEM.EDITOR    100  3-Apr-95           LIBRARY.CODE      14 17-Nov-86
DISKFORMAT.EDOC   11 27-Jan-88           RATES.TEXT         4 27-Jan-90
VCNTRL.DATA        2  1-Jul-99           RATELIB.TEXT       4  3-May-90
XLVCNTRL.DATA      2 26-Jul-90           LVCNTRL.DATA       2 18-Oct-90
SYSTEM.LIBRARY   127 30-Aug-90           QUICKSTART.CODE   25 29-Mar-84
SVCNTRL.DATA       2 18-Oct-90           TVCNTRL.DATA       2 18-Oct-90
MVCNTRL.DATA       2  2-Dec-88           EXTCHARS.TEXT     26 24-Mar-90
TESTCHAR.TEXT      6 28-Oct-90           DOSFILER.CODE     21 21-Aug-86
30/30 files<listed/in-dir>, 1233 blocks used, 3767 unused, 3756 in largest

Filer: L(dir, R(em, C(hng, T(rans, D(ate, Q(uit, B(ad-blks, E(xt-dir,? [6R4.0d] L
Dir listing of what vol ? PSYS:

PUTIL:
READ.ME.TEXT       6  1-Apr-88           CONFIGURE.CODE    60 25-Sep-84
LIBRARY.CODE      14 17-Nov-86           XREF.CODE         28 19-Nov-87
DECODE.CODE       34 26-Nov-86           PATCH.CODE        32 16-May-84
RECOVER.CODE       9  5-Jul-84           COPYDUPDIR.CODE    4  5-Jul-84
MARKDUPDIR.CODE    4  5-Jul-84           DISKSIZE.CODE     15  1-Mar-84
SPOOLER.CODE      11 24-Oct-83           SPOOLOPS.CODE      8 20-Aug-84
QUICKSTART.CODE   25 29-Mar-84           WILD.CODE          7 21-Oct-83
CHKSUMOPS.CODE     6 25-Oct-83           README.BACK        4  8-Apr-86
VCNTRLOOK.TEXT    26  5-Oct-88           VCNTRLOOK.CODE    14 22-May-90
--------.----      1 10-Dec-90           SETUP.CODE        84 19-Jul-84
DISKFORMAT.CODE   11 27-Jan-88           POPTYSE.SVOL     250 16-Nov-90
VCNTRLSTP.TEXT    28 10-Dec-90           VCNTRLSTP.CODE    18 10-Dec-90
SYD.SVOL          61 30-Mar-88           CON1.SVOL        177 30-Mar-88
CON2.SVOL        131  1-Oct-87           MSMOUSE.SVOL      34  1-Apr-88
PAT.SVOL         100 30-Mar-88           DRT.SVOL          38 23-Feb-87
ASI.SVOL         170 23-Feb-87           GETFUNCS.TEXT     14 25-Jan-83
README.TEXT       10  2-Feb-99
33/33 files<listed/in-dir>, 1440 blocks used, 0 unused, 0 in largest

Filer: L(dir, R(em, C(hng, T(rans, D(ate, Q(uit, B(ad-blks, E(xt-dir,? [6R4.0d] P
Prefix titles by what vol ? PUTIL:
Prefix is PUTIL:

Filer: L(dir, R(em, C(hng, T(rans, D(ate, Q(uit, B(ad-blks, E(xt-dir,? [6R4.0d] Q

Command: E(dit, R(un, F(ile, C(omp, L(ink, X(ecute, A(ssem,? [IV.2.2 R1.1] X
Execute what file? QUICKSTART

Quickstart: P(rogram, S(ystem, C(opy, L(ibrary, M(essages, Q(uit [2R3.2] _
Toggle settings:  Copy OFF,  Library copy OFF,  Messages OFF

and so on ...

Back to the initial menu level, just type 'H' to halt the system (back to DOS)