FPGA Jacked Into Pinball Machine Meistri Sgôr Uchel

Sut ydych chi'n cadw sgoriau uchel mewn hen gabinet arcêd wrth ddatgysylltu'r pŵer?A yw'n bosibl chwistrellu sgoriau uchel newydd i mewn i beiriant pinball?Roedd yn b-blot o bennod o Seinfield, felly mae'n rhaid ei bod yn werth ei wneud, gan arwain [matthew venn] i lawr twll cwningen FPGAs a mapiau cof i greu sgoriau uchel newydd mewn peiriant pinball.

Y peiriant dan sylw ar gyfer yr arbrawf hwn yw Doctor Who o Williams, sydd, er ei fod yn beiriant pinball Doctor Who, ddim mor wych â hynny o beiriant.Still, daleks.Mae'r peiriant hwn yn cael ei bweru gan Motorola 68B09E sy'n rhedeg ar 2MHz, gyda 8kB o RAM yn y cyfeiriad 0x0000.Mae'r RAM hwn wedi'i ategu gan ychydig o fatris AA, ac yn ffodus mae mewn soced DIP, gan ganiatáu [matthew] i greu bwrdd wedi'i lwytho i fyny gyda bwrdd datblygu FPGA sy'n mynd rhwng y CPU a RAM.

Daw'r dechneg sylfaenol ar gyfer rhyng-gipio ac ysgrifennu sgôr uchel newydd ar gyfer y peiriant pinball hwn gan yr anhygoel [ sprite_tm ] sy'n trydar sgoriau uchel o gabinet 1943.Mae'r syniad yn syml: dim ond i chi gael FPGA i edrych ar un cyfeiriad cof penodol, ac anfon rhywfaint o ddata i gyfrifiadur pan fydd y data yn y cyfeiriad hwnnw'n cael ei ddiweddaru.Ar gyfer peiriant pinball Doctor Who, mae hyn ychydig yn galetach nag y mae'n swnio: nid yw'r data'n cael ei storio mewn hecs, ond wedi'i bacio BCD.Ar ôl ychydig o waith, fodd bynnag, roedd [matthew] yn gallu ysgrifennu sgoriau uchel newydd o sgript Python yn rhedeg ar liniadur.Mae'r holl god (ac ychydig mwy o fanylion) drosodd ar Github

Nid yw ymestyn gemau arcêd trwy fanteisio ar linellau cyfeiriad a data yn rhywbeth rydyn ni'n gweld llawer ohono, ond mae wedi'i wneud, yn fwyaf enwog gydag Eglwys Robotron.Yma, mae ychydig o haciau MAME yn troi gêm o Robotron yn Eglwys i'r ffyddloniaid ymrwymo'n llawn i waredwr y byd, sydd i fod i gyrraedd mewn 66 mlynedd ac achub y bodau dynol sy'n weddill rhag yr apocalypse robotiaid.Mae'r darn hwn o beiriant pinball Doctor Who yn mynd y tu hwnt i fersiwn modded o MAME, ac os ydym byth yn mynd i wneud capel go iawn gyda gêm go iawn o Robotron, dyma'r technegau rydyn ni'n mynd i'w defnyddio.

Ychydig ddyddiau yn ôl roedd stori am ddefnyddio FRAM yn Sega Saturn i gadw arbedion gêm.Gallai'r un peth weithio yma hefyd.

Dr Who yw fy mheiriant, ond mewn gwirionedd dyma Bwer Tân fy ffrind Stuarrrt y gwnaethom roi cynnig ar hyn.Rwy'n meddwl y bydd yn gweithio ar fy un i ond mae'n rhaid i mi ddad-dorri'r SRAM yn gyntaf!

Mae gan y rhan fwyaf o'r gemau eu cod yn rhedeg allan o EPROMs.Defnyddiwch ddadansoddwr rhesymeg yn gwylio cyfeiriad, data a signalau rheoli i ddarganfod ble yn RAM mae'r sgoriau uchel yn byw, ac yna ysgrifennwch raglen fach fer i fewnosod y gwerth rydych chi ei eisiau yn yr ardal RAM.Llosgwch y rhaglen yn EPROM addas a'i chyfnewid am un gweithrediad.Yna disodli'r EPROM gwreiddiol fel bod y gêm yn ôl i normal.Mae'n cymryd ychydig o amser i'w weithredu, ond mae'n gweithio'n iawn.A na, nid wyf yn mynd i ddweud sut neu ble y gwiriais hyn:) .

Pam mynd trwy hyn i gyd i arbed sgôr uchel?Dim ond gosod NVRAM a chael ei wneud ag ef.Mae hynny'n ateb hawdd i holl fyrddau MPU Williams WPC.Beth sydd gyda'r llun?Nid yw hynny hyd yn oed yn MPU Doctor Who yn y llun.Mae'n fwrdd amnewid Rottendog MPU327-4 ar gyfer Williams 3,4,6.Mae ganddo NVRAM ac ni fydd byth yn colli ei gof.

Mae hwrdd y bwrdd mpu firepower ar gyfer yr ystod honno yn uned 256x4bit y maent yn dewis mynd i'r afael ag ef ar y nybble isaf a gadael y nybble uchaf wedi'i dynnu'n uchel - felly byddai'r stoc HSTD yn cael ei storio F5 F5 F0 F0 F0 F0.Byddai gan beiriannau peli pin cyfoes gwneuthurwr eraill i bŵer tân a oedd hefyd yn defnyddio'r hwrdd 5101 yr ​​un broblem, ond mae Bally (er enghraifft) yn dewis gwneud y nybble uchaf yn actif a gadael yr un isaf fel F.

Mae'n rhaid eu bod wedi cael RAM lled beit llawn rhywle yn y gofod cyfeiriad, fel arall ni allech wthio cyfeiriad ar y pentwr a dychwelyd ato.Roedd rhai systemau mewnosodedig eraill yr oeddwn i'n arfer gweithio arnynt yn defnyddio RAM nibble eang ond cymerodd ddau fynediad i nôl y beit llawn.Fodd bynnag, dim ond un beic bws a welodd y CPU.

Maen nhw'n gwneud.Mae'r cyfeiriad o $0000-$00FF yn lled llawn gyda naill ai 6810's neu 5114's neu mewn cyfuniad yn fewnol mewn 6802. Mae'r storfa nybble 5101 o $0100-$01FF ar gyfer y rhan â chefnogaeth batri gan ei fod yn rhan gofyniad pŵer is.

“sydd, er ei fod yn beiriant pinball Doctor Who ddim yn wych o beiriant” Beth???Meddyg sy'n beiriant gwych, nid yw'n bash anghenfil nac yn Wizard of oz, ond mae'n beiriant solet ac annwyl gan y gymuned pinball

Rwy'n cytuno.Allan o'r holl gannoedd pinball o beiriannau pinball rydw i wedi'u chwarae.Doctor Who yw'r mwyaf o hwyl i'w chwarae yn fy marn i.

Huh, roedd hwnnw'n mindfuck ... ar ôl i mi wneud y darn hwnnw ar y peiriant hackerspaces 1942 lleol, gwnes i hefyd rywbeth tebyg gyda'r peiriant pinball a gefais.Pa beiriant Williams Dr. Who.Wnes i ddim defnyddio FPGA ond fe wnes i chwipio rhywbeth gyda cliciedi, AVR (dwi'n meddwl) a rhywfaint o Linux SBC a allai wneud diwifr.

Hefyd, yr wyf yn anghytuno ar y Dr Who beidio â bod mor wych.Mewn gwirionedd mae'n eithaf braf ar gyfer replayability, yn fy marn i.

Trwy ddefnyddio ein gwefan a'n gwasanaethau, rydych chi'n cytuno'n benodol i osod ein cwcis perfformiad, ymarferoldeb a hysbysebu.Dysgu mwy


Amser post: Awst-29-2019
Sgwrs WhatsApp Ar-lein!