DATE PROG TRN < < < D E F I N I T I O N S G E N E R A L E S : < < XUNDEF:: VAL -1 < POUR NE DEFINIR QUE LES 'XX...' DANS LES < FICHIERS DE DEFINITION... CALL #SIP DEFINITION CTTE# < < PREPARATION DE L'APPEL DE #SIP UTILITAIRES# : < XXXDEF: VAL XUNDEF XXXLOC: VAL XUNDEF XXXTAB: VAL XUNDEF XXXPRO: VAL XUNDEF CALL #SIP UTILITAIRES# PAGE < < < B A S D E L A M E M O I R E : < < ZERO: EQU $ DZS PEPROG-D+Z $EQU $-2 WORD ENTRY;NILK < < POINT D'ENTREE : < ENTRY: EQU $ LRM A,K WORD DEBUT < POINT D'ENTREE DU PROGRAMME, WORD STACK-DEPILE < INITIALISATION DE LA PILE. PSR A RSR < ON EFFECTUE AINSI UN 'GOTO' 'DEBUT'... PAGE < < < M E S S A G E S : < < TABLE NVPMT:: VAL '0B < 'NVP' D'ACCES A "MT1". MCLOSE: ASCI "!CLOSE" BYTE KEOT;NILK MASIGN: ASCI "!ASSIGN " BYTE NVPMT=FCBA(MOCD;"=";"M";"T";"1";KEOT < < < C O M M O N : < < COMMON COM: EQU $ XXXLOC: VAL YYYCCI CALL #SIP UTILITAIRES# < < GESTION DU DEROULEUR : < DEMMT1: BYTE NVPMT;XFMINI < DEMANDE DE "NON-REWIND" A L'ASSIGN... DEMMT2: BYTE NVPMT;XFMTTM < DEMANDE D'ECRITURE D'UN "TAPE-MARK"... PAGE < < < P I L E D E T R A V A I L : < < STACK: EQU $ DZS 64 PROG PAGE XXXPRO: VAL YYYCCI CALL #SIP UTILITAIRES# < < < P O I N T D ' E N T R E E : < < DEBUT: EQU $ < < INITIALISATION DES REGISTRES : < LRM C,K WORD COM+DEPBAS < POSITIONNEMENT DE 'C', WORD STACK-DEPILE < ET DE 'K'. < < < E N T R Y D E R E B O U C L A G E : < < DEBUT4: EQU $ DEBUT9: EQU $ < < MODIFICATION A PRIORI DU 'PRESC' : < LRM A WORD DEBUT5 < POUR 'XXXPRE'... ACTD XXXPRE < ON CHANGE ALORS SYSTEMATIQUEMENT APRES < PASSAGE ICI LE 'PRESC' DU PROGRAMME, AFIN < DE REVENIR SUR LA VISUALISATION APRES < CHAQUE ALT-MODE (VIA 'DEBUT5'...). < < < E C R I T U R E D ' U N " T A P E - M A R K " : < < LRM A WORD MASIGN BSR ASPCCI < CONNEXION A "MT1" SI CE N'EST DEJA FAIT.. LAD DEMMT1 SVC < DEMANDE DE "NON-REWIND"... LAD DEMMT2 SVC < DEMANDE D'ECRITURE D'UN "TAPE-MARK"... LRM A WORD MCLOSE BSR ASPCCI < ET FERMETURE... QUIT XXQUIT < E T A T T E N T E ... JMP DEBUT9 < VERS LE "TAPE-MARK" SUIVANT... < < < E N T R Y A L T - M O D E : < < DEBUT5: EQU $ QUIT XXQUIT < A T T E N T E ... LRM C,K < ON REINITIALISE 'C' ET 'K' AU CAS < D'UNE RE-ENTREE PAR UN 'ALT-MODE'... WORD COM+DEPBAS < 'C', WORD STACK-DEPILE < 'K'. JMP DEBUT4 < ITERATION SUR ALT-MODE... PAGE < < < T A B L E D E S S Y M B O L E S : < < IF '00000000000@,XEIF%,,XEIF% EST XEIF%: VAL ENDIF DATE END DEBUT