FPGA, уключаная ў фінбол-машыну, высокія вынікі

Як захаваць высокія вынікі ў старой аркаднай шафе пры адключэнні сілкавання?Ці можна ўвесці новыя рэкорды ў пінбол?Гэта быў сюжэт B эпізоду Seinfield, так што гэта варта таго, каб зрабіць [Мэцью Вен] у трусіную нару FPGA і карт памяці, каб стварыць новыя высокія балы ў пінболе.

Машына, пра якую ідзе гаворка для гэтага эксперыменту, - "Доктар Хто" ад Williams, якая, нягледзячы на ​​​​тое, што з'яўляецца пінболам "Доктар Хто", не такая ўжо і выдатная машына.Тым не менш, далек.Гэта машына працуе ад Motorola 68B09E, якая працуе на частаце 2 МГц, з 8 кБ аператыўнай памяці па адрасе 0x0000.Гэтая аператыўная памяць падтрымліваецца некалькімі батарэйкамі АА і, на шчасце, знаходзіцца ў раз'ёме DIP, што дазваляе [Мэцью] вырабіць плату з платай распрацоўкі FPGA, якая знаходзіцца паміж працэсарам і аператыўнай памяццю.

Базавая тэхніка для перахопу і запісу новага рэкорду для гэтага пінбола паходзіць ад неверагоднага [sprite_tm], які чырыкае рэкорды з кабінета 1943 года.Ідэя простая: проста паглядзіце FPGA на адзін канкрэтны адрас памяці і адпраўце некаторыя даныя на кампутар, калі даныя па гэтым адрасе будуць абноўлены.Для пінбола "Доктар Хто" гэта крыху складаней, чым здаецца: даныя захоўваюцца не ў шаснаццатковым, а ўпакаваным BCD.Аднак пасля невялікай працы [Мэцью] змог напісаць новыя высокія балы са скрыпту Python, запушчанага на ноўтбуку.Увесь код (і яшчэ некалькі дэталяў) размешчаны на Github

Пашырэнне аркадных гульняў шляхам націску на лініі адрасоў і даных - гэта не тое, што мы бачым часта, але гэта было зроблена, найбольш вядома з Царквой Робатрон.Тут некалькі хакаў MAME ператвараюць гульню Robotron у Царкву, каб вернікі цалкам аддалі сябе выратавальніку свету, які павінен прыбыць праз 66 гадоў і выратаваць астатніх людзей ад апакаліпсісу робатаў.Гэты хак пінбола Doctor Who выходзіць за рамкі мадыфікаванай версіі MAME, і калі мы калі-небудзь збіраемся стварыць сапраўдную капліцу з сапраўднай гульнёй Robotron, гэта метады, якія мы будзем выкарыстоўваць.

Некалькі дзён таму была гісторыя пра выкарыстанне FRAM у Sega Saturn для захавання захаванняў гульняў.Тое ж самае можа працаваць і тут.

мая машына - Dr Who, але на самой справе мы апрабавалі гэта на Fire Power майго таварыша Stuarrrt.Я думаю, што гэта будзе працаваць на маім, але я павінен спачатку адпаяць SRAM!

У большасці гульняў код сканчаецца з EPROM.Выкарыстоўвайце лагічны аналізатар, які назірае за адрасамі, дадзенымі і сігналамі кіравання, каб высветліць, дзе ў аператыўнай памяці знаходзяцца высокія балы, а потым напішыце кароткую невялікую праграму, каб уставіць патрэбнае значэнне ў вобласць аператыўнай памяці.Запішыце праграму ў адпаведную EPROM і заменіце яе для аднаго выканання.Затым заменіце арыгінальную EPROM, каб гульня вярнулася да нармальнага рэжыму.Рэалізацыя займае трохі часу, але працуе нармальна.І не, я не збіраюся казаць, як і дзе я пераканаўся ў гэтым:) .

Навошта праходзіць усё гэта, каб захаваць высокі бал?Проста ўсталюйце NVRAM і скончыце з гэтым.Гэта лёгкае рашэнне для ўсіх плат Williams WPC MPU.Што з фота?Гэта нават не Doctor Who MPU на фота.Гэта замена платы Rottendog MPU327-4 для Williams 3,4,6.Ён мае NVRAM і ніколі не страціць сваю памяць.

Аператар агнявой моцы платы mpu для гэтага дыяпазону з'яўляецца блокам 256x4 біт, які яны вырашылі адрасаваць на ніжнім нібле і пакінуць верхні ніббл падцягнутым высокім - так стандартны HSTD будзе захоўвацца F5 F5 F0 F0 F0 F0.Сучасныя пінбольныя машыны іншых вытворцаў для агнявой моцы, якія таксама выкарыстоўвалі таран 5101, мелі б такую ​​ж праблему, але Bally (напрыклад) вырашыў зрабіць верхні ніббл актыўным і пакінуць ніжні як F.

У іх павінна была быць поўнабайтавая аператыўная памяць дзесьці ў адраснай прасторы, у адваротным выпадку вы не маглі б засунуць адрас у стэк і вярнуцца да яго.Некаторыя іншыя ўбудаваныя сістэмы, з якімі я раней працаваў, выкарыстоўвалі аператыўную памяць шырокага байта, але патрабавалі два доступу, каб атрымаць поўны байт.Аднак працэсар бачыў толькі адзін цыкл шыны.

Яны робяць.Адрас ад $0000 да $00FF мае поўную шырыню з 6810 або 5114 або ў камбінацыі ўнутры ў 6802. Назапашвальнік 5101 nybble ад $0100 да $01FF прызначаны для часткі з батарэяй, паколькі гэта частка з меншым патрабаваннем да энергіі.

«Якая, нягледзячы на ​​тое, што з'яўляецца пінболам Доктара Хто, не такая ўжо і выдатная машына» Што????Доктар, які з'яўляецца выдатнай машынай, гэта не монстр-бэш або Чараўнік з краіны Оз, але гэта надзейная і любімая машына супольнасцю пінболаў

Я згодзен.З усіх пінболаў я гуляў у сотні пінболаў.На мой погляд, гуляць у Doctor Who нязменна самая цікавая.

Ух, гэта быў дурань... пасля таго, як я ўзламаў мясцовую машыну hackerspaces 1942, я таксама зрабіў нешта падобнае з машынай для пінбола, якую набыў.Гэта машына Williams Dr. Who.Я проста не выкарыстаў FPGA, але прыдумаў нешта з зашчапкамі, AVR (я думаю) і некаторым Linux SBC, які можа працаваць па бесправадной сувязі.

Акрамя таго, я не згодны з тым, што доктар Хто не такі вялікі.На мой погляд, гэта вельмі добра для прайгравання.

Выкарыстоўваючы наш вэб-сайт і паслугі, вы адназначна згаджаецеся на размяшчэнне нашых файлаў cookie прадукцыйнасці, функцыянальнасці і рэкламы.Даведайцеся больш


Час размяшчэння: 29 жніўня 2019 г
Інтэрнэт-чат WhatsApp!