FPGA incorporat a la màquina de pinball Masters puntuacions altes

Com es conserven les puntuacions altes en un gabinet arcade antic quan desconnecteu l'alimentació?És possible injectar noves puntuacions altes en una màquina de pinball?Va ser la trama b d'un episodi de Seinfield, així que ha de valdre la pena fer-ho, conduint a [matthew venn] pel forat dels FPGA i els mapes de memòria per crear noves puntuacions altes en una màquina de pinball.

La màquina en qüestió per a aquest experiment és Doctor Who de Williams, que, tot i ser una màquina de pinball de Doctor Who, no és una màquina genial.Tot i així, Daleks.Aquesta màquina funciona amb un Motorola 68B09E que funciona a 2 MHz, amb 8 kB de RAM a l'adreça 0x0000.Aquesta memòria RAM s'ha fet una còpia de seguretat amb unes poques bateries AA i, afortunadament, es troba en un sòcol DIP, cosa que permet a [matthew] crear una placa carregada amb una placa de desenvolupament FPGA que va entre la CPU i la RAM.

La tècnica bàsica per interceptar i escriure una nova puntuació alta per a aquesta màquina de pinball prové de l'increïble [sprite_tm] que està piulant puntuacions altes des d'un gabinet de 1943.La idea és senzilla: només cal que una FPGA mire una adreça de memòria específica i envieu algunes dades a un ordinador quan les dades d'aquesta adreça s'actualitzen.Per a la màquina de pinball Doctor Who, això és una mica més difícil del que sembla: les dades no s'emmagatzemen en hexadecimal, sinó que estan empaquetades en BCD.Després d'una mica de treball, però, [matthew] va poder escriure noves puntuacions altes a partir d'un script de Python que s'executava en un ordinador portàtil.Tot el codi (i alguns detalls més) s'ha acabat en un Github

Ampliar els jocs d'arcade fent clic a les línies d'adreces i dades no és una cosa que veiem molt, però s'ha fet, el més famós amb l'Església de Robotron.Aquí, uns quants hacks de MAME converteixen un joc de Robotron en una Església perquè els fidels es comprometin plenament amb el salvador del món, que arribarà en 66 anys i salvarà els humans restants de l'apocalipsi robot.Aquest hack d'una màquina de pinball de Doctor Who va més enllà d'una versió modificada de MAME, i si mai anem a fer una capella real amb un joc real de Robotron, aquestes són les tècniques que utilitzarem.

Fa uns dies hi havia una història sobre l'ús de FRAM a Sega Saturn per preservar els desats del joc.El mateix podria funcionar aquí també.

La meva màquina és un Dr Who, però en realitat va ser el Fire Power del meu company Stuarrrt el que vam provar.Crec que funcionarà al meu, però primer he de desoldar la SRAM!

La majoria dels jocs tenen el codi sense EPROM.Utilitzeu un analitzador lògic mirant l'adreça, les dades i els senyals de control per esbrinar on viuen les puntuacions més altes de la memòria RAM i, a continuació, escriviu un petit programa breu per inserir el valor que voleu a l'àrea de la memòria RAM.Graveu el programa en una EPROM adequada i canvieu-lo per una execució.A continuació, substituïu l'EPROM original perquè el joc torni a la normalitat.Es necessita una mica de temps per implementar-se, però funciona bé.I no, no diré com ni on ho vaig verificar:) .

Per què passar per tot això per salvar una puntuació més alta?Només cal que instal·leu una NVRAM i acabeu-la.Aquesta és una solució fàcil per a totes les plaques MPU Williams WPC.Què passa amb la foto?Ni tan sols és un MPU de Doctor Who a la foto.És una placa de recanvi Rottendog MPU327-4 per a Williams 3,4,6.Té NVRAM i mai perdrà la seva memòria.

La RAM de la placa mpu de potència de foc per a aquest rang és una unitat de 256 x 4 bits que van triar adreçar a la part inferior i deixar la part superior alta, de manera que l'HSTD s'emmagatzemaria F5 F5 F0 F0 F0 F0.Les màquines de pinball contemporànies d'altres fabricants amb potència de foc que també utilitzaven el ram 5101 tindrien el mateix problema, però Bally (per exemple) opta per activar el nybble superior i deixar el inferior com a F.

Han d'haver tingut una RAM d'amplada completa de bytes en algun lloc de l'espai d'adreces, en cas contrari no podríeu empènyer una adreça a la pila i tornar-hi.Alguns altres sistemes incrustats en els quals solia treballar feien servir una memòria RAM àmplia, però van necessitar dos accessos per obtenir el byte complet.Tanmateix, la CPU només va veure un sol cicle de bus.

Ells fan.L'adreça de $ 0000 a $ 00FF és d'amplada completa amb 6810 o 5114 o en combinació interna en un 6802. L'emmagatzematge nybble 5101 des de $ 0100-$ 01FF és per a la part amb bateria, ja que és una part amb un requisit d'energia inferior.

"que, tot i ser una màquina de pinball de Doctor Who, no és una màquina tan gran" Què????Doctor que és una gran màquina, no és cap monstre o Wizard of oz, però és una màquina sòlida i estimada per la comunitat de pinball.

Estic dacord.De tots els centenars de màquines de pinball que he jugat.Doctor Who és constantment el més divertit de jugar al meu entendre.

Eh, va ser una merda... després de fer aquest pirateig a la màquina local hackerspaces 1942, també vaig fer alguna cosa semblant amb la màquina de pinball que vaig adquirir.Que és una màquina Williams Dr. Who.Simplement no vaig fer servir un FPGA, sinó que vaig fer alguna cosa amb pestells, un AVR (crec) i algun SBC de Linux que podia fer sense fil.

A més, no estic d'acord que el Dr. Who no sigui tan gran.En realitat, al meu entendre, és molt agradable per a la repetició.

En utilitzar el nostre lloc web i serveis, accepteu expressament la col·locació de les nostres cookies de rendiment, funcionalitat i publicitat.Aprèn més


Hora de publicació: 29-agost-2019
Xat en línia de WhatsApp!