FPGA Di Pûanên Bilind ên Masterên Maşîna Pinball de Kete

Gava ku elektrîkê qut dikin hûn çawa di kabîneyek arcade ya kevn de puanên bilind diparêzin?Ma gengaz e ku meriv pûanên bilind ên nû di makîneyek pinballê de derxîne?Ew b-komploya episodek Seinfield bû, ji ber vê yekê pêdivî ye ku meriv hêjayî kirinê be, ku [matthew venn] berbi qulika kevroşkê ya FPGA û nexşeyên bîranînê vebike da ku di makîneyek pinballê de pûanên bilind ên nû biafirîne.

Makîneya ku ji bo vê ceribandinê tê pirsîn Doctor Who ji Williams e, ku her çend makîneyek pinballê ya Doctor Who be jî ne makîneyek ew qas mezin e.Dîsa jî, daleks.Ev makînek ji hêla Motorola 68B09E ve tê xebitandin ku li 2MHz, bi 8 kB RAM-ê li navnîşana 0x0000-ê tê xebitandin.Vê RAM-ê bi çend bataryayên AA-yê ve hatî piştgirî kirin, û bi bextewarî di soketek DIP-ê de ye, ku dihêle [matthew] panelek ku bi panelek pêşkeftinê ya FPGA-yê ku di navbera CPU û RAM-ê de derbas dibe ve hatî barkirin fabrîk bike.

Teknîka bingehîn ji bo navgirtin û nivîsandina xalek bilind a nû ya ji bo vê makîneya pinballê ji [sprite_tm] yê bêbawer tê ku ji kabîneyek 1943-an pûanên bilind tweet dike.Fikir hêsan e: Tenê FPGA li yek navnîşana bîranînê ya taybetî binêre, û gava ku daneya li wê navnîşanê were nûve kirin hin daneyan ji komputerê re bişînin.Ji bo makîneya pinballê ya Doctor Who, ev ji ya ku tê xuyangê hinekî dijwartir e: dane ne di hex de têne hilanîn, lê BCD-ya pakkirî ye.Lêbelê, piştî xebatek piçûk, [matthew] karîbû ji skrîptek Python ku li ser laptopê tê xebitandin notên bilind ên nû binivîse.Hemî kod (û çend hûrguliyên din) li ser Github qediyan

Berfirehkirina lîstikên arcade bi tikandina li ser rêzikên navnîşan û daneyê ne tiştek e ku em pir dibînin, lê ew hatîye kirin, ya herî navdar bi Dêra Robotron re.Li vir, çend hackên MAME lîstikek Robotron vediguherînin Dêrek ji bo dilsozan ku bi tevahî xwe bi Xilaskarê cîhanê ve girêbidin, ji ber ku di 66 salan de bigihîje û mirovên mayî ji apocalypse robot xilas bike.Ev hakkirina makîneya pinballê ya Doctor Who ji guhertoyek modêkirî ya MAME wêdetir diçe, û ger em ê çu carî bi lîstikek rastîn a Robotron re çapelek rastîn çêbikin, ev teknîkên ku em ê bikar bînin ev in.

Çend roj berê çîrokek li ser karanîna FRAM-ê li Sega Saturn ji bo parastina tomarên lîstikê hebû.Heman tişt dikare li vir jî bixebite.

makîneya min Dr Who ye, lê bi rastî ew Hêza Fire ya hevalê min Stuarrrt bû ku me ev ceriband.Ez difikirim ku ew ê li ser ya min bixebite lê divê ez pêşî SRAM-ê ji holê rakim!

Piraniya lîstikan koda wan ji EPROM-ê diqede.Analîzatorek mentiqî temaşekirina navnîşan, dane û nîşaneyên kontrolê bikar bînin da ku hûn fêr bibin ka di RAM-ê de pûanên bilind li ku dijîn, û dûv re bernameyek piçûk a kurt binivîsin da ku nirxa ku hûn dixwazin têxin qada RAM.Bernameyê di EPROM-ek maqûl de bişewitînin û ji bo yek darvekirinê biguhezînin.Dûv re EPROM-a orjînal biguhezînin da ku lîstik vegere rewşa normal.Ji bo bicîhkirinê hindik dem digire, lê baş dixebite.Û na, ez ê nebêjim ka min çawa û li ku derê ev piştrast kir:) .

Çima van hemîyan derbas bikin da ku rêjeyek bilind xilas bikin?Tenê NVRAMek saz bikin û pê re biqedin.Ew ji bo hemî panelên Williams WPC MPU çareseriyek hêsan e.Wêne çi ye?Ew ne wêneyek Doctor Who MPU ye jî.Ew ji bo Williams 3,4,6 panelek veguherînek Rottendog MPU327-4 e.Ew NVRAM heye û dê çu carî bîra xwe winda neke.

Ramê ya panela mpu ya firepower ji bo wê rêzê yekîneyek 256x4bit e ku wan hilbijart ku li ser nybble jêrîn navnîş bikin û nybble jorîn bilind bihêlin - ji ber vê yekê stok HSTD dê F5 F5 F0 F0 F0 F0 were hilanîn.Makîneyên pinball ên hevdem ên hilberîner ên din ên ji bo hêza agir ku di heman demê de ram 5101 jî bikar tînin dê heman pirsgirêk hebe, lê Bally (mînakek) hildibijêre ku nybble jorîn çalak bike û ya jêrîn wekî F bihêle.

Pêdivî ye ku wan li cîhek cîhê navnîşanê de RAMek bi firehiya baytê ya tevahî hebe, wekî din hûn nekarin navnîşek li ser stikê bixin û vegerin wê.Hin pergalên din ên pêvekirî yên ku min li ser dixebitî RAM-a nibble-ya fireh bikar anîn lê du gihîştinan girtin da ku baytek tevahî bistînin.Lêbelê CPU tenê çerxek otobusê dît.

Ew dikin.Navnîşana ji $0000-$00FF bi tevahî firehiya 6810-an an 5114-an e an jî bi hev re di hundurê 6802-ê de ye. Depoya nybble ya 5101 ji $0100-$01FF ji bo beşa pişta bateriyê ye ji ber ku ew beşek hewcedariya hêza kêmtir e.

"ku, tevî ku makîneya pinballê ya Doctor Who ne makîneyek ew qas mezin e" Çi????Doktorê ku makîneyek mezin e, ew ne cinawirek an sêrbazê oz e, lê ew makîneyek zexm û hezkirî ye ji hêla civata pinball ve.

Ez razî me.Ji hemû pinbolê bi sedan makîneyên pinbolê yên ku min lîstine.Doctor Who li gorî min domdarî lîstika herî xweş e.

Huh, ew hiş bû… piştî ku min ew hack li ser makîneya hackerspace ya herêmî 1942 kir, min bi makîneya pinballê ya ku min bi dest xistî re jî tiştek wusa kir.Ku makîneyeke Williams Dr.Min tenê FPGA bikar neanî, lê tiştek bi dendikan, AVR (ez difikirim) û hin Linux SBC-ya ku dikaribû bêtêlê bike qamç kir.

Di heman demê de, ez li ser Dr. Kî ne ew qas mezin e li hev nakim.Bi rastî, bi dîtina min, ew ji bo dubarebûnê pir xweş e.

Bi karanîna malper û karûbarên me, hûn eşkere bi cîhkirina performansa me, fonksiyonel û cookiesên reklamê razî dibin.Bêtir hîn bibin


Dema şandinê: Îlon-02-2019
WhatsApp Online Chat!