FPGA branché sur les scores élevés des maîtres des flippers

Comment conserver des scores élevés dans une vieille borne d’arcade lorsque l’on coupe l’alimentation ?Est-il possible d’injecter de nouveaux scores élevés dans un flipper ?C'était l'intrigue B d'un épisode de Seinfield, donc ça vaut la peine de le faire, conduisant [Matthew Venn] dans le terrier des FPGA et des cartes mémoire pour créer de nouveaux scores élevés dans un flipper.

La machine en question pour cette expérience est Doctor Who de Williams, qui, bien qu'il s'agisse d'un flipper Doctor Who, n'est pas une machine si géniale.Pourtant, les Daleks.Cette machine est alimentée par un Motorola 68B09E fonctionnant à 2 MHz, avec 8 Ko de RAM à l'adresse 0x0000.Cette RAM est sauvegardée avec quelques piles AA et, heureusement, elle se trouve dans un socket DIP, permettant à [Matthew] de fabriquer une carte chargée d'une carte de développement FPGA qui passe entre le CPU et la RAM.

La technique de base pour intercepter et écrire un nouveau score élevé pour ce flipper vient de l'incroyable [sprite_tm] qui tweete les scores élevés d'un coffret de 1943.L'idée est simple : il suffit de faire examiner par un FPGA une adresse mémoire spécifique et d'envoyer des données à un ordinateur lorsque les données de cette adresse sont mises à jour.Pour le flipper Doctor Who, c'est un peu plus difficile qu'il n'y paraît : les données ne sont pas stockées en hexadécimal, mais emballées en BCD.Après un peu de travail, cependant, [Matthew] a pu écrire de nouveaux scores élevés à partir d'un script Python exécuté sur un ordinateur portable.Tout le code (et quelques détails supplémentaires) est sur un Github

L'extension des jeux d'arcade en exploitant les lignes d'adresse et de données n'est pas quelque chose que nous voyons souvent, mais cela a été fait, notamment avec l'Église de Robotron.Ici, quelques hacks MAME transforment une partie de Robotron en une église permettant aux fidèles de s'engager pleinement auprès du sauveur du monde, qui doit arriver dans 66 ans et sauver les humains restants de l'apocalypse des robots.Ce hack d'un flipper Doctor Who va au-delà d'une version modifiée de MAME, et si jamais nous voulons créer une vraie chapelle avec un vrai jeu de Robotron, ce sont les techniques que nous allons utiliser.

Il y a quelques jours, on parlait de l'utilisation du FRAM dans Sega Saturn pour conserver les sauvegardes de jeu.La même chose pourrait fonctionner ici aussi.

ma machine est un Dr Who, mais en fait, c'est la puissance de feu de mon pote Stuarrrt que nous avons essayée.Je pense que ça fonctionnera sur le mien mais je dois d'abord dessouder la SRAM !

La plupart des jeux ont leur code à court d'EPROM.Utilisez un analyseur logique surveillant les adresses, les données et les signaux de contrôle pour déterminer où se trouvent les scores les plus élevés dans la RAM, puis écrivez un petit programme court pour insérer la valeur souhaitée dans la zone RAM.Gravez le programme dans une EPROM appropriée et échangez-le pour une seule exécution.Remplacez ensuite l'EPROM d'origine pour que le jeu revienne à la normale.La mise en œuvre prend un peu de temps, mais fonctionne très bien.Et non, je ne vais pas dire comment ni où j'ai vérifié cela:) .

Pourquoi faire tout cela pour enregistrer un score élevé ?Installez simplement une NVRAM et finissez-en.C'est une solution simple pour toutes les cartes MPU Williams WPC.C'est quoi cette photo ?Ce n’est même pas un MPU Doctor Who illustré.Il s'agit d'une carte de remplacement Rottendog MPU327-4 pour Williams 3,4,6.Il dispose de NVRAM et ne perdra jamais sa mémoire.

La RAM de la carte mpu Firepower pour cette gamme est une unité 256x4 bits qu'ils ont choisi d'adresser sur le nybble inférieur et de laisser le nybble supérieur tiré vers le haut - de sorte que le stock HSTD serait stocké F5 F5 F0 F0 F0 F0.Les flippers contemporains d'autres fabricants à puissance de feu qui utilisaient également le bélier 5101 auraient le même problème, mais Bally (par exemple) a choisi de rendre le nybble supérieur actif et de laisser celui du bas comme F.

Ils doivent avoir une RAM pleine largeur d'octets quelque part dans l'espace d'adressage, sinon vous ne pourriez pas pousser une adresse sur la pile et y revenir.Certains autres systèmes embarqués sur lesquels je travaillais utilisaient de la RAM à quartet, mais prenaient deux accès pour récupérer l'octet complet.Cependant, le processeur n'a vu qu'un seul cycle de bus.

Ils font.L'adresse de 0000 $ à 00 FF est pleine largeur avec des 6810 ou des 5114 ou en combinaison en interne dans un 6802. Le stockage 5101 nybble de 0100 $ à 01 FF est destiné à la partie sauvegardée par batterie car il s'agit d'une partie nécessitant moins d'énergie.

"qui, bien qu'il s'agisse d'un flipper de Doctor Who, n'est pas une machine géniale" Quoi ????Doctor Who est une super machine, ce n'est pas une bash de monstre ou un Magicien d'Oz, mais c'est une machine solide et appréciée de la communauté du flipper.

Je suis d'accord.Parmi tous les flippers, des centaines de flippers auxquels j'ai joué.Doctor Who est toujours le plus amusant à jouer à mon avis.

Hein, c'était une connerie… après avoir fait ce hack sur la machine hackerspaces locale de 1942, j'ai aussi fait quelque chose de similaire avec le flipper que j'ai acquis.C'est une machine Williams Dr. Who.Je n'ai tout simplement pas utilisé de FPGA, mais j'ai concocté quelque chose avec des verrous, un AVR (je pense) et un SBC Linux capable de fonctionner sans fil.

De plus, je ne suis pas d'accord sur le fait que le Dr Who n'est pas si génial.C'est en fait plutôt sympa pour la rejouabilité, à mon avis.

En utilisant notre site Web et nos services, vous acceptez expressément le placement de nos cookies de performance, de fonctionnalité et publicitaires.Apprendre encore plus


Heure de publication : 29 août 2019
Chat en ligne WhatsApp !