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