Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Recompiling MAME 0.103 (remove nag screens)  (Read 6737 times)

0 Members and 1 Guest are viewing this topic.

Turnarcades

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1973
  • Last login:May 13, 2017, 08:14:29 am
  • Craig @ Turnarcades
    • Turnarcades
Recompiling MAME 0.103 (remove nag screens)
« on: September 04, 2008, 08:44:13 pm »
OK, so I've searched everywhere and can't find a version of MAME 0.103 without nag screens, so I've tried to have a go at recompiling it and doing it myself.

From what I've read, there are convenient patches available to re-inject hi-score support and remove nag screens from later MAME versions, but I can't find one of these patches for 0.103. So I found this advice:
http://www.gameex.info/forums/index.php?s=f90ab7587d0ffd82da8013be8c6e6fe7&showtopic=3964&st=0&p=24068&#entry24068
which explains how to supposedly do it yourself. However, when I extract the MAME source the file it tells me to edit does not exist (src\emu\ui.c) as there is not even a src\emu folder.

I'm sure I could do it if I knew the correct sections to edit in this version but right now I'm at a loss. Can anyone help me along, or better still prepare a version for me (pretty please!!)??

Havok

  • Keeper of the __Blue_Stars___
  • Trade Count: (+17)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4530
  • Last login:June 22, 2025, 02:32:40 am
  • Insufficient facts always invite danger.
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #1 on: September 05, 2008, 02:58:49 am »

Turnarcades

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1973
  • Last login:May 13, 2017, 08:14:29 am
  • Craig @ Turnarcades
    • Turnarcades
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #2 on: September 05, 2008, 08:33:14 am »
Try this:

http://www.mameworld.net/mrdo/compile.html

Already been here, but it does not have any patches for 0.103 or give any info on how to manually edit the code to do what I want (remove the nag screens).

Razzer

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 116
  • Last login:June 26, 2020, 07:29:50 am
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #3 on: September 05, 2008, 09:11:48 am »

For this particular version (0.103) I think you have to look in "mame.c". Look for "void run_machine_core(void)"

This page has instruction for disabling the nag screen that could be adobted for this version.

http://homepage.mac.com/asaxton/mame/enhance.htm


Razzer

Turnarcades

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1973
  • Last login:May 13, 2017, 08:14:29 am
  • Craig @ Turnarcades
    • Turnarcades
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #4 on: September 05, 2008, 09:59:11 am »
For this particular version (0.103) I think you have to look in "mame.c". Look for "void run_machine_core(void)"

This page has instruction for disabling the nag screen that could be adobted for this version.

http://homepage.mac.com/asaxton/mame/enhance.htm

Thanks Razzer! I've done the specified change and am now on to recompiling using 'MAME Compiler 64'. It runs fine for 6 minutes, then it seems to have a problem when it is trying to compile 'input.c'. The compiling stops and I get this error in the compile output window:

Compiling src/windows/fronthlp.c...
Compiling src/windows/input.c...
src/windows/input.c: In function 'win_init_input':
Finished!
0 Hours 6 Minutes and 21 Seconds Elapsed.
src/windows/input.c:1031: error: 'DIDEVTYPE_KEYBOARD' undeclared (first use in this function)
src/windows/input.c:1031: error: (Each undeclared identifier is reported only once
src/windows/input.c:1031: error: for each function it appears in.)
src/windows/input.c:1042: error: 'DIDEVTYPE_MOUSE' undeclared (first use in this function)
src/windows/input.c:1057: error: 'DIDEVTYPE_JOYSTICK' undeclared (first use in this function)
mingw32-make: *** [obj/mame/windows/input.o] Error 1

I have not edited the file 'input.c' in any way, so what's going wrong?

u_rebelscum

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3633
  • Last login:April 21, 2010, 03:06:26 pm
  • You rebel scum
    • Mame:Analog+
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #5 on: September 05, 2008, 12:56:12 pm »
... have a problem when it is trying to compile 'input.c'. The compiling stops and I get this error in the compile output window:

Compiling src/windows/fronthlp.c...
Compiling src/windows/input.c...
src/windows/input.c: In function 'win_init_input':
Finished!
0 Hours 6 Minutes and 21 Seconds Elapsed.
src/windows/input.c:1031: error: 'DIDEVTYPE_KEYBOARD' undeclared (first use in this function)
src/windows/input.c:1031: error: (Each undeclared identifier is reported only once
src/windows/input.c:1031: error: for each function it appears in.)
src/windows/input.c:1042: error: 'DIDEVTYPE_MOUSE' undeclared (first use in this function)
src/windows/input.c:1057: error: 'DIDEVTYPE_JOYSTICK' undeclared (first use in this function)
mingw32-make: *** [obj/mame/windows/input.o] Error 1

I have not edited the file 'input.c' in any way, so what's going wrong?

Your compile is set up for current mame & directInput 8.0, while the error shows mame is expecting directInput 5.0-7.0.
Robin
Knowledge is Power

Turnarcades

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1973
  • Last login:May 13, 2017, 08:14:29 am
  • Craig @ Turnarcades
    • Turnarcades
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #6 on: September 05, 2008, 08:40:15 pm »
Thanks rebelscum. I tried version 0.103 and 0104 (completely unmodified) on this compiler and they both failed for the same reason, so I've now moved to 0.105, which compiles fine and is just one version behind the graphics re-write versions - phew!

The code I needed to change has moved from 'mame.c' into 'userintrf.c' but I think I've done it right. I will test this newly-recompiled 0.105 tonight and see if it works..... :dunno

Turnarcades

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1973
  • Last login:May 13, 2017, 08:14:29 am
  • Craig @ Turnarcades
    • Turnarcades
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #7 on: September 05, 2008, 10:19:51 pm »
Well I persevered and luckily managed to compile a version 0.105 with no nag screens whatsoever. For those thinking of doing it yourself on versions that don't have pre-made patches you first need to look for a section that mentions 'core game launching' or 'core cycle' (which is in the file 'mame.c' prior to mame 0.105 and in the file 'userintrf.c' in 0.105) and find a section that looks like this:

void run_machine_core(void)
{
   int settingsloaded;

   /* disable artwork for the start */
   artwork_enable(0);

   /* load the configuration settings now */
   settingsloaded = config_load_settings();

   /* we need to initialize the user interface before displaying anything */
   ui_init();

   /* if we didn't find a settings file, show the disclaimer */
//   if (settingsloaded || options.skip_disclaimer || ui_display_copyright(artwork_get_ui_bitmap()) == 0)
//   {
      /* show info about incorrect behaviour (wrong colors etc.) */
//      if (options.skip_warnings || ui_display_game_warnings(artwork_get_ui_bitmap()) == 0)
//      {
         /* show info about the game */
         if (options.skip_gameinfo || ui_display_game_info(artwork_get_ui_bitmap()) == 0)
         {
            /* enable artwork now */
            artwork_enable(1);

The double forward slashes shown in bold need to be added in front of the lines of code they are by. This basically makes MAME ignore the instructions after the slashes.

Razzer

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 116
  • Last login:June 26, 2020, 07:29:50 am
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #8 on: September 06, 2008, 02:46:27 am »
Well I persevered and luckily managed to compile a version 0.105 with no nag screens whatsoever.


Glad to hear you got it to work.

What is the advantage of using these older versions of MAME?

Razzer

Turnarcades

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1973
  • Last login:May 13, 2017, 08:14:29 am
  • Craig @ Turnarcades
    • Turnarcades
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #9 on: September 06, 2008, 11:30:26 am »
The post-0.106 versions of MAME (after the graphics re-write) limits the number of graphics options you can use on older PC's. You have to use a specific setting to get it to run at all (can't remember which one off the top of my head), butthat setting limits the use of filters and effects that I like to use. A lot of people did not notice because they either don't use the settings I do, or they use additional graphics cards, which I do not. The graphics options post-106 versions forces you to use also hampered performance on some of the low-end PC's I tested, compared with the pre-106 versions of MAME I tested.

DeLuSioNal29

  • Global Moderator
  • Trade Count: (+6)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 4779
  • Last login:June 24, 2025, 11:15:21 pm
  • Build the impossible -"There is no Spoon"
    • DeLuSioNaL's YouTube Videos
Re: Recompiling MAME 0.103 (remove nag screens)
« Reply #10 on: January 17, 2016, 10:56:37 am »
Hi all,

I'm reviving an old topic!  I am looking into re-compiling a nag free version of MAME 0.106 (32 bit command line version).  I already have all the roms for that version so I'd like to stick with this version if possible.  I'm running this on an older machine, and the plan is to run all of the Pacman game variants on this thing.  (Maybe Galaga too?   >:D ) Do you guys think the process is similar to the methods listed above?

P.S. - I recall doing it manually on an even older version of MAME for DOS (0.86) but that seems like ages ago and I can't seem to remember how to do it off of the top of my head.

Bonus:  I have the source code downloaded, but need to know which compiler to use that for the older versions of MAME (Anyone know if Headkaze's MAME compiler will work?)  I'm running a Windows 7 64-bit PC to compile, but it's for a 32-bit version of Window XP.  Worst case I can compile it on the actual Win XP 32 bit PC I will be running it on - But I'm hoping for a quicker CPU to compile it.  ;D  [Edit:  Version 117 of MAME compiler should work - I've already grabbed it]

Thanks in advance all!

D
« Last Edit: January 17, 2016, 11:35:21 am by DeLuSioNal29 »
Stop by my Youtube channel and leave a comment: