source: thomson/docs/TO8HARD.HTM@ a8929a8

main
Last change on this file since a8929a8 was a8929a8, checked in by Adrien Destugues <pulkomandy@…>, 8 years ago

Add documentation repository.

git-svn-id: svn://localhost/thomson@69 85ae3b6b-dc8f-4344-a89d-598714f2e4e5

  • Property mode set to 100644
File size: 7.6 KB
Line 
1<HTML>
2<HEAD>
3 <TITLE>La page du hardware TO8</TITLE>
4</HEAD>
5<BODY>
6<H2>
7 Informations sur l'architecture interne du TO8
8</H2>
9<P>
10Ces informations proviennent de diverses sources, en premier lieu la revue
11sp&eacute;cialis&eacute;e Thomson TEO<I>phile</I> (disparue vers la fin des
12ann&eacute;es 80). Ensuite le d&eacute;sassemblage de la ROM du TO8.<BR>
13Les derni&egrave;res informations m'ont &eacute;t&eacute; apport&eacute;es
14par Alexandre Pukal<BR>
15(E7E6 - BORDER - DISK)
16<H2>
17 I - Organisation de la m&eacute;moire
18</H2>
19<P>
20<H3>
21 I.1 Carte m&eacute;moire (espace d'adressage du 6809)
22</H3>
23<P>
24<TABLE BORDER CELLPADDING="2">
25 <TR>
26 <TD>Debut</TD>
27 <TD>Fin</TD>
28 <TD>Taille</TD>
29 <TD>Description</TD>
30 </TR>
31 <TR>
32 <TD>0000</TD>
33 <TD>3FFF</TD>
34 <TD>16ko</TD>
35 <TD>ROM1</TD>
36 </TR>
37 <TR>
38 <TD>4000</TD>
39 <TD>5FFF</TD>
40 <TD>8ko</TD>
41 <TD>VRAM (video RAM)</TD>
42 </TR>
43 <TR>
44 <TD>6000</TD>
45 <TD>9FFF</TD>
46 <TD>16ko</TD>
47 <TD>RAM1 (Fixe)</TD>
48 </TR>
49 <TR>
50 <TD>A000</TD>
51 <TD>DFFF</TD>
52 <TD>16ko</TD>
53 <TD>RAM2 (fen&ecirc;tre de RAM pagin&eacute;e)</TD>
54 </TR>
55 <TR>
56 <TD>E000</TD>
57 <TD>FFFF</TD>
58 <TD>8ko</TD>
59 <TD>ROM2 (Moniteur)</TD>
60 </TR>
61 <TR>
62 <TD>E000</TD>
63 <TD>E7FF</TD>
64 <TD>-</TD>
65 <TD>acc&egrave;s aux p&eacute;riph&eacute;riques</TD>
66 </TR>
67</TABLE>
68<P>
69<H3>
70 I.2 Organisation des banques :
71</H3>
72<P>
73<P>
74ROM1 est compos&eacute; de 4 banques de 16ko
75<UL>
76 <LI>
77 Banque 0 : Basic 512 Part I
78 <LI>
79 Banque 1 : Basic 512 Part II
80 <LI>
81 Banque 2 : Basic 1.0
82 <LI>
83 Banque 3 : Exploitation de fichiers
84</UL>
85On peut également mapper à cette addresse, une des 16 ou 32 pages de RAM.
86<P>
87VRAM est compos&eacute; de 2 banques de 8ko (appel&eacute;e forme et couleur
88pour des raisons historiques)
89<P>
90RAM1 n'a pas de banques
91<P>
92RAM2 est compos&eacute; de 16 (TO8 de 256ko) &agrave; 32 banques (TO8 de
93512ko) de 16ko, les pages 0 et 1 étant la VRAM et RAM1.
94<P>
95ROM2 est compos&eacute; de 2 banques de 8ko partiellement accessibles (la
96fen&ecirc;tre d'acc&egrave;s aux p&eacute;riph&eacute;riques)
97<P>
98<H3>
99 I.3 Commutation des banques de RAM2:
100</H3>
101<P>
102<P>
103Il existe 2 modes de commutation (pour conserver la compatibilit&eacute;
104TO7/70 et TO9).Le bit 4 du registre $E7E7 d&eacute;termine le mode (1 mode
105registre /0 mode PIA)
106<P>
107<P>
108<B>Mode registre (mode normal)</B>
109<P>
110Elle se fait par &eacute;criture dans le registre (8bits) $E7E5. La premiere
111page porte le num&eacute;ro 2.
112<P>
113<B>Mode PIA (mode compatible TO7/70 et TO9)</B>
114<P>
115Seules 6 banques sont accessibles dans ce mode. Les bits 3 &agrave; 7 du
116registre de direction du port B (DDRB) effectuent cette commutation.
117<P>
118exemple : (Le numero de la banque est dans le registre A)
119<PRE>RCOM EQU $E7CB registre commande<BR>RDIR EQU $E7C9 registre
120direction<BR>TABANK FCB $0f,$17,$e7,$67,$a7,$27
121COMMUT PSHS D,X<BR> LDB RCOM<BR> ANDB #$FB<BR> STB RCOM<BR> LDX #TABANK<BR> LDA A,X<BR> STA RDIR<BR> ORB #$04<BR> STB RCOM<BR> PULS D,X<BR> RTS
122</PRE>
123<P>
124<P>
125Rem : Les num&eacute;ros des banques ne se correspondant pas dans les 2 modes.
126<P>
127<H3>
128 I.4 Commutation des banques de ROM2:
129</H3>
130<P>
131<P>
132Cette commutation passe par le 6846 syst&egrave;me. Le bit 4 du PRC situ&eacute;
133en E7C3 selectionne la banque de ROM moniteur (2pages).
134<P>
135<H3>
136 I.5 Commutation des banques de ROM1:
137</H3>
138<P>
139<P>
140Le m&eacute;canisme principal consiste &agrave; tenter d'&eacute;crire dans
141la ROM. Une &eacute;criture &agrave; l'adresse 0000 commute la banque 0,
142une &eacute;criture &agrave; l'adresse 0001 commute la banque 1, etc...
143<P>
144De plus, le bit 2 du PRC situ&eacute; en E7C3 effectue la selection entre
145la cartouche et la ROM interne
146<P>
147Enfin le registre E7E6 du Gate Mode Page permet de venir mapper une banque
148de RAM dans cet emplacement
149<H3>
150 I.6 Selection des pages de VRAM
151</H3>
152<P>
153<P>
154La s&eacute;lection se fait par le bit 0 du PIA syst&egrave;me situ&eacute;
155en E7C3
156<UL>
157 <LI>
158 1 -&gt; forme
159 <LI>
160 0 -&gt; couleur
161</UL>
162<P>
163Le mode d'affichage se selectionne par une &eacute;criture dans le Gate Array
164&agrave; l'adresse E7DC
165<UL>
166 <LI>
167 5A - Mode compatible (40 colonnes)
168 <LI>
169 5B - Mode 80 colonnes
170 <LI>
171 59 - Mode Bitmap 4
172 <LI>
173 5941 - Mode Bitmap 4 sp&eacute;cial
174 <LI>
175 48 - Mode Page1 / 49 - Mode Page 2
176 <LI>
177 4A - 4B - Mode Overlay
178 <LI>
179 5E - Mode Bitmap 16
180 <LI>
181 88-89-8A-8B - Mode Triple Overlay
182</UL>
183<P>
184 <HR>
185<H2>
186 II Les Ports du TO8
187</H2>
188<P>
189<H3>
190 II.1 6846 syst&egrave;me
191</H3>
192<P>
193E7C1 - CRC<BR>
194E7C3 - PRC
195<P>
196CRC:
197<UL>
198 <LI>
199 bit2 : Sortie Son 1bit
200 <LI>
201 CP1 : request clavier
202 <LI>
203 CP2 : Mute son pour souris
204</UL>
205<P>
206PRC:
207<UL>
208 <LI>
209 bit0(E/S) : Selection page VRAM (Forme/Fond)
210 <LI>
211 bit2(Sortie) : S&eacute;lection Cartouche/Basic
212 <LI>
213 bit3(Entr&eacute;e) : Reflet LED clavier
214 <LI>
215 bit4(Sortie) : S&eacute;lection banque ROM moniteur
216 <LI>
217 bit5(Entr&eacute;e) : Ack liaison clavier
218 <LI>
219 bit6(Entr&eacute;e) : Busy imprimante
220</UL>
221<P>
222<H3>
223 II.2 PIA syst&egrave;me 6821
224</H3>
225<P>
226<P>
227E7C8 - PORTA ou DDRA<BR>
228E7C9 - PORTB ou DDRB<BR>
229E7CA - CRA<BR>
230E7CB - CRB
231<P>
232PORTA:
233<UL>
234 <LI>
235 bit0 : Keytest
236 <LI>
237 bit1-7 : D1 &agrave; D7 de l'imprimante
238</UL>
239<P>
240PORT B:
241<UL>
242 <LI>
243 bit0 : D0 de l'imprimante
244 <LI>
245 bit1 : strobe de l'imprimante
246 <LI>
247 bit2 : commande d'incrustation
248</UL>
249<P>
250DDRB:
251<UL>
252 <LI>
253 bit3-7 : S&eacute;lection banque RAM (mode compatible TO7/70 et TO9)
254</UL>
255<P>
256CRB:
257<UL>
258 <LI>
259 CB1 : signal code barre
260</UL>
261<P>
262<H3>
263 II.3 PIA interface manette
264</H3>
265<P>
266<P>
267E7CC - PORTA ou DDRA<BR>
268E7CD - PORTB ou DDRB<BR>
269E7CE - CRA<BR>
270E7CF - CRB
271<P>
272PORTA:
273<UL>
274 <LI>
275 bit0-3 : Direction Joy0 D,G,B,H (1 au repos)
276 <LI>
277 bit4-7 : Direction Joy1
278</UL>
279<P>
280PORTB:
281<UL>
282 <LI>
283 bit0-5 : Convertisseur num&eacute;rique -&gt; analogique (son)
284 <LI>
285 bit6 : Fire Joy0 (1au repos)
286 <LI>
287 bit7 : Fire Joy1
288</UL>
289<P>
290CRA:
291<UL>
292 <LI>
293 CRA1 est reli&eacute; au Fire Joy0
294 <LI>
295 CRA2 est reli&eacute; au Fire Joy1
296</UL>
297<P>
298<H3>
299 II.4 Les circuits "Gate Array"
300</H3>
301<P>
302<P>
303E7E5 - GE7E5<BR>
304E7E6 - GE7E6 <BR>
305E7E7 - GE7E7
306<P>
307GE7E5:
308<UL>
309 <LI>
310 bit0-4: s&eacute;lection banque ram
311</UL>
312<P>
313GE7E6:
314<UL>
315 <LI>
316 bit 4,3,2,1,0 : num&eacute;ro de page RAM utilis&eacute;e dans l'espace cartouche
317 ( de 0 a 31 )
318 <LI>
319 bit 5 : bit de s&eacute;lection de l'espace cartouche<BR>
320 0 l'espace cartouche n'est pas recouvert par de la RAM<BR>
321 1 l'espace cartouche est recouvert par de la RAM dont le num&eacute;ro est
322 donn&eacute; par les bits 4 &agrave; 0
323 <LI>
324 bit 6 : bit de protection en &eacute;criture dans la page RAM
325 s&eacute;lectionn&eacute;e lorsque l'espace cartouche est recouvert pas cette
326 m&ecirc;me page de RAM. ( bit 5 = 1 ). C'est ce qui permet de passer les
327 cartouches MEMO7 en disquettes et de les lancer avec l'option 4 du menu du
328 TO8.<BR>
329 0 &eacute;criture impossible<BR>
330 1 &eacute;criture autoris&eacute;e
331 <LI>
332 bit 7 toujours &agrave; 0
333</UL>
334<P>
335GE7E7:
336<UL>
337 <LI>
338 bit4 : Selection mode commutation RAM (0 Mode PIA/1 Mode registre)
339 <LI>
340 bit5 : Selection 50/60Hz
341 <LI>
342 bit7 : Synchro Trame
343</UL>
344<P>
345<P>
346E7DA - P_WRITE<BR>
347E7DB - P_INDEX<BR>
348E7DC - G_MODE<BR>
349E7DD - BORDER
350<P>
351P_INDEX : registre d'index de modification de palette (0-31)
352<P>
353P_WRITE : registre d'&eacute;criture dans la palette
354<P>
355G_MODE : Mode graphique
356<P>
357BORDER :
358<UL>
359 <LI>
360 bit0 &agrave; 3: couleur &agrave; utiliser pour le pourtour de l'&eacute;cran
361 <LI>
362 bit7 et bit6 : Page de Ram utilis&eacute;e pour l' affichage<BR>
363 00 - systeme normal type TO7<BR>
364 01 - RAM1 <BR>
365 10 - Bank 1<BR>
366 11 - Bank 2
367</UL>
368<P>
369</BODY></HTML>
Note: See TracBrowser for help on using the repository browser.