Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
MAME Debugging (mattgreer.dev)
132 points by jandeboevrie on Feb 5, 2024 | hide | past | favorite | 21 comments


I was recently working on getting Golang running on an N64[1]. While the hardware emulation was far from perfect, the easy to use debugger helped me a tremendous amount to get started.

[1]: See https://github.com/embeddedgo/go/pull/6 and https://github.com/clktmr/n64


MAME's debugger is pretty neat. Added to the fact that MAME supports most CPU types ever used in an arcade machine or computer and it's like having super powers.


Yes, the latter is worth mentioning more. Many people think MAME is just an emulator of arcade machines, but it really is an emulator of nearly everything with a CPU including classic home computers (even very obscure ones like the Mattel Aquarius), gaming consoles, UNIX workstations, and even handheld LCD games like the Game & Watch series. Of course with thousands of systems not everything completely works yet but it is still in active development despite being over 20 years since the project started.


Not to mention a variety of music synthesizers as well!


Of all the debuggers I've ever used, I'm most keen on the one that's part of openMSX as you can rewind time in the emulation with it to see how the registers and system ram came to have the values they do. It's been a while but can you rewind time with MAME's debugger these days?


Yes, there is a a rewind feature in the MAME debugger -- I haven't used openMSX so I don't know how similar the feature works.


> UNIX workstations

It has Sun 4/20 (and others) but it (they) don't seem to be in a good state yet.


For SGI computers (Specifically indy) it's the best/only good emulator right now, and Sony NEWS seems to be in good shape: https://www.youtube.com/watch?v=X2l39pndEJ4 , https://forums.bannister.org/ubbthreads.php?ubb=showflat&Num...

There are also more obscure UNIX systems like Apollo and Intergraph workstations: https://forums.bannister.org/ubbthreads.php?ubb=showflat&Num...

Good luck finding software to test them with though..


Apollo DomainOS install tapes and firmware dumps for some machines can be found on bitsavers: http://bitsavers.org/bits/Apollo/

Finding Intergraph stuff is much more difficult, though...


MAME is definitely one of the most interesting projects in emulation. Just the sheer amount of compatibility with old titles is amazing. The built-in tooling is great as well, didn’t realize they have Lua scripting available.


I remember playing MAME's first releases and how amazing it was to have Pacman and other classics emulated so well * on my very own PC *. It just gets better every release, and that it has been going on this long says a lot about the project.

Other emulators are often faster, but it is important to keep in mind that MAME is more a documentation project than anything. Emulation is just a Happy Accident. Other projects like MiSTer FPGA will refer to its code to get an understanding of how a machine works. Bugs they find get rolled back into MAME, and so it goes.


MAME's cheatinit is just like ye olden C64/Amiga Action Replay and Final Cartridge days.

Scan the RAM, die once in the game, scan again for decreased values, repeat until just one address left.

Then patch that address for unlimited lives.


I remember having cheats for thousands of games but they stopped working after to what was the latest version at the time. That was like 15 years ago. I have been playing without cheats ever since. It's a shame because some games don't work well with saves, and others are just hard to beat no matter how many lives i have.


LOSE A LIFE AND REFREEZE


Matt at it again, nice post! Make sure to check out his other posts if you get a chance, really enjoyed those as well.


i dont know why, but i thought puzzle bobble always had rotary control.... sure makes sense to add it in!

looking forward to replaying it in a new way :)


I still play quite a lot of Puzzle Bobble (and other Taito classics) on my Super Pocket. I'd love to try this!


What a great article; thanks for posting it. Too bad it didn't get more traction; hope it get posted again and gets more attention.


We put it in the second-chance pool (https://news.ycombinator.com/pool, explained at https://news.ycombinator.com/item?id=26998308), so it'll get a random placement on HN's front page.

All: if you see a great article that deserves a second chance, let us know at hn@ycombinator.com! It's best if it's just something interesting you randomly ran across. (People usually email asking for boosts for their own stuff, but that's a different conversation. What makes our eyes light up is if you just run across something HN-good.)


Thanks dang for doing it! Glad it worked out on the second-chance pool. And thanks for the tip; will keep in mind and email hn@ next time.


I am certainly glad you did that.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: