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: 1812 (0x714) Types: TextFile Names: »CANCEL.S«
└─⟦f81e11cf7⟧ Bits:30005196 8" CR80 Floppy CR80FD_0194 ( CR/D/2497 TEST-TDX VS0102 Source moduler Att. Holger Bay 820208/AEK ) └─⟦d066df9e9⟧ └─ ⟦this⟧ »CANCEL.S«
«ff» "CANCEL.S " "----------------" «ff» PROCEDURE LIST_CANCELLED(OP : INIT_OPERATION_TYPE); BEGIN WRITETEXT('OPERATION (:0:)'); WRITEHEX (OP.OPREF); WRITETEXT(' ON CRID (:0:)'); WRITEHEX (OP.CRID); WRITETEXT(' CANCELLED.(:0:)'); WRITENL; END; " LIST_CANCELLED " PROCEDURE INT_CANCEL(PC, SP : INTEGER;VAR CC : COMPLETION_CODE); "********************************************************************** AUTHOR: TLM DATE: 810421 *********************************************************************** COMMENTS: **********************************************************************" CONST TDX_TIMEOUT = #607; VAR CRID : INTEGER; OPREF : OPERATION_REFERENCE; I : INTEGER; BEGIN VM := CODE[PC + XVARMASK]; GET_PARAMETER(VM, 1, PC, SP, CRID); GET_PARAMETER(VM, 2, PC, SP, OPREF); IF CRID <> 0 THEN BEGIN "CANCEL ALL INITIATED READ OPS. ON THIS CRID" FOR I := 1 TO MAX_INIT_OPS DO BEGIN IF (INIT_OPERATIONS[I].OCCUPIED) AND (INIT_OPERATIONS[I].CRID = CRID) AND (INIT_OPERATIONS[I].KIND = INIT_READ_KD) THEN BEGIN CANCEL_OPERATION(INIT_OPERATIONS[I].OPREF, CC); LIST_CANCELLED(INIT_OPERATIONS[I]); INIT_OPERATIONS[I].OCCUPIED := FALSE; END; END END ELSE BEGIN CANCEL_OPERATION(OPREF, CC); FOR I := 1 TO MAX_INIT_OPS DO BEGIN IF INIT_OPERATIONS[I].OCCUPIED AND (INIT_OPERATIONS[I].OPREF = OPREF) THEN BEGIN LIST_CANCELLED(INIT_OPERATIONS[I]); INIT_OPERATIONS[I].OCCUPIED := FALSE; END; END; END; IF CC = TDX_TIMEOUT THEN CC := IO_OK; END; " INT_CANCEL " «a5»