Auteur Sujet: [WIVSP] Space Invaders upright, Midway 1978  (Lu 6416 fois)

Hors ligne Arvester

  • VIP
  • *
  • Messages: 1513
  • Localisation: 76500 Elbeuf
    • Voir le profil
[WIVSP] Space Invaders upright, Midway 1978
« Réponse #80 le: Vendredi 27 Octobre 2017, 18:43:46 pm »
  • J'ai tout lu de bout en bout, c'est passionnant et impressionnant. Et ça me confirme que je suis un ignare en électronique  :D

    Hors ligne Fred G5

    • ✌(◕‿◕)✌ Donateur 2018
    • Famille
    • *
    • Messages: 1080
    • Localisation: Alsace
      • Voir le profil
    [WIVSP] Space Invaders upright, Midway 1978
    « Réponse #81 le: Samedi 28 Octobre 2017, 10:10:41 am »
  • Moi qui suis du métier j'arrive encore à suivre, même si l'électronique numérique c'est un peu loin pour moi.

    Je trouve cette analyse très intéressement et perso je n'aurai pas spontanément pensé à décripter l'image pour détecter la redondance du problème.

    Pour moi tu es très certainement sur la bonne piste. Hâte de lire là suite  ^-
    Flipper: DE "Laser War"- WMS "F14-Tomcat"- GTB " Hollywood Heat"
    Borne: Konami "Lethal Enforcers" - New Game "N'Styl"- René Pierre 1982 - Jeutel Neo Geo 16/9 - Simulateur Twin Konami "Midnight Run Road Fighter 2"
    Jeu/Système de jeu: 37 PCB Jamma, 7 cartouches MVS, slot Neo-Geo MV-1T, MV-2F, MV-6F
    Console: Nintendo SNES + 16 jeux

    Hors ligne Little_Rabbit

    • Arcade Myth
    • *
    • Messages: 4660
    • Localisation: Nantes
    • The early 80's : the arcade golden age !!
      • Voir le profil
    [WIVSP] Space Invaders upright, Midway 1978
    « Réponse #82 le: Dimanche 29 Octobre 2017, 12:33:08 pm »
  • Salut,

    Moi qui suis du métier j'arrive encore à suivre, même si l'électronique numérique c'est un peu loin pour moi.

    Alors moi c'est l'inverse ! :D

    En électronique analogique, je suis une quiche, alors que j'ai quelques restes en numérique :). Et j'ai acquis ces connaissances il y a plus de trente ans ! ;) Mais ça doit être comme le vélo, ça ne s'oublie pas (ou du moins, tout cela m'a suffisamment passionné à l'époque pour que je ne l'oublie pas 8)). Et là aussi à l'inverse de toi, ce n'est pas mon métier (et cela ne l'a jamais été), mais la passion fait le reste :).

    Je m'en vais vous conter mais dernières tentatives...

    Mes premiers suspects étaient donc les deux multiplexeurs du bus d'adresse des RAM (2 composants TTL type 74157) évoqués la fois précédente.

    Je les ai testé au comparateur TTL HP, et il ne trouvait pas d'anomalie (mais j'ai une confiance limitée en cet appareil...). J'ai également fais des mesures à l'analyseur logique :



    J'ai comparé les bits d'adresse A10 A9 et A8 en sortie du CPU avec ceux qui se retrouvent en entrée des multiplexeur. J'ai ajouté à l'acquisition les bits de poids fort de l'adresse des RAM, pour pouvoir identifier les endroits ou on accéderait bien aux zones buggées ($2800, $3000 ou $3800).



    Le problème avec ce genre d'acquisition (ici faite sur 2 secondes), c'est qu'il y a des millions d'échantillons, et qu'il n'est pas aisé de trouver l'endroit qui montrerait une défaillance. J'avais pourtant paramétré le déclenchement de l'acquisition (trigger) sur A13 A12 et A11 = 101.

    Comme je ne voyais rien, j'ai tenté une fonction d'export CSV du soft de l'analyseur logique. Ainsi je peux récupérer les données sous Excel, et à l'aide de filtres ne garder que les points signifiants. Le problème, c'est que le fichier CSV fait 2,4 millions de lignes (!), or un fichier Excel ne peut excéder 65535 lignes... J'ai quand même essayé sur le début du fichier, pour voir.



    Et je trouvais de rares différences ! Dans l'exemple au dessus entouré en rouge, le CPU doit être en train de lire ou écrire vers $3000. Les bits A10 A9 et A8 en sortie de CPU sont à 000, alors que ceux en entrée de multiplexeur sont à 100 ! Cet événement c'était produit à 17,86 ms environ. Mais quand j'allais observer cet instant sur les chronogrammes de l'analyseur logique, je ne voyais rien d'anormal ! Puis j'ai fini pas comprendre : il faut zoomer fortement l'instant en question pour se rendre compte que très brièvement (durant quelques nano secondes) les valeurs sont différentes. Mais c'est simplement dû au temps de propagation du buffer du bus d'adresse ! C'était donc une fausse piste. Excel ne me permettra pas d'isoler des cas signifiants.

    Ensuite j'ai fait des mesures et comparaisons entre ce qui rentre sur le multiplexeur et ce qui en sort.

    Mais là aussi, je ne suis pas parvenu à voir des anomalies à l'analyseur logique.

    N'ayant aucune preuve d'une défaillance, je me suis résolu à dessouder les multiplexeurs. Je l'ai sans doute déjà dit, mais les composants de ce PCB Midway sont une plaie à dessouder ! À l'époque avant de passer le PCB à la soudure à la vague, on pliait les broches des composants pour les maintenir en place  :-(( !



    Il faut du coup commencer par déplier les broches avant de les dessouder. Et cela ne facilite pas l'extraction !

    Je les remplace par des neufs :



    Résultat : rien, le bug est toujours présent ! :'(

    Mon deuxième suspect se situait au niveau des buffers de bus d'adresse.



    J'avais eu l'occasion d'en discuter avec Spectro au téléphone, et le 7408 situé en F2 nous semblait un bon candidat : il buffurise précisément les bits d'adresse A8, A9, A10 et A11 ! Mais en même temps, je n'étais pas pleinement convaincu puisque ce buffer sert également à l'adressage des EPROM qu'on voit à côté sur le schéma. Or le CRC des ROM est bon lors de l'exécution de la ROM de test...



    Je l'ai tout de même dessoudé, remplacé par un neuf, et...

    Bah que dalle ! :'(

    Avant tout cela, j'avais aussi testé avec le CPU du PCB d'aje, pour être sûr. Mais cela ne changeait rien. J'ai aussi regardé à l'oscilloscope la gueule des bits d'adresse au niveau des RAM. Mais avec un vieil oscillo analogique comme le mien, observer des signaux apériodiques comme un bus d'adresse, c'est un peu mission impossible, on ne voit rien.

    Car je soupçonne la panne d'être plus un problème « électrique » que purement logique. Je veux dire par là que j'ai l'impression que pour une certaine combinaison de niveaux électriques d'entrées ou sorties sur le bus d'adresse, le bus se met à ne pas fonctionner normalement (notamment quand beaucoup de bits sont à 0 !). Je parlais plus haut de « sortance », mais se pourrait aussi être un signal qui rebondit avec une oscillation, de l'oxydation, un emballement thermique, ou que sais-je... Mais pour autant, le problème est tout à fait reproductible, donc je n'en sais rien à vrai dire...

    Tirant leçon de l'épisode précédent où le shifter dysfonctionnait non pas en raison de composants défaillants mais des pistes du PCB abîmées, j'ai ensuite inspecté le PCB. J'ai refait quelques soudures sur le support du CPU.



    J'ai testé la continuité de tout le bus d'adresse sur les 16 RAM (et vérifié aussi qu'il n'y aurait pas un court-circuit entre 1 broches et ses voisines immédiates, ou voisines de la rangée de broches d'en face.

    Mais rien n'y fait, le bug est toujours là !...

    J'avoue être un peu sec sur où chercher à présent... Les image et vidéo du bug déjà postées renferment toutefois d'autres indices : je vais examiner les tirs et les traces qu'ils laissent. Ensuite, je ne sais pas si vous avez remarqué, par moment certains envahisseurs montent de presque leur hauteur dans la zone de bug. Pour l'instant je ne sais pas pourquoi ni ce que cela signifierait en terme d'adressage erroné (bug situé sur les bits de poids faibles du bus d'adresse ??)...

    Tout ça pour ça me direz-vous !... Et oui, dans un WIP, on cherche : parfois on trouve, et parfois pas  :-\.

    Si vous avez des idées, je suis preneur ! ^-

    A+
    Recherche 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 : Xenon, Baby Pac Man, Gottlieb des années 80 (Spirit, Amazon Hunt, ...). Divers :  Ice Cold Beer
    Trois fois rien quoi ! :D

    Hors ligne rygar

    • Grand Pilier
    • *
    • Messages: 792
    • Localisation: argentan
    • World record in progress...
      • Voir le profil
    [WIVSP] Space Invaders upright, Midway 1978
    « Réponse #83 le: Dimanche 29 Octobre 2017, 12:47:55 pm »
  • Bon courage pour la suite; je ne vais pas te donner la solution (ce serait trop facile ...)
    Néanmoins, plus tu avances dans la recherche de panne et moins tu auras de mal à trouver; tous les composants vont finir par être montés sur support  :D

    Hors ligne sushy18

    • ✌(◕‿◕)✌ Donateur 2018 Bootlegger de cendrier Dealer de tokens
    • Hardcore Gamer
    • *
    • Messages: 1804
    • Localisation: Bourges/Paris
    • Dans l'arcade de pere en fils depuis aout 2014
      • Voir le profil
    [WIVSP] Space Invaders upright, Midway 1978
    « Réponse #84 le: Dimanche 29 Octobre 2017, 12:48:37 pm »
  • le processeur est définitivement mis hors de cause? j'ai lu sur les xx posts du web que le processeur est souvent montré du doigt ( genre ils séchaient...et en désespoir de cause il le remplacent )...un remplacement par celui de la pcb voisine est possible ?
    Si tu ne sais pas demande, si tu sais partage !!
    Faudrait pas perdre de vue qu'une borne d'arcade c'est pas une console, c'est rarement plug n play, plus souvent plug n pschitt... (Funkycochise 2008)
    "Gratuit ? C'est déjà trop cher !!" ( Crying Freeman 2016)

    Hors ligne Little_Rabbit

    • Arcade Myth
    • *
    • Messages: 4660
    • Localisation: Nantes
    • The early 80's : the arcade golden age !!
      • Voir le profil
    [WIVSP] Space Invaders upright, Midway 1978
    « Réponse #85 le: Dimanche 29 Octobre 2017, 13:22:09 pm »
  • @rygar : oui, si ça continue, je vais en avoir pour plus cher de support que de borne ! :D

    @sushy18 : il faut bien tout lire (je sais, y en a des tartines  :-\ ...) =>

    Avant tout cela, j'avais aussi testé avec le CPU du PCB d'aje, pour être sûr. Mais cela ne changeait rien.

    ;)

    A+
    Recherche 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 : Xenon, Baby Pac Man, Gottlieb des années 80 (Spirit, Amazon Hunt, ...). Divers :  Ice Cold Beer
    Trois fois rien quoi ! :D

    Hors ligne jpettit

    • Passionné
    • *
    • Messages: 160
    • Localisation: Essonne
      • Voir le profil
    [WIVSP] Space Invaders upright, Midway 1978
    « Réponse #86 le: Mardi 07 Novembre 2017, 11:40:48 am »
  • Salut Little_Rabbit,

    Merci pour ton WIP il est extrêmement pédagogique et agréable à lire.
    Pour ma part je n'ai pas avancé d'un iota sur mon WIP mais j'ai bien l'intention de m'y remettre très prochainement.

    Pour rappel, j'en suis au stade où je cherche à obtenir les lignes verticales, que tu obtiens page 2 de ton WIP :
    https://gamoovernet.pixhotel.fr/pics_gamoovernet890px/20170930234114-Little_Rabbit-P1020659.JPG

    Question : tu dis mettre l'EPROM de test en H avant de mettre sous tension et de voir ces lignes. Je pensais que l'on verrait ces mêmes lignes, sans aucune EPROM. Tu penses que l'EPROM de test est obligatoire si on veut voir les lignes verticales ?

    Question bonus : si je veux forcer le Power On Reset, je dois mettre à la masse la patte 6 du connecteur 16 pattes (http://www.brentradio.com/images/Other/Docs/SpaceInvaders/midwayconnectorpinouts.txt) ? euh... de quel connecteur on parle ? j'ai un de 18 pattes (où y a la nappe +5 -5 +12, etc), et 2 petits (sur des pates metaliques en relief reliés aux boutons et ecran je pense)

    Merci

    jpettit

    Hors ligne Little_Rabbit

    • Arcade Myth
    • *
    • Messages: 4660
    • Localisation: Nantes
    • The early 80's : the arcade golden age !!
      • Voir le profil
    [WIVSP] Space Invaders upright, Midway 1978
    « Réponse #87 le: Mardi 07 Novembre 2017, 21:27:02 pm »
  • Salut,

    Merci jpettit pour ton appréciation  <:).

    Pour rappel, j'en suis au stade où je cherche à obtenir les lignes verticales, que tu obtiens page 2 de ton WIP :


    Tout d'abord, j'apporte une petite précision : ces lignes verticales que l'on voit à l'écran sur ma photo ne sont pas de même nature que celles que tu cherches à avoir. Dans mon cas, les lignes sont dues à des RAM défectueuses : certains boîtiers étant morts, leur bit de sortie sort toujours un 1, quelque soit l'adresse consultée, et quelque soit ce que l'on a pu y écrire avant.

    Question : tu dis mettre l'EPROM de test en H avant de mettre sous tension et de voir ces lignes. Je pensais que l'on verrait ces mêmes lignes, sans aucune EPROM. Tu penses que l'EPROM de test est obligatoire si on veut voir les lignes verticales ?


    Je ne connaissais pas ce point de test, et n'avais jamais essayé de mettre sous tension sans aucune ROM. C'est dans la procédure de dépannage Bally Midway qu'ils évoquent cette étape non ?

    Du coup je viens de faire le test : j'ai mis sous tension sans EPROM, et on obtient effectivement des lignes verticales :



    Question bonus : si je veux forcer le Power On Reset, je dois mettre à la masse la patte 6 du connecteur 16 pattes (http://www.brentradio.com/images/Other/Docs/SpaceInvaders/midwayconnectorpinouts.txt) ? euh... de quel connecteur on parle ? j'ai un de 18 pattes (où y a la nappe +5 -5 +12, etc), et 2 petits (sur des pattes métaliques en relief reliés aux boutons et écran je pense)

    Le Power on Reset ne se trouve pas sur le connecteur encartable 2 x 18 broches, c'est effectivement un des connecteurs en haut de la carte fille. J'en parlais page 1 de mon WIP :




    en expliquant qu'il fallait mieux mette une résistance de pull-down qui va fixer le niveau à la masse en l'absence de pression sur le bouton poussoir :



    Mais je me rends compte à l'usage que ce Power on Reset n'est pas du tout indispensable : si ton watchdog fonctionne bien, il fera de lui-même un reset 4 secondes après la mise sous tension. Car dans la pratique, entre le moment où j'actionne l'interrupteur de mon alimentation arcade, que je cherche le bouton, le saisisse et que j'appuie sur le bouton, et bien bien souvent, le watchdog a déjà fait le RESET :).

    Une piste que je te recommande d'explorer d'ailleurs, c'est de tester le 7404 situé en F3 sur la carte fille : c'est par lui que passe le POWER on Reset en provenance de l'alim. Et dans mon cas il était mort, et sur le pcb aje_fr que j'ai remis en route, là aussi c'était ce 7404 qui bloquait le RESET et empêchait le PCB de booter !

    Je crois me souvenir que tu as accès à un oscillo :  je te recommande de regarder les signaux qui arrivent sur les 2 74161 qui gèrent le watchdog. Regarde si le 60 Hz arrive bien dessus, si les sorties s'activent selon le comptage binaire, et si la retenue du second compteur se manifeste toutes les 4 secondes. Et commence par regarder la sortie du 7404, pour voir si elle ne bloque pas le chargement des compteurs :).

    A+
    « Modifié: Samedi 11 Novembre 2017, 09:58:58 am par Little_Rabbit »
    Recherche 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 : Xenon, Baby Pac Man, Gottlieb des années 80 (Spirit, Amazon Hunt, ...). Divers :  Ice Cold Beer
    Trois fois rien quoi ! :D

    Hors ligne jpettit

    • Passionné
    • *
    • Messages: 160
    • Localisation: Essonne
      • Voir le profil
    [WIVSP] Space Invaders upright, Midway 1978
    « Réponse #88 le: Samedi 11 Novembre 2017, 09:35:04 am »
  • Merci, je vais regarder tout ça et te tenir au courant :-)

    Pour l’écran avec les lignes verticales, c'est en effet dans la procédure de test Midway (chapitre 3.3 case B)