FPGA Pinball Maşın Masters yüksək balları daxil etdi

Elektrik enerjisini ayırarkən köhnə arcade kabinetində yüksək balları necə qoruyursunuz?Bir langırt maşınına yeni yüksək ballar vurmaq mümkündürmü?Bu, Seinfield-in bir epizodunun süjeti idi, ona görə də langırt maşınında yeni yüksək xallar yaratmaq üçün [Metyu Venn] FPGA-ların və yaddaş xəritələrinin dovşan dəliyindən aşağı aparmağa dəyər.

Bu təcrübə üçün söz mövzusu maşın Williams-dan Doktor Kimdir, Doctor Who langırt maşını olmasına baxmayaraq, o qədər də böyük bir maşın deyil.Yenə də dalekslər.Bu maşın 0x0000 ünvanında 8 kB RAM ilə 2 MHz tezliyində işləyən Motorola 68B09E ilə təchiz edilmişdir.Bu RAM bir neçə AA batareyası ilə ehtiyat nüsxəsini çıxarır və xoşbəxtlikdən DIP yuvasındadır, [matthew] CPU və RAM arasında gedən FPGA inkişaf lövhəsi ilə yüklənmiş lövhəni hazırlamağa imkan verir.

Bu langırt maşını üçün yeni yüksək hesabın tutulması və yazılması üçün əsas texnika 1943-cü il kabinetindən yüksək ballar yazan inanılmaz [sprite_tm]-dən gəlir.İdeya sadədir: FPGA-nın müəyyən bir yaddaş ünvanına baxmaq kifayətdir və həmin ünvandakı məlumatlar yeniləndikdə bəzi məlumatları kompüterə göndərin.Doctor Who langırt maşını üçün bu, göründüyündən bir qədər çətindir: məlumatlar hexdə deyil, BCD-də yığılır.Bir az işdən sonra [matthew] noutbukda işləyən Python skriptindən yeni yüksək ballar yaza bildi.Bütün kodlar (və daha bir neçə detal) Github-da bitdi

Ünvan və məlumat xətlərinə toxunaraq arcade oyunlarını genişləndirmək çox gördüyümüz bir şey deyil, lakin ən məşhuru Robotron Kilsəsi ilə həyata keçirilib.Burada bir neçə MAME hackləri Robotron oyununu 66 ildən sonra gəlib qalan insanları robot apokalipsisindən xilas etmələri üçün möminlərin özlərini tamamilə dünyanın xilaskarına bağlamaq üçün kilsəyə çevirir.Doctor Who langırt maşınının bu hacki MAME-nin modifikasiya edilmiş versiyasından kənara çıxır və əgər biz nə vaxtsa Robotronun real oyunu ilə əsl kilsə düzəltmək niyyətindəyiksə, bunlar bizim istifadə edəcəyimiz üsullardır.

Bir neçə gün əvvəl oyun qənaətlərini qorumaq üçün Sega Saturn-da FRAM-dan istifadə haqqında hekayə var idi.Eynisi burada da işləyə bilər.

mənim maşınım Dr Kimdir, amma əslində yoldaşım Stuarrrtın Yanğın Gücü idi, biz bunu sınadıq.Düşünürəm ki, bu, mənim üzərində işləyəcək, amma əvvəlcə SRAM-ı açmalıyam!

Oyunların əksəriyyətində kod EPROM-ları tükənir.RAM-da yüksək balların harada olduğunu anlamaq üçün ünvanı, məlumatları və nəzarət siqnallarını izləyən məntiq analizatorundan istifadə edin və sonra RAM sahəsinə istədiyiniz dəyəri daxil etmək üçün qısa bir proqram yazın.Proqramı uyğun bir EPROM-da yandırın və bir icra üçün dəyişdirin.Sonra orijinal EPROM-u dəyişdirin ki, oyun normal vəziyyətə qayıtsın.Tətbiq etmək üçün bir az vaxt lazımdır, amma yaxşı işləyir.Xeyr, bunu necə və harada təsdiq etdiyimi deməyəcəm:) .

Niyə yüksək xal saxlamaq üçün bütün bunlardan keçir?Sadəcə bir NVRAM quraşdırın və bununla məşğul olun.Bu, bütün Williams WPC MPU lövhələri üçün asan bir düzəlişdir.Şəkildə nə var?Bu, hətta bir Doctor Who MPU-nun təsviri deyil.Bu, Williams 3,4,6 üçün Rottendog MPU327-4 dəyişdirmə lövhəsidir.NVRAM-a malikdir və yaddaşını heç vaxt itirməyəcək.

Bu diapazon üçün atəş gücü mpu lövhəsinin qoçu 256x4 bitlik bir vahiddir ki, onlar aşağı nibble üzərində ünvanlamaq və yuxarı nibble-ni yüksək çəkilmiş vəziyyətdə qoymaq üçün seçmişlər - beləliklə, ehtiyat HSTD F5 F5 F0 F0 F0 F0 saxlanacaqdır.Digər istehsalçının 5101 qoçunu da istifadə edən atəş gücü üçün müasir langırt maşınları eyni problemlə üzləşəcək, lakin Bally (məsələn) yuxarı nibble-ni aktiv etməyi və aşağısını F olaraq tərk etməyi seçir.

Onların ünvan sahəsinin bir yerində tam bayt genişlikli RAM olmalıdır, əks halda siz yığındakı ünvanı itələyib ona qayıda bilməzsiniz.Əvvəllər işlədiyim bəzi digər daxili sistemlər geniş RAM-dan istifadə etdi, lakin tam baytı əldə etmək üçün iki giriş əldə etdi.CPU yalnız bir avtobus dövrü gördü.

Onlar edir.$0000-$00FF arası ünvan 6810 və ya 5114 ilə və ya 6802-də daxili kombinasiya ilə tam genişlikdədir. $0100-$01FF arasında olan 5101 nybble saxlama batareya ilə dəstəklənən hissə üçündür, çünki o, daha az enerji tələb edən hissədir.

"Hansı, Doctor Who langırt maşını olmasına baxmayaraq, o qədər də böyük maşın deyil" Nə????Mükəmməl bir maşın olan həkim, canavar vuruşu və ya oz sehrbazı deyil, lakin langırt ictimaiyyəti tərəfindən möhkəm və sevimli bir maşındır.

Razıyam.Oynadığım yüzlərlə langırt maşınından.Doctor Who ardıcıl olaraq mənim fikrimcə oynamaq ən əyləncəlidir.

Hə, bu ağılsızlıq idi… 1942-ci ilin yerli haker məkanı maşınında bu hacki etdikdən sonra mən də əldə etdiyim langırt maşını ilə oxşar bir şey etdim.Hansı ki, Williams Dr. Who maşınıdır.Mən sadəcə bir FPGA istifadə etmədim, lakin kilidlər, AVR (düşünürəm) və simsiz işləyə bilən bəzi Linux SBC ilə bir şey hazırladım.

Həmçinin, mən böyük olan Dr razı deyiləm.Bu, mənim fikrimcə, təkrar oynanabilirlik baxımından olduqca gözəldir.

Veb saytımızdan və xidmətlərimizdən istifadə etməklə siz performans, funksionallıq və reklam kukilərimizin yerləşdirilməsinə açıq şəkildə razılaşırsınız.Daha ətraflı


Göndərmə vaxtı: 29 avqust 2019-cu il
WhatsApp Onlayn Söhbət!