|
|
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 - metrics - download
Length: 2528 (0x9e0)
Notes: Mikados TextFile, Mikados_K
Names: »SETPR«
└─⟦38ff28550⟧ Bits:30004682 Pascal Standard Assembler til MIKADOS
└─⟦this⟧ »SETPR«
;*************************************************************
;* PASCAL STANDARD ASSEMBLER PACKAGE. *
;* *
;* (C) 1980 DANSK DATA ELEKTRONIK APS. *
;*************************************************************
;
;*************************************************************
;* PROCEDURE NAME: SETPR *
;*************************************************************
;
; CT 07-MAY-1980
;
;=============================================================
; DESCRIPTION:
; THIS PROCEDURE IS USED TO CHANGE THE PRIORITY OF THE CALLING
; PROCESS.
; PLEASE REFER TO THE PASCAL STANDARD ASSEMBLER PACKAGE MANUAL
; SECTION 5.1 FOR DETAILS.
;
;-------------------------------------------------------------
; STACK CONTENTS ON ENTRY: I I
; I---------------I
; I RETURN ADR. I
; I---------------I
; I NEW PRIORITY I
; I---------------I
; I I
;-------------------------------------------------------------
; STACK CONTENTS ON EXIT: EMPTY
;=============================================================
SKIP
SYMB
SETPR::
;
;DETERMINE ADDRESS OF PRIORITY FIELD IN PCB
;
LHLD RUNN ;HL->PCB
LXI B,PRIO
DAD B ;HL->PCB.PRIO
XCHG ;DE->PCB.PRIO
;
;GET PARAMETER FROM PASCAL PROCEDURE CALL
;
POP H ;HL=RET.ADRESS
XTHL ;HL=NEW PRIORITY
MOV A,L ;A=NEW PRIORITY
;
;TEST VALIDITY OF PRIORITY
;
CPI MINPR ;A<MINPR?
RC ;YES, RETURN
CPI MAXPR ;A>=MAXPR?
RNC ;YES, RETURN
;
;STORE NEW PRIORITY IN PRIORITY FIELD
;
STAX D ;PCB.PRIO=NEW PRIORITY
RET
END