Commit graph

1883 commits

Author SHA1 Message Date
Richard Goedeken
e162e1ccf1 allow front-end to set the speed limiter on/off prior to starting a rom 2011-07-16 11:17:41 -07: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
f310d37785 missing semicolon 2011-07-16 10:30:23 -07:00
Richard Goedeken
596aec45ab added new core parameter: M64CORE_SPEED_LIMITER along with get/set functionality 2011-07-16 10:24:22 -07:00
Richard Goedeken
367b07176a make the MainSpeedLimit variable a local instead of global, and add a modifier function 2011-07-16 09:54:03 -07:00
Richard Goedeken
47538f3bc6 added new M64CMD_CORE_STATE_SET core command, and main_speedset() function 2011-07-16 09:51:38 -07:00
Richard Goedeken
3ea632b500 Added speed limiter control variable in main.c 2011-07-16 07:42:16 -07:00
richard42
a2c2b2ef91 Win32 fixes 2011-07-11 23:05:14 -07:00
Sven Eckelmann
c50a3b5037 Remove extraneous parentheses around comparison which could hide GCC warnings 2011-07-10 22:43:45 +02:00
Sven Eckelmann
c792b2b39d Remove comparison unsigned < 0 2011-07-10 22:24:19 +02:00
Sven Eckelmann
5efe246437 Don't require executable memory for cached interpreter 2011-07-10 11:34:10 +02:00
Sven Eckelmann
b1f9a9d154 Readd set_rounding in fpu instructions for interpreter modes 2011-07-10 11:06:50 +02:00
Sven Eckelmann
5fd974cac9 Use common fpu implementation for interpreter modes to fix missing round/trunc/ceil/floor 2011-07-10 10:25:27 +02:00
Sven Eckelmann
625ab60be8 Show error on failed malloc_exec in cached interpreter mode instead of segfaulting 2011-07-10 01:36:28 +02:00
Sven Eckelmann
b6ada95740 Show error on failed first malloc_exec instead of segfaulting 2011-07-09 23:45:13 +02:00
Sven Eckelmann
a1c8fc62b7 Allocate exec memory using mmap
mprotect has no defined behavior when it is used with memory regions not
allocated by mmap. Therefore, it is easier to use mmap directly with the
RWX flags instead of using mmap and then mprotect.
2011-07-09 23:02:35 +02:00
Sven Eckelmann
48d49d8135 Prevent data corruption with caller managed OSD text
OSD text like the volume information is update by the caller in main.c, but the
drawing function in osd.c maybe already deleted the corresponding data
structure. The workaround was to check if the pointer to data structure could
be found in the list. It could happen that another text was shown inbetween and
the libc reused the old memory region for another text message. The
osd_message_valid function would wrongly inform the caller that the OSD text
wasn't deleted and the following osd_update_message would modify the wrong
message.

We must forbid that the messages is deleted by both the caller and the osd
drawing mainloop. The mainloop restricts itself to removing it from the list
when the caller marked it as user_managed directly after it was allocated. The
caller has to remove it manually using osd_delete_message in that situation.
2011-07-09 22:08:58 +02:00
Sven Eckelmann
b0bc4ceb4d Cleanup savestates_select_filename as suggested in #412 2011-07-09 20:08:11 +02:00
Richard Goedeken
58cb394345 fix warning in NO_ASM build 2011-07-07 19:26:17 -07:00
Sven Eckelmann
912cd431ff Don't use _BIG_ENDIAN to check for endianness as it is always set on OpenBSD 2011-06-26 20:18:10 +02:00
Sven Eckelmann
141c5f2acc Use rom.c as base definition place for isGoldeneyeRom 2011-06-26 19:42:10 +02:00
Sven Eckelmann
efaef036d2 Provide prototypes of exported functions for use inside the core 2011-06-26 01:04:53 +02:00
Sven Eckelmann
e20674dbca Don't use plain 0 for pointers 2011-06-25 23:05:19 +02:00
Sven Eckelmann
56208dfc40 Remove carriage return from line ending 2011-06-25 23:03:55 +02:00
Sven Eckelmann
34ca3d7c49 Mark local only functions as static or fix their definition 2011-06-25 22:40:58 +02:00
Sven Eckelmann
5137e8e264 Don't define variable isGoldeneyeRom in each file 2011-06-25 21:47:50 +02:00
Sven Eckelmann
cf4a4027c2 Provide prototypes to assist plugin developers 2011-06-25 21:07:42 +02:00
Sven Eckelmann
52999b1e13 Remove unused variable tmp 2011-06-25 15:14:00 +02:00
Sven Eckelmann
8e68e71935 Prevent over-optimization of rjump related data
GCC tries to remove and/or rename local symbols when trying to optimize
the code. This is a common problem when using link time optimization or
other optimization with deep inspection of dataflow. Inline assembler
code has to be annotated when it tries to access data behind such
symbols to prevent over optimization and to correctly name these
symbols.

This also removes partially the requirement of having different
implementation of the rjump code for different combination of OS and
PIC/PIE targets.
2011-06-05 18:52:30 +02:00
Richard Goedeken
e3c987f3ec updated core for new Mupen64plus 2.0 API versioning scheme 2011-05-16 21:47:02 -07:00
Richard Goedeken
a60d4a6cd8 bugfix issue 423: we should call video extension override _before_ checking for SDL state in VidExt_GL_GetProcAddress function 2011-04-13 10:30:09 -07:00
Richard Goedeken
f2d2a76cfd bugfix: we need to call the Video Extension SwapBuffers function during pause, not the SDL one 2011-04-13 08:45:43 -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
d3b9892037 1. added new VidExt_GL_GetAttribute function. 2. Added verbose message when inserting time delay due to frame rate limiter 2011-04-09 21:17:40 -07:00
Sven Eckelmann
d254233f05 Port n64 internal clock to Windows/VC++ 2011-04-05 09:48:21 +02:00
Sven Eckelmann
26d19e48fc Fix swapping of n64 images
---
 src/main/rom.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
2011-03-12 23:24:50 +01:00
Jason Benaim
47b3f89d2d Add support for n64 internal clock
---
 src/memory/pif.c |   45 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 45 insertions(+), 0 deletions(-)
2011-03-12 23:24:46 +01:00
richard42
ca0a434a41 changed warning to info message when core can not open config file for reading and must use defaults 2011-02-06 23:37:06 -05:00
Richard Goedeken
8656be8a96 bugfix: issue #410 - segfault in dma_pi_write()-->strlen() if /home/username/.local/share/mupen64plus/ owned by root 2011-01-15 17:11:38 -05:00
Richard Goedeken
c2d0d094e2 moved callback function pointer typedefs from callbacks.h into m64p_frontend.h, so that they may be used by front-end apps 2010-12-25 21:06:19 -05:00
Richard Goedeken
6e53b65a67 updated version and RELEASE info for 1.99.4 tag 2010-11-22 21:09:31 -05:00
Richard Goedeken
07a57d8e88 Added 2 missing error descriptions for CoreErrorMessage function 2010-10-21 13:54:36 -04:00
Richard Goedeken
d4df8a20cf added some permissive type checking to ConfigGetParameter() function, and a new error type 2010-10-01 21:57:32 -04:00
Richard Goedeken
25383b54d9 verify MaxSize parameter in ConfigGetParameter() 2010-10-01 19:42:21 -04:00
Richard Goedeken
d0fd89cb07 avoid segfault in the video extension code if SDL initialization fails (because video plugin fails) 2010-09-26 23:48:53 -04:00
Richard Goedeken
109c4f2ec9 Added new CoreGetRomSettings() function for front-ends 2010-07-31 15:58:00 -04:00
Sven Eckelmann
b16e55fff9 Add dummy PATH_MAX on systems without it
Posix only defines that PATH_MAX may is defined through limits.h.
GNU/Hurd has removed this definition without violating the standards.

Mupen64Plus still relies on it and we work around that problem by
defining PATH_MAX as 4096 in all places it is needed. This is not 100%
correct as their are ways to generate longer paths, but mupen64plus must
be heavily refactored in some places to fix the actual problem.
---
2010-07-13 21:31:12 +02:00
Richard Goedeken
69962d0c01 From Narann: Optimize Goldeneye hack in order to avoid the strncmp in virtual_to_physical_address() function. 2010-05-18 19:30:31 -04:00
Sven Eckelmann
065458fd0c synchronize declaration and definition of dyna_start 2010-04-06 21:54:32 +02:00
Sven Eckelmann
5637eac24b allow to run dynarec in hardware DEP protected windows 2010-04-06 21:45:56 +02:00