; ; file : e80pm.asm.text ; date : 17-August-1983 kb ; ; must add to OS and to System Vector : ; ; 1) address of protocol dispatcher (SVprtdsp) ; 2) address of the 6 protocol manager routers ; - SVpmatch ; - SVpmdtch ; - SVpmsend ; - SVpmrecv ; - SVpmdpnd ; - SVpmstat ; ; include '/ccos/os.gbl.asm.text' (not listed) list 0 include '/ccos/os.gbl.asm.text' list 1 ; temp defs - for development ; pSysVec EQU $1BA ;ptr to temp sys vector ptr SVprtdsp EQU 0 ;ptr to protocol dispatcher SVpmatch EQU 4 ;ptr to pmgr Attach router SVpmdtch EQU 8 ;ptr to pmgr Detach router SVpmsend EQU 12 ;ptr to pmgr Send router SVpmrecv EQU 16 ;ptr to pmgr Receive router SVpmdpnd EQU 20 ;ptr to pmgr Dependent router SVpmstat EQU 24 ;ptr to pmgr Status router ; function and procedures ; GLOBAL xPDuser,xAttach,xDetach,xSend,xRecv,xDpndnt,xStatus ; ;xPDuser - call protocol dispatcher via the System Vector ; xPDuser MOVEQ #SVprtdsp, D0 BRA.S CallSystem ;xAttach - call protocol manager Attach router via the System Vector ; xAttach MOVEQ #SVpmatch, D0 BRA.S CallSystem ;xDetach - call protocol manager Detach router via the System Vector ; xDetach MOVEQ #SVpmdtch, D0 BRA.S CallSystem ;xSend - call protocol manager Send router via the System Vector ; xSend MOVEQ #SVpmsend, D0 BRA.S CallSystem ;xRecv - call protocol manager Receive router via the System Vector ; xRecv MOVEQ #SVpmrecv, D0 BRA.S CallSystem ;xDpndnt - call protocol manager Dependent router via the System Vector ; xDpndnt MOVEQ #SVpmdpnd, D0 BRA.S CallSystem ;xStatus - call protocol manager Status router via the System Vector ; xStatus MOVEQ #SVpmstat, D0 ; ; goto system function via System Vector specified ; ; Enter: D0 = system vector index to function address ; CallSystem MOVEA.L pSysVec.W, A0 ;**temp ;;;; MOVEA.L pSysCom.W, A0 ;get address of system vector ;;;; MOVEA.L SCjtable(A0), A0 ;from syscom table MOVEA.L 0(A0,D0), A0 ;addr of procedure or function JMP (A0) ;call it then exit END