
    1                      * OPT PAGE
    4                      * OPT LLEN=120
    5                      * OPT S



    7                      * REV 1.8
    8                      *
    9                      *PROGRAMME MONITEUR POUR MC 6809
   10                      *
   11                      *ASSEMBLE SUR EUROMAK LE 20 JUILLET 1982



   13                      *****************************************
   14                      *PROGRAMME REALISE PAR CLAUDE VICIDOMINI*
   15                      *****************************************
   16                      *SAISI LE 21 JANVIER 2013 PAR F LE DUIGOU
   17                      *FIN DE VERIFICATION LE 26 JANVIER 2013

   19                      *DEFINITION DES FONCTIONS:
   20                      ***P - PUNCH CHARGE UNE ZONE MEMOIRE EN CASSETTE
   21                      ***L - LOAD CHARGE LE CONTENU D'UNE CASSETTE EN MEMOIRE
   22                      ***M - MEMORY EXAMINE ET CHANGE LE CONTENU D'UNE MEMOIRE
   23                      ***AB- ABORT MET SOUS CONTROLE MONITEUR SANS INITIALISATION
   24                      ***R - REGISTER DISPLAY
   25                      *      ORDRE DE VISUALISATION des REGISTRES:CC,A,B,DP,X,Y,U,PC,SP
   26                      *      LE CONTENU DES REGISTRES PEUT ETRE CHANGE A LA DEMANDE
   27                      ***I - INCREMENT
   28                      *      INCREMENTE D'UN PAS LORS D'UNE FONCTION MEMOIRE
   29                      *      VISUALISE UN REGISTRE APRES L'AUTRE LORS D'UNE INTERRUPTION.
   30                      *      STOCKE EN MEMOIRE LA DONNEE RENTREE
   31                      ***G - GO DEMARRE UN PROGRAMME APRES AVOIR PRECISE SON ADRESSE
   32                      *      PERMET D'EFFECTUER UN CALCUL D'OFFSET POUR UN ADRESSAGE
   33                      *      INDEXE OU POUR UN BRANCHEMENT RELATIF
   34                      ***CN- CONTINUE PERMET DE CONTINUER LE DEROULEMENT D'UN PROGRAMME
   35                      *      APRES UN "ABORT".
   36                      ***DN- DECREMENTATION: PERMET DE DECREMENTER D'UN PAS LORS D'UNE
   37                      *      FONCTION MEMOIRE OU DE VISUALISER LES REGISTRES DANS L'AUTRE
   38                      *      SENS.
   39                      ***OF- OFFSET: CALCULE L'OFFSET LONG OU COURT LORS D'UNE
   40                      *      FONCTION MEMOIRE ET LE PLACE AUTOMATIQUEMENT DANS LA
   41                      *      MEMOIRE DE PROGRAMME, PUIS RETOURNE DANS LA FONCTION
   42                      *      MEMOIRE.
   43                      *X-OF- POST OCTET: PERMET DE CALCULER L'OFFSET EN DECIMAL QU'IL FAUT
   44                      *      DONNER AU POST OCTET; LE PROGRAMME LE CALCULE EN HEXA ET LE
   45                      *      PLACE EN MEMOIRE.
   46                      ***BP- BREAKPOINT: INSERE UN SWI2 A UNE ADRESSE SPECIFIEE, VISUALISE
   47                      *      LE CONTENU DES REGISTRES DU MPU, PUIS PLACE L'INSTRUCTION EN MEM
   48                      *      A LA PLACE DU SWI2
   49                      *
   50                      *
   51                      *
   52                      *
   53                      ********************************************************************
   54                      **LA PILE EST LOCALISEE A1 PARTIR DE L'ADRESSE $0780 "JUSQU'A $07CC"
   55                      **LA RAM PART DE L'ADRESSE $0000 JUSQU'A $07AF
   56                      **LE MONITEUR EST LOCALISE ENTRE $E000 ET $E7FF
   57                      **LE PIA EST LOCALISE ENTRE $A004 ET $A007
   58                      ******************************************************************** 
   59                      ********************************************************************
   60                      *  LE RESET EST SITUE A L'ADRESSE $E219.
   61                      *  LA ROUTINE DE NMI EST A L'ADRESSE $E27C.
   62                      *  LE SWI EST A L'ADRESSE $E2A7.
   63                      *  LE SWI2 EST A L'ADRESSE $E27C.
   64                      *  LES AUTRES INTERRUPS SONT DEFINIES DS "EMPLACEMENT DES REGISTRES"
   65                      ********************************************************************
   66   E000                       ORG    $E000
   67                      *
   68                      * SCRUTATION DU CLAVIER *
   69                      *
   70                      *              0   1   2   3
   71   E000 06 05 04 03   KEYTBL  FCB    $06,$05,$04,$03
   72                      *
   73                      *              4   5   6   7
   74   E004 02 01 15 14           FCB    $02,$01,$15,$14
   75                      * 
   76                      *              8   9   A   B
   77   E008 13 12 11 25           FCB    $13,$12,$11,$25
   78                      *
   79                      *              C   D   E   F
   80   E00C 24 23 22 21           FCB    $24,$23,$22,$21



   82                      * CODAGE DES SEGMENTS *
   83                      *
   84                      *              0   1   2   3
   85   E010 7E 06 5B 1F   DIGTBL  FCB    $7E,$06,$5B,$1F
   86                      *
   87                      *              4   5   6   7
   88   E014 27 3D 7D 0E           FCB    $27,$3D,$7D,$0E
   89                      *
   90                      *              8   9   A   B
   91   E018 7F 3F 6F 75           FCB    $7F,$3F,$6F,$75
   92                      *
   93                      *              C   D   E   F
   94   E01C 78 57 79 69           FCB    $78,$57,$79,$69



   96                      **************  GETKEY ROUTINE  **************
   97                      *SCRUTE LES LIGNES ET LES COLONNES DU CLAVIER*
   98                      ************ ALLUME LES AFFICHEURS ***********

  100   E020 34   2C       GETKEY  PSHS   Y,DP,B
  101                00A0          SETDP  $A0
  102   E022 86   A0               LDA    #$A0
  103   E024 1F   8B               TFR    A,DP
  104   E026 8D   53       FINCLA  BSR    DISPRE    ALLUMER LES AFFICHEURS
  105   E028 4F                    CLRA
  106   E029 97   06               STA    <SCNREG   ACCES A DDRA
  107   E02B 97   07               STA    <SCNCNT   ACCES A DDRB
  108   E02D 97   04               STA    <DISREG   PA EN ENTREE
  109   E02F 86   0F               LDA    #$0F
  110   E031 97   05               STA    <DISCNT   PB EN SORTIE
  111   E033 86   04               LDA    #$04
  112   E035 97   06               STA    <SCNREG   ACCES A ORA-DISREG
  113   E037 97   07               STA    <SCNCNT   ACCES A DRB-DISCNT
  114   E039 C6   FF               LDB    #$FF
  115   E03B 5C            LIGSUI  INCB
  116   E03C C1   04               CMPB   #$04      FIN SCRUT. CLAVIER?
  117   E03E 27   E6               BEQ    FINCLA    OUI, SCRUTER AFFICHEURS
  118   E040 D7   05               STB    <DISCNT   NON, SCRUTER LIGNE PAR LIGNE
  119   E042 96   04               LDA    <DISREG
  120   E044 43                    COMA             PAS DE TOUCHE ENFONCEES?
  121   E045 27   F4               BEQ    LIGSUI    OUI, SCRUTER LIGNE SUIV;
  122   E047 F7   07F0             STB    SAVCNT
  123   E04A B7   07F1             STA    SAVREG    NON, TOUCHE ENFONCEE
  124   E04D 4F                    CLRA
  125   E04E C6   01               LDB    #$01
  126   E050 F1   07F1     COLSUI  CMPB   SAVREG    TOUCHE DETECTEE?
  127   E053 27   06               BEQ    DECKEY    OUI, RECONNAITRE LA TOUCHE
  128   E055 4C                    INCA             NON, PASSER A LA COLONNE SUIVANTE
  129   E056 58                    ASLB             TOUTES COLONNES TESTEES?
  130   E057 27   E2               BEQ    LIGSUI    OUI, LIGNE SUIVANTE
  131   E059 20   F5               BRA    COLSUI    NON,COLONNE SUIVANTE


  133                      ************ RECONNAISSANCE DE LA TOUCHE ***********
  134                      *FABRIQUE LE CODE DE RECONNAISSANCE DE LA TOUCHE SI*
  135                      ** ELLE EST APPUYEE ; SUPPRIME LES REBONDISSEMENTS**

  137   E05B F6   07F0     DECKEY  LDB    SAVCNT    NUMERO DE LIGNE
  138   E05E 58                    ASLB
  139   E05F 58                    ASLB
  140   E060 58                    ASLB
  141   E061 58                    ASLB
  142   E062 34   04               PSHS   B         REPERE LIGNE
  143   E064 AB   E0               ADDA   ,S+
  144   E066 34   02               PSHS   A         SAUVEGARDE CODE TOUCHE
  145   E068 108E 0008             LDY    #$0008
  146   E06C 5F            NOREB   CLRB
  147   E06D 96   04       DLY2    LDA    <DISREG
  148   E06F 43                    COMA             REBONDISSEMENT ?
  149   E070 26   FA               BNE    NOREB     OUI, ATTENDRE DISPARITION
  150   E072 5A                    DECB             NON, TEMPO=30MS
  151   E073 26   F8               BNE    DLY2
  152   E075 31   3F               LEAY   -1,Y
  153   E077 26   F4               BNE    DLY2
  154   E079 35   AE               PULS   PC,Y,DP,B,A RETOUR RESET ROUTINE


  156                      ****** ALLUMAGE DES AFFICHEURS ******


  158   E07B 34   16       DISPRE  PSHS   X,B,A
  159   E07D 8E   A004             LDX    #DISREG
  160   E080 4F                    CLRA
  161   E081 A7   02               STA    2,X       ACCES A DDRA
  162   E083 A7   03               STA    3,X       ACCES A DDRB
  163   E085 86   7F               LDA    #$7F
  164   E087 A7   84               STA    ,X        PA EN SORTIE
  165   E089 86   0F               LDA    #$0F
  166   E08B A7   01               STA    1,X       PB0-3 EN SORTIE
  167   E08D 86   04               LDA    #$04
  168   E08F A7   02               STA    2,X       ACCES A PA-DISREG
  169   E091 A7   03               STA    3,X       ACCES A PB-DISCNT
  170   E093 8E   07FA             LDX    #DISBUF
  171   E096 C6   03               LDB    #$03
  172   E098 5C            RECOM   INCB
  173   E099 C1   0A               CMPB   #$0A      TOUS LES AFFICHEURS SCRUTES?
  174   E09B 26   02               BNE    SCRUTA    NON, CONTINUER
  175   E09D 35   96               PULS   PC,X,B,A  OUI, RETOUR SOUS GETKEY


  177                      ****** ALLUMER UN AFFICHEUR APRES L'AUTRE *******


  179   E09F F7   A005     SCRUTA  STB    DISCNT    CHOISIR L'AFFICHEUR
  180   E0A2 A6   80               LDA    ,X+       PRENDRE CARACTERE DS DISBUF
  181   E0A4 43                    COMA
  182   E0A5 B7   A004             STA    DISREG    ALLUMER SEGMENTS
  183   E0A8 86   A0               LDA    #$A0
  184   E0AA 4A            DLY1    DECA
  185   E0AB 26   FD               BNE    DLY1      DUREE #1MS
  186   E0AD 20   E9               BRA    RECOM     ALLUMER TOUS LES AFFICHEURS


  188                      *** CHARGEMENT DE L'ADRESSE DANS X ***


  190   E0AF 1E   89       FADDRX  EXG    A,B
  191   E0B1 1F   01               TFR    D,X       D=X=ADRESSE PROGRAMME
  192   E0B3 35   86               PULS   PC,B,A


  194                      ****** FABRICATION DES ADRESSES ******


  196   E0B5 34   06       BADDR   PSHS   B,A
  197   E0B7 4F                    CLRA
  198   E0B8 5F                    CLRB
  199   E0B9 FD   07FA             STD    DISBUF
  200   E0BC FD   07FC             STD    DISBUF+2  4 PREMIERS DIGITS=0
  201   E0BF 8E   07FA             LDX    #DISBUF   POINTER SUR DISBUF
  202   E0C2 8D   08               BSR    HEXIN7    AFFICHE 2 PREMIERS CHIFFRES
  203   E0C4 34   02               PSHS   A
  204   E0C6 8D   04               BSR    HEXIN7    AFFICHE 3e ET 4e CHIFFRE
  205   E0C8 35   04               PULS   B
  206   E0CA 20   E3               BRA    FADDRX    FABRIQUE ADRESSE
  207   E0CC 8D   16       HEXIN7  BSR    KEYHEX    FABRIQUE VAL TOUCHE
  208   E0CE 48                    ASLA
  209   E0CF 48                    ASLA
  210   E0D0 48                    ASLA
  211   E0D1 48                    ASLA             TRANSFERT LSB,MSB
  212   E0D2 34   02               PSHS   A         SAUVE VAL TOUCHE
  213   E0D4 8D   26               BSR    L7SEG     FABRIQUE VAL CONVERSION TOUCHE
  214   E0D6 A7   80               STA    ,X+       VAL CONV DANS DISBUF
  215   E0D8 8D   0A               BSR    KEYHEX    CONTINUER CHIFFRES SUIVANTS
  216   E0DA AB   E0               ADDA   ,S+
  217   E0DC 34   02               PSHS   A
  218   E0DE 8D   20               BSR    R7SEG
  219   E0E0 A7   80               STA    ,X+       TOUCHE SUIVANTE
  220   E0E2 35   82               PULS   PC,A


  222                      **FABRICATION DE LA VALEUR HEXA DE LA TOUCHE**


  224   E0E4 17   FF39     KEYHEX  LBSR   GETKEY    SCRUTER LIGNES ET COLONNES
  225   E0E7 34   14       HEXCON  PSHS   X,B       ALLUMER CHIFFRE ET G
  226   E0E9 8E   E000             LDX    #KEYTBL   POINTER SUR LE TABLEAU
  227   E0EC C6   FF               LDB    #$FF      DES CHIFFRES
  228   E0EE 5C            SCRUTC  INCB
  229   E0EF 8C   E010             CMPX   #DIGTBL   VALEUR DIFF CHIFFRE?
  230   E0F2 27   2A               BEQ    FONCTI    OUI, C'EST UNE FONCTION
  231   E0F4 A1   80               CMPA   ,X+       NON, CHIFFRE TROUVE?
  232   E0F6 26   F6               BNE    SCRUTC    NON, CONTINUER A SCRUTER
  233   E0F8 1F   98               TFR    B,A
  234   E0FA 35   94               PULS   PC,X,B


  236                      *** CONVERSION HEXA-7 SEGMENTS ***
  237                      ********** TOUCHES VALEURS *******


  239   E0FC 47            L7SEG   ASRA
  240   E0FD 47                    ASRA
  241   E0FE 47                    ASRA
  242   E0FF 47                    ASRA             VAL TOUCHE DS A, LSB
  243   E100 34   10       R7SEG   PSHS   X
  244   E102 8E   E010             LDX    #DIGTBL   POINTER SUR TABLEAU
  245   E105 84   0F               ANDA   #$0F      PREMIERE TOUCHE?
  246   E107 27   05       NDVALH  BEQ    VALHEX    OUI, VAL HEX DS A
  247   E109 30   01               LEAX   1,X       NON, POINTER SUR VAL SUIVANTE
  248   E10B 4A                    DECA
  249   E10C 20   F9               BRA    NDVALH    RECOMMENCER SI VAL NON TROUVEE
  250   E10E A6   84       VALHEX  LDA    ,X        CONVERSION HEXA-7SEGMENTS
  251   E110 35   90               PULS   PC,X      DANS A TROUVE


  253                      **** CONVERSION DU CODE TOUCHE EN UNE VAL HEXA ****


  255   E112 34   14       CONHEX  PSHS   X,B
  256   E114 8E   E010             LDX    #DIGTBL
  257   E117 1F   89               TFR    A,B       B=DISBUF+4 OU DISBUF+5
  258   E119 4F                    CLRA
  259   E11A E1   80       NONFIN  CMPB   ,X+       CHERCHE VAL DONNEE
  260   E11C 27   07               BEQ    DONEA     A=VAL HEXA DONNEE
  261   E11E 1027 0105     FONCTI  LBEQ   RPOINT    OUI, FONCTION, RETOURNER SCRUTER
  262   E122 4C                    INCA
  263   E123 20   F5               BRA    NONFIN
  264   E125 35   94       DONEA   PULS   PC,X,B


  266                      ****** EXECUTION DE LA FONCTION MEMOIRE ******


  268   E127 4F            EXMEMO  CLRA
  269                0007          SETDP  $07
  270   E128 97   FE               STA    <DISBUF+4 ETEINDRE 5e DIGIT
  271   E12A 86   6E               LDA    #$6E
  272   E12C 97   FF               STA    <DISBUF+5 M DANS 6e DIGIT
  273   E12E 8D   85               BSR    BADDR     FABRIQUER ADRESSE DANS X
  274   E130 0F   EE       REMEMO  CLR    <COMDEC
  275   E132 A6   84               LDA    ,X        METTRE A DANS LE CONTENU
  276   E134 34   02               PSHS   A         DE LA CASE MEMOIRE
  277   E136 8D   C4               BSR    L7SEG     FABRIQUER LE CODE A METTRE
  278   E138 97   FE               STA    <DISBUF+4 DANS LE 5e DIGIT
  279   E13A 35   02               PULS   A
  280   E13C 8D   C2               BSR    R7SEG     FABRIQUER LE CODE A METTRE
  281   E13E 97   FF               STA    <DISBUF+5 DANS LE 6e DIGIT
  282   E140 17   FEDD     ENCDON  LBSR   GETKEY    ALLUMER LES DIGITS
  283   E143 81   36               CMPA   #$36      TOUCHE X?
  284   E145 27   67               BEQ    EXPOCT    OUI, SCRUTER LA TOUCHE OFFSET
  285   E147 81   00               CMPA   #$00      INCREMENTE CASE MEMOIRE?
  286   E149 27   2F               BEQ    EXINC     OUI, EXECUTER LA FONCTION
  287   E14B 81   10               CMPA   #$10      NON, DECREMENTE CASE MEMOIRE?
  288   E14D 27   29               BEQ    EXDEC     OUI, EXECUTE LA FONCTION
  289   E14F 81   33               CMPA   #$33      TOUCHE OFFSET?
  290   E151 1027 05B0             LBEQ   EXOFST    OUI, EXECUTE LA FONCTION
  291   E155 8D   90               BSR    HEXCON    NON, FABRIQUER CODE HEXA TOUCHE
  292   E157 D6   FF               LDB    <DISBUF+5 SHIFTER DISBUF
  293   E159 D7   FE               STB    <DISBUF+4
  294   E15B 8D   A3               BSR    R7SEG
  295   E15D 97   FF               STA    <DISBUF+5
  296   E15F 8D   02               BSR    INCREM    STOCKER DONNEE
  297   E161 20   DD               BRA    ENCDON    RECOM SI AUTRE DONNEE


  299                      ******* EXECUTION DE LA FONCTION INCREMENTATION *******
  300                      *********** ET DE LA FONCTION DECREMENTATION **********


  302                0007          SETDP  $07
  303   E163 96   FE       INCREM  LDA    <DISBUF+4 PLACE DONNEE EN MEM.
  304   E165 8D   AB               BSR    CONHEX    CONVERTIR VAL CONVERSION
  305   E167 48                    ASLA
  306   E168 48                    ASLA
  307   E169 48                    ASLA
  308   E16A 48                    ASLA             VAL HEXA DANS MSB
  309   E16B 34   02               PSHS   A
  310   E16D 96   FF               LDA    <DISBUF+5
  311   E16F 8D   A1               BSR    CONHEX
  312   E171 AB   E0               ADDA   ,S+       A=DONNEE DISBUF+4 ET +5
  313   E173 1F   89               TFR    A,B
  314   E175 A7   84               STA    ,X        DONNEE DANS CASE X
  315   E177 39                    RTS
  316   E178 0A   EE       EXDEC   DEC    <COMDEC
  317   E17A 8D   E7       EXINC   BSR    INCREM
  318   E17C 96   EE               LDA    <COMDEC   INCREMENTE OU DECREMENTE?
  319   E17E 26   28               BNE    DECRE     COMDEC<>0, DECREMENTE
  320   E180 A6   80               LDA    ,X+       PRENDRE DONNEE DS X ET X+1
  321   E182 34   04       PREXIN  PSHS   B         SAUVE AVANT STOCKAGE
  322   E184 A1   E0               CMPA   ,S+       MEMOIRE ABSENTE OU MEMOIRE MORTE?
  323   E186 1026 009D             LBNE   RPOINT    OUI, ALLUMER PROMPT ET SCRUTER
  324   E18A 1F   10               TFR    X,D       NON, AFFICHE CASE MEMOIRE
  325   E18C 17   FF6D             LBSR   L7SEG     SUIVANTE OU PRECEDENTE
  326   E18F 97   FA               STA    <DISBUF
  327   E191 1F   10               TFR    X,D
  328   E193 17   FF6A             LBSR   R7SEG
  329   E196 97   FB               STA    <DISBUF+1
  330   E198 1F   98               TFR    B,A
  331   E19A 17   FF5F             LBSR   L7SEG
  332   E19D 97   FC               STA    <DISBUF+2
  333   E19F 1F   98               TFR    B,A
  334   E1A1 17   FF5C             LBSR   R7SEG
  335   E1A4 97   FD               STA    <DISBUF+3
  336   E1A6 20   88               BRA    REMEMO    RECOMMENCER EXECUTION MEMOIRE
  337   E1A8 A6   84       DECRE   LDA    ,X
  338   E1AA 30   1F               LEAX   -1,X
  339   E1AC 20   D4               BRA    PREXIN    DECREMENTATION EXECUTEE




  342                      ****** EXECUTION POST OCTET: DEFINI S'IL EST >0 OU <0 ******

  344   E1AE 8D   B3       EXPOCT  BSR    INCREM    POST OCTET EN MEM
  345   E1B0 97   E4               STA    <SAVPOC   SAUVE POST OCTET
  346   E1B2 86   01               LDA    #$01      ALLUME PROMPT
  347   E1B4 34   10               PSHS   X
  348   E1B6 17   00D8             LBSR   PROMPT
  349   E1B9 17   FE64             LBSR   GETKEY
  350   E1BC 81   33               CMPA   #$33      TOUCHE OFFSET?
  351   E1BE 27   03               BEQ    OFFSET
  352   E1C0 16   FF6D             LBRA   REMEMO    NON, RETOUR FCT MEM
  353   E1C3 96   E4       OFFSET  LDA    <SAVPOC   REPRENDRE POST OCTET
  354   E1C5 35   10               PULS   X
  355   E1C7 30   1F               LEAX   -1,X
  356   E1C9 1F   89               TFR    A,B
  357   E1CB C4   8E               ANDB   #$8E
  358   E1CD C1   8C               CMPB   #$8C      LEA N,PCR?
  359   E1CF 26   10               BNE    CALPOT    NON, AFFICHE SIGNE
  360   E1D1 1F   89               TFR    A,B
  361   E1D3 C4   0D               ANDB   #$0D
  362   E1D5 C1   0C               CMPB   #$0C      BRANCH COURT
  363   E1D7 1027 053D             LBEQ   OFPOCT
  364   E1DB C1   0D               CMPB   #$0D      BRANCH LONG
  365   E1DD 1027 055F             LBEQ   EXLBCL
  366   E1E1 17   FE3C     CALPOT  LBSR   GETKEY
  367   E1E4 17   00A1             LBSR   CLRDIS
  368   E1E7 81   00               CMPA   #$00      TOUCHE INCREM?
  369   E1E9 27   09               BEQ    PLUS      POSTOCTET>0
  370   E1EB 81   10               CMPA   #$10      TOUCHE DECREM?
  371   E1ED 27   0C               BEQ    MOINS     POSTOCTET<0
  372   E1EF 30   01               INX
  373   E1F1 16   FF3C             LBRA   REMEMO    SINON RETOUR MEM
  374   E1F4 86   6B       PLUS    LDA    #$6B
  375   E1F6 97   FF               STA    <DISBUF+5 AFFICHE PLUS
  376   E1F8 4F                    CLRA
  377   E1F9 20   06               BRA    CONTI
  378   E1FB 86   6E       MOINS   LDA    #$6E
  379   E1FD 97   FF               STA    <DISBUF+5 AFFICHE MOINS
  380   E1FF 86   80               LDA    #$80
  381   E201 97   E3       CONTI   STA    <PLUSMS
  382   E203 16   01D7             LBRA   AFIVAL


  384                      ****** PLACE UN POINT D'ARRET EN MEMOIRE ET SAUVE L'INSTRUCTION ******

  386   E206 CC   756B     BPOINT  LDD    #$756B
  387   E209 DD   FE               STD    <DISBUF+4 ALLUMER BP
  388   E20B 17   FEA7             LBSR   BADDR     AFFICHE ADRESSE
  389   E20E EC   84               LDD    ,X
  390   E210 DD   DF               STD    <SASWI2   SAUVE INSTRUCTION
  391   E212 CC   103F             LDD    #$103F
  392   E215 ED   84               STD    ,X        PLACE POINT D'ARRET
  393   E217 20   0E               BRA    RPOINT    RETOUR SCRUT


  395                      ***********************************************************************
  396                      ******************** PROGRAMME DE RESET *******************************
  397                      ****** INITIALISATION ET DECODAGE DES FONCTIONS :M, R,CN,G,BP,L,P *****
  398                      ***********************************************************************


  400   E219 10CE 07C0     RESTAR  LDS    #PILE     INIT PILE
  401   E21D 10FF 07F8             STS    SAVPIL    ET POINTEUR X
  402   E221 8E   E272             LDX    #ROUNMI
  403   E224 BF   07DD             STX    SAVNMI
  404   E227 10CE 07A0     RPOINT  LDS    #PILMON
  405                0007          SETDP  $07
  406   E22B 86   07               LDA    #$07      INIT DP
  407   E22D 1F   8B               TFR    A,DP
  408   E22F 8D   57               BSR    CLRDIS    DISBUF=0
  409   E231 86   01               LDA    #$01
  410   E233 97   FA               STA    <DISBUF   CHARGEMENT PROMPT
  411   E235 17   FDE8             LBSR   GETKEY    ALLUME PROMPT
  412   E238 81   26               CMPA   #$26      TOUCHE BP ?
  413   E23A 27   CA               BEQ    BPOINT    OUI, PLACER POINT D'ARRET
  414   E23C 81   30               CMPA   #$30      TOUCHE REGISTRE?
  415   E23E 1027 00C5             LBEQ   FONREG    OUI, EXECUTE FONCTION DE CHGT REG
  416   E242 81   20               CMPA   #$20      TOUCHE=MEMORY?
  417   E244 1027 FEDF             LBEQ   EXMEMO    OUI, EXECUTE ROUTINE
  418   E248 81   32               CMPA   #$32      NON, TOUCHE=CONTINUE?
  419   E24A 27   22               BEQ    EXCN      OUI, EXECUTE ROUTINE
  420   E24C 81   34               CMPA   #$34      NOU, TOUCHE=LOAD?
  421   E24E 1027 0387             LBEQ   EXLOAD    OUI, EXECUTE ROUTINE
  422   E252 81   35               CMPA   #$35      NON, TOUCHE=PUNCH?
  423   E254 1027 03E9             LBEQ   EXPUNC    OUI, EXECUTE ROUTINE
  424   E258 81   31               CMPA   #$31      NON, TOUCHE=GO?
  425   E25A 26   CB               BNE    RPOINT    NON, RETOUR SCRUTATION
  426   E25C 86   7C               LDA    #$7C      OUI, CHARGE G DS DERNIER DIGIT
  427   E25E 97   FF               STA    <DISBUF+5
  428   E260 17   FE52             LBSR   BADDR     FABRIQUE ADRESSE DEPART
  429   E263 109E F8               LDY    <SAVPIL   DU PROGRAMME
  430   E266 AF   2A               STX    10,Y      ADRESSE PROG DANS PC
  431   E268 86   80               LDA    #$80
  432   E26A AA   A4               ORA    ,Y        POSITIONNER PLAG E=1
  433   E26C A7   A4               STA    ,Y        POUR PRENDRE EN COMPTE
  434   E26E 10DE F8       EXCN    LDS    <SAVPIL   TOUS LES REGISTRES
  435   E271 3B                    RTI              DEPART PROG UTILISATEUR


  437                      ****** INITIALISATION DE LA FONCTION NMI ******


  439   E272 A6   6A       ROUNMI  LDA    10,S
  440   E274 84   F0               ANDA   #$F0
  441   E276 81   E0               CMPA   #$E0
  442   E278 27   AD               BEQ    RPOINT
  443   E27A 20   2B               BRA    RSWI


  445                      ****** INITIALISATION DE LA FONCTION SWI2 ******

  447   E27C 6A   6B       RSWI2   DEC    11,S
  448   E27E 6A   6B               DEC    11,S      POINTER PCR SUR INSTRUC.
  449   E280 FC   07DF             LDD    SASWI2
  450   E283 ED   F8 0A            STD    [10,S]    REMETRE INSTRUCTION EN MEM.
  451   E286 20   1F               BRA    RSWI      SCRUTER LES REGISTRES


  453                      ************** REMISE A ZERO DE TOUT DISBUF **************


  455   E288 34   56       CLRDIS  PSHS   U,X,B,A
  456   E28A 33   8D 000E          LEAU   INTER2,PCR
  457   E28E 34   40               PSHS   U
  458   E290 4F                    CLRA             TOUT DISBUF=0
  459   E291 C6   06       PROMPT  LDB    #$06
  460   E293 8E   07FA             LDX    #DISBUF
  461   E296 A7   80       ENCORE  STA    ,X+
  462   E298 5A                    DECB
  463   E299 26   FB               BNE    ENCORE
  464   E29B 39                    RTS
  465   E29C 35   D6       INTER2  PULS   PC,U,X,B,A


  467                      * CODAGE DES REGISTRES DU MPU *
  468                      *
  469                      *              C   A   B   D
  470   E29E 78 6F 75 57   REGTBL  FCB    $78,$6F,$75,$57
  471                      *
  472                      *              X   Y   U   P
  473   E2A2 67 37 76 6B           FCB    $67,$37,$76,$6B
  474                      *
  475                      *             S
  476   E2A6 3D                    FCB    $3D


  478                      *************** SOFTWARE INTERRUPT ROUTINE *****************************
  479                      ***** PERMET DE VISUALISER LE CONTENU DES REGISTRES DU MPU *************
  480                      ******* ET DE CHANGER EVENTUELLEMENT LE CONTENU D'UN REGISTRE QCQ ******
  481                      ************************************************************************


  483                0007          SETDP  $07
  484   E2A7 86   07       RSWI    LDA    #$07
  485   E2A9 1F   8B               TFR    A,DP
  486   E2AB 10DF F8               STS    <SAVPIL
  487   E2AE 10CE 07A0             LDS    #PILMON
  488   E2B2 8D   D4               BSR    CLRDIS    TOUT DISBUF=00
  489   E2B4 C6   02               LDB    #$02      COMPTEUR REGISTRES
  490   E2B6 9E   F8               LDX    <SAVPIL   INDEX DE CHARGEMENT DES REGISTRES
  491   E2B8 31   8C E3            LEAY   REGTBL,PCR Y=REGTBL
  492   E2BB 33   8D 0035  TOUREG  LEAU   INTER,PCR
  493   E2BF 34   40               PSHS   U         PC SAUVE EN PILE
  494   E2C1 A6   A0               LDA    ,Y+       A=VAL REGISTRE
  495   E2C3 97   FF               STA    <DISBUF+5 REGISTRE DS DERNIER DIGIT
  496   E2C5 108C E2A7             CMPY   #RSWI     FIN TABLEAU?
  497   E2C9 26   03               BNE    SUITER    NON
  498   E2CB 8E   07F8             LDX    #SAVPIL   OUI, X POINTE SAVPIL
  499   E2CE 108C E2A2     SUITER  CMPY   #REGTBL+4 1iere MOITIER TEBLEAU?
  500   E2D2 23   0E               BLS    AF2DIG    OUI, 1iere MOITIER
  501   E2D4 A6   84               LDA    ,X        NON, 2ieme MOITIER
  502   E2D6 17   FE23             LBSR   L7SEG     AFFICHE CONTENU
  503   E2D9 97   FA               STA    <DISBUF   SUR 4 DIGITS
  504   E2DB A6   80               LDA    ,X+
  505   E2DD 17   FE20             LBSR   R7SEG
  506   E2E0 97   FB               STA    <DISBUF+1
  507   E2E2 A6   84       AF2DIG  LDA    ,X        1iere MOITIER
  508   E2E4 17   FE15             LBSR   L7SEG     AFFICHE COTENU SUR
  509   E2E7 97   FC               STA    <DISBUF+2 2 DIGITS
  510   E2E9 A6   80               LDA    ,X+
  511   E2EB 17   FE12             LBSR   R7SEG
  512   E2EE 97   FD               STA    <DISBUF+3
  513   E2F0 17   FD2D             LBSR   GETKEY    ALLUMER AFFICHEURS
  514   E2F3 39                    RTS              RETOUR A CHANGEMENT DE REG
  515   E2F4 5A            INTER   DECB
  516   E2F5 2F   1F               BLE    SCRUDE    DECREMENTE OU INCREMENTE ? 
  517   E2F7 C1   01               CMPB   #$01      1er REGISTRE =CCR?
  518   E2F9 27   15               BEQ    TSTDEC    OUI, SCUTER r
  519   E2FB 81   00       REGSUI  CMPA   #$00      REGISTRE SUIVANT?
  520   E2FD 1026 FF26             LBNE   RPOINT    NON, RETOUR PROMPT
  521   E301 108C E2A7             CMPY   #RSWI     OUI, FIN TABLEAU?
  522   E305 26   B4               BNE    TOUREG    NON, CONTINUER REGISTRES
  523   E307 17   FF7E     FONREG  LBSR   CLRDIS
  524   E30A 86   41               LDA    #$41      AFFICHER r
  525   E30C 97   FE               STA    <DISBUF+4
  526   E30E 20   3F               BRA    EXREGI    SCRUTER REGISTRES
  527   E310 81   10       TSTDEC  CMPA   #$10
  528   E312 27   F3               BEQ    FONREG
  529   E314 20   E5               BRA    REGSUI
  530   E316 81   10       SCRUDE  CMPA   #$10      DECREMENTATION DEMANDEE?
  531   E318 27   02               BEQ    REGPRE    OUI, PASSER AU REGISTRE PRECEDENT
  532   E31A 20   DF               BRA    REGSUI    NON, PASSER AU REGISTRE SUIVANT
  533   E31C 31   3E       REGPRE  LEAY   -2,Y      REGTBL POINTE VERS REGISTRE PRECEDENT
  534   E31E 17   FF67             LBSR   CLRDIS    ETEINDRE AFFICHAGE
  535   E321 108C E29D             CMPY   #REGTBL-1 DEBUT TABLEAU DES REGISTRES?
  536   E325 27   E0               BEQ    FONREG    OUI, RETOUR FONCTION REGISTRE
  537   E327 108C E2A5             CMPY   #REGTBL+7 POINTE SUR PC?
  538   E32B 27   1B               BEQ    REGPC     OUI, ALLUMER LE CONTENU
  539   E32D 10BC E2A1             CMPY   REGTBL+3  REGISTRES 8 BITS?
  540   E331 27   0B               BEQ    RE8BIT
  541   E333 10BC E2A0             CMPY   REGTBL+2
  542   E337 23   0A               BLS    REBIT8
  543   E339 30   1C               LEAX   -4,X      REGISTRE 16 BITS X,Y,U,P,S
  544   E33B 16   FF7D             LBRA   TOUREG    VISUALISER CONTENU
  545   E33E 30   1D       RE8BIT  LEAX   -3,X      REGISTRES 8 BITS D,B,A,C
  546   E340 16   FF78             LBRA   TOUREG    VISUALISE CONTENU
  547   E343 30   1E       REBIT8  LEAX   -2,X      REGISTRES 8 BITS B,A,C
  548   E345 16   FF73             LBRA   TOUREG    VISUALISER CONTENU
  549   E348 9E   F8       REGPC   LDX    <SAVPIL
  550   E34A 30   0A               LEAX   10,X      X POINTE SUR PC
  551   E34C 16   FF6C             LBRA   TOUREG



  553                      ****** PERMET DE CHANGER LE CONTENU D'UN REG LORS D'UN NMI ou SWI ******



  555   E34F 31   8D FF4B  EXREGI  LEAY   REGTBL,PCR
  556   E353 9E   F8               LDX    <SAVPIL
  557   E355 17   FCC8             LBSR   GETKEY    ALLUMER REG
  558   E358 81   30               CMPA   #$30      REG DEMANDE?
  559   E35A 1027 FEC9             LBEQ   RPOINT    OUI, CRUTER TOUCHES
  560   E35E 81   06               CMPA   #$06      CCR?
  561   E360 27   3B               BEQ    R8BREG    OUI
  562   E362 30   01               INX
  563   E364 31   21               LEAY   1,Y       REG SUIVANT
  564   E366 81   05               CMPA   #$05      ACCA?
  565   E368 27   33               BEQ    R8BREG    OUI
  566   E36A 30   01               INX
  567   E36C 31   21               LEAY   1,Y
  568   E36E 81   04               CMPA   #$04      ACCB?
  569   E370 27   2B               BEQ    R8BREG    OUI
  570   E372 30   01               INX
  571   E374 31   21               LEAY   1,Y
  572   E376 81   03               CMPA   #$03      DPR?
  573   E378 27   23               BEQ    R8BREG    OUI
  574   E37A 30   01               INX
  575   E37C 31   21               LEAY   1,Y
  576   E37E 81   02               CMPA   #$02      REG X?
  577   E380 27   26               BEQ    REG16B    OUI
  578   E382 30   02               LEAX   2,X
  579   E384 31   21               LEAY   1,Y
  580   E386 81   01               CMPA   #$01      REG Y?
  581   E388 27   1E               BEQ    REG16B    OUI
  582   E38A 30   02               LEAX   2,X
  583   E38C 31   21               LEAY   1,Y
  584   E38E 81   15               CMPA   #$15      REG U?
  585   E390 27   16               BEQ    REG16B    OUI
  586   E392 30   02               LEAX   2,X
  587   E394 31   21               LEAY   1,Y
  588   E396 81   14               CMPA   #$14      REG PCR?
  589   E398 27   0E               BEQ    REG16B    OUI
  590   E39A 16   FE8A             LBRA   RPOINT
  591   E39D A6   A4       R8BREG  LDA    ,Y
  592   E39F 97   FF               STA    <DISBUF+5 AFFICHE TYPE DE REG
  593   E3A1 17   FF3E             LBSR   AF2DIG    AFFICHE LE CONTENU DU REG 8BITS
  594   E3A4 30   1F               DEX
  595   E3A6 20   0B               BRA    CHANG8    CHANGER LE CONTENU
  596   E3A8 A6   A4       REG16B  LDA    ,Y
  597   E3AA 97   FF               STA    <DISBUF+5 AFFICHE TYPE DE REG
  598   E3AC 17   FF25             LBSR   SUITER+6  AFFICHE LE CONTENU DU REGISTRE 16BITS
  599   E3AF 30   1E               LEAX   -2,X
  600   E3B1 20   15               BRA    CHAN16    CHANGER SON CONTENU
  601   E3B3 34   30       CHANG8  PSHS   Y,X       SAUVEGARDE DES POINTEURS
  602   E3B5 8E   07FC             LDX    #DISBUF+2
  603   E3B8 108E 0002             LDY    #$02
  604   E3BC 17   00EF             LBSR   CHTDON    SOUS PROG DE CHGT DES DONNEES
  605   E3BF 35   30               PULS   Y,X
  606   E3C1 96   E5               LDA    <PRESEH
  607   E3C3 A7   84               STA    ,X        NELLE DONNEE EN PILE
  608   E3C5 16   FF3F             LBRA   FONREG    SCRUTER LES REGISTRES

  610   E3C8 34   30       CHAN16  PSHS   Y,X
  611   E3CA 8E   07FA             LDX    #DISBUF
  612   E3CD 108E 0006             LDY    #$06
  613   E3D1 17   00DA             LBSR   CHTDON
  614   E3D4 35   30               PULS   Y,X
  615   E3D6 DC   E5               LDD    <PRESEH
  616   E3D8 ED   84               STD    ,X
  617   E3DA 16   FF2A             LBRA   FONREG


  619                      ****** AFFICHE VAL DU POST OCTET,EFFECTUE LA CONVERSION ******
  620                      ****** DECIMALE-HEXADECIMALE ET PLACE LE RESLT EN MEMRE ******

  622   E3DD 30   01       AFIVAL  INX
  623   E3DF 34   10               PSHS   X
  624   E3E1 17   FC3C             LBSR   GETKEY
  625   E3E4 8E   07FA             LDX    #DISBUF
  626   E3E7 108E 0006             LDY    #$06
  627   E3EB 17   00C0             LBSR   CHTDON
  628   E3EE 17   FC2F             LBSR   GETKEY
  629   E3F1 17   00C0             LBSR   MSBDON
  630   E3F4 0F   E7               CLR    <PRELOW
  631   E3F6 D7   E8               STB    <PRELOW+1
  632   E3F8 35   10               PULS   X
  633   E3FA 17   FC23             LBSR   GETKEY
  634   E3FD 81   31               CMPA   #$31
  635   E3FF 27   03               BEQ    CALCON
  636   E401 16   FD2C             LBRA   REMEMO
  637   E404 17   FE81     CALCON  LBSR   CLRDIS
  638   E407 17   00EA             LBSR   DECHEX    CONVERSION DEC-HEXA
  639   E40A DC   E7               LDD    <PRELOW
  640   E40C 4D                    TSTA             A-0?
  641   E40D 26   0B               BNE    TESTST    NON, VAL 16BITS?
  642   E40F 58                    ASLB
  643   E410 25   1B               BCS    TSTSUI    VAL 16BITS?
  644   E412 58                    ASLB
  645   E413 25   52               BCS    INTR08    VAL 16BITS?
  646   E415 58                    ASLB
  647   E416 25   4F               BCS    INTR08    VAL 8BITS?
  648   E418 20   1A               BRA    INTR05    VAL 5BITS?
  649   E41A 81   80       TESTST  CMPA   #$80      A>80?
  650   E41C 22   08               BHI    ERREUR    OUI, AFFICHE ERREUR
  651   E41E 27   02               BEQ    COMPAB
  652   E420 20   66               BRA    INTR16    NON, VAL 16 BITS
  653   E422 C1   00       COMPAB  CMPB   #$00
  654   E424 27   62               BEQ    INTR16
  655   E426 30   1F       ERREUR  LEAX   -1,X
  656   E428 1F   12       EREURE  TFR    X,Y
  657   E42A 16   0384             LBRA   CLIGNO
  658   E42D 56            TSTSUI  RORB
  659   E42E C1   80               CMPB   #$80      B>80?
  660   E430 22   56               BHI    INTR16    OUI, VAL 16BITS
  661   E432 20   33               BRA    INTR08    NON, VAL 8BITS
  662   E434 58            INTR05  ASLB
  663   E435 24   20               BCC    POSITIF
  664   E437 DC   E7               LDD    <PRELOW
  665   E439 A6   84               LDA    ,X        POST DS A, VAL DS B
  666   E43B C1   10               CMPB   #$10      B>10?
  667   E43D 22   05               BHI    TSTPOC    OUI, TESTER POST OCTET
  668   E43F 48                    ASLA
  669   E440 24   07               BCC    POCPOS
  670   E442 20   23               BRA    INTR08
  671   E444 48            TSTPOC  ASLA
  672   E445 24   E1               BCC    EREURE    POST INCORRECT
  673   E447 20   1E               BRA    INTR08    VAL 8BITS POSSIBLE
  674   E449 08   E3       POCPOS  ASL    <PLUSMS   POSITIF?
  675   E44B 24   1A               BCC    INTR08    VAL 8BITS
  676   E44D A6   84       CHPOST  LDA    ,X
  677   E44F 34   04               PSHS   B
  678   E451 AB   E0               ADDA   ,S+
  679   E453 A7   84               STA    ,X
  680   E455 20   25               BRA    STODON+2
  681   E457 DC   E7       POSITIF LDD    <PRELOW
  682   E459 A6   84               LDA    ,X
  683   E45B 48                    ASLA
  684   E45C 25   CA               BCS    EREURE
  685   E45E 08   E3               ASL    <PLUSMS
  686   E460 24   EB               BCC    CHPOST    SI POSITIF , CHARGER
  687   E462 50                    NEGB
  688   E463 C4   1F               ANDB   #$1F
  689   E465 20   E6               BRA    CHPOST    SI NEG, CHARGER
  690   E467 DC   E7       INTR08  LDD    <PRELOW
  691   E469 A6   80               LDA    ,X+
  692   E46B 49                    ROLA
  693   E46C 24   B8               BCC    ERREUR    SI DIFFERENT 8BITS ERREUR
  694   E46E 46                    RORA
  695   E46F 84   0F               ANDA   #$0F
  696   E471 81   08               CMPA   #$08      POST OCTET 8BITS
  697   E473 26   B1               BNE    ERREUR
  698   E475 08   E3               ASL    <PLUSMS   OUI, POSITIF?
  699   E477 24   09               BCC    STADON    OUI STOCKER DONNEE
  700   E479 50                    NEGB
  701   E47A E7   84       STODON  STB    ,X
  702   E47C 17   034E             LBSR   AFFIAD+2
  703   E47F 16   FCAE             LBRA   REMEMO
  704   E482 C1   80       STADON  CMPB   #$80
  705   E484 27   A0       RCR     BEQ    ERREUR
  706   E486 20   F2               BRA    STODON
  707   E488 A6   80       INTR16  LDA    ,X+
  708   E48A 49                    ROLA
  709   E48B 24   99               BCC    ERREUR    DIFF 16BITS
  710   E48D 46                    RORA
  711   E48E 84   0F               ANDA   #$0F
  712   E490 81   09               CMPA   #$09      16BITS?
  713   E492 26   92               BNE    ERREUR
  714   E494 DC   E7               LDD    <PRELOW
  715   E496 08   E3               ASL    <PLUSMS   POSITIF?
  716   E498 24   09               BCC    COMPAR    OUI
  717   E49A 43                    COMA
  718   E49B 53                    COMB
  719   E49C C3   0001             ADDD   #$01
  720   E49F ED   84       CHAR16  STD    ,X
  721   E4A1 20   D9               BRA    STODON+2
  722   E4A3 1083 8000     COMPAR  CMPD   #$8000
  723   E4A7 27   DB               BEQ    RCR
  724   E4A9 20   F4               BRA    CHAR16


  726                      ****** CHANGEMENT DE CONTENU DES REGISTRES PRESERVES EN PILE ******


  728   E4AB 17   FB72     CHTCHI  LBSR   GETKEY    SCRUTER CHIFFRES
  729   E4AE 33   8D 000D  CHTDON  LEAU   INTVAL,PCR
  730   E4B2 34   40               PSHS   U
  731   E4B4 17   FC30     MSBDON  LBSR   HEXCON    CONVERTI CHIFFRE EN HEXA
  732   E4B7 1F   89               TFR    A,B
  733   E4B9 17   FC44             LBSR   R7SEG
  734   E4BC A7   80               STA    ,X+       ENVOI CHIFFRE SUR AFFICHEUR
  735   E4BE 39                    RTS
  736   E4BF 34   04       INTVAL  PSHS   B
  737   E4C1 31   3F               LEAY   -1,Y
  738   E4C3 1F   20               TFR    Y,D       1 OU 5 OU 3
  739   E4C5 54                    LSRB
  740   E4C6 25   1A               BCS    DEPLAC
  741   E4C8 108C 0002     SUITEP  CMPY   #$02      DISBUF+0
  742   E4CC 27   0D               BEQ    CAL16     REGISTRE 16BITS
  743   E4CE 1F   20               TFR    Y,D       0 OU 4
  744   E4D0 54                    LSRB
  745   E4D1 24   19               BCC    CALCU8    REGISTRE 8BITS
  746   E4D3 108C 0000     SUI     CMPY   #$00
  747   E4D7 2E   D2               BGT    CHTCHI    CHIFFRE SUIVANT
  748   E4D9 27   06               BEQ    RETOUR
  749   E4DB 35   02       CAL16   PULS   A
  750   E4DD AB   E0               ADDA   ,S+
  751   E4DF 97   E6               STA    <PRESEL
  752   E4E1 39            RETOUR  RTS

  754   E4E2 35   02       DEPLAC  PULS   A
  755   E4E4 48                    ASLA
  756   E4E5 48                    ASLA
  757   E4E6 48                    ASLA
  758   E4E7 48                    ASLA
  759   E4E8 34   02               PSHS   A
  760   E4EA 20   DC               BRA    SUITEP
  761   E4EC 35   02       CALCU8  PULS   A
  762   E4EE AB   E0               ADDA   ,S+
  763   E4F0 97   E5               STA    <PRESEH
  764   E4F2 20   DF               BRA    SUI

  766                      ****** SOUS-PROG DE CONVERSION DECIMALE-HEXA, RETOUR EN FCT MEM ******

  768   E4F4 34   38       DECHEX  PSHS   Y,X,DP
  769   E4F6 86   0A               LDA    #$0A
  770   E4F8 1F   8B               TFR    A,DP      10 DS DP
  771   E4FA 8E   07E6             LDX    #PRESEL
  772   E4FD 108E 0000             LDY    #$00
  773   E501 A6   84       CALCUL  LDA    ,X
  774   E503 31   21               LEAY   1,Y
  775   E505 108C 0001             CMPY   #$01
  776   E509 26   0B               BNE    COMPR2
  777   E50B 8D   66               BSR    LSBDSA    LSB DANS ACCA
  778   E50D 3D            MULPAR  MUL
  779   E50E F3   07E7             ADDD   PRELOW    D+PRELOW DS D
  780   E511 FD   07E7             STD    PRELOW
  781   E514 20   EB               BRA    CALCUL
  782   E516 108C 0002     COMPR2  CMPY   #$02
  783   E51A 26   06               BNE    COMPR3
  784   E51C 8D   6D               BSR    MUL100    MUL DES CENTAINES
  785   E51E 8D   62               BSR    MSBLSB
  786   E520 20   EB               BRA    MULPAR
  787   E522 108C 0003     COMPR3  CMPY   #$03
  788   E526 26   0C               BNE    COMPR4
  789   E528 8D   61               BSR    MUL100    MUL DES MILLIERS
  790   E52A A6   84               LDA    ,X
  791   E52C 8D   45               BSR    LSBDSA
  792   E52E 3D            MULFIN  MUL
  793   E52F B6   07E1             LDA    PRESER
  794   E532 20   D9               BRA    MULPAR
  795   E534 108C 0004     COMPR4  CMPY   #$04
  796   E538 26   23               BNE    COMPR5
  797   E53A 86   02               LDA    #$02
  798   E53C B7   07E2             STA    SAUVER
  799   E53F 8D   50       RECMCE  BSR    MUP100    MUL DES DIZAINES DE MILLIERS
  800   E541 7A   07E2             DEC    SAUVER
  801   E544 27   05               BEQ    M10000
  802   E546 F7   07E1             STB    PRESER
  803   E549 20   F4               BRA    RECMCE
  804   E54B 8D   35       M10000  BSR    MSBLSB
  805   E54D 81   03       SECPAR  CMPA   #$03
  806   E54F 24   06               BHS    TESTER
  807   E551 108E 0005             LDY    #$05
  808   E555 20   D7               BRA    MULFIN
  809   E557 22   11       TESTER  BHI    AFEROR
  810   E559 86   02               LDA    #$02
  811   E55B 20   D1               BRA    MULFIN
  812   E55D 108C 0005     COMPR5  CMPY   #$05
  813   E561 26   0E               BNE    FINCAL
  814   E563 86   01               LDA    #$01
  815   E565 F6   07E1             LDB    PRESER
  816   E568 20   E3               BRA    SECPAR
  817   E56A 35   78       AFEROR  PULS   DP,X,Y,U
  818   E56C 1F   12               TFR    X,Y
  819   E56E 16   0240             LBRA   CLIGNO
  820   E571 35   B8       FINCAL  PULS   PC,X,Y,DP

  822   E573 C6   08       LSBDSA  LDB    #$08
  823   E575 48            DECENC  LSLA
  824   E576 5A                    DECB
  825   E577 C1   04               CMPB   #$04
  826   E579 26   FA               BNE    DECENC
  827   E57B 44            DECTJS  LSRA
  828   E57C 5A                    DECB
  829   E57D 26   FC               BNE    DECTJS
  830   E57F 1F   B9               TFR    DP,B
  831   E581 39                    RTS

  833   E582 A6   84       MSBLSB  LDA    ,X
  834   E584 44                    LSRA
  835   E585 44                    LSRA
  836   E586 44                    LSRA
  837   E587 44                    LSRA
  838   E588 30   1F               LEAX   -1,X
  839   E58A 39                    RTS

  841   E58B 33   8D 0008  MUL100  LEAU   INTER3,PCR
  842   E58F 34   40               PSHS   U
  843   E591 1F   B9       MUP100  TFR    DP,B
  844   E593 1F   98               TFR    B,A
  845   E595 3D                    MUL
  846   E596 39                    RTS
  847   E597 F7   07E1     INTER3  STB    PRESER
  848   E59A 39                    RTS


  850                      ****** RECONNAISSANCE DU BIT DU CARACTERE TRANSMIS ******
  851                      *
  852                      *
  853                      *
  854   E59B 34   06       RECBIT  PSHS   B,A
  855   E59D C6   06       NOUDLY  LDB    #$06
  856   E59F B6   A005     SCARRY  LDA    DISCNT    CHARGER PB7 PIA
  857   E5A2 48                    LSLA             PB7=1
  858   E5A3 24   FA               BCC    SCARRY    NON, ATTENDRE UN 1 DEBUT CARAC.
  859   E5A5 5A            DLY30U  DECB             OUI, DELAI # 30MICROSEC
  860   E5A6 26   FD               BNE    DLY30U
  861   E5A8 B6   A005             LDA    DISCNT    CHARGER DE NOUVEAU PB7
  862   E5AB 48                    LSLA             1 TOUJOURS PRESENT?
  863   E5AC 24   EF               BCC    NOUDLY    NON, NOUVELLE ATTENTE D'UN CARAC.
  864   E5AE C6   24               LDB    #$24      OUI, DELAI 430MICROSEC MINI
  865   E5B0 5A            CARRY1  DECB
  866   E5B1 B6   A005             LDA    DISCNT
  867   E5B4 48                    LSLA             TOUJOURS 1?
  868   E5B5 25   F9               BCS    CARRY1    OUI, DECOMPTER
  869   E5B7 86   EF               LDA    #$EF      NON, DECOMPTE>720MICROSEC.
  870   E5B9 5D                    TSTB             BIT CARAC.=0?
  871   E5BA 2B   01               BMI    AFSIGN    OUI, AFFICHER SIGNE POUR 0
  872   E5BC 47                    ASRA             NON, AFFICHER SIGNE POUR 1
  873   E5BD B7   A004     AFSIGN  STA    DISREG
  874   E5C0 5D                    TSTB
  875   E5C1 35   86               PULS   PC,B,A


  877                      ******** POSITIONNEMENT DU BIT DU CARACTERE ********
  878                      ***** TRANSMIS DANS LE LSB DE L'ACCUMULATEUR B *****
  879                      *
  880                      *
  881                      *
  882   E5C3 34   02       BITLSB  PSHS   A
  883   E5C5 8D   D4       BITCA1  BSR    RECBIT    RECONNAISSANCE BIT TRANSMIS
  884   E5C7 2A   FC               BPL    BITCA1    BIT CARAC. = 1
  885   E5C9 86   08               LDA    #$08      RECONNAISSANCE BIT SUIVANTS
  886   E5CB 8D   CE       CONROT  BSR    RECBIT    BIT CARAC=0 RECON BITS SUIVANTS
  887   E5CD 1C   FE               ANDCC  #$FE      CARRY=0
  888   E5CF 2B   02               BMI    BITCA0    BIT CARACTERE = 0 ?
  889   E5D1 1A   01               ORCC   #$01      NON, METRE CARRY A 1
  890   E5D3 56            BITCA0  RORB             OUI, DEPLACER LA CARRY
  891   E5D4 4A                    DECA             PAR ROTATIONS SUCCESSIVES
  892   E5D5 26   F4               BNE    CONROT    CARRY DANS LSB DE ACCB
  893   E5D7 35   82               PULS   PC,A


  895                      ****** CHARGEMENT D'UN PROGRAMMA PROVENANT D'UNE CASSETTE ******
  896                      ****************************************************************


  898   E5D9 CC   0000     EXLOAD  LDD    #$0000
  899   E5DC FD   A006             STD    SCNREG    ACCES A DDRAB
  900   E5DF CC   FF7F             LDD    #$FF7F
  901   E5E2 FD   A004             STD    DISREG    PA ET PB EN SORTIE
  902   E5E5 CC   0404             LDD    #$0404    PB7 EN ENTREE
  903   E5E8 FD   A006             STD    SCNREG    ACCES DRAB
  904   E5EB CC   FF04             LDD    #$FF04    ETEINDRE LES AFFICHEURS
  905   E5EE FD   A004             STD    DISREG    ET SELECTIONNER LE 1er DIGIT
  906   E5F1 8D   D0       DETECS  BSR    BITLSB    DETECTE CARACTERE DEBUT CHARGEMENT
  907   E5F3 C1   53               CMPB   #$53      CARACTERE S TRANSMIS ?
  908   E5F5 26   FA               BNE    DETECS    NON, CONTINUER A CHERCHER CARACTERE
  909   E5F7 8D   CA               BSR    BITLSB    OUI, CARACTERES SUIVANTS 
  910   E5F9 C1   31               CMPB   #$31      CARACTERE 1 TRANSMIS ?
  911   E5FB 27   08               BEQ    CARSUI    OUI, CARACTERES SUIVANTS
  912   E5FD C1   4A               CMPB   #$4A      NON, CARACTERE FIN = J ?
  913   E5FF 26   F0               BNE    DETECS    NON, DETECTER CARACTERE DE FIN
  914   E601 86   69       AFICHA  LDA    #$69      LDA #$69 OUI, AFFICHER FIN DU CHARGEMENT
  915   E603 20   32               BRA    DISFIN


  917                      ****** MISE EN MEMOIRE, POINTEE PAR X DES CARAC TRANSMIS ******
  918                      ***************************************************************


  920   E605 8D   BC       CARSUI  BSR    BITLSB    CONVERSION INTERVALE
  921   E607 D7   F0               STB    <SAVCNT
  922   E609 96   F0               LDA    <SAVCNT
  923   E60B 8D   B6               BSR    BITLSB
  924   E60D D7   F6               STB    <SAVB1
  925   E60F 34   04               PSHS   B
  926   E611 AB   E0               ADDA   ,S+       A + B DANS ACCA
  927   E613 0A   F0               DEC    <SAVCNT
  928   E615 8D   AC               BSR    BITLSB
  929   E617 D7   F7               STB    <SAVB2
  930   E619 34   04               PSHS   B
  931   E61B AB   E0               ADDA   ,S+       A + B DANS ACCA
  932   E61D 9E   F6               LDX    <SAVB1    X CONTIENT ADRESSE DE CHARGEMENT
  933   E61F 0A   F0       SUICHA  DEC    <SAVCNT
  934   E621 27   0A               BEQ    DERADD    DERNIERE ADRESSE ?
  935   E623 8D   9E               BSR    BITLSB    NON, CONTINUER A CHARGER
  936   E625 E7   80               STB    ,X+       ET A METTRE EN MEMOIRE
  937   E627 34   04               PSHS   B
  938   E629 AB   E0               ADDA   ,S+       A + B DANS ACCA
  939   E62B 20   F2               BRA    SUICHA
  940   E62D 8D   94       DERADD  BSR    BITLSB    OUI, DERNIERE ADRESSE
  941   E62F 34   04               PSHS   B
  942   E631 AB   E0               ADDA   ,S+       ERREUR DANS LA TRANSMISSION
  943   E633 27   BC               BEQ    DETECS
  944   E635 86   78               LDA    #$78      OUI, AFFICHER L'ERREUR
  945   E637 17   FC4E     DISFIN  LBSR   CLRDIS
  946   E63A 97   FA               STA    <DISBUF
  947   E63C 17   FA3C     BOUFIN  LBSR   DISPRE
  948   E63F 20   FB               BRA    BOUFIN


  950                      ****** CHARGEMENT D'UN PROGRAMME D'UNE ZONE MEMOIRE ******
  951                      *******************VERS UN MAGNETOCASSETTE ***************
  952                      **********************************************************


  954   E641 8E   003D     EXPUNC  LDX    #$003D
  955   E644 9F   FE               STX    <DISBUF+4 AFFICHER S POUR START
  956   E646 17   FA6C             LBSR   BADDR     FABRIQUER ADRESSE DE DEBUT
  957   E649 9F   F2               STX    <SADDR1   SAUVE DEBUT ADRESSE
  958   E64B 86   69               LDA    #$69      AFFICHER F POUR FIN
  959   E64D 97   FF               STA    <DISBUF+5
  960   E64F 17   FA63             LBSR   BADDR     FABRIQUER ADRESSE DE FIN
  961   E652 9F   F4               STX    <SADDR2   SAUVE FIN ADRESSE
  962   E654 4F                    CLRA             ACCES A DDRB
  963   E655 B7   A007             STA    SCNCNT
  964   E658 4A                    DECA             PB EN SORTIE
  965   E659 B7   A005             STA    DISCNT
  966   E65C 86   04               LDA    #$04      ACCES A ORB DU PIA
  967   E65E B7   A007             STA    SCNCNT
  968   E661 4F                    CLRA             LIGNE No 0 A 0 ET PB6 = 0
  969   E662 B7   A005             STA    DISCNT
  970   E665 86   FF               LDA    #$FF
  971   E667 8D   71               BSR    DLY5MS    FABRICATION D'UNE SERIE
  972   E669 8D   6F               BSR    DLY5MS    DE 10 PERIODES DE 1400 ET 5600HZ
  973   E66B 8D   63       RECYCL  BSR    DEBCHA    CHARGER CARACTERE DE DEBUT
  974   E66D 86   FF               LDA    #$FF
  975   E66F D6   F3               LDB    <SADDR1+1 POIDS FAIBLE ADRESSE DEBUT
  976   E671 34   04               PSHS   B
  977   E673 A0   E0               SUBA   ,S+       A + B DANS ACCA
  978   E675 84   0F       CODFIN  ANDA   #$0F
  979   E677 8B   03               ADDA   #$03      TRANSMISSION D'UN CARACTERE
  980   E679 8D   5F               BSR    DLY5MS    INTERVALE
  981   E67B 97   F1               STA    <SAVREG
  982   E67D 8E   07F2             LDX    #SADDR1   DEBUT ADRESSE
  983   E680 8D   56               BSR    TRANSM    TRANSMISSION MSB ADRESSE DEBUT
  984   E682 9B   F1               ADDA   <SAVREG
  985   E684 97   F1               STA    <SAVREG
  986   E686 30   01               LEAX   1,X
  987   E688 8D   4E               BSR    TRANSM    TRANSMISSION LSB ADRESSE DEBUT
  988   E68A 9B   F1               ADDA   <SAVREG
  989   E68C 97   F1               STA    <SAVREG
  990   E68E 9E   F2               LDX    <SADDR1   X POINTE SUR PROGRAMME A ENREGISTRER
  991   E690 8D   46       TJTRAN  BSR    TRANSM    TRANSMISSION DES DONNEES
  992   E692 9B   F1               ADDA   <SAVREG
  993   E694 97   F1               STA    <SAVREG
  994   E696 9C   F4               CMPX   <SADDR2   FIN D'ENREGISTREMENT ?
  995   E698 27   0A               BEQ    FINENR    OUI, TRANSMETTRE FIN
  996   E69A 30   01               LEAX   1,X       NON, DONNEE SUIVANTE A TRANSMETTRE
  997   E69C 9F   F2               STX    <SADDR1   SAUVE POINTEUR
  998   E69E 96   F3               LDA    <SADDR1+1
  999   E6A0 85   0F               BITA   #$0F      16 CARACTERES TRANSMIS ?
 1000   E6A2 26   EC               BNE    TJTRAN    NON, CONTINUER TRANSMISSION
 1001   E6A4 96   F1       FINENR  LDA    <SAVREG   OUI, 16 CARACTERES TRANSMIS
 1002   E6A6 40                    NEGA
 1003   E6A7 8D   31               BSR    DLY5MS    TRANSMISSION CODE POUR 16CARAC TRANSMIS
 1004   E6A9 9C   F4               CMPX   <SADDR2   FIN PROGRAMME ?
 1005   E6AB 27   18               BEQ    FINCHA    OUI, TRANSMETTRE FIN CHARGEMENT
 1006   E6AD 96   F2               LDA    <SADDR1   NON, MSB DEBUT ADRESSE
 1007   E6AF 91   F4               CMPA   <SADDR2   < MSB FIN ADRESSE ?
 1008   E6B1 2B   B8               BMI    RECYCL    OUI, RECOMMENCER CYCLE
 1009   E6B3 D6   F3               LDB    <SADDR1+1 NON, LSB DEBUT ADRESSE
 1010   E6B5 96   F5               LDA    <SADDR2+1 -LSB FIN ADRESSE <>0 ?
 1011   E6B7 84   F0               ANDA   #$F0
 1012   E6B9 34   04               PSHS   B
 1013   E6BB A1   E0               CMPA   ,S+       COMPARE B A ACCA
 1014   E6BD 26   AC               BNE    RECYCL    OUI, RECOMMENCER UN CYCLE
 1015   E6BF 8D   0F               BSR    DEBCHA    NON, TRANSMETTRE DEBUT CHARGEMENT
 1016   E6C1 96   F5               LDA    <SADDR2+1 DU CODE DE FIN
 1017   E6C3 20   B0               BRA    CODFIN    CHARGEMENT PUIS FIN


 1019                      ****** FABRICATION DU SIGNAL DE FIN DE CHARGEMENT ******
 1020                      *
 1021                      *
 1022   E6C5 86   53       FINCHA  LDA    #$53
 1023   E6C7 8D   11               BSR    DLY5MS
 1024   E6C9 86   4A               LDA    #$4A
 1025   E6CB 8D   0D               BSR    DLY5MS
 1026   E6CD 16   FF31             LBRA   AFICHA    AFFICHAGE FIN DE CHARGEMENT


 1028                      ****** FABRICATION DU SIGNAL DE DEBUT DE CHARGEMENT ******
 1029                      *
 1030                      *
 1031   E6D0 86   53       DEBCHA  LDA    #$53
 1032   E6D2 8D   06               BSR    DLY5MS    TRANSMISSION CARACTERE S
 1033   E6D4 86   31               LDA    #$31
 1034   E6D6 20   02               BRA    DLY5MS    TRANSMISSION DU CARACTERE 1


 1036                      ****** FABRICATION DU SIGNAL SERIALISE ******
 1037                      *********** DE 10 PERIODES PAR DONNEES **********
 1038                      *
 1039                      *
 1040   E6D8 A6   84       TRANSM  LDA    ,X
 1041   E6DA 34   06       DLY5MS  PSHS   B,A
 1042   E6DC C6   0A               LDB    #$0A
 1043   E6DE D7   EF               STB    <SAVRES
 1044   E6E0 1C   FE               ANDCC  #$FE      METTRE CARRY A 0
 1045   E6E2 C6   90       BOUCL3  LDB    #$90      DELAI = 720MICROSEC
 1046   E6E4 24   02               BCC    SAUT
 1047   E6E6 C6   24               LDB    #$24      DELAI = 180MICROSEC
 1048   E6E8 34   04       SAUT    PSHS   B
 1049   E6EA C6   40               LDB    #$40
 1050   E6EC F7   A005             STB    DISCNT    PB6=1
 1051   E6EF E6   E4               LDB    ,S
 1052   E6F1 5A            BOUCL1  DECB             DELAY 180 OU 720MICROSEC
 1053   E6F2 26   FD               BNE    BOUCL1
 1054   E6F4 F7   A005             STB    DISCNT    PB6=0
 1055   E6F7 35   04               PULS   B
 1056   E6F9 5A            BOUCL2  DECB             NOUVEAU DELAY DE 180 OU 720MICROSEC
 1057   E6FA 26   FD               BNE    BOUCL2
 1058   E6FC 1A   01               ORCC   #$01      METTRE CARRY A 1
 1059   E6FE 46                    RORA
 1060   E6FF 0A   EF               DEC    <SAVRES
 1061   E701 26   DF               BNE    BOUCL3    TERMINER DELAY DE 5MS
 1062   E703 35   86               PULS   PC,B,A


 1064                      ***** EXECUTION DE LA FONCTION OFFSET *****
 1065                      *
 1066                      *
 1067                      *
 1068   E705 17   FA5B     EXOFST  LBSR   INCREM
 1069   E708 A6   84               LDA    ,X
 1070   E70A 81   16               CMPA   #$16      LBRA?
 1071   E70C 27   34               BEQ    EXLBIL    OUI, BRANCHEMENT LONG INCONDITIONNEL
 1072   E70E 81   17               CMPA   #$17      LBSR/
 1073   E710 27   30               BEQ    EXLBIL    OUI, //////////////////////////////
 1074   E712 A6   82               LDA    ,-X       POINTER SUR INSTRUCTION PRECEDENTE
 1075   E714 81   10               CMPA   #$10      BRANCHEMENT CONDITIONNEL LONG?
 1076   E716 27   28               BEQ    EXLBCL    OUI
 1077   E718 30   03       OFPOCT  LEAX   3,X       X CONTIENT ADRESSE DU BRANCHEMENT COURT
 1078   E71A 8D   3B               BSR    CALOFS    CALCULER OFFSET
 1079   E71C 29   72               BVS    RETOU1    SI DEPASSEMENT DE CAPACITE, ERREUR
 1080   E71E 95   E9               BITA   <NEGPOS
 1081   E720 27   04               BEQ    BRANPO    TOUT MSB A 0 = BRANCH POS
 1082   E722 2B   09               BMI    BRANNE    MSBIT=1 BRANCH NEG
 1083   E724 20   6A               BRA    RETOU1    BRANCH SUR 16 BITS
 1084   E726 5D            BRANPO  TSTB
 1085   E727 27   67               BEQ    RETOU1    BRANCH NUL IMPOSSIBLE 
 1086   E729 2B   65               BMI    RETOU1    N=1, ERREUR BRANCH=16BITS
 1087   E72B 20   0B               BRA    CHARGE    N=0, CHARGE OFFSET DS MEM PROG
 1088   E72D 91   E9       BRANNE  CMPA   <NEGPOS   A=FF?
 1089   E72F 26   5F               BNE    RETOU1    NON, ERREUR BRANCH SUR 16 BITS
 1090   E731 5D                    TSTB             POSITIONNER N
 1091   E732 2A   5C               BPL    RETOU1    N=0, BRANCH SUR 16BITS
 1092   E734 C1   FF               CMPB   #$FF
 1093   E736 27   58               BEQ    RETOU1
 1094   E738 E7   A2       CHARGE  STB    ,-Y       STOCKE OFFSET DS MEM PROG
 1095   E73A 17   008E             LBSR   AFFIAD    AFFICHE ADRESSE DE STOCKAGE
 1096   E73D 16   F9F0             LBRA   REMEMO    RETOUR DS FCT MEMOIRE
 1097   E740 30   01       EXLBCL  LEAX   1,X
 1098   E742 30   03       EXLBIL  LEAX   3,X       BRANCH LONG, X=ADRESSE DE DEPART
 1099   E744 8D   11               BSR    CALOFS    CALCULE OFFSET
 1100   E746 29   4C               BVS    RETOU2    SI DEPASSE CAPACITE, ERREUR
 1101   E748 81   FF               CMPA   #$FF
 1102   E74A 27   38               BEQ    PLUCOU    BRANCH COURT PEUT ETRE POSSIBLE
 1103   E74C 81   00               CMPA   #$00
 1104   E74E 27   3A               BEQ    BCOURT    BRANCH>0 COURT POSSIBLE
 1105   E750 ED   A3       SUITEB  STD    ,--Y      STOCKE OFFSET DS MEM PROG
 1106   E752 8D   77               BSR    AFFIAD    AFFICHE ADRESSE
 1107   E754 16   F9D9             LBRA   REMEMO    RETOUR DS FCT MEMOIRE


 1109                      ****** CALCULE L'OFFSET SUR 16 BITS ******
 1110                      **** D CONTIENT L'OFFSET,Y=ADRESSE DEP ***
 1111                      *
 1112                      *
 1113                      *
 1114   E757 1F   12       CALOFS  TFR    X,Y       Y=ADRESSE DE DEPART
 1115   E759 109F EA               STY    <ADDDEP
 1116   E75C 8D   05               BSR    AFFIAR    AFFICHAGE ADRESSE ARRIVEE
 1117   E75E 1F   10               TFR    X,D       D=ADRESSE DEPART
 1118   E760 93   EA               SUBD   <ADDDEP   D=ARRIVEE-DEPART=OFFSET
 1119   E762 39                    RTS


 1121                      ****** AFFICHAGE DE L'ADRESSE D'ARRIVEE ******
 1122                      ** STOCKE DS NEGPOS LE SENS DE L'OFFSET<>0 ***
 1123                      *
 1124                      *
 1125                      *
 1126   E763 CC   6F41     AFFIAR  LDD    #$6F41    AFFICHE AR DS DISBUF
 1127   E766 DD   FE               STD    <DISBUF+4
 1128   E768 17   F94A             LBSR   BADDR     AFFICHE ADRESSE ARRIVEE
 1129   E76B 9F   EC               STX    <ADDARR
 1130   E76D 17   F8B0             LBSR   GETKEY
 1131   E770 81   31               CMPA   #$31      TOUCHE GO?
 1132   E772 27   03               BEQ    SUIVT     OUI, CHARGE ADRESSE
 1133   E774 16   FAB0             LBRA   RPOINT
 1134   E777 17   FB0E     SUIVT   LBSR   CLRDIS    ETEINDRE AFFICHAGE
 1135   E77A 86   FF               LDA    #$FF
 1136   E77C 9C   EA               CMPX   <ADDDEP   ARRIVEE<DEPART ?
 1137   E77E 25   01               BLO    STOCKA    OUI, STOCKE DS NEGPOS
 1138   E780 4C                    INCA
 1139   E781 97   E9       STOCKA  STA    <NEGPOS   NEGPOS=0>0 NEGPOS=FF<0
 1140   E783 39                    RTS


 1142                      ** DETERMINE SI LE BRANCH SUR 16BITS PEUT SE FAIRE SUR 8BITS **
 1143                      *
 1144                      *
 1145                      *
 1146   E784 59            PLUCOU  ROLB
 1147   E785 25   0D               BCS    RETOU2    BRANCH COURT POSSIBLE
 1148   E787 56                    RORB
 1149   E788 20   C6               BRA    SUITEB    CONTINUE CALCUL
 1150   E78A 59            BCOURT  ROLB
 1151   E78B 24   07               BCC    RETOU2
 1152   E78D 56                    RORB
 1153   E78E 20   C0               BRA    SUITEB
 1154   E790 31   3E       RETOU1  LEAY   -2,Y
 1155   E792 20   1D               BRA    CLIGNO    AFFICHE ERREUR, PUIS RETOUR MEMORY
 1156   E794 31   3C       RETOU2  LEAY   -4,Y
 1157   E796 A6   A0               LDA    ,Y+
 1158   E798 81   10               CMPA   #$10
 1159   E79A 27   13               BEQ    CLIGNE
 1160   E79C A6   A4               LDA    ,Y
 1161   E79E 81   16               CMPA   #$16
 1162   E7A0 27   0F               BEQ    CLIGNO
 1163   E7A2 81   17               CMPA   #$17
 1164   E7A4 27   0B               BEQ    CLIGNO
 1165   E7A6 84   8F               ANDA   #$8F
 1166   E7A8 81   8D               CMPA   #$8D
 1167   E7AA 27   05               BEQ    CLIGNO
 1168   E7AC 16   FA78             LBRA   RPOINT    SI PAS BRANCH, RETOUR RESET
 1169   E7AF 31   3F       CLIGNE  LEAY   -1,Y
 1170   E7B1 8D   18       CLIGNO  BSR    AFFIAD    AFFICHE ADRESSE OU EST L'ERREUR
 1171   E7B3 8D   09               BSR    ERROR     PLACE ERREUR DS DISBUF
 1172   E7B5 108E 02FF             LDY    #$02FF
 1173   E7B9 17   F8BF     AFCLIG  LBSR   DISPRE    AFFICHE L'ERREUR
 1174   E7BC 20   06               BRA    TEMPO     TEMPORAIREMENT
 1175   E7BE CC   7941     ERROR   LDD    #$7941    PLACE ER DANS LES 2
 1176   E7C1 DD   FE               STD    <DISBUF+4 DERNIERS DIGITS
 1177   E7C3 39                    RTS
 1178   E7C4 31   3F       TEMPO   LEAY   -1,Y
 1179   E7C6 26   F1               BNE    AFCLIG
 1180   E7C8 16   F965             LBRA   REMEMO    RETOUR DANS FCT MEMORY


 1182                      ****** AFFICHE L'ADRESSE DE CHARGEMENT ******
 1183                      ** DE L'OFFSET DANS LES 4 PREMIERS DIGITS ***
 1184                      *
 1185                      *
 1186                      *
 1187   E7CB 1F   21       AFFIAD  TFR    Y,X
 1188   E7CD 1F   10               TFR    X,D       NLLE ADRESSE DE DEP APRES INSTRUC
 1189   E7CF 17   F92E             LBSR   R7SEG
 1190   E7D2 97   FB               STA    <DISBUF+1
 1191   E7D4 1F   10               TFR    X,D
 1192   E7D6 17   F923             LBSR   L7SEG
 1193   E7D9 97   FA               STA    <DISBUF
 1194   E7DB 1F   98               TFR    B,A
 1195   E7DD 17   F920             LBSR   R7SEG
 1196   E7E0 97   FD               STA    <DISBUF+3
 1197   E7E2 1F   98               TFR    B,A
 1198   E7E4 17   F915             LBSR   L7SEG
 1199   E7E7 97   FC               STA    <DISBUF+2
 1200   E7E9 39                    RTS


 1202                      *************************
 1203                      ****** NMI ROUTINE ******
 1204                      *************************

 1206   E7EA BE   07DD     RNMI    LDX    SAVNMI
 1207   E7ED 6E   84               JMP    ,X        EXECUTE ROUTINE NMI


 1209                      *************************************
 1210                      ****** VECTEURS D'INTERRUPTION ******
 1211                      *************************************


 1213   E7F2                       ORG    $E7F2

 1215   E7F2 077A                  FDB    RSWI3     INTERRUPTION SOFT No 3
 1216   E7F4 E27C                  FDB    RSWI2     INTERRUPTION SOFT No 2
 1217   E7F6 0775                  FDB    RFIRQ     INTERRUPTION RAPIDE HARD
 1218   E7F8 0770                  FDB    RIRQ      INTERRUPTION NORMALE HARD
 1219   E7FA E2A7                  FDB    RSWI      INTERRUPTION SOFT No 1
 1220   E7FC E7EA                  FDB    RNMI      INTERRUPTION NON MASQUABLE HARD
 1221   E7FE E219                  FDB    RESTAR    RESET GENERAL


 1223                      ***************************************
 1224                      ****** EMPLACEMENT DES REGISTRES ******
 1225                      ***************************************


 1227                07A0  PILMON  EQU    $07A0     INITIALISATION PILE MONITEUR
 1228                07C0  PILE    EQU    $07C0     PILE SYSTEME
 1229                077A  RSWI3   EQU    $077A
 1230                0775  RFIRQ   EQU    $0775
 1231                0770  RIRQ    EQU    $0770
 1232                A004  DISREG  EQU    $A004     DRA-ACCES CLAVIER ET SEGMENTS
 1233                A005  DISCNT  EQU    $A005     ORB-COMMANDE CLAVIER ET AFFICHEUR
 1234                A006  SCNREG  EQU    $A006     PIACRA
 1235                A007  SCNCNT  EQU    $A007     PIACRB


 1237                      ************************************************
 1238                      ****** PARAMETRES VARIABLES SITUES EN RAM ******
 1239                      ************************************************


 1241   07DD                       ORG    $07DD

 1243   07DD               SAVNMI  RMB    2
 1244   07DF               SASWI2  RMB    2
 1245   07E1               PRESER  RMB    1
 1246   07E2               SAUVER  RMB    1
 1247   07E3               PLUSMS  RMB    1
 1248   07E4               SAVPOC  RMB    1
 1249   07E5               PRESEH  RMB    1
 1250   07E6               PRESEL  RMB    1
 1251   07E7               PRELOW  RMB    2
 1252   07E9               NEGPOS  RMB    1
 1253   07EA               ADDDEP  RMB    2
 1254   07EC               ADDARR  RMB    2
 1255   07EE               COMDEC  RMB    1
 1256   07EF               SAVRES  RMB    1
 1257   07F0               SAVCNT  RMB    1
 1258   07F1               SAVREG  RMB    1
 1259   07F2               SADDR1  RMB    2
 1260   07F4               SADDR2  RMB    2
 1261   07F6               SAVB1   RMB    1
 1262   07F7               SAVB2   RMB    1
 1263   07F8               SAVPIL  RMB    2
 1264   07FA               DISBUF  RMB    6


 1266                              END

0 ERROR(S) DETECTED

SYMBOL TABLE:

ADDARR 07EC   ADDDEP 07EA   AF2DIG E2E2   AFCLIG E7B9   AFEROR E56A   
AFFIAD E7CB   AFFIAR E763   AFICHA E601   AFIVAL E3DD   AFSIGN E5BD   
BADDR  E0B5   BCOURT E78A   BITCA0 E5D3   BITCA1 E5C5   BITLSB E5C3   
BOUCL1 E6F1   BOUCL2 E6F9   BOUCL3 E6E2   BOUFIN E63C   BPOINT E206   
BRANNE E72D   BRANPO E726   CAL16  E4DB   CALCON E404   CALCU8 E4EC   
CALCUL E501   CALOFS E757   CALPOT E1E1   CARRY1 E5B0   CARSUI E605   
CHAN16 E3C8   CHANG8 E3B3   CHAR16 E49F   CHARGE E738   CHPOST E44D   
CHTCHI E4AB   CHTDON E4AE   CLIGNE E7AF   CLIGNO E7B1   CLRDIS E288   
CODFIN E675   COLSUI E050   COMDEC 07EE   COMPAB E422   COMPAR E4A3   
COMPR2 E516   COMPR3 E522   COMPR4 E534   COMPR5 E55D   CONHEX E112   
CONROT E5CB   CONTI  E201   DEBCHA E6D0   DECENC E575   DECHEX E4F4   
DECKEY E05B   DECRE  E1A8   DECTJS E57B   DEPLAC E4E2   DERADD E62D   
DETECS E5F1   DIGTBL E010   DISBUF 07FA   DISCNT A005   DISFIN E637   
DISPRE E07B   DISREG A004   DLY1   E0AA   DLY2   E06D   DLY30U E5A5   
DLY5MS E6DA   DONEA  E125   ENCDON E140   ENCORE E296   EREURE E428   
ERREUR E426   ERROR  E7BE   EXCN   E26E   EXDEC  E178   EXINC  E17A   
EXLBCL E740   EXLBIL E742   EXLOAD E5D9   EXMEMO E127   EXOFST E705   
EXPOCT E1AE   EXPUNC E641   EXREGI E34F   FADDRX E0AF   FINCAL E571   
FINCHA E6C5   FINCLA E026   FINENR E6A4   FONCTI E11E   FONREG E307   
GETKEY E020   HEXCON E0E7   HEXIN7 E0CC   INCREM E163   INTER  E2F4   
INTER2 E29C   INTER3 E597   INTR05 E434   INTR08 E467   INTR16 E488   
INTVAL E4BF   KEYHEX E0E4   KEYTBL E000   L7SEG  E0FC   LIGSUI E03B   
LSBDSA E573   M10000 E54B   MOINS  E1FB   MSBDON E4B4   MSBLSB E582   
MUL100 E58B   MULFIN E52E   MULPAR E50D   MUP100 E591   NDVALH E107   
NEGPOS 07E9   NONFIN E11A   NOREB  E06C   NOUDLY E59D   OFFSET E1C3   
OFPOCT E718   PILE   07C0   PILMON 07A0   PLUCOU E784   PLUS   E1F4   
PLUSMS 07E3   POCPOS E449   POSITI E457   PRELOW 07E7   PRESEH 07E5   
PRESEL 07E6   PRESER 07E1   PREXIN E182   PROMPT E291   R7SEG  E100   
R8BREG E39D   RCR    E484   RE8BIT E33E   REBIT8 E343   RECBIT E59B   
RECMCE E53F   RECOM  E098   RECYCL E66B   REG16B E3A8   REGPC  E348   
REGPRE E31C   REGSUI E2FB   REGTBL E29E   REMEMO E130   RESTAR E219   
RETOU1 E790   RETOU2 E794   RETOUR E4E1   RFIRQ  0775   RIRQ   0770   
RNMI   E7EA   ROUNMI E272   RPOINT E227   RSWI   E2A7   RSWI2  E27C   
RSWI3  077A   SADDR1 07F2   SADDR2 07F4   SASWI2 07DF   SAUT   E6E8   
SAUVER 07E2   SAVB1  07F6   SAVB2  07F7   SAVCNT 07F0   SAVNMI 07DD   
SAVPIL 07F8   SAVPOC 07E4   SAVREG 07F1   SAVRES 07EF   SCARRY E59F   
SCNCNT A007   SCNREG A006   SCRUDE E316   SCRUTA E09F   SCRUTC E0EE   
SECPAR E54D   STADON E482   STOCKA E781   STODON E47A   SUI    E4D3   
SUICHA E61F   SUITEB E750   SUITEP E4C8   SUITER E2CE   SUIVT  E777   
TEMPO  E7C4   TESTER E557   TESTST E41A   TJTRAN E690   TOUREG E2BB   
TRANSM E6D8   TSTDEC E310   TSTPOC E444   TSTSUI E42D   VALHEX E10E   





