Commit graph

98 commits

Author SHA1 Message Date
Richard Goedeken ee8d13b20f Merge pull request #30 from wnayes/bpt-flag-enum
Wrap breakpoint flags into m64p_dbg_bkp_flags enum.
2014-05-17 13:55:30 -07:00
Will Nayes 641425417e Wrap breakpoint flags into m64p_dbg_bkp_flags enum.
The unused conditional and counter flags have been removed to avoid any
confusion until those features are added.

An `M64P' prefix is also added to the flags. This matches the style of other
API flags.
2014-05-16 16:18:12 -05:00
Will Nayes d37b9e0d42 Change struct breakpoint to m64p_breakpoint.
The breakpoint struct name was inconsistent with the rest of the `m64p' prefixed
declarations.

The API DebugBreakpointCommand was also changed to specify a m64p_breakpoint
pointer instead of a void pointer. There are no uses for the pointer other than
for referencing a breakpoint.
2014-05-15 21:24:07 -05:00
Dorian Fevrier 46f5b9279b update config api to 2.3.0 in wiki doc with new function ConfigSetParameterHelp 2014-05-11 10:56:27 -04:00
Dorian Fevrier 7566188ff2 add ConfigSetParameterHelp to the API, update minor version 2014-05-05 23:22:37 -04:00
Sven Eckelmann a19fac3325 Allow to disable interrupt delay after DMA SI read/write
Titles like Banjo Tooie are known to hang because the interrupt after the SI
read/write is delayed. But there are also titles which are known to have
problems when delay is enabled. Examples are

 * Body Harvest
 * City Tour Grandprix - Zennihon GT Senshuken
 * Cruis'n USA
 * GT 64 - Championship Edition
 * Nightmare Creatures
 * Ucchan Nanchan no Hono no Challenger - Denryuu Ira Ira Bou
2013-12-13 16:49:26 +01:00
Sven Eckelmann 5d5ff6af92 Allow to overwrite the cycles per instruction
Some ROMs require a different average cycles per instruction count than the
default one (2 per emulated instruction). This setting is necessary because
mupen64plus is not cycle accurate. A complete simulation of pipeline, cache,
bus and so on is necessary to get it perfectly without this workaround.

Known titles which require a CounterPerOp of 1 are

 * 64 de Hakken!! Tamagotchi - Minna de Tamagotchi World
 * 64 Oozumou
 * A Bug's Life
 * Airboarder 64
 * Bass Hunter 64
 * Bass Rush - ECOGEAR PowerWorm Championship
 * Bassmasters 2000
 * Biohazard 2
 * Body Harvest
 * California Speed
 * Carmageddon 64
 * Charlie Blast's Territory
 * City Tour Grandprix - Zennihon GT Senshuken
 * Destruction Derby 64
 * Disney's Tarzan
 * Donkey Kong 64
 * Duck Dodgers Starring Daffy Duck
 * Duke Nukem - ZER0 H0UR
 * Excitebike 64
 * Fighting Force 64
 * Flying Dragon
 * Fushigi no Dungeon - Fuurai no Shiren 2 - Oni Shuurai! Shiren Jou!
 * GT 64 - Championship Edition
 * Hamster Monogatari 64
 * Harvest Moon 64
 * Hercules - The Legendary Journeys
 * Hexen
 * Hiryuu no Ken Twin
 * In-Fisherman Bass Hunter 64
 * International Superstar Soccer 64
 * Itoi Shigesato no Bass Tsuri No. 1 Kettei Ban!
 * Jikkyou G1 Stable
 * Jikkyou World Soccer 3
 * Madden NFL 2000
 * Madden NFL 2001
 * Madden NFL 2002
 * Madden NFL 99
 * Mario Party
 * Mario Party 2
 * Mario Party 3
 * Mario Story
 * Monopoly
 * Mystical Ninja 2 Starring Goemon
 * NBA In the Zone '99
 * NBA Showtime - NBA on NBC
 * Nightmare Creatures
 * Nintama Rantarou 64 Game Gallery
 * Nuclear Strike 64
 * Nushi Duri 64
 * Nushi Duri 64 - Shiokaze ni Notte
 * Paper Mario
 * Pro Mahjong Kiwame 64
 * Pro Mahjong Tsuwamono 64 - Jansou Battle ni Chousen
 * Quake II
 * Razor Freestyle Scooter
 * Ready 2 Rumble Boxing Round 2
 * Resident Evil 2
 * Roadsters Trophy
 * Rush 2 - Extreme Racing USA
 * San Francisco Rush 2049
 * Shadow Man
 * Tigger's Honey Hunt
 * Toy Story 2
 * Triple Play 2000
 * Ucchan Nanchan no Hono no Challenger - Denryuu Ira Ira Bou
 * Vigilante 8
 * Vigilante 8 - 2nd Offence
 * Virtual Pool 64
 * War Gods
 * WCW-nWo Revenge
 * Wipeout 64
 * HardCoded by Iceage
 * Spacer by Memir (POM '99)

Known titles which require a CounterPerOp of 3 are

 * BattleTanx
 * BattleTanx - Global Assault
 * Beetle Adventure Racing!
 * Disney's Donald Duck - Goin' Quackers
 * Donald Duck - Quack Attack
 * HSV Adventure Racing
 * Jikkyou Powerful Pro Yakyuu Basic Ban 2001
 * LEGO Racers
 * Monster Truck Madness 64
 * Pilotwings 64
 * Road Rash 64
 * Wave Race 64 - Shindou Edition
 * WCW Nitro
 * Wetrix
2013-12-13 16:49:26 +01:00
Richard Goedeken 975c1ce837 converted the module API versioning document into a wiki doc to put on the development wiki (retrouprising) 2013-06-28 22:52:04 -07:00
Richard Goedeken 6d94cb42eb add some more developer documentation regarding the window resizing functionality 2013-05-26 23:59:34 -07:00
Richard Goedeken 3ddbf56806 1. Update FRONTEND_API_VERSION to v2.1.1: Core command M64CMD_CORE_STATE_SET will now accept M64CORE_VIDEO_SIZE parameter (will call the video plugin function ResizeVideoOutput())
2. Capture SDL_VIDEORESIZE events and call video plugin ResizeVideoOutput() function.
3. In VidExt_ResizeWindow(), destroy and re-create OSD when re-setting the screen size
4. Fix bug when checking video api version for <2.2.0 fallback
2013-05-26 22:15:18 -07:00
Richard Goedeken a557d213fd video extension API version is increased to v3.0. This adds a new Flags parameter to the VidExtSetVideoMode() function, and adds a new function VidExt_ResizeWindow. This is to support resizable output windows 2013-05-24 23:34:10 -07:00
Richard Goedeken f3b891f97c increase Video plugin API to v2.2.0, add new ResizeVideoOutput function 2013-05-23 22:22:08 -07:00
Richard Goedeken 87d5cec86c update wiki documentation for new input plugin parameter 'mode' 2013-05-19 17:24:00 -07:00
Richard Goedeken 1124dca898 update wiki docs for last commit 2013-03-08 22:57:50 -08:00
Richard Goedeken 4084e97175 moved the debugger memory type and memory flags enumerated types from the dbg_memory.h header into m64p_types.h, and prefixed them with M64P_ 2013-03-03 22:39:49 -08:00
Richard Goedeken 6b0b07373c removed some of the core commands added in last front-end api change by casualjames. added new core parameters and callbacks to cover the removed functionality, and add functionality suggested by paulscode. document everything 2013-02-19 23:23:10 -08:00
Richard Goedeken e48c7fe205 update wiki doc for new rice video plugin config parameter 2013-02-03 10:07:24 -08:00
Richard Goedeken 86c4e48cc7 fix a bunch of incorrect documentation related to the header files 2012-11-15 19:13:12 -08:00
Richard Goedeken e42342c234 update wiki documentation for sdl-audio plugin resampler changes 2012-10-28 11:43:13 -07:00
Sven Eckelmann 81506b856f Merge port of Ari64's new experimental dynamic recompiler for i386
Signed-off-by: Sven Eckelmann <sven@narfation.org>
---
 doc/new_dynarec.txt                 |  413 ++
 projects/unix/Makefile              |   17 +
 src/main/savestates.c               |   25 +
 src/memory/dma.c                    |    4 +
 src/memory/memory.c                 |   21 +-
 src/r4300/interupt.c                |    9 +
 src/r4300/new_dynarec/assem_x86.c   | 4364 ++++++++++++++
 src/r4300/new_dynarec/assem_x86.h   |   20 +
 src/r4300/new_dynarec/linkage_x86.s |  929 +++
 src/r4300/new_dynarec/new_dynarec.c |10974 +++++++++++++++++++++++++++++++++++
 src/r4300/new_dynarec/new_dynarec.h |   38 +
 src/r4300/r4300.c                   |   23 +-
 12 files changed, 16834 insertions(+), 3 deletions(-)
 create mode 100644 doc/new_dynarec.txt
 create mode 100644 src/r4300/new_dynarec/assem_x86.c
 create mode 100644 src/r4300/new_dynarec/assem_x86.h
 create mode 100644 src/r4300/new_dynarec/linkage_x86.s
 create mode 100644 src/r4300/new_dynarec/new_dynarec.c
 create mode 100644 src/r4300/new_dynarec/new_dynarec.h
2012-09-30 11:17:08 +02:00
Richard Goedeken 57d08111ae increased FRONTEND_API_VERSION number for changes in commands, added documentation of api change 2012-09-09 21:54:01 -07:00
casualjames casualjames eeb552cf6e Polish frontend API and docs 2012-08-06 22:03:49 +02:00
casualjames casualjames abd2c8f74d Small fixes for savestates. 2012-08-06 22:03:46 +02:00
Richard Goedeken 580cdd7fb7 updating version and release info for v1.99.5 tag 2012-03-10 09:53:00 -08:00
Richard Goedeken b8a60d01cb update core Video API version to 2.1.0. The core is backwards-compatible with older video plugins. The difference in the newer API is that the video render callback function now takes a boolean (int) parameter, which specifies whether the video frame has been re-drawn since the last time the render callback was called. This allows us to take screenshots without the On-Screen-Display text 2012-03-04 15:11:34 -08:00
Richard Goedeken 92739fa732 updated wiki documentation for new SaveSRAMPath config parameter 2012-02-25 21:04:40 -08:00
Richard Goedeken 708e5ef12a updated wiki documentation for core/plugin config parameters 2012-02-24 22:47:40 -08:00
Richard Goedeken d0879715dc Added 2 new config functions: ConfigHasUnsavedChanges and ConfigRevertChanges 2012-02-21 21:22:12 -08:00
Richard Goedeken bde4612d7f add new Config API function to save only a single config section to disk. Added documentation for new function and bumped config api version number to 2.1.0 2012-01-02 21:49:27 -08:00
Richard Goedeken 4c21158e8f merged changes from ecsv's fork 2011-09-08 21:08:09 -07:00
Richard Goedeken 63aee7ccb7 sync w/ wiki updates from wahrhaft 2011-09-08 20:17:23 -07:00
Sven Eckelmann 9b7d8ea648 Synchronize MipMapping options in Arachnoid and Rice 2011-07-18 09:33:40 +02:00
Richard Goedeken 4286ee7b9b updated FRONTEND_API_VERSION to 0x020001 for new m64p_command and m64p_core_param 2011-07-16 11:00:03 -07:00
Richard Goedeken e3c987f3ec updated core for new Mupen64plus 2.0 API versioning scheme 2011-05-16 21:47:02 -07:00
Richard Goedeken 1d538f41e9 added documentation for new GLGetAttr function in the video extension. fixed the CoreOverrideVidext function 2011-04-13 08:21:41 -07:00
Richard Goedeken 68bcd3da90 updated wiki documentation for transition to retrouprising.com 2011-01-11 22:29:06 -05:00
Richard Goedeken 109c4f2ec9 Added new CoreGetRomSettings() function for front-ends 2010-07-31 15:58:00 -04:00
Richard Goedeken 121d9f064a From Narann: update the wiki documentation with news parameters 2010-05-18 19:28:32 -04:00
Richard Goedeken 25e7102086 API change: use new ReadScreen2() video plugin function. Also use this function when grabbing screenshot instead of directly calling OpenGL 2010-02-28 23:34:18 -05:00
Richard Goedeken b67f6738ed update emuwiki api doc for new deadzone parameter when mapping N64 button to joystick axis 2010-02-26 23:59:34 -05:00
Richard Goedeken 011c7802de update emuwiki doc with header definitions for new multisampling opengl options in rice video 2010-02-26 21:00:02 -05:00
Richard Goedeken 80d8100ac1 OpenGL multisample anti-aliasing patch from dorian.fevrier 2010-02-26 11:11:03 -05:00
Richard Goedeken 77ef24b55c fixed a major problem with zilmar API: the plugins RomOpen() functions had no way of returning error codes back to the core, so if something went wrong, the core would continue to start the game, resulting in a crash or a hang in the plugin. Now the RomOpen() functions return a bool 2010-01-11 23:06:46 -05:00
Richard Goedeken 244a8dd324 1. added new configuration function ConfigGetParameterType() 2. removed api documentation .tar.gz file and replaced with the mediawiki text - this will be easier to keep in sync than a zip file 2010-01-10 00:27:17 -05:00
Richard Goedeken ca2aa5f656 added tarball of emuwiki api documentation from 2010-01-06 for backup purposes 2010-01-06 22:17:38 -05:00
Richard Goedeken 7fd15c2fb1 removed man file for mupen64plus, this belongs in the ui-console module 2009-12-13 23:44:18 -05:00
Richard Goedeken 7e41f2022a updated LICENSES file, removed some unneeded text files 2009-12-12 23:17:24 -05:00
Richard Goedeken 4fcb71627c imported source from Mupen64Plus SVN repository rev 1416. removed many non-core items. restructured directories for mupen64plus v2.0 project 2009-10-02 00:10:43 -04:00