|
DataMuseum.dkPresents historical artifacts from the history of: MIKADOS |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about MIKADOS Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 3552 (0xde0) Notes: Mikados TextFile, Mikados_K Names: »RELEAS«
└─⟦38ff28550⟧ Bits:30004682 Pascal Standard Assembler til MIKADOS └─ ⟦this⟧ »RELEAS«
;************************************************************* ;* PASCAL STANDARD ASSEMBLER PACKAGE. * ;* * ;* (C) 1980 DANSK DATA ELEKTRONIK APS. * ;************************************************************* ; ;************************************************************* ;* PROCEDURE NAME: RELEAS * ;************************************************************* ; ; CT 07-MAY-1980 ; ;============================================================= ; DESCRIPTION: ; THIS PROCEDURE IS USED TO RELEASE A SYMBOLIC RESOURCE. ; PLEASE REFER TO THE PASCAL STANDARD ASSEMBLER PACKAGE MANUAL ; SECTION 7.2 FOR DETAILS. ; ;------------------------------------------------------------- ; STACK CONTENTS ON ENTRY: I I ; I---------------I ; I RETURN ADR. I ; I---------------I ; I -> STATUS I ; I---------------I ; I -> RESOURCE I ; I---------------I ; I I ;------------------------------------------------------------- ; STACK CONTENTS ON EXIT: EMPTY ;============================================================= SKIP RELEAS:: ; ;GET PARAMETERS FROM PASCAL AND BUILD PARAMETERS FOR RELSE ; POP D ;DE=RETURN ADDRESS POP H ;HL->STATUS SHLD STADR ;SAVE ADDRESS OF STATUS POP H ;HL->RESOURCE(0) PUSH D ;PUT RETURN ADDRESS ON STACK PUSH H ;SAVE ADDRESS OF RESOURCE PARAMETER ; ;BLANK RESOUR ; MVI A,#10 ;A:=LENGTH OF FIELD TO BE BLANKED LXI H,RESOUR ;HL->FIELD TO BE BLANKED CALL E0LIN ;BLANK IT! ; ;MOVE RESOURCE PARAMETER TO RESOUR ; POP H ;HL->RESOURCE(0) I.E. THE LENGTH OF ; THE RESOURCE STRING MOV B,M ;B=LENGTH OF STRING TO BE MOVED INX H ;HL->RESOURCE(1) XCHG ;DE->RESOURCE PARAMETER LXI H,RESOUR ;HL->DESTINATION STRING CALL MOVE ;MOVE IT! ; ;GET THE LAST TWO CHARACTERS OF THE RESOURCE NAME ; LHLD RESOUR+8 ;HL:=LAST TWO CHARACTERS OF RESOURCE PUSH H ;PUSH LAST TWO CHARACTERS OF RESOURCE LXI H,RESOUR ;HL->RESOUR PUSH H ;PUSH ADDRESS OF RESOURCE CALL RELSE ; ;UPON RETURN FROM RELSE REGISTER A CONTAINS STATUS VALUE ; LHLD STADR ;HL->STATUS MOV M,A INX H MVI M,0 ;STORE STATUS VALUE RET SKIP ;******* LOCAL DATA ******** STADR: DS 2 ;ADDRESS OF STATUS RESOUR:DS #10 ;RESOURCE NAME END