IDENT SFDQUE
ENTRY SFDQUE
SYSCOM B1
TITLE SFDQUE - DEQUEUE DATA FROM SPECIFIED QUEUE.
*COMMENT SFDQUE - DEQUEUE DATA.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SDQ SPACE 4,10
*** SFDQUE - DEQUEUE DATA FROM SPECIFIED QUEUE.
*
* M. L. SWANSON. 85/05/16.
SDQ SPACE 4,10
*** *SFDQUE* PROVIDES AN INTERFACE TO *SFDQUE$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SDQ SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFDQUE(QNAME, BUFFER, RC, LENGTH)
*
* *COBOL5* CALL -
*
* ENTER SFDQUE USING QNAME, BUFFER, RC, LENGTH.
*
* QNAME = NAME OF THE QUEUE FROM WHICH TO
* RETRIEVE DATA ( GET OR PUT ).
* BUFFER = ADDRESS OF BUFFER INTO WHICH TO
* RETURN THE DATA.
* RC = RETURN CODE ( 0 = DATA DEQUEUED,
* 1 = MORE DATA AVAILABLE, 2 = NO
* MESSAGES IN QUEUE.
* LENGTH = SIZE OF BUFFER IN 12-BIT CHARACTERS.
SDQ SPACE 4,10
** SFDQUE - DEQUEUE DATA FROM SPECIFIED QUEUE.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFDQUE$.
SFDQUE SUBR ENTRY/EXIT
SB1 1
SB2 SDQA FWA OF PARAMETER LIST
SB3 SDQB LENGTH AND OFFSET
RJ =XSFCSP$ COPY QNAME
RJ =XSFCNP$ COPY BUFFER ADDRESS
RJ =XSFCNP$ COPY RETURN CODE
RJ =XSFCNP$ COPY SIZE OF BUFFER
SA1 SDQA SET NEW PARAMETER LIST ADDRESS
RJ =XSFDQUE$ DEQUEUE DATA FROM SPECIFIED QUEUE
EQ SFDQUEX EXIT
SDQA BSSZ 7 NEW PARAMETER LIST
SDQB BSSZ 2 LENGTH AND OFFSET FOR QUEUE NAME
END
IDENT SFMODE
ENTRY SFMODE
SYSCOM B1
TITLE SFMODE - SWITCH TERMINAL BETWEEN SCREEN/LINE MODE.
*COMMENT SFMODE - SET TERMINAL MODE.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SMD SPACE 4,10
*** SFMODE - SWITCH TERMINAL BETWEEN SCREEN/LINE MODE.
*
* M. L. SWANSON. 85/05/16.
SMD SPACE 4,10
*** *SFMODE* PROVIDES AN INTERFACE TO *SFMODE$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SMD SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFMODE(MODE, MODEL)
*
* *COBOL5* CALL -
*
* ENTER SFMODE USING MODE, MODEL.
*
* MODE = TERMINAL MODE (0 = SCREEN, 1 = LINE)
* MODEL = DISPLAY CODE MODEL NAME
SMD SPACE 4,10
** SFMODE - SWITCH TERMINAL BETWEEN SCREEN/LINE MODE.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFMODE$.
SFMODE SUBR ENTRY/EXIT
SB1 1
SB2 SMDA FWA OF PARAMETER LIST
RJ =XSFCNP$ COPY MODE
SB3 SMDB LENGTH AND OFFSET
RJ =XSFCSP$ COPY MODEL
SA1 SMDA SET NEW PARAMETER LIST ADDRESS
RJ =XSFMODE$ SET SCREEN/LINE MODE
EQ SFMODEX EXIT
SMDA BSSZ 5 NEW PARAMETER LIST
SMDB BSSZ 2 LENGTH AND OFFSET FOR MODEL NAME
END
IDENT SFNQUE
ENTRY SFNQUE
SYSCOM B1
TITLE SFNQUE - ENQUEUE DATA INTO SPECIFIED QUEUE.
*COMMENT SFNQUE - ENQUEUE DATA.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SNQ SPACE 4,10
*** SFNQUE - ENQUEUE DATA INTO SPECIFIED QUEUE.
*
* M. L. SWANSON. 85/05/16.
SNQ SPACE 4,10
*** *SFNQUE* PROVIDES AN INTERFACE TO *SFNQUE$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SNQ SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFNQUE(QNAME, BUFFER, RC)
*
* *COBOL5* CALL -
*
* ENTER SFNQUE USING QNAME, BUFFER, RC.
*
* QNAME = NAME OF DESTINATION QUEUE (PUT OR GET).
* BUFFER = ADDRESS OF DATA TO BE ADDED TO QUEUE.
* RC = RETURN CODE ( 0 = DATA ENQUEUED,
* 1 = NOT ENQUEUED ).
SNQ SPACE 4,10
** SFNQUE - ENQUEUE DATA INTO SPECIFIED QUEUE.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFNQUE$.
SFNQUE SUBR ENTRY/EXIT
SB1 1
SB2 SNQA FWA OF PARAMETER LIST
SB3 SNQB LENGTH AND OFFSET
RJ =XSFCSP$ COPY QNAME
RJ =XSFCNP$ COPY BUFFER
RJ =XSFCNP$ COPY RETURN CODE
SA1 SNQA SET NEW PARAMETER LIST ADDRESS
RJ =XSFNQUE$ ENQUEUE DATA INTO SPECIFIED QUEUE
EQ SFNQUEX EXIT
SNQA BSSZ 6 NEW PARAMETER LIST
SNQB BSSZ 2 LENGTH AND OFFSET FOR QUEUE NAME
END
IDENT SFQTRM
ENTRY SFQTRM
SYSCOM B1
TITLE SFQTRM - IDENTIFY QTRM USER TO SFORM.
*COMMENT SFQTRM - IDENTIFY QTRM USER.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SQT SPACE 4,10
*** SFQTRM - IDENTIFY QTRM USER TO SFORM.
*
* M. L. SWANSON. 85/05/16.
SQT SPACE 4,10
*** *SFQTRM* PROVIDES AN INTERFACE TO *SFQTRM$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SQT SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFQTRM(NITADDR, BUFFER)
*
* *COBOL5* CALL -
*
* ENTER SFQTRM USING NITADDR, BUFFER.
*
* NITADDR = ADDRESS OF THE NETWORK INFORMATION TABLE.
* BUFFER = BUFFER ADDRESS.
SQT SPACE 4,10
** SFQTRM - IDENTIFY QTRM USER TO SFORM.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFQTRM$.
SFQTRM SUBR ENTRY/EXIT
SB1 1
SB2 SQTA FWA OF PARAMETER LIST
RJ =XSFCNP$ COPY NIT ADDRESS
RJ =XSFCNP$ COPY BUFFER ADDRESS
SA1 SQTA SET NEW PARAMETER LIST ADDRESS
RJ =XSFQTRM$ IDENTIFY QTRM USER TO SFORM
EQ SFQTRMX EXIT
SQTA BSSZ 3 NEW PARAMETER LIST
END
IDENT SFATTR
ENTRY SFATTR
SYSCOM B1
TITLE SFATTR - SET FIELD ATTRIBUTES.
*COMMENT SFATTR - SET FIELD ATTRIBUTES.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SFA SPACE 4,10
*** SFATTR - SET FIELD ATTRIBUTES.
*
* S.D. PAINTER. 85/10/01.
SFA SPACE 4,10
*** *SFATTR* PROVIDES AN INTERFACE TO *SFATTR$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SFA SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFATTR(VARNAME,NEW,OLD)
*
* *COBOL5* CALL -
*
* ENTER SFATTR USING VARNAME, NEW, OLD.
*
* VARNAME = NAME OF VARIABLE.
* NEW = NEW FIELD ATTRIBUTES.
* OLD = OLD FIELD ATTRIBUTES.
SFA SPACE 4,10
** SFATTR - SET FIELD ATTRIBUTES.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES X - 1.
* A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFATTR$.
SFATTR SUBR ENTRY/EXIT
SB1 1
SB2 SFAA FWA OF PARAMETER LIST
SB3 SFAB LENGTH AND OFFSET
RJ =XSFCSP$ COPY VARNAME
RJ =XSFCNP$ COPY NEW
RJ =XSFCNP$ COPY OLD
SA1 SFAA GET NEW PARAMETER LIST ADDRESS
RJ =XSFATTR$ SET FIELD ATTRIBUTES
EQ SFATTRX EXIT
SFAA BSSZ 6 NEW PARAMETER LIST
SFAB BSSZ 2 LENGTH AND OFFSET FOR PARAMETERS
END
IDENT SFGETF
ENTRY SFGETF
SYSCOM B1
TITLE SFGETF - GET CHARACTER FIELD.
*COMMENT SMFSUBS - GET CHARACTER FIELD.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SGF SPACE 4,10
*** SFGETF - GET CHARACTER FIELD.
*
* A. PILEBRO. 84/12/03.
* R. E. DUNBAR. 88/02/10.
SGF SPACE 4,10
*** *SFGETF* PROVIDES AN INTERFACE TO *SFGETF$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SGF SPACE 4,10
** COMMON DECKS.
*CALL COMCMAC
SGF SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFGETF(VARNAME,INSTRING,CSET,STATUS)
*
* *COBOL5* CALL -
*
* ENTER SFGETF USING VARNAME, INSTRING, CSET, STATUS.
*
* ENTRY VARNAME = NAME OF VARIABLE.
* INSTRING = NAME OF RECEIVING FILED.
* CSET = CHARACTER SET.
* * * DEFAULT (SET BY *SFCSET*).
* *ASCII * 6/12 ASCII.
* *ASCII8 * 8-BIT ASCII IN 12-BIT BYTES.
* *DISPLAY* 6-BIT DISPLAY CODE.
* ( OTHER ) 6-BIT DISPLAY CODE.
*
* EXIT STATUS .GE. 0, NUMBER OF 6 BIT BYTES TRANSFERRED.
* .LT. 1, VARIABLE NOT IN ACTIVE PANELS.
SGF SPACE 4,10
** SFGETF - GET CHARACTER FIELD.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES X - 1.
* A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFGETF$.
SFGETF SUBR ENTRY/EXIT
SB1 1
SB2 SGFA FWA OF PARAMETER LIST
SB3 SGFB LENGTH AND OFFSET
RJ =XSFCSP$ COPY VARNAME
RJ =XSFCSP$ COPY INSTRING
RJ =XSFCSP$ COPY CSET
RJ =XSFCNP$ COPY VALUE / STAT
SA1 SGFA SET NEW PARAMETER LIST ADDRESS
RJ =XSFGETF$ GET INTEGER VALUE
EQ SFGETFX EXIT
SGFA BSSZ 11 NEW PARAMETER LIST
SGFB BSSZ 6 LENGTHS AND OFFSETS
END
IDENT SFGETI
ENTRY SFGETI
SYSCOM B1
TITLE SFGETI - GET INTEGER VALUE.
*COMMENT SFGETI - GET INTEGER VALUE.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SGI SPACE 4,10
*** SFGETI - GET INTEGER VALUE.
*
* J.T. LITTLE. 83/05/23.
SGI SPACE 4,10
*** *SFGETI* PROVIDES AN INTERFACE TO *SFGETI$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SGI SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFGETI(VARNAME,VALUE)
*
* *COBOL5* CALL -
*
* ENTER SFGETI USING VARNAME, VALUE.
*
* VARNAME = NAME OF VARIABLE.
* VALUE = INTEGER VALUE OF FIELD.
SGI SPACE 4,10
** SFGETI - GET INTEGER VALUE.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFGETI$.
SFGETI SUBR ENTRY/EXIT
SB1 1
SB2 SGIA FWA OF PARAMETER LIST
SB3 SGIB LENGTH AND OFFSET
RJ =XSFCSP$ COPY VARNAME
RJ =XSFCNP$ COPY VALUE
SA1 SGIA SET NEW PARAMETER LIST ADDRESS
RJ =XSFGETI$ GET INTEGER VALUE
EQ SFGETIX EXIT
SGIA BSSZ 5 NEW PARAMETER LIST
SGIB BSSZ 2 LENGTH AND OFFSET FOR VARIABLE NAME
END
IDENT SFGETN
ENTRY SFGETN
SYSCOM B1
TITLE SFGETN - GET TERMINAL MODEL NAME.
*COMMENT SFGETN - GET TERMINAL MODEL NAME.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SGN SPACE 4,10
*** SFGETN - GET TERMINAL MODEL NAME.
*
* M. L. SWANSON. 84/10/25.
SGN SPACE 4,10
*** *SFGETN* PROVIDES AN INTERFACE TO *SFGETN$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SGN SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFGETN(MODEL)
*
* *COBOL5* CALL -
*
* ENTER SFGETN USING MODEL.
*
* MODEL = TERMINAL MODEL NAME.
SGN SPACE 4,10
** SFGETN - GET TERMINAL MODEL NAME.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF MODEL PARAMETER.
*
* USES X - 1.
* A - 1.
* B - 1, 2, 3.
*
* CALLS SFCSP$, SFGETN$.
SFGETN SUBR ENTRY/EXIT
SB1 1
SB2 SGNA FWA OF PARAMETER LIST
SB3 SGNB LENGTH AND OFFSET
RJ =XSFCSP$ COPY MODEL NAME ADDRESS
SA1 SGNA SET NEW PARAMETER LIST ADDRESS
RJ =XSFGETN$ GET INTEGER VALUE
EQ SFGETNX EXIT
SGNA BSSZ 4 NEW PARAMETER LIST
SGNB BSSZ 2 LENGTH AND OFFSET FOR VARIABLE NAME
END
IDENT SFGETR
ENTRY SFGETR
SYSCOM B1
TITLE SFGETR - GET REAL VALUE.
*COMMENT SFGETR - GET REAL VALUE.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SGR SPACE 4,10
*** SFGETR - GET REAL VALUE.
*
* J.T. LITTLE. 83/05/23.
SGR SPACE 4,10
*** *SFGETR* PROVIDES AN INTERFACE TO *SFGETR$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SGR SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFGETR(VARNAME,VALUE)
*
* *COBOL5* CALL -
*
* ENTER SFGETR USING VARNAME, VALUE.
*
* VARNAME = NAME OF VARIABLE.
* VALUE = REAL VALUE OF FIELD.
SGR SPACE 4,10
** SFGETR - GET REAL VALUE.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFGETR$.
SFGETR SUBR ENTRY/EXIT
SB1 1
SB2 SGRA FWA OF PARAMETER LIST
SB3 SGRB LENGTH AND OFFSET
RJ =XSFCSP$ COPY VARNAME
RJ =XSFCNP$ COPY VALUE
SA1 SGRA SET NEW PARAMETER LIST ADDRESS
RJ =XSFGETR$ GET REAL VALUE
EQ SFGETRX EXIT
SGRA BSSZ 5 NEW PARAMETER LIST
SGRB BSSZ 2 LENGTH AND OFFSET FOR VARIABLE NAME
END
IDENT SFLUSH
ENTRY SFLUSH
SYSCOM B1
TITLE SFLUSH - FLUSH OUTPUT TO SCREEN.
*COMMENT SMFSUBS - FLUSH OUTPUT TO SCREEN.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SFL SPACE 4,10
*** SFLUSH - FLUSH OUTPUT TO SCREEN.
*
* R.E. DUNBAR. 88/04/05.
SFL SPACE 4,10
*** *SFLUSH* PROVIDES AN INTERFACE TO *SFLUSH$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SFL SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFLUSH
*
* *COBOL5* CALL -
*
* ENTER SFLUSH
*
SFL SPACE 4,10
** SFLUSH - FLUSH OUTPUT TO SCREEN.
*
* USES B - 1.
*
* CALLS SFLUSH$.
SFLUSH SUBR ENTRY/EXIT
SB1 1
RJ =XSFLUSH$ FLUSH OUTPUT TO SCREEN
EQ SFLUSHX EXIT
END
IDENT SFPOSR
ENTRY SFPOSR
SYSCOM B1
TITLE SFPOSR - POSITION TABLE ROW.
*COMMENT SFPOSR - POSITION TABLE ROW.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SGD SPACE 4,10
*** SFPOSR - POSITION TABLE ROW.
*
* J.T. LITTLE. 83/05/23.
SGD SPACE 4,10
*** *SFPOSR* PROVIDES AN INTERFACE TO *SFPOSR$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SGD SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFPOSR(TABNAME,VALUE)
*
* *COBOL5* CALL -
*
* ENTER SFPOSR USING TABNAME, VALUE.
*
* TABNAME = NAME OF TABLE.
* VALUE = DATE VALUE OF FIELD.
SGD SPACE 4,10
** SFPOSR - GET DATE VALUE.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFPOSR$.
SFPOSR SUBR ENTRY/EXIT
SB1 1
SB2 SGDA FWA OF PARAMETER LIST
SB3 SGDB LENGTH AND OFFSET
RJ =XSFCSP$ COPY TABNAME
RJ =XSFCNP$ COPY VALUE
SA1 SGDA SET NEW PARAMETER LIST ADDRESS
RJ =XSFPOSR$ GET DATE VALUE
EQ SFPOSRX EXIT
SGDA BSSZ 5 NEW PARAMETER LIST
SGDB BSSZ 2 LENGTH AND OFFSET FOR TABLE NAME
END
IDENT SFSETF
ENTRY SFSETF
SYSCOM B1
TITLE SFSETF - SET CHARACTER FIELD.
*COMMENT SMFSUBS - SET CHARACTER FIELD.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SSF SPACE 4,10
*** SFSETF - SET CHARACTER FIELD.
*
* A. PILEBRO. 84/12/03.
* R. E. DUNBAR. 88/02/10.
SSF SPACE 4,10
*** *SFSETF* PROVIDES AN INTERFACE TO *SFSETF$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SSF SPACE 4,10
** COMMON DECKS.
*CALL COMCMAC
SSF SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFSETF(VARNAME,OUTSTRING,CSET,STATUS)
*
* *COBOL5* CALL -
*
* ENTER SFSETF USING VARNAME, OUTSTRING, CSET, STATUS.
*
* ENTRY VARNAME = NAME OF VARIABLE.
* OUTSTRING = NAME OF RECIEVING FILED.
* CSET = CHARACTER SET.
* * * DEFAULT (SET BY *SFCSET*).
* *ASCII * 6/12 ASCII.
* *ASCII8 * 8-BIT ASCII IN 12-BIT BYTES.
* *DISPLAY* 6-BIT DISPLAY CODE.
* ( OTHER ) 6-BIT DISPLAY CODE.
*
* EXIT STATUS .GE. 0, NUMBER OF 6 BIT BYTES TRANSFERRED.
* .LT. 1, VARIABLE NOT IN ACTIVE PANELS.
SSF SPACE 4,10
** SFSETF - SET CHARACTER FIELD.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES X - 1.
* A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFSETF$.
SFSETF SUBR ENTRY/EXIT
SB1 1
SB2 SSFA FWA OF PARAMETER LIST
SB3 SSFB LENGTH AND OFFSET
RJ =XSFCSP$ COPY VARNAME
RJ =XSFCSP$ COPY INSTRING
RJ =XSFCSP$ COPY CSET
RJ =XSFCNP$ COPY VALUE / STAT
SA1 SSFA SET NEW PARAMETER LIST ADDRESS
RJ =XSFSETF$ GET INTEGER VALUE
EQ SFSETFX EXIT
SSFA BSSZ 11 NEW PARAMETER LIST
SSFB BSSZ 6 LENGTHS AND OFFSETS
END
IDENT SFSETP
ENTRY SFSETP
SYSCOM B1
TITLE SFSETP - SET CURSOR POSITION.
*COMMENT SFSETP - SET CURSOR POSITION.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
STP SPACE 4,10
*** SFSETP - SET CURSOR POSITION.
*
* J.T. LITTLE. 83/04/25.
STP SPACE 4,10
*** *SFSETP* PROVIDES AN INTERFACE TO *SFSETP$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
STP SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFSETP(VARNAME,OFFSET,ROW)
*
* *COBOL5* CALL -
*
* ENTER SFSETP USING VARNAME, OFFSET, ROW.
*
* VARNAME = NAME OF VARIABLE.
* OFFSET = OFFSET IN FIELD.
STP SPACE 4,10
** SFSETP - SET CURSOR POSITION.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFSETP$.
SFSETP SUBR ENTRY/EXIT
SB1 1
SB2 STPA FWA OF PARAMETER LIST
SB3 STPB LENGTH AND OFFSET
RJ =XSFCSP$ COPY VARNAME
RJ =XSFCNP$ COPY OFFSET
RJ =XSFCNP$ COPY ROW
SA1 STPA SET NEW PARAMETER LIST ADDRESS
RJ =XSFSETP$ SET CURSOR POSITION
EQ SFSETPX EXIT
STPA BSSZ 6 NEW PARAMETER LIST
STPB BSSZ 2 LENGTH AND OFFSET FOR PANEL NAME
END
IDENT SFSREA
ENTRY SFSREA
SYSCOM B1
TITLE SFSREA - READ FORMATTED SCREEN.
*COMMENT SFSREA - READ FORMATTED SCREEN.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SRE SPACE 4,10
*** SFSREA - READ FORMATTED SCREEN.
*
* J.T. LITTLE. 83/04/25.
SRE SPACE 4,10
*** *SFSREA* PROVIDES AN INTERFACE TO *SFSREA$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SRE SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFSREA(PANELNAME,INSTRING)
*
* *COBOL5* CALL -
*
* ENTER SFSREA USING PANELNAME INSTRING.
*
* PANELNAME = PANEL TO BE READ.
* INSTRING = RECEIVES TERMINAL INPUT.
SRE SPACE 4,10
** SFSREA - READ PANEL.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFSREA$.
SFSREA SUBR ENTRY/EXIT
SB1 1
SB2 SREA FWA OF PARAMETER LIST
SB3 SREB LENGTH AND OFFSET
RJ =XSFCSP$ COPY PANELNAME
RJ =XSFCSP$ COPY INSTRING
SA1 SREA SET NEW PARAMETER LIST ADDRESS
RJ =XSFSREA$ READ FORMATTED SCREEN
EQ SFSREAX EXIT
SREA BSSZ 7 NEW PARAMETER LIST
SREB BSSZ 4 LENGTH AND OFFSET FOR PANEL NAME
END
IDENT SFSWRI
ENTRY SFSWRI
SYSCOM B1
TITLE SFSWRI - WRITE FORMATTED SCREEN.
*COMMENT SFSWRI - WRITE FORMATTED SCREEN.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SWR SPACE 4,10
*** SFSWRI - WRITE FORMATTED SCREEN.
*
* J.T. LITTLE. 83/04/25.
SWR SPACE 4,10
*** *SFSWRI* PROVIDES AN INTERFACE TO *SFSWRI$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SWR SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFSWRI(PANELNAME,OUTSTRING)
*
* *COBOL5* CALL -
*
* ENTER SFSWRI USING PANELNAME OUTSTRING.
*
* PANELNAME = PANEL TO BE READ.
* OUTSTRING = DATA TO BE DISPLAYED.
SWR SPACE 4,10
** SFSWRI - WRITE PANEL.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFSWRI$.
SFSWRI SUBR ENTRY/EXIT
SB1 1
SB2 SWRA FWA OF PARAMETER LIST
SB3 SWRB LENGTH AND OFFSET
RJ =XSFCSP$ COPY PANELNAME
RJ =XSFCSP$ COPY OUTSTRING
SA1 SWRA SET NEW PARAMETER LIST ADDRESS
RJ =XSFSWRI$ READ FORMATTED SCREEN
EQ SFSWRIX EXIT
SWRA BSSZ 7 NEW PARAMETER LIST
SWRB BSSZ 4 LENGTHS AND OFFSETS FOR PARAMETERS
END
IDENT SFSSHO
ENTRY SFSSHO
SYSCOM B1
TITLE SFSSHO - SHOW FORMATTED SCREEN.
*COMMENT SFSSHO - SHOW FORMATTED SCREEN.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SSH SPACE 4,10
*** SFSSHO - SHOW FORMATTED SCREEN.
*
* J.T. LITTLE. 83/04/25.
SSH SPACE 4,10
*** *SFSSHO* PROVIDES AN INTERFACE TO *SFSSHO$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SSH SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFSSHO(PANELNAME,INSTRING,OUTSTRING)
*
* *COBOL5* CALL -
*
* ENTER SFSSHO USING PANELNAME INSTRING,OUTSTRING.
*
* PANELNAME = PANEL TO BE READ.
* OUTSTRING = DATA TO BE DISPLAYED.
* INSTRING = INPUT FROM TERMINAL.
SSH SPACE 4,10
** SFSSHO - SHOW PANEL.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFSSHO$.
SFSSHO SUBR ENTRY/EXIT
SB1 1
SB2 SSHA FWA OF PARAMETER LIST
SB3 SSHB LENGTH AND OFFSET
RJ =XSFCSP$ COPY PANELNAME
RJ =XSFCSP$ COPY OUTSTRING
RJ =XSFCSP$ COPY INSTRING
SA1 SSHA SET NEW PARAMETER LIST ADDRESS
RJ =XSFSSHO$ READ FORMATTED SCREEN
EQ SFSSHOX EXIT
SSHA BSSZ 10 NEW PARAMETER LIST
SSHB BSSZ 6 LENGTHS AND OFFSETS FOR PARAMETERS
END
IDENT SFCSET
ENTRY SFCSET
SYSCOM B1
TITLE SFCSET - SPECIFY CHARACTER SET.
*COMMENT SFCSET - SPECIFY CHARACTER SET.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
CST SPACE 4,10
*** SFCSET - SPECIFY CHARACTER SET.
*
* J.T. LITTLE. 83/04/25.
CST SPACE 4,10
*** *SFCSET* PROVIDES AN INTERFACE TO *SFCSET$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
CST SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFCSET(CHARSET)
*
* *COBOL5* CALL -
*
* ENTER SFCSET USING CHARSET.
*
* CHARSET = CHARACTER SET.
CST SPACE 4,10
** SFCSET - SPECIFY CHARACTER SET.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFCSET$.
SFCSET SUBR ENTRY/EXIT
SB1 1
SB2 CSTA FWA OF PARAMETER LIST
SB3 CSTB LENGTH AND OFFSET
RJ =XSFCSP$ COPY CHARSET
SA1 CSTA SET NEW PARAMETER LIST ADDRESS
RJ =XSFCSET$ SET CHARACTER SET
EQ SFCSETX EXIT
CSTA BSSZ 4 NEW PARAMETER LIST
CSTB BSSZ 2 LENGTH AND OFFSET FOR PARAMETER
END
IDENT SFGETP
ENTRY SFGETP
SYSCOM B1
TITLE SFGETP - GET CURSOR POSITION.
*COMMENT SFGETP - GET CURSOR POSITION.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
STP SPACE 4,10
*** SFGETP - GET CURSOR POSITION.
*
* J.T. LITTLE. 83/04/25.
STP SPACE 4,10
*** *SFGETP* PROVIDES AN INTERFACE TO *SFGETP$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
STP SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFGETP(VARNAME,OFFSET,ROW)
*
* *COBOL5* CALL -
*
* ENTER SFGETP USING VARNAME, OFFSET, ROW.
*
* VARNAME = NAME OF VARIABLE.
* OFFSET = OFFSET IN FIELD.
STP SPACE 4,10
** SFGETP - GET CURSOR POSITION.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFGETP$.
SFGETP SUBR ENTRY/EXIT
SB1 1
SB2 STPA FWA OF PARAMETER LIST
SB3 STPB LENGTH AND OFFSET
RJ =XSFCSP$ COPY VARNAME
RJ =XSFCNP$ COPY OFFSET
RJ =XSFCNP$ COPY ROW
SA1 STPA GET NEW PARAMETER LIST ADDRESS
RJ =XSFGETP$ GET CURSOR POSITION
EQ SFGETPX EXIT
STPA BSSZ 6 NEW PARAMETER LIST
STPB BSSZ 2 LENGTH AND OFFSET FOR PARAMETERS
END
IDENT SFOPEN
ENTRY SFOPEN
SYSCOM B1
TITLE SFOPEN - OPEN PANEL.
*COMMENT SFOPEN - OPEN PANEL.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SOP SPACE 4,10
*** SFOPEN - OPEN PANEL.
*
* J.T. LITTLE. 83/04/25.
SOP SPACE 4,10
*** *SFOPEN* PROVIDES AN INTERFACE TO *SFOPEN$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SOP SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFOPEN(PANELNAME,STATUS)
*
* *COBOL5* CALL -
*
* ENTER SFOPEN USING PANELNAME STATUS.
*
* PANELNAME = PANEL TO BE OPENED.
* STATUS = RETURNS OPEN STATUS.
SOP SPACE 4,10
** SFOPEN - OPEN PANEL.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFOPEN$.
SFOPEN SUBR ENTRY/EXIT
SB1 1
SB2 SOPA FWA OF PARAMETER LIST
SB3 SOPB LENGTH AND OFFSET
RJ =XSFCSP$ COPY PANELNAME
RJ =XSFCNP$ COPY STATUS
SA1 SOPA SET NEW PARAMETER LIST ADDRESS
RJ =XSFOPEN$ OPEN PANEL
EQ SFOPENX EXIT
SOPA BSSZ 5 NEW PARAMETER LIST
SOPB BSSZ 2 LENGTH AND OFFSET FOR PARAMETERS
END
IDENT SFCLOS
ENTRY SFCLOS
SYSCOM B1
TITLE SFCLOS - CLOSE PANEL.
*COMMENT SFCLOS - CLOSE PANEL.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SCL SPACE 4,10
*** SFCLOS - CLOSE PANEL.
*
* J.T. LITTLE. 83/04/25.
SCL SPACE 4,10
*** *SFCLOS* PROVIDES AN INTERFACE TO *SFCLOS$* FOR PROGRAMS
* WRITTEN IN HIGHER LEVEL LANGUAGES.
SCL SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFCLOS(PANELNAME,STATUS)
*
* *COBOL5* CALL -
*
* ENTER SFCLOS USING PANELNAME STATUS.
*
* PANELNAME = PANEL TO BE CLOSED.
* STATUS = RETURNS CLOSE STATUS.
SCL SPACE 4,10
** SFCLOS - CLOSE PANEL.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1.
* B - 1, 2, 3.
*
* CALLS SFCNP$, SFCSP$, SFCLOS$.
SFCLOS SUBR ENTRY/EXIT
SB1 1
SB2 SCLA FWA OF PARAMETER LIST
SB3 SCLB LENGTH AND OFFSET
RJ =XSFCSP$ COPY PANELNAME
RJ =XSFCNP$ COPY STATUS
SA1 SCLA SET NEW PARAMETER LIST ADDRESS
RJ =XSFCLOS$ CLOSE PANEL
EQ SFCLOSX EXIT
SCLA BSSZ 5 NEW PARAMETER LIST
SCLB BSSZ 2 LENGTH AND OFFSET FOR PARAMETERS
END
IDENT CSFCLOS
ENTRY CSFCLOS
SYSCOM B1
TITLE CSFCLOS - *CYBIL* INTERFACE TO *SFCLOS$*.
*COMMENT CSFCLOS - *CYBIL* INTERFACE TO *SFCLOS$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
CLO SPACE 4,10
*** CSFCLOS - *CYBIL* INTERFACE TO *SFCLOS$*.
*
* M. L. SWANSON. 84/05/16.
CLO SPACE 4,10
*** *CSFCLOS* PROVIDES AN INTERFACE TO *SFCLOS$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFCLOS$*.
CLO SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
CLO SPACE 4,10
*** CSFCLOS - *CYBIL* INTERFACE TO *SFCLOS$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFCLOS(PANELNAME, MODE);
*
* PANELNAME = NAME OF PANEL TO BE CLOSED.
* MODE = MODE TO REVERT TO AFTER PANEL CLOSED.
CLO SPACE 4,10
** CSFCLOS - *COMPASS* INTERFACE TO *SFCLOS$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *PANELNAME*
* X2 POINTER TO *MODE*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4.
*
* CALLS SFCLOS$.
CSFCLOS ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 CLOA SAVE POINTER TO STACK FRAME
SA7 CLOB SAVE STACK LIMIT
SX6 B4
SA6 CLOC SAVE STATIC LINK
BX6 X1
* *PANELNAME* PARAMETER IS PASSED CALL-BY-ADDRESS.
SA6 CLOD SAVE POINTER TO *PANELNAME*
BX6 X2
SA6 CLOJ SAVE *MODE*
SA1 CLOD GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFCLOS$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 CLOA GET POINTER TO STACK FRAME
SA3 CLOB GET STACK LIMIT
SA4 CLOC GET STATIC LINK
SB2 X2 RETURN TO B2
SB3 X3 RETURN TO B3
SB4 X4 RETURN TO B2
DONE RETURN
CLOA VFD 60/0 POINTER TO STACK FRAME
CLOB VFD 60/0 STACK LIMIT
CLOC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR SYMPL PROCEDURE CALL.
CLOD VFD 60/0 ADDRESS OF *PANELNAME* PARAMETER
CLOE VFD 60/CLOH ADDRESS OF *NLENGTH* PARAMETER
CLOF VFD 60/CLOI ADDRESS OF *NOFFSET* PARAMETER
CLOG VFD 60/CLOJ ADDRESS OF *MODE* PARAMETER
CLOH VFD 60/7 *NLENGTH*
CLOI VFD 60/0 *NOFFSET*
CLOJ VFD 60/0 *MODE*
END
IDENT CSFGETI
ENTRY CSFGETI
SYSCOM B1
TITLE CSFGETI - *CYBIL* INTERFACE TO *SFGETI$*.
*COMMENT CSFGETI - *CYBIL* INTERFACE TO *SFGETI$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
GTI SPACE 4,10
*** CSFGETI - *COMPASS* INTERFACE TO *SFGETI$* CALL.
*
* M. L. SWANSON. 84/05/16.
GTI SPACE 4,10
*** *CSFGETI* PROVIDES AN INTERFACE TO *SFGETI$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFGETI$*.
GTI SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
GTI SPACE 4,10
*** CSFGETI - *CYBIL* INTERFACE TO *SFGETI$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFGETI(VARNAME, VALUE);
*
* VARNAME = FIELD NAME OF THE PANEL VARIABLE.
* VALUE = INTEGER VALUE TO BE RETURNED.
GTI SPACE 4,10
** CSFGETI - *COMPASS* INTERFACE TO *SFGETI$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *VARNAME*
* X2 POINTER TO *VALUE*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4.
*
* CALLS SFGETI$.
CSFGETI ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 GTIA SAVE POINTER TO STACK FRAME
SA7 GTIB SAVE STACK LIMIT
SX6 B4
SA6 GTIC SAVE STATIC LINK
BX6 X1
SA6 GTID SAVE POINTER TO *VARNAME*
BX6 X2
SA6 GTIG SAVE POINTER TO *VALUE*
SA1 GTID GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFGETI$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 GTIA GET POINTER TO STACK FRAME
SA3 GTIB GET STACK LIMIT
SA4 GTIC GET STATIC LINK
SB2 X2 RETURN TO B2
SB3 X3 RETURN TO B3
SB4 X4 RETURN TO B4
DONE RETURN
GTIA VFD 60/0 POINTER TO STACK FRAME
GTIB VFD 60/0 STACK LIMIT
GTIC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR *SYMPL* PROCEDURE CALL.
GTID VFD 60/0 ADDRESS OF *VARNAME* PARAMETER
GTIE VFD 60/GTIH ADDRESS OF *VLEN* PARAMETER
GTIF VFD 60/GTII ADDRESS OF *VOFF* PARAMETER
GTIG VFD 60/0 ADDRESS OF *VALUE* PARAMETER
GTIH VFD 60/7 *VLEN*
GTII VFD 60/0 *VOFF*
END
IDENT CSFGETK
ENTRY CSFGETK
SYSCOM B1
TITLE CSFGETK - *CYBIL* INTERFACE TO *SFGETK$*.
*COMMENT CSFGETI - *CYBIL* INTERFACE TO *SFGETK$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
GTK SPACE 4,10
*** CSFGETK - *COMPASS* INTERFACE TO *SFGETK$* CALL.
*
* M. L. SWANSON. 84/05/16.
GTK SPACE 4,10
*** *CSFGETK* PROVIDES AN INTERFACE TO *SFGETK$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFGETK$*.
GTK SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
GTK SPACE 4,10
*** CSFGETK - *CYBIL* INTERFACE TO *SFGETK$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFGETK(TYPE, VALUE);
*
* TYPE = FUNCTION KEY TYPE.
* VALUE = INTEGER FUNCTION KEY NUMBER.
GTK SPACE 4,10
** CSFGETK - *COMPASS* INTERFACE TO *SFGETK$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 FUNCTION KEY TYPE
* X2 POINTER TO *VALUE*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4.
*
* CALLS SFGETK.
CSFGETK ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 GTKA SAVE POINTER TO STACK FRAME
SA7 GTKB SAVE STACK LIMIT
SX6 B4
SA6 GTKC SAVE STATIC LINK
BX6 X1
SA6 GTKD SAVE POINTER TO *TYPE*
BX6 X2
SA6 GTKE SAVE POINTER TO *VALUE*
SA1 GTKD GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFGETK
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 GTKA GET POINTER TO STACK FRAME
SA3 GTKB GET STACK LIMIT
SA4 GTKC GET STACK LINK
SB2 X2 RETURN IN B2
SB3 X3 RETURN IN B3
SB4 X4 RETURN IN B4
DONE RETURN
GTKA VFD 60/0 POINTER TO STACK FRAME
GTKB VFD 60/0 STACK LIMIT
GTKC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR *SYMPL* PROCEDURE CALL.
GTKD VFD 60/0 ADDRESS OF *TYPE*
GTKE VFD 60/0 ADDRESS OF *VALUE*
END
IDENT CSFGETP
ENTRY CSFGETP
SYSCOM B1
TITLE CSFGETP - *CYBIL* INTERFACE TO *SFGETP$*.
*COMMENT CSFGETP - *CYBIL* INTERFACE TO *SFGETP$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
GTP SPACE 4,10
*** CSFGETP - *COMPASS* INTERFACE TO *SFGETP$* CALL.
*
* M. L. SWANSON. 84/05/29.
GTP SPACE 4,10
*** *CSFGETP* PROVIDES AN INTERFACE TO *SFGETP$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFGETP$*.
GTP SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
GTP SPACE 4,10
*** CSFGETP - *CYBIL* INTERFACE TO *SFGETP$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFGETP(FIELDNAME,INDEX, ROW);
*
* FIELDNAME = NAME OF FIELD.
* INDEX = CHARACTER POSITION WITHIN THE VARIABLE FIELD.
* ROW = THE ROW NUMBER OF THE VARIABLE FIELD.
GTP SPACE 4,10
** CSFGETP - *COMPASS* INTERFACE TO *SFGETP$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *FIELDNAME*
* X2 POINTER TO *INDEX*
* X3 POINTER TO *ROW*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4.
*
* CALLS SFGETP$.
CSFGETP ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 GTPA SAVE POINTER TO STACK FRAME
SA7 GTPB SAVE STACK LIMIT
SX6 B4
SA6 GTPC SAVE STATIC LINK
BX6 X1
SA6 GTPD SAVE POINTER TO *VARNAME*
BX6 X2
SA6 GTPG SAVE POINTER TO *OFFSET*
BX6 X3
SA6 GTPH SAVE POINTER TO *ROW*
SA1 GTPD GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFGETP$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 GTPA GET POINTER TO STACK FRAME
SA3 GTPB GET STACK LIMIT
SA4 GTPC GET STATIC LINK
SB2 X2 RETURN IN B2
SB3 X3 RETURN IN B3
SB4 X4 RETURN IN B4
DONE RETURN
GTPA VFD 60/0 POINTER TO STACK FRAME
GTPB VFD 60/0 STACK LIMIT
GTPC VFD 60/0 STATIC LIMIT
* PARAMETER BLOCK FOR SYMPL PROCEDURE CALL.
GTPD VFD 60/0 ADDRESS OF *VARNAME*
GTPE VFD 60/GTPI
GTPF VFD 60/GTPJ
GTPG VFD 60/0 ADDRESS OF *OFFSET*
GTPH VFD 60/0 ADDRESS OF *ROW*
GTPI VFD 60/7 *VLEN*
GTPJ VFD 60/0 *VOFF*
END
IDENT CSFGETR
ENTRY CSFGETR
SYSCOM B1
TITLE CSFGETR - *CYBIL* INTERFACE TO *SFGETR$*.
*COMMENT CSFGETR - *CYBIL* INTERFACE TO *SFGETR$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
GTR SPACE 4,10
*** CSFGETR - *COMPASS* INTERFACE TO *SFGETR$* CALL.
*
* M. L. SWANSON. 84/05/16.
GTR SPACE 4,10
*** *CSFGETR* PROVIDES AN INTERFACE TO *SFGETR$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFGETR$*.
GTR SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
GTR SPACE 4,10
*** CSFGETR - *CYBIL* INTERFACE TO *SFGETR$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFGETR(FIELDNAME,VALUE);
*
* FIELDNAME = FIELD NAME OF THE PANEL VARIABLE.
* VALUE = REAL VALUE TO BE RETURNED.
GTR SPACE 4,10
** CSFGETR - *COMPASS* INTERFACE TO *SFGETR$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *FIELDNAME*
* X2 POINTER TO *VALUE*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4.
*
* CALLS SFGETR$.
CSFGETR ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 GTRA SAVE POINTER TO STACK FRAME
SA7 GTRB SAVE STACK LIMIT
SX6 B4
SA6 GTRC SAVE STATIC LINK
* THIS IS IF FIELDNAME IS PASSED CALL-BY-ADDRESS.
BX6 X1
SA6 GTRD SAVE *VARNAME*
BX6 X2
SA6 GTRG SAVE *VALUE*
SA1 GTRD GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFGETR$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 GTRA GET POINTER TO STACK FRAME
SA3 GTRB GET STACK LIMIT
SA4 GTRC GET STATIC LINK
SB2 X2 RETURN IN B2
SB3 X3 RETURN IN B3
SB4 X4 RETURN IN B4
DONE RETURN
GTRA VFD 60/0 POINTER TO STACK FRAME
GTRB VFD 60/0 STACK LIMIT
GTRC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR *SYMPL* PROCEDURE CALL.
GTRD VFD 60/0 ADDRESS OF *VARNAME*
GTRE VFD 60/GTRH
GTRF VFD 60/GTRI
GTRG VFD 60/0 ADDRESS OF *VALUE*
GTRH VFD 60/7 *VLEN*
GTRI VFD 60/0 *VOFF*
END
IDENT CSFOPEN
ENTRY CSFOPEN
SYSCOM B1
TITLE CSFOPEN - *CYBIL* INTERFACE TO *SFOPEN$*.
*COMMENT CSFOPEN - *CYBIL* INTERFACE TO *SFOPEN$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
OPN SPACE 4,10
*** CSFOPEN - *COMPASS* INTERFACE TO *SFOPEN$* CALL.
*
* M. L. SWANSON. 84/04/17.
OPN SPACE 4,10
*** *CSFOPEN* PROVIDES AN INTERFACE TO *SFOPEN$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFOPEN$*.
OPN SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
OPN SPACE 4,10
*** CSFOPEN - *CYBIL* INTERFACE TO *SFOPEN$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFOPEN(PANELNAME, STATUS);
*
* PANELNAME = NAME OF PANEL TO BE OPENED.
* STATUS = VARIABLE INDICATING RESULTS OF ATTEMPT
* TO OPEN A PANEL. NON-ZERO STATUS
* INDICATES PANEL COULD NOT BE OPENED.
OPN SPACE 4,10
** CSFOPEN - *COMPASS* INTERFACE TO *SFOPEN$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *PANELNAME*
* X2 POINTER TO *STATUS*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4.
*
* CALLS SFOPEN$.
CSFOPEN ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 OPNA SAVE POINTER TO STACK FRAME
SA7 OPNB SAVE STACK LIMIT
SX6 B4
SA6 OPNC SAVE STATIC LINK
BX6 X1
* *PANELNAME* IS PASSED CALL-BY-ADDRESS.
SA6 OPND SAVE *PANELNAME*
BX6 X2
SA6 OPNG SAVE *STATUS*
* SET TO ASCII8 CHARACTER SET.
SA1 OPNJ GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFCSET$
SA1 OPND GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFOPEN$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 OPNA GET POINTER TO STACK FRAME
SA3 OPNB GET STACK LIMIT
SA4 OPNC GET STATIC LINK
SB2 X2 RETURN IN B2
SB3 X3 RETURN IN B3
SB4 X4 RETURN IN B4
DONE RETURN
OPNA VFD 60/0 POINTER TO STACK FRAME
OPNB VFD 60/0 STACK LIMIT
OPNC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR *SYMPL* PROCEDURE CALL.
OPND VFD 60/0 ADDRESS OF *PANELNAME* PARAMETER
OPNE VFD 60/OPNH ADDRESS OF *NLENGTH* PARAMETER
OPNF VFD 60/OPNI ADDRESS OF *NOFFSET* PARAMETER
OPNG VFD 60/0 ADDRESS OF *STATUS* PARAMETER
OPNH VFD 60/7 *NLENGTH*
OPNI VFD 60/0 *NOFFSET*
* HARD CODE CHARACTER SET FOR *CYBIL*.
OPNJ VFD 60/OPNM FWA OF PARAMETER LIST
OPNK VFD 60/OPNN
OPNL VFD 60/OPNO
OPNM VFD 60/6HASCII8 CHARACTER SET BLANK FILLED
OPNN VFD 60/6 *CLENGTH*
OPNO VFD 60/0 *COFFSET*
END
IDENT CSFPOSR
ENTRY CSFPOSR
SYSCOM B1
TITLE CSFPOSR - *CYBIL* INTERFACE TO *SFPOSR$*.
*COMMENT CSFPOSR - *CYBIL* INTERFACE TO *SFPOSR$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
PSR SPACE 4,10
*** CSFPOSR - COMPASS INTERFACE TO *SFPOSR$* CALL.
*
* M. L. SWANSON. 84/05/30.
PSR SPACE 4,10
*** *CSFPOSR* PROVIDES AN INTERFACE TO *SFPOSR$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFPOSR$*.
PSR SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
PSR SPACE 4,10
*** CSFPOSR - *CYBIL* INTERFACE TO *SFPOSR$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFPOSR(TABLENAME,ROW);
*
* TABLENAME = ACTIVE PANEL TABLE NAME.
* ROW = THE ROW NUMBER OF THE VARIABLE FIELD.
PSR SPACE 4,10
** CSFPOSR - COMPASS INTERFACE TO *SFPOSR$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *TABLENAME*
* X2 POINTER TO *ROW*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4.
*
* CALLS SFPOSR$.
CSFPOSR ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 PSRA SAVE POINTER TO STACK FRAME
SA7 PSRB SAVE STACK LIMIT
SX6 B4
SA6 PSRC SAVE STATIC LINK
BX6 X1
SA6 PSRD SAVE FIRST PARAMETER
BX6 X2
SA6 PSRJ SAVE SECOND PARAMETER
SA1 PSRD GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFPOSR$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 PSRA GET POINTER TO STACK FRAME
SA3 PSRB GET STACK LIMIT
SA4 PSRC GET STATIC LINK
SB2 X2 RETURN IN B2
SB3 X3 RETURN IN B3
SB4 X4 RETURN IN B4
DONE RETURN
PSRA VFD 60/0 POINTER TO CALLER'S STACK FRAME
PSRB VFD 60/0 STACK LIMIT
PSRC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR SYMPL PROCEDURE CALL.
PSRD VFD 60/0 ADDRESS OF *TABLENAME*
PSRE VFD 60/PSRH ADDRESS OF *TLEN*
PSRF VFD 60/PSRI ADDRESS OF *TOFF*
PSRG VFD 60/PSRJ ADDRESS OF *ROWNUMBER*
PSRH VFD 60/7 *TLEN*
PSRI VFD 60/0 *TOFF*
PSRJ VFD 60/0 *ROWNUMBER*
END
IDENT CSFSETP
ENTRY CSFSETP
SYSCOM B1
TITLE CSFSETP - *CYBIL* INTERFACE TO *SFSETP$*.
*COMMENT CSFSETP - *CYBIL* INTERFACE TO *SFSETP$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
STP SPACE 4,10
*** CSFSETP - *COMPASS* INTERFACE TO *SFSETP$* CALL.
*
* M. L. SWANSON. 84/05/30.
STP SPACE 4,10
*** *CSFSETP* PROVIDES AN INTERFACE TO *SFSETP$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFSETP$*.
STP SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
STP SPACE 4,10
*** CSFSETP - *CYBIL* INTERFACE TO *SFSETP$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFSETP(FIELDNAME,INDEX,ROW);
*
* FIELDNAME = NAME OF FIELD.
* INDEX = CHARACTER POSITION WITHIN THE VARIABLE FIELD.
* ROW = THE ROW NUMBER OF THE VARIABLE FIELD.
STP SPACE 4,10
** CSFSETP - *COMPASS* INTERFACE TO *SFSETP$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *FIELDNAME*
* X2 POINTER TO *INDEX*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4.
*
* CALLS SFSETP$.
CSFSETP ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 STPA SAVE POINTER TO STACK FRAME
SA7 STPB SAVE STACK LIMIT
SX6 B4
SA6 STPC SAVE STATIC LINK
BX6 X1
SA6 STPD SAVE *FIELDNAME*
BX6 X2
SA6 STPK SAVE *INDEX*
BX6 X3
SA6 STPL SAVE *ROW*
SA1 STPD GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFSETP$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 STPA GET POINTER TO STACK FRAME
SA3 STPB GET STACK LIMIT
SA4 STPC GET STATIC LINK
SB2 X2 RETURN IN B2
SB3 X3 RETURN IN B3
SB4 X4 RETURN IN B4
DONE RETURN
STPA VFD 60/0 POINTER TO STACK FRAME
STPB VFD 60/0 STACK LIMIT
STPC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR SYMPL PROCEDURE CALL.
STPD VFD 60/0 ADDRESS OF *VARNAME*
STPE VFD 60/STPI ADDRESS OF *VLEN*
STPF VFD 60/STPJ ADDRESS OF *VOFF*
STPG VFD 60/STPK ADDRESS OF *OFFSET*
STPH VFD 60/STPL ADDRESS OF *ROW*
STPI VFD 60/7 *VLEN* PARAMETER
STPJ VFD 60/0 *VOFF* PARAMETER
STPK VFD 60/0 *OFFSET* PARAMETER
STPL VFD 60/0 *ROW* PARAMETER
END
IDENT CSFSREA
ENTRY CSFSREA
SYSCOM B1
TITLE CSFSREA - *CYBIL* INTERFACE TO *SFSREA$*.
*COMMENT CSFSREA - *CYBIL* INTERFACE TO *SFSREA$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
REA SPACE 4,10
*** CSFSREA - *COMPASS* INTERFACE TO *SFSREA$* CALL.
*
* M. L. SWANSON. 84/05/30.
REA SPACE 4,10
*** *CSFSREA* PROVIDES AN INTERFACE TO *SFSREA$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFSREA$*.
REA SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
REA SPACE 4,10
*** CSFSREA - *CYBIL* INTERFACE TO *SFSREA$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFSREA(PANELNAME,INSTRING);
*
* PANELNAME = PANEL TO BE USED FOR INPUT.
* INSTRING = VARIABLE TO WHICH DATA IS RETURNED.
REA SPACE 4,10
** CSFSREA - *COMPASS* INTERFACE TO *SFSREA$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *PANELNAME*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4, 5.
*
* CALLS SFSREA$.
CSFSREA ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 REAA SAVE POINTER TO STACK FRAME
SA7 REAB SAVE STACK LIMIT
SX6 B4
SA6 REAC SAVE STATIC LINK
BX6 X1
SA6 READ SAVE POINTER TO *PANELNAME*
SA2 B5
SX6 X2
SA6 REAG SAVE POINTER TO *INSTRING*
MX4 56 SET UP MASK FOR OFFSET
LX4 18 POSITION MASK
BX6 -X4*X2
LX6 -18
SA6 REAL SAVE OFFSET IN *INSOFF*
SX6 B5+B1
SA6 REAH SAVE ADDRESS OF *INSLEN*
SA1 READ GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFSREA$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 REAA GET POINTER TO STACK FRAME
SA3 REAB GET STACK LIMIT
SA4 REAC GET STATIC LINK
SB2 X2 RETURN IN B2
SB3 X3 RETURN IN B3
SB4 X4 RETURN IN B4
DONE RETURN
REAA VFD 60/0 POINTER TO STACK FRAME
REAB VFD 60/0 STACK LIMIT
REAC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR *SYMPL* PROCEDURE CALL.
READ VFD 60/0 ADDRESS OF *PANELNAME*
REAE VFD 60/REAJ ADDRESS OF *PANLEN*
REAF VFD 60/REAK ADDRESS OF *PANOFF*
REAG VFD 60/0 ADDRESS OF *INSTRING*
REAH VFD 60/0 ADDRESS OF *INSLEN*
REAI VFD 60/REAL ADDRESS OF *INSOFF*
REAJ VFD 60/7 *PANLEN*
REAK VFD 60/0 *PANOFF*
REAL VFD 60/0 *INSOFF*
END
IDENT CSFSSHO
ENTRY CSFSSHO
SYSCOM B1
TITLE CSFSSHO - *CYBIL* INTERFACE TO *SFSSHO$*.
*COMMENT CSFSSHO - *CYBIL* INTERFACE TO *SFSSHO$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SHO SPACE 4,10
*** CSFSSHO - *COMPASS* INTERFACE TO *SFSSHO$* CALL.
*
* M. L. SWANSON. 84/05/16.
SHO SPACE 4,10
*** *CSFSSHO* PROVIDES AN INTERFACE TO *SFSSHO$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFSSHO$*.
SHO SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
SHO SPACE 4,10
*** CSFSSHO - *CYBIL* INTERFACE TO *SFSSHO$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFSSHO(PANELNAME,OUTSTRING,INSTRING);
*
* PANELNAME = NAME OF THE PANEL.
* OUTSTRING = HOLDS VARIABLE FIELD CONTENTS
* PRIOR TO MODIFICATION BY USER.
* INSTRING = HOLDS VARIABLE FIELD CONTENTS
* AFTER MODIFICATION BY USER.
SHO SPACE 4,10
** CSFSSHO - *COMPASS* INTERFACE TO *SFSSHO$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *PANELNAME*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4, 5.
*
* CALLS SFSSHO$.
CSFSSHO ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 SHOA SAVE POINTER TO STACK FRAME
SA7 SHOB SAVE STACK LIMIT
SX6 B4
SA6 SHOC SAVE STATIC LINK
BX6 X1
SA6 SHOD SAVE POINTER TO *PANELNAME*
SA2 B5
SX6 X2
SA6 SHOG SAVE POINTER TO *OUTSTRING*
MX4 56 SET UP MASK FOR OFFSET
LX4 18 POSITION MASK
BX6 -X4*X2
LX6 -18
SA6 SHOO SAVE OFFSET IN *OOFF*
SX6 B5+B1
SA6 SHOH SAVE ADDRESS OF *OLEN*
SA2 X6+B1
SX6 X2
SA6 SHOJ SAVE POINTER TO *INSTRING*
MX4 56 SET UP MASK FOR OFFSET
LX4 18 POSITION MASK
BX6 -X4*X2
LX6 -18
SA6 SHOP SAVE OFFSET IN *INSOFF*
SX6 A2+B1
SA6 SHOK SAVE ADDRESS OF *INSLEN*
SA1 SHOD GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFSSHO$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 SHOA GET POINTER TO STACK FRAME
SA3 SHOB GET STACK LIMIT
SA4 SHOC GET STATIC LINK
SB2 X2 RETURN IN B2
SB3 X3 RETURN IN B3
SB4 X4 RETURN IN B4
DONE RETURN
SHOA VFD 60/0 POINTER TO STACK FRAME
SHOB VFD 60/0 STACK LIMIT
SHOC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR *SYMPL* PROCEDURE CALL.
SHOD VFD 60/0 ADDRESS OF *PANELNAME*
SHOE VFD 60/SHOM ADDRESS OF *PANLEN*
SHOF VFD 60/SHON ADDRESS OF *PANOFF*
SHOG VFD 60/0 ADDRESS OF *OUTSTRING*
SHOH VFD 60/0 ADDRESS OF *OLEN*
SHOI VFD 60/SHOO ADDRESS OF *OOFF*
SHOJ VFD 60/0 ADDRESS OF *INSTRING*
SHOK VFD 60/0 ADDRESS OF *INSLEN*
SHOL VFD 60/SHOP ADDRESS OF *INSOFF*
SHOM VFD 60/7 *PANLEN*
SHON VFD 60/0 *PANOFF*
SHOO VFD 60/0 *OOFF*
SHOP VFD 60/0 *INSOFF*
END
IDENT CSFSWRI
ENTRY CSFSWRI
SYSCOM B1
TITLE CSFSWRI - *CYBIL* INTERFACE TO *SFSWRI$*.
*COMMENT CSFSWRI - *CYBIL* INTERFACE TO *SFSWRI$*
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
WRI SPACE 4,10
*** CSFSWRI - *COMPASS* INTERFACE TO *SFSWRI$* CALL.
*
* M. L. SWANSON. 84/05/30.
WRI SPACE 4,10
*** *CSFSWRI* PROVIDES AN INTERFACE TO *SFSWRI$* BY
* SAVING THE *CYBIL* STACK DISCIPLINE VARIABLES AND
* REFORMATTING THE PARAMETER LIST FOR THE CALL TO THE
* SYMPL ROUTINE, *SFSWRI$*.
WRI SPACE 4,10
** COMMON DECKS.
*CALL COMFCID
WRI SPACE 4,10
*** CSFSWRI - *CYBIL* INTERFACE TO *SFSWRI$*.
*
* CALLING SEQUENCE.
* *CYBIL* CALL -
*
* CSFSWRI(PANELNAME,OUTSTRING);
*
* PANELNAME = PANEL TO BE USED FOR INPUT.
* OUTSTRING = VARIABLE TO WHICH DATA IS RETURNED.
WRI SPACE 4,10
** CSFSWRI - *COMPASS* INTERFACE TO *SFSWRI$* CALL.
*
* ENTRY CONDITIONS
* B1 1
* B2 POINTER TO CALLER'S STACK FRAME
* B3 STACK LIMIT
* B4 STATIC LINK
* X1 POINTER TO *PANELNAME*
* B5 POINTER TO ARGUMENT EXTENSION LIST
* X7 PROCEDURE LINKAGE WORD (RETURN ADDRESS)
*
* EXIT CONDITIONS
* B1 1
* B2 AS ON ENTRY
* B3 AS ON ENTRY
* B4 AS ON ENTRY
* X1 AS X7 ON ENTRY
*
* USES X - 1, 2, 3, 4, 6, 7.
* A - 1, 2, 3, 4, 6, 7.
* B - 1, 2, 3, 4, 5.
*
* CALLS SFSWRI$.
CSFSWRI ENTR ENTRY/EXIT
SB1 1
SX6 B2
SX7 B3
SA6 WRIA SAVE POINTER TO STACK FRAME
SA7 WRIB SAVE STACK LIMIT
SX6 B4
SA6 WRIC SAVE STATIC LINK
BX6 X1
SA6 WRID SAVE POINTER TO *PANELNAME*
SA2 B5
SX6 X2
SA6 WRIG SAVE POINTER TO *OUTSTRING*
MX4 56 SET UP MASK FOR OFFSET
LX4 18 POSITION MASK
BX6 -X4*X2
LX6 -18
SA6 WRIL SAVE OFFSET IN *SOFFSET*
SX6 B5+B1
SA6 WRIH SAVE POINTER TO *SLENGTH*
SA1 WRID GET FIRST WORD ADDRESS OF PARAMETER LIST
RJ =XSFSWRI$
* RESTORE REGISTERS.
SB1 1 RESTORE B1 AFTER *SYMPL* ERROR
SA2 WRIA GET POINTER TO STACK FRAME
SA3 WRIB GET STACK LIMIT
SA4 WRIC GET STATIC LINK
SB2 X2 RETURN IN B2
SB3 X3 RETURN IN B3
SB4 X4 RETURN IN B4
DONE RETURN
WRIA VFD 60/0 POINTER TO STACK FRAME
WRIB VFD 60/0 STACK LIMIT
WRIC VFD 60/0 STATIC LINK
* PARAMETER BLOCK FOR *SYMPL* PROCEDURE CALL.
WRID VFD 60/0 ADDRESS OF *PANELNAME*
WRIE VFD 60/WRIJ ADDRESS OF *PANLEN*
WRIF VFD 60/WRIK ADDRESS OF *PANOFF*
WRIG VFD 60/0 ADDRESS OF *OUTSTRING*
WRIH VFD 60/0 ADDRESS OF *SLENGTH*
WRII VFD 60/WRIL ADDRESS OF *SOFFSET*
WRIJ VFD 60/7 *PANLEN*
WRIK VFD 60/0 *PANOFF*
WRIL VFD 60/0 *SOFFSET*
END
IDENT LCP
ENTRY LCP
ENTRY SFSLIB
ENTRY UCP
SYSCOM B1
TITLE LCP - LOAD CAPSULE.
*COMMENT LCP - LOAD CAPSULE.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
LCP SPACE 4,10
*** LCP - LOAD CAPSULE.
*
* S.D. PAINTER 83/04/25.
LCP SPACE 4,10
*** *LCP* INTERFACES BETWEEN THE FAST DYNAMIC LOADER AND
* THE SCREEN FORMATTING OBJECT ROUTINES TO LOAD PANELS
* STORED AS CAPSULES.
LCP SPACE 4,10
*** CALLING SEQUENCE.
*
* *SYMPL* CALL -
*
* LCP(PANELNAME,PANELADDR,STATUS)
*
* PANELNAME = PANEL TO BE LOADED.
* PANELADDR = RETURNS ADDRESS WHERE LOADED.
* STATUS = RETURNS STATUS.
LCP SPACE 4,10
** LCP - LOAD CAPSULE.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADDRESS OF FIRST PARAMETER.
*
* USES A - 1, 2, 3, 4, 6, 7.
* X - 0, 1, 2, 3, 4, 7.
*
* CALLS =XFDL.LDC, ZFN.
LCP SUBR ENTRY/EXIT
RJ ZFN ZERO FILL NAME PARAMETER
SA6 LCPC PUT NAME INTO LIST FOR FDL CALL
SA6 LCPG PUT NAME INTO ENTRY POINT LIST
SA1 LCPB SET PARMETERS FOR FDL CALL
SA2 A1+B1 SET CAPSULE NAME
SA3 A2+B1 SET LIBRARY LIST ADDRESS
SA4 A3+B1 SET ENTRY POINT LIST ADDRESS
RJ =XFDL.LDC LOAD CAPSULE
SA1 LCPA GET ADDRESS OF SYMPL PARAMTERS
SA1 X1+B1 GET ADDRESS OF VARIABLE PANELADDR
SA2 A1+B1 GET ADDRESS OF VARIABLE LOADSTAT
SA3 LCPG MASK ENTRY POINT ADDRESS OUT OF LIST
MX0 -18
BX7 -X0*X3
SA7 X1 PUT ENTRY POINT ADDRESS INTO PANELADDR
SA6 X2 PUT LOAD STATUS INTO LOADSTAT
EQ LCPX RETURN
LCPA VFD 60/0 ADDRESS OF LIST OF SYMPL PARAM. ADDR.
LCPB VFD 60/0LSFPANEL GROUPNAME
LCPC VFD 60/0 CAPSULE (PANEL) NAME
VFD 42/0,18/LCPD ADDRESS OF LIBRARY LIST
VFD 42/0,18/LCPE ADDRESS OF LIST OF ENTRY POINT ADDR.
LCPD VFD 60/0LPANELIB LIST OF LIBRARIES
VFD 60/0 END OF LIST
LCPE VFD 42/0,18/LCPF LIST OF ADDRESSES OF ENTRY POINT LISTS
VFD 60/0 END OF LIST
LCPF VFD 24/00210001B HEADER WORD OF ENTRY POINT LIST
VFD 36/0
LCPG VFD 60/0 ENTRY POINT NAME AND ADDRESS
TITLE SFSLIB - SPECIFY LIBRARY FOR PANEL CAPSULES.
*** SFSLIB - SPECIFY LIBRARY FOR PANEL CAPSULES.
*
* R.E. DUNBAR. 88/04/06.
SLI SPACE 4,10
*** *SFSLIB* PROVIDES A MEANS TO CHANGE THE PANEL LIBRARY FOR
* PROGRAMS WRITTEN IN HIGHER LEVEL LANGUAGES.
SLI SPACE 4,15
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL SFSLIB(LIBNAME)
*
* *COBOL5* CALL -
*
* ENTER SFSLIB USING LIBNAME.
*
* LIBNAME = LFN OF PANEL LIBRARY.
SLI SPACE 4,10
** SFSLIB - SPECIFY LIBRARY FOR PANEL CAPSULES.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* (X1) = ADRESS OF FIRST PARAMETER.
*
* EXIT NEW LIBRARY NAME SAVED IN *LCPD*.
*
* USES A - 6.
*
* CALLS ZFN.
SFSLIB SUBR ENTRY/EXIT
RJ ZFN ZERO FILL NAME PARAMETER
SA6 LCPD SAVE NEW LIBRARY NAME
EQ SFSLIBX EXIT
TITLE UCP - UNLOAD CAPSULE.
*** UCP - UNLOAD CAPSULE.
*
* S.D. PAINTER 83/04/25.
UCP SPACE 4,10
*** *UCP* INTERFACES BETWEEN THE FAST DYNAMIC UNLOADER AND
* THE SCREEN FORMATTING OBJECT ROUTINES TO UNLOAD PANELS
* STORED AS CAPSULES.
UCP SPACE 4,10
*** CALLING SEQUENCE.
*
* *SYMPL* CALL -
*
* UCP(PANELNAME,PANELADDR,STATUS)
*
* PANELNAME = PANEL TO BE UNLOADED.
* PANELADDR = ADDRESS OF PANEL.
* STATUS = RETURNS STATUS.
UCP SPACE 4,10
** UCP - UNLOAD CAPSULE.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST.
* Y (X1) = ADRESS OF FIRST PARAMETER.
*
* USES A - 1, 2, 4, 6.
* B - 1, 2.
* X - 0, 1, 2, 4, 6.
*
* CALLS =XFDL.ULC, ZFN.
UCP SUBR
SA4 A1+B1 GET ADDRESS OF PANEL ADDRESS
SA4 X4 GET PANEL ADDRESS
MX0 42 MASK OUT SEVEN CHARACTER NAME
BX4 -X0*X4 MASK OUT EIGHTEEN BIT ADDRESS
RJ ZFN ZERO FILL NAME PARAMETER
SA6 LCPC PUT NAME INTO LIST FOR FDL CALL
BX6 X6+X4 PUT NAME/ADDRESS INTO ENTRY POINT LIST
SA6 LCPG
SA1 LCPB SET PARMETERS FOR FDL CALL
SA2 A1+B1 SET CAPSULE NAME
SA4 A2+2 SET ENTRY POINT LIST ADDRESS
RJ =XFDL.ULC UNLOAD CAPSULE
SA1 LCPA GET ADDRESS OF SYMPL PARAMTERS
SA1 X1+2 GET ADDRESS OF VARIABLE UNLOADSTAT
SA6 X1 PUT UNLOAD STATUS INTO UNLOADSTAT
EQ UCPX RETURN
TITLE ZFN - ZERO FILL NAME PARAMETER.
*** ZFN - ZERO FILL NAME PARAMETER.
*
* R.E. DUNBAR. 88/04/06.
ZFN SPACE 4,10
** *ZFN* ZERO FILLS A PANEL OR LIBRARY NAME PARAMETER.
*
* ENTRY (A1) = FWA OF FORMAL PARAMETER LIST OF CALLER.
* (X1) = ADDRESS OF PARAMETER TO BE ZERO FILLED.
*
* USES A - 1, 6.
* B - 1, 2.
* X - 0, 1, 2, 3, 6.
ZFN SUBR ENTRY/EXIT
SB1 1
SX6 A1 SAVE ADDRESS OF PARAMETERS
SA6 LCPA
SA1 X1 GET NAME PARAMATER
MX0 42 MASK OUT SEVEN CHARACTER NAME
BX6 X0*X1
MX0 -6 MASK OFF BLANK FILL
SB2 6 AT LEAST ONE NON-BLANK CHARACTER
LX6 6 START AT SECOND CHARACTER
ZFN1 LX6 6 PROCESS NEXT CHARACTER
BX2 -X0*X6 CHECK FOR BLANK CHARACTER
SX3 X2-1R
NZ X3,ZFN2 IF NOT BLANK
BX6 X0*X6 MASK OFF BLANK CHARACTER
ZFN2 SB2 B2-B1
NZ B2,ZFN1 IF NOT DONE
LX6 18 REPOSITION NAME
EQ ZFNX RETURN
END
IDENT ABORT
ENTRY ABORT
SYSCOM B1
TITLE ABORT - ABORT JOB.
*COMMENT ABORT - ABORT JOB.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
ABORT SPACE 4,10
*** ABORT - ABORT JOB.
*
* R.E. DUNBAR 89/06/07.
ABORT SPACE 4,10
*** *ABORT* PROVIDES *SFLIB* WITH A MEANS TO ABORT THE JOB
* FOR PROGRAMS WRITTEN IN HIGHER LEVEL LANGUAGES.
ABORT SPACE 4,10
*** CALLING SEQUENCE.
*
* *FORTRAN5* CALL -
*
* CALL ABORT
*
* *COBOL5* CALL -
*
* ENTER ABORT.
*
* *SYMPL* CALL -
*
* ABORT;
*
ABORT SPACE 4,10
** ABORT - ABORT JOB.
*
* USES B - 1.
*
* MACROS ABORT.
ABORT SUBR ENTRY/EXIT
SB1 1
ABORT
END
IDENT PLT
ENTRY PLT
SYSCOM B1
TITLE PLT - PANEL LOAD TABLE.
*COMMENT PLT - PANEL LOAD TABLE.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
PLT SPACE 4,10
*** PLT - PANEL LOAD TABLE.
*
* S.D. PAINTER 83/04/25.
PLT SPACE 4,10
*** *PLT* IS THE STORAGE AREA FOR THE PANEL LOAD TABLE
* USED BY THE SCREEN FORMATTING OBJECT ROUTINES TO
* STORE NAMES AND ADDRESSES OF PANELS.
PLT SPACE 4,15
*** CALLING SEQUENCE.
*
* NONE.
PLT SPACE 4,10
** PLT - PANEL LOAD TABLE.
*
PLT VFD 48/0 RESERVED
VFD 12/10 MAXIMUM NUMBER OF CAPSULES
VFD 48/0 RESERVED
VFD 12/0 NUMBER OF CAPSULES PRESENT
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
VFD 60/0 CAPSULE NAME
VFD 60/0 CAPSULE ADDRESS
END
IDENT GFP
ENTRY GFP
SYSCOM B1
TITLE GFP - GENERATE FLOATING POINT VALUE.
*COMMENT GFP - GENERATE FLOATING POINT VALUE.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
GFP SPACE 4,10
*** GFP - GENERATE FLOATING POINT VALUE.
*
* J. R. WARHOL. 84/01/03.
GFP SPACE 4,10
*** *GFP* GENERATES A FLOATING POINT VALUE GIVEN AN INTEGER
* AND A SCALE FACTOR (EXPONENT).
DATA SPACE 4,10
** DATA DEFINITIONS.
VALADDR BSS 1 ADDRESS TO RECEIVE FLOATING POINT VALUE
SFCT SPACE 4,10
** SFCT - SCALE FACTOR CONSTANT TABLE.
SFCT BSS 0
CON 03355134732416677076B 5**-325 UPPER
CON 01756003050311261572B 10**-256 UPPER
CON 05224437760335652043B 10**-192 UPPER
CON 10466735010637062274B 10**-128 UPPER
CON 13735207775211722471B 10** -64 UPPER
CON 0
CON 22456047403722377717B 10** 64 UPPER
CON 25724473510762300351B 10** 128 UPPER
CON 31167007036743234447B 10** 192 UPPER
CON 30435247735376716771B 5** 256 UPPER
CON 02554430410147521675B 5**-325 LOWER
CON 01150623477244210525B 10**-256 LOWER
CON 04426300317330603243B 10**-192 LOWER
CON 07667112025437131766B 10**-128 LOWER
CON 13137232247710714327B 10** -64 LOWER
CON 0
CON 21655155247457665561B 10** 64 LOWER
CON 25124315770633631554B 10** 128 LOWER
CON 30362526520556761123B 10** 192 LOWER
CON 27636750673556710033B 5** 256 LOWER
TITLE MAIN SUBROUTINE.
GFP SPACE 4,10
*** CALLING SEQUENCE.
*
* *SYMPL* CALL -
*
* CONVSTATUS = GFP(ASSEMBLY,SCALE,RESULT)
*
* ASSEMBLY = INTEGER ASSEMBLY.
* SCALE = SCALE FACTOR OF 10 FOR VALUE.
* RESULT = REAL VARIABLE TO RECEIVE RESULT.
* CONVSTATUS = CONVERSION STATUS - 0 IF NO ERRORS.
GFP SPACE 4,15
** GFP - GENERATE FLOATING POINT VALUE.
*
* ENTRY (A1) = FWA OF PARAMETER BLOCK.
* (X1) = ADDRESS OF POSITIVE INTEGER ASSEMBLY.
* ((A1)+1) = ADDRESS OF SCALE FACTOR.
* ((A1)+2) = ADDRESS TO RECEIVE FLOATING POINT VALUE.
*
* EXIT (X6) = 0 IF NO CONVERSION ERRORS.
* .NE. 0 IF CONVERSION ERRORS.
*
* USES X - 1, 3, 4, 6, 7.
* A - 1, 3, 4, 7.
* B - 2, 3.
*
* CALLS ACR, CID, FSV, GSC, M1D, M2D, PGF.
GFP SUBR ENTRY/EXIT
SB1 1
RJ PGF PRESET *GFP*
RJ CID CONVERT INTEGER TO DOUBLE PRECISION
RJ GSC GET SCALING CONSTANT
SX7 B0 IN CASE OF UNDERFLOW
NG X6,GFP6 IF UNDERFLOW
NZ X6,GFP7 IF OVERFLOW
ZR X4,GFP2 IF NO LARGE SCALING CONSTANT NEEDED
GFP1 SA3 A4+10 LEAST SIGNIFICANT BITS OF SCALING CONSTANT
RJ M2D PERFORM DOUBLE PRECISION MULTIPLY
GFP2 SB2 20
LT B3,B2,GFP4 IF NO NEED TO MULTIPLY BY 1E20
SA4 GFPA+20 1E20
* MULTIPLY BY SINGLE PRECISION SCALE CONSTANT.
GFP3 RJ M1D PERFORM SINGLE PRECISION MULTIPLY
SB3 B3-B2
GE B3,B2,GFP3 IF STILL NEED TO MULTIPLY BY 1E20
GFP4 ZR B3,GFP5 IF NO MORE SCALING NEEDED
SA4 GFPA+B3 GET SMALLER SCALING CONSTANT
RJ M1D FINAL SCALING
* CONVERT REAL VALUE TO SINGLE PRECISION.
GFP5 RJ FSV FORM SINGLE PRECISION VALUE
RJ ACR ADJUST VALUE AND CHECK FOR RANGE ERROR
NZ X6,GFP7 IF OVERFLOW
* EXIT WITHOUT ERRORS. (X7) = VALUE.
GFP6 SA1 VALADDR SAVE VALUE
SA7 X1
SX6 B0 EXIT STATUS
EQ GFP RETURN
* EXIT HERE WITH ERRORS.
GFP7 SX6 B1 ERROR STATUS
EQ GFPX RETURN
GFPA BSS 0 POSITIVE POWERS OF 10
CON 1.0E0
CON 1.0E1
CON 1.0E2
CON 1.0E3
CON 1.0E4
CON 1.0E5
CON 1.0E6
CON 1.0E7
CON 1.0E8
CON 1.0E9
CON 1.0E10
CON 1.0E11
CON 1.0E12
CON 1.0E13
CON 1.0E14
CON 1.0E15
CON 1.0E16
CON 1.0E17
CON 1.0E18
CON 1.0E19
CON 1.0E20
TITLE SECONDARY SUBROUTINES.
ACR SPACE 4,15
** ACR - ADJUST VALUE AND CHECK FOR RANGE ERROR.
*
* ENTRY (B7) = EXPONENT OFFSET.
* (X7) = UNADJUSTED FLOATING POINT VALUE.
*
* EXIT (X6) = 0 IF NO OVERFLOW.
* (X7) = ADJUSTED FLOATING POINT VALUE.
*
* USES X - 6, 7.
* A - NONE.
* B - 2, 3.
ACR SUBR ENTRY/EXIT
ZR B7,ACR4 IF NO RANGE CHECK NEEDED
UX7,B2 X7
SB2 B2+B7 ADJUST EXPONENT UP OR DOWN
PL B7,ACR2 IF CHANCE OF OVERFLOW
SB3 -1777B
GE B2,B3,ACR3 IF EXPONENT IS NOT TOO SMALL
SX7 B0 UNDERFLOW
EQ ACR4 EXIT
ACR2 SB3 1777B ADJUST EXPONENT UPWARD
GT B2,B3,ACR5 IF OVERFLOW
* PACK CORRECT EXPONENT.
ACR3 PX7 B2 PACK ADJUSTED EXPONENT
* NORMAL EXIT - NO OVERFLOW.
ACR4 SX6 B0 EXIT STATUS
EQ ACRX RETURN
* OVERFLOW HAS OCCURRED.
ACR5 SX6 B1 ERROR STATUS
EQ ACRX RETURN
CBE SPACE 4,15
** CBE - CHECK FOR BIG EXPONENT.
*
* ENTRY (B3) = ORIGINAL SCALE FACTOR.
*
* EXIT (X6) = 0 IF NO ERRORS.
* .GT. 0 IF OVERFLOW.
* (X4) = SCALING CONSTANT, MOST SIGNIFICANT BITS.
* (A4) = ADDRESS OF SCALING CONSTANT.
* (B3) = ADJUSTED SCALE FACTOR.
* (B7) = SCALE OFFSET.
*
* USES X - 4, 6.
* A - 4.
* B - 2, 3, 7.
CBE SUBR ENTRY/EXIT
SB2 256
LT B3,B2,CBE1 IF SCALE FACTOR .LT. 1E256 (NOT BIG)
SB2 324
GE B3,B2,CBE2 IF OVERFLOW
SA4 SFCT+9 MULTIPLY BY 5E256
SB7 256 SCALE OFFSET
SB3 B3-B7 ADJUSTED SCALE FACTOR
CBE1 SX6 B0 EXIT STATUS
EQ CBEX RETURN
* OVERFLOW HAS OCCURRED.
CBE2 SX6 B1 OVERFLOW STATUS
EQ CBEX RETURN
CID SPACE 4,10
** CID - CONVERT LONG INTEGER TO DOUBLE PRECISION VALUE.
*
* ENTRY (X1) = INTEGER ASSEMBLY. (UP TO 59 BITS).
*
* EXIT (X0) = DP REAL, MOST SIGNIFICANT BITS.
* (X1) = DP REAL, LEAST SIGNIFICANT BITS.
*
* USES X - 0, 1, 4, 7.
* A - NONE.
* B - 2.
CID SUBR ENTRY/EXIT
MX7 -18
BX4 -X7*X1 LOW 18 BITS
BX0 X1
AX0 60-18 SIGN EXTEND UPPER 42 BITS
BX0 X7*X0 EXTRACT SIGN EXTENDED UPPER 42 BITS
BX4 X4+X0 MERGE SIGN EXTENSION BITS WITH FIELD
SB2 18
PX4
AX1 18 LOW MIDDLE 37 BITS
PX1 B2
NX4
NX1
FX0 X1+X4 UPPER HALF
DX1 X1+X4 LOWER HALF
EQ CIDX RETURN
CSC SPACE 4,15
** CSC - COMPUTE SCALING CONSTANT.
*
* ENTRY (B3) = SCALE FACTOR.
*
* EXIT (B3) = ADJUSTED SCALE FACTOR.
* (X4) = SCALING CONSTANT, MOST SIGNIFICANT BITS.
* (X4) = 0 IF NO LARGE SCALING CONSTANT IS TO BE USED.
* (A4) = ADDRESS OF SCALING CONSTANT.
*
* USES X - 3, 4.
* A - 4.
* B - 3.
CSC SUBR ENTRY/EXIT
SX3 B3+320
AX3 6 EXP/64+4
SA4 SFCT+X3
ZR X4,CSCX IF EXPONENT IS 0 TO 64
BX3 -X3
SB3 B3+320
LX3 6
SB3 B3+X3
EQ CSCX RETURN
CSE SPACE 4,15
** CSE - CHECK FOR SMALL EXPONENT.
*
* ENTRY (B3) = ORIGINAL SCALE FACTOR.
*
* EXIT (X6) = 0 IF NO ERRORS.
* (X6) .LT. 0 IF UNDERFLOW.
* (X4) = SCALING CONSTANT, MOST SIGNIFICANT BITS.
* (A4) = ADDRESS OF SCALING CONSTANT.
* (B3) = ADJUSTED SCALE FACTOR.
* (B7) = SCALE OFFSET.
*
* USES X - 4, 6.
* A - 4.
* B - 2, 3, 7.
CSE SUBR ENTRY/EXIT
SB2 -256
GT B3,B2,CSE1 IF SCALE FACTOR .GT. 1E-256 (NOT SMALL)
SB2 -325
LT B3,B2,CSE2 IF UNDERFLOW
SA4 SFCT MULTIPLY BY 5E-325
SB7 -325 SCALE OFFSET
SB3 B3-B7 ADJUSTED SCALE FACTOR
CSE1 SX6 B0 EXIT STATUS
EQ CSEX RETURN
* UNDERFLOW HAS OCCURRED.
CSE2 SX6 -1 UNDERFLOW STATUS
EQ CSEX RETURN
FSV SPACE 4,10
** FSV - FORM SINGLE PRECISION VALUE.
*
* ENTRY (X0) = DP REAL, MOST SIGNIFICANT BITS.
* (X1) = DP REAL, LEAST SIGNIFICANT BITS.
*
* EXIT (X7) = SINGLE PRECISION REAL VALUE.
*
* USES X - 0, 4, 7.
* A - NONE.
* B - NONE.
FSV SUBR ENTRY/EXIT
DX4 X0+X1
FX0 X0+X1
RX7 X0+X4
EQ FSVX RETURN
GSC SPACE 4,15
** GSC - GET SCALING CONSTANT.
*
* ENTRY (B3) = ORIGINAL SCALE FACTOR.
*
* EXIT (X6) = 0 IF NO ERRORS.
* (X6) .GT. 0 IF OVERFLOW.
* (X6) .LT. 0 IF UNDERFLOW.
* (X4) = SCALING CONSTANT, MOST SIGNIFICANT BITS.
* (X4) = 0 IF NO LARGE SCALING CONSTANT IS TO BE USED.
* (A4) = ADDRESS OF SCALING CONSTANT.
* (B3) = ADJUSTED SCALE FACTOR.
* (B7) = SCALE OFFSET OR 0 IF NONE.
*
* USES X - 6.
* A - NONE.
* B - 7.
*
* CALLS CBE, CSC, CSE.
GSC SUBR ENTRY/EXIT
SB7 B0 DEFAULT OFFSET
RJ CBE CHECK FOR BIG EXPONENT
NZ X6,GSCX IF OVERFLOW
RJ CSE CHECK FOR SMALL EXPONENT
NZ X6,GSCX IF UNDERFLOW
NZ B7,GSCX IF BIG OR SMALL EXPONENT
RJ CSC COMPUTE SCALING CONSTANT
SX6 B0 EXIT STATUS
EQ GSCX RETURN
M1D SPACE 4,10
** M1D - MULTIPLY SINGLE PRECISION BY DOUBLE PRECISION NUMBER.
*
* ENTRY (X4) = SINGLE PRECISION VALUE.
* (X0) = DP NUMBER, MOST SIGNIFICANT BITS.
* (X1) = DP NUMBER, LEAST SIGNIFICANT BITS.
*
* USES X - 0, 1, 2, 3.
* A - NONE.
* B - NONE.
M1D SUBR ENTRY/EXIT
FX3 X1*X4 (AL*B)U
FX1 X0*X4 (AU*B)U
DX0 X0*X4 (AU*B)L
FX3 X3+X0 ((AL*B)U+(AU*B)L)U
FX0 X3+X1 ((AL*B)U+(AU*B)L+(AU*B)U)U
DX1 X3+X1 ((AL*B)U+(AU*B)L+(AU*B)U)L
EQ M1DX RETURN
M2D SPACE 4,15
** M2D - MULTIPLY TWO DOUBLE PRECISION NUMBERS.
*
* ENTRY (X4) = FIRST NUMBER, MOST SIGNIFICANT BITS.
* (X3) = FIRST NUMBER, LEAST SIGNIFICANT BITS.
* (X0) = SECOND NUMBER, MOST SIGNIFICANT BITS.
* (X1) = SECOND NUMBER, LEAST SIGNIFICANT BITS.
*
* EXIT (X0) = RESULT, MOST SIGNIFICANT BITS.
* (X1) = RESULT, MOST SIGNIFICANT BITS.
*
* USES X - 0, 1, 2, 3, 4, 6.
* A - NONE.
* B - NONE.
M2D SUBR ENTRY/EXIT
FX2 X3*X0 (AL*BU)U
FX1 X4*X1 (AU*BL)U
FX3 X4*X0 (AU*BU)U
FX2 X2+X1 ((AL*BU)U+(AU*BL)U)U
DX0 X4*X0 (AU*BU)L
FX1 X2+X0 (((AL*BU)+(AU*BL))U+(AU*BU)L)U
FX0 X1+X3 (((AL*BU)+(AU*BL))U+(AU*BU)L+(AU*BU)U)U
DX1 X1+X3 (((AL*BU)+(AU*BL))U+(AU*BU)L+(AU*BU)U)L
EQ M2DX RETURN
PGF SPACE 4,15
** PGF - PRESET *GFP*.
*
* ENTRY (A1) = FWA OF PARAMETER BLOCK.
* (X1) = ADDRESS OF INTEGER ASSEMBLY.
* ((A1)+1) = ADDRESS OF SCALE FACTOR.
* ((A1)+2) = ADDRESS TO RECEIVE FLOATING POINT VALUE.
*
* EXIT (B3) = SCALE FACTOR.
* (X1) = INTEGER ASSEMBLY.
* (VALADDR) = ADDRESS FOR FLOATING POINT VALUE.
*
* USES X - 1, 2, 3, 6.
* A - 1, 2, 3, 6.
* B - 3.
PGF SUBR ENTRY/EXIT
SA2 A1+B1 SAVE SCALE FACTOR
SA3 X2
SB3 X3
SA2 A2+B1 SAVE ADDRESS FOR FLOATING POINT VALUE
BX6 X2
SA6 VALADDR
SA1 X1 INTEGER ASSEMBLY
EQ PGFX RETURN
END