FPGA s-a transformat în Pinball Machine Masters scoruri mari

Cum păstrați scorurile mari într-un cabinet arcade vechi atunci când deconectați alimentarea?Este posibil să injectați noi scoruri mari într-un flipper?A fost intriga-b a unui episod din Seinfield, așa că trebuie să merite făcută, ducându-l pe [matthew venn] în groapa FPGA-urilor și a hărților de memorie pentru a crea noi scoruri mari într-un flipper.

Aparatul în cauză pentru acest experiment este Doctor Who de la Williams, care, în ciuda faptului că este un aparat de pinball Doctor Who, nu este atât de grozav.Totuși, daleks.Această mașină este alimentată de un Motorola 68B09E care rulează la 2MHz, cu 8kB de RAM la adresa 0x0000.Această memorie RAM a făcut backup cu câteva baterii AA și, din fericire, se află într-un soclu DIP, permițându-i [matthew] să creeze o placă încărcată cu o placă de dezvoltare FPGA care merge între CPU și RAM.

Tehnica de bază pentru interceptarea și scrierea unui nou scor mare pentru acest flipper vine de la incredibilul [sprite_tm] care trimite pe Twitter scoruri mari dintr-un cabinet din 1943.Ideea este simplă: trebuie doar să aruncați o privire la o anumită adresă de memorie și să trimiteți câteva date către un computer atunci când datele de la acea adresă sunt actualizate.Pentru aparatul de pinball Doctor Who, acest lucru este puțin mai greu decât pare: datele nu sunt stocate în hex, ci sunt ambalate în BCD.După puțină muncă, totuși, [matthew] a reușit să scrie noi scoruri mari dintr-un script Python care rulează pe un laptop.Tot codul (și câteva detalii suplimentare) este terminat pe un Github

Extinderea jocurilor arcade prin accesarea liniilor de adrese și de date nu este ceva despre care vedem foarte mult, dar a fost făcut, cel mai faimos cu Biserica Robotron.Aici, câteva hack-uri MAME transformă un joc Robotron într-o Biserică pentru ca credincioșii să se angajeze pe deplin salvatorului lumii, care urmează să sosească în 66 de ani și să salveze oamenii rămași de apocalipsa robotului.Acest hack al unui aparat de pinball Doctor Who depășește o versiune modificată a MAME și, dacă vrem să facem o capelă adevărată cu un adevărat joc Robotron, acestea sunt tehnicile pe care le vom folosi.

Cu câteva zile în urmă, a existat o poveste despre utilizarea FRAM în Sega Saturn pentru a păstra salvările de joc.La fel ar putea funcționa și aici.

Mașina mea este un Dr Who, dar de fapt am încercat asta pe Fire Power a prietenului meu Stuarrrt.Cred că va funcționa la al meu, dar mai întâi trebuie să dezlipesc SRAM-ul!

Majoritatea jocurilor au codul fără EPROM-uri.Utilizați un analizor logic care urmărește adresa, datele și semnalele de control pentru a afla unde se află în RAM scorurile mari, apoi scrieți un mic program scurt pentru a introduce valoarea dorită în zona RAM.Ardeți programul într-o EPROM adecvată și schimbați-l pentru o execuție.Apoi înlocuiți EPROM-ul original, astfel încât jocul să revină la normal.Este nevoie de puțin timp pentru implementare, dar funcționează bine.Și nu, nu voi spune cum sau unde am verificat asta:) .

De ce să treci prin toate acestea pentru a salva un scor mare?Doar instalați o NVRAM și terminați cu ea.Aceasta este o soluție ușoară pentru toate plăcile MPU Williams WPC.Ce e cu fotografia?Nu este nici măcar un Doctor Who MPU în imagine.Este o placă de înlocuire Rottendog MPU327-4 pentru Williams 3,4,6.Are NVRAM și nu își va pierde niciodată memoria.

Ramul plăcii mpu de putere de foc pentru acea gamă este o unitate de 256 x 4 biți pe care au ales să o adreseze pe nybble-ul inferior și să lase nybble-ul superior tras în sus - astfel încât stocul HSTD ar fi stocat F5 F5 F0 F0 F0 F0.Pinball-urile contemporane ale altor producători la puterea de foc care au folosit și ram 5101 ar avea aceeași problemă, dar Bally (de exemplu) alege să activeze nybble-ul superior și să-l lase pe cel inferior ca F.

Trebuie să fi avut o RAM cu lățime completă de octeți undeva în spațiul de adrese, altfel nu ați putea împinge o adresă pe stivă și nu ați putea reveni la ea.Unele alte sisteme încorporate pe care obișnuiam să lucrez au folosit RAM cu nibble wide, dar au avut două accesări pentru a prelua octetul complet.Totuși, procesorul a văzut doar un singur ciclu de magistrală.

Ei fac.Adresa de la $0000-$00FF este pe lățimea completă fie cu 6810 sau 5114, fie în combinație internă într-un 6802. Spațiul de stocare 5101 nybble de la $0100-$01FF este pentru partea susținută de baterie, deoarece este o parte care necesită o putere mai mică.

„care, în ciuda faptului că este o mașină de pinball Doctor Who, nu este o mașină atât de grozavă” Ce????Doctor care este o mașină grozavă, nu este un joc de monstru sau Vrăjitor din oz, dar este o mașină solidă și iubită de comunitatea de pinball

Sunt de acord.Din toate sutele de pinball-uri pe care le-am jucat.Doctor Who este în mod constant cel mai distractiv de jucat, după părerea mea.

Huh, a fost o naiba... după ce am făcut acel hack pe mașina locală hackerspaces 1942, am făcut și ceva asemănător cu aparatul de pinball pe care l-am achiziționat.Care este o mașină Williams Dr. Who.Pur și simplu nu am folosit un FPGA, dar am făcut ceva cu zăvoare, un AVR (cred) și niște SBC Linux care ar putea face wireless.

De asemenea, nu sunt de acord cu faptul că Dr. Who nu este atât de grozav.De fapt, este destul de frumos pentru rejucare, după părerea mea.

Prin utilizarea site-ului și serviciilor noastre, sunteți de acord în mod expres cu plasarea cookie-urilor noastre de performanță, funcționalitate și publicitate.Află mai multe


Ora postării: 02-sept-2019
Chat online WhatsApp!