File Name
README.md






[1,200] RSX BASIC - MICHAEL REESE VERSION



Overview:


BASIC as implemented in the following files under RSX-11D is

a highly upgraded version of what used to be a DECUS library

program for DOS. Full FILES-11 I/O is supported (although

in a bastard sort of way). String functions and user de-

fined functions are much more flexible than in either the

original version or in DEC's BASIC-11. A number of defici-

encies and bugs in the original have been fixed. Multi-user

implementation is supported with separate pure and impure

areas. This implementation of BASIC is highly interpretive

and thus is slow for number crunching (that's why you have

FORTRAN). It is however, highly interactive and includes

special debugging commands: STEP, CON and SET TRACE.

OVERLAY and a data preserving CHAIN are also supported. A

clean "break" feature is implemented via the TT handler

(more below). In the latest version, a number of RSTS-like

features have been added including: virtual arrays, integer

and byte variables, continued lines and IF-THEN-ELSE.


Files:


BASIC0.MAC through BASIC4.MAC plus IDNTFY.MAC and IMPUR.MAC

are the seven source files for the interpreter. BASIC4.MAC

implements the guts of the user subroutine CALL statement

plus a set of specialized subroutines used at Michael Reese

Medical Center. This code can probably be removed with a

minimum of work if space becomes a problem. The file

SPAWN.MAC implements the IAS V3.0 SPAWN directive via a BA-

SIC CALL statement. The reference to SPAWNB in IMPUR.MAC

should be commented out if not running under IAS V3.0 or

higher. Two command files for assembly are provided:

11MASM.CMD and 11DASM.CMD.


BIGBASIC.CMD is a task build command file which may be tail-

ored for single user operation. Note that for either single

user or multi-user operation, routines for trigonometric and

transcendental functions are taken from a FORTRAN OTS libra-

ry. The library which we are set up for is V01C. This

could be changed to use F4P OTS if references in BASIC1 are

changed to the F4P entry point names. FOR V02 is an unknown

as far as use of its OTS routines are concerned. The task

build command files assume these to be in SYSLIB. If they

are somewhere else, an explicit reference should be made to

whatever library they are in.


Another set of command files is used to link a library ver-

sion of BASIC. First, an impure area STB is created by as-

sembling IMPUR without the symbol definition TASK=1. Use

IMPURNOMO.ASM for this. This prevents the global definition

of .MOLUN and prevents problems later on. Also assemble IM-

PUR with the command file IMPUR.ASM in preparation for final




PAGE 2




linking with BAS.CMD (below). IMPURNOMO is then linked to

form the symbol table. For RSX11D usd IMPURNOMO.CMD to link

the symbol table. The library is then linked using

BASPUR.CMD. Put the resulting TSK and STB files in

LB:[1,1], install the BASPUR resident library and link with

BAS.CMD. The BAS.TSK file can now be installed with differ-

ent INC values and different names for optimized use, each

one sharing the pure code. A command file for use with

...AT. are provided for doing all of the work described in

the above paragraph: 11DSHARE.CMD for RSX11D or IAS. The

development of the equivalent command file to do the same

for RSX11M-PLUS remains to be done at this point. If some-

one has done this, we would appreciate their feedback. One

could probably make one following the RSX11D command file

and modifying for RSX11M.


Programs:


MSGEN is a program for generating and modifying an MO mes-

sage file for BASIC. The current file is BASIC.MSG. It

should be placed under [1,2] on the disk referred to as SD:.

BASIC0.MAC can be edited to change the disk name and ac-

count. If no MO output is desired, modify BASIC0.MAC by re-

moving the line defining the symbol RSX11D. This will pro-

duce numbered error messages but no explanatory text. This

is automatically done with 11MASM.CMD.


BASDOC is a program which extracts RUNOFF format source text

from the macro files for BASIC. The output is a file

BASIC.RNO which, when processed by a special version of RU-

NOFF, produces a fairly complete manual for BASIC.

BASIC.DOC is such a manual. The special version of RUNOFF

was made at Michael Reese Medical Center for use with a Cen-

tronics printer having a wide character option. It also has

some non-standard abbreviations for commands. If needed,

the BASIC.RNO file could be edited for use with a standard

RUNOFF. The special Centronics commands usually start with

a "W", i.e. ".WC" instead of ".C" etc.


A BASIC break is now implemented via the ^C AST function of

the TT handler. Note that the definition RSX11D=1 is used

for this option to distinguish between handler AST action

under RSX11M and RSX11D. Also note that this break happens

between successively executed lines. Thus a one line loop

cannot be broken.


If you have questions call:

Frank R. Borger

Dept. of Medical Physics

Michael Reese Medical Center

2929 So. Ellis Ave.

Chicago, Ill. 60616

(312) 791-2515






PAGE 3




OPERATING SYS : RSX11D - IAS? - RSX-11M?

HARDWARE REQ'D : FP11

SOFTWARE FORM : SOURCES AND COMMAND FILES

DOC. FORMAT : RUNOFF (MICHAEL REESE VERSION)

VERSION : 21FE81