DataMuseum.dk

Presents historical artifacts from the history of:

MIKADOS

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about MIKADOS

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦584af8866⟧ TextFile

    Length: 4320 (0x10e0)
    Types: TextFile
    Notes: Mikados_K
    Names: »RESERV.K«

Derivation

└─⟦33b8385fd⟧ Bits:30009009 PSAP1
    └─⟦this⟧ »RESERV.K« 

Mikados K File

;*************************************************************
;*         PASCAL STANDARD ASSEMBLER PACKAGE.                *
;*                                                           *
;* (C) 1980 DANSK DATA ELEKTRONIK APS.                       *
;*************************************************************
;
;*************************************************************
;* PROCEDURE NAME:      RESERV                               *
;*************************************************************
;
; CT 07-MAY-1980
;
;=============================================================
; DESCRIPTION:
; THIS PROCEDURE IS USED TO RESERVE A SYMBOLIC RESOURCE.
; PLEASE REFER TO THE PASCAL STANDARD ASSEMBLER PACKAGE MANUAL
; SECTION 7.1 FOR DETAILS.
;
;-------------------------------------------------------------
; STACK CONTENTS ON ENTRY:     I               I
;                              I---------------I
;                              I RETURN ADR.   I
;                              I---------------I
;                              I -> STATUS     I
;                              I---------------I
;                              I     WAIT      I
;                              I---------------I
;                              I   EXCLUSIVE   I
;                              I---------------I
;                              I -> RESOURCE   I
;                              I---------------I
;                              I               I
;-------------------------------------------------------------
; STACK CONTENTS ON EXIT:      EMPTY
;=============================================================
 
       SKIP
RESERV::
 
;
;GET PARAMETERS FROM PASCAL AND BUILD PARAMETERS FOR RESRV
;
       POP     H       ;HL=RETURN ADDRESS
       SHLD    RETADR  ;SAVE RETURN ADDRESS
       POP     H       ;HL->STATUS
       SHLD    STADR   ;SAVE ADDRESS OF STATUS
       POP     H       ;HL (BIT 0) = WAIT
       MOV     A,L     ;A  (BIT 0) = WAIT
       RLC             ;A  (BIT 1) = WAIT
       POP     H       ;HL (BIT 0) = EXCLUSIVE
       ORA     L       ;A  (BIT 1,0) = WAIT,EXCLUSIVE
       MOV     L,A     ;HL (BIT 1,0) = WAIT,EXCLUSIVE
       XTHL            ;PUSH SUBPARAMETERS ;HL->RESOURCE(0)
       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    RESRV
 
;
;UPON RETURN FROM RESRV REG. A CONTAINS STATUS VALUE
;
       LHLD    STADR   ;HL->STATUS
       MOV     M,A
       INX     H
       MVI     M,0     ;STORE STATUS VALUE
 
;
;RETURN
;
       LHLD    RETADR  ;HL=RETURN ADDRESS
       PCHL
 
       SKIP
;******* LOCAL DATA ********
RETADR:DS      2       ;RETURN ADDRESS
STADR: DS      2       ;ADDRESS OF STATUS
RESOUR:DS      #10     ;RESOURCE NAME
       
       END

Mikados K File

0x0000…0040 Line {l1=0x3e, l2=»;*************************************************************«, l3=0x3e}
0x0040…0080 Line {l1=0x3e, l2=»;*         PASCAL STANDARD ASSEMBLER PACKAGE.                *«, l3=0x3e}
0x0080…00c0 Line {l1=0x3e, l2=»;*                                                           *«, l3=0x3e}
0x00c0…0100 Line {l1=0x3e, l2=»;* (C) 1980 DANSK DATA ELEKTRONIK APS.                       *«, l3=0x3e}
0x0100…0140 Line {l1=0x3e, l2=»;*************************************************************«, l3=0x3e}
0x0140…0143 Line {l1=0x01, l2=»;«, l3=0x01}
0x0143…0183 Line {l1=0x3e, l2=»;*************************************************************«, l3=0x3e}
0x0183…01c3 Line {l1=0x3e, l2=»;* PROCEDURE NAME:      RESERV                               *«, l3=0x3e}
0x01c3…0203 Line {l1=0x3e, l2=»;*************************************************************«, l3=0x3e}
0x0203…0206 Line {l1=0x01, l2=»;«, l3=0x01}
0x0206…0218 Line {l1=0x10, l2=»; CT 07-MAY-1980«, l3=0x10}
0x0218…021b Line {l1=0x01, l2=»;«, l3=0x01}
0x021b…025b Line {l1=0x3e, l2=»;=============================================================«, l3=0x3e}
0x025b…026b Line {l1=0x0e, l2=»; DESCRIPTION:«, l3=0x0e}
0x026b…02a5 Line {l1=0x38, l2=»; THIS PROCEDURE IS USED TO RESERVE A SYMBOLIC RESOURCE.«, l3=0x38}
0x02a5…02e5 Line {l1=0x3e, l2=»; PLEASE REFER TO THE PASCAL STANDARD ASSEMBLER PACKAGE MANUAL«, l3=0x3e}
0x02e5…0301 Line {l1=0x1a, l2=»; SECTION 7.1 FOR DETAILS.«, l3=0x1a}
0x0301…0304 Line {l1=0x01, l2=»;«, l3=0x01}
0x0304…0344 Line {l1=0x3e, l2=»;-------------------------------------------------------------«, l3=0x3e}
0x0344…0376 Line {l1=0x30, l2=»; STACK CONTENTS ON ENTRY:     I               I«, l3=0x30}
0x0376…03a8 Line {l1=0x30, l2=»;                              I---------------I«, l3=0x30}
0x03a8…03da Line {l1=0x30, l2=»;                              I RETURN ADR.   I«, l3=0x30}
0x03da…040c Line {l1=0x30, l2=»;                              I---------------I«, l3=0x30}
0x040c…043e Line {l1=0x30, l2=»;                              I -> STATUS     I«, l3=0x30}
0x043e…0470 Line {l1=0x30, l2=»;                              I---------------I«, l3=0x30}
0x0470…04a2 Line {l1=0x30, l2=»;                              I     WAIT      I«, l3=0x30}
0x04a2…04d4 Line {l1=0x30, l2=»;                              I---------------I«, l3=0x30}
0x04d4…0506 Line {l1=0x30, l2=»;                              I   EXCLUSIVE   I«, l3=0x30}
0x0506…0538 Line {l1=0x30, l2=»;                              I---------------I«, l3=0x30}
0x0538…056a Line {l1=0x30, l2=»;                              I -> RESOURCE   I«, l3=0x30}
0x056a…059c Line {l1=0x30, l2=»;                              I---------------I«, l3=0x30}
0x059c…05ce Line {l1=0x30, l2=»;                              I               I«, l3=0x30}
0x05ce…060e Line {l1=0x3e, l2=»;-------------------------------------------------------------«, l3=0x3e}
0x060e…0634 Line {l1=0x24, l2=»; STACK CONTENTS ON EXIT:      EMPTY«, l3=0x24}
0x0634…0674 Line {l1=0x3e, l2=»;=============================================================«, l3=0x3e}
0x0674…0677 Line {l1=0x01, l2=» «, l3=0x01}
0x0677…0684 Line {l1=0x0b, l2=»       SKIP«, l3=0x0b}
0x0684…068e Line {l1=0x08, l2=»RESERV::«, l3=0x08}
0x068e…0691 Line {l1=0x01, l2=» «, l3=0x01}
0x0691…0694 Line {l1=0x01, l2=»;«, l3=0x01}
0x0694…06d0 Line {l1=0x3a, l2=»;GET PARAMETERS FROM PASCAL AND BUILD PARAMETERS FOR RESRV«, l3=0x3a}
0x06d0…06d3 Line {l1=0x01, l2=»;«, l3=0x01}
0x06d3…06fe Line {l1=0x29, l2=»       POP     H       ;HL=RETURN ADDRESS«, l3=0x29}
0x06fe…072b Line {l1=0x2b, l2=»       SHLD    RETADR  ;SAVE RETURN ADDRESS«, l3=0x2b}
0x072b…074f Line {l1=0x22, l2=»       POP     H       ;HL->STATUS«, l3=0x22}
0x074f…077f Line {l1=0x2e, l2=»       SHLD    STADR   ;SAVE ADDRESS OF STATUS«, l3=0x2e}
0x077f…07aa Line {l1=0x29, l2=»       POP     H       ;HL (BIT 0) = WAIT«, l3=0x29}
0x07aa…07d5 Line {l1=0x29, l2=»       MOV     A,L     ;A  (BIT 0) = WAIT«, l3=0x29}
0x07d5…0800 Line {l1=0x29, l2=»       RLC             ;A  (BIT 1) = WAIT«, l3=0x29}
0x0800…0830 Line {l1=0x2e, l2=»       POP     H       ;HL (BIT 0) = EXCLUSIVE«, l3=0x2e}
0x0830…0867 Line {l1=0x35, l2=»       ORA     L       ;A  (BIT 1,0) = WAIT,EXCLUSIVE«, l3=0x35}
0x0867…089e Line {l1=0x35, l2=»       MOV     L,A     ;HL (BIT 1,0) = WAIT,EXCLUSIVE«, l3=0x35}
0x089e…08db Line {l1=0x3b, l2=»       XTHL            ;PUSH SUBPARAMETERS ;HL->RESOURCE(0)«, l3=0x3b}
0x08db…0917 Line {l1=0x3a, l2=»       PUSH    H       ;SAVE ADDRESS OF RESOURCE PARAMETER«, l3=0x3a}
0x0917…091a Line {l1=0x01, l2=» «, l3=0x01}
0x091a…091d Line {l1=0x01, l2=»;«, l3=0x01}
0x091d…092c Line {l1=0x0d, l2=»;BLANK RESOUR«, l3=0x0d}
0x092c…092f Line {l1=0x01, l2=»;«, l3=0x01}
0x092f…096a Line {l1=0x39, l2=»       MVI     A,#10    ;A:=LENGTH OF FIELD TO BE BLANKED«, l3=0x39}
0x096a…099c Line {l1=0x30, l2=»       LXI     H,RESOUR ;HL->FIELD TO BE BLANKED«, l3=0x30}
0x099c…09c0 Line {l1=0x22, l2=»       CALL    E0LIN    ;BLANK IT!«, l3=0x22}
0x09c0…09c3 Line {l1=0x01, l2=» «, l3=0x01}
0x09c3…09c6 Line {l1=0x01, l2=»;«, l3=0x01}
0x09c6…09ea Line {l1=0x22, l2=»;MOVE RESOURCE PARAMETER TO RESOUR«, l3=0x22}
0x09ea…09ed Line {l1=0x01, l2=»;«, l3=0x01}
0x09ed…0a2a Line {l1=0x3b, l2=»       POP     H        ;HL->RESOURCE(0) I.E. THE LENGTH OF«, l3=0x3b}
0x0a2a…0a6a Line {l1=0x3e, l2=»                        ;                  THE RESOURCE STRING«, l3=0x3e}
0x0a6a…0aa3 Line {l1=0x37, l2=»       MOV     B,M      ;B=LENGTH OF STRING TO BE MOVED«, l3=0x37}
0x0aa3…0acd Line {l1=0x28, l2=»       INX     H        ;HL->RESOURCE(1)«, l3=0x28}
0x0acd…0afe Line {l1=0x2f, l2=»       XCHG             ;DE->RESOURCE PARAMETER«, l3=0x2f}
0x0afe…0b2f Line {l1=0x2f, l2=»       LXI     H,RESOUR ;HL->DESTINATION STRING«, l3=0x2f}
0x0b2f…0b52 Line {l1=0x21, l2=»       CALL    MOVE     ;MOVE IT!«, l3=0x21}
0x0b52…0b55 Line {l1=0x01, l2=» «, l3=0x01}
0x0b55…0b58 Line {l1=0x01, l2=»;«, l3=0x01}
0x0b58…0b8b Line {l1=0x31, l2=»;GET THE LAST TWO CHARACTERS OF THE RESOURCE NAME«, l3=0x31}
0x0b8b…0b8e Line {l1=0x01, l2=»;«, l3=0x01}
0x0b8e…0bcc Line {l1=0x3c, l2=»       LHLD    RESOUR+8 ;HL:=LAST TWO CHARACTERS OF RESOURCE«, l3=0x3c}
0x0bcc…0c0b Line {l1=0x3d, l2=»       PUSH    H        ;PUSH LAST TWO CHARACTERS OF RESOURCE«, l3=0x3d}
0x0c0b…0c30 Line {l1=0x23, l2=»       LXI     H,RESOUR ;HL->RESOUR«, l3=0x23}
0x0c30…0c63 Line {l1=0x31, l2=»       PUSH    H        ;PUSH ADDRESS OF RESOURCE«, l3=0x31}
0x0c63…0c79 Line {l1=0x14, l2=»       CALL    RESRV«, l3=0x14}
0x0c79…0c7c Line {l1=0x01, l2=» «, l3=0x01}
0x0c7c…0c7f Line {l1=0x01, l2=»;«, l3=0x01}
0x0c7f…0cb5 Line {l1=0x34, l2=»;UPON RETURN FROM RESRV REG. A CONTAINS STATUS VALUE«, l3=0x34}
0x0cb5…0cb8 Line {l1=0x01, l2=»;«, l3=0x01}
0x0cb8…0cdc Line {l1=0x22, l2=»       LHLD    STADR   ;HL->STATUS«, l3=0x22}
0x0cdc…0cf0 Line {l1=0x12, l2=»       MOV     M,A«, l3=0x12}
0x0cf0…0d02 Line {l1=0x10, l2=»       INX     H«, l3=0x10}
0x0d02…0d2e Line {l1=0x2a, l2=»       MVI     M,0     ;STORE STATUS VALUE«, l3=0x2a}
0x0d2e…0d31 Line {l1=0x01, l2=» «, l3=0x01}
0x0d31…0d34 Line {l1=0x01, l2=»;«, l3=0x01}
0x0d34…0d3d Line {l1=0x07, l2=»;RETURN«, l3=0x07}
0x0d3d…0d40 Line {l1=0x01, l2=»;«, l3=0x01}
0x0d40…0d6b Line {l1=0x29, l2=»       LHLD    RETADR  ;HL=RETURN ADDRESS«, l3=0x29}
0x0d6b…0d78 Line {l1=0x0b, l2=»       PCHL«, l3=0x0b}
0x0d78…0d7b Line {l1=0x01, l2=» «, l3=0x01}
0x0d7b…0d88 Line {l1=0x0b, l2=»       SKIP«, l3=0x0b}
0x0d88…0da6 Line {l1=0x1c, l2=»;******* LOCAL DATA ********«, l3=0x1c}
0x0da6…0dce Line {l1=0x26, l2=»RETADR:DS      2       ;RETURN ADDRESS«, l3=0x26}
0x0dce…0df9 Line {l1=0x29, l2=»STADR: DS      2       ;ADDRESS OF STATUS«, l3=0x29}
0x0df9…0e20 Line {l1=0x25, l2=»RESOUR:DS      #10     ;RESOURCE NAME«, l3=0x25}
0x0e20…0e29 Line {l1=0x07, l2=»       «, l3=0x07}
0x0e29…0e35 Line {l1=0x0a, l2=»       END«, l3=0x0a}
0x0e35…0e40 00 00 63 63 63 63 63 63 63 63 63                                                                  ┆  ccccccccc┆
0x0e40…0e60 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63   ┆cccccccccccccccccccccccccccccccc┆
            […0x14…]

TextFile

>;*************************************************************>>;*         PASCAL STANDARD ASSEMBLER PACKAGE.                *>>;*                                                           *>>;* (C) 1980 DANSK DATA ELEKTRONIK APS.                       *>>;*************************************************************>▶01◀;▶01◀>;*************************************************************>>;* PROCEDURE NAME:      RESERV                               *>>;*************************************************************>▶01◀;▶01◀▶10◀; CT 07-MAY-1980▶10◀▶01◀;▶01◀>;=============================================================>▶0e◀; DESCRIPTION:▶0e◀8; THIS PROCEDURE IS USED TO RESERVE A SYMBOLIC RESOURCE.8>; PLEASE REFER TO THE PASCAL STANDARD ASSEMBLER PACKAGE MANUAL>▶1a◀; SECTION 7.1 FOR DETAILS.▶1a◀▶01◀;▶01◀>;------------------------------------------------------------->0; STACK CONTENTS ON ENTRY:     I               I00;                              I---------------I00;                              I RETURN ADR.   I00;                              I---------------I00;                              I -> STATUS     I00;                              I---------------I00;                              I     WAIT      I00;                              I---------------I00;                              I   EXCLUSIVE   I00;                              I---------------I00;                              I -> RESOURCE   I00;                              I---------------I00;                              I               I0>;------------------------------------------------------------->$; STACK CONTENTS ON EXIT:      EMPTY$>;=============================================================>▶01◀ ▶01◀▶0b◀       SKIP▶0b◀▶08◀RESERV::▶08◀▶01◀ ▶01◀▶01◀;▶01◀:;GET PARAMETERS FROM PASCAL AND BUILD PARAMETERS FOR RESRV:▶01◀;▶01◀)       POP     H       ;HL=RETURN ADDRESS)+       SHLD    RETADR  ;SAVE RETURN ADDRESS+"       POP     H       ;HL->STATUS".       SHLD    STADR   ;SAVE ADDRESS OF STATUS.)       POP     H       ;HL (BIT 0) = WAIT))       MOV     A,L     ;A  (BIT 0) = WAIT))       RLC             ;A  (BIT 1) = WAIT).       POP     H       ;HL (BIT 0) = EXCLUSIVE.5       ORA     L       ;A  (BIT 1,0) = WAIT,EXCLUSIVE55       MOV     L,A     ;HL (BIT 1,0) = WAIT,EXCLUSIVE5;       XTHL            ;PUSH SUBPARAMETERS ;HL->RESOURCE(0);:       PUSH    H       ;SAVE ADDRESS OF RESOURCE PARAMETER:▶01◀ ▶01◀▶01◀;▶01◀\r;BLANK RESOUR\r▶01◀;▶01◀9       MVI     A,#10    ;A:=LENGTH OF FIELD TO BE BLANKED90       LXI     H,RESOUR ;HL->FIELD TO BE BLANKED0"       CALL    E0LIN    ;BLANK IT!"▶01◀ ▶01◀▶01◀;▶01◀";MOVE RESOURCE PARAMETER TO RESOUR"▶01◀;▶01◀;       POP     H        ;HL->RESOURCE(0) I.E. THE LENGTH OF;>                        ;                  THE RESOURCE STRING>7       MOV     B,M      ;B=LENGTH OF STRING TO BE MOVED7(       INX     H        ;HL->RESOURCE(1)(/       XCHG             ;DE->RESOURCE PARAMETER//       LXI     H,RESOUR ;HL->DESTINATION STRING/!       CALL    MOVE     ;MOVE IT!!▶01◀ ▶01◀▶01◀;▶01◀1;GET THE LAST TWO CHARACTERS OF THE RESOURCE NAME1▶01◀;▶01◀<       LHLD    RESOUR+8 ;HL:=LAST TWO CHARACTERS OF RESOURCE<=       PUSH    H        ;PUSH LAST TWO CHARACTERS OF RESOURCE=#       LXI     H,RESOUR ;HL->RESOUR#1       PUSH    H        ;PUSH ADDRESS OF RESOURCE1▶14◀       CALL    RESRV▶14◀▶01◀ ▶01◀▶01◀;▶01◀4;UPON RETURN FROM RESRV REG. A CONTAINS STATUS VALUE4▶01◀;▶01◀"       LHLD    STADR   ;HL->STATUS"▶12◀       MOV     M,A▶12◀▶10◀       INX     H▶10◀*       MVI     M,0     ;STORE STATUS VALUE*▶01◀ ▶01◀▶01◀;▶01◀▶07◀;RETURN▶07◀▶01◀;▶01◀)       LHLD    RETADR  ;HL=RETURN ADDRESS)▶0b◀       PCHL▶0b◀▶01◀ ▶01◀▶0b◀       SKIP▶0b◀▶1c◀;******* LOCAL DATA ********▶1c◀&RETADR:DS      2       ;RETURN ADDRESS&)STADR: DS      2       ;ADDRESS OF STATUS)%RESOUR:DS      #10     ;RESOURCE NAME%▶07◀       ▶07◀
       END
▶00◀▶00◀ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc

Reduced view