Build Your Own Arcade Controls Forum

Main => Software Forum => Topic started by: wpcmame on September 24, 2004, 07:31:51 am

Title: Improved cheat system
Post by: wpcmame on September 24, 2004, 07:31:51 am
I made a cheat modification for my own cabinet. I submitted it to mame about a year ago but it wasn't accepted (didn't get a reply)

First the problems:
- My 6 year old son likes to play on the cabinet but he need cheats on some games and he is too young to use the menus himself.

- The mame cheat system includes a feature called "pre-loaded cheats". Pre-loaded cheats are activated immediatly when the cheatfile is loaded. Unfortuntly this doesn't work with most games since they will fail the RAM power-on test if cheats are enabled at startup. They also require you to edit the cheatfile manually.

- I got a rather old PC in the cabinet which means that it takes a long time (5-10) seconds to load the "official" cheatfile.

My solution:

I updated the cheat system to not load the cheatfile until it is used. That both improves the startuptime and allows me to specify "pre-loaded cheats" that work with all games. Now my son can just press "activate cheats" key (F6) which will load the cheatfile and activate all pre-loaded cheats.
I also made it possible to mark cheats as "pre-load" from the menus.
 
While I was updating the cheatfile I also made some other small changes:
1. A menuentry show if cheats are currently enabled or disabled
2. If you save a cheat it will be saved in the last cheatfile instead of the first. That way you can keep the "official" cheatfile untouched by just specifying "cheatfile=cheats.dat;mycheats.dat" and all new entries will be in mycheats.dat.

Since the change didn't make it into the official mame I thought I'd put the diff here if somone wants to include it in a custom build.
 
Title: Re:Improved cheat system
Post by: TheGatesofBill on September 24, 2004, 11:08:04 pm
Consider it on my todo list.
Title: Re:Improved cheat system
Post by: Dougmeister on September 27, 2004, 11:28:42 am
Nice.  Looking forward to this.