PAGE
IDP "SIP GEN PROCESSEUR"
<
<
< G E N E R A T I O N D U P R O C E S S E U R :
<
<
LOCAL
XXXLOC: EQU $
XXXCCI: WORD 1 < RETOUR AU CCI.
XXXMOK: BYTE '6D;"O"
ASCI "K!" < MESSAGE 'OK!'.
XXXDOK: WORD '0202 < ENVOI DU MESSAGE 'OK'.
WORD XXXMOK-ZERO*2
WORD 4
XXXSGN: WORD '8402 < DEMANDE DE GENERATION DU PROCESSEUR.
WORD BRANCH-ZERO*2 < @OCTET DE LA BRANCHE.
WORD ZERO-BRANCH+PILE-LTNI-LTNI*2
WORD -1
NLS
NOMOV1: @
IF '0006='F700,,XWOR%,
LST
XXXOV1: WORD DEBOV1 < ADRESSE DEBUT OVERLAY 1.
NLS
XWOR%: VAL 0
NOMOV2: @
IF '0006='F700,,XWOR%,
LST
XXXOV2: WORD DEBOV2 < ADRESSE DEBUT OVERLAY 2.
NLS
XWOR%: VAL 0
LST
XXXPIL: DZS 2 < PILE DE GENERATION.
PROG
USE L,XXXLOC+'80
WORD XXXLOC+'80 < VALEUR INITIALE DE LA BASE L.
XXXGEN: EQU $
LRP L < INITIALISATION DE LA BASE L.
LA -1,L
LR A,L
LAD XXXPIL-1 < INITIALISATION DE L'ADRESSE DE PILE.
LR A,K
NLS
NOMOV2: @
IF '0006='F700,,XWOR%,
LST
<
< TENTATIVE DE GENERATION DE L'OVERLAY 2.
<
XXXGN4: EQU $
LB XXXSGN+1
LA XXXOV2 < PLACER SON ADRESSE DE DEBUT.
SLLS 1
STA XXXSGN+1
LAD XXXSGN < GENERATION.
SVC 0
STB XXXSGN+1
JE XXXGN5 < OK ...
<
< ERREUR - L'OVERLAY EXISTE DEJA.
<
LAD XXXCCI < RETOUR CCI.
SVC 0
JMP XXXGN4 < ET REESSAI.
<
< BONNE GENERATION.
<
XXXGN5: EQU $
LAD XXXDOK < ENVOI MESSAGE OK.
SVC 0
LAD XXXCCI < ET RETOUR AU CCI.
SVC 0
NLS
XWOR%: VAL 0
NOMOV1: @
IF '0006='F700,,XWOR%,
LST
<
< TENTATIVE DE GENERATION DE L'OVERLAY 1.
<
XXXGN7: EQU $
LB XXXSGN+1
LA XXXOV1 < PLACER SON ADRESSE DE DEBUT.
SLLS 1
STA XXXSGN+1
LAD XXXSGN < GENERATION.
SVC 0
STB XXXSGN+1
JE XXXGN8 < OK ...
<
< ERREUR - L'OVERLAY EXISTE DEJA.
<
LAD XXXCCI < RETOUR CCI.
SVC 0
JMP XXXGN7 < ET REESSAI.
<
< BONNE GENERATION.
<
XXXGN8: EQU $
LAD XXXDOK < ENVOI MESSAGE OK.
SVC 0
LAD XXXCCI < ET RETOUR AU CCI.
SVC 0
NLS
XWOR%: VAL 0
LST
<
< TENTATIVE DE GENERATION :
<
XXXGN1: EQU $
LAD XXXSGN
SVC 0 < ENVOI DEMANDE DE GENERATION.
JNE XXXGN2 < ERREUR : IL EXISTE DEJA!!!
<
< OK , BONNE GENERATION :
<
LAD XXXDOK
SVC 0 < ENVOI DU MESSAGE OK.
<
< RETOUR DEFINITIF AU CCI :
<
XXXGN3: EQU $
LAD XXXCCI
SVC 0 < RETOUR AU CCI.
JMP XXXGN3 < CAS DES !GO.
<
< CAS DES ERREURS DE GENERATION :
< LE PROCESSEUR EXISTE DEJA:
<
XXXGN2: EQU $
LAD XXXCCI
SVC 0 < RETOUR PROVISOIRE AU CCI.
JMP XXXGN1 < TRY AGAIN LA GENERATION.
END XXXGEN
Copyright © Jean-François COLONNA, 2022-2024.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2022-2024.