Offset
Eprom Adresse ROM
$0000-$00FF $C300-$C3FF : 256 octets carte
périphérique -> Contenu du
programme APPLE_SAS
$0100-$07FF Inutilisé (rempli de $FF, c'est à
dire un espace vierge)
$0800-$0FFF $C800-$CFFF : Espace mémoire d'extention
de la carte -> Contenu du programme PROGRAMMATEUR
Disk : Sources_Eprom_Programmateur.dsk
"-" files are DELETED files | "*" files are LOCKED files
----------------------------------------------------------------------
A A$0000 (000000) L$00C6 (000198) 002 DISK*
T A$0000 (000000) L$0C00 (003072) 012 T.APPLE_SAS
B A$C300 (049920) L$0100 (000256) 003 APPLE_SAS
T A$0000 (000000) L$3100 (012544) 049 T.PROGRAMMATEUR
B A$C800 (051200) L$0800 (002048) 010 PROGRAMMATEUR
B A$0000 (000000) L$1000 (004096) 018 WILLEM_EPROM_PROGRAMMER.BIN
B A$2300 (008960) L$1000 (004096) 018 EPROM_OK
This catalog contains 7 files. 0 were DELETED.
----------------------------------------------------------------------
DOS 3.3 |
Download Sources et objets Eprom Controleur
(gzipped) |
|
BIN |
Download le contenu de l'eprom controleur
(extraction Willem) |
:ASM
1
2
ORG $C300
3
4 ********************************
5
*
*
6
* APPLE
SAS *
7 * YVES-PAUL
MORICE *
8
*
*
9 ********************************
10
11 * Conversion du source LISA 2.5 vers MERLIN
12 * par CiderPress (Andy McFadden) et Deckard
13
14 * Adresses page 0
15
16 COMPT1
EQU $06
17 COMPTEUR
EQU $07
18
ADRB
EQU $08
19
ADRH
EQU $09
20 DATA1
EQU $0C
21 LPBPIA1
EQU $18
22 LPBPIA2
EQU $19
23 ADRPROMB
EQU $1A
24 ADRPROMH
EQU $1B
25 ADRMEMB
EQU $1C
26 ADRMEMH
EQU $1D
27 EPIA1
EQU $1E
28 EPIA2
EQU $1F
29
30 * Usage spécifique controleur programmateur eprom
31
32 FORMAT
EQU $047B ;$0478+SLOT 3
33 BLOCS
EQU $ED
34 SOMME
EQU $F9
35
DATA
EQU $18
36
37 SERIE
EQU $C0D8
38 STATUS
EQU $C0D9
39 COMMANDE
EQU $C0DA
40 CONTROLE
EQU $C0DB
41
42 EPROM
EQU $C800
43
44 * Adresses ROM APPLE
45
46 RETOUR
EQU $FA62
47
BELL
EQU $FBDD
48 CLAVIER
EQU $FD1B
49 PRBYTE
EQU $FDDA
50 ECRAN
EQU $FDED
51 EFFACE
EQU $FC58
52 COUT1
EQU $FDF0
53 IOREST
EQU $FF3F
54 IOSAVE
EQU $FF4A
55
56 ********************************
57
C300: 20 4A FF 58
CORPROAP JSR
IOSAVE
C303: AD FF CF
59
LDA $CFFF ;DESACTIVATION DES
ROMS
C306: A9 9F
60
LDA #%10011111
C308: 8D DB C0
61
STA CONTROLE ;1 BIT STOP-8 BITS DONNEE-19200
BDS-PAIRE
C30B: A9 6B
62
LDA #%01101011
C30D: 8D DA C0
63
STA COMMANDE ;MODE NORMAL-PARITE PAIRE
C310: AD 7B 04
64
LDA FORMAT
C313: C9 10
65
CMP #16
C315: F0 0B
66
BEQ DEUXK
67
C317: C9 20
68
CMP #32
C319: F0 15
69
BEQ QUATREK
70
C31B: C9 40
71
CMP #64
C31D: F0 21
72
BEQ HUITK
73
C31F: 4C 00 C8
74
JMP EPROM
75
C322: A9 10 76
DEUXK
LDA #16
C324: 8D D8 C0
77
STA SERIE
C327: A9 08
78
LDA #$08
C329: 85 ED
79
STA BLOCS
C32B: 85 09
80
STA ADRH
C32D: 4C 4D C3
81
JMP ATTEND
82
C330: A9 20 83
QUATREK LDA
#32
C332: 8D D8 C0
84
STA SERIE
C335: A9 10
85
LDA #$10
C337: 85 ED
86
STA BLOCS
C339: A9 08
87
LDA #$08
C33B: 85 09
88
STA ADRH
C33D: 4C 4D C3
89
JMP ATTEND
90
C340: A9 40 91
HUITK
LDA #64
C342: 8D D8 C0
92
STA SERIE
C345: A9 20
93
LDA #$20
C347: 85 ED
94
STA BLOCS
C349: A9 08
95
LDA #$08
C34B: 85 09
96
STA ADRH
C34D: EE 7B 04 97
ATTEND INC
FORMAT
C350: 20 97 C3
98
JSR DONNEE
C353: CD 7B 04
99
CMP FORMAT
C356: D0 76
100
BNE TEXTE1
101
C358: A9 EE
102
LDA #$EE
C35A: 8D D8 C0
103
STA SERIE
C35D: 20 97 C3
104
JSR DONNEE
C360: C9 50
105
CMP #$50
C362: D0 6A
106
BNE TEXTE1 ;ERREUR PROTOCOLE NON
RESPECTE
107
C364: A0 00
108
LDY #$00 ;RAZ DU
POINTEUR
C366: 84 08
109
STY ADRB ;RAZ POIDS
FAIBLE DE L'ADRESSE DE DEBUT
C368: 84 F9
110
STY SOMME ;RAZ SOMME DE
VERIFICATION
C36A: B1 08 111
ENVOI
LDA (ADRB),Y
C36C: 85 18
112
STA DATA
C36E: 20 C3 C3
113
JSR TRANS
C371: 18
114
CLC
C372: A5 18
115
LDA DATA
C374: C9 FF
116
CMP #$FF
C376: F0 04
117
BEQ :1
118
C378: 65 F9
119
ADC SOMME ;SOMME DES DONNEES
POUR VERIFICATION
C37A: 85 F9
120
STA SOMME
C37C: C8 121
:1
INY
C37D: D0 EB
122
BNE ENVOI
123
C37F: E6 09
124
INC ADRH
C381: C6 ED
125
DEC BLOCS ;1 PAGE (256
OCTETS) ENVOYEE
C383: D0 E5
126
BNE ENVOI
127
C385: 20 97 C3
128
JSR DONNEE ;ATTENTE DE LA SOMME DU
SAS
C388: C5 F9
129
CMP SOMME
C38A: D0 42
130
BNE TEXTE1 ;ERREUR DE COMPARAISON
DES SOMMES
131
C38C: A9 FF
132
LDA #$FF
C38E: 8D D8 C0
133
STA SERIE
C391: 20 3F FF 134
FIN
JSR IOREST
C394: 6C F2 03
135
JMP ($3F2) ;RETOUR AU PROGRAMME
PRINCIPAL
136
C397: A9 FF 137
DONNEE LDA
#$FF
C399: 85 07
138
STA COMPTEUR
C39B: A9 20
139
LDA #$20
C39D: 85 06
140
STA COMPT1
C39F: AD D9 C0 141
TEST
LDA STATUS
C3A2: 29 08
142
AND #%00001000
C3A4: D0 19
143
BNE RECUE
144
C3A6: AD D9 C0
145
LDA STATUS
C3A9: 29 01
146
AND #%00000001
C3AB: D0 21
147
BNE TEXTE1 ;ERREUR DE PARITE DE LA
DONNEE
148
C3AD: C6 07
149
DEC COMPTEUR
C3AF: F0 03
150
BEQ :1
151
C3B1: 4C 9F C3
152
JMP TEST
153
C3B4: C6 06 154
:1
DEC COMPT1
C3B6: F0 16
155
BEQ TEXTE1 ;ERREUR TEMPS TROP LONG
156
C3B8: A9 FF
157
LDA #$FF
C3BA: 85 07
158
STA COMPTEUR
C3BC: 4C 9F C3
159
JMP TEST
160
C3BF: AD D8 C0 161
RECUE
LDA SERIE
C3C2: 60
162
RTS
163
C3C3: 8D D8 C0 164
TRANS
STA SERIE
C3C6: AD D9 C0 165
TEST1
LDA STATUS
C3C9: 29 10
166
AND #%00010000
C3CB: F0 F9
167
BEQ TEST1
168
C3CD: 60
169
RTS
170
C3CE: 20 DD FB 171
TEXTE1 JSR
BELL ;BIP ET AFFICHAGE MESSAGE ERR
TRANSMISSION
C3D1: A2 00
172
LDX #$00
C3D3: BD E1 C3 173
AA
LDA TABLE,X
C3D6: C9 40
174
CMP #'@' ;TERMINATEUR?
C3D8: F0 B7
175
BEQ FIN ;OUI
176
C3DA: 20 F0 FD
177
JSR COUT1
C3DD: E8
178
INX
C3DE: 4C D3 C3
179
JMP AA
180
C3E1: C5 D2 D2 181
TABLE
ASC "ERREUR DE TRANSMISSION"
C3E4: C5 D5 D2 A0 C4 C5 A0 D4
C3EC: D2 C1 CE D3 CD C9 D3 D3
C3F4: C9 CF CE
C3F7: 40
182
ASC '@' ;RECONNAISSANCE DE FIN DE TEXTE
183
C3F8: FF FF FF
184
DS \,$FF ;REMPLI DE $FF
LE RESTE DE LA PAGE
C3FB: FF FF FF FF FF
185
186
SAV APPLE_SAS
Object saved as APPLE_SAS,A$C300,L$0100
--End assembly, 256 bytes, Errors: 0
Symbol table - alphabetical order:
AA
=$C3D3
ADRB
=$08
ADRH
=$09 ?
ADRMEMB =$1C
? ADRMEMH
=$1D ? ADRPROMB
=$1A ? ADRPROMH
=$1B
ATTEND =$C34D
BELL
=$FBDD
BLOCS
=$ED ?
CLAVIER
=$FD1B COMMANDE
=$C0DA
COMPT1
=$06
COMPTEUR
=$07
CONTROLE =$C0DB ?
CORPROAP =$C300
COUT1
=$FDF0
DATA
=$18 ?
DATA1
=$0C
DEUXK =$C322
DONNEE
=$C397 ?
ECRAN =$FDED
? EFFACE
=$FC58
ENVOI =$C36A
? EPIA1
=$1E ?
EPIA2
=$1F
EPROM
=$C800
FIN =$C391
FORMAT
=$047B
HUITK
=$C340
IOREST
=$FF3F
IOSAVE =$FF4A
? LPBPIA1
=$18 ?
LPBPIA2 =$19
? PRBYTE
=$FDDA
QUATREK =$C330
RECUE
=$C3BF ? RETOUR
=$FA62
SERIE
=$C0D8
SOMME =$F9
STATUS
=$C0D9
TABLE
=$C3E1
TEST
=$C39F
TEST1 =$C3C6
TEXTE1
=$C3CE
TRANS =$C3C3
Symbol table - numerical order:
COMPT1
=$06
COMPTEUR
=$07
ADRB
=$08
ADRH =$09
? DATA1
=$0C ?
LPBPIA1
=$18
DATA
=$18 ?
LPBPIA2 =$19
? ADRPROMB =$1A
? ADRPROMH =$1B
? ADRMEMB
=$1C ?
ADRMEMH =$1D
? EPIA1
=$1E ?
EPIA2
=$1F
BLOCS
=$ED
SOMME =$F9
FORMAT
=$047B
SERIE
=$C0D8
STATUS
=$C0D9 COMMANDE
=$C0DA
CONTROLE =$C0DB
? CORPROAP
=$C300
DEUXK
=$C322
QUATREK =$C330
HUITK
=$C340
ATTEND
=$C34D
ENVOI
=$C36A
FIN =$C391
DONNEE
=$C397
TEST
=$C39F
RECUE
=$C3BF
TRANS =$C3C3
TEST1
=$C3C6
TEXTE1
=$C3CE
AA
=$C3D3
TABLE =$C3E1
EPROM
=$C800 ? RETOUR
=$FA62
BELL =$FBDD
? EFFACE =$FC58
? CLAVIER =$FD1B
? PRBYTE =$FDDA
? ECRAN
=$FDED
COUT1 =$FDF0
IOREST
=$FF3F
IOSAVE =$FF4A
:ASM
1
2
ORG $C800
3
4 ********************************
5
*
*
6 * Programmateur
d'eproms *
7 * Yves-Paul
MORICE *
8
*
*
9 ********************************
10
11 * Conversion source Lisa 2.5 vers Merlin avec
12 * CiderPress (Andy MacFadden) et Deckard
13
14
15 * Usage spécifique programmateur eprom
16
17 FORMAT
EQU $047B ;$0478+slot 3
18
19
ORA1
EQU $C0B0 ;REGISTRE ORA OU
DDRA DU PIA1
20
CRA1
EQU $C0B1 ;REGISTRE DE
CONTROLE PORTA DU PIA1
21
ORB1
EQU $C0B2 ;REGISTRE ORB OU
DDRB DU PIA1
22
CRB1
EQU $C0B3 ;REGISTRE DE
CONTROLE PORTB DU PIA1
23
ORA2
EQU $C0B4 ;REGISTRE ORA OU
DDRA DU PIA2
24
CRA2
EQU $C0B5 ;REGISTRE DE
CONTROLE PORTA DU PIA2
25
ORB2
EQU $C0B6 ;REGISTRE ORB OU
DDRB DU PIA2
26
CRB2
EQU $C0B7 ;REGISTRE DE
CONTROLE PORTB DU PIA2
27
28 SERIE
EQU $C0D8
29 STATUS
EQU $C0D9
30 COMMANDE
EQU $C0DA
31 CONTROLE
EQU $C0DB
32
33 EPROM
EQU $C800
34
35 * Adresses ROM
36
37 RETOUR
EQU $FA62
38
BELL
EQU $FBDD
39 ECRAN
EQU $FBFD
40
VTAB
EQU $FC22
41 CLREOP
EQU $FC42
42
HOME
EQU $FC58
43
CR
EQU $FC62
44
LF
EQU $FC66
45 CLREOL
EQU $FC9C
46
WAIT
EQU $FCA8
47 CLAVIER
EQU $FD0C
48 PRBYTE
EQU $FDDA
49 COUT1
EQU $FDF0
50 IOSAVE
EQU $FF4A
51 IOREST
EQU $FF3F
52
53 * Adresses page 0
54
55
CSWL
EQU $36
56
CSWH
EQU $37
57
58
CH
EQU $24 ;POSITION
HORIZONTALE CURSEUR
59
CV
EQU $25 ; ""
VERTICALE ""
60
DATA
EQU $18 ;TAMPON
DE DONNEE
61
TYPE
EQU $19 ;TYPE
D'EPROM (0 A 3)
62 PB2LECT
EQU $1A ;CONFIG
PORT POUR LECTURE
63 PB2ECRI
EQU $1B ;"" ""
ECRITURE
64 ADRMEMB
EQU $1C ;Adresse
low implantation mémoire
65 ADRMEMH
EQU $1D ;Idem high
66 NEUVE
EQU $1E ;=0 SI
EPROM NON VIERGE
67 NUMERO
EQU $1F ;POINTEUR
DU NO D'EPROM POUR AFTYPE
68 CONSERVE
EQU $EF
;SAUVEGARDE DE Y
69 SOMME
EQU $F9 ;CHECKSUM
70 COMPTEUR
EQU $07
71 PASSE
EQU $06 ;NB DE
PASSE POUR PROG. 1 OCTET
72 EGALITE
EQU $EC ;=0 SI
EPROM = MEMOIRE
73
XDM
EQU $FE
74
MC
EQU $FF
75
DU
EQU $D6 ; "" "" ""
76 TENSION
EQU $D7
;O:VPP=12,5V 1:VPP= 21V
77 TABLEB
EQU $CE ;Pointeur
low chaines TXT
78 TABLEH
EQU $CF ;Pointeur
High chaines TXT
79 BLOCS
EQU $ED ;NB DE
PAGES A PROGRAMMER
80 BLOCTEST
EQU $EE ;TAMPON
81
ADRB
EQU $08 ;ADR.
BASSE EPROM EN COURS
82
ADRH
EQU $09 ;"" HAUTE
"" ""
83 TEMPS
EQU $FA ;DUREE
IMPULSION
84 TEMPSX4
EQU $FB ;DUREE
IMPULS.DE MAINTIEN
85 PB1ECRI
EQU $FC ;CONFIG
PB PIA1 ECRITURE AVEC VPP
86
87 ********************************
88
C800: A9 F0
89
LDA #<COUT1 ; output normal
C802: 85 36
90
STA CSWL
C804: A9 FD
91
LDA #>COUT1
C806: 85 37
92
STA CSWH
93
C808: A9 38 94
CORPRO LDA
#%00111000
C80A: 8D B1 C0
95
STA CRA1
C80D: 8D B3 C0
96
STA CRB1
C810: 8D B7 C0
97
STA CRB2
C813: A9 FF
98
LDA #$FF
C815: 8D B0 C0
99
STA ORA1
C818: 8D B2 C0
100
STA ORB1
C81B: 8D B6 C0
101
STA ORB2
C81E: A9 3C
102
LDA #%00111100
C820: 8D B1 C0
103
STA CRA1
C823: 8D B5 C0
104
STA CRA2
C826: 8D B3 C0
105
STA CRB1
C829: 8D B7 C0
106
STA CRB2
107
C82C: A9 00
108
LDA #$00 ; low adr
C82E: 85 CE
109
STA TABLEB
C830: 85 1C
110
STA ADRMEMB
C832: A9 FF
111
LDA #$FF
C834: 8D B6 C0
112
STA ORB2
C837: A9 CE
113
LDA #>TBL_CE00
C839: 85 CF
114
STA TABLEH
115
C83B: 20 58 FC 116
DISPLAY JSR
HOME ; choix du type d'eprom
C83E: A0 00
117
LDY #$00
C840: 20 E0 CD
118
JSR TEXTE
C843: 20 0C FD 119
ATTEND JSR
CLAVIER ; Attente sélection
C846: 29 0F
120
AND #$0F
C848: C9 01
121
CMP #1
C84A: F0 13
122
BEQ :1 ;
2716
123
C84C: C9 02
124
CMP #2
C84E: F0 0F
125
BEQ :1 ;
2732
126
C850: C9 03
127
CMP #3
C852: F0 0B
128
BEQ :1 ;
2764
129
C854: C9 04
130
CMP #4 ;
27128
C856: F0 07
131
BEQ :1
132
C858: C9 05
133
CMP #5
C85A: F0 7C
134
BEQ HUIT ; quitter
135
C85C: 4C 43 C8
136
JMP ATTEND ; touche non
gérée
137
C85F: 38 138
:1
SEC
; eprom [0,3]
C860: E9 01
139
SBC #1
C862: AA
140
TAX
C863: BD 14 CA
141
LDA CONFLECT,X
C866: 85 1A
142
STA PB2LECT
C868: BD 18 CA
143
LDA CONFECRI,X
C86B: 85 1B
144
STA PB2ECRI
C86D: BD 1C CA
145
LDA VOLUME,X
C870: 85 ED
146
STA BLOCS
C872: 85 EE
147
STA BLOCTEST
C874: BD 20 CA
148
LDA CODETYPE,X
C877: 85 19
149
STA TYPE
C879: BD 24 CA
150
LDA NUMTYPE,X
C87C: 85 1F
151
STA NUMERO
C87E: 20 B2 CD 152
SUITE
JSR AFTYPE
153
C881: A9 CE
154
LDA #>TBL_CE00 ; affichage menu
C883: 85 CF
155
STA TABLEH
C885: A0 34
156
LDY #52
C887: 20 E0 CD
157
JSR TEXTE
C88A: 20 62 FC
158
JSR CR
C88D: 20 62 FC
159
JSR CR
160
C890: 20 0C FD 161
CLAV
JSR CLAVIER ; attente option
C893: C9 B1
162
CMP #"1"
C895: F0 4D
163
BEQ UN ;
lire
164
C897: C9 B2
165
CMP #"2"
C899: F0 68
166
BEQ DEUX ; écrire
167
C89B: C9 B3
168
CMP #"3"
C89D: F0 76
169
BEQ TROIS ; virginité
170
C89F: C9 B4
171
CMP #"4"
C8A1: F0 17
172
BEQ LABQUAT ; checksum
173
C8A3: C9 B5
174
CMP #"5"
C8A5: F0 16
175
BEQ LABCINQ ; copier
176
C8A7: C9 B6
177
CMP #"6"
C8A9: F0 15
178
BEQ LABSIX ; comparaison avec
mémoire
179
C8AB: C9 B7
180
CMP #"7"
C8AD: F0 14
181
BEQ SEPT ; sortie
moniteur
182
C8AF: C9 B8
183
CMP #"8"
C8B1: F0 25
184
BEQ HUIT ; quitter
185
C8B3: C9 B9
186
CMP #"9"
C8B5: F0 84
187
BEQ DISPLAY ; changer type eprom
188
C8B7: 4C 90 C8
189
JMP CLAV ;Touche non
gérée
190
191 *===============================
192
C8BA: 4C 51 C9 193
LABQUAT JMP
QUATRE
194
C8BD: 4C 83 C9 195
LABCINQ JMP
CINQ
196
C8C0: 4C B5 C9 197
LABSIX JMP
SIX
198
199 *===============================
200
201 * Sortie moniteur (position ctrl-Y)
202
C8C3: A9 4C 203
SEPT
LDA #$4C ; JMP
C8C5: 8D F8 03
204
STA $3F8
C8C8: A9 00
205
LDA #<$C300
C8CA: 8D F9 03
206
STA $3F9
C8CD: A9 C3
207
LDA #>$C300
C8CF: 8D FA 03
208
STA $3FA
C8D2: 20 58 FC
209
JSR HOME
C8D5: 4C 69 FF
210
JMP $FF69
211
212 *===============================
213
214 * Quitter
215
C8D8: 20 58 FC 216
HUIT
JSR HOME
C8DB: 20 3F FF
217
JSR IOREST
C8DE: 6C F2 03
218
JMP ($3F2)
219
220 *===============================
221
C8E1: 4C 3B C8 222
NEUF
JMP DISPLAY
223
224 *===============================
225
226 * Lire eprom
227
C8E4: 20 B2 CD 228
UN
JSR AFTYPE
C8E7: A0 C8
229
LDY #200
C8E9: 20 E0 CD
230
JSR TEXTE
C8EC: 20 3C CA 231
AA
JSR RET
C8EF: 20 8E CA
232
JSR LECTURE
C8F2: 20 BB CA
233
JSR CORLECT
C8F5: 20 B2 CD
234
JSR AFTYPE
C8F8: A0 EF
235
LDY #239
C8FA: 20 E0 CD
236
JSR TEXTE
C8FD: 20 0C FD
237
JSR CLAVIER
C900: 4C 7E C8
238
JMP SUITE
239
240 *===============================
241
242 * Ecrire eprom
243
C903: 20 D3 CA 244
DEUX
JSR ECRITURE
C906: 20 62 FC
245
JSR CR
C909: A9 CE
246
LDA #>TBL_CE00
C90B: 85 CF
247
STA TABLEH
C90D: A0 D0
248
LDY #208
C90F: 20 E0 CD
249
JSR TEXTE
C912: 4C 61 CB
250
JMP ECRIT
251
252 *===============================
253
254 * Virginité eprom
255
C915: 20 B2 CD 256
TROIS
JSR AFTYPE
C918: A9 CF
257
LDA #>TBL_CF00
C91A: 85 CF
258
STA TABLEH
C91C: A0 7A
259
LDY #122
C91E: 20 E0 CD
260
JSR TEXTE
C921: 20 62 FC
261
JSR CR
C924: 20 44 CA
262
JSR COMPARER
C927: 20 62 FC
263
JSR CR
C92A: A5 1E
264
LDA NEUVE
C92C: F0 1B
265
BEQ CC
266
C92E: 20 DD FB
267
JSR BELL
C931: A0 34
268
LDY #52
C933: 20 E0 CD
269
JSR TEXTE
C936: 20 62 FC 270
FF
JSR CR
C939: 20 62 FC
271
JSR CR
C93C: A0 00
272
LDY #0
C93E: 20 E0 CD
273
JSR TEXTE
C941: 20 28 CA
274
JSR INTERRO
C944: F0 CF
275
BEQ TROIS
C946: 4C 7E C8
276
JMP SUITE
277
C949: A0 84 278
CC
LDY #132
C94B: 20 E0 CD
279
JSR TEXTE
C94E: 4C 36 C9
280
JMP FF
281
282 *===============================
283
284 * Checksum
285
C951: 20 B2 CD 286
QUATRE JSR
AFTYPE
C954: A9 CF
287
LDA #>TBL_CF00
C956: 85 CF
288
STA TABLEH
C958: A0 91
289
LDY #145
C95A: 20 E0 CD
290
JSR TEXTE
C95D: 20 44 CA
291
JSR COMPARER
C960: 20 62 FC
292
JSR CR
C963: 20 62 FC
293
JSR CR
C966: A0 99
294
LDY #153
C968: 20 E0 CD
295
JSR TEXTE
C96B: A5 F9
296
LDA SOMME
C96D: 20 DA FD
297
JSR PRBYTE
C970: 20 62 FC
298
JSR CR
C973: 20 62 FC
299
JSR CR
C976: A0 00
300
LDY #0
C978: 20 E0 CD
301
JSR TEXTE
C97B: 20 28 CA 302
HH
JSR INTERRO
C97E: F0 D1
303
BEQ QUATRE
304
C980: 4C 7E C8
305
JMP SUITE
306
307 *===============================
308
309 * Copier
310
C983: 20 B2 CD 311
CINQ
JSR AFTYPE
C986: A9 CF
312
LDA #>TBL_CF00
C988: 85 CF
313
STA TABLEH
C98A: A0 A3
314
LDY #163
C98C: 20 E0 CD
315
JSR TEXTE
C98F: 20 62 FC
316
JSR CR
C992: 20 62 FC
317
JSR CR
C995: A0 AA
318
LDY #170
C997: 20 E0 CD
319
JSR TEXTE
C99A: 20 3C CA
320
JSR RET
C99D: 20 8E CA
321
JSR LECTURE
C9A0: 20 BB CA
322
JSR CORLECT
C9A3: 20 D3 CA
323
JSR ECRITURE
C9A6: 20 62 FC
324
JSR CR
C9A9: A9 CE
325
LDA #>TBL_CE00
C9AB: 85 CF
326
STA TABLEH
C9AD: A0 D0
327
LDY #208
C9AF: 20 E0 CD
328
JSR TEXTE
C9B2: 4C 61 CB
329
JMP ECRIT
330
331 *===============================
332
333 * Comparer eprom avec contenu mémoire
334
C9B5: 20 B2 CD 335
SIX
JSR AFTYPE
C9B8: A9 CF
336
LDA #>TBL_CF00
C9BA: 85 CF
337
STA TABLEH
C9BC: A0 D0
338
LDY #208
C9BE: 20 E0 CD
339
JSR TEXTE
C9C1: 20 62 FC
340
JSR CR
C9C4: 20 62 FC
341
JSR CR
C9C7: 20 62 FC
342
JSR CR
C9CA: A9 CE
343
LDA #>TBL_CE00
C9CC: 85 CF
344
STA TABLEH
C9CE: A0 D0
345
LDY #208
C9D0: 20 E0 CD
346
JSR TEXTE
C9D3: 20 3C CA
347
JSR RET
C9D6: 20 44 CA
348
JSR COMPARER
C9D9: 20 62 FC
349
JSR CR
C9DC: 20 62 FC
350
JSR CR
C9DF: A5 EC
351
LDA EGALITE
C9E1: D0 1C
352
BNE LAB2
C9E3: A9 CF
353
LDA #>TBL_CF00
C9E5: 85 CF
354
STA TABLEH
C9E7: A0 D9
355
LDY #217
C9E9: 20 E0 CD
356
JSR TEXTE
C9EC: 20 62 FC 357
DB
JSR CR
C9EF: 20 62 FC
358
JSR CR
C9F2: A0 00
359
LDY #0
C9F4: 20 E0 CD
360
JSR TEXTE
C9F7: 20 28 CA
361
JSR INTERRO
C9FA: F0 B9
362
BEQ SIX
363
C9FC: 4C 7E C8
364
JMP SUITE
365
C9FF: 20 62 FC 366
LAB2
JSR CR
CA02: A9 CF
367
LDA #>TBL_CF00
CA04: 85 CF
368
STA TABLEH
CA06: A0 E7
369
LDY #231
CA08: 20 E0 CD
370
JSR TEXTE
CA0B: 20 62 FC
371
JSR CR
CA0E: 20 DD FB
372
JSR BELL
CA11: 4C EC C9
373
JMP DB
374
CA14: 4C 375
CONFLECT DFB %01001100
CA15: 5C
376
DFB %01011100
CA16: 7C
377
DFB %01111100
CA17: 7C
378
DFB %01111100
CA18: 4E 379
CONFECRI DFB %01001110
CA19: 57
380
DFB %01010111
CA1A: 3E
381
DFB %00111110
CA1B: 3E
382
DFB %00111110
383
CA1C: 08 384
VOLUME DFB
8
CA1D: 10
385
DFB 16
CA1E: 20
386
DFB 32
CA1F: 40
387
DFB 64
388
CA20: 00 389
CODETYPE DFB
0
CA21: 01
390
DFB 1
CA22: 02
391
DFB 2
CA23: 03
392
DFB 3
393
CA24: 00 394
NUMTYPE DFB
0
CA25: 05
395
DFB 5
CA26: 0A
396
DFB 10
CA27: 0F
397
DFB 15
398
CA28: 20 0C FD 399
INTERRO JSR
CLAVIER
CA2B: C9 CF
400
CMP #"O"
CA2D: F0 07
401
BEQ :1
402
CA2F: C9 CE
403
CMP #"N"
CA31: F0 06
404
BEQ :2
405
CA33: 4C 28 CA
406
JMP INTERRO
407
CA36: A9 00 408
:1
LDA #$00
CA38: 60
409
RTS
410
CA39: A9 FF 411
:2
LDA #$FF
CA3B: 60
412
RTS
413
CA3C: 20 0C FD 414
RET
JSR CLAVIER ; attente
CA3F: C9 8D
415
CMP #$8D ; return?
CA41: D0 F9
416
BNE RET
417
CA43: 60
418
RTS
419
420 *===============================
421
CA44: A9 00 422
COMPARER LDA
#$00
CA46: 85 F9
423
STA SOMME
CA48: 85 1E
424
STA NEUVE
CA4A: 85 EC
425
STA EGALITE
CA4C: A8
426
TAY
CA4D: 20 8E CA
427
JSR LECTURE
CA50: AD B4 C0 428
LECTMEM LDA
ORA2
CA53: 85 18
429
STA DATA
CA55: D1 1C
430
CMP (ADRMEMB),Y
CA57: F0 04
431
BEQ :1
432
CA59: A9 BB
433
LDA #$BB
CA5B: 85 EC
434
STA EGALITE
CA5D: A5 18 435
:1
LDA DATA
CA5F: C9 FF
436
CMP #$FF
CA61: F0 0B
437
BEQ :2
438
CA63: A9 BB
439
LDA #$BB
CA65: 85 1E
440
STA NEUVE
CA67: 18
441
CLC
CA68: A5 18
442
LDA DATA
CA6A: 65 F9
443
ADC SOMME
CA6C: 85 F9
444
STA SOMME
CA6E: EE B0 C0 445
:2
INC ORA1
CA71: C8
446
INY
CA72: D0 DC
447
BNE LECTMEM
448
CA74: E6 1D
449
INC ADRMEMH
CA76: C6 EE
450
DEC BLOCTEST
CA78: D0 0E
451
BNE T01
452
CA7A: A9 3C 453
HT
LDA #%00111100
CA7C: 8D B7 C0
454
STA CRB2
CA7F: AD B6 C0
455
LDA ORB2
CA82: 09 81
456
ORA #%10000001
CA84: 8D B6 C0
457
STA ORB2
CA87: 60
458
RTS
459
CA88: EE B2 C0 460
T01
INC ORB1
CA8B: 4C 50 CA
461
JMP LECTMEM
462
CA8E: A9 3C 463
LECTURE LDA
#%00111100
CA90: 8D B5 C0
464
STA CRA2
CA93: A2 00
465
LDX #$00
CA95: 20 23 CD
466
JSR SORTIE
CA98: A5 ED
467
LDA BLOCS
CA9A: 85 EE
468
STA BLOCTEST
CA9C: A5 1A
469
LDA PB2LECT
CA9E: 8D B6 C0
470
STA ORB2
CAA1: A9 34
471
LDA #%00110100
CAA3: 8D B7 C0
472
STA CRB2
CAA6: A9 00
473
LDA #$00
CAA8: 8D B0 C0
474
STA ORA1
CAAB: A8
475
TAY
CAAC: A9 C0
476
LDA #%11000000
CAAE: 8D B2 C0
477
STA ORB1
CAB1: A9 FA
478
LDA #250
CAB3: 20 A8 FC
479
JSR WAIT
CAB6: A9 08
480
LDA #>$0800
CAB8: 85 1D
481
STA ADRMEMH
CABA: 60
482
RTS
483
CABB: AD B4 C0 484
CORLECT LDA
ORA2
CABE: 91 1C
485
STA (ADRMEMB),Y
CAC0: EE B0 C0
486
INC ORA1
CAC3: C8
487
INY
CAC4: D0 F5
488
BNE CORLECT
489
CAC6: EE B2 C0
490
INC ORB1
CAC9: E6 1D
491
INC ADRMEMH
CACB: C6 EE
492
DEC BLOCTEST
CACD: D0 EC
493
BNE CORLECT
494
CACF: 20 7A CA
495
JSR HT
CAD2: 60
496
RTS
497
CAD3: 20 B2 CD 498 ECRITURE
JSR AFTYPE
CAD6: A9 CF
499
LDA #>TBL_CF00
CAD8: 85 CF
500
STA TABLEH
CADA: A0 0B
501
LDY #11
CADC: 20 E0 CD
502
JSR TEXTE
CADF: 20 62 FC
503
JSR CR
CAE2: A5 19
504
LDA TYPE
CAE4: F0 53
505
BEQ :2
506
CAE6: C9 01
507
CMP #1
CAE8: F0 63
508
BEQ :3
509
CAEA: A0 14
510
LDY #20
CAEC: 20 E0 CD
511
JSR TEXTE
CAEF: 20 62 FC
512
JSR CR
CAF2: A0 29
513
LDY #41
CAF4: 20 E0 CD
514
JSR TEXTE
CAF7: 20 62 FC
515
JSR CR
CAFA: 20 62 FC
516
JSR CR
CAFD: A0 2F
517
LDY #47
CAFF: 20 E0 CD
518
JSR TEXTE
519
CB02: 20 0C FD 520
:1
JSR CLAVIER
CB05: C9 B1
521
CMP #"1"
CB07: F0 07
522
BEQ :4
523
CB09: C9 B2
524
CMP #"2"
CB0B: F0 15
525
BEQ :5
526
CB0D: 4C 02 CB
527
JMP :1
528
CB10: A0 23 529
:4
LDY #35
CB12: 20 E0 CD
530
JSR TEXTE
CB15: A9 C0
531
LDA #%11000000
CB17: 85 FC
532
STA PB1ECRI
CB19: A9 14
533
LDA #20
CB1B: 85 FA
534
STA TEMPS
CB1D: A9 28
535
LDA #40
CB1F: 85 FB
536
STA TEMPSX4
CB21: 60
537
RTS
538
CB22: A0 2B 539
:5
LDY #43
CB24: 20 E0 CD
540
JSR TEXTE
CB27: A9 40
541
LDA #%01000000
CB29: 85 FC
542
STA PB1ECRI
CB2B: A9 3C
543
LDA #%00111100
CB2D: 8D B3 C0
544
STA CRB1
CB30: A9 3C
545
LDA #60
CB32: 85 FA
546
STA TEMPS
CB34: A9 6E
547
LDA #110
CB36: 85 FB
548
STA TEMPSX4
CB38: 60
549
RTS
550
CB39: A0 2F 551
:2
LDY #47
CB3B: 20 E0 CD
552
JSR TEXTE
CB3E: A0 F4
553
LDY #244
CB40: 20 E0 CD
554
JSR TEXTE
CB43: A9 00
555
LDA #$00
CB45: 85 FC
556
STA PB1ECRI
CB47: A9 34
557
LDA #%00110100
CB49: 8D B3 C0
558
STA CRB1
CB4C: 60
559
RTS
560
CB4D: A0 2F 561
:3
LDY #47
CB4F: 20 E0 CD
562
JSR TEXTE
CB52: A0 2B
563
LDY #43
CB54: 20 E0 CD
564
JSR TEXTE
CB57: A9 00
565
LDA #$00
CB59: 85 FC
566
STA PB1ECRI
CB5B: A9 3C
567
LDA #%00111100
CB5D: 8D B3 C0
568
STA CRB1
CB60: 60
569
RTS
570
CB61: 20 3C CA 571
ECRIT
JSR RET
CB64: 20 44 CA
572
JSR COMPARER
CB67: 20 62 FC
573
JSR CR
CB6A: 20 62 FC
574
JSR CR
CB6D: A5 1E
575
LDA NEUVE
CB6F: F0 25
576
BEQ :1
577
CB71: A9 CF
578
LDA #>TBL_CF00
CB73: 85 CF
579
STA TABLEH
CB75: A0 34
580
LDY #52
CB77: 20 E0 CD
581
JSR TEXTE
CB7A: 20 DD FB
582
JSR BELL
CB7D: 20 62 FC
583
JSR CR
CB80: 20 62 FC
584
JSR CR
CB83: A0 00
585
LDY #0
CB85: 20 E0 CD
586
JSR TEXTE
CB88: 20 62 FC
587
JSR CR
CB8B: 20 62 FC
588
JSR CR
CB8E: 20 28 CA
589
JSR INTERRO
CB91: F0 03
590
BEQ :1
591
CB93: 4C 7E C8
592
JMP SUITE
593
CB96: A9 09 594
:1
LDA #9
CB98: 85 25
595
STA CV
CB9A: 20 22 FC
596
JSR VTAB
CB9D: 20 42 FC
597
JSR CLREOP
CBA0: A9 00
598
LDA #0
CBA2: 85 24
599
STA CH
CBA4: A9 0B
600
LDA #11
CBA6: 85 25
601
STA CV
CBA8: 20 22 FC
602
JSR VTAB
CBAB: A9 CF
603
LDA #>TBL_CF00
CBAD: 85 CF
604
STA TABLEH
CBAF: A0 45
605
LDY #69
CBB1: 20 E0 CD
606
JSR TEXTE
CBB4: A9 00
607
LDA #$00
CBB6: 8D B0 C0
608
STA ORA1
CBB9: 85 08
609
STA ADRB
CBBB: 85 09
610
STA ADRH
CBBD: 85 EF
611
STA CONSERVE
CBBF: 20 DA FD
612
JSR PRBYTE
CBC2: A9 00
613
LDA #$00
CBC4: 20 DA FD
614
JSR PRBYTE
CBC7: A5 ED
615
LDA BLOCS
CBC9: 85 EE
616
STA BLOCTEST
CBCB: A5 1B
617
LDA PB2ECRI
CBCD: 8D B6 C0
618
STA ORB2
CBD0: A5 FC
619
LDA PB1ECRI
CBD2: 8D B2 C0
620
STA ORB1
CBD5: A9 FF
621
LDA #255
CBD7: 20 A8 FC
622
JSR WAIT
CBDA: A9 08
623
LDA #>$0800
CBDC: 85 1D
624
STA ADRMEMH
CBDE: A9 34
625
LDA #%00110100
CBE0: 8D B5 C0
626
STA CRA2
CBE3: A5 19
627
LDA TYPE
CBE5: F0 67
628
BEQ T06
629
CBE7: C9 01
630
CMP #1
CBE9: F0 63
631
BEQ T06
632
CBEB: A2 FF 633
FD
LDX #$FF
CBED: 20 23 CD
634
JSR SORTIE
CBF0: A9 01
635
LDA #$01
CBF2: 85 06
636
STA PASSE
CBF4: A4 EF
637
LDY CONSERVE
CBF6: B1 1C
638
LDA (ADRMEMB),Y
CBF8: 8D B4 C0
639
STA ORA2
CBFB: 85 18
640
STA DATA
CBFD: C9 FF
641
CMP #$FF
CBFF: F0 4A
642
BEQ LQUAT
643
CC01: A9 34
644
LDA #%00110100
CC03: 8D B7 C0
645
STA CRB2
CC06: AD B2 C0 646
FJ
LDA ORB1
CC09: 29 BF
647
AND #%10111111
CC0B: 8D B2 C0
648
STA ORB1
CC0E: A5 FA
649
LDA TEMPS
CC10: 20 A8 FC
650
JSR WAIT
CC13: AD B2 C0
651
LDA ORB1
CC16: 09 40
652
ORA #%01000000
CC18: 8D B2 C0
653
STA ORB1
CC1B: A2 00
654
LDX #$00
CC1D: 20 23 CD
655
JSR SORTIE
CC20: A5 1A
656
LDA PB2LECT
CC22: 29 BC
657
AND #%10111100
CC24: 8D B6 C0
658
STA ORB2
CC27: AD B4 C0
659
LDA ORA2
CC2A: C5 18
660
CMP DATA
CC2C: F0 23
661
BEQ T07
662
CC2E: E6 06
663
INC PASSE
CC30: A5 06
664
LDA PASSE
CC32: C9 0F
665
CMP #15
CC34: F0 1B
666
BEQ T07
667
CC36: AD B6 C0
668
LDA ORB2
CC39: 09 02
669
ORA #%00000010
CC3B: 8D B6 C0
670
STA ORB2
CC3E: A2 FF
671
LDX #$FF
CC40: 20 23 CD
672
JSR SORTIE
CC43: A5 18
673
LDA DATA
CC45: 8D B4 C0
674
STA ORA2
CC48: 4C 06 CC
675
JMP FJ
676
CC4B: 4C 87 CC 677
LQUAT
JMP SAUT4
678
CC4E: 4C 37 CD 679
T06
JMP PROGORD
680
CC51: A5 1B 681
T07
LDA PB2ECRI
CC53: 8D B6 C0
682
STA ORB2
CC56: A5 18
683
LDA DATA
CC58: 8D B4 C0
684
STA ORA2
CC5B: AD B2 C0
685
LDA ORB1
CC5E: 29 BF
686
AND #%10111111
CC60: 8D B2 C0
687
STA ORB1
CC63: A5 FB 688
:1
LDA TEMPSX4
CC65: 20 A8 FC
689
JSR WAIT
CC68: C6 06
690
DEC PASSE
CC6A: D0 F7
691
BNE :1
692
CC6C: AD B2 C0
693
LDA ORB1
CC6F: 09 40
694
ORA #%01000000
CC71: 8D B2 C0
695
STA ORB1
CC74: A2 00
696
LDX #$00
CC76: 20 23 CD
697
JSR SORTIE
CC79: A5 1A
698
LDA PB2LECT
CC7B: 29 BC
699
AND #%10111100
CC7D: 8D B6 C0
700
STA ORB2
CC80: AD B4 C0
701
LDA ORA2
CC83: C5 18
702
CMP DATA
CC85: D0 68
703
BNE T08
704
CC87: EE B0 C0 705
SAUT4
INC ORA1
CC8A: AD B6 C0
706
LDA ORB2
CC8D: 09 02
707
ORA #%00000010
CC8F: 8D B6 C0
708
STA ORB2
CC92: E6 EF
709
INC CONSERVE
CC94: D0 3C
710
BNE T09
711
CC96: E6 1D
712
INC ADRMEMH
CC98: C6 EE
713
DEC BLOCTEST
CC9A: D0 33
714
BNE T11
715
CC9C: A9 3C 716
FINPROG LDA
#%00111100
CC9E: 8D B5 C0
717
STA CRA2
CCA1: 20 62 FC
718
JSR CR
CCA4: 20 62 FC
719
JSR CR
CCA7: A9 FE
720
LDA #254
CCA9: 20 A8 FC
721
JSR WAIT
CCAC: 20 44 CA
722
JSR COMPARER
CCAF: A5 EC
723
LDA EGALITE
CCB1: D0 25
724
BNE T10
725
CCB3: A9 CF
726
LDA #>TBL_CF00
CCB5: 85 CF
727
STA TABLEH
CCB7: A0 65
728
LDY #101
CCB9: 20 E0 CD
729
JSR TEXTE
CCBC: 20 62 FC 730
UV
JSR CR
CCBF: 20 62 FC
731
JSR CR
CCC2: A0 00
732
LDY #0
CCC4: 20 E0 CD
733
JSR TEXTE
CCC7: 20 28 CA
734
JSR INTERRO
CCCA: D0 1D
735
BNE WW
736
CCCC: 4C 03 C9 737
RECOM
JMP DEUX
738
CCCF: EE B2 C0 739
T11
INC ORB1
CCD2: 20 8F CD 740
T09
JSR COMPTAGE
CCD5: 4C EB CB
741
JMP FD
742
CCD8: 20 62 FC 743
T10
JSR CR
CCDB: 20 62 FC
744
JSR CR
CCDE: A0 4D
745
LDY #77
CCE0: 20 E0 CD
746
JSR TEXTE
CCE3: 20 DD FB
747
JSR BELL
CCE6: 4C BC CC
748
JMP UV
749
CCE9: 20 7A CA 750
WW
JSR HT
CCEC: 4C 7E C8
751
JMP SUITE
752
CCEF: 20 62 FC 753
T08
JSR CR
CCF2: A0 4D
754
LDY #77
CCF4: 20 E0 CD
755
JSR TEXTE
CCF7: 20 DD FB
756
JSR BELL
CCFA: 20 62 FC
757
JSR CR
CCFD: A0 00
758
LDY #0
CCFF: 20 E0 CD
759
JSR TEXTE
CD02: 20 28 CA
760
JSR INTERRO
CD05: D0 E2
761
BNE WW
762
CD07: A9 0C
763
LDA #12
CD09: 85 25
764
STA CV
CD0B: 20 22 FC
765
JSR VTAB
CD0E: A9 00
766
LDA #0
CD10: 85 24
767
STA CH
CD12: 20 42 FC
768
JSR CLREOP
CD15: A9 0B
769
LDA #11
CD17: 85 25
770
STA CV
CD19: 20 22 FC
771
JSR VTAB
CD1C: A9 0B
772
LDA #11
CD1E: 85 24
773
STA CH
CD20: 4C 87 CC
774
JMP SAUT4
775
CD23: AD B5 C0 776
SORTIE LDA
CRA2
CD26: 29 FB
777
AND #%11111011
CD28: 8D B5 C0
778
STA CRA2
CD2B: 8E B4 C0
779
STX ORA2
CD2E: AD B5 C0
780
LDA CRA2
CD31: 09 04
781
ORA #%00000100
CD33: 8D B5 C0
782
STA CRA2
CD36: 60
783
RTS
784
CD37: A2 FF 785
PROGORD LDX
#$FF
CD39: 20 23 CD
786
JSR SORTIE
CD3C: A9 CF
787
LDA #>TBL_CF00
CD3E: 85 CF
788
STA TABLEH
CD40: A9 34
789
LDA #%00110100
CD42: 8D B7 C0
790
STA CRB2
CD45: AD B6 C0
791
LDA ORB2
CD48: 29 7F
792
AND #%01111111
CD4A: 8D B6 C0
793
STA ORB2
CD4D: A5 FC
794
LDA PB1ECRI
CD4F: 8D B2 C0
795
STA ORB1
CD52: A9 08
796
LDA #>$0800
CD54: 85 1D
797
STA ADRMEMH
CD56: A4 EF 798
ABB
LDY CONSERVE
CD58: B1 1C
799
LDA (ADRMEMB),Y
CD5A: C9 FF
800
CMP #$FF
CD5C: F0 18
801
BEQ :1
802
CD5E: 8D B4 C0
803
STA ORA2
CD61: AD B6 C0
804
LDA ORB2
CD64: 49 01
805
EOR #%00000001
CD66: 8D B6 C0
806
STA ORB2
CD69: A9 8E
807
LDA #142
CD6B: 20 A8 FC
808
JSR WAIT
CD6E: AD B6 C0
809
LDA ORB2
CD71: 49 01
810
EOR #%00000001
CD73: 8D B6 C0
811
STA ORB2
CD76: E6 EF 812
:1
INC CONSERVE
CD78: EE B0 C0
813
INC ORA1
CD7B: D0 0C
814
BNE :2
815
CD7D: EE B2 C0
816
INC ORB1
CD80: E6 1D
817
INC ADRMEMH
CD82: C6 EE
818
DEC BLOCTEST
CD84: D0 03
819
BNE :2
820
CD86: 4C 9C CC
821
JMP FINPROG
822
CD89: 20 8F CD 823
:2
JSR COMPTAGE
CD8C: 4C 56 CD
824
JMP ABB
825
CD8F: E6 08 826
COMPTAGE INC
ADRB
CD91: C6 24
827
DEC CH
CD93: C6 24
828
DEC CH
CD95: A5 08
829
LDA ADRB
CD97: 20 DA FD
830
JSR PRBYTE
CD9A: A5 08
831
LDA ADRB
CD9C: D0 13
832
BNE :1
833
CD9E: E6 09
834
INC ADRH
CDA0: C6 24
835
DEC CH
CDA2: C6 24
836
DEC CH
CDA4: C6 24
837
DEC CH
CDA6: C6 24
838
DEC CH
CDA8: A5 09
839
LDA ADRH
CDAA: 20 DA FD
840
JSR PRBYTE
CDAD: E6 24
841
INC CH
CDAF: E6 24
842
INC CH
CDB1: 60 843
:1
RTS
844
845 *===============================
846
CDB2: 20 58 FC 847
AFTYPE JSR
HOME ; affiche à l'écran le
type d'eprom
CDB5: A9 23
848
LDA #35
CDB7: 85 24
849
STA CH
CDB9: A4 1F
850
LDY NUMERO
CDBB: A2 05
851
LDX #5
CDBD: B9 CC CD 852
:1
LDA NUMEPROM,Y
CDC0: 84 07
853
STY COMPTEUR
CDC2: 20 FD FB
854
JSR ECRAN
CDC5: A4 07
855
LDY COMPTEUR
CDC7: C8
856
INY
CDC8: CA
857
DEX
CDC9: D0 F2
858
BNE :1
859
CDCB: 60
860
RTS
861
CDCC: B2 B7 B1 862 NUMEPROM
ASC "2716 "
CDCF: B6 A0
CDD1: B2 B7 B3
863
ASC "2732 "
CDD4: B2 A0
CDD6: B2 B7 B6
864
ASC "2764 "
CDD9: B4 A0
CDDB: B2 B7 B1
865
ASC "27128"
CDDE: B2 B8
866
867 *==============================*
868
*
*
869 * Affichage chaine à l'écran *
870
*
*
871 *==============================*
872
873 * In: Y=pointe sur début chaine
874
875 * Note: les chaines de TXT tiennent sur 2 pages aussi
876 * le choix de l'auteur
pour l'indexation consiste
877 * à modifier le
pointeur sur la page $CE ou $CF.
878
CDE0: B1 CE 879
TEXTE
LDA (TABLEB),Y
CDE2: C9 C0
880
CMP #"@" ;terminateur
chaine
CDE4: F0 0F
881
BEQ :1
882
CDE6: C9 A3
883
CMP #"#" ;retour chariot
CDE8: F0 0C
884
BEQ :2
885
CDEA: 84 07
886
STY COMPTEUR
CDEC: 20 FD FB
887
JSR ECRAN
CDEF: A4 07
888
LDY COMPTEUR
CDF1: C8
889
INY
CDF2: 4C E0 CD
890
JMP TEXTE
891
CDF5: 60 892
:1
RTS
893
CDF6: 20 62 FC 894
:2
JSR CR
CDF9: 20 66 FC
895
JSR LF
CDFC: C8
896
INY
CDFD: 4C E0 CD
897
JMP TEXTE
898
899 *==============================*
900
*
*
901 * Table chaines en $CE00-$CEFF *
902
*
*
903 *==============================*
904
905
TBL_CE00
CE00: D4 D9 D0
906
ASC #TYPE D'EPROM?#
CE03: C5 A0 C4 A7 C5 D0 D2 CF
CE0B: CD BF
CE0D: A3
907
ASC "#"
CE0E: B1 AD B2
908
ASC "1-2716#"
CE11: B7 B1 B6 A3
CE15: B2 AD B2
909
ASC "2-2732#"
CE18: B7 B3 B2 A3
CE1C: B3 AD B2
910
ASC "3-2764#"
CE1F: B7 B6 B4 A3
CE23: B4 AD B2
911
ASC "4-27128#"
CE26: B7 B1 B2 B8 A3
CE2B: B5 AD D1
912
ASC "5-QUITTE@"
CE2E: D5 C9 D4 D4 C5 C0
913
CE34: B1 AD CC
914
ASC "1-LIRE#"
CE37: C9 D2 C5 A3
CE3B: B2 AD C5
915
ASC "2-ECRIRE#"
CE3E: C3 D2 C9 D2 C5 A3
CE44: B3 AD D6
916
ASC "3-VIRGINITE#"
CE47: C9 D2 C7 C9 CE C9 D4 C5
CE4F: A3
CE50: B4 AD C3
917
ASC "4-CHEKSUM#"
CE53: C8 C5 CB D3 D5 CD A3
CE5A: B5 AD C3
918
ASC "5-COPIER#"
CE5D: CF D0 C9 C5 D2 A3
CE63: B6 AD C3
919
ASC "6-COMPARER A LA MEMOIRE (DEBUT $0800)#"
CE66: CF CD D0 C1 D2 C5 D2 A0
CE6E: C1 A0 CC C1 A0 CD C5 CD
CE76: CF C9 D2 C5 A0 A8 C4 C5
CE7E: C2 D5 D4 A0 A4 B0 B8 B0
CE86: B0 A9 A3
CE89: B7 AD CD
920
ASC "7-MONITEUR (RETOUR=CTRL-Y)#"
CE8C: CF CE C9 D4 C5 D5 D2 A0
CE94: A8 D2 C5 D4 CF D5 D2 BD
CE9C: C3 D4 D2 CC AD D9 A9 A3
CEA4: B8 AD D1
921
ASC "8-QUITTER#"
CEA7: D5 C9 D4 D4 C5 D2 A3
CEAE: B9 AD C3
922
ASC #9-CHANGER DE TYPE D'EPROM@#
CEB1: C8 C1 CE C7 C5 D2 A0 C4
CEB9: C5 A0 D4 D9 D0 C5 A0 C4
CEC1: A7 C5 D0 D2 CF CD C0
923
CEC8: CC C5 C3
924
ASC "LECTURE#"
CECB: D4 D5 D2 C5 A3
CED0: D0 CC C1
925
ASC #PLACEZ UNE EPROM PUIS "RETURN"@#
CED3: C3 C5 DA A0 D5 CE C5 A0
CEDB: C5 D0 D2 CF CD A0 D0 D5
CEE3: C9 D3 A0 A2 D2 C5 D4 D5
CEEB: D2 CE A2 C0
926
CEEF: C5 D0 D2
927
ASC "EPROM->$0800@"
CEF2: CF CD AD BE A4 B0 B8 B0
CEFA: B0 C0
928
CEFC: FF FF FF
929
DS \,$FF
CEFF: FF
930
931 *==============================*
932
*
*
933 * Table chaines en $CF00-$CFFF *
934
*
*
935 *==============================*
936
937
TBL_CF00
CF00: D3 D5 C9
938
ASC "SUITE O/N?@"
CF03: D4 C5 A0 CF AF CE BF C0
CF0B: C5 C3 D2
939
ASC "ECRITURE@"
CF0E: C9 D4 D5 D2 C5 C0
CF14: D4 C5 CE
940
ASC "TENSION VPP?#1-12,5V@"
CF17: D3 C9 CF CE A0 D6 D0 D0
CF1F: BF A3 B1 AD B1 B2 AC B5
CF27: D6 C0
CF29: B2 AD B2
941
ASC "2-21V@"
CF2C: B1 D6 C0
CF2F: D6 D0 D0
942
ASC "VPP=@"
CF32: BD C0
CF34: C5 D0 D2
943
ASC "EPROM NON VIERGE@"
CF37: CF CD A0 CE CF CE A0 D6
CF3F: C9 C5 D2 C7 C5 C0
CF45: C5 D0 D2
944
ASC "EPROM:$@"
CF48: CF CD BA A4 C0
CF4D: C5 D2 D2
945
ASC "ERREUR DE PROGRAMMATION@"
CF50: C5 D5 D2 A0 C4 C5 A0 D0
CF58: D2 CF C7 D2 C1 CD CD C1
CF60: D4 C9 CF CE C0
CF65: C6 C9 CE
946
ASC "FIN DE PROGRAMMATION@"
CF68: A0 C4 C5 A0 D0 D2 CF C7
CF70: D2 C1 CD CD C1 D4 C9 CF
CF78: CE C0
947
CF7A: D6 C9 D2
948
ASC "VIRGINITE@"
CF7D: C7 C9 CE C9 D4 C5 C0
CF84: C5 D0 D2
949
ASC "EPROM VIERGE@"
CF87: CF CD A0 D6 C9 C5 D2 C7
CF8F: C5 C0
CF91: C3 C8 C5
950
ASC "CHEKSUM@"
CF94: CB D3 D5 CD C0
CF99: C3 C8 C5
951
ASC "CHEKSUM=$@"
CF9C: CB D3 D5 CD BD A4 C0
CFA3: C3 CF D0
952
ASC "COPIER@"
CFA6: C9 C5 D2 C0
CFAA: D0 CC C1
953
ASC #PLACEZ L'EPROM A COPIER PUIS "RETURN"@#
CFAD: C3 C5 DA A0 CC A7 C5 D0
CFB5: D2 CF CD A0 C1 A0 C3 CF
CFBD: D0 C9 C5 D2 A0 D0 D5 C9
CFC5: D3 A0 A2 D2 C5 D4 D5 D2
CFCD: CE A2 C0
954
CFD0: C3 CF CD
955
ASC "COMPARER@"
CFD3: D0 C1 D2 C5 D2 C0
CFD9: C5 D0 D2
956
ASC "EPROM=MEMOIRE@"
CFDC: CF CD BD CD C5 CD CF C9
CFE4: D2 C5 C0
CFE7: C5 D2 D2
957
ASC "ERREUR !! @"
CFEA: C5 D5 D2 A0 A1 A1 A0 A0
CFF2: A0 C0
CFF4: B2 B5 D6
958
ASC "25V@"
CFF7: C0
959
CFF8: FF FF FF
960
DS \,$FF
CFFB: FF FF FF FF FF
961
962
SAV PROGRAMMATEUR
Object saved as PROGRAMMATEUR,A$C800,L$0800
--End assembly, 2048 bytes, Errors: 0
Symbol table - alphabetical order:
? AA
=$C8EC
ABB
=$CD56
ADRB
=$08
ADRH =$09
ADRMEMB
=$1C
ADRMEMH
=$1D
AFTYPE
=$CDB2
ATTEND =$C843
BELL
=$FBDD
BLOCS
=$ED
BLOCTEST
=$EE
CC =$C949
CH
=$24
CINQ
=$C983
CLAV
=$C890
CLAVIER =$FD0C
? CLREOL
=$FC9C
CLREOP
=$FC42 CODETYPE
=$CA20 ? COMMANDE =$C0DA
COMPARER
=$CA44 COMPTAGE
=$CD8F COMPTEUR
=$07
CONFECRI =$CA18
CONFLECT
=$CA14 CONSERVE
=$EF ? CONTROLE
=$C0DB
CORLECT =$CABB
? CORPRO
=$C808
COUT1
=$FDF0
CR
=$FC62
CRA1 =$C0B1
CRA2
=$C0B5
CRB1
=$C0B3
CRB2
=$C0B7
CSWH =$37
CSWL
=$36
CV
=$25
DATA
=$18
DB =$C9EC
DEUX
=$C903
DISPLAY =$C83B ?
DU
=$D6
ECRAN =$FBFD
ECRIT
=$CB61 ECRITURE
=$CAD3
EGALITE =$EC
? EPROM =$C800
FD
=$CBEB
FF
=$C936
FINPROG
=$CC9C
FJ =$CC06
? FORMAT =$047B
? HH
=$C97B
HOME
=$FC58
HT =$CA7A
HUIT
=$C8D8
INTERRO
=$CA28
IOREST =$FF3F ?
IOSAVE =$FF4A
LAB2
=$C9FF
LABCINQ
=$C8BD
LABQUAT
=$C8BA
LABSIX =$C8C0
LECTMEM
=$CA50
LECTURE
=$CA8E
LF
=$FC66
LQUAT =$CC4B
? MC
=$FF ?
NEUF
=$C8E1
NEUVE
=$1E
NUMEPROM =$CDCC
NUMERO
=$1F
NUMTYPE
=$CA24
ORA1
=$C0B0
ORA2 =$C0B4
ORB1
=$C0B2
ORB2
=$C0B6
PASSE
=$06
PB1ECRI =$FC
PB2ECRI
=$1B
PB2LECT
=$1A
PRBYTE
=$FDDA
PROGORD =$CD37
QUATRE
=$C951 ?
RECOM
=$CCCC
RET
=$CA3C ? RETOUR
=$FA62
SAUT4
=$CC87
SEPT =$C8C3
? SERIE
=$C0D8
SIX =$C9B5
SOMME
=$F9
SORTIE =$CD23 ?
STATUS
=$C0D9
SUITE =$C87E
T01
=$CA88
T06
=$CC4E
T07
=$CC51
T08 =$CCEF
T09
=$CCD2
T10
=$CCD8
T11
=$CCCF
TABLEB =$CE
TABLEH
=$CF
TBL_CE00 =$CE00
TBL_CF00 =$CF00
TEMPS =$FA
TEMPSX4
=$FB ?
TENSION
=$D7
TEXTE
=$CDE0
TROIS =$C915
TYPE
=$19
UN
=$C8E4
UV
=$CCBC
VOLUME =$CA1C
VTAB
=$FC22
WAIT
=$FCA8
WW
=$CCE9 ?
XDM =$FE
Symbol table - numerical order:
PASSE
=$06
COMPTEUR
=$07
ADRB
=$08
ADRH =$09
DATA
=$18
TYPE
=$19
PB2LECT
=$1A
PB2ECRI =$1B
ADRMEMB
=$1C
ADRMEMH
=$1D
NEUVE
=$1E
NUMERO =$1F
CH
=$24
CV
=$25
CSWL
=$36
CSWH =$37
TABLEB
=$CE
TABLEH =$CF
? DU
=$D6 ?
TENSION =$D7
EGALITE
=$EC
BLOCS
=$ED
BLOCTEST
=$EE
CONSERVE =$EF
SOMME
=$F9
TEMPS
=$FA
TEMPSX4
=$FB
PB1ECRI =$FC
? XDM
=$FE ?
MC
=$FF ?
FORMAT
=$047B
ORA1 =$C0B0
CRA1
=$C0B1
ORB1
=$C0B2
CRB1
=$C0B3
ORA2 =$C0B4
CRA2
=$C0B5
ORB2
=$C0B6
CRB2 =$C0B7
? SERIE =$C0D8
? STATUS =$C0D9
? COMMANDE =$C0DA ?
CONTROLE =$C0DB ?
EPROM =$C800
? CORPRO
=$C808
DISPLAY
=$C83B
ATTEND
=$C843
SUITE =$C87E
CLAV
=$C890
LABQUAT
=$C8BA
LABCINQ
=$C8BD
LABSIX =$C8C0
SEPT
=$C8C3
HUIT =$C8D8
? NEUF
=$C8E1
UN =$C8E4
? AA
=$C8EC
DEUX
=$C903
TROIS
=$C915
FF =$C936
CC
=$C949
QUATRE =$C951 ?
HH
=$C97B
CINQ =$C983
SIX
=$C9B5
DB
=$C9EC
LAB2
=$C9FF CONFLECT
=$CA14
CONFECRI
=$CA18
VOLUME
=$CA1C CODETYPE
=$CA20
NUMTYPE =$CA24
INTERRO
=$CA28
RET
=$CA3C COMPARER
=$CA44
LECTMEM =$CA50
HT
=$CA7A
T01
=$CA88
LECTURE
=$CA8E
CORLECT =$CABB
ECRITURE
=$CAD3
ECRIT
=$CB61
FD
=$CBEB
FJ =$CC06
LQUAT
=$CC4B
T06
=$CC4E
T07
=$CC51
SAUT4 =$CC87
FINPROG
=$CC9C
UV
=$CCBC ?
RECOM
=$CCCC
T11 =$CCCF
T09
=$CCD2
T10
=$CCD8
WW
=$CCE9
T08 =$CCEF
SORTIE
=$CD23
PROGORD
=$CD37
ABB
=$CD56 COMPTAGE
=$CD8F
AFTYPE
=$CDB2 NUMEPROM
=$CDCC
TEXTE
=$CDE0 TBL_CE00
=$CE00
TBL_CF00 =$CF00
? RETOUR
=$FA62
BELL
=$FBDD
ECRAN =$FBFD
VTAB
=$FC22
CLREOP
=$FC42
HOME
=$FC58
CR =$FC62
LF
=$FC66 ? CLREOL
=$FC9C
WAIT
=$FCA8
CLAVIER =$FD0C
PRBYTE
=$FDDA
COUT1
=$FDF0
IOREST =$FF3F ?
IOSAVE =$FF4A