Micral P2

Infos techniques sur le Bull Micral P2

Pour l’historique des travaux effectués sur cette machine, consultez les articles de blog associés en cliquant sur les tags ci-dessus.

Les photos pleine résolution et les images ROM sont également disponibles dans la catégorie Téléchargements.

Bull Micral P2

Caractéristiques techniques

Spécifications :

  • CPU Z80 à 5 MHz
  • 64 Ko de RAM
  • 2 lecteurs de disquettes double densité 80 pistes
  • Modem interne
  • Capacités probables de terminal télétexte

Ports :

  • Cordon téléphonique avec prise téléphonique française en T
  • Sortie vidéo Péritel (SCART français), peut-être RGB ?
  • Sortie vidéo composite, connecteur SMB
  • Port série / V24 DB25
  • Port imprimante, 36 broches
  • Port cassette, DIN5

Deux fusibles de 1,6 A sont présents à l’arrière.

Carte mère

Référence de la carte mère : R2E 371625 BB1

Carte mère

Circuits intégrés :

Marquage Fabricant Référence Rôle
U41 SGS Z8400BB1 CPU Z80 B (jusqu’à 6 MHz)
U42 SMC FD1797 Contrôleur de disquettes
U6 Philips SAA5070 Multifonction
U9 SMC KR3600-017 Contrôleur clavier
U12 Philips SAA5120 Incertain, lié au vidéotexte
U34 Philips SAA5150 Incertain, lié au vidéotexte
U62 Signetics SCN2661A UART
U52 SMC FDC9229BT Interface disquette
U24-27, U36-39 Mitsubishi M5K4164P-15 DRAM 64k x 1
U21, U32 INMOS IMS1420P55 SRAM 4k x 4, pour la vidéo
U13 National Semi DM74S472AN « 9112610 », PROM 4k, adressage ?
U22 Signetics N82S147AN « 9112710 », PROM 4k, adressage ?
U29 NEC D2716D ROM de démarrage 2K x 8
U30 NEC D2716D ROM clavier 2K x 8

Composants notables :

  • QZ1 : quartz 4,9152 MHz
  • QZ2 : quartz 16 MHz
  • QZ3 : quartz 24 MHz
  • K1 : petit relais 12 V
  • 2 buffers RS-232 75189 sont présents, mais un seul 75188

Remarque : U29 est monté sur un support 28 broches, qui pourrait accepter des ROM 2764.

Connecteurs :

Marquage Type Broches Rôle
J1 N/A 2 × 32 Non peuplé, rôle inconnu
J2 HE10 26 Interface clavier
J3 HE10 10 Sortie vidéo, Péritel
J4 SMB 2 (coax) Sortie vidéo composite
J5 HE10 36 Imprimante
J6 SUB-D 25 Port série/V24, connecteur femelle
J7 HE10 34 Disquette
J8 HE10 5 Cassette, relié à une prise DIN-5
J9 SMB 2 (coax) Vidéo vers moniteur
J10 3.96 ? 7 détrompé Alimentation avec détrompeur
J11 HE10 20 Modem
J12 HE10 5 Inconnu, peut-être port série

Une douzaine de cavaliers sont également présents.

Moniteur (ROM)

Le moniteur initialise le matériel, exécute quelques tests puis affiche une invite de commande.

Si l’autotest réussit, il affichera AUTO-TEST : OK. Sinon, il affichera AUTO-TEST : suivi de codes d’erreur :

  • 0 : RAM vidéo
  • 1 : RAM principale
  • 2 : FDC
  • 3 : Controleur série
  • 4 : Timer

Commandes disponibles :

  • CR : démarrage par défaut (lecteur 0)
  • B<lecteur>,<secteur> : démarrage depuis lecteur,secteur
  • * : terminal local, affiche les caractères saisis. Appuyer sur ESC pour quitter
  • G<adresse> : exécuter à l’adresse (hexadécimale)
  • M : sous-menu mémoire
    • D<début>,<fin> : dump hexadécimal d’une plage mémoire (16 octets/ligne)
    • M<addr> : modification mémoire octet par octet (. pour quitter)
    • I<port> : lire et afficher la valeur d’un port d’E/S
    • O<port>,<valeur> : écrire un octet sur un port d’E/S
    • G<addr> : exécuter à l’adresse
    • R : retour à l’invite principale

Contrairement aux autres machines de l’époque, il y a un chargeur spécial dans le moniteur, qui lit des blocs de données depuis le disque et interprète leur contenu. Il vérifie en premier le premier secteur pour y lire des réglages, puis lit la suite en tant que blocs contenant des commandes.

Le format des blocs est : [taille][commande][addresse_haute][addresse_basse][zero][contenu...]. Types de blocs :

  • 0xC2: données. Copy les données à l’adresse indiquée
  • 0xC6: copie du code “trampoline” en RAM, l’exécute et désactive la ROM
  • 0xD2: erreur, arrête le chargement
  • Tout autre valeur entre 0xC1 et 0xDB est considérée valide mais le bloc est ignoré

Notes :

  • Toutes les commandes doivent être saisies en majuscules. Les caractères minuscules ne fonctionnent pas.
  • Les commandes proviennent d’un désassemblage automatisé, elles sont à confirmer.

Le désassemblage est disponible ici : https://github.com/fstark/micral-p2

Alimentation

Alimentation

Fabriquée by HiTRON, modèle HSC55-044. Il s’agit probablement d’une commande spéciale pour Bull, vu le numéro de série de #0084.

Elle fonctionne bien mais 2 condensateurs de filtrage (fabriqués par RIFA) ont explosé il y a longtemps. L’odeur persiste encore… L’arrière du radiateur est graissé, mais ne touche rien dans le chassis, si ce n’est mes doigts lors du désassemblage.

Tensions de sortie :

  • 12V 3A
  • 5V 5A
  • -12V 0.2A

Fusibles :

  • F1: 250V 2A rapide, 30mm de long

Condensateurs de filtrage:

Marquage Marque Référence Valeur Classe Longueur Largeur Ecart pattes
C1 RIFA PME271M610 0.1 µF X2 24mm 5mm 20mm
C2 RIFA PME271M510 0.01µF X2 18mm 5mm 15mm
C16 RIFA PME271M510 0.01µF X2 18mm 7.5mm 15mm

Remplacements : 2 * 103MKP275KE, 1 * B32933A3104K000

Floppy Drives

Circuit du lecteur disquette

Les deux lecteurs disquettes sont fabriqués par Toshiba, avec la référence MKM0262E002. Ils sont similaires aux modèles FDD5401, mais sont probablement une commande spéciale pour Bull. J’ai vu des lecteurs similaires dans des Bull Micral 30, sortis quelques années plus tard.

Caractéristiques :

  • 80 pistes
  • 2 têtes
  • 300 RPM
  • 96 TPI

CP/M

Le P2 utilise CP/M 2.2.

Un désassemblage partiel (en anglais) du BIOS est disponible ici : https://github.com/Altomare/micral-p2-cpm

Géométrie du disque :

  • 2 faces
  • 80 pistes par face
  • 16 secteurs par piste
  • 256 octets par secteur
  • Encodage MFM
  • 3 pistes réservées pour CP/M
  • Taille de bloc = 2048
  • Entrées maximum dans le répertoire = 128
  • Entrelaçage physique = 1
    • Un secteur entre chaque secteur consécutif sur le disque : 1, 9, 2, 10, 3…
  • Pas de table de traduction de secteur pour le BDOS
  • Sens de remplissage du disque : CHS

À faire

  • Poids
  • Dimensions
  • Modem, clavier
  • Carte mère
    • Documenter les cavaliers
    • Brochages connecteurs
    • Dump les 2 BPROM
  • Vidéo
    • Taille et caractéristiques de l’affichage (colonnes, lignes)
    • Existe-t-il un mode bitmap ?
  • Disquette
    • Dump + mettre en ligne la disquette CP/M
    • Documenter les attributs du disque (encodage, secteurs, gap3, …)