DataMuseum.dkPresents historical artifacts from the history of: CR80 Hard and Floppy Disks |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CR80 Hard and Floppy Disks Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 3410 (0xd52) Types: TextFile Names: »XMITMSG«
└─⟦21011a92c⟧ Bits:30005095 8" CR80 Floppy CR80FD_0052 ( HMDIR 2 VOL: BACKUP MD: ISH.D From: HMDIR*ISH.D ) └─⟦777b1406f⟧ └─ ⟦this⟧ »ISH.D!XMITMSG«
;----------------------------------------------------------------------- ; PROCEDURE "TRANSMIT_MESSAGE"(XMITMSG). ; ; NARRATIVE: ; THE MTCB DELEIVERED BY CALLER (R0),IS UPDATED IN ACCORDANCE TO TYPE ; (NARRATIVE/CONTROL,R1) AND DESTINATION (I.E. ROUTING MASK DESIGNATED ; BY R2),AND ENQUEUED IN THE TRANSPORT QUEUE 'TQ'. ; ; REGISTER USE: ENTRY EXIT ; R0: MTCB INDEX DESTROYED ; R1 MSG TYPE DESTROYED ; R2 DESTINATION DESTROYED ; R3,R4 - DESTROYED ; R7 - DESTROYED ; ; INPUT: DRMASK(DESTINATION) ; MPNMSG/MPCMSG ; ; OUTPUT: TQ ; ; CALLS TO: MIO,MPUTMTCB ; MIO,MENQUE ; MTCB,RELEASEMTCB ; ; RETURNS: LINK+0:DONE ; UREXXX:ERROR ;----------------------------------------------------------------------- ; ;ROUTING ADDRESSES: ;--------------------------------- CURLOC=LOC,LOC=0 ; ADDRESS DESIGNATORS: MINDEST: DESTCIP:LOC=LOC+1 ; TO CIP MAXDEST: DESTSIP:LOC=LOC+1 ; TO SIP LOC=CURLOC ; DRMASK: CIPRMSK0,CIPRMSK1 ; ROUTINGMASK(DESIGNATOR) SIPRMSK0,SIPRMSK1 ; ;----------------------------------------------------------------------- XMITMSG: ;BEGIN XMITMSG MOV R5 RLI100 ; SLO R2 MINDEST ; SLO R2 MAXDEST+1 ; IF DESTINATION UNKNOWN JMPI & S4 URE020 ;E OR SEQP R1 TCTRLMSG ; UNKNOWN MSG TYPE THEN SEQ R1 TNMSG ; JMPI & S4 URE021 ;E REPORT ERROR MOV R2 R4 ; ELSE SLL R4 1 ; X(DEST):=2*DEST. MVP DRMASK.X4 R2 ; READ ROUTINGMASK(DEST.) MVP 1+DRMASK.X4 R3 ; SEQ R1 TCTRLMSG ; SELECT MTCB PARM.BLOCK MODC MPNMSG-MPCMSG ; I.E. NARRATIVE OR MOVC MPCMSG R4 ; CONTROL MSG MTCB PARM.BLOCK ; BEGIN WRITE MTCB MOVL R23 MPRWD4.X4 ; ROUTING MASK MON MIO,MPUTMTCB ; "PUT_MTCB" JMPI & S4 URE001 ;E X0:ERROR,REPORT ERROR ; X1:DONE,R0=MTCB INDEX ; END WRITE MTCB MOV MPRAPR.X4 R2 ; READ QUEUE NO.(PREC) MOVC QDTQ R4 ; QUEUE=TQ MOV R2 QDQN. X4 ; LOAD QUEUE NO. MON MIO,MENQQE ; "ENQQUE"(R0=MTCB,R4=QUEUE) JMPI & S4 URE001 ;E X0:ERROR,REPORT ERROR ; X1:DONE MON MTCB,RELEASEMTCB ; "RELEASE-MTCB"(R0) JMPI & S4 URE002 ; X0:ERROR,REPORT ERROR ; X1:DONE JMPI RLI100 ; RETURN LINK+0 ; ENDIF ;END XMITMSG ;-----------------------------------------------------------------------