CAS pa COPY - ntrs.nasa.gov

44
MSFC-SE-1528 Interim Report CAS E pa COPY DEVELOPMENT OF AMTRAN ON THE DATACRAFT DC6024 May 1972 TELEDYNE BROWN ENGINEERING Research Park Huntsville, Alabama 35807

Transcript of CAS pa COPY - ntrs.nasa.gov

Page 1: CAS pa COPY - ntrs.nasa.gov

MSFC-SE-1528

Interim Report

CAS Epa

COPY

DEVELOPMENT OF AMTRAN ON

THE DATACRAFT DC6024

May 1972

TELEDYNEBROWN ENGINEERING

Research Park • Huntsville, Alabama 35807

Page 2: CAS pa COPY - ntrs.nasa.gov

INTERIM REPORTMSFC-SE-1528

DEVELOPMENT OF AMTRAN ON THEDATACRAFT DC6024

May 1972

Prepared For

COMPUTATION LABORATORYGEORGE C. MARSHALL SPACE FLIGHT CENTER

HUNTSVILLE, ALABAMA

Contract No. NAS8-26756

Prepared By

SCIENCE AND ENGINEERINGTELEDYNE BROWN ENGINEERING

HUNTSVILLE, ALABAMA

Page 3: CAS pa COPY - ntrs.nasa.gov

ABSTRACT

The AMTRAN system has been implemented on the Datacraft

DC6024 computer. Activities have been directed toward providing

greater user convenience and faster operation, development of a

multi-user time-sharing capability, and system support for user

applications. During this reporting period, the major portion of time

was devoted to completing a two-user time-sharing operating system

and initiating work on an n-user system, with plans to provide service

to up to n=8 users at this time. Flowcharts for the multi-user AMTRAN

system are presented to document progress on this part of the system.

The Datacraft DC6024 AMTRAN time-sharing system comprises

both software internal to AMTRAN and in the computer operating

system. Only the AMTRAN portion was developed as part of this

contract and is presented here.

Approved:

JlN.E. Chatterton, Ph. D.ManagerResearch Department

C.G. p-ueltmanVice PresidentScience and Engineering

11

Page 4: CAS pa COPY - ntrs.nasa.gov

TABLE OF CONTENTS

Page

INTRODUCTION 1

TECHNICAL DISCUSSION 2

System Changes and Additions 2

System Support 4

APPENDIX. FLOW CHARTS FOR TIME-SHARINGAMTRAN SYSTEM A-l

111

Page 5: CAS pa COPY - ntrs.nasa.gov

INTRODUCTION

This document is an interim report which covers the period

January 15, 1971 through December 24, 1971, submitted in accordance

with the requirements of Contract No. NAS8-26756.

In the following pages, Teledyne Brown Engineering presents a.

discussion of the activities and accomplishments pertaining to the

development of the AMTRAN system on the Datacraft DC6024.

Page 6: CAS pa COPY - ntrs.nasa.gov

TECHNICAL DISCUSSION

SYSTEM CHANGES AND ADDITIONS

In order to provide compatibility with the 1130 AMTRAN symbol

set, the concatenate operator was changed to "&", the backspace symbol

was changed to "#", and the function designation was modified to "@"

in the Datacraft AMTRAN system. The operators INTERVALS and LAST

were also included in the Datacraft version of AMTRAN to ensure intrin-

sic operator compatibility with the 1130 AMTRAN system.

Software changes were incorporated into the system which allow

user selection of scientific or E-formatted data output by sense switch.

To provide the user at a remote site with the information of which sense

switches are currently selected, a STATUS operator was added. This

operator checks the on/off condition of the first 15 sense switches and

types a list of those sense switches which are currently set to the "on"

condition by the user.

The modules which constitute the AMTRAN system were recom-

piled under extended precision, and necessary modifications to the logic

involved with the execution of the logical operators LT, GT, EQ, NE,

LE, and GE were made. The newly implemented operator INTEGER

which returns the integer-part of the specified variable, constant, or

expression also required modification under extended precision.

For user convenience, backspace, line delete, and statement

delete features were added to the INPUT operator. For each entry in

the EXPLAIN file, the explanation was extended and an example of its

usage was supplied in order to facilitate understanding of the usage of

each operator.

Page 7: CAS pa COPY - ntrs.nasa.gov

Software for the 8K 1130 AMTRAN system was changed to per-

mit AMTRAN to fit within 8K of core using current levels of the IBM

1130 disk monitor (Version II, Mod. VIII). The purpose of this endeavor

was to provide an 8K version of AMTRAN to those users who received

8K AMTRAN decks under the earlier version of the IBM 1130 software

and who requested AMTRAN under the new 1130 monitor.

As the use of AMTRAN increased, system errors involving

functions and the exceeding of the console program area were detected,

analyzed, and corrected. This work falls in the category of completing

the checkout of the current AMTRAN system.

After receiving an additional 8K of core for the Datacraft DC6024,

the three major execution subroutines were combined into one module,

and the two primary output subroutines were put into the same overlay.

This effort resulted in an increase of AMTRAN execution speed by

eliminating the number of overlays required for execution.

In accordance with the requirement for multiple user files,

16 user files were made available. These files are selected by unique

three-letter access codes typed in by the user.

The major effort under the contract was expended in the design

and development of a multiple user version of AMTRAN which allows

more than one user to have access to AMTRAN from separate input/

output terminals. The software additions and modifications to allow

multiple users for Datacraft AMTRAN was implemented in four phases.

The first three phases included the incorporation of the logic to allow

for call up and hang up conditions and for swapping users upon detec-

tion of a buffer full condition in the main read subroutine, the principal

initialization program, and the input subroutine. During this time, the

logic to allow the Computek and the Tektronix terminals to be utilized

Page 8: CAS pa COPY - ntrs.nasa.gov

in the multiple user version of AMTRAN was implemented. Since the

swapping logic appeared in only these three subroutines, if one user

had filled a buffer but the other user was executing, detection of the

buffer full, call up, or hang up conditions could not occur until the user

who was executing returned to one of the three modules mentioned

above. However, with the installation of an additional 8K of core and

an interval timer, the fourth phase of multiple user AMTRAN was

begun. This included modifications to the main programs of all the

execution subroutines to enable swapping users who were executing

after a specified time interval. The determination of when to swap

was accomplished by software reference to the interval timer which

monitors the number of seconds of run time for each user. At the

end of this phase, two users could simultaneously run in AMTRAN as

each user's common was either swapped into core along with the

appropriate module or swapped out onto the disk according to the de-

tection of call up, hang up, or buffer full conditions. Swapping common

was determined on the basis of waiting for input conditions, or de-

tection of the maximum allowable number of seconds of run time by the

current user during execution.

The appendix contains more detailed information concerning

the implementation of AMTRAN for two users.

SYSTEM SUPPORT

One primary area of activity in which Teledyne Brown Engineering

personnel participated was the development and/or modification of

applications programs written in AMTRAN. Some of these programs

simulated interplanetary orbits using electric propulsion while others

provided a management information system for the long-range budget

forecasting division of NASA at Marshall Space Flight Center. Software

Page 9: CAS pa COPY - ntrs.nasa.gov

support was provided when these programs were demonstrated locally,

at NASA headquarters in Washington, D. C. , and at the Federal Executive

Institute in Charlottesville, Virginia. An 1130 AMTRAN demonstration

disk was provided for backup for these demonstrations. Several AMTRAN

demonstrations and instruction assistance meetings were held for pro-

spective users at Marshall Space Flight Center by Teledyne Brown

Engineering personnel. During these meetings, newly updated AMTRAN .

users' manuals were distributed which provided detailed descriptions of

the procedures for local and remote use of AMTRAN and descriptions

and specific examples of statement and console program construction, of

AMTRAN intrinsic operators, and of general usage of AMTRAN.

Page 10: CAS pa COPY - ntrs.nasa.gov

APPENDIX. FLOW CHARTS FOR TIME-SHARINGAMTRAN SYSTEM

A-l

Page 11: CAS pa COPY - ntrs.nasa.gov

A P P E N D I X

T A B L E OF C O N T E N T SPAGE

I NTERNAL STORAGE ORGANIZATION A-2

SYSTEM DATA BASE A-3 - A-4

SYSTEM FUNCTIONAL FLOW CHART A-5

AMTRAN AND ITZ MODULES A-6

SUBSYSTEM 1 A-7

SUBSYSTEM 2 A-8

MODULE ROLL A-9

LIST OF MODULES MODIFIED FOR TIME SHARING A-10

FLOWCHARTS OF TIME SHARING LOGIC IN ROLL A-ll - A-19

SUBSYSTEMS A-20

SUBSYSTEM 4 A-21 - A-22

FLOWCHARTS OF TIME SHARING LOGIC IN MAINPROGRAM OF LSG MODULE A-23 - A-34

Page 12: CAS pa COPY - ntrs.nasa.gov

to

ccgcc5

COoec§COOcci a"

LU *~

2°=So

oco

IX8CM

OI—<

Iz.ooLUo

CO

I<

Q.

OC1-

RE

SID

EN

T

DIS

K B

OO

TS

(16, „

OR

20,

WO

RD

S)

I U

o

LU

13 Sz co S

ri

AR

EA

F

OR

P

RO

GR

AM

CO

NS

TR

UC

TIO

N

AN

DE

XE

CU

TIO

N

o

>1•1

LUCC

Q

OCLUCO

"1

SY

ST

EM

CO

NS

TA

NT

S

SY

ST

EM

IN

DIC

AT

OR

S

LU_J

03<1-

2<o

CD

ff

I

SY

ST

EM

VA

RIA

BL

ES

(KE

PT

D

UE

T

O

TIM

E S

BCM

< ™_i Qcc 5

AM

TR

AN

M

OD

ULE

O

VE

LA

RG

ES

T(1

0817, n

O

R 25101, W

C1

0

o

co

NO

N-R

ES

IDE

NT

S

YS

TE

IV(1

096,.

O

R

2110,

WO

R1

U

B

coQ

RE

SID

EN

T

SY

ST

EM

(3450, Q

O

R

6572

g

WO

R

£"~ S

Uj™CO>.

2 W

i 1-1 28 sW CO0 £ o.2 ^

> A

MT

RA

N

MO

DU

LE

A

> N

ON

-RE

SID

EN

T

AN

DA

ND

D

ISK

B

OO

TS

TR

• A

VA

ILA

BL

E

CO

RE

• T

OT

AL

• • • »

LUOC CO~, LU

< CC IVPQIX00^:0<LO

COotree§i2 «

D; ill CO CMr» oco p in

(O

A-2

Page 13: CAS pa COPY - ntrs.nasa.gov

SYSTEM DATA BASE

COMMON

4 FILES ON DISK• SYSTEM WORKING FILE I (7360 WORDS FOR EACH USER)

A CORE PROGRAM DURING STOREV CORE PROGRAM DURING ED ITA CONTROL TABLES FOR ACTIVE AREA OVERLAYA ACTIVE TABLE AND CONSOLE PROGRAMS

• SYSTEM WORKING FILE 11 (12160 WORDS FOR EACHUSER)

A KEYBOARD PROGRAM SOURCEA STORE PROGRAM SOURCEA ED IT PROGRAM SOURCE

• USER PROGRAM FILE (44800 WORDS FOR EACH FILE)16 FILES

A INDICATORS FOR FIRST AVAILABLE RECORDFILE STATUS, AND NUMBER OF CONSOLEPROGRAMS ON FILE

A CONSOLE PROGRAM TABLEA CONSOLE PROGRAM STORAGE

• SYSTEM CONTROL FILE(15360 WORDS)A INTRINSIC TABLEA CARD CODE TABLE* ERROR STATEMENT TABLEA INTRINSIC DESCRIPTION TABLE

^TELEDYNE BROWN ENGINEERING

A-3

Page 14: CAS pa COPY - ntrs.nasa.gov

soc

^ oSecceo-

is£§8&

— z<00 — u.

>. Q • o

II =o< «, <H._<o -IDoc co ceouj g ui uiu *** *^ \^liV «" ^ ^uj«- OUI

UI

03

1—

ND

A

CT

IVE

^ccg5oz

tec= o

WO

RD

S)

JQ

in

ocO

o

5

, P

OIN

TE

R

<inoc

111 OC

< C

UJOC M

EC

UT

ION

A

154.

W

OR

D!

5

X wUI

OC

S°ooc Sa <oo <*>K »a. -—

LU o

OH—<

O

oLUO

O

CO

co

O

«oc C

UIoc

O QK OC

w ?!z 58 "

a o'

(OQOC

iUJ Scc m

>- O

C eoUJ 0)> »O C

toQOC

I

I < g

OC «*UI *~eo «JjD £»

<

z8UI

coCO

ccO

CN

ocO

UJ

CO

COOoc

SCM

OCo

Q C

En tt

si iinCMOCO

53!

oo

u.

z en9 2

Ql_CC1

UI —

> Ou.O Q O

oc C

A-4

Page 15: CAS pa COPY - ntrs.nasa.gov

O

Ol_l_

I

^OI—O

CO>-CO

A-5

Page 16: CAS pa COPY - ntrs.nasa.gov

AMTRAN MODULE

INITIALIZES TIME SHARING INDICATORSWAITS FOR REMOTE OR LOCAL CALL UPSETS UP RUN INDICATOR (IDENTIFIES USER WHO IS

RUNNING)CALLS TIMER ROUTINE AND SETS INITIAL USED TIME

TO 0CALLS CHAIN LOADER TO READ ITZ INTO CORE

I N I T I A L I Z E S Y S T E M

ITZ MODULE

ERASES IF NECESSARY*T1ME SHARING LOGIC*READS THREE LETTER ACCESS CODE CORRESPONDING

TO A USER FILEPACKS USER PROGRAM FILE IF NECESSARYINITIALIZES SCAN TABLES AND SYSTEM CONSTANTSINITIALIZES* CARD STATUSA OVERLAY STATUSA STATEMENT ENTRY MODE* ENTRY TO RSTA VARIABLE COUNTA PREVIOUS VARIABLE COUNTA FUNCTION EXECUTION COUNTER* RANDOM NUMBER GENERATOR

^TELEDYNE BROWN ENGINEERING

A-6

Page 17: CAS pa COPY - ntrs.nasa.gov

00>-COCOZD00

A-7

Page 18: CAS pa COPY - ntrs.nasa.gov

CM

co>-COCD:DCO

->

scoUl_iDai

COLUQ

8_i<ccLUH

LA

BE

LS

W

ITH

ll>

PLA

CE

LUCC

§<ocCDOOCQ.

Oz<LU_lOQ<

cc<

2

COUl

cczLU

Z

LU

*<

aure

RE

QU

II

CO<

coUl_lOQ<

_l_J<U

coocUl1-zD

8s<ocoocca

VA

RIA

BL

E

AN

DilN

TA

IN

§2

Z<a.XUl

QZ<

Crtfe0 J2Z -1

s o*»* i25o <0 O^^

5> L-*«=: )••

HQ

coujCO Ul"

&<*

12Q£Z LU<CCa.ui o_N Dz"S»-"O uiU v>LU UJOC OC

COocLUH-0<OC<Iu

1<uLUa.coQZ<co

<

NU

ME

RIC

C

ON

Sl

;RN

AL C

ODES

UUI

ujHo z<~*£LU tccg

HZ

8H

US

ER

C

ON

ST

A^

JN

TA

IN

«t1

uTCO

a. i_><

1-2co a!Wrf ^L.< UJ-IKuToozz<< .CC LL

|iCC •y

5 =^f AMi U.

t- M--**• UJ

1sO uiLL o_

ND

SP

EC

IAL

LY

1

INT

ER

VA

LS

, T

YI

6*HtLU XQ LU

LU

LU_lLUQ

QZ<

LU

rfCO

tLU1-LUQ

co

SY

NT

AX

C

HE

CK

RF

OR

M

LUa.

(

1—— x

LU

I

A-8

Page 19: CAS pa COPY - ntrs.nasa.gov

MODULE R O L L

( NORMAL.ENTRY

IF REQUIRED, SAVE OVERLAY II, READ &OVERLAY 1 AND SET OVERLAY STATUS ^

^r READ AN

SYSTEMWORKINGFILE

READ AND VERIFY EACH CARD IN PROGRAM

CONVERT EACH STATEMENT TO AMTRANCHARACTER CODES

PACK EACH STATEMENT TWO CHARACTERS PERWORD, SAVE ON FILE UPDATING STATEMENTINDEX TABLE AND FILE POINTER

AFTER PROCESSING THE LAST STATEMENT,"SET STATEMENT COUNT, FILE POINTER ANDCARD STATUS

IF AN ERROR OCCURRED ON THE LASTSTATEMENT, RESET FILE POINTER ANDCLEAR ERROR INDICATOROTHERWISE , SET:

LAST PREVIOUS INSTRUCTIONPOINTERPREVIOUS VARIABLE AND PROGRAMCOUNTSSTATEMENT NUMBER

OUTPUT MESSAGE IF LAST STATEMENT

PROGRAMON CARDS

SYSTEMWORKINGFILE

/ OUTPUT STATEMENT NUMBER/ 'TIME SHARING LOGIC*( READ STATEMENT FROM KEY-\ BOARD AND CONVERT TO\ AMTRAN CHARACTER CODES r

CLEAR VARIABLE TABLE ENTRIESAS REQUIREDSET VARIABLE COUNT AND PROGRAMCOUNT

READ STATEMENT FROM KEYBOARD,SYSTEM WORKING FILE, OR USERPROGRAM FILEIF IN THE EDIT MODE, AS REQUIRED,UPDATE FILE POINTER AND LAST STATE-MENT EDITED COUNTER

IF INPUT NOT FROM SYSTEM WORKING FILE.SAVE STATEMENT ON FILEIF INPUT FROM FILE, UNPACK STATEMENTUPDATE FILE POINTERREMOVE STATEMENT NUMBER AND BLANKSBEFORE EACH LINE IN STATEMENTSET CHARACTER COUNT, WORKING REGISTERS

CIEXIT

SYSTEMWORKINGFILE

USERPROGRAMFILE

SYSTEMWORKINGFILE

A-9

Page 20: CAS pa COPY - ntrs.nasa.gov

M O D U L E S M O D I F I E D F O R T I M E S H A R I N G

PAGEAMTRAN MODULE A-6

GROUP I MODULES

ITZ A-6

•RDLL A-9

STV A-22

Group I modules require buffer full conditions for FORTRANread statements and were changed under the first three phasesof time - sharing implementation.

GROUP II MODULES

CDR A-20

*LSG A-21

WRT A-22

IIP A-22

These modules were modified under the fourth phase of time -Sharing implementation and are all execution modules exceptCDR.

WTELEDYNE BROWN ENGINEERING

A-10

Page 21: CAS pa COPY - ntrs.nasa.gov

FLOWCHART OF TIME-SHARING LOGIC IN MODULE ROLL

A-15

A-15

OUTPUTSTATEMENTNUMBER

SET UP A READREQUEST FOR THESPECIFIED USER

MUXST(NUSER)

RETURN THESTATUS OF THEHANDLER IN NUSER

NUSER = 0AND BOTH

USERS ACTIVE?

READ MODULEINDICATOR ANDPOSITION INDI-CATOR

MODULEINDICATOR?

OTHER USER GOINGTO GROUP I

(ITZ, ROLL. ORSTV) MODULES

1

SET GROUP II(CDR, LSG, WRT,OR ITP) MODULEINDICATOR

GROUP IIPOSITION

INDICATOR?

OTHER USERWAITING TO READ

TO RELEASE PAUSE

> RUN INDICATOR (IRUN) = N WHERE N IS THEUSER WHO IS CURRENTLY RUNNING

• STATUS OF HANDLER (RETURNED IN NUSER)= O NO BUFFERS FULL, NO CALLUPS. OR NO HANGUPS= N USER N HAS FILLED A BUFFER= 32+N USER N HAS CALLED UP= 64+N USER N HAS HUNG UP

THE LETTER-NUMBER COMBINATION AT THE UPPER LEFTOF THE CONNECTORS REFERS TO PAGE NUMBERS.

A-11

Page 22: CAS pa COPY - ntrs.nasa.gov

MORE THAN 2

RUNINDICATOR= HANDLER

STATUS ?

ACTIVEUSER

INDICATOR?

USER WHO IS RUN-NING AGREE WITH

WHOSE BUFFERIS FILLED

HOW MANYACTIVE USERS

RUNINDICATOR= HANDLER

STATUS ?

USER WHO IS RUN-NING AGREE WITH

WHOSE BUFFERIS FILLED

GROUP IPOSITION INDICATOR

SET GROUP I POSITIONINDICATOR TO NORMAL SWAP

DID CURRENT USERJUST BACKSPACE,

LINE DELETE, OR STATEWENT DELETE?

RUN INDICATOR

A-12

Page 23: CAS pa COPY - ntrs.nasa.gov

WRITE CURRENT USER'SCOMMON ON DISKREAD NEW USER'SCOMMON FROM DISK

TIMEAORUN, LT, 2)

SET ELAPSED TIMEINDICATOR TO ZERO

GROUP IIMODULE INDICATOR

GET CORRECTMODULE INTOCORE

IS NEW USER GOINGTO A GROUP II

MODULE

MODULEINDICATOR ?

USER GOING TOINITIALIZATIONMODULE (ITZ) ?

READ ITZINTO CORE

MODULEINDICATOR

READ STVINTO CORE

USER GOING TOINPUT MODULE

(STV) ?

MODULEINDICATOR

USER GOING TOREAD LINE MODULE

(RDLL) ?

w

MUXIN(IRUN)

SETS UP POINTERTO READ BUFFER

r

MUXOP(IRUN)

SET UP OUTPUTDEVICE TO SPECIFIEDDEVICE

A-14

A-13

Page 24: CAS pa COPY - ntrs.nasa.gov

GROUP IPOSITION

INDICATOR ?

DID THIS USERBACKSPACE JUSTBEFORE HE WASSWAPPED OUT ?

GROUPPOSITION

INDICATOR ?

DID THIS USER LINEDELETE JUST BEFORE

HE WAS SWAPPEDOUT ?

GROUP IPOSITION

INDICATOR ?

DID THIS USER .STATEMENT DELETE

JUST BEFORE HEWAS SWAPPED

OUT ?

END OFLINE INDICATOR

DID THIS USER COMPLETEA LINE OF THE STATEMENT

JUST BEFORE HE WASSWAPPED OUT ?

SET POSITIONINDICATOR TONORMAL

SET POSITIONINDICATOR TONORMAL

SET POSITIONINDICATOR TONORMAL

RESET END OFLINE INDICATOR

INITIALIZE PROGRAM INDICATORS

CARD OR KEYBOARDINPUT ?

READ INPUTFROM TERMINAL

I

READ INPUTFROM CARDS

A-14

Page 25: CAS pa COPY - ntrs.nasa.gov

ACTIVEUSER INDICATOR ?

MORE THAN2 ACTIVEUSERS ?

RUNINDICATOR +32=

HANDLER STATUS ?

USER WHO IS RUN-NING AGREE WITHUSER WHO CALLED

UP ?

GROUP IPOSITION INDICATOR ?

DID CURRENT USER JUSTBACKSPACE, LINE DELETE, OR

STATEMENT DELETE ?

SET GROUP I POSITION INDICATOR TO NORMAL SWAP

A-15

Page 26: CAS pa COPY - ntrs.nasa.gov

o <E K 1«

DCO

->— 3 -"O tju. w co cc <p <

t CC |*J (_ H w HP — UI 2 O UI

— O. V)</> U. U. CO

ocI-

ccUI

LU§UI

N CC

UlCec —

A-16 .

Page 27: CAS pa COPY - ntrs.nasa.gov

ACTIVE USERINDICATOR VALID

NUMBER?

MODIFY ACTIVEUSER INDICATOR TOREFLECT HANGUPOF USER 1

SET INDICATOR TOSPECIFY USER 1

TIMEA

RETURNS TOTAL RUNTIME IN SECONDSFOR SPECIFIED USER

TIMEA(IRUN,LT.4)

RETURNS TOTAL RUNTIME IN SECONDSFOR SPECIFIED USER

ACTIVE USERINDICATOR = 0

READ AMTRANINTO CORE

DID THE LASTUSER HANG UP

COMSWP

WRITE CURRENT USER'SCOMMON ON DISK

READ NEW USER'SCOMMON FROM DISK

TIMEA(IRUN,LT,3)

CHARGE RUN TIMETO USER 2

A-17

Page 28: CAS pa COPY - ntrs.nasa.gov

NO-SWAPINDICATOR

= 0 ?

WAS PRESENT USER'SCOMMON SWAPPED

INTO CORE?

GROUPMODULE INDICATOR?

CURRENT USER GOINGTO GROUP II?

GROUPPOSITION INDICATOR

WAS USER WAITINGTO READ TO RELEASE

PAUSE?

A-18

Page 29: CAS pa COPY - ntrs.nasa.gov

ACTIVE USERINDICATOR VALID

NUMBER?

MODIFY ACTIVEUSER INDICATOR TOREFLECT HANGUPOF USER 2

SET INDICATOR TOSPECIFY USER 2

TIMEA

RETURNS TOTAL RUNTIME IN SECONDSFOR SPECIFIED USER

TIMEAORUN.LT.4)

RETURNS TOTAL RUNTIME IN SECONDSFOR SPECIFIED USER

READ AMTRANINTO CORE

DID THE LASTUSER HANG UP

COMSWP

WRITE CURRENT USER'SCOMMON ON DISK

READ NEW USER'SCOMMON FROM DISK

TIMEA(IRUN,LT,3)

CHARGE RUN TIMETO USER 1

A-18 *

A-19

Page 30: CAS pa COPY - ntrs.nasa.gov

CO>-GOCO:z>00

cc

ILI

MO

DU

LE

C

DR

<$

20CCu.yy

oo<z

fG

EN

ER

AT

E

PO

LIS

H

ST

INT

ER

NA

L

CO

DE

ST

RI

00cyj&U111

PE

RF

OR

M

SY

NT

AX

C

H

2glilUJQ?SSzoLU<gQL_. C/5 fto °-H§u.^goOOrf

CO

NV

ER

T

PO

LIS

H

ST

AIN

TE

RP

RE

TE

R

INS

TR

UIN

IN

ST

RU

CT

ION

A

RE

;C

ON

ST

RU

CT

ION

A

RE

A

oo\s2£U111

PE

RF

OR

M

SY

NT

AX

C

H

>v

XUJ

A-20

Page 31: CAS pa COPY - ntrs.nasa.gov

S U B S Y S T E M 4 M O D U L E S

UNDER EACH SUBROUTINE IS A LIST OF THE INTRINSIC OPERA-TORS WHICH ARE EXECUTED IN THE MODULE OR A LIST OF THEFUNCTIONS PERFORMED BY THE MODULE.

LSG MODULE

LSG SUBROUTINEREPEAT, LOAD, LOAD/FREE TEMPORARYSIN, COS, EXP, SQRT, NEG,**, *, /, +, -, LT, GT, EQ, NE, GE, LE, CONCATENATEGOTO, NOT, BRANCH TRUE, BRANCH FALSESTORE, AND FREE TEMPORARY

RTN SUBROUTINECALL CONSOLE PROGRAMRETURN FROM CONSOLE PROGRAM OR FROM FUNCTIONEVALUATIONDEFINE FUNCTION

TRG SUBROUTINESETARRAYMIN, MAX, INTRP, SUMF, LASTLN, ARCTAN, ABS, SUM, MAGNITUDE

WTELEDYNE BROWN ENGINEERING

A-21

Page 32: CAS pa COPY - ntrs.nasa.gov

WRT MODULE

WRT SUBROUTINETYPE IN F O R E FORMATTYPEOUT WITH 1 OR 4 PARAMETERSTABTYPES OUTAMTRAN ERROR MESSAGES

SCP SUBROUTINEPLOT

ITP MODULE

ITP SUBROUTINEINTRP

STY MODULE

STV SUBROUTINEINPUT

^TELEDYNE BROWN ENGINEERING

A-22

Page 33: CAS pa COPY - ntrs.nasa.gov

( ENTRY J

SET UP ARRAYS FORCATEGORIZING OPERATIONSCODES

INITIALIZE TIME SHARING INDICATORS

ACTIVEUSER INDICATOR

7

1 OR 2 USERS?

GROUP IIPOSITION INDICATOR?

GETCOM

GET OTHER USER'S MODULEINDICATOR AND GROUP IIPOSITION INDICATOR

A-24 b ,r

RESET GROUP IIPOSITION INDICATORTO NORMAL

i

RESET GROUP IIPOSITION INDICATORTO NORMAL

T

A-28 J

Qr

RESET GROUP IIPOSITION INDICATORTO NORMAL

A-24 A-24 A-24

MAIN PROGRAM OF MODULE LSG

A-23

Page 34: CAS pa COPY - ntrs.nasa.gov

RETURNEDPARAMETER?EXECUTE

INSTRUCTION

YES> !>

RTN

EXECUTEINSTRUCTION

RETURNEDPARAMETER

7

EXECUTEINSTRUCTION

SET MODULE INDICATORTO WRT VALUE

ERRORINDICATOR

= 0 ?

FUNCTIONEXECUTION

COUNTER =0 ?

USER ONEXECUTION

LEVEL?

SET MODULE INDICATORTO RTN VALUE

A-24

Page 35: CAS pa COPY - ntrs.nasa.gov

SET BRANCH INSTRUCTIONPOINTER TO ZERO

INCREMENT POINTTO NEXT INSTRUCTION

HAVE ALLINSTRUCTIONS

BEEN EXECUTED

EXECUTINGSTORED PROGRAM

UNPACK INSTRUCTION

ACTIVEUSER INDICATOR?

HOW MANY USERSARE ACTIVE?

CHAIN

READ ROLLINTO CORE

TIME A (IRUN, LT, 3}

RETURN ELAPSEDTIME IN LT

CLASSIFY OPERATORSET MODULE INDICATORTO APPROPRIATE VALUE

FOR LSG, WRT, ITP, ORSTV OR SET POSITION

INDICATOR FOR SUBROUTINELSG, TRG, OR RTN OR WRITE

PAUSE TO USER

A-26

LT LESSTHAN 5

SECONDS?

SET TIME SHARINGEXIT INDICATOR

A-2 5

Page 36: CAS pa COPY - ntrs.nasa.gov

A-28

A-30

NUSER = 0 \YESAND BOTH USERS >—^ T

ACTIVE ?

ROUP I MODULEINDICATOR OR GROUP IIPOSITION INDICATOR?

IF HANG UP OF LSG USEROCCURRED IN THIS MODULEIS NEW USER GOING TOGROUP I OR IS NEW USERWAITING TO READ TO

RELEASE PAUSE?

NUSER=33? N——M A

A-26

Page 37: CAS pa COPY - ntrs.nasa.gov

A-27

Page 38: CAS pa COPY - ntrs.nasa.gov

ACTIVEUSER INDICATOR

HOW MANY ACTIVEUSERS?

RUNINDICATOR

HANDLER STATUS

USER WHO IS RUNNINGAGREE WITH WHOSEBUFFER IS FILLED?

GROUP IMODULE INDICATOR?

IF HAND UP OF LSGUSER OCCURRED INTHIS MODULE, IS NEW

USER GOING TOGROUP I?

A2S

READ A CHARACTERFROM THE KEYBOARD

A-27 SET GROUPINDICATOR

i

MUXOP

II POSITIONTO NORMAL

i

(IRUN)

SET UP OUTPUTDEVICE TO SPECIFIEDDEVICE

MUXIN

SET POINTERTO READ BUFFER

A-28

Page 39: CAS pa COPY - ntrs.nasa.gov

RUNINDICATOR =

HANDLER STATUS?GROUP II

POSITION INDICATOR

USER WHO IS RUNNINGAGREE WITH WHOSEBUFFER IS FILLED?

IS USER WAITINGTO READ TO

RELEASE PAUSE?

MODULEINDICATOR OR GROUP II

POSITION INDICATOR?

OTHER USER GOING TO AGROUP I MODULE OR IS

USER WAITING TOREAD TORELEASEPAUSE?

WRITE CURRENT USER'SCOMMON ON DISKREAD NEW USER'SCOMMON FROM DISK

OR UN. LT, 2)

SET ELAPSED TIMEINDICATOR TO ZERO

MODULEINDICATOR OR GROUP II

POSITION INDICATOR?

IS USER GOING TO LSG MODULEOR IS USER WAITING TO READ

TO RELEASE PAUSE ?

A-29

Page 40: CAS pa COPY - ntrs.nasa.gov

ACTIVEUSER INDICATOR?

MORE THAN2 ACTIVE

USERS?

RUNINDICATOR +32=

HANDLER STATUS?

USER WHO IS RUNNINGAGREE WITH USER WHO

CALLED UP?

A-30

Page 41: CAS pa COPY - ntrs.nasa.gov

v-^

si g11=8a. LU 2 ir

m fc<

o2<co

cco"• **t **J

cc _ cc t-._. ^^ ^T

CO

COLLJ

O — LJ

-10 O< p <

H t w H

CO LL LL. CO — Q.O LU

COcc

E 2 ^gCC O 5- LL

02^2

*ioiL_ & Q S£g<2cc o LU oSocco

Q. LU

Lufe

Hw

Ha 'ujo:CO LL. I

i i< *9 at

. COLU^CCNjgo

CO LU

- 5 uIS bCO CC

_J __ V-, *-/

<-6 <CO

±95S<E

ccLU

LU

sgiI -I O' <5

LU £o ccOcoo

—^ <o

LUN CCto

O

A-31

Page 42: CAS pa COPY - ntrs.nasa.gov

ACTIVE USERINDICATOR VALID

NUMBER?

MODIFY ACTIVEUSER INDICATOR TOREFLECT HANGUPOF USER 1

RUNINDICATOR= 1 ? SET INDICATOR TO

SPECIFY USER 1 RETURNS TOTAL RUNTIME IN SECONDSFOR SPECIFIED USER

TIMEA(IRUN,LT,4)

RETURNS TOTAL RUNTIME IN SECONDSFOR SPECIFIED USER

ACTIVE USERINDICATOR = 0 ?

READ AMTRANINTO CORE

DID THE LASTUSER HANG UP

A-32

Page 43: CAS pa COPY - ntrs.nasa.gov

A-33

Page 44: CAS pa COPY - ntrs.nasa.gov

ACTIVE USERINDICATOR VALID

NUMBER?

MODIFY ACTIVEUSER INDICATOR TOREFLECT HANGUPOF USER 2

SET INDICATOR TOSPECIFY USER 2

TIMEA

RETURNS TOTAL RUNTIME IN SECONDSFOR SPECIFIED USER

TIMEA(IRUN,LT.4)

RETURNS TOTAL RUNTIME IN SECONDSFOR SPECIFIED USER

ACTIVE USERINDICATOR = 0 ?

READ AMTRANINTO CORE

DID THE LASTUSER HANG UP

RUN INDICATOR= 1 ? MODIFY NO-SWAP INDICATOR

WHO IS RUNNING

COMSWP

WRITE CURRENT USER'SCOMMON ON DISK

READ NEW USER'SCOMMON FROM DISK

TIMEA(IRUN,LT,3)

CHARGE RUN TIMETO USER 1

A-33

A-34