BASIC-SO
RMX/SO
BASIC-SO
Public Variables
An area
of
RAM as large as possible should be allocated for BASIC-80 work space.
The
user must supply two routines, BQSMEM
and
BQEMEM which return the ad-
dress
of
the first byte
of
BASIC-80 work space in registers
Hand
L
and
the last byte
of
BASIC-80 work space, respectively. The
HL
register requirement
is
consistent
with
PL/M-80
Address procedures.
Example:
PUBLIC BOSMEKM,BOEMEM
CSEG
BOSMEM: LXI H,SMEM
RET
BOEMEM: LXI H,EMEM
RET
DSEG
SMEM:
DS
5000
EMEM:
DS

1

END
A public word variable called
BQPRUN
must be defined.
If
the value is non-zero,
BASIC-80 will
attempt
to load
and
run
the BASIC-80 source program
at
the address
specified when BASIC
is
initiated.
Examples:
PUBLIC BOPRUN
BOPRUN:
DW
0 ; no automatic PRUN
or
BOPRUN:
PRUNIT:
PUBLIC
DW
DB
DB
BOPRUN
PRUNIT
"1 PRINT 'THIS WILL PRINT WHEN BASIC
IS
STARTED' "

13,10,26

; CR, LF, Control Z

Three byte public variables define the files available to BASIC. BQUIO should be
zero if user-written
110
drivers are included, otherwise it should be one, BQDFS
should be equal
to
zero if DFS
is
not included in the configuration.
If
DFS
is
includ-
ed, BQDFS should be equal to the number
of
DFS files
that
may be open
at
once.
BQNFIL should be the maximum number
of
DFS
and
user files
that
may be open
at
one time.
Example:
PUBLIC BOUIO,BODFS,BQNFIL
BOUIO: DB 0
BODFS: DB 6
BONFIL: DB 6
Linking and Locating
RMXBAS.LIB must be added to the list
of
files given to the LINK program.
If
a
user-written
110
routine is
to
be used, its object module must also be included.
No special information is needed
to
locate object code for a system
that
includes
BASIC-80.
F-13