FPGA wbite w wysokie wyniki w Pinball Machine Masters

Jak zachować wysokie wyniki w starej szafce arkadowej po odłączeniu zasilania?Czy możliwe jest wprowadzenie nowych rekordów do automatu do gry w pinballa?To była fabuła odcinka Seinfielda, więc warto to zrobić, prowadząc [matthew venn] do króliczej nory układów FPGA i map pamięci, aby stworzyć nowe wysokie wyniki w maszynie do pinballa.

Maszyna, o której mowa w tym eksperymencie, to Doctor Who z Williamsa, który pomimo tego, że jest maszyną do pinballa Doctor Who, nie jest tak świetną maszyną.Mimo wszystko, Daleki.Ta maszyna jest zasilana przez Motorolę 68B09E działającą z częstotliwością 2 MHz, z 8kB pamięci RAM pod adresem 0x0000.Ta pamięć RAM jest wspierana kilkoma bateriami AA i na szczęście znajduje się w gnieździe DIP, pozwalając [matthew] na wymyślenie płyty załadowanej płytą rozwojową FPGA, która znajduje się między procesorem a pamięcią RAM.

Podstawowa technika przechwytywania i zapisywania nowych rekordów dla tego automatu do gry w pinballa pochodzi od niesamowitego [sprite_tm], który tweetuje z najlepszymi wynikami z szafki z 1943 roku.Pomysł jest prosty: wystarczy, że FPGA spojrzy na jeden konkretny adres pamięci i wyśle ​​dane do komputera, gdy dane pod tym adresem zostaną zaktualizowane.W przypadku maszyny do pinballa Doctor Who jest to nieco trudniejsze niż się wydaje: dane nie są przechowywane w postaci szesnastkowej, ale w formacie BCD.Jednak po odrobinie pracy [matthew] był w stanie napisać nowe najlepsze wyniki ze skryptu Pythona działającego na laptopie.Cały kod (i kilka innych szczegółów) jest skończony na Github

Rozszerzanie gier zręcznościowych przez dotykanie linii adresowych i danych nie jest czymś, co często widzimy, ale zostało to zrobione, najbardziej znane z Church of Robotron.Tutaj kilka hacków MAME zamienia grę Robotron w Kościół, w którym wierni mogą w pełni poświęcić się zbawicielowi świata, który ma przybyć za 66 lat i uratować pozostałych ludzi przed apokalipsą robotów.Ten hack maszyny do pinballa Doctor Who wykracza poza zmodyfikowaną wersję MAME, a jeśli kiedykolwiek zamierzamy stworzyć prawdziwą kaplicę z prawdziwą grą w Robotron, to są to techniki, których użyjemy.

Kilka dni temu pojawiła się historia o używaniu FRAM w Sega Saturn do zachowania zapisów gry.To samo może działać tutaj.

moja maszyna to Dr Who, ale tak naprawdę wypróbowaliśmy to Siłę Ognia mojego kumpla Stuarrrta.Myślę, że zadziała na moim, ale najpierw muszę odlutować SRAM!

W większości gier w kodzie brakuje pamięci EPROM.Użyj analizatora logicznego obserwującego adres, dane i sygnały sterujące, aby dowiedzieć się, gdzie w pamięci RAM znajdują się wysokie wyniki, a następnie napisz krótki program, który wstawi żądaną wartość do obszaru pamięci RAM.Wypal program do odpowiedniego EPROM-u i zamień go na jedno wykonanie.Następnie wymień oryginalny EPROM, aby gra wróciła do normy.Wdrożenie zajmuje trochę czasu, ale działa dobrze.I nie, nie powiem, jak i gdzie to zweryfikowałem:) .

Po co przechodzić przez to wszystko, aby zachować wysoki wynik?Po prostu zainstaluj NVRAM i skończ z tym.To łatwe rozwiązanie dla wszystkich płyt MPU Williams WPC.Co jest ze zdjęciem?To nawet nie jest na zdjęciu Doctor Who MPU.Jest to płyta zastępcza Rottendog MPU327-4 dla Williamsa 3,4,6.Ma NVRAM i nigdy nie straci pamięci.

Taran płyty mpu siły ognia dla tego zakresu to jednostka 256x4bit, którą postanowili zaadresować na dolnym nybble i pozostawić górny nybble wysoko – tak, aby standardowe HSTD było przechowywane F5 F5 F0 F0 F0 F0.Inne współczesne maszyny do pinballa producenta, które również używały tarana 5101, miałyby ten sam problem, ale Bally (na przykład) zdecydował się aktywować górną część, a dolną pozostawić jako F.

Musiały mieć gdzieś w przestrzeni adresowej pamięć RAM o pełnej szerokości bajtu, w przeciwnym razie nie można by umieścić adresu na stosie i wrócić do niego.Niektóre inne systemy wbudowane, na których pracowałem, wykorzystywały szeroką pamięć RAM, ale wymagały dwóch dostępów, aby pobrać pełny bajt.Procesor widział jednak tylko jeden cykl magistrali.

Robią.Adres od $0000-$00FF jest pełnej szerokości z 6810 lub 5114 lub w połączeniu wewnętrznie w 6802. Pamięć 5101 nybble od 0100 $ do 01FF jest przeznaczona dla części podtrzymywanej bateryjnie, ponieważ jest to część o niższym poborze mocy.

„Która, mimo że jest maszyną do pinballa Doctor Who, nie jest taką świetną maszyną” Co????Doktor, który jest świetną maszyną, nie ma potworów ani Czarnoksiężnika z Oz, ale jest solidną i ukochaną maszyną przez społeczność pinballa

Zgadzam się.Ze wszystkich flipperów setki automatów do gry w pinball, na których grałem.Doctor Who jest moim zdaniem najzabawniejszym do grania.

Huh, to było bzdury… po tym, jak zrobiłem ten hack na lokalnej maszynie hakerspaces 1942, zrobiłem też coś podobnego z maszyną do pinballa, którą kupiłem.To jest maszyna Williamsa Dr. Who.Po prostu nie używałem FPGA, ale ubiłem coś z zatrzaskami, AVR (chyba) i trochę Linux SBC, który mógł działać bezprzewodowo.

Również nie zgadzam się, że Dr. Who nie jest tak wspaniały.Moim zdaniem jest całkiem fajny, jeśli chodzi o powtarzalność.

Korzystając z naszej strony internetowej i usług, wyrażasz zgodę na umieszczanie przez nas plików cookies wydajnościowych, funkcjonalnych i reklamowych.Ucz się więcej


Czas publikacji: 29.08.2019
Czat online WhatsApp!