Gamoover

[move]Vous aimez la série Ricky la belle vie, Julio Iglésias ou l'émission Kohlanta ? Alors soyez les bienvenus sur Gamoover ! [/move]

[WIP] space invaders 1978

Démarré par jpettit, Mercredi 12 Avril 2017, 11:55:30 AM

f4brice

L'alim d'origine générait le signal RESET pour le PCB.
Qu'est-il advenu de ce signal avec la nouvelle alim ?

Little_Rabbit

Re,

Je réponds pour jpettit ;)  : l'alim qu'il a acheté est la suivante :



Comme on le voit, c'est une alim arcade classique, mais à laquelle un petit module a été ajouté pour la rendre compatible avec les PCB Bally Midway de la génération de Space Invaders. Outre le connecteur adéquat, ce module est très certainement là pour générer le signal RESET attendu :).

A+
Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer => Trois fois rien quoi ! :D
Ma séance sur le divan : c'est grave Docteur ? :-\
Ma gaming room, ma storage room

jpettit

Citation de: Little_Rabbit le Mercredi 03 Mai 2017, 22:42:23 PM
Salut,

La suite va s'avérer un peu plus complexe je pense ;).

As-tu accès à un oscilloscope ou un analyseur logique ? As-tu la possibilité de programmer des EPROMS 2716 ?

Je t'encourage à lire le WIP de Spectroman qui partait d'une image similaire à la tienne. Son post est très détaillé : il pointe aussi vers le WIP de F4brice qui peut te fournir des pistes supplémentaires d'investigation. Le WIP de Spectro utilise notamment une ROM de test de Space Invaders qui permet de diagnostiquer en quelque sorte le PCB (c'est la raison pour laquelle je te demande si tu sais/peux programmer une EPROM 2716). Et Spectro a du reste amélioré cette ROM de test pour en faire une version plus complète (qui vérifie le CRC des ROMs je crois me souvenir), et qui est réellement adaptée au hard des PCB Midway (la ROM originale était prévue pour les PCB Taito).

[edit : voici le lien vers la page où tu peux télécharger la ROM de test améliorée de Spectro ! :) Si jamais tu n'as pas accès à un programmateur d'EPROM, l'un d'entre nous peut t'en programmer une ;) - note que le remplacement des ROMs par des EPROMs 2716 requiert le changement du "mapping" des broches des support de ROM/EPROM en changeant des connexions au niveau des "zones" S2, S3 et S5 du PCB).]

Mais ces deux posts sont assez techniques : si tu n'as aucune connaissance en électronique orientée logique TTL et micro-processeur, ta quête va être difficile... :)

Les signaux à vérifier pour commencer sont le RESET, HALT, l'horloge CPU, etc. => c'est à dire les principaux signaux du bus de contrôle du CPU 8080. Mais pour cela il te faut un oscillo ou un analyseur logique !

A+

Merci pour ces explications

Pour l'oscilo et le programmateur d'EPROM, peut-etre que je peux en avoir, j'attends un feedback
Pour mes connaissances en electronique, j'ai fait ca dans ma jeunesse lol
Bon c'était y a 20 ans, et aujourd'hui mon plus gros soucis est que je suis pauvre me matos electronique. Il ne me reste plus qu'un fer à souder :p
Le seul truc qui me dérange, c'est quand il faut dessouder car les pistes m'ont l'air assez fragiles.
Mais bon, faut c'qu'il faut donc on va pas s'arrêter là  p=)

Le WIP de Spectroman est très instructif, bravo !

Donc, si je comprends bien, dans l'hypothèse ou j'ai une 2716 programmé avec le prog de diagnostic :
- je retire les PROMS e,f,g et h
- je fais les 3 straps pour pouvoir utiliser des 2716 (comme indiqué sur le site seawolf que tu as indiqué)
- je mets la 2716 sur le h
- je croise les doigts et j'allume

Question subsidiaire : comment "suivre" le RESET le long du circuit (comme indiqué dans le WIP) ? a l'oscillo ?

Merci



Little_Rabbit

Salut,

Nickel si on peut te prêter un oscillo ! ^-

T'inquiète, je suis dans la même situation que toi, à ceci près que moi l'électronique ce n'était pas il y a 20 ans mais plutôt 30 ! :D Mais c'est comme le vélo, ça ne s'oublie pas ! ;)

Oui, c'est tout à fait ça en ce qui concerne les étapes que tu énumères pour utiliser la ROM de test (et je vais essayer de le faire en même temps que toi car j'en suis à peu près au même stade sur mon PCB de Space Invaders ;)).

Pour le RESET, oui c'est en utilisant un oscillo que tu pourras voir le niveau du signal au fil de sa propagation sur le schéma. Si je ne dis pas de bêtise, contrairement à la majorité des RESET sur d'autres CPU 8 bits où le RESET est actif au niveau bas, sur le 8080 il est actif au niveau haut ! Donc ce signal doit passer à environ 4,5 V une fraction de seconde lors de la mise sous tension, et le reste du temps (si le watchdog ne se manifeste pas), il doit être à environ 0,5 V.

A+
Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer => Trois fois rien quoi ! :D
Ma séance sur le divan : c'est grave Docteur ? :-\
Ma gaming room, ma storage room

jpettit

OK, et dans l'hypothèse ou le prog de diagnostic me trouve le composant en panne, je suppose que je dois retirer les straps et remplacer le composant défectueux par le bon ?
Ou bien je remplace toutes les PROMs par des 2716 et je laisse les straps ?
(si jamais le probleme vient des 4 prom d'origine)



Little_Rabbit

Comme je n'ai pas encore moi-même utilisé cette ROM de test, je ne sais pas précisément ce qu'elle fait. Mais de ce que j'en ai compris, elle permet :

- de voir en premier lieu si la carte démarre et est capable d'afficher quelque chose à l'écran
- de tester les RAM
- de tester les ports d'E/S
- de calculer le checksum des ROMs (merci Spectro !)
- de tester le registre à décalage responsable de l'affichage (merci Spectro !)
- de tester chacun des bruitages de la carte son (car les sons sur Space Invaders ne sont pas produits par un chip audio, mais sont obtenus par plusieurs petits modules analogiques, chacun responsable d'un son en particulier ! Pour l'anecdote, sur les PCB Taito, tu as même un potentiomètre individuel pour chaque module analogique qui te permet de régler le volume de chaque bruitage indépendamment :))
- d'afficher une mire écran pour régler la géométrie de son tube cathodique (merci Spectro !)

Mais ce programme de test ne te désignera pas tel ou tel composant TTL qui serait défectueux, il ne fait que vérifier le contenu des EPROMs en calculant leur checksum.

La configuration des straps est liée au type de composant mémoire (ROM/EPROM) que tu utilises sur la carte, pour remapper les broches dont l'emplacement diffère d'un type de composant à l'autre. Ce n'est pas lié au programme mis en place (test ou jeu). Donc si on part sur un fonctionnement avec des EPROMs, les straps ne bougeront pas, qu'il s'agisse de la ROM de test ou de celles du jeu.

Ce que j'avoue ne pas avoir compris, c'est comment le jeu peut être mis sur des EPROMs aux emplacements E, F et G, si le PCB boot en H pour exécuter la ROM de test... Je n'ai pas pris le temps de regarder le décodage mémoire de ces emplacements, et ne connait pas le 8080 (il boote en 0000H je crois non ?). Spectro, si tu passes par là, éclaire nous de tes lumières :).

A+
Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer => Trois fois rien quoi ! :D
Ma séance sur le divan : c'est grave Docteur ? :-\
Ma gaming room, ma storage room

f4brice

L'ordre d'identification des EPROM ne correspond pas à l'ordre dans lequel elles sont mappées sur le bus d'adresse du CPU.

jpettit

Concernant les straps à faire pour accueillir la 2716, a priori j'en ai qu'un seul sur les 3 (les 2 autres étant déjà là), mais aussi en supprimer un (le petit horizontal au milieu)) :

Ma PCB :




Exemple sur le site seawolf :


spectroman

Citation de: Little_Rabbit le Jeudi 04 Mai 2017, 15:00:28 PM
Ce que j'avoue ne pas avoir compris, c'est comment le jeu peut être mis sur des EPROMs aux emplacements E, F et G, si le PCB boot en H pour exécuter la ROM de test... Je n'ai pas pris le temps de regarder le décodage mémoire de ces emplacements, et ne connait pas le 8080 (il boote en 0000H je crois non ?).

Oui, c'est bien ça le 8080 exécute le code à l'adresse 0x0000 lors du reset.

Citation de: f4brice le Jeudi 04 Mai 2017, 15:38:19 PM
L'ordre d'identification des EPROM ne correspond pas à l'ordre dans lequel elles sont mappées sur le bus d'adresse du CPU.

c'est exact, les roms sont décodées à partir des signaux A11, A12 & A14

Adresse InstructionA14A12A11ROM sélectionnée
0x0000..0x07ff000ROM H
0x0800..0x0fff001ROM G
0x1000..0x17ff010ROM F
0x1800..0x1fff011ROM E
0x4000..0x47ff100ROM D
0x4800..0x4fff101ROM C
0x5000..0x57ff110ROM B
0x5800..0x5fff111ROM A


jpettit

c'est bon j'ai un oscillo  :D
On va pouvoir passer aux choses serieuses

Je suppose que la première étape est de voir si j'ai le RESET ?
Je pensais vérifier là :
http://www.andys-arcade.com/personal/tech/SIvolts/Mid/MidPOR.JPG
(http://www.andys-arcade.com/personal/tech/SIvolts/Midway.htm)


jpettit

Je viens de brancher l'oscillo comme ici :
http://www.andys-arcade.com/personal/tech/SIvolts/Mid/MidPOR.JPG

Puis j'ai allumé la borne (partie alim, pas l'ecran et le neon)
J'obtiens ceci :


Pas terrible... au lieu des 4.5V annoncés sur 10ms (http://www.andys-arcade.com/personal/tech/SIvolts/Midway.htm)
j'obtiens env 550 mv pendant 1s

Soit je me plante avec les echelles de l'oscillo, soit j'ai mon RESET sortie alim qui merdoit ?
Je pensais tester sur cette patte 6 le RESET en sortie de l'alim :
The 11 pin connector:
1- ?
2- Coin Switch (BW-W)
3- Coin Switch (BR-B)
4- C.Tap on xformer (Yel)
5- Coin Meter (G-W) Then to Pin 9 on Power Supply
6- "Reset" (Orn) Directly to Pin 6 on Power Supply
7- (Drawing said "Key") N/C
8- Speaker (G-B)
9- Speaker (R-Y)
10- "V. Audio Return" (Blu-y) Directly to Pin 4 on Power Supply
11- "V.Audio" (W-O) Directly to Pin 15 on Power Supply



Y a-t-il un meilleur endroit pour se connecter ? si possible facile d'accès également :)
Merci


spectroman

Sur la sonde il est inscrit une indication du type x1 X10 X100 voir x1000
Il faut que tu configure ton scope avec la meme valeur

Là, tu dois avoir un facteur 10 entre les 2


jpettit

Citation de: spectroman le Vendredi 05 Mai 2017, 06:28:50 AM
Sur la sonde il est inscrit une indication du type x1 X10 X100 voir x1000
Il faut que tu configure ton scope avec la meme valeur

Là, tu dois avoir un facteur 10 entre les 2



Exact ! Il y a un joli "X10" ecrit sur la base de sonde  ^-
On peut donc supposer que j'ai un RESET à 5.5V pendant 10ms ? ce qui serait correct ?

Bon si je commence avec ce genre d'erreur de mesures, c'est mal barré pour la suite ;D

jpettit

#77
D'après le schéma de câblage, si je veux suivre le RESET, la prochaine étape sera de l'observer sur la patte 10 du 7404 F3 (mais il serait inversé) pour m'assurer qu'il rentre correctement sur la patte 9 des CI D2 et E2



edit : je vois que le WIP de Spectroman est passé par là également, ce qui m'encourage bien :) Il va falloir que je le suive encore plus attentivement

question à Spectroman : quand tu dis dans ton WIP que tu fais le reset du 74161 avec un fil, tu veux dire que tu touches la patte 9 un petit coup, avec un fil relié à la masse ? Merci

spectroman

#78
Comme le 74161 en D2 était HS, je faisais un court-circuit entre la masse et sa pin 15 à l'aide d'un fil.

jpettit

Citation de: spectroman le Vendredi 05 Mai 2017, 17:13:53 PM
Comme le 74161 en D2 était HS, je faisais un court-circuit entre la masse et sa pin 15 à l'aide d'un fil.

Un court circuit permanent, ou bien juste le temps d'une impulsion ?