Package: mupen64plus-core / 2.0-7
Metadata
Package | Version | Patches format |
---|---|---|
mupen64plus-core | 2.0-7 | 3.0 (quilt) |
Patch series
view the series filePatch | File delta | Description |
---|---|---|
bitstream font.patch | (download) |
projects/unix/Makefile |
1 1 + 0 - 0 ! |
use font from ttf-bitstream-vera |
printf_fixup.patch | (download) |
src/api/callbacks.h |
2 1 + 1 - 0 ! |
add printf-format attribute The compiler needs to get more information for function declaration to help to find printf specific format attacks. |
disable_recompiler_disassembler.patch | (download) |
projects/unix/Makefile |
2 1 + 1 - 0 ! |
disable the disassembler of the recompiled code The interface of libopcode.so and libbfd.so is not stable and therefore not allowed to use in Debian. The libopcode.a and libbfd.a don't provide PIC object files and therefore cannot be linked to the PIC shared object. . This part of the debugging interface can be disabled because their is no known user interface that has support for it. |
sdl2_keysym.patch | (download) |
projects/unix/Makefile |
1 1 + 0 - 0 ! |
use sdl1.2 keysym in the config when using sdl2 It is easier for a user to keep the old SDL1.2 values for the keys in the config instead of converting them by hand. This is extreme important when the default (automatic) config is used. |
multiple_main.patch | (download) |
src/main/main.c |
9 0 + 9 - 0 ! |
fix multiple definitions of main in same namespace |
n64_cic_nus_6105_reset.patch | (download) |
src/memory/pif.c |
2 2 + 0 - 0 ! |
reset pif_ramb 46,47 after the n64_cic_nus_6105 challenge Response check fails when the PIF RAM is is not set to zero for byte 46+47 |
sdl2_select_saveslot.patch | (download) |
src/main/eventloop.c |
42 40 + 2 - 0 ! |
fix saveslot selection for sdl2 The IDs for SDL scancodes don't start from SDL_SCANCODE_0 and end at SDL_SCANCODE_9. Therefore, SDL_SCANCODE_9 is bigger than SDL_SCANCODE_0 (which violates a precondition of the key check) and this makes it impossible to select a saveslot using the numbers on the keyboard. Bug-Debian: http://bugs.debian.org/717801 |
sdl2_no_unicode.patch | (download) |
src/api/vidext_sdl2_compat.h |
19 0 + 19 - 0 ! |
remove sdl unicode keycode compat code SDL 2.0 cannot store unicode anymore. Pre-2.0 versions provided this field but it was removed right before the 2.0 release. Still using it makes the compile fail. |
oot_subscreen_delay_fix.patch | (download) |
src/main/cheat.c |
78 70 + 8 - 0 ! |
add missing subscreen delay fix for ocarina of time Mupen64plus contains built-in cheats for Ocarina of Time, which activates the essential subscreen delay fix. However, the built-in code for Master Quest only works for the (E) version of Master Quest, and not the (U) version. The file also does not include the (U) (GC) version of Ocarina of Time. Master Quest and the GC versions of Ocarina of Time also need the End Credits Fix, otherwise these games will crash when the credits are displayed. |
counter_per_op.patch | (download) |
doc/emuwiki-api-doc/Mupen64Plus_Core_Parameters.txt |
4 4 + 0 - 0 ! |
allow to overwrite the cycles per instruction |
two_events_interrupt.patch | (download) |
src/r4300/interupt.c |
2 2 + 0 - 0 ! |
don't insert a second interrupt event from same type |
delay_si.patch | (download) |
doc/emuwiki-api-doc/Mupen64Plus_Core_Parameters.txt |
4 4 + 0 - 0 ! |
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 |
config_currentstateslot.patch | (download) |
src/main/savestates.c |
2 1 + 1 - 0 ! |
use correct config parameter string (currentsaveslot->currentstateslot) |
obsolete_variable.patch | (download) |
src/r4300/interpreter_cop0.def |
2 0 + 2 - 0 ! |
remove obsolete variable; caused crashes in pd/goldeneye in android ed. |
format_eeprom.patch | (download) |
src/memory/pif.c |
2 1 + 1 - 0 ! |
a cleared eeprom block has all bits to 1 and not 0 |
revert_wii64_eeprom.patch | (download) |
data/mupen64plus.ini |
8 4 + 4 - 0 ! |
revert "merge 16kb eeprom savetype with wii64" |
countperop_rominfo.patch | (download) |
src/main/main.c |
2 1 + 1 - 0 ! |
allow to load countperop info from mupen64plus.ini The CountPerOp settings has to be adjusted for each ROM. It is easier for the enduser when the default value is not hardcoded in mupen64plus and instead this dynamic information is retreived from the mupen64plus.ini. . The countperop information (currently named count_per_op_default) is not saved inside m64p_rom_settings because this type is exported using the frontend api. Modifying this would require a version bump. |
countperop_romdb.patch | (download) |
data/mupen64plus.ini |
158 158 + 0 - 0 ! |
add countperop info to mupen64plus.ini The CountPerOp settings has to be adjusted for each ROM. It is easier for the enduser when the default value is not hardcoded in mupen64plus and instead this dynamic information is retreived from the mupen64plus.ini. |
sdl2_no_surface.patch | (download) |
src/api/vidext_sdl2_compat.h |
376 28 + 348 - 0 ! |
remove unused sdl2 surface in compat code mupen64plus doesn't support 2D video output because it forces OPENGL mode. Unfortunately, the rest of the compat code still assumes that surfaces for 2D data are used and overwrites the data when the window is changed. . The surface code can be removed to avoid these problems. |
sdl2_destroywindow.patch | (download) |
src/api/vidext.c |
3 3 + 0 - 0 ! |
close sdl2 window when quitting video subsystem SDL2 doesn't close windows anymore when the video subsystem is closed. Therefore, the window created by the SDL2 compat layer has to be closed manually to avoid orphan windows in frontends like m64py in non-VidExt mode. |
interpreter_cmd_link_unconditionally.patch | (download) |
src/r4300/pure_interp.c |
10 5 + 5 - 0 ! |
save link information in *al(l) instructions unconditionally All "Jump and link" and "Branch and link" like instructions save the PC in the target register unconditionally and not only when the branch/jump is taken. The specification is not clear whether the store is actually made before or after the delay slot and therefore the behavior of the dynarecs ("link" before delay slot) is used. |
cheat_multiconditions.patch | (download) |
src/main/cheat.c |
84 34 + 50 - 0 ! |
allow multiple preconditions per cheat Each cheat code can have multiple preconditions which all have to be fulfilled before it can be executed. The default implementation in mupen64plus could not handle these extra test codes because a failed test only caused a jump over the next cheatcode (ignoring whether is also a test or a non-test cheatcode). . Therefore, all (negative) results before a non-test cheat code have to be aggregated. The first non-test cheatcode evaluates the result of the preconditions and only executes the non-test cheatcode when no precondition test failed. The earlier results are always dropped after a non-test cheatcode to allow a fresh start. |
mario64_levitate.patch | (download) |
data/mupen64plus.cht |
6 3 + 3 - 0 ! |
use same precondition for all parts of the mario64 levitate cheat The cheat code consists of three pairs of precondition and actual write. The |
self_reference_romdb.patch | (download) |
data/mupen64plus.ini |
30 15 + 15 - 0 ! |
fix self-references in mupen64plus.ini. |
invalid_reference_romdb.patch | (download) |
data/mupen64plus.ini |
12 6 + 6 - 0 ! |
fix incorrect md5 references in mupen64plus.ini. |
countperop_hydrothunter.patch | (download) |
data/mupen64plus.ini |
3 3 + 0 - 0 ! |
zuzma says that hydro thunder plays without freezing if the countperop is set to 1 |
complete_resolve_romdb.patch | (download) |
src/main/rom.c |
82 58 + 24 - 0 ! |
only resolve using complete rom database entries The old rom database algorithm tried to resolve (refMD5) entries immediately in romdatabase_open without checking the referenced entry. This algorithm caused entries to be used when they are still have uninitialized fields because the referenced entry still has some other entries which it referenced. . Using only complete (resolved) entries also allows to detect loops (unresolvable references) as seen before 304bf8c4de6824ed09b71622a23662f9111a660b ("Fix self-references in mupen64plus.ini") |
nondefault_resolve_romdb.patch | (download) |
src/main/rom.c |
96 74 + 22 - 0 ! |
don't overwrite rom specific settings during resolve phase The behavior of the romdatabase_resolve was to overwrite any setting when the referenced rom had non-default settings. This made it impossible to use |
cheatengine_workarounds.patch | (download) |
src/main/cheat.c |
181 96 + 85 - 0 ! |
use normal cheat engine to run workaround cheats Instead of hardcoding special commands in cheat_apply_cheats, it is easier to just use add the codes to the active cheats list when the the rom is started. This avoids having more string compares and similar things in this regularly called routine when more workaround cheats are added. . This is especially helpful against the slowdowns in the Zelda debug roms caused by the "Warning: Ocarina of Time version could not be determined. No fixes applied." spam on the console. |
zelda_workarounds_romdb.patch | (download) |
data/mupen64plus.ini |
44 44 + 0 - 0 ! |
add zelda oot cheats to mupen64plus.ini It is a lot easier to add the workaround cheats to the mupen64plus.ini instead of having them hardcoded in the cheat engine. The data is currently not used because it still has to be parsed by the romdatabase before these general workaround cheats are supported. |
workarounds_romdb.patch | (download) |
src/main/cheat.c |
186 96 + 90 - 0 ! |
parse cheats from from mupen64plus.ini The workaround cheats are easier to manage over the mupen64plus.ini instead of hardcoding them inside the mupen64plus-core source code. |
pilotwings_workarounds_romdb.patch | (download) |
data/mupen64plus.ini |
18 18 + 0 - 0 ! |
add note about (broken) pilotwing64 shadow fix This fix is used in PJ64 to avoid the big landing shadow block. But it can cause hangs when the user presses Quit (can be reproduced in PJ64+m64p when using the rocket in 3FCD4969F9A080BD2BCB913EC5D7A3BD). |
pokemon_snap_workarounds_romdb.patch | (download) |
data/mupen64plus.ini |
36 36 + 0 - 0 ! |
add workaround to make pokemon snap controls working and images selectable The controller problem seems to be related to the graphics plugin. A quote from darkmaster14 . "I believe the Pokemon Snap input issue is closely related to the missing red dot issue. If you recall, in the original hardware, when you first arrive on the beach, there's a small tutorial where you can't move the cursor until you take a picture of the first few Pokemon that show up. Once you finish the mini tutorial, you can move the cursor around as you please. Well, the red dot doesn't work on most plugins, so the game doesn't detect the cursor locking onto the first few Pokemon, so the tutorial doesn't work, and thus the input never gets unlocked. . Well, I got a hold of a very buggy port of FatCat's software renderer plugin for Mupen64Plus, and the red dot works on that, which lets you do the tutorial, and thus the cursor movement is unlocked and you can play the game as normal. So really, the problem most likely lies in the video plugins rather than the emulation core. I'm guessing on Project64, however, they added a hack to force the cursor to move around despite the red dot not working, which is why it works on that emulator." |
flashram_read_handing.patch | (download) |
src/memory/flashram.c |
1 1 + 0 - 0 ! |
add missing read mode check in flashram_command -> execute |
duplicates_cheatdb.patch | (download) |
data/mupen64plus.cht |
9 1 + 8 - 0 ! |
fix duplicate entries and broken formatting in cheat files. There may be others, but these are the obvious ones that tripped our parser. |
whitelist_cheatdb.patch | (download) |
data/mupen64plus.cht |
32 16 + 16 - 0 ! |
remove leading/trailing whitespace in some cheat strings. |
nfl_duplicates_cheatdb.patch | (download) |
data/mupen64plus.cht |
20 0 + 20 - 0 ! |
remove duplicate cheatfile entry (nfl quarterback club 2000). |
turok2_duplicates_cheatdb.patch | (download) |
data/mupen64plus.cht |
7 0 + 7 - 0 ! |
remove duplicate cheatfile entry (turok 2 - seeds of evil (fgd)). |