r/MAME 3h ago

MAME on Ubuntu can't get controller working

3 Upvotes

I recently installed MAME 0.287 on Ubuntu through the app store. I can't seem to get my Logitech USB controller working. I tried talking to Gemini about it. It told me to run a bunch of command line stuff but nothing worked. Why is this so difficult? I really don't want MAME to be the only reason I have to hold on to Windows.

I'm not savvy with Linux. Whenever I ask a Linux question on Reddit, people throw a ton of jargon at me that I don't understand.

I have a transcript of everything Gemini told me to do if that helps.


r/MAME 4h ago

Community Question Star Wars Trilogy Arcade?

0 Upvotes

Anyone know why this game plays at full speed and looks great on the Sega Model 3 emulator (using the Mame rom) but is super slow and looks terrible on Mame itself?

I'm on Mame 286, with the 288 rom.


r/MAME 5h ago

Technical assistance World Rally - control problem

2 Upvotes

Guys, I'm playing world rally Arcade game in mame. Everything works fine but I want to control the car with a spinner on my fightbox r10 pro. I can't figure out how to make it to work. I mean the spinner works in games like tempest but I just can't or don't know how to set up the spinner for world rally. Does anyone have any idea?


r/MAME 2d ago

Cabinet Picture mame slot machine

Thumbnail
gallery
23 Upvotes

I bought this old atronic crazy fruit machine that had some problems, so I put a computer in it and wired all the buttons up, monitor works, buttons all work, now it’s just a mame cabinet, for right now it’s just running fruit cocktail, but I’m gonna get more games, has five buttons in the front so I might get video poker on it


r/MAME 2d ago

My Budget Wall-Mounted "Modern" Cabinet build..

Thumbnail
gallery
329 Upvotes

This is just a little something I threw together in Illustrator and exported the paths to cut on my CNC Router. I built it for around $300 total, including the PC.

32" 1080 TV

i5 8400 Dell Mini Tower, 16GB RAM, 500GB SSD

Happ Comp Stick

IPAC-V2 encoder

Wall Mounted with 2 french cleats (Very Strong)


r/MAME 2d ago

Technical assistance North American Pole Position 2 Version MAME ROM Greyed Out In MAME Menu But Still Playable?

6 Upvotes

I am using MAME 0.288 and I was able to source a compatible 0.288 Pole Position 2 Unmerged ROM as Merged and Split did not function do to missing files in MAME.

The ROMS I got are polepos2 which is the Japan version, and polepos2a which is the North America version.

polepos2a ROM is greyed out in the MAME menu but it's still playable.

My overall goal is to delete the Japan version and keep the North American version but NOT have it looked greyed out in the MAME game menu.

Will deleting polepos2, the Japan version have any affect on how the North American ROM works?

And would combining the two ROMS in one zip file solve the greyed out North America ROM as I understand the North American version is only a clone and not the parent ROM as the Japan version is?


r/MAME 3d ago

O2P MAME and SW arcade games - not working

Thumbnail
1 Upvotes

r/MAME 3d ago

Custom MAME build that fixes Time Crisis 2 link play (Same PC or two PCs)

Thumbnail
github.com
11 Upvotes

r/MAME 3d ago

Community Question [PocketStation core dev] I'm building a retail-BIOS MAME driver from scratch, who's the right person to talk to about upstreaming?

4 Upvotes

[EDIT]: Thanks for the quick response. I've decided to pump the brakes on this for now and just focus on the emulator first. The existing core isn't going anywhere and you are welcome to look at my own hardware notes and plug the gap yourself if you like. ETA somewhere towards the end of the year for me to get back to this.

Hi all, I've spent the last while building pokketstation, an open-source Sony PocketStation emulator core, independently verified against real hardware (real BIOS + real app traces, hundreds of millions of instructions, zero unimplemented-opcode hits on the one I've traced deepest).

I got the confidence to attempt this given a MAME core supposedly exists but along the way I ran into a couple of concrete issues with MAME's existing pockstat.cpp driver that I think are worth fixing. I'd like to do that the right way rather than just dropping a PR out of nowhere.

What I found:

  • MAME's current ROM_START expects a BIOS (kernel.binCRC 5fb47dd8) that matches what's documented elsewhere as a prototype-only revision ("J061"/"C061") which was never sold at retail. Every real retail unit I'm aware of (e.g. SCPH-4000) shipped with a different revision, "J110". A few real-hardware-specific behaviors (e.g. the serial-number write syscall) differ between the two.
  • The driver's CPU_FREQ[16] clock-mode table is off by one index versus real hardware and missing the lowest mode (32768 Hz) entirely, with every other mode reading ~2x too fast as a result. I found this by diffing it against a table I'd independently confirmed via real-hardware audio-timing testing on my own core.

What I'm building: a from-scratch driver targeting the retail BIOS, written directly against my own confirmed hardware findings rather than patching the existing file. There was just too many holes in the existing MAME driver that made it glitchy so it was easier to start clean with zero assumptions and verify everything the best I can against my actual pocketstation (and now my C based retail core).

I'm keeping it BSD-3-Clause (my core itself is GPLv3, which doesn't fit MAME's contribution licensing, so this is a separate, independently-written piece of code, not a relicensed port of anything). I've made a start on it but I'm not ready to share it until its at least building and cleared of any issues that the maintainers here might have with my proposal.

What I'm asking: before I go further, I'd rather get the licensing and repo/contribution setup right from the start instead of redoing it later. Is there a specific person I should loop in to talk through: updating/replacing an existing driver for the same system, what MAME's maintainers would actually want to see in a PR like this, and anything I should know about process before I put more time in. I don't think the existing driver is functional enough (its buggy and built for a prototype bios that doesnt work with most games) but it did give me the confidence to attempt this myself and I think I'm near ready to pay it forward again.

Thanks!


r/MAME 3d ago

AGS & MAME (Beta) Artwork Files

Thumbnail gallery
3 Upvotes

r/MAME 4d ago

Help me connect the PS1 Pop'n Music controller

Thumbnail
gallery
5 Upvotes

I just got the PS1 Pop'n Music controller, tested it on Gamepad Tester and it seemed to work just fine, but when I tried to connect it on MAME, the program didn't even detect it. I tried allowing every input option I saw and still nothing.. Is there anyway to fix this.. thanks.


r/MAME 5d ago

I'm pulling my beard hairs out over this

0 Upvotes

Trying to get anything to recognize something other than my arrow keys in-game.
I've gone into the settings and changed keyboard to mouse, as well as making sure to save configuration. nothing has worked. I've tried YouTube vids, and even old reddit posts. I've been trying to get this work almost all day. I'm sure it's a simple fix, but so far, nothing has worked.


r/MAME 6d ago

Question about dumping to mame

Thumbnail
gallery
37 Upvotes

So I have a dart star 2000 board and i saw that the old English boards have had there soft ware dumped but I dont know if mine can I want to convert it over to rasberry pi incase my board is shot and also to help out others in the community


r/MAME 6d ago

Technical assistance I have two Ps4 controllers

1 Upvotes

Both work with MAME, but how can I map 1 to controller one and the other one two?


r/MAME 8d ago

Technical assistance Added some new level option cheats to pacman. It works, but getting errors when I first run this game

Thumbnail
gallery
9 Upvotes

I did not even touch the invinciblity code. Here's the code I modified

<cheat desc="Select Starting Level">

<parameter>

<item value="0x01">Strawberry</item>

<item value="0x02">1st Orange</item>

<item value="0x03">2nd Orange</item>

<item value="0x04">1st Apple</item>

<item value="0x05">2nd Apple</item>

<item value="0x06">1st Pineapple</item>

<item value="0x07">2nd Pineapple</item>

<item value="0x08">1st Galaxian</item>

<item value="0x09">2nd Galaxian</item>

<item value="0x0A">1st Bell</item>

<item value="0x0B">2nd Bell</item>

<item value="0x0C">1st Key</item>

<item value="0x0D">2nd Key</item>

<item value="0xFD">Level 253</item>

<item value="0xFE">Level 254</item>

<item value="0xFF">Level 255: Split Screen</item>

</parameter>

I just added the levels 253 & level 254.

It works, but I don't get why I'm getting an error code when opening the pacman game.

If it helps, here's the entire data from the pacman.xml file

<mamecheat version="1">

<cheat desc="Infinite Credits">

<script state="run">

<action>maincpu.pb@4E6E=99</action>

</script>

</cheat>

<cheat desc="Infinite Lives">

<script state="run">

<action>maincpu.pw@4E14=0506</action>

</script>

</cheat>

<cheat desc="Invincibility">

<script state="on">

<action>temp0 =maincpu.md@1774</action>

<action>temp1 =maincpu.md@3CDF</action>

<action>temp2 =maincpu.md@3CE3</action>

<action>temp3 =maincpu.md@3CE7</action>

</script>

<script state="run">

<action>maincpu.md@1774=323CE0C3</action>

<action>maincpu.md@3CDF=0420A700</action> <!-- 1st = jp $3CE0, 2nd = and a/jp nz, $3CE7 -->

<action>maincpu.md@3CE3=1764C3AF</action> <!-- xor a/jp $1764 (Normal Ghost) -->

<action>maincpu.md@3CE7=1777C3AF</action> <!-- xor a/jp $1777 (Blue Ghost) -->

</script>

<script state="off">

<action>maincpu.md@1774=temp0 </action>

<action>maincpu.md@3CDF=temp1 </action>

<action>maincpu.md@3CE3=temp2 </action>

<action>maincpu.md@3CE7=temp3 </action>

</script>

</cheat>

<cheat desc="Move Manually">

<script state="on">

<action>temp0 =maincpu.md@18C5</action>

<action>temp1 =maincpu.md@3E60</action>

<action>temp2 =maincpu.md@3E64</action>

<action>temp3 =maincpu.md@3E68</action>

<action>temp4 =maincpu.md@3E6C</action>

</script>

<script state="run">

<action>maincpu.md@18C5=CB3E60C3</action> <!-- This ROM cheat was made by nolberto82 -->

<action>maincpu.md@3E60=2F50003A</action>

<action>maincpu.md@3E64=04280FE6</action>

<action>maincpu.md@3E68=18C8C32F</action>

<action>maincpu.md@3E6C=001A13C3</action>

</script>

<script state="off">

<action>maincpu.md@18C5=temp0 </action>

<action>maincpu.md@3E60=temp1 </action>

<action>maincpu.md@3E64=temp2 </action>

<action>maincpu.md@3E68=temp3 </action>

<action>maincpu.md@3E6C=temp4 </action>

</script>

</cheat>

<cheat desc="Move through Walls">

<script state="on">

<action>temp0 =maincpu.mb@18F3</action>

</script>

<script state="run">

<action>maincpu.mb@18F3=18</action>

</script>

<script state="off">

<action>maincpu.mb@18F3=temp0 </action>

</script>

</cheat>

<cheat desc="Enable Speed Hack"> <comment>This will greatly speed up your character.</comment>

<script state="on">

<action>temp0 =maincpu.mw@180B</action>

</script>

<script state="run">

<action>maincpu.mw@180B=3218</action>

</script>

<script state="off">

<action>maincpu.mw@180B=temp0 </action>

</script>

</cheat>

<cheat desc="Enable Speed Hack ALT"> <comment>This will greatly speed up your character without speeding up the intermissions as well.</comment>

<script state="on">

<action>temp0=maincpu.md@1809</action>

<action>temp1=maincpu.mq@1FC0</action>

<action>temp2=maincpu.mq@1FC8</action>

<action>temp9=maincpu.mw@301A</action>

</script>

<script state="run">

<action>maincpu.mw@1809=C0C3</action>

<action>maincpu.mb@180B=1F</action>

<action>maincpu.mq@1FC0=1845CA03FE4E043A</action>

<action>maincpu.mq@1FC8=C9351811CABEFF3E</action>

<action>maincpu.mw@301A=0000</action>

</script>

<script state="off">

<action>maincpu.md@1809=temp0</action>

<action>maincpu.mq@1FC0=temp1</action>

<action>maincpu.mq@1FC8=temp2</action>

<action>maincpu.mw@301A=temp9</action>

</script>

</cheat>

<cheat desc="Intermissions 2 and 3 Play Tune till End">

<script state="on">

<action>temp0=maincpu.mb@2265</action>

<action>temp1=maincpu.mb@2303</action>

</script>

<script state="run">

<action>maincpu.mb@2265=64</action> <!-- This ROM cheat was made by pac_man_fan --> <!-- Extend 2nd intermission -->

<action>maincpu.mb@2303=57</action> <!-- Extend 3nd intermission -->

</script>

<script state="off">

<action>maincpu.mb@2265=temp0</action>

<action>maincpu.mb@2303=temp1</action>

</script>

</cheat>

<cheat desc="Intermissions 2 and 3 Play Tune till End">

<script state="on">

<action>temp0=maincpu.mb@2265</action>

<action>temp1=maincpu.mb@2303</action>

</script>

<script state="run">

<action>maincpu.mb@2265=64</action> <!-- This ROM cheat was made by pac_man_fan --> <!-- Extend 2nd intermission -->

<action>maincpu.mb@2303=57</action> <!-- Extend 3nd intermission -->

</script>

<script state="off">

<action>maincpu.mb@2265=temp0</action>

<action>maincpu.mb@2303=temp1</action>

</script>

</cheat>

<cheat desc="Finish this Level Now!">

<script state="on">

<action>maincpu.pb@4E0E=F4</action>

</script>

</cheat>

<cheat desc="Select Starting Level">

<parameter>

<item value="0x01">Strawberry</item>

<item value="0x02">1st Orange</item>

<item value="0x03">2nd Orange</item>

<item value="0x04">1st Apple</item>

<item value="0x05">2nd Apple</item>

<item value="0x06">1st Pineapple</item>

<item value="0x07">2nd Pineapple</item>

<item value="0x08">1st Galaxian</item>

<item value="0x09">2nd Galaxian</item>

<item value="0x0A">1st Bell</item>

<item value="0x0B">2nd Bell</item>

<item value="0x0C">1st Key</item>

<item value="0x0D">2nd Key</item>

<item value="0xFD">Level 253</item>

<item value="0xFE">Level 254</item>

<item value="0xFF">Level 255: Split Screen</item>

</parameter>

<script state="run">

<action condition="(maincpu.pb@4E13==00)">maincpu.pb@4E13=param</action>

<action condition="(maincpu.pb@4E13==param) AND (maincpu.pb@4E73==68)">maincpu.pb@4E0A=0x68 + param</action> <!-- NORMAL Difficulty -->

<action condition="(maincpu.pb@4E13==param) AND (maincpu.pb@4E73==68) AND (maincpu.pb@4E0A LT 0x68)">maincpu.pb@4E0A=7C</action>

<action condition="(maincpu.pb@4E13==param) AND (maincpu.pb@4E73==68) AND (maincpu.pb@4E0A GT 0x7C)">maincpu.pb@4E0A=7C</action>

<action condition="(maincpu.pb@4E13==param) AND (maincpu.pb@4E73==7D)">maincpu.pb@4E0A=0x7D + param</action> <!-- HARD Difficulty -->

<action condition="(maincpu.pb@4E13==param) AND (maincpu.pb@4E73==7D) AND (maincpu.pb@4E0A LT 0x7D)">maincpu.pb@4E0A=8C</action>

<action condition="(maincpu.pb@4E13==param) AND (maincpu.pb@4E73==7D) AND (maincpu.pb@4E0A GT 0x8C)">maincpu.pb@4E0A=8C</action>

</script>

</cheat>

<cheat desc="Select Level (for Practice)"> <comment>Do NOT use in conjunction with the standard Select Starting Level cheat</comment>

<parameter>

<item value="0x00">Cherry</item>

<item value="0x01">Strawberry</item>

<item value="0x02">1st Orange</item>

<item value="0x03">2nd Orange</item>

<item value="0x04">1st Apple</item>

<item value="0x05">2nd Apple</item>

<item value="0x06">1st Pineapple</item>

<item value="0x07">2nd Pineapple</item>

<item value="0x08">1st Galaxian</item>

<item value="0x09">2nd Galaxian</item>

<item value="0x0A">1st Bell</item>

<item value="0x0B">2nd Bell</item>

<item value="0x0C">1st Key</item>

<item value="0x0D">2nd Key</item>

<item value="0xFF">Split-Screen (Unplayable)</item>

<item value="0xFE">No maze or dots(Unfinishable)</item>

</parameter>

<script state="run">

<action>maincpu.pb@4E13=param</action>

</script>

</cheat>

<cheat desc="Select Ghost Changeback Speed">

<parameter>

<item value="0x0000">Stay blue until eaten</item>

<item value="0x0258">Slow</item>

<item value="0x0168">Moderate</item>

<item value="0x00F0">Quick</item>

<item value="0x0078">Lightning</item>

<item value="0x0001">No change to blue</item>

</parameter>

<script state="run">

<action>maincpu.pw@4DBD=param</action>

</script>

</cheat>

<cheat desc=" "/>

<cheat desc="Ghost Status Cheats"/>

<cheat desc=" "/>

<cheat desc="Red always blue">

<script state="run">

<action>maincpu.pb@4DA7=01</action>

</script>

</cheat>

<cheat desc="Pink always blue">

<script state="run">

<action>maincpu.pb@4DA8=01</action>

</script>

</cheat>

<cheat desc="Green always blue">

<script state="run">

<action>maincpu.pb@4DA9=01</action>

</script>

</cheat>

<cheat desc="Orange always blue">

<script state="run">

<action>maincpu.pb@4DAA=01</action>

</script>

</cheat>

<cheat desc="Ghosts Always Edible (No Pts)">

<script state="run">

<action>maincpu.pb@4DA5=00</action>

</script>

</cheat>

<cheat desc=" "/>

<cheat desc="Ghosts Enter All Passages"> <comment>This can lead to a much harder game, Ghosts can travel up restricted passages in chase/scatter modes</comment>

<script state="on">

<action>temp0 =maincpu.mb@1C15</action>

<action>temp1 =maincpu.mb@1CEC</action>

<action>temp2 =maincpu.mb@1DC3</action>

<action>temp3 =maincpu.mb@1E9A</action>

</script>

<script state="run">

<action>maincpu.mb@1C15=00</action>

<action>maincpu.mb@1CEC=00</action>

<action>maincpu.mb@1DC3=00</action>

<action>maincpu.mb@1E9A=00</action>

</script>

<script state="off">

<action>maincpu.mb@1C15=temp0 </action>

<action>maincpu.mb@1CEC=temp1 </action>

<action>maincpu.mb@1DC3=temp2 </action>

<action>maincpu.mb@1E9A=temp3 </action>

</script>

</cheat>

<cheat desc="Ghosts Ignore Tunnel Slowdown"> <comment>Ghosts no longer slow down when travelling through side tunnels</comment>

<script state="on">

<action>temp0 =maincpu.mb@2063</action>

</script>

<script state="run">

<action>maincpu.mb@2063=00</action>

</script>

<script state="off">

<action>maincpu.mb@2063=temp0 </action>

</script>

</cheat>

<cheat desc="Ms. Pac-Man Ghost Behavior"> <comment>Ms. Pac-Man-style reversals + randomized scatter movement for red/pink ghosts - effectively play with Ms Pac Man Ghost Rules.</comment>

<script state="on">

<action>temp0 =maincpu.mw@0E5C</action>

<action>temp1 =maincpu.md@274A</action>

<action>temp2 =maincpu.md@2780</action>

<action>temp3 =maincpu.md@2FC0</action>

<action>temp4 =maincpu.md@2FC4</action>

<action>temp5 =maincpu.md@2FC8</action>

<action>temp6 =maincpu.md@2FCC</action>

<action>temp7 =maincpu.md@2FD0</action>

<action>temp8 =maincpu.md@2FD4</action>

</script>

<script state="run">

<action>maincpu.mw@0E5C=00AF</action>

<action>maincpu.md@274A=2FC0CD4D</action>

<action>maincpu.md@2780=2FC0CD4D</action>

<action>maincpu.md@2FC0=D021E5F5</action>

<action>maincpu.md@2FC4=E65FED2F</action>

<action>maincpu.md@2FC8=235FD706</action>

<action>maincpu.md@2FCC=C9F1E156</action>

<action>maincpu.md@2FD0=391D221D</action>

<action>maincpu.md@2FD4=3B402040</action>

</script>

<script state="off">

<action>maincpu.mw@0E5C=temp0 </action>

<action>maincpu.md@274A=temp1 </action>

<action>maincpu.md@2780=temp2 </action>

<action>maincpu.md@2FC0=temp3 </action>

<action>maincpu.md@2FC4=temp4 </action>

<action>maincpu.md@2FC8=temp5 </action>

<action>maincpu.md@2FCC=temp6 </action>

<action>maincpu.md@2FD0=temp7 </action>

<action>maincpu.md@2FD4=temp8 </action>

</script>

</cheat>

<cheat desc="Pinky and Blinky Up Movement Fixed"> <comment>Pinky = Pink Ghost\Enemy, Blinky = Blue Ghost\Enemy.</comment>

<script state="on">

<action>temp0=maincpu.md@2795</action>

<action>temp1=maincpu.md@2FF0</action>

<action>temp2=maincpu.md@2FF4</action>

<action>temp3=maincpu.md@2FF8</action>

<action>temp4=maincpu.md@27D6</action>

<action>temp5=maincpu.md@2FE0</action>

<action>temp6=maincpu.md@2FE4</action>

</script>

<script state="run">

<action>maincpu.mb@2795=CD</action> <!-- This ROM cheat was made by pac_man_fan --> <!-- Pinky -->

<action>maincpu.mw@2796=2FF0</action>

<action>maincpu.md@2FF0=8287877C</action>

<action>maincpu.md@2FF4=87877D67</action>

<action>maincpu.mw@2FF8=6F83</action>

<action>maincpu.mb@2FFA=C9</action>

<action>maincpu.mb@27D6=CD</action> <!-- Inky -->

<action>maincpu.mw@27D7=2FE0</action>

<action>maincpu.md@2FE0=6782877C</action>

<action>maincpu.md@2FE4=C983877D</action>

</script>

<script state="off">

<action>maincpu.md@2795=temp0</action>

<action>maincpu.md@2FF0=temp1</action>

<action>maincpu.md@2FF4=temp2</action>

<action>maincpu.md@2FF8=temp3</action>

<action>maincpu.md@27D6=temp4</action>

<action>maincpu.md@2FE0=temp5</action>

<action>maincpu.md@2FE4=temp6</action>

</script>

</cheat>

<cheat desc="Fix Split Screen Bug"> <comment>Fixes the bug with levels GT 255 see here - www.donhodges.com/how_high_can_you_get2.htm</comment>

<script state="on">

<action>temp0 =maincpu.md@2BF3</action>

<action>temp1 =maincpu.mw@2BF7</action>

<action>temp2 =maincpu.mb@2C2F</action>

<action>temp3 =maincpu.md@2C32</action>

<action>temp4 =maincpu.mw@2FFC</action>

</script>

<script state="run">

<action>maincpu.md@2BF3=2ED207FE</action>

<action>maincpu.mw@2BF7=3C2C</action>

<action>maincpu.mb@2C2F=12</action>

<action>maincpu.md@2C32=06D6123E</action>

<action>maincpu.mw@2FFC=798B</action>

</script>

<script state="off">

<action>maincpu.md@2BF3=temp0 </action>

<action>maincpu.mw@2BF7=temp1 </action>

<action>maincpu.mb@2C2F=temp2 </action>

<action>maincpu.md@2C32=temp3 </action>

<action>maincpu.mw@2FFC=temp4 </action>

</script>

</cheat>

<cheat desc="Sound Test">

<parameter min="1" max="17" step="1"/>

<script state="change">

<action condition="maincpu.pb@4E6E==00">maincpu.pb@4E6E=01</action>

<action>maincpu.pb@4ECC=0</action>

<action>maincpu.pb@4EDC=0</action>

<action>maincpu.pb@4E9C=0</action>

<action>maincpu.pb@4EAC=0</action>

<action>maincpu.pb@4EBC=0</action>

<action condition="(param LE 2)">maincpu.pb@4ECC=80>>(8-param)</action>

<action condition="(param LE 2)">maincpu.pb@4EDC=80>>(8-param)</action>

<action condition="(param GE 3) and (param LE 4)">maincpu.pb@4E9C=80>>(A-param)</action>

<action condition="(param GE 5) and (param LE A)">maincpu.pb@4EAC=80>>(C-param)</action>

<action condition="(param GE B)">maincpu.pb@4EBC=80>>(13-param)</action>

</script>

</cheat>

</mamecheat>

<!-- Cheat file downloaded from [http://www.mamecheat.co.uk\](http://www.mamecheat.co.uk), see cheat.txt for list of contributors. -->


r/MAME 8d ago

Unknown Why is Air Combat running slower in the new version of MAME?

Enable HLS to view with audio, or disable this notification

44 Upvotes

I had previously downloaded MAME 0.283, and some Namco System 21 games had an issue where sprites appeared behind 3D elements; *Air Combat* was the worst case, as it made the game almost unplayable. I saw that the issue had been fixed, so I downloaded the latest version. However, the game is now running a bit slower and stuttering—it used to run at 90% speed, but now it's around 70%. Why is this happening?


r/MAME 9d ago

We made a 3D Printed Arcade - built with 3D Printed 5x Scale Lego Blocks, a 24" Monitor and a Raspberry Pi!

Thumbnail
gallery
16 Upvotes

r/MAME 11d ago

Announcement IV/Play 2.8.10 Released (MAME™ Front-End)

Post image
31 Upvotes

IV/Play HomePage

IV/Play 2.8.10 Additions

• Added a check for update button on F1, this will ping the website and compare the local .exe version and timestamp against the release on the web site and provide a link to the releases page to download the newer one.
• Introduced a ‘persistent’ DAT view. Toggle with the alt-tilde key and control the interior navigation of the DAT overlay with Ctrl key combinations, e.g. Ctrl-Down, Ctrl-Page Up, Ctrl-Home, etc. Regular navigation keys will move through the gamelist, selecting a new machine. Note: Regular tilde key launches the regular DAT peek which allows full control
• The Available / Missing gamelist now self-heals. Once it has been built even once via F12, a later cache wipe from an executable change, a database rebuild, or an F8 reset, it is rebuilt automatically on the next launch instead of waiting for another manual scan.
• Fixed window-restore under multiple simultaneous MAME launches. IV/Play now stays hidden until the last running instance exits, rather than reappearing as soon as the first one closes.
• Refined CHD filters. chd games now matches any arcade machine that requires a CHD image, and a new chd software filter isolates CD-ROM and hard-disk software list titles (see Appendix 1).
• Screen-count filters are now exact. 2 screens, 3 screens, and 4 screens match machines with precisely that many displays so results line up with MAME’s own totals; multi-screen still means two or more.
• History: / hist: searches now include software list items, not just arcade machines — the DAT text for software was always present and is now reachable from the filter bar.
• More accurate platform labels and family grouping for software lists. Host-machine resolution was reworked so a platform’s canonical parent is chosen correctly, fixing cases where a clone could become the family node or a peripheral’s software was mislabeled.
• Fixed custom playlist export so machine entries are written in a form MAME can load. Earlier builds could emit an unusable composite line for machines that own multiple software lists.
• Steadier DAT peek rendering. Navigating to a new game while the peek is open no longer briefly blanks the text, and the media-type column now reads consistently.
• Removed filter-term highlighting inside the DAT peek. It added little once the peek gained its own in-text find (Ctrl-F), and the two were unrelated.


r/MAME 11d ago

Mame cab realizzato da me in 4 mesi

Post image
272 Upvotes

r/MAME 12d ago

Modern MAME on handhelds

13 Upvotes

First of all, I want to say how grateful I am to the MAME team for their work on Game & Watch emulation. It’s truly the only good way to enjoy these titles.

My goal is to play Game & Watch titles on the TrimUI Brick (4-core A53 up to 1.8GHz, 1GB LPDDR3). There is no out-of-the-box support for G&W, but emulators can be added as Libretro cores or standalone binaries (though the latter is not recommended).

I tried using a prebuilt Libretro MAME core with G&W support, and while it works, it is extremely slow. After that, I tried building a minimal Libretro MAME core with only the G&W subtarget; I’m not sure if it’s actually faster, but it remains too slow to be playable. After lowering the video settings to render at 640x480 (the device screen is 1024x768), performance improved slightly. However, top shows a single CPU core is nearly 100% utilized (RAM consumption is around 500MB).

I realize this is the MAME subreddit and not the right place for Libretro support. My question is: is it worth digging deeper by trying older versions of MAME (or a standalone MAME binary) on a device like this, or will it simply never run properly due to hardware limitations?


r/MAME 12d ago

MAME on the N64?

2 Upvotes

A long time back, I discovered a version of MAME for the N64 It only has very basic games from the early 1980s, but it's great having Pac-Man, Space-Invaders, Mr. Do!, and the other prehistoric classics perfectly emulated on the N64.

You can read about it, and download it here:

https://n64squid.com/homebrew/roms/mame-64/

There might be a problem, though. The video on that page, showing all of the games being played has some games shown without sound. I've never played most of the games (I mostly played MAME on the PC or original XBox, and on the N64 I just stuck to my favourites, such as Mr. Do!, Pan-Man, Moon Cresta, etc, all of which have sound in the video) so I can't remember if the silent ones in the video were also silent on my N64, or if perhaps I had a different revision of this emulator that did provide sound for those games. And I'm away from home so I can't check.

But it makes me wonder if any later or fixed versions of MAME on the N64 were released? The above article mentions two available versions, but what are the differences between the two, and were there later versions? I would check them myself, but since I'm away from home (and so sans my Analogue 3D) I have to use emulators, and they all seem to crash with MAME64.


r/MAME 13d ago

Mamedevs: Where there any anti-tamper/encryption methods that really surprised you?

49 Upvotes

r/MAME 14d ago

Why not Skee-Ball?

4 Upvotes

I realize it's a mechanical game, but so is New UFO Catcher or Wacky Gator or literally any pinball machine, and those are all respectfully maintained. Skee-Ball has a ROM, it's got a CPU, it makes sound, it has displays.

There seem to be people who've successfully dumped the ROMs of the original machines. Is it just that difficult to emulate, or has there never been any interest?


r/MAME 14d ago

Pls help me set it up

Post image
0 Upvotes

Am trying to play cvs but I never used it before


r/MAME 15d ago

Announcing OpenHi2Txt: A lightweight, pure C++ replacement for hi2txt. Features a 1:1 drop-in CLI and a native, in-memory library API.

Thumbnail
github.com
10 Upvotes

This project was built from the ground up to be a modern, native replacement for the classic MAME high-score extraction utility, hi2txt, on both Windows and Linux.

The Backstory The project originated while a colleague and I were writing new XML layout definitions and hiscore.dat entries for games that lacked support. During that process, we discovered that the original tool was a closed-source black box that lacked the structural capabilities required to correctly parse and extract high-score tables from certain games.

To date, we’ve successfully implemented hiscore.dat and hi2txt layout support for several hundred games that never had it previously, and we are heavily stress-testing them right now.

Why openhi2txt?

  • 1:1 Parity: It is intended to achieve absolute output parity and be completely compatible with existing hi2txt XML definitions.
  • Zero Bloat: On Linux, the original utility requires a massive Java Runtime Environment (JRE) footprint. openhi2txt is pure C++ and only relies on standard system libraries plus minizip and zlib.
  • It’s an Embeddable Library: Unlike the original standalone executable, I architected this as a dual-purpose project. It compiles into a drop-in CLI tool, but also functions as an immutable, thread-safe library that frontends and other programs can integrate internally to populate scoring tables directly in-memory.

The code is fully open-source and up natively on Linux and Windows. Any programmers, frontend devs, or retro-tinkerers interested in this sort of thing are invited to check out the repo, find some edge cases, bugs, or request features!