libretro / mame2003-plus-libretro Goto Github PK
View Code? Open in Web Editor NEWUpdated 2018 version of MAME (0.78) for libretro. with added game support plus many fixes and improvements
License: Other
Updated 2018 version of MAME (0.78) for libretro. with added game support plus many fixes and improvements
License: Other
Android user here. :) At the advice of @markwkidd I was instructed to open an issue that I opened at mame2003-libretro
here as well. I was able to get logs but sadly they seem perfectly normal to me and @markwkidd . I can't program or compile but as an active Android user, I'm more than willing to do any testing that needs to be done so long as someone is willing to walk me through whatever needs to be done.
I tested several roms, mostly Taito games, from the MAME 2003 non-merged reference set, on the Android version of RetroArch using the MAME2003 core. With the exception of bubsympu
and bublbob2
, these all get stuck on a blank screen, meanwhile the aforementioned two get stuck on a screen saying "Service Switch Error"
Upon further requested testing splatter
crashes RetroArch before it can successfully reach the title screen, and altbeast
doesn't have sound.
OS: Android 7.0 Nougat (32-bit)
RetroArch Version: 1.7.1
MAME 2003 Core Commit: a4f22ed
Device: Motorola Moto G5 Plus (32GB Model)
CPU: Qualcomm® Snapdragon™ 625 (64-bit, 2 GHz Octo-core)
GPU: Adreno 506 (650 MHz)
RAM: 2 GB
It's important to note that the affected roms load and play perfectly fine on both Lakka for Raspberry Pi 3B and RetroArch for Debian when using the MAME 2003 core.
The roms should load and play just fine.
The roms get stuck on a blank screen or "Service Switch Error" message. Upon further requested testing, Splatterhouse (rom name splatter
) crashes RA, and Altered Beast (rom name altbeast
) has no sound.
bubsympu
bublbob2
bublbobr
sailormn
zookeep
Arcade (MAME 2003)
coreVideo of problem, recorded with Google Play Games screen recorder: https://streamable.com/u5e1j
When using an affected rom: sailormn
RA_Android7_MAME2003-grep.txt
would it be possible to backport this title? I believe it's just a clone of 1943kai
Something in the new mustache.c
seems to be tripping up the ios compiler. Here are the logs: http://p.0bl.net/178797
OK, there is one more thing @Arcadez which I could use your help with regarding the libretro buildbot.
I am pretty sure first dash character '-' in the name is going to cause problems for some of the build scripts but I can't change the name of this repository. (And I don't really need the power to do so, normally.)
Are you willing to remove that? It is in the "Settings" menu
When creating a DAT in the MAME menu on the latest build the DAT is not created correctly ? It's asking to rename -
1943,1943j,1943kai,1943mii > exedexes
2020bb > 2020bbn
4in1 > batman2
8ball > cvs
etc.
There is a serious glitch for spiderman the video game on wii with retroarch 1.7.1
And if we watch this video, spiderman at 0:25 speak for couple of seconds, when playing that voice is missing....
https://www.youtube.com/watch?v=QVEH-i2qp8M
I try to speed it up with:
static MACHINE_DRIVER_START( system32 )
/* basic machine hardware */
//MDRV_CPU_ADD(V60, OSC_A/2/12) // Reality is 16.somethingMHz, use magic /12 factor to get approximate speed
MDRV_CPU_ADD(V60, 100000) // Reality is 16.somethingMHz, use magic /12 factor to get approximate speed
the intro of the game is now fine. Once in the game it is still very slow ...
Tested Arkanoid (US) (arknoidu). Player 2 is flipped horizontally by default (cocktail mode) but there seems to be no dip switch settings to correct the issue. Would it beneficial to set player 2 as an upright by default or at least enable dip switch settings to allow modification.
I am not sure if it's an issue but more just an observation. These 2 sets were in the original lr-mame2003 DAT but have been removed from Plus. After comparing the two DATs these are the only 2 that have been completely removed for some reason. The rest are 100% the same minus the updates and additions.
Grant would you add your scripts to this repo, maybe within the /tools
folder?
I had a few ideas in mind to contribute to making it more fully integrated with mame2003 and you reminded me earlier that it is very helpful for RetroPie users who can distinguish between working games and 'testing' games.
The following samples have been updated to support new and improved versions these
will replace the existing samples from mame2003 and can easily be found via Twistys MAME
samples site.
dkong
dkongjr
vanguard
These ones are new to this core and not supported in mame2003 again they can be
grabbed via Twistys site
cosmica
fantasy
sasuke
Well @Arcadez , mame2003-plus is starting to roll out onto RetroArch on about a dozen more platforms supported by the buildbot. Woo!
This should make it easy for you to try out some of those games with higher memory requirements on your own PC if you want to -- but either way we'll make sure to give them a try 👍 👍
D.D. Crew (ddcrew) boots but only shows weird color patterns. No input or coins work.
Edit: As of May 12, Brightness and Gamma Correction are implemented but not yet CPU Overclock
The RetroArch way is to do brightness and gamma is with shaders. Not always cool. So cores often keep their native functions for simple image quality manipulation like these.
Also there is some kind of variable CPU overclock option in MAME. To be explored
Should be easy to hook up some time. It would be interesting to know if they operate independently from the Backdrops, or whether these settings would affect the artwork too.
I've been thinking about this these past couple of days and i want to ask @markwkidd
or @grant2258 since your both doin such a good job on this core of late in light of this
i'd like to transfer ownership of the git across to one of ya's
I'll still have contributer status and might chip in with the odd fix and or improvement
from current MAME but apart from that i feel my work is done here and i cant really
be bothered continually having to deal with some of the petty politics and characters
that surround the libretro scene.
I gotta say In my opinion you guys will take this core futher than i ever could anyway.
let me know which one of ya's would like it and i'll put in motion you'll have to delete
your fork firstly and then i can pass it over
Regards
Maybe it's already explained somewhere in the docs, but couldn't find it.
How to install mame2003-plus under Retropie/ES?
Is a Pi3 compiled versions available for download ?
I would imagine best way to install is to create a "new system" in Emulation Station for "mame2003 plus" (basically with the same structure of existing "lr-mame" system but with dedicated runcommand) ; or would there be an additional option for the Arcade folder that allows, per ROM, selection of "mame2003 plus" as the core for that ROM ?
This is a note to myself, but also an encouragement to find any other games that can be made (more) playable by using the nvram loader to bypass some issue like rungun
.
I think the same process that I used to build hiscore.dat
into the core binary could be used to build in nvram patches like rungun.nv
directly into the mame2003-plus source so there is no need to script its deployment or even put a big annoying instruction on the screen like I did for rungun
.
It will be even easier than hiscore
because for that file I wanted to keep a 'source' file in the repository and have logic to update what is built into mame2003 in case people add hiscore memory maps for new games. For something like rungun
it would never be updated, so it can go directly into the source file and removed as rungun.nv
from metadata/nvram.
bin2c works by processing a binary file into a c-source character array that can be added to any source file. Seems like all I need to do is process rungun.nv
then add that data to rungun.c
. Then, unnder the same condition where I have the warning message now (ie no rungun.nv
found in the libretro save path in a subdirectory called nvram
) then load the copy of rungun.nv
that is stored as the array.
From that point on, the users own nvram file called rungun.nv
will be written to that path as usual with any changes based on their use of the game. In other words, the built-in character array data will only be used the first time the core is executed and only if there is not a nvram file already on disk in that location.
I may be able to modify my hiscore.dat
code to do this or if not it shouldn't be that much different.
Hi @grant2258 and @Arcadez -- a couple of the libretro developers are in the middle of updating this codebase in terms of Makefile and the standard libretro-common libraries.
If it's OK with you all, the three of us should wait to merge any new code until mame2003-plus is compiling again.
These could be annoying as they'll boot as a tiny slither of graphics across the centre of
the screen we used to change the display in our xbox MAME emulators to make the games
boot single screen.
We found a better way to do via a small aspect ratio display change in the driver similar deal
as with Tecmo Bowl it would be a doddle to set this up for this core should it be needed
unless you have a workaround already..??
games are..........
Darius
Darius 2 (dual screen)
Darius 2 (Triple Screen)
The Ninja Warriors
Warrior Blade - Rastan Saga Episode III
Just putting this here for now as by adding back in the darkmist driver there might be some build
errors around the t5182 sound reads and writes being defined in the memmaps in both darkmist.c
and mustache.c. although this throws up no errors when i compile a build on my target platform
which is the xbox.
Due to major changes to the memory and CPU code by MAME79 when i backport
anything from later MAME for starters i have to rework the memory and CPU handling
to align with the MAME78 codebase.
With regards to the t5182 soundcore i had to totally rework how it hooks to the drivers as ADDRESS_MAP_EXTERN is not a part of the MAME2003 memory handling, they say a picture
speaks a thousand words so if you fellas find a spare moment or two can you cast and eye
over some of the changes i made using winmerge to to make sure i haven't done it
incorrectly.
original darkmist.c mustache.c and t5182
https://www.sendspace.com/file/e0p37w
darkmist.c mustache.c and t5182 with my changes
https://www.sendspace.com/file/mzrjqr
Hi, i've been going through the list of new/updated games, I have checked most of them but this is just a list of minor things I noticed. Using a Raspberry Pi 3.
brapboys
(buzzing noise)
backfire
(some corrupted graphics, don't know how to control)
crswd2bl
(minor sprite flicker) BEST AVAILABLE
drifto94
(bad sound)
dynagear
(small black bars at left of screen, nothing major) BEST AVAILABLE
packbang
(has music but no sound effects, not sure if it's supposed to be like this ?)
pnyaa
(bad sound)
shogwarr
(same buzzing noise as brapboys but goes away)
titlef
(picture is at top left of screen)
Sound samples need to be in the BIOS/mame2003-plus
directory, they don't work in the samples
directory.
the sound has problems on the YM2151 i updated the cpu core its not that causing it it was doing it before the update to the 68k core. Just to save you the time checking that out arcadez
I have long thought it would be nice to create a core option like "display-mame-menu" that when enabled would display the MAME menu. This would allow people without a Tab
key mapped to easily access the MAME configuration as long as they can get into the RetroArch "Quick Menu"
In other words:
I will assign this to myself. Brave new world!
mame2003_plus-libretro.so need renamed to mame2003_plus-libretro.so for retroarch either that or the info file name on retroarch needs updating not sure which one is best to change any thoughts mark
I've just commited a rather large update for the PGM games four more games should now work
plus all of them should now have full on sound via the new ICS2115 soundcore i've also backported.
The reason for going to the trouble of doin this is simple these games perform really well in
older MAME for two reasons the video code is faster plus as the protection is simulated at
this point in the MAME dev cycle.
It's the video changes in MAME105.u2 and the use of the ARM CPU to handle the protection
schemes correctly which makes the games nosedive in performance, so by hooking up the
sound in this ole core we have a viable alternative to FBA for these games now.
Now i've not been able to tryout these changes on my xbox test core as due to memory limitations
these games will not boot we use another MAME emulator for the PGM games, anyway im kinda
confident these will work ok with the code diffs but give em a whirl and let me know either way.
Just to point out before anyone asks :) the PGM core can go no further than what is supported
gamewise as we dont have the ARM CPU core in MAME2003 so no point anyone asking for the
Cave shmups or say Demon Front or The Gladiator Road Of The Sword as it's not possible to
have these in this ole core and as i mentioned above they'd run like crap anyway with the newer
code.
im gathering up the roms currently i have 80% fixed and correct via the dat, however of the
Neogeo games i have so far it will not be possible to trackdown a correct version of
Metal Slug 5 as it has one rom 268-m1.bin which has since been redumped and replaced.
What i will do for this game and any others like this i'll simply update the rom in the driver
so we support the newer dumped version of the 268-m1.bin which we'll be able to trackdown.
Howdy @Arcadez and @grant2258 you might find it useful to look in the #buildbot channel of the libretro discord chat server: https://discord.gg/E6SWGxr
That is a good way to get a quick idea of whether things are compiling equally well for all platforms.
Currently, the 2003-plus core shares a sample folder with the 2003 core. Seeing as how they make use of several different samples, the two can't really coexist without issues.
As the title says, the display is mirrored horizontally. I checked the Dipswitches but there's no option to flip it. I'll just leave this here in case there's a fix.
Don't know how to ask this via forums or where to ask you, but as titled...
It seems possible to add a parameter to the XML generator function like int include_not_working
. If include_not_working
is set, then the XML includes all games. If it is not set, then the XML omits all games flagged as not working.
There could easily be two entries on the MAME menu -- there is probably space for something like Generate 'Working' DAT
above Generate 'Full' DAT
What do you think @Arcadez and @grant2258 ?
Ok dont be scared if you wanna talk datfiles then dont worry i wont bite well not much anyway :)
i recently spent a couple of hours updating the Neogeo driver phasing out the Kwacks roms
adding ones which match up with MAME plus their full CRC and SHA info.
I was however due to code limitations unable to do one for kof2003 as the decryption code
had changed by the time that game was playable to the extent it would not easily drop into
this core without me having to update a whole lotta Neogeo related code which infact would
have been worse as every rom would have needed updated rather than just the handfull i
added support for.
Lemmie know if this has helped with regards to datfile creation..?? also any others you may be
having issues with..?? but if the worst comes to the worst i do have a backup plan which we
should be able to create a full datfile from but it's rather hacky and well better left as a last
resort.
Hello,
I try to use this core with nintendo wii and golden axe 2 revenge of death adder have choppy sound and asterix doesn't load at all. Any idea why ?
On both game, there is sound glitch. The sound is playing well but the quality is very poor, it sound like a dead speaker. it sould like "psshhhhhh" when the character punch and the game speak (when selecting character) if you look at the game playing in youtube you will hear the difference of quality.
On wii with retroarch 1.7.1
Dragon Spirit (dspirit) seems to be flipped for player 2 be default (cocktail mode). Grant added instructions how to flip it correctly through service mode. Would it be beneficial to have it default player 2 as if it was a upright cabinet?
Hello,
I try to load guardians (denjin makai ii) it just return to retroarch after a second, no screen or anything. I know it work on wii because I can load it with FBA core.. and I make sure I have the good rom to load ;)
EDIT: Denjin Makai I doesnt load too, same problem as Denjin Makai II ..
Something seems off or the settings are not taking effect. They are located in /opt/retropie/configs/all/retroarch-core-options.cfg
. The settings I used for each emulator are listed below with screenshots. Quite different if you go back and forth a few times between the two. I tried matching the settings where possible. Also I see no flicker with mame2003_plus.
mame2003_plus settings I used:
mame2003-plus-vector-resolution-multiplier = "1"
mame2003-plus-vector-antialias = "enabled"
mame2003-plus-vector-translucency = "enabled"
mame2003-plus-vector-beam-width = "1"
mame2003-plus-vector-flicker = "10"
mame2003-plus-vector-intensity = "2.5"
MAME 0.78 settings I used:
mame2003-plus-vector-resolution-multiplier = "1"
mame2003-plus-vector-antialias = "enabled"
mame2003-plus-vector-translucency = "enabled"
mame2003-plus-vector-beam-width = "1"
mame2003-plus-vector-flicker = "10"
mame2003-plus-vector-intensity = "1"
AdvMAME settings I used:
vector/display_resizeeffect filter
vector/display_rgbeffect triad3dot
vector/display_scanlines no
vector/display_antialias yes
vector/display_beam 1.2
vector/display_flicker 10
vector/display_translucency yes
vector/display_intensity 2.5
edit: most of this OP is no longer relevant
One thought. It might be better to try to add 'underlays' to RetroArch than to fix artwork support within the core. :)
Pig Newton (pignewt) crashes to a black screen on boot. No input or coins work.
I'm using mame2003-plus in my arcade cabinet but it miss an autocenter feature when using digital arcade joystick that is present in mame2010, mame2000 and fba.
This make unplayble with arcade joystick a lot of game such as outrun, super hang-on, all lightgun game.
Is possible to enable autocenter in mame2003-plus like the others core?
As per trying to sort the broken sample support some Rpi users have reported i think we
need a proper Rpi setup file for mame2003-plus which is totally seperate from the original
mame2003 core as i suspect the folder paths are not being picked up correctly due
the one we have currently still using some parts of the mame2003 declerations.
I think this looks correct although if someone with more experience is this dept could cast
an eye over it that would be cool thanks.
This is the original code from mame2003 function looking at this code it could be our vector issues as well the game kick isint drawing properly either. Im going to wait till youve finished what you are doing then we can start some work on this and hopefully get the vectors working again. As you can see form looking at the code we need to update the avinfo
int cli_frontend_init (int argc, char **argv)
{
struct InternalMachineDriver drv;
char buffer[128];
char *cmd_name;
int game_index;
int i;
gamename = NULL;
game_index = -1;
/* clear all core options */
memset(&options,0,sizeof(options));
/* create the rc object */
rc = cli_rc_create();
if (!rc)
{
fprintf (stderr, "error on rc creation\n");
exit(1);
}
/* parse the commandline */
if (rc_parse_commandline(rc, argc, argv, 2, config_handle_arg))
{
fprintf (stderr, "error while parsing cmdline\n");
exit(1);
}
/* determine global configfile name */
cmd_name = win_strip_extension(win_basename(argv[0]));
if (!cmd_name)
{
fprintf (stderr, "who am I? cannot determine the name I was called with\n");
exit(1);
}
sprintf (buffer, "%s.ini", cmd_name);
/* parse mame.ini/mess.ini even if called with another name */
#ifdef MESS
if (strcmp(cmd_name, "mess") != 0)
{
if (parse_config ("mess.ini", NULL))
exit(1);
}
#else
if (strcmp(cmd_name, "mame") != 0)
{
if (parse_config ("mame.ini", NULL))
exit(1);
}
#endif
/* parse cmd_name.ini */
if (parse_config (buffer, NULL))
exit(1);
#ifdef MAME_DEBUG
if (parse_config( "debug.ini", NULL))
exit(1);
#endif
/* if requested, write out cmd_name.ini (normally "mame.ini") */
if (createconfig)
{
rc_save(rc, buffer, 0);
exit(0);
}
if (showconfig)
{
sprintf (buffer, " %s running parameters", cmd_name);
rc_write(rc, stdout, buffer);
exit(0);
}
if (showusage)
{
fprintf(stdout, "Usage: %s [" GAMENOUN "] [options]\n" "Options:\n", cmd_name);
/* actual help message */
rc_print_help(rc, stdout);
exit(0);
}
/* no longer needed */
free(cmd_name);
/* handle playback */
if (playbackname != NULL)
{
options.playback = mame_fopen(playbackname,0,FILETYPE_INPUTLOG,0);
if (!options.playback)
{
fprintf(stderr, "failed to open %s for playback\n", playbackname);
exit(1);
}
}
/* check for game name embedded in .inp header */
if (options.playback)
{
INP_HEADER inp_header;
/* read playback header */
mame_fread(options.playback, &inp_header, sizeof(INP_HEADER));
if (!isalnum(inp_header.name[0])) /* If first byte is not alpha-numeric */
mame_fseek(options.playback, 0, SEEK_SET); /* old .inp file - no header */
else
{
for (i = 0; (drivers[i] != 0); i++) /* find game and play it */
{
if (strcmp(drivers[i]->name, inp_header.name) == 0)
{
game_index = i;
gamename = (char *)drivers[i]->name;
printf("Playing back previously recorded " GAMENOUN " %s (%s) [press return]\n",
drivers[game_index]->name,drivers[game_index]->description);
getchar();
break;
}
}
}
}
/* check for frontend options, horrible 1234 hack */
if (frontend_help(gamename) != 1234)
exit(0);
gamename = win_basename(gamename);
gamename = win_strip_extension(gamename);
/* if not given by .inp file yet */
if (game_index == -1)
{
/* do we have a driver for this? */
for (i = 0; drivers[i]; i++)
if (stricmp(gamename,drivers[i]->name) == 0)
{
game_index = i;
break;
}
}
#ifdef MAME_DEBUG
if (game_index == -1)
{
/* pick a random game */
if (strcmp(gamename,"random") == 0)
{
i = 0;
while (drivers[i]) i++; /* count available drivers */
srand(time(0));
/* call rand() once to get away from the seed */
rand();
game_index = rand() % i;
fprintf(stderr, "running %s (%s) [press return]",drivers[game_index]->name,drivers[game_index]->description);
getchar();
}
}
#endif
/* we give up. print a few approximate matches */
if (game_index == -1)
{
fprintf(stderr, "\n\"%s\" approximately matches the following\n"
"supported " GAMESNOUN " (best match first):\n\n", gamename);
show_approx_matches();
exit(1);
}
/* ok, got a gamename */
/* if this is a vector game, parse vector.ini first */
expand_machine_driver(drivers[game_index]->drv, &drv);
if (drv.video_attributes & VIDEO_TYPE_VECTOR)
if (parse_config ("vector.ini", NULL))
exit(1);
/* nice hack: load source_file.ini (omit if referenced later any) */
{
const struct GameDriver *tmp_gd;
sprintf(buffer, "%s", drivers[game_index]->source_file+12);
buffer[strlen(buffer) - 2] = 0;
tmp_gd = drivers[game_index];
while (tmp_gd != NULL)
{
if (strcmp(tmp_gd->name, buffer) == 0) break;
tmp_gd = tmp_gd->clone_of;
}
if (tmp_gd == NULL)
/* not referenced later, so load it here */
{
strcat(buffer, ".ini");
if (parse_config (buffer, NULL))
exit(1);
}
}
/* now load gamename.ini */
/* this possibly checks for clonename.ini recursively! */
if (parse_config (NULL, drivers[game_index]))
exit(1);
/* handle record option */
if (recordname)
{
options.record = mame_fopen(recordname,0,FILETYPE_INPUTLOG,1);
if (!options.record)
{
fprintf(stderr, "failed to open %s for recording\n", recordname);
exit(1);
}
}
if (options.record)
{
INP_HEADER inp_header;
memset(&inp_header, '\0', sizeof(INP_HEADER));
strcpy(inp_header.name, drivers[game_index]->name);
/* MAME32 stores the MAME version numbers at bytes 9 - 11
* MAME DOS keeps this information in a string, the
* Windows code defines them in the Makefile.
*/
/*
inp_header.version[0] = 0;
inp_header.version[1] = VERSION;
inp_header.version[2] = BETA_VERSION;
*/
mame_fwrite(options.record, &inp_header, sizeof(INP_HEADER));
}
/* need a decent default for debug width/height */
if (options.debug_width == 0)
options.debug_width = 640;
if (options.debug_height == 0)
options.debug_height = 480;
options.debug_depth = 8;
/* no sound is indicated by a 0 samplerate */
if (!enable_sound)
options.samplerate = 0;
/* set the artwork options */
options.use_artwork = ARTWORK_USE_ALL;
if (use_backdrops == 0)
options.use_artwork &= ~ARTWORK_USE_BACKDROPS;
if (use_overlays == 0)
options.use_artwork &= ~ARTWORK_USE_OVERLAYS;
if (use_bezels == 0)
options.use_artwork &= ~ARTWORK_USE_BEZELS;
if (!use_artwork)
options.use_artwork = ARTWORK_USE_NONE;
{
/* first start with the game's built in orientation */
int orientation = drivers[game_index]->flags & ORIENTATION_MASK;
options.ui_orientation = orientation;
if (options.ui_orientation & ORIENTATION_SWAP_XY)
{
/* if only one of the components is inverted, switch them */
if ((options.ui_orientation & ROT180) == ORIENTATION_FLIP_X ||
(options.ui_orientation & ROT180) == ORIENTATION_FLIP_Y)
options.ui_orientation ^= ROT180;
}
/* override if no rotation requested */
if (video_norotate)
orientation = options.ui_orientation = ROT0;
/* rotate right */
if (video_ror)
{
/* if only one of the components is inverted, switch them */
if ((orientation & ROT180) == ORIENTATION_FLIP_X ||
(orientation & ROT180) == ORIENTATION_FLIP_Y)
orientation ^= ROT180;
orientation ^= ROT90;
}
/* rotate left */
if (video_rol)
{
/* if only one of the components is inverted, switch them */
if ((orientation & ROT180) == ORIENTATION_FLIP_X ||
(orientation & ROT180) == ORIENTATION_FLIP_Y)
orientation ^= ROT180;
orientation ^= ROT270;
}
/* auto-rotate right (e.g. for rotating lcds), based on original orientation */
if (video_autoror && (drivers[game_index]->flags & ORIENTATION_SWAP_XY) )
{
/* if only one of the components is inverted, switch them */
if ((orientation & ROT180) == ORIENTATION_FLIP_X ||
(orientation & ROT180) == ORIENTATION_FLIP_Y)
orientation ^= ROT180;
orientation ^= ROT90;
}
/* auto-rotate left (e.g. for rotating lcds), based on original orientation */
if (video_autorol && (drivers[game_index]->flags & ORIENTATION_SWAP_XY) )
{
/* if only one of the components is inverted, switch them */
if ((orientation & ROT180) == ORIENTATION_FLIP_X ||
(orientation & ROT180) == ORIENTATION_FLIP_Y)
orientation ^= ROT180;
orientation ^= ROT270;
}
/* flip X/Y */
if (video_flipx)
orientation ^= ORIENTATION_FLIP_X;
if (video_flipy)
orientation ^= ORIENTATION_FLIP_Y;
blit_flipx = ((orientation & ORIENTATION_FLIP_X) != 0);
blit_flipy = ((orientation & ORIENTATION_FLIP_Y) != 0);
blit_swapxy = ((orientation & ORIENTATION_SWAP_XY) != 0);
if( options.vector_width == 0 && options.vector_height == 0 )
{
options.vector_width = 640;
options.vector_height = 480;
}
if( blit_swapxy )
{
int temp;
temp = options.vector_width;
options.vector_width = options.vector_height;
options.vector_height = temp;
}
}
return game_index;
}
Hello,
there is speed issue with this game on wii. it run very slow, sound and graphics. Other m92 game run fine, only this one have issue.
Maybe somes games just need adjustments to run on Wii ... like Denjin Makai (it doesnt run at all on wii) but it does on FBA.. or spiderman (it just need speed adjustment) etc.
@AriaOnThePlanetes was asking about this in Discord, and I encouraged them to post an Issue here but they did not.
In very recent MAME versions, the HD647180 ROM has finally been dumped after years without it. The filename is hd647180.017. @AriaOnThePlanetes also says that "I think Teki Paki, Whoopee and Ghox also could have sound with dumped hd647180 data."
I wanted to start this issue to track the idea in case it may pan out later.
Hello @Arcadez and thanks as always for your work to advance mame2003.
You mentioned you would be willing to give me commit access to this repository. If you would like to do that:
Adding me as a collaborator to your repository:
Hello all. The retropie forum thread now is great, but I noticed that there are more than 460 posts! There is some misunderstandings about the relationship between the two cores which are based on the title of the thread and the early posts. Just one example of how it's out of date.
@Wilstorm or someone else, would you be willing to start a new thread with a title that includes the word "mame2003-plus"?
It could be anything. "mame2003-plus: brave new core (testers needed)", "mame2003-plus: brilliant advances and broken builds (testers needed)", "mame2003-plus: what does god need with a starship?"
Sometimes it's awkward for me to post a thread like this in the RetroPie forum when people realize I don't personally have/use RetroPie, just RetroArch.
If such a new thread exists, I'll immediately be on hand as with the existing thread.
These can be a pain as the controls dont transfer to well to gamepads via the MAME inputs
anyway i have some code handy which for Downtown and Ikari Warriors III would just be
dropping into the source a couple of new Roms which are official versions of these games
but with joystick controls rather than rotary.
In the case of the following these would be Jap bootlegs of some famous SNK games which
hack out the rotary controls replacing them with again a normal joystick control setup
apart from the new roms this would require me to backport some new input code for the
games into the snk.c driver but it's doable
Ikari Warriors
Guerilla War
Victory Road
These are all supported in FBA already but should you fancy them for this ole core also
then lemmie know and i'll add em shouldn't take more than a few hours to port the code
and test the games.
my m68k core update fixed altered beast head missing and game not working maybe other bug we dont know about yet
libretro/mame2003-libretro#342
ym2151
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.