Bonsoir.
Encore une mise à jour de ce WIP.
Maintenant que la partie "shifter" est opérationnelle, je m'attaque à la partie audio du PCB.
Pour ce jeu, l'audio est relativement pauvre :
En fait, il n'existe que 2 sons différents "tir" et "joueur touché", et ce pour chacun des 2 joueurs.
Les sons sont démarrés depuis la partie CPU, mais tout est fait en électronique analogique ensuite dans la partie "Sound Generator".
Plus tard, les concepteurs de PCB utiliseront des puces spécifiques "PSG" Programmable Sound Generator, qui produisent ces sons si spécifiques (et que j'adore).
Mais on n'en est pas encore là...
Déjà, je complète mon banc de test pour alimenter les 2 amplis audio, et brancher 2 hauts-parleurs :
J'alimente les amplis audio en 12V, au lieu de 16,5V d'après les schémas Midway.
J'ai regardé le datasheet des amplis, et ils acceptent du 12V.
Ensuite, je modifie la Spectro-ROM de test pour lui faire jouer en boucle les 4 sons possibles.
Je ne connais pas le port utilisé pour commander les sons.
Certes je pourrais regarder le driver Mame, mais le schéma électronique me donne l'info :
Il faut que le signal mauve soit actif (entrée CLOCK du latch 74175 en F6).
Ce signal mauve est la sortie d'une porte AND.
Il faut donc que le signal vert AND le signal rouge soient actifs.
Le signal vert s'active quand on écrit sur un port (peu importe lequel).
Le signal rouge correspond au bit d'adresse A8 du CPU.
En conclusion, il suffit d'écrire sur n'importe quel port impair. Le port 0x01 fera l'affaire.
Maintenant, quelles valeurs écrire ?
Il faut regarder comment est pilotée la partie analogique, et de progresser en marche arrière :
Si je veux le son "L. SHOT", je dois avoir la sortie #1 (pin #2) du 7442 en G6 active (signal rouge).
Pour que cette sortie #1 soit active, je dois avoir en entrée du 7442 A=1 B=0 C=0 D=0 (signaux verts).
Ces signaux verts sont issus des sorties
complémentées du latch 74175 en F6 (signaux magenta).
Je dois donc présenter en entrée du latch D4=0 D5=1 D6=1 D7=1.
En résumé, je dois compter de 1 à 4 sur le nibble de poids fort, et envoyer dans le port 0x01 le complément.
Voilà ce que ça donne en assembleur :
Je commence avec 0x10 pour le 1er son.
Je fais un XOR avec la constante 0xFF pour avoir le complément.
La valeur est écrite dans le port 0x01 => le son doit être joué.
J'écris 0xFF dans le port 0x01 => le son s'arrête ?
Je continue ainsi avec les autres valeurs.
Arrivé à 0x50, c'est la fin de la boucle.
Il est temps de tester...
Je me rends compte que tout ce qui concerne le joueur "LEFT" fonctionne très bien.
Par contre, je n'ai absolument aucun son pour le joueur "RIGHT".
C'est une situation qui me facilite la vie.
Les circuits "LEFT" et "RIGHT" sont totalement identiques.
Je peux donc comparer à l'oscillo "LEFT" et "RIGHT" un peu partout et tenter de trouver là où ça coince.
Finalement, je ne trouve pas grandes différences à part quelques pouillèmes assez peu significatifs.
Je décide de changer les aiguillages, et d'échanger les signaux LEFT / RIGHT un peu avant les amplis audio :
Maintenant, j'entends le son correct dans le haut-parleur "LEFT" quand on commande les sons "RIGHT".
J'en conclus que toute la partie analogique LEFT et RIGHT est OK jusqu'à ce point.
J'avance encore un peu plus le point de permutation, cette fois exactement au niveau des inputs des amplis audio :
Toujours le même résultat.
L'ampli audio "RIGHT" semble donc en panne.
Je démonte le dissipateur thermique qui est vissé sur les 2 amplis audios :
Vu qu'ils sont sur support, j'en profite pour les permuter.
C'est confirmé, maintenant j'ai la partie "RIGHT" qui fonctionne, mais plus la partie "LEFT".
L'ampli HS est un TAA-621.
Il se trouve, par je ne sais quel hasard improbable, que j'ai ça en stock...
Je n'ai que 4 références de composants TAA<kekchose>, et le TAA621 en fait partie :
Ouch, il y a un problème, les dissipateurs intégrés à la puce n'ont pas la même forme :
Un coup d’œil sur le datasheet et je comprends :
Midway utilise un TAA621
A11 (à gauche), tandis que j'ai dans mon stock un TAA621
AX1 (à droite).
D'ailleurs, si on regarde de près le schéma Midway, c'est bien précisé :
Il est indiqué aussi "LM354", mais je n'ai pas réussi à trouver le datasheet de celui-là...
Pour le moment, j'installe mon TAA621 bossu à la place de son collègue kaput :
C'est bon, tout fonctionne.
J'ai les sons corrects à la fois pour LEFT et pour RIGHT.
C'était bien l'ampli audio qui était mort, et en plus mon composant est OK.
Reste à trouver un TAA621
A11...
Je vais faire un tour sur ibé...
Bon ben voilà : 3,00 € le composant + 1,08 € de frais de port.
Y'a rien à dire, c'est plus qu'honnête !
Hop ! J'ai commandé les trois disponibles. Comme ça j'aurai un peu de stock.
À suivre : changement de l'ampli audio, test du jeu complet avec les ROM d'origine