registry = ipsRegistry::instance(); $this->settings =& $this->registry->fetchSettings(); } public function getOutput() { return; } public function replaceOutput($output, $key) { require_once( IPSLib::getAppDir('ibprobattle') . '/sources/battleHooks.php' ); $this->battleHook = new battleHooks( $this->registry ); return $this->battleHook->statsTopicView($output, $key); } } ?>registry = ipsRegistry::instance(); $this->settings =& $this->registry->fetchSettings(); } public function getOutput() { require_once( IPSLib::getAppDir('ibprobattle') . '/sources/battleHooks.php' ); $this->battleHook = new battleHooks( $this->registry ); return $this->battleHook->statsTopicViewJS(); } } ?> ARCADE 0.188 - Page 3 - ARCADE - 1Emulation.com

Jump to content

Welcome to 1Emulation.com
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account
Photo

ARCADE 0.188

- - - - -

  • Please log in to reply
45 replies to this topic

#23
demonkatze

demonkatze

    Newbie

  • Members+
  • 17 posts
  • Gender:Not Telling

Thank you as always Robbert and Mamesick!

About the bug that Chanbara said, I could test it on XP and 7 and reproduce it on both.

'gui/interface.ini' has no problem but 'ini/ui.ini' gets broken.
It happens in both 32 and 64 version ARCADE.

I tried various directory names like these:

C:\MAME Support\DATs	> NG
C:\MAME_Support\DATs	> NG
MAME Support\dats	> NG
C:\test\dats		> OK
c:\te st\dats		> OK
dats			> OK
dat s			> OK
test\dats		> OK
te st\dats		> OK
test\test\dats		> OK
test\test\test\dats	> NG
aaaaaaaaaa\dats		> OK
aaaaaaaaaaa\dats	> NG
datttttttttttts		> OK
dattttttttttttts	> NG

It seems that bug is caused by the number of characters regardless of whether '\', ':' or space is included.
I also tried double-byte characters and it was same result.
(over 16 bytes with single-byte characters?)
 

 

UPDATE:

 

After that, I also tested plain official MAME and MAMEUI.

In MAME, this bug didn't occur.

In MAMEUI, it's more broken. Even if you open the directory dialog and press [Cancel] without making any changes, it will crash. (Some directories are displayed as garbled characters)
In ARCADE, only broken historypath in UI.ini for some reason.

And at 0.187 this bug doesn't seem to happen in any MAME.
So it is certain that this happened with some change in 0.188.

This is the only thing that I can do but I hope this will help.
 


Edited by demonkatze, 02 August 2017 - 06:17 AM.


#24
mamesick

mamesick

    Member

  • Members+
  • 56 posts

This is really a good catch, demonkatze and looks to me a MAME core bug, because our INTERFACE.INI is ok, instead the core UI.INI that we use only for External DAT View gets corrupted. Curious thing, isn't it Robert? We use core functions to save both the files but it seems that UI_OPTS (UI.INI related options) are handled differently, or,  better I suspect that Nathan Woods changes in the options section of the core broken something. It should be tested with plain official MAME.

Chanbara aka Big Karnak, good news for you! Maybe it will  be fixed!



#25
Chanbara

Chanbara

    Novice

  • Members+
  • 22 posts
  • Gender:Male
  • Location:Greenland

Man, it's years I know you so don't take this suggestion in the wrong way but..... XP should go in the toilet today. It's been a very good OS but it's too outdated now.

 

I know, I agree.  I'm hoping to get a top-of-the-line PC in a few months for Christmas.   :christmas:

 

 

Chanbara aka Big Karnak, good news for you! Maybe it will  be fixed!

 

Thanks   :thumbsup1:



#26
Robert

Robert

    Alchemist

  • User Admin
  • 11,372 posts
  • Gender:Male
  • Location:Land of Oz
I tested here with current git with ARCADE32 and MAMEUI32 on my win7 64-bit dev box, and there were no corruptions or crash at all.

#27
Robert

Robert

    Alchemist

  • User Admin
  • 11,372 posts
  • Gender:Male
  • Location:Land of Oz
While playing with MAMEUI suddenly noticed weird stuff was happening, directories were getting corrupted. Checking further showed that any directory that could only have one entry was broken. Anyway just fixed it. It shouldn't have had any effect on the "ROMS" folder though, so I still don't know what could cause it to crash when Cancel pressed.

#28
mamesick

mamesick

    Member

  • Members+
  • 56 posts

I tested again ARCADE32 here at work with a laptop with WIN 10. I set a very long path, with spaces, slashes, etc. but my UI.INI didn't get corrupted. Is it a random thing? I cannot confirm the issue at the moment.



#29
demonkatze

demonkatze

    Newbie

  • Members+
  • 17 posts
  • Gender:Not Telling

I tried many times and it will definitely happen every time.
Strangely, at the time of change directory and closed ARCADE, UI.ini isn't broken yet.
Then it happen right after restart ARCADE.


Edited by demonkatze, 03 August 2017 - 06:02 AM.


#30
Robert

Robert

    Alchemist

  • User Admin
  • 11,372 posts
  • Gender:Male
  • Location:Land of Oz
MAME? not ARCADE?

What happens if you manually update ui.ini with a very long name. Does MAME or ARCADE corrupt it?

#31
Robert

Robert

    Alchemist

  • User Admin
  • 11,372 posts
  • Gender:Male
  • Location:Land of Oz

BTW. http://www.mameworld...=&Number=368427 so samples support is no longer needed :-)
 
BTW2. Is this http://www.mameworld...p?Number=368244 will break ARCADE32/64 ?

Sample support in toaplan2 has been removed.

The other change should not affect us much if at all. The only difference will be that startup will be slower because it has to check the status of not only the games, but all the attached devices as well.

#32
demonkatze

demonkatze

    Newbie

  • Members+
  • 17 posts
  • Gender:Not Telling

MAME? not ARCADE?

 

Oops, I'm sorry to wrote incorrectly.
It intended to write about ARCADE. (Corrected post #29)

As I wrote in post #23, it doesn't happen in official MAME and even ARCADE 0.187 or earlier.


What happens if you manually update ui.ini with a very long name. Does MAME or ARCADE corrupt it?

 

Yes, even if I manually rewrite historypath in UI.ini, When ARCADE is started, it is automatically replaced with the directory set in datafile_directory in INTERFACE.ini.

(and it's corrupted)

 

I also tried ARCADE 0.187 and replaced it the same way, but it isn’t corrupted.

(Maybe a problem has occurred during this replacement...?)


Edited by demonkatze, 03 August 2017 - 06:15 AM.


#33
mamesick

mamesick

    Member

  • Members+
  • 56 posts

So looks like the problem is here:

void OptionsInit(void)
{
	// setup our INI folder
	SetIniDir("ini");
	// gamelist creation
	game_opts.add_entries();
	// now load the options and interface settings
	LoadOptionsAndInterface();
	// setup directory for datafiles in the Internal UI
	SetDatsDir(GetDatsDir());
}

​Specifically, these seems have broken during 0.187-0.188 development cycle:

const char * GetDatsDir(void)
{
	return winui_opts.value(MUIOPTION_DATS_DIRECTORY);
}

void SetDatsDir(const char *path)
{
	winui_opts.set_value(MUIOPTION_DATS_DIRECTORY, path, OPTION_PRIORITY_CMDLINE);
	ui_opts.set_value(OPTION_HISTORY_PATH, path, OPTION_PRIORITY_CMDLINE);
	SaveInternalUI();	// ensure we store again the new dats dir for the core
}

I don't know what could happened, because all worked as expected in 0.187. Also, I'm still not able to reproduce this. My UI.INI didn't get corrupted and the value from INTERFACE.INI is correctly copied.

Mistery.






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users