Les circuits d'entrée/sortie de l'émulateur Thom
1. Le 6846 système
Description fonctionnelle
Le port 8 bits du 6846, appelé port C, a par initialisation six
lignes P0, P2, P4, P3, P5, P6 configurées en sortie et deux autres
P1, P7 en entrée.
Le timer sert en fonctionnement normal, par des
demandes d'interruptions successives toutes les 100 ms, à
commander le clignotement du curseur. Sa fonction de codage des informations numériques pour le LEP via la sortie CT0 n'est pas émulée, mais remplacée par une routine haut-niveau.
Adresses et fonctions des registres internes
| Adresse | Registre | Fonction |
| E7C0 | CSR | Registre d'état composite |
| E7C1 | CRC | Registre de commande |
| E7C2 | DDRC | Registre de direction de données |
| E7C3 | PRC | Registre de données (port C) |
| E7C4 | CSR | Registre d'état composite |
| E7C5 | TCR | Registre de commande du temporisateur |
| E7C6 | TMSB | Registre d'octet de poids fort du temporisateur |
| E7C7 | TLSB | Registre d'octet de poids faible du temporisateur |
CSR (lecture seule)
- bit 0: irq temporisateur
- bit 1: irq CP1
- bit 7: irq composite du 6846
CRC
- bit 0 (S): validation irq CP1 (0 masquée/ 1 non masquée)
- bit 1 (S): mode de déclenchement CP1 (0 descente/ 1 montée)
- bit 3 (S): CP2 - sortie son 1-bit
- bit 4 (S): état CP2
- bit 5 (S): direction CP2 (0 entrée/ 1 sortie)
- bit 7 (E): CP1 - libre
PRC
- bit 0 (S): sélection de la page VRAM (Point/Couleur)
- bit 1 (E): INTERLP (enfoncement crayon optique)
- bit 2 (S): demi-teinte du pourtour de l'écran (0 pastel/ 1 saturé)
- bit 3 (S): led MIN clavier
- bit 4-6 (S): couleur du pourtour de l'écran
- bit 7 (E): lecture LEP (magnétophone)
TCR (écriture seule)
- bit 0: état temporisateur (0 désactivé/ 1 activé)
- bit 2: pré-compteur de diviseur par 8 (0 désactivé/ 1 activé)
- bit 3-5: mode de fonctionnement
- bit 6: validation irq temporisateur (0 masquée/ 1 non masquée)
2. Le PIA 6821 système
Description fonctionnelle
Le 6821 système assure la communication avec des modules internes de l'unité centrale (carte mémoire et clavier).
Adresses et fonctions des registres internes
| Adresse | Registre | Fonction |
| E7C8 | DDRA PDRA | Registre de direction de données du port A
Registre de données du port A |
| E7C9 | DDRB PDRB | Registre de direction de données du port B
Registre de données du port B |
| E7CA | CRA | Registre de commande du port A |
| E7CB | CRB | Registre de commande du port B |
PDRA
- bit 0-7 (E): lecture de la matrice clavier
PDRB
- bit 0-2 (S): adressage de la matrice clavier
- bit 3-7 (S): sélection de la banque RAM (plage A000-DFFF)
CRA
- bit 2 (S): sélection du registre (0 DDRA/ 1 PDRA)
- bit 3 (S): CA2 - commande du moteur LEP (active à 0)
- bit 4 (S): état CA2
- bit 5 (S): direction CA2 (0 entrée/ 1 sortie)
- bit 7 (E): CA1 - signal INITRAME
CRB
- bit 2 (S): sélection du registre (0 DDRB/ 1 PDRB)
- bit 7 (E): CB1 - commande d'incrustation (0 incrusté/ 1 normal)
3. Le PIA 6821 musique et jeux
Description fonctionnelle
Le 6821 musique et jeux assure la communication avec les ports manettes et la sortie sonore 6-bit (convertisseur numérique/analogique).
Pour Thom, les signaux de commandes du PIA ne sont pas reliés à l'IRQ du MC6809.
Adresses et fonctions des registres internes
| Adresse | Registre | Fonction |
| E7CC | DDRA PDRA | Registre de direction de données du port A
Registre de données du port A |
| E7CD | DDRB PDRB | Registre de direction de données du port B
Registre de données du port B |
| E7CE | CRA | Registre de commande du port A |
| E7CF | CRB | Registre de commande du port B |
PDRA
- bit 0-3 (E): direction de la manette 0 (D,G,B,H - 1 au repos)
- bit 4-7 (E): direction de la manette 1 (D,G,B,H - 1 au repos)
PDRB
- bit 0-5 (S): convertisseur sonore numérique -> analogique 6-bit
- bit 6 (E): action de la manette 0 (1 au repos)
- bit 7 (E): action de la manette 1 (1 au repos)
CRA
- bit 2 (S): sélection du registre (0 DDRA/ 1 PDRA)
- bit 7 (E): CA1 - action de la manette 0
CRB
- bit 2 (S): sélection du registre (0 DDRB/ 1 PDRB)
- bit 7 (E): CB1 - action de la manette 1
4. Le circuit Logic Gate Array
Description fonctionnelle
Il assure la gestion des signaux vidéo et le fonctionnement du crayon optique (fonction non émulée par Thom, remplacée par une routine haut-niveau de gestion du crayon optique).
Adresses et fonctions des registres internes
| E7E4 | Crayon opt. 1 (lect.) | Compteur trame |
| E7E5 | Crayon opt. 2 (lect.) | Compteur ligne |
| E7E6 | Crayon opt. 3 (lect.) | Localisation du spot écran |
| E7E7 | Crayon opt. 4 (lect.) | Localisation du spot écran |
Crayon optique 3
- bit 6: situation fenêtre-cadre en ligne INILN (0 spot dans le cadre/ 1 spot dans la fenêtre horiz.)
Crayon optique 4
- bit 7: situation fenêtre-cadre en trame INITN (0 spot dans le cadre/ 1 spot dans la fenêtre vert.)
Copyright 1999 Eric Botcazou
Last modified: Friday, July 14, 2000