M204EX TITLE ' M204EX CAP CALLS #00010001 C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** TO M204 HOST LANGUAGE ROUTINES' 00020000 *TITLEM204EX -- CAP M204 ROUTINES 00030001 *A AUTHOR BOB KELLY 00040000 *A DESIGNER BOB KELLY 00050000 *A LANGUAGE S/370 ASSEMBLER H 00060000 *A SYSTEM IBM (SEE CRAY) 00070000 *A WRITTEN 07-30-85 00080000 *A 00090000 *A CALL M204EX (CODE,P1....PN) 00100001 *A 00110000 *A CODE I4 INTEGER CODE REFLECTING THE DESIRED M204 ROUTINE 00120000 *A P1 PARAMETERS PASSED TO M204 UNCHANGED 00130000 *A . 00140000 *A . 00150000 *A PN 00160000 * 00170000 R0 EQU 0 00180000 R1 EQU 1 00190000 R2 EQU 2 00200000 R3 EQU 3 00210000 R4 EQU 4 00220000 R5 EQU 5 00230000 R6 EQU 6 00240000 R7 EQU 7 00250000 R8 EQU 8 00260000 R9 EQU 9 00270000 R10 EQU 10 00280000 R11 EQU 11 00290000 R12 EQU 12 00300000 R13 EQU 13 00310000 R14 EQU 14 00320000 R15 EQU 15 00330000 EJECT 00340001 M204EX CSECT 00350001 M204EX RMODE 24 00360001 M204EX AMODE ANY 00370001 USING *,R15 00380000 B START 00390000 DC X'06',C'M204EX ' 00400001 START STM R14,R12,12(R13) STANDARD 00410001 LR R12,R15 00420000 DROP R15 00430000 USING M204EX,R12 00440001 LA R2,REGSAV 00450000 ST R13,4(R2) 00460000 ST R2,8(R13) 00470000 LR R13,R2 00480000 * 00490000 LA R4,MNEXT GET IN 24BIT MODE 00500000 LA R5,RETURNIT 00510000 BSM R5,R4 00520000 MNEXT EQU * 00530001 ST R5,RETADD 00540000 * 00550000 L R2,0(R1) ADDRESS OF ROUTINE NO. 00560000 L R3,0(R2) ROUTINE NO. 00570000 C R3,RMAX IS IT BIGGER THAN AVAILABLE? 00580001 BNH M001 IF NOT, CONTINUE 00590001 L R4,4(R1) ADDRESS OF M204 RETURN CODE 00600001 L R5,BADCODE 00610001 ST R5,0(R4) SAVE RETURN CODE FOR CALLED 00620001 B M999 00630001 M001 EQU * 00640001 BCTR R3,0 DECREMENT BY 1 00650000 SLL R3,2 MULT NO BY 4 00660001 L R15,RSTART(R3) 00670000 LA R1,4(R1) GET TO M204 PARAMETERS 00680001 BALR R14,R15 CALL M204 00690000 * 00700000 M999 EQU * 00710001 L R5,RETADD GO BACK TO CALLER'S MODE 00720000 BSM 0,R5 00730000 RETURNIT EQU * STANDARD 00740001 * 00750000 L R13,4(R13) 00760000 L R14,12(R13) 00770000 LM R1,R12,24(R13) 00780000 BR R14 00790000 EJECT 00800001 REGSAV DC 18F'0' 00810001 RETADD DC F'0' 00820001 BADCODE DC F'9999' 00830001 * 00840001 *** VALID M204 PROGRAMS 00850001 * 00860001 RSTART EQU * 00870001 P1 DC V(IFCALL) 00880001 P2 DC V(IFCHKPT) 00890001 P3 DC V(IFDTHRD) 00900001 P4 DC V(IFEPRM) 00910001 P5 DC V(IFERR) 00920001 P6 DC V(IFFNSH) 00930001 P7 DC V(IFGERR) 00940001 P8 DC F'0' 00950001 P9 DC V(IFRPRM) 00960001 P10 DC V(IFSPRM) 00970001 P11 DC V(IFSTHRD) 00980001 P12 DC V(IFSTRT) 00990001 P13 DC V(IFSTRTN) 01000001 P14 DC V(IFUTBL) 01010001 P15 DC V(IFCLOSE) 01020001 P16 DC V(IFDELF) 01030001 P17 DC V(IFDFLD) 01040001 P18 DC V(IFDISP) 01050001 P19 DC V(IFFLS) 01060001 P20 DC V(IFINIT) 01070001 P21 DC V(IFNFLD) 01080001 P22 DC V(IFOPENX) 01090001 P23 DC V(IFRFLD) 01100001 P24 DC V(IFOPEN) 01110001 P25 DC V(IFCOUNT) 01120001 P26 DC V(IFDEQL) 01130001 P27 DC V(IFENQL) 01140001 P28 DC V(IFDSET) 01150001 P29 DC V(IFFILE) 01160001 P30 DC V(IFFIND) 01170001 P31 DC V(IFFINDC) 01180001 P32 DC V(IFFINDE) 01190001 P33 DC V(IFFNDX) 01200001 P34 DC V(IFFNDXC) 01210001 P35 DC V(IFFNDXE) 01220001 P36 DC V(IFLIST) 01230001 P37 DC V(IFBREC) 01240001 P38 DC V(IFDREC) 01250001 P39 DC V(IFDVAL) 01260001 P40 DC V(IFGET) 01270001 P41 DC V(IFGETC) 01280001 P42 DC V(IFGETE) 01290001 P43 DC V(IFGETX) 01300001 P44 DC V(IFGETXE) 01310001 P45 DC V(IFMORE) 01320001 P46 DC V(IFMOREC) 01330001 P47 DC V(IFMOREE) 01340001 P48 DC V(IFMOREX) 01350001 P49 DC V(IFMORXE) 01360001 P50 DC V(IFPOINT) 01370001 P51 DC V(IFPROL) 01380001 P52 DC V(IFPUT) 01390001 P53 DC V(IFPUTC) 01400001 P54 DC V(IFPUTE) 01410001 P55 DC V(IFRRFL) 01420001 P56 DC V(IFDEQ) 01430001 P57 DC V(IFENQ) 01440001 P58 DC V(IFFLUSH) 01450001 P59 DC V(IFATTN) 01460001 P60 DC V(IFDIAL) 01470001 P61 DC V(IFDIALN) 01480001 P62 DC V(IFHNGUP) 01490001 P63 DC V(IFREAD) 01500001 P64 DC V(IFWRITE) 01510001 P65 DC V(IFSORT) 01520001 RMAX DC A((*-RSTART)/4) 01530001 LTORG 01540001 END 01550001