Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
09552 Plugins Major Always 2 days ago 4 hours ago
Tester Russell View Status Public Platform MAME (Official Binary)
Assigned To Resolution Open OS Windows (x64)
Status [?] Acknowledged Driver
Version 0.289 Fixed in Version Build x64
Fixed in Git Commit Github Pull Request #
Summary 09552: Lua cheat plugin rejects valid |= compound assignment in XML cheats
Description The Lua Cheat plugin cannot load an XML cheat action containing the MAME compound assignment operator like this one |=.
The same XML expression is accepted and executed correctly by MAME's regular built-in cheat engine. However, when the cheat is loaded through the Lua Cheat plugin, a pop-up error is displayed:
e.g.
<action>maincpu.pb@202A26 |= 01</action>
error cheat script error: "Compound assignment test" [string "Compound assignment testrun"]:1: unexpected symbol near '|'
Steps To Reproduce 1. Use an official MAME 0.289
2. Enable the Cheat Lua plugin.
https://www.mamecheat.co.uk/forums/viewtopic.php?t=14201
3. Place the XML example above in the configured cheat path as metamrph.xml
4. Start the game.
5. Open Plugin Options, then Cheat.
6. Observe the Lua compilation error near '|'.
Additional Information The relevant regular-expression implementation is:

https://github.com/mamedev/mame/blob/mame0289/src/emu/debug/express.cpp

The XML converter that does not currently expand |= is:

https://github.com/mamedev/mame/blob/mame0289/plugins/cheat/cheat_xml.lua

Edit:
In case it is helpful for investigating this issue, I have posted my modified cheat_xml.lua. The file adds tested conversion support for the complete compound-assignment family and several other commonly used MAME XML expressions and conditions. And sorry about duplicated reports.

https://www.mamecheat.co.uk/forums/viewtopic.php?p=29916#p29916
Github Commit
Flags
Regression Version
Affected Sets / Systems
Attached Files
 
Relationships
has duplicate 09553Closed Lua cheat plugin rejects valid |= compound assignment in XML cheats 
has duplicate 09555Closed Lua cheat plugin rejects valid |= compound assignment in XML cheats 
Notes
0
There are no notes attached to this issue.