Freeware assember ASxx.EXE Ver 1.03. 0001 ;******************************************************** 0002 ;* cidncse.asm * 0003 ;* Ajouts commentaires * 0004 ;* Correction syntaxe en $c2e6; * 0005 ;* modif en $c571 : detecte un numero a 10 chiffres:$0A * 0006 ;* modif norme +10 chiffres rempl detect $3 par $2:$C4F0* 0007 ;* modif norme +10 chiffres rempl detect $3 par $2:$CA5E* 0008 ;* modif affichage date Jour/mois en :$cb7b * 0009 ;* ajout routine checksum Eprom en: $cd56 * 0010 ;* modif repertoire 17 numeros - * 0011 ;* modif repertoire Nø … 10 CHIFFRES (le 19/06/1998) * 0012 ;* MB le 01/02/1998 - le 19/06/1998 cs le 06/09/1998 * 0013 ;* Support repertoire en EPROM (LCE75,76)- le 11/06/2000* 0014 ;* cidplus * 0015 ;* modif LC9E9 * 0016 ;******************************************************** 0017 0018 ;-------------------------------- 0019 ;| EQUATES SECTION | 0020 ;-------------------------------- 0021 1039 OPTION equ $1039 0022 102b BAUD equ $102B 0023 1026 PACTL equ $1026 0024 1008 PORTD equ $1008 0025 100a PORTE equ $100A 0026 103b PPROG equ $103B 0027 102c SCCR1 equ $102C 0028 102d SCCR2 equ $102D 0029 102f SCDR equ $102F 0030 102e SCSR equ $102E 0031 1025 TFLG2 equ $1025 0032 1024 TMSK2 equ $1024 0033 ;------------------------------------ 0034 ;| VARIABLES | 0035 ;------------------------------------ 0036 0037 0000 org $0000 ;variables doit etre quelque part en RAM 0038 0000 L0000: rmb 1 0039 0001 L0001: rmb 1 0040 0002 L0002: rmb 1 0041 0003 L0003: rmb 1 0042 0004 L0004: rmb 1 0043 0005 L0005: rmb 1 0044 0006 L0006: rmb 1 0045 0007 L0007: rmb 1 0046 0008 L0008: rmb 1 0047 0009 L0009: rmb 1 0048 000a L000A: rmb 1 0049 000b L000B: rmb 1 0050 000c L000C: rmb 1 0051 000d L000D: rmb 1 0052 000e L000E: rmb 1 0053 ;-------------------------------- 0054 ;| MAIN | 0055 ;-------------------------------- 0056 c000 ORG $0C000 0057 ; 0058 c000 54 68 69 73 20 70 begin: fcc "This program is copyright 1994 by:" 72 6f 67 72 61 6d 20 69 73 20 63 6f 70 79 72 69 67 68 74 20 31 39 39 34 20 20 62 79 3a 0059 c023 20 20 20 20 20 20 fcc " Grant Beattie Edmonton, AB Canada" 20 20 20 20 20 20 20 20 20 47 72 61 6e 74 20 42 65 61 74 74 69 65 20 20 20 45 64 6d 6f 6e 74 6f 6e 2c 20 20 41 42 20 20 20 20 20 20 43 61 6e 61 64 61 0060 c05b 20 20 20 20 20 2d fcc " ----------------All rights reserved!" 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 41 6c 6c 20 72 69 67 68 74 73 20 20 20 20 20 20 72 65 73 65 72 76 65 64 21 0061 c089 20 20 54 68 69 73 fcc " This program may not be copied or " 20 70 72 6f 67 72 61 6d 20 6d 61 79 20 6e 6f 74 20 62 65 20 63 6f 70 69 65 64 20 6f 72 20 20 0062 c0ae 20 20 75 73 65 64 fcc " used in whole orin part without the expressed " 20 69 6e 20 77 68 6f 6c 65 20 6f 72 69 6e 20 70 61 72 74 20 77 69 74 68 6f 75 74 20 74 68 65 20 65 78 70 72 65 73 73 65 64 20 0063 c0de 20 20 77 72 69 74 fcc " written consent of the author. " 74 65 6e 20 63 6f 6e 73 65 6e 74 20 6f 66 20 74 68 65 20 61 75 74 68 6f 72 2e 20 20 0064 c100 2a 20 20 20 43 41 titre1: fcc "* CALLER-ID *" 4c 4c 45 52 2d 49 44 20 20 2a 0065 c110 00 fcb 0 0066 c111 31 39 39 37 2c 20 titre2: fcc "1997, M. Benoit " 4d 2e 20 42 65 6e 6f 69 74 20 0067 c121 00 fcb 0 0068 c122 2a 20 49 6e 69 74 init: fcc "* Initializing *" 69 61 6c 69 7a 69 6e 67 20 2a 0069 c132 00 fcb 0 0070 c133 2a 20 20 20 20 4e names: fcc "* Noms! *" 6f 6d 73 21 20 20 20 20 20 2a 0071 c143 00 fcb 0 0072 c144 2a 20 41 74 74 65 wait: fcc "* Attente *" 6e 74 65 20 20 20 20 20 20 2a 0073 c154 00 fcb 0 0074 c155 2a 20 64 27 61 70 call: fcc "* d'appel... *" 70 65 6c 2e 2e 2e 20 20 20 2a 0075 c165 00 fcb 0 0076 c166 43 68 6f 69 78 20 choix: fcc "Choix Nom: #" 4e 6f 6d 3a 20 20 20 23 0077 c174 00 fcb 0 0078 c175 21 20 20 42 61 64 bad: fcc "! Bad EPROM !" 20 20 45 50 52 4f 4d 20 20 21 0079 c185 00 fcb 0 0080 c186 21 20 43 61 6c 6c usine: fcc "! Call Factory !" 20 46 61 63 74 6f 72 79 20 21 0081 c196 00 fcb 0 0082 c197 12 15 15 15 15 15 cspec1: fcb $12,$15,$15,$15,$15,$15,$12 ;caractere special |0 12 0083 c19e 00 end: fcb 0 0084 c19f 04 08 0e 11 1f 10 cspec2: fcb $04,$08,$0E,$11,$1F,$10,$0E ; e accent aigu 0e 0085 c1a6 00 end2: fcb 0 0086 0087 c1a7 86 40 Main: ldaa #$40 0088 c1a9 b7 10 39 staa OPTION 0089 c1ac 8e 00 ff LC1A4: lds #$00FF ;initialisation pile 0090 c1af bd cd a9 jsr LCD50 0091 c1b2 86 38 ldaa #$38 ;afficheur en mode 8 bits 0092 c1b4 b7 40 00 staa $4000 ;avec 2 lignes d'affichage 0093 c1b7 bd cd a9 jsr LCD50 0094 c1ba 86 01 ldaa #$01 ;efface l'afficheur 0095 c1bc b7 40 00 staa $4000 0096 c1bf bd cd a9 jsr LCD50 0097 c1c2 86 0f ldaa #$0F ;allume l'afficheur,curseur 0098 c1c4 b7 40 00 LC1BC: staa $4000 0099 c1c7 bd cd a9 jsr LCD50 0100 c1ca 86 06 ldaa #$06 ;mode incremente l'adresse de 1 0101 c1cc b7 40 00 staa $4000 0102 c1cf 86 40 ldaa #$40 ;passage en mode envoi de donnees 0103 c1d1 bd cd a9 jsr LCD50 0104 c1d4 b7 40 00 staa $4000 0105 c1d7 c6 08 ldab #$08 0106 c1d9 ce c1 97 ldx #cspec1 0107 c1dc a6 00 LC1D4: ldaa 0,X ;12 ->A 0108 c1de 08 inx ;incremente le pointeur 0109 c1df bd cd 8f jsr LCD36 ;envoi de donnees 0110 c1e2 5a decb ;7 octets (12,15,15,15,15,15,12) 0111 c1e3 26 f7 bne LC1D4 ;caractere special |0 0112 c1e5 ce c1 9f ldx #cspec2 0113 c1e8 c6 08 ldab #$08 0114 c1ea a6 00 LCS2: ldaa 0,X ;envoi 2eme caractere Spec. 0115 c1ec 08 inx 0116 c1ed bd cd 8f jsr LCD36 0117 c1f0 5a decb 0118 c1f1 26 f7 bne LCS2 0119 c1f3 86 01 ldaa #$01 ;efface l'ecran 0120 c1f5 bd cd a9 jsr LCD50 0121 c1f8 b7 40 00 staa $4000 0122 0123 c1fb bd cd af jsr LCD56 0124 c1fe 1a 83 77 c4 cpd #$077C4 ;checksum 0125 c202 27 16 beq LC204 ;ignore le test de l'eprom 0126 c204 ce c1 75 ldx #bad ;Bad Eprom 0127 c207 bd cd 98 jsr LCD3F 0128 c20a 86 c0 ldaa #$0C0 0129 c20c bd cd a9 jsr LCD50 0130 c20f b7 40 00 staa $4000 0131 c212 ce c1 86 ldx #usine ;Call Factory 0132 c215 bd cd 98 jsr LCD3F 0133 c218 20 fe LC202: bra LC202 ; 0134 c21a ce c1 00 LC204: ldx #titre1 ;affiche le titre 0135 c21d bd cd 98 jsr LCD3F 0136 c220 86 c0 ldaa #$0C0 ;passage 2eme ligne 0137 c222 bd cd a9 jsr LCD50 0138 c225 b7 40 00 staa $4000 0139 c228 ce c1 11 ldx #titre2 ;affiche suite du titre 0140 c22b bd cd 98 jsr LCD3F 0141 c22e ce 00 c8 ldx #$00C8 0142 c231 bd cd 0b LC21B: jsr LCCB2 ;routine de tempo 0143 c234 09 dex ;imbriquee 0144 c235 26 fa bne LC21B 0145 c237 86 01 ldaa #$01 ;efface l'afficheur 0146 c239 bd cd a9 jsr LCD50 0147 c23c b7 40 00 staa $4000 0148 c23f ce c1 22 ldx #init ;affiche 'Initializing..' 0149 c242 bd cd 98 jsr LCD3F 0150 c245 86 c0 ldaa #$0C0 ;passe a la 2eme ligne 0151 c247 bd cd a9 jsr LCD50 0152 c24a b7 40 00 staa $4000 0153 c24d ce c1 33 ldx #names ;affiche 'Noms' 0154 c250 bd cd 98 jsr LCD3F 0155 c253 ce b6 10 ldx #$B610 ;charge une adresse en EEPROM 0156 c256 c6 0a LC240: ldab #$0A ;rempl $07 par $0A (10 chiffres) 0157 c258 a6 00 LC242: ldaa 0,X 0158 c25a 81 30 cmpa #$30 ;regarde le contenu de l'E2PROM 0159 c25c 24 0a bcc LC252 ;si elle est bien ininitialisee 0160 c25e 86 30 ldaa #$30 0161 c260 bd cd 18 jsr LCCBF ;efface l'E2PROM octets/octets 0162 c263 bd cd 2d jsr LCCD4 ;programme l'E2PROM 0163 c266 20 0c bra LC25E 0164 c268 81 39 LC252: cmpa #$39 0165 c26a 23 08 bls LC25E 0166 c26c 86 30 ldaa #$30 0167 c26e bd cd 18 jsr LCCBF 0168 c271 bd cd 2d jsr LCCD4 0169 c274 08 LC25E: inx 0170 c275 5a decb 0171 c276 26 e0 bne LC242 0172 c278 c6 10 ldab #$10 ;16 caracteres =$10 (nom) 0173 c27a a6 00 LC264: ldaa 0,X 0174 c27c 81 20 cmpa #$20 0175 c27e 24 0a bcc LC274 0176 c280 86 20 ldaa #$20 0177 c282 bd cd 18 jsr LCCBF 0178 c285 bd cd 2d jsr LCCD4 0179 c288 20 0c bra LC280 0180 c28a 81 7f LC274: cmpa #$7F 0181 c28c 23 08 bls LC280 0182 c28e 86 20 ldaa #$20 0183 c290 bd cd 18 jsr LCCBF 0184 c293 bd cd 2d jsr LCCD4 0185 c296 08 LC280: inx 0186 c297 5a decb 0187 c298 26 e0 bne LC264 0188 c29a a6 00 ldaa 0,X 0189 c29c 27 07 beq LC28F 0190 c29e 4f clra 0191 c29f bd cd 18 jsr LCCBF 0192 c2a2 bd cd 2d jsr LCCD4 0193 c2a5 08 LC28F: inx 0194 c2a6 8c b7 db cpx #$B7DB ; rempl $B7F0 par $B7DB 0195 c2a9 25 ab bcs LC240 0196 c2ab 86 06 ldaa #$06 ; 1200 Bds 0197 c2ad b7 10 2b staa BAUD 0198 c2b0 4f clra 0199 c2b1 b7 10 2c staa SCCR1 0200 c2b4 86 04 ldaa #$04 0201 c2b6 b7 10 2d staa SCCR2 0202 c2b9 4f clra 0203 c2ba 97 04 staa L0004 0204 c2bc 97 05 staa L0005 0205 c2be 97 0c staa L000C 0206 c2c0 97 0e staa L000E 0207 c2c2 ce 00 0f ldx #$000F 0208 c2c5 df 08 stx L0008 0209 c2c7 86 01 ldaa #$01 0210 c2c9 97 02 staa $0002 0211 c2cb 86 00 ldaa #$00 0212 c2cd 97 0d staa $000D 0213 c2cf 86 01 ldaa #$01 0214 c2d1 97 06 staa $0006 0215 c2d3 4f clra 0216 c2d4 b7 10 26 staa PACTL 0217 c2d7 86 40 ldaa #$40 0218 c2d9 b7 10 24 staa TMSK2 0219 c2dc 0e cli 0220 c2dd b6 10 2e LC2C7: ldaa SCSR 0221 c2e0 84 20 anda #$20 0222 c2e2 26 03 bne LC2D1 0223 c2e4 7e c6 7f jmp LC669 0224 c2e7 b6 10 2f LC2D1: ldaa SCDR 0225 c2ea d6 0d ldab $000D 0226 c2ec c1 16 cmpb #$16 0227 c2ee 23 03 bls LC2DD 0228 c2f0 7e c3 af jmp LC399 0229 c2f3 58 LC2DD: aslb 0230 c2f4 ce c2 fc ldx #table 0231 c2f7 3a abx 0232 c2f8 ee 00 ldx 0,X 0233 c2fa 6e 00 jmp 0,X 0234 c2fc c3 2a table: fdb LC314 0235 c2fe c3 47 fdb LC331 0236 c300 c3 89 fdb LC373 0237 c302 c3 d2 fdb LC3BC 0238 c304 c4 09 fdb LC3F3 0239 c306 c4 38 fdb LC422 0240 c308 c4 5d fdb LC447 0241 c30a c4 86 fdb LC470 0242 c30c c4 9a fdb LC484 0243 c30e c4 af fdb LC499 0244 c310 c4 de fdb LC4C8 0245 c312 c5 06 fdb LC4F0 0246 c314 c5 7f fdb LC569 0247 c316 c5 a6 fdb LC590 0248 c318 c5 da fdb LC5C4 0249 c31a c5 f6 fdb LC5E0 0250 c31c c3 af fdb LC399 0251 c31e c3 af fdb LC399 0252 c320 c3 af fdb LC399 0253 c322 c3 af fdb LC399 0254 c324 c6 1f fdb LC609 0255 c326 c6 34 fdb LC61E 0256 c328 c6 56 fdb LC640 0257 c32a 81 04 LC314: cmpa #$04 0258 c32c 26 09 bne LC321 0259 c32e 97 0a staa $0A 0260 c330 86 01 ldaa #$01 0261 c332 97 0d staa $000D 0262 c334 7e c6 7f jmp LC669 0263 c337 81 80 LC321: cmpa #$80 0264 c339 27 03 beq LC328 0265 c33b 7e c6 7f jmp LC669 0266 c33e 97 0a LC328: staa $0A 0267 c340 86 07 ldaa #$07 ;comptage trame date/heure? 0268 c342 97 0d staa $0D 0269 c344 7e c6 7f jmp LC669 0270 c347 81 09 LC331: cmpa #$09 0271 c349 26 0d bne LC342 0272 c34b 97 07 staa $0007 0273 c34d 9b 0a adda $000A 0274 c34f 97 0a staa $000A 0275 c351 86 02 ldaa #$02 0276 c353 97 0d staa $000D 0277 c355 7e c3 6e jmp LC358 0278 c358 81 12 LC342: cmpa #$12 0279 c35a 27 07 beq LC34D 0280 c35c 86 00 ldaa #$00 0281 c35e 97 0d staa $000D 0282 c360 7e c6 7f jmp LC669 0283 c363 97 07 LC34D: staa $0007 0284 c365 9b 0a adda $000A 0285 c367 97 0a staa $000A 0286 c369 86 03 ldaa #$03 0287 c36b b7 00 0d staa >L000D 0288 c36e 96 04 LC358: ldaa $04 0289 c370 81 0a cmpa #$0A 0290 c372 25 12 bcs LC370 0291 c374 7a 00 04 dec $04 0292 c377 ce 00 0f ldx #$000F 0293 c37a c6 bd ldab #$BD 0294 c37c a6 15 LC366: ldaa $15,X 0295 c37e a7 00 staa 0,X 0296 c380 08 inx 0297 c381 5a decb 0298 c382 26 f8 bne LC366 0299 c384 df 08 stx $08 0300 c386 7e c6 7f LC370: jmp LC669 0301 c389 81 30 LC373: cmpa #$30 0302 c38b 25 22 bcs LC399 0303 c38d 81 39 cmpa #$39 0304 c38f 22 1e bhi LC399 0305 c391 de 08 ldx $08 0306 c393 a7 00 staa 0,X 0307 c395 08 inx 0308 c396 df 08 stx $08 0309 c398 9b 0a adda $0A 0310 c39a 97 0a staa $0A 0311 c39c 7a 00 07 dec $07 0312 c39f 96 07 ldaa $07 0313 c3a1 81 01 cmpa #$1 0314 c3a3 27 03 beq LC392 0315 c3a5 7e c6 7f jmp LC669 0316 c3a8 86 04 LC392: ldaa #$04 0317 c3aa 97 0d staa $0D 0318 c3ac 7e c6 7f jmp LC669 0319 c3af 86 00 LC399: ldaa #$00 0320 c3b1 97 0d staa $0D 0321 c3b3 ce 00 0f ldx #$000F 0322 c3b6 96 04 ldaa $04 0323 c3b8 27 06 beq LC3AA 0324 c3ba c6 15 ldab #$15 0325 c3bc 3a LC3A6: abx 0326 c3bd 4a deca 0327 c3be 26 fc bne LC3A6 0328 c3c0 df 08 LC3AA: stx $08 0329 c3c2 7d 00 0c TST $0C 0330 c3c5 26 04 bne LC3B5 0331 c3c7 c6 01 ldab #$01 0332 c3c9 d7 02 stab $02 0333 c3cb 96 04 LC3B5: ldaa $04 0334 c3cd 97 05 staa $05 ;compteur Nø 0335 c3cf 7e c6 7f jmp LC669 0336 c3d2 81 30 LC3BC: cmpa #$30 0337 c3d4 25 30 bcs LC3F0 0338 c3d6 81 39 cmpa #$39 0339 c3d8 22 2c bhi LC3F0 0340 c3da de 08 ldx $08 0341 c3dc a7 00 staa 0,X 0342 c3de 08 inx 0343 c3df df 08 stx $08 0344 c3e1 9b 0a adda $0A 0345 c3e3 97 0a staa $0A 0346 c3e5 7a 00 07 dec $07 0347 c3e8 96 07 ldaa $07 0348 c3ea 81 0a cmpa #$0A 0349 c3ec 27 03 beq LC3DB 0350 c3ee 7e c6 7f jmp LC669 0351 c3f1 86 05 LC3DB: ldaa #$05 0352 c3f3 97 0d staa $0D 0353 c3f5 de 08 ldx $08 0354 c3f7 86 03 ldaa #$03 0355 c3f9 a7 00 staa 0,X 0356 c3fb 08 inx 0357 c3fc 86 0a ldaa #$0A 0358 c3fe a7 00 staa 0,X 0359 c400 08 inx 0360 c401 df 08 stx $08 0361 c403 7e c6 7f jmp LC669 0362 c406 7e c3 af LC3F0: jmp LC399 0363 c409 81 4f LC3F3: cmpa #$04F 0364 c40b 27 07 beq LC3FE 0365 c40d 81 50 cmpa #$50 0366 c40f 27 03 beq LC3FE 0367 c411 7e c3 af jmp LC399 0368 c414 de 08 LC3FE: ldx $008 0369 c416 c6 04 ldab #$04 0370 c418 e7 00 stab 0,X 0371 c41a 08 inx 0372 c41b c6 01 ldab #$01 0373 c41d e7 00 stab 0,X 0374 c41f 08 inx 0375 c420 a7 00 staa 0,X 0376 c422 08 inx 0377 c423 df 08 stx $08 0378 c425 9b 0a adda $0A 0379 c427 97 0a staa $0A 0380 c429 7a 00 07 dec $007 0381 c42c 27 03 beq LC41B 0382 c42e 7e c3 af jmp LC399 0383 c431 86 06 LC41B: ldaa #$06 0384 c433 97 0d staa $0D 0385 c435 7e c6 7f jmp LC669 0386 c438 81 30 LC422: cmpa #$30 0387 c43a 25 1e bcs LC444 0388 c43c 81 39 cmpa #$39 0389 c43e 22 1a bhi LC444 0390 c440 de 08 ldx $08 0391 c442 a7 00 staa 0,X 0392 c444 08 inx 0393 c445 df 08 stx $08 0394 c447 9b 0a adda $0A 0395 c449 97 0a staa $0A 0396 c44b 7a 00 07 dec $07 0397 c44e 27 03 beq LC43D 0398 c450 7e c6 7f jmp LC669 0399 c453 86 06 LC43D: ldaa #$06 0400 c455 97 0d staa $0D 0401 c457 7e c6 7f jmp LC669 0402 c45a 7e c3 af LC444: jmp LC399 0403 c45d 9b 0a LC447: adda $0A 0404 c45f 27 03 beq LC44E 0405 c461 7e c3 af jmp LC399 0406 c464 86 00 LC44E: ldaa #$00 0407 c466 97 0d staa $0D 0408 c468 7d 00 0c tst $0C 0409 c46b 26 04 bne LC45B 0410 c46d c6 01 ldab #$01 0411 c46f d7 02 stab $02 0412 c471 96 04 LC45B: ldaa $04 0413 c473 4c inca 0414 c474 97 04 staa $04 0415 c476 97 05 staa $05 0416 c478 ce 00 0f ldx #$0F 0417 c47b c6 15 ldab #$15 0418 c47d 3a LC467: abx 0419 c47e 4a deca 0420 c47f 26 fc bne LC467 0421 c481 df 08 stx $08 0422 c483 7e c6 7f jmp LC669 0423 c486 81 0d LC470: cmpa #$0D 0424 c488 24 03 bcc LC477 0425 c48a 7e c3 af jmp LC399 0426 c48d 97 0b LC477: staa $0B 0427 c48f 9b 0a adda $0A 0428 c491 97 0a staa $0A 0429 c493 86 08 ldaa #$08 0430 c495 97 0d staa $0D 0431 c497 7e c6 7f jmp LC669 0432 c49a 81 01 LC484: cmpa #$01 0433 c49c 27 03 beq LC48B 0434 c49e 7e c3 af jmp LC399 0435 c4a1 9b 0a LC48B: adda $0A 0436 c4a3 97 0a staa $0A 0437 c4a5 7a 00 0b dec $0B 0438 c4a8 86 09 ldaa #$09 0439 c4aa 97 0d staa $0D 0440 c4ac 7e c6 7f jmp LC669 0441 c4af 81 08 LC499: cmpa #$08 0442 c4b1 27 03 beq LC4A0 0443 c4b3 7e c3 af jmp LC399 0444 c4b6 97 07 LC4A0: staa $07 0445 c4b8 7a 00 0b dec $0B 0446 c4bb 9b 0a adda $0A 0447 c4bd 97 0a staa $0A 0448 c4bf 86 0a ldaa #$0A 0449 c4c1 97 0d staa $0D 0450 c4c3 96 04 ldaa $04 0451 c4c5 81 0a cmpa #$0A 0452 c4c7 25 12 bcs LC4C5 0453 c4c9 7a 00 04 dec $04 0454 c4cc ce 00 0f ldx #$0F 0455 c4cf c6 bd ldab #$BD 0456 c4d1 a6 15 LC4BB: ldaa $15,X 0457 c4d3 a7 00 staa 0,X 0458 c4d5 08 inx 0459 c4d6 5a decb 0460 c4d7 26 f8 bne LC4BB 0461 c4d9 df 08 stx $08 0462 c4db 7e c6 7f LC4C5: jmp LC669 0463 c4de 81 30 LC4C8: cmpa #$30 0464 c4e0 25 21 bcs LC4ED 0465 c4e2 81 39 cmpa #$39 0466 c4e4 22 1d bhi LC4ED 0467 c4e6 de 08 ldx $08 0468 c4e8 a7 00 staa 0,X 0469 c4ea 08 inx 0470 c4eb df 08 stx $08 0471 c4ed 9b 0a adda $0A 0472 c4ef 97 0a staa $0A 0473 c4f1 7a 00 0b dec $0B 0474 c4f4 7a 00 07 dec $07 0475 c4f7 27 03 beq LC4E6 0476 c4f9 7e c6 7f jmp LC669 0477 c4fc 86 0b LC4E6: ldaa #$0B 0478 c4fe 97 0d staa $0D 0479 c500 7e c6 7f jmp LC669 0480 c503 7e c3 af LC4ED: jmp LC399 0481 c506 81 02 LC4F0: cmpa #$02 ;remp $03 par $02 Up to 10 digits 0482 c508 27 13 beq LC507 0483 c50a 81 04 cmpa #$04 0484 c50c 27 24 beq LC51C 0485 c50e 81 06 cmpa #$06 0486 c510 27 35 beq LC531 0487 c512 81 07 cmpa #$7 0488 c514 27 3f beq LC53F 0489 c516 81 08 cmpa #$8 0490 c518 27 50 beq LC554 0491 c51a 7e c3 af jmp LC399 0492 c51d de 08 LC507: ldx $08 0493 c51f a7 00 staa 0,X 0494 c521 08 inx 0495 c522 df 08 stx $8 0496 c524 9b 0a adda $0A 0497 c526 97 0a staa $0A 0498 c528 7a 00 0b dec $0B 0499 c52b 86 0c ldaa #$0C 0500 c52d 97 0d staa $0D 0501 c52f 7e c6 7f jmp LC669 0502 c532 de 08 LC51C: ldx $08 0503 c534 a7 00 staa 0,X 0504 c536 08 inx 0505 c537 df 08 stx $08 0506 c539 9b 0a adda $0A 0507 c53b 97 0a staa $0A 0508 c53d 7a 00 0b dec $0B 0509 c540 86 0e ldaa #$0E 0510 c542 97 0d staa $0D 0511 c544 7e c6 7f jmp LC669 0512 c547 9b 0a LC531: adda $0A 0513 c549 97 0a staa $0A 0514 c54b 7a 00 0b dec $0B 0515 c54e 86 14 ldaa #$14 0516 c550 97 0d staa $0D 0517 c552 7e c6 7f jmp LC669 0518 c555 de 08 LC53F: ldx $8 0519 c557 a7 00 staa 0,X 0520 c559 08 inx 0521 c55a df 08 stx $8 0522 c55c 9b 0a adda $0A 0523 c55e 97 0a staa $0A 0524 c560 7a 00 0b dec $0B 0525 c563 86 10 ldaa #$10 0526 c565 97 0d staa $0D 0527 c567 7e c6 7f jmp LC669 0528 c56a de 08 LC554: ldx $8 0529 c56c a7 00 staa 0,X 0530 c56e 08 inx 0531 c56f df 08 stx $08 0532 c571 9b 0a adda $0A 0533 c573 97 0a staa $0A 0534 c575 7a 00 0b dec $0B 0535 c578 86 12 ldaa #$12 0536 c57a 97 0d staa $0D 0537 c57c 7e c6 7f jmp LC669 0538 c57f 81 07 LC569: cmpa #$7 0539 c581 27 0b beq LC578 0540 c583 81 08 cmpa #$08 0541 c585 27 07 beq LC578 0542 c587 81 0a cmpa #$0A ;rempl $0B par $0A : detecte 10 chiffres 0543 c589 27 03 beq LC578 0544 c58b 7e c3 af jmp LC399 0545 c58e de 08 LC578: ldx $8 0546 c590 a7 00 staa 0,X 0547 c592 08 inx 0548 c593 df 08 stx $8 0549 c595 97 07 staa $07 0550 c597 7a 00 0b dec $0B 0551 c59a 9b 0a adda $0A 0552 c59c 97 0a staa $0A 0553 c59e 86 0d ldaa #$0D 0554 c5a0 b7 00 0d staa >L000D 0555 c5a3 7e c6 7f jmp LC669 0556 c5a6 81 30 LC590: cmpa #$30 0557 c5a8 25 2d bcs LC5C1 0558 c5aa 81 39 cmpa #$39 0559 c5ac 22 29 bhi LC5C1 0560 c5ae de 08 ldx $08 0561 c5b0 a7 00 staa 0,X 0562 c5b2 08 inx 0563 c5b3 df 08 stx $08 0564 c5b5 9b 0a adda $0A 0565 c5b7 97 0a staa $0A 0566 c5b9 7a 00 0b dec $0B 0567 c5bc 7a 00 07 dec $07 0568 c5bf 27 03 beq LC5AE 0569 c5c1 7e c6 7f jmp LC669 0570 c5c4 7d 00 0b LC5AE: tst $0B 0571 c5c7 26 07 bne LC5BA 0572 c5c9 86 16 ldaa #$16 0573 c5cb 97 0d staa $0D 0574 c5cd 7e c6 7f jmp LC669 0575 c5d0 86 0b LC5BA: ldaa #$0B 0576 c5d2 97 0d staa $0D 0577 c5d4 7e c6 7f jmp LC669 0578 c5d7 7e c3 af LC5C1: jmp LC399 0579 c5da 81 01 LC5C4: cmpa #$01 0580 c5dc 27 03 beq LC5CB 0581 c5de 7e c3 af jmp LC399 0582 c5e1 de 08 LC5CB: ldx $8 0583 c5e3 a7 00 staa 0,X 0584 c5e5 08 inx 0585 c5e6 df 08 stx $8 0586 c5e8 9b 0a adda $0A 0587 c5ea 97 0a staa $0A 0588 c5ec 7a 00 0b dec $0B 0589 c5ef 86 0f ldaa #$0F 0590 c5f1 97 0d staa $0D 0591 c5f3 7e c6 7f jmp LC669 0592 c5f6 81 4f LC5E0: cmpa #$4F 0593 c5f8 27 07 beq LC5EB 0594 c5fa 81 50 cmpa #$50 0595 c5fc 27 03 beq LC5EB 0596 c5fe 7e c3 af jmp LC399 0597 c601 de 08 LC5EB: ldx $08 0598 c603 a7 00 staa 0,X 0599 c605 08 inx 0600 c606 df 08 stx $08 0601 c608 9b 0a adda $0A 0602 c60a 97 0a staa $0A 0603 c60c 7a 00 0b dec $0B 0604 c60f 26 07 bne LC602 0605 c611 86 16 ldaa #$16 0606 c613 97 0d staa $0D 0607 c615 7e c6 7f jmp LC669 0608 c618 86 0b LC602: ldaa #$B 0609 c61a 97 0d staa $0D 0610 c61c 7e c6 7f jmp LC669 0611 c61f 81 01 LC609: cmpa #$01 0612 c621 27 03 beq LC610 0613 c623 7e c3 af jmp LC399 0614 c626 9b 0a LC610: adda $0A 0615 c628 97 0a staa $0A 0616 c62a 7a 00 0b dec $0B 0617 c62d 86 15 ldaa #$15 0618 c62f 97 0d staa $0D 0619 c631 7e c6 7f jmp LC669 0620 c634 81 4c LC61E: cmpa #$4C 0621 c636 27 07 beq LC629 0622 c638 81 52 cmpa #$52 0623 c63a 27 03 beq LC629 0624 c63c 7e c3 af jmp LC399 0625 c63f 9b 0a LC629: adda $0A 0626 c641 97 0a staa $0A 0627 c643 7a 00 0b dec $0B 0628 c646 26 07 bne LC639 0629 c648 86 16 ldaa #$16 0630 c64a 97 0d staa $0D 0631 c64c 7e c6 7f jmp LC669 0632 c64f 86 0b LC639: ldaa #$0B 0633 c651 97 0d staa $0D 0634 c653 7e c6 7f jmp LC669 0635 c656 9b 0a LC640: adda $0A 0636 c658 27 03 beq LC647 0637 c65a 7e c3 af jmp LC399 0638 c65d 86 00 LC647: ldaa #$0 0639 c65f 97 0d staa $0D 0640 c661 7d 00 0c tst $0C 0641 c664 26 04 bne LC654 0642 c666 c6 01 ldab #$1 0643 c668 d7 02 stab $2 0644 c66a 96 04 LC654: ldaa $4 0645 c66c 4c inca 0646 c66d 97 04 staa $04 0647 c66f 97 05 staa $05 0648 c671 ce 00 0f ldx #$0F 0649 c674 c6 15 ldab #$15 0650 c676 3a LC660: abx 0651 c677 4a deca 0652 c678 26 fc bne LC660 0653 c67a df 08 stx $08 0654 c67c 7e c6 7f jmp LC669 0655 c67f 7d 00 0c LC669: tst $0C 0656 c682 27 03 beq LC671 0657 c684 7e c7 01 jmp LC6EB 0658 c687 7d 00 01 LC671: tst $1 0659 c68a 26 03 bne LC679 0660 c68c 7e c7 01 jmp LC6EB 0661 c68f 7d 00 02 LC679: tst $2 0662 c692 26 6d bne LC6EB 0663 c694 b6 10 0a ldaa PORTE 0664 c697 84 04 anda #$4 ;Touche DOWN (-) 0665 c699 26 09 bne LC68E 0666 c69b 96 05 ldaa $5 0667 c69d 81 01 cmpa #$1 0668 c69f 23 60 bls LC6EB 0669 c6a1 4a deca 0670 c6a2 20 10 bra LC69E 0671 c6a4 b6 10 0a LC68E: ldaa PORTE 0672 c6a7 84 02 anda #$2 ;Touche UP (+) 0673 c6a9 26 17 bne LC6AC 0674 c6ab 96 05 ldaa $05 0675 c6ad 4c inca 0676 c6ae 91 04 cmpa $04 0677 c6b0 23 02 bls LC69E 0678 c6b2 20 4d bra LC6EB 0679 c6b4 97 05 LC69E: staa $5 0680 c6b6 86 01 ldaa #$1 0681 c6b8 97 02 staa $2 0682 c6ba 7f 00 00 clr 0 0683 c6bd 7f 00 01 clr $1 0684 c6c0 20 3f bra LC6EB 0685 c6c2 7d 00 03 LC6AC: tst $03 0686 c6c5 27 3a beq LC6EB 0687 c6c7 b6 10 0a ldaa PORTE 0688 c6ca 84 10 anda #$10 ;Touche CLR/SAVE 0689 c6cc 26 07 bne LC6BF 0690 c6ce 0f sei 0691 c6cf 7f 00 03 clr $3 0692 c6d2 7e c1 a7 jmp Main ;Reset Software 0693 c6d5 b6 10 0a LC6BF: ldaa PORTE 0694 c6d8 84 20 anda #$20 ;Touche MODE 0695 c6da 26 08 bne LC6CE 0696 c6dc 86 01 ldaa #$1 0697 c6de 97 0c staa $C 0698 c6e0 97 02 staa $2 0699 c6e2 20 13 bra LC6E1 0700 c6e4 b6 10 0a LC6CE: ldaa PORTE 0701 c6e7 84 08 anda #$8 ;Touche -> 0702 c6e9 26 16 bne LC6EB 0703 c6eb 7d 00 04 tst $4 0704 c6ee 27 11 beq LC6EB 0705 c6f0 96 05 ldaa $5 0706 c6f2 bd ca 36 jsr LCA20 0707 c6f5 86 01 ldaa #$1 0708 c6f7 97 02 LC6E1: staa $2 0709 c6f9 7f 00 01 clr $1 0710 c6fc 7f 00 03 clr $3 0711 c6ff 20 00 bra LC6EB 0712 c701 7d 00 0c LC6EB: tst $0C 0713 c704 26 44 bne LC734 0714 c706 7d 00 02 tst $2 0715 c709 27 3f beq LC734 0716 c70b 7d 00 04 tst $4 0717 c70e 26 29 bne LC723 0718 c710 86 01 ldaa #$1 ;efface l'ecran 0719 c712 bd cd a9 jsr LCD50 0720 c715 b7 40 00 staa $4000 0721 c718 86 0c ldaa #$C 0722 c71a bd cd a9 jsr LCD50 0723 c71d b7 40 00 staa $4000 0724 c720 ce c1 44 ldx #wait 0725 c723 bd cd 98 jsr LCD3F 0726 c726 86 c0 ldaa #$C0 ;Passage 2eme ligne 0727 c728 bd cd a9 jsr LCD50 0728 c72b b7 40 00 staa $4000 0729 c72e ce c1 55 ldx #call 0730 c731 bd cd 98 jsr LCD3F 0731 c734 7f 00 02 clr $2 0732 c737 20 11 bra LC734 0733 c739 7f 00 02 LC723: clr $2 0734 c73c 86 0c ldaa #$C 0735 c73e bd cd a9 jsr LCD50 0736 c741 b7 40 00 staa $4000 0737 c744 bd cb 5b jsr LCB4A 0738 c747 bd ca 74 jsr LCA5E 0739 c74a 96 0c LC734: ldaa $0C 0740 c74c 81 01 cmpa #$1 0741 c74e 26 69 bne LC7A3 0742 c750 7d 00 02 tst $2 0743 c753 26 64 bne LC7A3 0744 c755 7d 00 01 tst $1 0745 c758 27 5f beq LC7A3 0746 c75a b6 10 0a ldaa PORTE 0747 c75d 84 02 anda #$2 ;Touche UP (+) 0748 c75f 26 09 bne LC754 0749 c761 96 06 ldaa $6 ;compteur #noms 0750 c763 4c inca 0751 c764 81 11 cmpa #$11 ;Rempl. $14 par $17 = 17 noms 0752 c766 23 12 bls LC764 0753 c768 20 4f bra LC7A3 0754 c76a b6 10 0a LC754: ldaa PORTE 0755 c76d 84 04 anda #$4 ;Touche DOWN (-) 0756 c76f 26 17 bne LC772 0757 c771 96 06 ldaa $06 0758 c773 4a deca 0759 c774 81 01 cmpa #$1 0760 c776 24 02 bcc LC764 0761 c778 20 3f bra LC7A3 0762 c77a 97 06 LC764: staa $6 0763 c77c 86 01 ldaa #$1 0764 c77e 97 02 staa $2 0765 c780 7f 00 01 clr $1 0766 c783 7f 00 00 clr $0 0767 c786 20 31 bra LC7A3 0768 c788 7d 00 03 LC772: tst $3 0769 c78b 27 17 beq LC78E 0770 c78d b6 10 0a ldaa PORTE 0771 c790 84 20 anda #$20 ;Touche MODE 0772 c792 26 10 bne LC78E 0773 c794 86 ff ldaa #$FF 0774 c796 97 0c staa $0C ;Flag MODE 0775 c798 86 01 ldaa #$1 0776 c79a 97 02 staa $2 0777 c79c 7f 00 01 clr $1 0778 c79f 7f 00 03 clr $3 0779 c7a2 20 15 bra LC7A3 0780 c7a4 b6 10 0a LC78E: ldaa PORTE 0781 c7a7 84 18 anda #$18 ;Touches CLR/SAVE+->=DEBUG 0782 c7a9 26 0e bne LC7A3 0783 c7ab 86 02 ldaa #$2 0784 c7ad 97 0c staa $0C 0785 c7af 86 01 ldaa #$1 0786 c7b1 97 02 staa $2 0787 c7b3 7f 00 01 clr $1 0788 c7b6 7f 00 03 clr $3 0789 c7b9 96 0c LC7A3: ldaa $0C 0790 c7bb 81 01 cmpa #$1 0791 c7bd 26 3f bne LC7E8 0792 c7bf 7d 00 02 tst $2 0793 c7c2 27 3a beq LC7E8 0794 c7c4 86 01 ldaa #$1 0795 c7c6 bd cd a9 jsr LCD50 0796 c7c9 b7 40 00 staa $4000 0797 c7cc ce c1 66 ldx #choix 0798 c7cf bd cd 98 jsr LCD3F 0799 c7d2 96 06 ldaa $6 ;no page repertoire 0800 c7d4 bd cd 6e jsr LCD15 0801 c7d7 bd cd 45 jsr LCCEC 0802 c7da bd cd 8f jsr LCD36 0803 c7dd 17 tba 0804 c7de bd cd 8f jsr LCD36 0805 c7e1 86 c0 ldaa #$C0 ;passage 2eme ligne 0806 c7e3 bd cd a9 jsr LCD50 0807 c7e6 b7 40 00 staa $4000 0808 c7e9 ce b6 1a ldx #$B61A ;rempl $B617 par $B61A 0809 c7ec c6 1b ldab #$1B ;rempl $18 par $1B 0810 c7ee 96 06 ldaa $6 ; 0811 c7f0 4a LC7DA: deca 0812 c7f1 27 03 beq LC7E0 0813 c7f3 3a abx 0814 c7f4 20 fa bra LC7DA 0815 c7f6 bd cd 98 LC7E0: jsr LCD3F 0816 c7f9 7f 00 02 clr $2 0817 c7fc 20 00 bra LC7E8 0818 c7fe 96 0c LC7E8: ldaa $C 0819 c800 81 ff cmpa #$FF ;Lit le Flag MODE 0820 c802 27 03 beq LC7F1 0821 c804 7e c8 a3 jmp LC88D 0822 c807 7d 00 02 LC7F1: tst $2 0823 c80a 27 03 beq LC7F9 0824 c80c 7e c8 a3 jmp LC88D 0825 c80f 7d 00 01 LC7F9: tst $1 0826 c812 26 03 bne LC801 0827 c814 7e c8 a3 jmp LC88D 0828 c817 b6 10 0a LC801: ldaa PORTE 0829 c81a 84 02 anda #$2 ;Touche UP (+) 0830 c81c 26 06 bne LC80E 0831 c81e b6 40 01 ldaa $4001 0832 c821 4c inca 0833 c822 20 0b bra LC819 0834 c824 b6 10 0a LC80E: ldaa PORTE 0835 c827 84 04 anda #$4 ;Touche DOWN (-) 0836 c829 26 44 bne LC859 0837 c82b b6 40 01 ldaa $4001 0838 c82e 4a deca 0839 c82f c6 10 LC819: ldab #$10 0840 c831 bd cd a9 jsr LCD50 0841 c834 f7 40 00 stab $4000 0842 c837 f6 40 00 ldab $4000 0843 c83a c4 40 andb #$40 0844 c83c 26 0e bne LC836 0845 c83e 81 30 cmpa #$30 0846 c840 24 02 bcc LC82E 0847 c842 86 39 ldaa #$39 0848 c844 81 39 LC82E: cmpa #$39 0849 c846 23 10 bls LC842 0850 c848 86 30 ldaa #$30 0851 c84a 20 0c bra LC842 0852 c84c 81 20 LC836: cmpa #$20 0853 c84e 24 02 bcc LC83C 0854 c850 86 7f ldaa #$7F 0855 c852 81 7f LC83C: cmpa #$7F 0856 c854 23 02 bls LC842 0857 c856 86 20 ldaa #$20 0858 c858 bd cd a9 LC842: jsr LCD50 0859 c85b b7 40 01 staa $4001 0860 c85e c6 10 ldab #$10 0861 c860 bd cd a9 jsr LCD50 0862 c863 f7 40 00 stab $4000 0863 c866 7f 00 01 LC850: clr $1 0864 c869 86 32 ldaa #$32 0865 c86b 97 00 staa $0 0866 c86d 20 34 bra LC88D 0867 c86f b6 10 0a LC859: ldaa PORTE 0868 c872 84 08 anda #$8 ;Touche -> 0869 c874 26 05 bne LC865 0870 c876 bd c9 ff jsr LC9E9 0871 c879 20 eb bra LC850 0872 c87b 7d 00 03 LC865: tst $3 0873 c87e 27 23 beq LC88D 0874 c880 b6 10 0a ldaa PORTE 0875 c883 84 10 anda #$10 ;Touche CLR/SAVE 0876 c885 26 07 bne LC878 0877 c887 bd cc 1f jsr LCC0B 0878 c88a 86 01 ldaa #$01 0879 c88c 20 08 bra LC880 0880 c88e b6 10 0a LC878: ldaa PORTE 0881 c891 84 20 anda #$20 ;Touche MODE 0882 c893 26 0e bne LC88D 0883 c895 4f clra 0884 c896 97 0c LC880: staa $0C 0885 c898 4c inca 0886 c899 97 02 staa $2 0887 c89b 7f 00 01 clr $1 0888 c89e 7f 00 03 clr $3 0889 c8a1 20 00 bra LC88D 0890 c8a3 96 0c LC88D: ldaa $0C 0891 c8a5 81 ff cmpa #$FF ;Lit le Flag MODE 0892 c8a7 26 58 bne LC8EB 0893 c8a9 96 02 ldaa $2 0894 c8ab 27 54 beq LC8EB 0895 c8ad 7f 00 02 clr $2 0896 c8b0 86 01 ldaa #$1 ;efface l'ecran 0897 c8b2 bd cd a9 jsr LCD50 0898 c8b5 b7 40 00 staa $4000 0899 c8b8 86 23 ldaa #$23 ;envoie # 0900 c8ba bd cd 8f jsr LCD36 0901 c8bd 96 06 ldaa $6 0902 c8bf bd cd 6e jsr LCD15 ;envoie le nø page repertoire 0903 c8c2 bd cd 45 jsr LCCEC 0904 c8c5 bd cd 8f jsr LCD36 0905 c8c8 17 tba 0906 c8c9 bd cd 8f jsr LCD36 0907 c8cc 86 20 ldaa #$20 ;espace 0908 c8ce bd cd 8f jsr LCD36 0909 c8d1 86 20 ldaa #$20 ;espace 0910 c8d3 bd cd 8f jsr LCD36 0911 c8d6 ce b6 10 ldx #$B610 0912 c8d9 c6 1b ldab #$1B ;Rempl. $18 =7d+16d par $1B=10d+16d 0913 c8db 96 06 ldaa $6 ;compteur #noms (1 a 17) 0914 c8dd 4a LC8C7: deca 0915 c8de 27 03 beq LC8CD 0916 c8e0 3a abx 0917 c8e1 20 fa bra LC8C7 ;+> Aff. Nø dans repertoire 0918 c8e3 bd ca f7 LC8CD: jsr LCAE1 ;Rempl. LCAF8 par LCAE1 (10 car.) 0919 c8e6 86 c0 ldaa #$C0 ;passage 2 eme ligne 0920 c8e8 bd cd a9 jsr LCD50 0921 c8eb b7 40 00 staa $4000 0922 c8ee bd cd 98 jsr LCD3F 0923 c8f1 86 85 ldaa #$85 ;ADDRAM 5 caracteres 1ere ligne 0924 c8f3 bd cd a9 jsr LCD50 0925 c8f6 b7 40 00 staa $4000 0926 c8f9 86 0e ldaa #$0E 0927 c8fb bd cd a9 jsr LCD50 0928 c8fe b7 40 00 staa $4000 0929 c901 96 0c LC8EB: ldaa $0C 0930 c903 81 02 cmpa #$2 0931 c905 26 70 bne LC961 0932 c907 96 02 ldaa $2 0933 c909 27 6c beq LC961 0934 c90b 7f 00 02 clr $2 0935 c90e 86 01 ldaa #$1 0936 c910 bd cd a9 jsr LCD50 0937 c913 b7 40 00 staa $4000 0938 c916 d6 0e ldab $E 0939 c918 4f clra 0940 c919 8f xgdx 0941 c91a 96 0e ldaa $E 0942 c91c bd cd 45 jsr LCCEC 0943 c91f bd cd 8f jsr LCD36 0944 c922 17 tba 0945 c923 bd cd 8f jsr LCD36 0946 c926 86 3a ldaa #$3A ;":" 0947 c928 bd cd 8f jsr LCD36 0948 c92b c6 04 ldab #$4 ;pointeur adresse de la ram 0949 c92d 37 LC917: pshb 0950 c92e 86 20 ldaa #$20 0951 c930 bd cd 8f jsr LCD36 0952 c933 a6 00 ldaa 0,X 0953 c935 08 inx 0954 c936 bd cd 45 jsr LCCEC 0955 c939 bd cd 8f jsr LCD36 0956 c93c 17 tba 0957 c93d bd cd 8f jsr LCD36 0958 c940 33 pulb 0959 c941 5a decb 0960 c942 26 e9 bne LC917 0961 c944 86 c0 ldaa #$C0 ;passage 2eme ligne 0962 c946 bd cd a9 jsr LCD50 0963 c949 b7 40 00 staa $4000 0964 c94c 3c pshx 0965 c94d 33 pulb 0966 c94e 32 pula 0967 c94f bd cd 45 jsr LCCEC 0968 c952 bd cd 8f jsr LCD36 0969 c955 17 tba 0970 c956 bd cd 8f jsr LCD36 0971 c959 86 3a ldaa #$3A 0972 c95b bd cd 8f jsr LCD36 0973 c95e c6 04 ldab #$4 0974 c960 37 LC94A: pshb 0975 c961 86 20 ldaa #$20 0976 c963 bd cd 8f jsr LCD36 0977 c966 a6 00 ldaa 0,X 0978 c968 08 inx 0979 c969 bd cd 45 jsr LCCEC 0980 c96c bd cd 8f jsr LCD36 0981 c96f 17 tba 0982 c970 bd cd 8f jsr LCD36 0983 c973 33 pulb 0984 c974 5a decb 0985 c975 26 e9 bne LC94A 0986 c977 96 0c LC961: ldaa $C 0987 c979 81 02 cmpa #$2 0988 c97b 26 4a bne LC9B1 0989 c97d 7d 00 02 tst $2 0990 c980 26 45 bne LC9B1 0991 c982 7d 00 01 tst $1 0992 c985 27 40 beq LC9B1 0993 c987 b6 10 0a ldaa PORTE 0994 c98a 84 02 anda #$2 ;Touche UP (+) 0995 c98c 26 06 bne LC97E 0996 c98e 96 0e ldaa $E 0997 c990 8b 08 adda #$8 0998 c992 20 0b bra LC989 0999 c994 b6 10 0a LC97E: ldaa PORTE 1000 c997 84 04 anda #$4 ;Touche DOWN (-) 1001 c999 26 12 bne LC997 1002 c99b 96 0e ldaa $E 1003 c99d 80 08 suba #$8 1004 c99f 97 0e LC989: staa $E 1005 c9a1 86 01 ldaa #$1 1006 c9a3 97 02 staa $2 1007 c9a5 7f 00 01 clr $1 1008 c9a8 7f 00 00 clr $0 1009 c9ab 20 1a bra LC9B1 1010 c9ad 7d 00 03 LC997: tst $3 1011 c9b0 27 15 beq LC9B1 1012 c9b2 b6 10 0a ldaa PORTE 1013 c9b5 84 20 anda #$20 ;Touche MODE 1014 c9b7 26 0e bne LC9B1 1015 c9b9 86 00 ldaa #$0 1016 c9bb 97 0c staa $C 1017 c9bd 86 01 ldaa #$1 1018 c9bf 97 02 staa $2 1019 c9c1 7f 00 01 clr $1 1020 c9c4 7f 00 03 clr $3 1021 c9c7 b6 10 0a LC9B1: ldaa PORTE 1022 c9ca 84 3e anda #$3E 1023 c9cc 81 3e cmpa #$3E 1024 c9ce 26 0c bne LC9C6 1025 c9d0 96 03 ldaa $3 1026 c9d2 81 05 cmpa #$5 1027 c9d4 22 0b bhi LC9CB 1028 c9d6 8b 01 adda #$1 1029 c9d8 97 03 staa $3 1030 c9da 20 0a bra LC9D0 1031 c9dc 7f 00 03 LC9C6: clr $3 1032 c9df 20 05 bra LC9D0 1033 c9e1 86 01 LC9CB: ldaa #$1 1034 c9e3 b7 00 01 staa >L0001 1035 c9e6 3e LC9D0: wai 1036 c9e7 7e c2 dd jmp LC2C7 1037 c9ea 86 40 LC9D4: ldaa #$40 1038 c9ec b7 10 25 staa TFLG2 1039 c9ef 96 00 ldaa $0 1040 c9f1 8b 01 adda #$1 1041 c9f3 81 64 cmpa #$64 1042 c9f5 26 05 bne LC9E6 1043 c9f7 4f clra 1044 c9f8 c6 01 ldab #$1 1045 c9fa d7 01 stab $1 1046 c9fc 97 00 LC9E6: staa $0 1047 c9fe 3b rti 1048 c9ff 86 14 LC9E9: ldaa #$14 ;curseur right 1049 ca01 bd cd a9 jsr LCD50 ;qd on appuie sur -> 1050 ca04 b7 40 00 staa $4000 1051 ca07 bd cd a9 jsr LCD50 1052 ca0a b6 40 00 ldaa $4000 ;lit l'adr du curseur 1053 ca0d 84 7f anda #$7F 1054 ca0f 81 08 cmpa #$8 ;regarde si on est au 7ø car. (-) >> 1055 ca11 26 09 bne LCA06 ;<< rempl. $8 par $7puis $8 1056 ca13 86 14 ldaa #$14 ;curseur right 1057 ca15 bd cd a9 jsr LCD50 1058 ca18 b7 40 00 staa $4000 1059 ca1b 39 rts ;rempl. $0D par $0F puis $10 1060 ca1c 81 10 LCA06: cmpa #$10 ;regarde si on est au 13ø car 1061 ca1e 26 09 bne LCA13 1062 ca20 86 c0 ldaa #$0C0 ;passage 2 eme ligne 1063 ca22 bd cd a9 jsr LCD50 1064 ca25 b7 40 00 staa $4000 1065 ca28 39 rts 1066 ca29 81 50 LCA13: cmpa #$50 ;regarde si on est au 10øcar 2øligne 1067 ca2b 26 08 bne LCA1F 1068 ca2d 86 85 ldaa #$85 ;5 eme caractere ADDRAM 1069 ca2f bd cd a9 jsr LCD50 1070 ca32 b7 40 00 staa $4000 1071 ca35 39 LCA1F: rts 1072 ca36 b1 00 04 LCA20: cmpa >L0004 1073 ca39 26 10 bne LCA35 1074 ca3b 7a 00 04 dec >L0004 1075 ca3e 7a 00 05 dec >L0005 1076 ca41 fc 00 08 ldd >L0008 1077 ca44 83 00 15 subd #$15 1078 ca47 fd 00 08 std >L0008 1079 ca4a 39 rts 1080 ca4b c6 15 LCA35: ldab #$15 1081 ca4d ce 00 0f ldx #$F ;debut de la ram contenant infos 1082 ca50 4a LCA3A: deca 1083 ca51 27 03 beq LCA40 1084 ca53 3a abx 1085 ca54 20 fa bra LCA3A 1086 ca56 f6 00 04 LCA40: ldab >L0004 1087 ca59 f0 00 05 subb >L0005 ;nombre d'appels 1088 ca5c 86 15 ldaa #$15 1089 ca5e 3d mul 1090 ca5f a6 15 LCA49: ldaa $15,X 1091 ca61 a7 00 staa 0,X 1092 ca63 08 inx 1093 ca64 5a decb 1094 ca65 26 f8 bne LCA49 1095 ca67 7a 00 04 dec >L0004 1096 ca6a fc 00 08 ldd >L0008 1097 ca6d 83 00 15 subd #$15 1098 ca70 fd 00 08 std >L0008 1099 ca73 39 rts 1100 ca74 a6 00 LCA5E: ldaa 0,X 1101 ca76 81 02 cmpa #$2 ;rempl $3 par $2 detect 10 chiffres 1102 ca78 27 24 beq LCA88 1103 ca7a 81 04 cmpa #$4 1104 ca7c 27 01 beq LCA69 1105 ca7e 39 rts 1106 ca7f c6 c0 LCA69: ldab #$C0 ;passage 2eme ligne 1107 ca81 bd cd a9 jsr LCD50 1108 ca84 f7 40 00 stab $4000 1109 ca87 08 inx 1110 ca88 08 inx 1111 ca89 a6 00 ldaa 0,X 1112 ca8b ce cb 39 ldx #out ;rempl $CB28 par out 1113 ca8e 81 4f cmpa #$4F 1114 ca90 27 08 beq LCA84 1115 ca92 ce cb 4a ldx #prive ;rempl $CB39 par prive 1116 ca95 81 50 cmpa #$50 1117 ca97 27 01 beq LCA84 1118 ca99 39 rts 1119 ca9a bd cd 98 LCA84: jsr LCD3F 1120 ca9d 39 rts 1121 ca9e 08 LCA88: inx 1122 ca9f 3c pshx 1123 caa0 18 38 puly 1124 caa2 e6 00 ldab 0,X ;B contient "0A" 1125 caa4 08 inx ;X pointe sur le Nø 1126 caa5 c0 07 subb #$07 ;essai rempl $07 par $0A,B=0 1127 caa7 3a abx ;X pointe sur le Nø 1128 caa8 bd cc 89 jsr LCC75 1129 caab 8c 00 00 cpx #$0 1130 caae 27 0c beq LCAA6 1131 cab0 86 c0 ldaa #$C0 ;passage 2 eme ligne 1132 cab2 bd cd a9 jsr LCD50 1133 cab5 b7 40 00 staa $4000 1134 cab8 bd cd 98 jsr LCD3F 1135 cabb 39 rts 1136 cabc 18 3c LCAA6: pshy ;Routine Affichage des Numeros 1137 cabe 38 pulx 1138 cabf 86 c4 ldaa #$C4 ;4øcaract. 2øligne 1139 cac1 e6 00 ldab 0,X 1140 cac3 c1 07 cmpb #$7 1141 cac5 27 0e beq LCABF 1142 cac7 80 01 suba #$1 1143 cac9 c1 08 cmpb #$8 1144 cacb 27 08 beq LCABF 1145 cacd 80 01 suba #$1 1146 cacf c1 0a cmpb #$0A 1147 cad1 27 02 beq LCABF 1148 cad3 80 01 suba #$1 1149 cad5 bd cd a9 LCABF: jsr LCD50 1150 cad8 b7 40 00 staa $4000 1151 cadb e6 00 ldab 0,X 1152 cadd 08 inx 1153 cade c1 0a cmpb #$0A 1154 cae0 27 15 beq LCAE1 1155 cae2 c1 07 cmpb #$7 1156 cae4 22 02 bhi LCAD2 1157 cae6 20 26 bra LCAF8 1158 cae8 a6 00 LCAD2: ldaa 0,X 1159 caea 08 inx 1160 caeb bd cd 8f jsr LCD36 1161 caee 86 2d ldaa #$2D ;envoie un - 1162 caf0 bd cd 8f jsr LCD36 1163 caf3 c1 08 cmpb #$8 1164 caf5 23 17 bls LCAF8 1165 caf7 a6 00 LCAE1: ldaa 0,X 1166 caf9 08 inx 1167 cafa bd cd 8f jsr LCD36 1168 cafd a6 00 ldaa 0,X 1169 caff 08 inx 1170 cb00 bd cd 8f jsr LCD36 1171 cb03 a6 00 ldaa 0,X 1172 cb05 08 inx 1173 cb06 bd cd 8f jsr LCD36 1174 cb09 86 2d ldaa #$2D ;envoie un - 1175 cb0b bd cd 8f jsr LCD36 1176 cb0e a6 00 LCAF8: ldaa 0,X ;<- affichage du nø ds repertoire (avant) 1177 cb10 08 inx ; si 7 chiffres 1178 cb11 bd cd 8f jsr LCD36 1179 cb14 a6 00 ldaa 0,X 1180 cb16 08 inx 1181 cb17 bd cd 8f jsr LCD36 1182 cb1a a6 00 ldaa 0,X 1183 cb1c 08 inx 1184 cb1d bd cd 8f jsr LCD36 1185 ; ldaa #$2D ;caractere separateur - 1186 ; jsr LCD36 1187 cb20 a6 00 ldaa 0,X 1188 cb22 08 inx 1189 cb23 bd cd 8f jsr LCD36 1190 cb26 a6 00 ldaa 0,X 1191 cb28 08 inx 1192 cb29 bd cd 8f jsr LCD36 1193 cb2c a6 00 ldaa 0,X 1194 cb2e 08 inx 1195 cb2f bd cd 8f jsr LCD36 1196 cb32 a6 00 ldaa 0,X 1197 cb34 08 inx 1198 cb35 bd cd 8f jsr LCD36 1199 cb38 39 rts 1200 cb39 2a 20 4f 75 74 20 out: fcc "* Out of Range *" 6f 66 20 52 61 6e 67 65 20 2a 1201 cb49 00 fcb 0 1202 cb4a 20 4e 75 6d prive: fcc " Num" 1203 cb4e 01 fcb $01 1204 cb4f 72 6f 20 50 72 69 fcc "ro Priv" 76 1205 cb56 01 fcb $01 1206 cb57 21 20 20 fcc "! " 1207 cb5a 00 fcb 0 1208 cb5b 86 01 LCB4A: ldaa #$1 1209 cb5d bd cd a9 jsr LCD50 1210 cb60 b7 40 00 staa $4000 1211 cb63 86 23 ldaa #$23 ;"#" 1212 cb65 bd cd 8f jsr LCD36 1213 cb68 b6 00 05 ldaa >L0005 ;no appel 1214 cb6b 8b 30 adda #$30 1215 cb6d 81 3a cmpa #$3A ;test si n appel=10: 1216 cb6f 26 02 bne LCB62 ;non 1217 cb71 86 00 ldaa #$0 ;caractere special |0 1218 cb73 bd cd 8f LCB62: jsr LCD36 ;Affichage nø appelant 1219 cb76 86 20 ldaa #$20 ;1 espace 1220 cb78 bd cd 8f jsr LCD36 1221 cb7b ce 00 0f ldx #$F ;pointe au debut infos en ram 1222 cb7e b6 00 05 ldaa >L0005 ;no appel 1223 cb81 c6 15 ldab #$15 1224 cb83 4a LCB75: deca 1225 cb84 27 03 beq LCB7B 1226 cb86 3a abx 1227 cb87 20 fa bra LCB75 1228 cb89 08 LCB7B: inx 1229 cb8a 08 inx 1230 cb8b a6 00 ldaa 0,X 1231 cb8d 08 inx 1232 cb8e bd cd 8f jsr LCD36 1233 cb91 a6 00 ldaa 0,X 1234 cb93 09 dex 1235 cb94 09 dex 1236 cb95 09 dex 1237 cb96 bd cd 8f jsr LCD36 1238 cb99 86 2f ldaa #$2F ;"/" Date & heure 1239 cb9b bd cd 8f LCB89: jsr LCD36 1240 cb9e a6 00 ldaa 0,X 1241 cba0 08 inx 1242 cba1 bd cd 8f jsr LCD36 1243 cba4 a6 00 LCB92: ldaa 0,X 1244 cba6 08 inx 1245 cba7 08 inx 1246 cba8 08 inx 1247 cba9 bd cd 8f jsr LCD36 1248 cbac 86 20 ldaa #$20 1249 cbae bd cd 8f jsr LCD36 1250 cbb1 e6 00 ldab 0,X 1251 cbb3 58 aslb 1252 cbb4 58 aslb 1253 cbb5 58 aslb 1254 cbb6 58 aslb 1255 cbb7 a6 01 ldaa 1,X 1256 cbb9 80 30 suba #$30 1257 cbbb 1b aba 1258 cbbc 81 12 cmpa #$12 1259 cbbe 24 2c bcc LCBD8 1260 cbc0 a6 00 ldaa 0,X 1261 cbc2 08 inx 1262 cbc3 81 30 cmpa #$30 1263 cbc5 27 03 beq LCBB6 1264 cbc7 bd cd 8f jsr LCD36 1265 cbca a6 00 LCBB6: ldaa 0,X 1266 cbcc 08 inx 1267 cbcd bd cd 8f jsr LCD36 1268 cbd0 86 3a ldaa #$3A 1269 cbd2 bd cd 8f jsr LCD36 1270 cbd5 a6 00 ldaa 0,X 1271 cbd7 08 inx 1272 cbd8 bd cd 8f jsr LCD36 1273 cbdb a6 00 ldaa 0,X 1274 cbdd 08 inx 1275 cbde bd cd 8f jsr LCD36 1276 cbe1 86 61 ldaa #$61 ;envoie a 1277 cbe3 bd cd 8f jsr LCD36 1278 cbe6 86 6d ldaa #$6D ;envoie m 1279 cbe8 bd cd 8f jsr LCD36 1280 cbeb 39 rts 1281 cbec 81 12 LCBD8: cmpa #$12 1282 cbee 27 03 beq LCBDF 1283 cbf0 8b 88 adda #$88 1284 cbf2 19 daa 1285 cbf3 bd cd 45 LCBDF: jsr LCCEC 1286 cbf6 81 30 cmpa #$30 1287 cbf8 27 03 beq LCBE9 1288 cbfa bd cd 8f jsr LCD36 1289 cbfd 17 LCBE9: tba 1290 cbfe bd cd 8f jsr LCD36 1291 cc01 08 inx 1292 cc02 08 inx 1293 cc03 86 3a ldaa #$3A 1294 cc05 bd cd 8f jsr LCD36 1295 cc08 a6 00 ldaa 0,X 1296 cc0a 08 inx 1297 cc0b bd cd 8f jsr LCD36 1298 cc0e a6 00 ldaa 0,X 1299 cc10 08 inx 1300 cc11 bd cd 8f jsr LCD36 1301 cc14 86 70 ldaa #$70 ;envoie p 1302 cc16 bd cd 8f jsr LCD36 1303 cc19 86 6d ldaa #$6D ;envoie m 1304 cc1b bd cd 8f jsr LCD36 1305 cc1e 39 rts 1306 cc1f 0f LCC0B: sei 1307 cc20 86 85 ldaa #$85 ;5øcar. ADDRAM 1308 cc22 bd cd a9 jsr LCD50 1309 cc25 b7 40 00 staa $4000 1310 cc28 ce b6 10 ldx #$B610 1311 cc2b c6 1b ldab #$1B ;rempl. $18 par $1B 1312 cc2d 96 06 ldaa $6 1313 cc2f 4a LCC1B: deca 1314 cc30 27 03 beq LCC21 1315 cc32 3a abx 1316 cc33 20 fa bra LCC1B 1317 cc35 c6 03 LCC21: ldab #$3 1318 cc37 bd cd a9 LCC23: jsr LCD50 1319 cc3a b6 40 01 ldaa $4001 1320 cc3d a1 00 cmpa 0,X 1321 cc3f 27 06 beq LCC33 1322 cc41 bd cd 18 jsr LCCBF 1323 cc44 bd cd 2d jsr LCCD4 1324 cc47 08 LCC33: inx 1325 cc48 5a decb 1326 cc49 26 ec bne LCC23 1327 cc4b 86 89 ldaa #$89 1328 cc4d bd cd a9 jsr LCD50 1329 cc50 b7 40 00 staa $4000 1330 cc53 c6 07 ldab #$7 ;rempl. $4 par $7 1331 cc55 bd cd a9 LCC41: jsr LCD50 1332 cc58 b6 40 01 ldaa $4001 1333 cc5b a1 00 cmpa 0,X 1334 cc5d 27 06 beq LCC51 1335 cc5f bd cd 18 jsr LCCBF 1336 cc62 bd cd 2d jsr LCCD4 1337 cc65 08 LCC51: inx 1338 cc66 5a decb 1339 cc67 26 ec bne LCC41 1340 cc69 86 c0 ldaa #$C0 ;Passage 2ø ligne 1341 cc6b bd cd a9 jsr LCD50 1342 cc6e b7 40 00 staa $4000 1343 cc71 c6 10 ldab #$10 1344 cc73 bd cd a9 LCC5F: jsr LCD50 1345 cc76 b6 40 01 ldaa $4001 1346 cc79 a1 00 cmpa 0,X 1347 cc7b 27 06 beq LCC6F 1348 cc7d bd cd 18 jsr LCCBF 1349 cc80 bd cd 2d jsr LCCD4 1350 cc83 08 LCC6F: inx 1351 cc84 5a decb 1352 cc85 26 ec bne LCC5F 1353 cc87 0e cli 1354 cc88 39 rts 1355 cc89 18 3c LCC75: pshy 1356 cc8b 37 pshb 1357 cc8c 36 psha 1358 cc8d f6 b6 10 ldab $B610 ; 1359 cc90 18 ce b6 10 ldy #$B610 ; 1360 cc94 5d tstb 1361 cc95 27 2f beq LCCAA 1362 cc97 37 LCC83: pshb 1363 cc98 3c pshx 1364 cc99 18 3c pshy 1365 cc9b c6 0a ldab #$A ;rempl. $7 par $A 1366 cc9d a6 00 LCC89: ldaa 0,X 1367 cc9f 18 a1 00 cmpa 0,Y 1368 cca2 26 0f bne LCC9F 1369 cca4 08 inx 1370 cca5 18 08 iny 1371 cca7 5a decb 1372 cca8 26 f3 bne LCC89 1373 ccaa 38 pulx 1374 ccab c6 0a ldab #$A ;rempl. $7 par $A 1375 ccad 3a abx 1376 ccae 18 38 puly 1377 ccb0 33 pulb 1378 ccb1 20 16 bra LCCAD 1379 ccb3 18 38 LCC9F: puly 1380 ccb5 c6 1b ldab #$1B ;rempl. $18 par $1B Test 1381 ccb7 18 3a aby 1382 ccb9 38 pulx 1383 ccba 33 pulb 1384 ccbb 5a decb 1385 ccbc 26 d9 bne LCC83 1386 ccbe 32 pula 1387 ccbf 33 pulb 1388 ccc0 18 38 puly 1389 ccc2 bd cc ce jsr LCC76 ;X pointe au debut du Nø 1390 ccc5 39 rts 1391 ccc6 ce 00 00 LCCAA: ldx #$0 1392 ccc9 32 LCCAD: pula 1393 ccca 33 pulb 1394 cccb 18 38 puly 1395 cccd 39 rts 1396 1397 ccce 18 3c LCC76: pshy 1398 ccd0 37 pshb 1399 ccd1 36 psha 1400 ccd2 f6 ce 99 ldab dirtel ;rempl $B610 par dirtel 1401 ccd5 18 ce ce 99 ldy #dirtel ;rempl #$B610 par #dirtel 1402 ccd9 5d tstb 1403 ccda 27 27 beq LCCAB 1404 ccdc 37 LCC84: pshb 1405 ccdd 3c pshx ;X pointe au debut du Nø 1406 ccde 18 3c pshy 1407 cce0 c6 0a ldab #$A ;rempl. $7 par $A 1408 cce2 a6 00 LCC8A: ldaa 0,X 1409 cce4 18 a1 00 cmpa 0,Y 1410 cce7 26 0f bne LCCA0 1411 cce9 08 inx 1412 ccea 18 08 iny 1413 ccec 5a decb 1414 cced 26 f3 bne LCC8A 1415 ccef 38 pulx ;X pointe au debut du Nø 1416 ccf0 c6 0a ldab #$A ;rempl. $7 par $A 1417 ccf2 3a abx ;X pointe en fin du Nø 1418 ccf3 18 38 puly 1419 ccf5 33 pulb 1420 ccf6 20 0e bra LCCAE 1421 ccf8 18 38 LCCA0: puly 1422 ccfa c6 1b ldab #$1B ;rempl. $18 par $1B Test 1423 ccfc 18 3a aby 1424 ccfe 38 pulx ;X pointe du debut du Nø 1425 ccff 33 pulb 1426 cd00 5a decb 1427 cd01 26 d9 bne LCC84 1428 cd03 ce 00 00 LCCAB: ldx #$0 ;Nø pas dans repertoire 1429 cd06 32 LCCAE: pula 1430 cd07 33 pulb 1431 cd08 18 38 puly 1432 cd0a 39 rts 1433 1434 1435 cd0b 18 3c LCCB2: pshy 1436 cd0d 18 ce 06 da ldy #$6DA 1437 cd11 18 09 LCCB8: dey 1438 cd13 26 fc bne LCCB8 1439 cd15 18 38 puly 1440 cd17 39 rts 1441 cd18 36 LCCBF: psha 1442 cd19 86 16 ldaa #$16 1443 cd1b b7 10 3b staa PPROG 1444 cd1e a7 00 staa 0,X 1445 cd20 4c inca 1446 cd21 b7 10 3b staa PPROG 1447 cd24 bd cd 0b jsr LCCB2 1448 cd27 4f clra 1449 cd28 b7 10 3b staa PPROG 1450 cd2b 32 pula 1451 cd2c 39 rts 1452 cd2d 36 LCCD4: psha 1453 cd2e 86 02 ldaa #$2 1454 cd30 b7 10 3b staa PPROG 1455 cd33 32 pula 1456 cd34 36 psha 1457 cd35 a7 00 staa 0,X 1458 cd37 86 03 ldaa #$3 1459 cd39 b7 10 3b staa PPROG 1460 cd3c bd cd 0b jsr LCCB2 1461 cd3f 4f clra 1462 cd40 b7 10 3b staa PPROG 1463 cd43 32 pula 1464 cd44 39 rts 1465 cd45 3c LCCEC: pshx ,conversion hexa - decimal 1466 cd46 36 psha 1467 cd47 ce cd 5e ldx #hexa ;rempl. $CD0B par hexa 1468 cd4a 16 tab 1469 cd4b 54 lsrb 1470 cd4c 54 lsrb 1471 cd4d 54 lsrb 1472 cd4e 54 lsrb 1473 cd4f 3a abx 1474 cd50 e6 00 ldab 0,X 1475 cd52 17 tba 1476 cd53 ce cd 5e ldx #hexa ;rempl. $CD0B par hexa 1477 cd56 33 pulb 1478 cd57 c4 0f andb #$F 1479 cd59 3a abx 1480 cd5a e6 00 ldab 0,X 1481 cd5c 38 pulx 1482 cd5d 39 rts 1483 cd5e 30 31 32 33 34 35 hexa: fcc "0123456789ABCDEF" 36 37 38 39 41 42 43 44 45 46 1484 cd6e 37 LCD15: pshb ;conversion hexa exemple: page A -> page 10 1485 cd6f 3c pshx 1486 cd70 16 tab 1487 cd71 ce cd 7a ldx #num ;rempl. $CD27 par num 1488 cd74 3a abx 1489 cd75 a6 00 ldaa 0,X 1490 cd77 38 pulx 1491 cd78 33 pulb 1492 cd79 39 rts 1493 cd7a 00 01 02 03 04 05 num: fcb 0,1,2,3,4,5,6,7,8,9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 1494 cd8f 7d 40 00 LCD36: tst $4000 ;Routines Afficheur 1495 cd92 2b fb bmi LCD36 1496 cd94 b7 40 01 staa $4001 1497 cd97 39 rts 1498 cd98 a6 00 LCD3F: ldaa 0,X 1499 cd9a 08 inx 1500 cd9b 4d tsta 1501 cd9c 26 01 bne LCD46 1502 cd9e 39 rts 1503 cd9f 7d 40 00 LCD46: tst $4000 1504 cda2 2b fb bmi LCD46 1505 cda4 b7 40 01 staa $4001 1506 cda7 20 ef bra LCD3F 1507 1508 cda9 7d 40 00 LCD50: tst $4000 1509 cdac 2b fb bmi LCD50 1510 cdae 39 rts 1511 cdaf ce c0 00 LCD56: ldx #begin 1512 cdb2 18 ce c1 9e ldy #end 1513 cdb6 18 ff 00 08 sty >L0008 1514 cdba 18 ce ce 19 ldy #checksum 1515 cdbe cc 00 00 ldd #0 1516 cdc1 fd 00 05 std >L0005 1517 cdc4 86 01 ldaa #$1 1518 cdc6 b7 00 07 staa >L0007 1519 cdc9 a6 00 LCD70: ldaa 0,X 1520 cdcb b4 00 07 anda >L0007 1521 cdce 27 02 beq LCD79 1522 cdd0 86 01 ldaa #$1 1523 cdd2 f6 00 06 LCD79: ldab >L0006 1524 cdd5 c4 7f andb #$7F 1525 cdd7 18 3c pshy 1526 cdd9 18 3a aby 1527 cddb 18 e6 00 ldab 0,Y 1528 cdde 18 38 puly 1529 cde0 f7 00 04 stab >L0004 1530 cde3 b8 00 04 eora >L0004 1531 cde6 f6 00 05 ldab >L0005 1532 cde9 59 rolb 1533 cdea 59 rolb 1534 cdeb 59 rolb 1535 cdec f7 00 04 stab >L0004 1536 cdef b8 00 04 eora >L0004 1537 cdf2 44 lsra 1538 cdf3 79 00 06 rol >L0006 1539 cdf6 79 00 05 rol >L0005 1540 cdf9 74 00 07 lsr >L0007 1541 cdfc 25 09 bcs LCDAE 1542 cdfe 86 01 ldaa #$1 1543 ce00 b1 00 07 cmpa >L0007 1544 ce03 27 09 beq LCDB5 1545 ce05 20 c2 bra LCD70 1546 ce07 86 80 LCDAE: ldaa #$80 1547 ce09 b7 00 07 staa >L0007 1548 ce0c 20 bb bra LCD70 1549 ce0e bc 00 08 LCDB5: cpx >L0008 1550 ce11 27 03 beq LCDBD 1551 ce13 08 inx 1552 ce14 20 b3 bra LCD70 1553 ce16 dc 05 LCDBD: ldd L0005 1554 ce18 39 rts 1555 checksum: 1556 ce19 00 00 01 01 00 00 fcb 0,0,1,1,0,0,1,1,1,1,0,0,1,1 01 01 01 01 00 00 01 01 1557 ce27 00 00 00 00 01 01 fcb 0,0,0,0,1,1,0,0,1,1,1,1,0,0 00 00 01 01 01 01 00 00 1558 ce35 01 01 00 00 01 01 fcb 1,1,0,0,1,1,0,0,1,1,0,0,0,0 00 00 01 01 00 00 00 00 1559 ce43 01 01 00 00 01 01 fcb 1,1,0,0,1,1,1,1,0,0,1,1,0,0 01 01 00 00 01 01 00 00 1560 ce51 00 00 01 01 00 00 fcb 0,0,1,1,0,0,1,1,0,0,1,1,0,0 01 01 00 00 01 01 00 00 1561 ce5f 01 01 01 01 00 00 fcb 1,1,1,1,0,0,1,1,0,0,0,0,1,1 01 01 00 00 00 00 01 01 1562 ce6d 00 00 01 01 01 01 fcb 0,0,1,1,1,1,0,0,1,1,0,0,1,1 00 00 01 01 00 00 01 01 1563 ce7b 00 00 01 01 00 00 fcb 0,0,1,1,0,0,0,0,1,1,0,0,1,1 00 00 01 01 00 00 01 01 1564 ce89 01 01 00 00 01 01 fcb 1,1,0,0,1,1,0,0,0,0,1,1,0,0 00 00 00 00 01 01 00 00 1565 ce97 01 01 fcb 1,1 1566 1567 dirtel: 1568 ce99 30 36 35 37 33 38 fcc "0657382017" 32 30 31 37 1569 cea3 4d 61 74 74 20 20 fcc "Matt " 20 20 20 20 20 20 20 20 20 20 1570 ceb3 00 fcb $0 1571 1572 ;------------------------------------ 1573 ;RESET Vector 1574 ;------------------------------------ 1575 ffd6 org $0FFD6 1576 ffd6 c1 a7 fdb Main 1577 ffd8 c1 a7 fdb Main 1578 ffda c1 a7 fdb Main 1579 ffdc c1 a7 fdb Main 1580 ffde c1 a7 fdb Main 1581 ffe0 c1 a7 fdb Main 1582 ffe2 c1 a7 fdb Main 1583 ffe4 c1 a7 fdb Main 1584 ffe6 c1 a7 fdb Main 1585 ffe8 c1 a7 fdb Main 1586 ffea c1 a7 fdb Main 1587 ffec c1 a7 fdb Main 1588 ffee c1 a7 fdb Main 1589 fff0 c9 ea fdb LC9D4 1590 fff2 c1 a7 fdb Main 1591 fff4 c1 a7 fdb Main 1592 fff6 c1 a7 fdb Main 1593 fff8 c1 a7 fdb Main 1594 fffa c1 a7 fdb Main 1595 fffc c1 a7 fdb Main 1596 fffe c1 a7 fdb Main Number of errors 0