TITLE 'MDBS CALL INTERFACE TYPE 03 PROGRAM' ;PROGRAM ; MDBS CALL INTERFACE TYPE 03 PROGRAM ;PROGRAMMER ; ROBERT M. WHITE ;DATE WRITTEN ; AUGUST 27, 1980 ;(C)COPYRIGHT 1980,H & W COMPUTER SYSTEMS, INC. ;PURPOSE ; THIS ROUTINE INTERFACES FOR ALL MDBS CALLS THAT ; LOOK LIKE THE FOLLOWING IN PLI: ; CALL XXX(PARM1,PARM2,RTNCODE); ; WHERE PARM1 GOES INTO THE DE PARAMETER AND PARM2 ; GOES INTO THE HL PARAMETER. ;REMARKS ; THIS MODULE CONTAINS SEVERAL ENTRY POINTS ; WHICH CORRESPOND THE TO THE MDBS FUNCTION ; NAME BEING CALLED. ; DO INITIALIZATION. NAME 'MDBS02' MDBS02: CSEG ; AMS - ADD MEMBER TO SET AMS: DS 0 PUBLIC AMS MVI A,01 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; CMT - CHECK CURRENT MEMBER TYPE. CMT: DS 0 PUBLIC CMT MVI A,04 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; COT - CHECK CURRENT OWNER TYPE. COT: DS 0 PUBLIC COT MVI A,05 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; SMM - SET CURRENT MEMBER BASED ON CURRENT MEMBER SMM: DS 0 PUBLIC SMM MVI A,52 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; SMO - SET CURRENT MEMBER BASED ON CURRENT OWNER SMO: DS 0 PUBLIC SMO MVI A,53 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; SMR - SET CURRENT MEMBER BASED ON CURRENT RECORD. SMR: DS 0 PUBLIC SMR MVI A,54 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; SOM - SET CURRENT OWNER BASED ON CURRENT MEMBER SOM: DS 0 PUBLIC SOM MVI A,56 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; SOO - SET CURRENT OWNER BASED ON CURRENT OWNER. SOO: DS 0 PUBLIC SOO MVI A,57 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; SOR - SET CURRENT OWNER BASED ON CURRENT RECORD. SOR: DS 0 PUBLIC SOR MVI A,58 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; SCO - SET CURRENT OF RUN UNIT BASED ON OWNER SCO: DS 0 PUBLIC SCO MVI A,45 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; SCR - SET CURRENT OF RUN UNIT BASED ON CURRENT RECORD. SCR: DS 0 PUBLIC SCR MVI A,46 ;GET FUNCTION CODE. JMP MAIN ;PROCESS CALL. ; SAVE THE FUNCTION CODE. MAIN: STA FUNC ; MOVE INPUT PARMS INTO OUTPUT PARM LIST. MOV E,M ;GET FIRST PARM. INX H MOV D,M INX H XCHG ;SAVE IT. SHLD PRM3 XCHG MOV E,M ;GET SECOND PARM. INX H MOV D,M INX H XCHG ;SAVE IT. SHLD PRM4 XCHG MOV E,M ;GET RETURN CODE. INX H MOV D,M INX H XCHG ;SAVE IT. SHLD PRM5 ; CALL THE MDBS CALL INTERFACE. LXI H,PRMLST ;POINT TO PARAMETER LIST. JMP MDBSCL ;GO PERFORM THE FUNCTION. EXTRN MDBSCL PAGE ;**************************************************************** ;* PROGRAM CONSTANTS * ;**************************************************************** ; INPUT PARM. DSEG PRMLST: ;PL/1 PARAMETER LIST PRM1: DW FUNC ;FUNCTION CODE PRM2: DW NULCL8 ;BC PARM PRM3: DW 0 ;DE PARM PRM4: DW 0 ;HL PARM PRM5: DW 0 ;RETURN CODE PRM6: DW NULPTR ;BLOCK PTR PRM7: DW NULB15 ;BLOCK LENGTH FUNC: DB 0 NULCL8: DB ' ' NULPTR: DW 0 NULB15: DW 0 END