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: DS1

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:

 

 

BOPRUN:

PUBLIC

BOPRUN

DW

0 ; no automatic PRUN

or

 

 

BOPRUN:

PUBLIC

BOPRUN

DW

PRUNIT

PRUNIT:

DB

"1 PRINT 'THISWILL PRINT WHEN BASIC

 

 

IS STARTED'"

 

DB

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

Page 105
Image 105
Intel 9800758-02 manual Public Variables