Commit graph

282 commits

Author SHA1 Message Date
Richard Goedeken
8a74ba68a0 fixed technical bug in fread/fwrite calls in compare_core(): the size comes before the quantity 2009-11-19 23:53:08 -05:00
Richard Goedeken
05ff71f4c7 fixed all of the gcc warnings from upgraded compiler (4.3.4) in the 64-bit standard build 2009-11-19 23:34:38 -05:00
Richard Goedeken
c821c5cb53 Moved all of the SDL event-related stuff into a new source file eventloop.c. There are still 2 things to fix: the joystick axis-driven core commands are hosed without hysteresis, and the key_pressed and event_active functions should be removed. They are only used by gs_button_pressed in cheat.c and should be replaced with a better mechanism 2009-11-18 23:15:11 -05:00
Richard Goedeken
8852fb3e29 merged all of the patches from last night into local copy with 64-bit dynarec fixes 2009-11-15 01:13:21 -05:00
Richard Goedeken
6c78c3f2fb bugfix in dyna_start(): we need to load address of reg[] into r15, not its value 2009-11-15 00:58:38 -05:00
Richard Goedeken
7ed11ec79e modified all of the dynarec's generator functions to use the revised assembler functions for r15-relative addressing 2009-11-15 00:48:30 -05:00
Richard Goedeken
4d081ae72d Modified all instructions using m8abs operands in the assembler 2009-11-14 22:17:39 -05:00
Richard Goedeken
50bcee4503 Modified all instructions using m16abs operands in the assembler 2009-11-14 21:52:21 -05:00
Richard Goedeken
cb8ad59515 Modified all instructions using m32abs operands in the assembler 2009-11-14 21:29:53 -05:00
Richard Goedeken
7ce4ed70f6 start working on 64-bit Dynarec. Added r15 register load to dyna_start() for the base of relative memory accesses. Modified all instructions using m64abs operands in the assembler 2009-11-14 19:30:33 -05:00
Sven Eckelmann
421c5b059c Fix OSD crash after pause-stop-start-pause of emulator
The osd message handler for pause messages are managed outside the
message queue of the osd and will only be updated during
pauseContinueEmulation, but the message is bound to an OpenGL context
and thus must be also be deleted when the emulator is stopped and the
video plugin shuts down.
2009-11-14 01:01:38 -05:00
Sven Eckelmann
4923bcf6ad Don't override FGR with 0xffffffff after mtc0
When somebody switches between 64-bit wide FGR to 32-bit FGR it will
rearrange all registers in memory. This is partly done by shifting the
different parts of a new register pair for a double together. It is
important that this is done with unsigned integers or otherwise sign
extension is done and the upper part of the register will always be
0xffffffff when the bit 31 of the lower part of the register is 1.
2009-11-14 00:58:37 -05:00
Sven Eckelmann
27b4796613 Don't shuffle FGR loaded from Project64
I couldn't receive any comments from zilmar about the way the FGR
register is stored inside the savegame of pj64. So I wrote some
savegames to help me to reverse engineer it. The result was that we do
it nearly perfect, but the PJ64 savegame doesn't shuffle the data back
to 64 bit wide FGR before saving when it is currently in 32 bit wide
FGR. So we shouldn't do it when saving to or loading from PJ64 savegame.
2009-11-14 00:56:43 -05:00
Sven Eckelmann
814fa8df74 Set video width and status during savestate load
Not setting status and width for video plugins could result in
corrupted output in some programs.
2009-11-14 00:54:22 -05:00
Sven Eckelmann
69c0030c03 Set aiDacrate during savestate load
Without allowing the audio plugin to set the aiDacrate the program will
start to behave strangely because the audio plugin will work with a
wrong frequency.
2009-11-14 00:51:26 -05:00
Sven Eckelmann
93535075a2 Don't allow to override r0 register
r0 on MIPS is hardwired to zero. It is allowed to write to this
register, but the result of any operation with the target register r0 is
discarded.
2009-11-14 00:46:57 -05:00
Richard Goedeken
58c997278d cleaned up Auria's OSX bundle support patch 2009-11-14 00:39:08 -05:00
Richard Goedeken
2739a934c8 imported patch OSXBundleSupport 2009-11-14 00:32:56 -05:00
Richard Goedeken
6890b09c83 silly indentation 2009-11-14 00:32:37 -05:00
Richard Goedeken
6c151b57a7 imported patch FileReadBugFixed 2009-11-14 00:30:18 -05:00
Richard Goedeken
243fd15d2c cleaned up makefiles a bit 2009-11-14 00:29:31 -05:00
Richard Goedeken
7b602e0eba imported patch OSX_build 2009-11-14 00:24:08 -05:00
Richard Goedeken
13de16f444 zipped up the helper scripts into 1 tar.gz for easy linking from bitbucket 2009-11-09 07:52:45 -05:00
Richard Goedeken
72bcded234 updated the m64p_ tool scripts for more fine-grained operation 2009-11-08 23:50:13 -05:00
Richard Goedeken
0d283b31c2 in VidExt, track the current fullscreen/windowed state 2009-11-07 23:13:02 -05:00
Richard Goedeken
33fd1936a2 Fullscreen is not a core parameter anymore, now its in the Video-General section and the graphics plugin should correctly startup in fullscreen mode if set to True 2009-11-07 23:03:24 -05:00
Richard Goedeken
ac3543bf01 automatically save the configuration file the first time that the emulator is run 2009-11-06 19:45:54 -05:00
Richard Goedeken
a4878f044a added clone/build script in tools/ 2009-11-06 01:13:31 -05:00
Richard Goedeken
e3bef6c603 updated regression test script and config file to build the project with the 2.0 architecture 2009-11-05 01:15:29 -05:00
Richard Goedeken
5393c6fa7b bugfix: add path separator to the end of configuration folder, in case it was given through the command line and missing on the end 2009-11-05 00:38:53 -05:00
Richard Goedeken
94cf0bc5a3 added Stop, SetFrameCallback, and TakeNextScreenshot front-end functions. Fixed up the directory handling stuff in screenshot.cpp 2009-11-04 23:50:24 -05:00
Richard Goedeken
ea7fcf0c5d send the SDL KeyMod value to the input plugin 2009-11-04 22:31:06 -05:00
Richard Goedeken
62da3c1800 In the typedef struct {} BUTTONS data structure, X_AXIS and Y_AXIS were reversed, causing all kinds of brain damage to the code in the input plugin 2009-11-03 22:36:35 -05:00
Richard Goedeken
dd5a4108db added typedef'd pointer to ConfigDeleteSection() in m64p_config.h 2009-11-01 19:26:34 -05:00
Richard Goedeken
e624904332 Added ConfigDeleteSection() function 2009-11-01 19:20:44 -05:00
Richard Goedeken
1399f5177d wrote the Core Video Extension - part of this accepts and uses function pointers from the front-end for overriding the video functions, the other part calls SDL functions for fallback when the override is disabled 2009-10-30 01:12:41 -04:00
Richard Goedeken
76311e739c print warning if plugins are not attached in the proper order 2009-10-28 20:32:17 -04:00
Richard Goedeken
7719b7c6b6 print warnings when dummy plugins are attached 2009-10-28 07:55:24 -04:00
Richard Goedeken
40144ebea6 changed line spacing in written config file 2009-10-28 01:23:43 -04:00
Richard Goedeken
cc732fb536 bugfix: pass a pointer to the byte-swapped rom image to the gfx plugin, not the un-swapped header 2009-10-26 23:04:11 -04:00
Richard Goedeken
8a3e83927e added ROM Header back into GFX_INFO structure to sent when starting the video plugin. Changed ordering of startup operations: ROM must now be loaded _before_ the plugins are attached 2009-10-26 00:50:28 -04:00
Richard Goedeken
2ace585413 more user-friendly ROM information output through DebugMessage 2009-10-24 15:09:17 -04:00
Richard Goedeken
af80e7b4fb changed makefile option named DBG to DEBUGGER, and changed DBGSYM to DEBUG. added state load/save M64CMD enums 2009-10-22 23:06:50 -04:00
Richard Goedeken
2aeba8bf18 bugfix: need to set next pointer to NULL when creating new config section 2009-10-22 07:45:08 -04:00
Richard Goedeken
232faf5ae1 moved font.ttf file up one dir into data folder, removed fonts folder 2009-10-21 21:27:00 -04:00
Richard Goedeken
d4c357e4ff added rom handling and execute functions to CoreDoCommand. modified open_rom and close_rom in rom.c to work with new API 2009-10-21 21:23:17 -04:00
Richard Goedeken
debaf1a556 removed unneeded gui.h file 2009-10-20 23:47:43 -04:00
Richard Goedeken
90e6659a9a fixed minor chicken/egg problem; CoreStartup() needs a command-line specified shared data search path when it starts - it cant be specified later through the SharedDataPath core config variable because its needed at startup 2009-10-20 23:34:16 -04:00
Richard Goedeken
a213c0dbdd renamed some main.c functions for consistency. fixed segfault in ini_reader.c when cheat file .ini object is closed after failing to load 2009-10-20 21:35:01 -04:00
Richard Goedeken
0be75a2b23 filled in CoreErrorMessage() 2009-10-20 20:07:43 -04:00