Scott Knauert
8049d55592
Fix race conditions and gdk threading issues that cause crashes with Rice.
...
- Only update the GUI's state after fully initializing the core in the emulation thread. This stops a race condition when plugin loading takes a long time (mostly noticable with hi-res textures on Rice).
- Exit gdk when calling core functions (core start / stop / pause - likely others will need this) since they may turn around and call GUI functions. This prevents a double locked gdk which causes a freeze.
2008-11-02 08:43:15 +00:00
Scott Knauert
cf11a8e6aa
No infinite error dialogs. Just a single one and sometimes crash on seg fault.
2008-10-28 02:06:12 +00:00
Scott Knauert
2ebe098c20
Implemented minor Gdk threading change. Appears to fix debugger crash on close bug.
2008-10-26 09:44:54 +00:00
Scott Knauert
777c6f9c1f
Fix __LINE__ macro is of type %d no %c in fprintf error. Also implemented Qt4-like start / pause / stop button behavior in Gtk2 GUI.
2008-10-05 23:00:45 +00:00
Scott Knauert
ce19873672
More gui_message cleanup.
2008-10-05 22:44:51 +00:00
Scott Knauert
9c0cdf8b8e
Going back to the older Gtk2 gui_message with a minor bug fix.
2008-10-05 22:37:39 +00:00
Louai Al-Khanji
573754f057
Fix up gui_message calls. Clean up gtk implementation.
2008-10-05 20:48:15 +00:00
Louai Al-Khanji
98d3f99fe0
Rework the gui state api a bit. Don't pass the enum through an unsigned
...
char. Changed the way the Qt4 ui handles things internally a bit.
Changed the gui_message to not use an unsigned char as well while I was
at it.
2008-10-05 15:18:59 +00:00
Scott Knauert
c53030d143
Minor Gtk toolbar tooltip fix.
2008-10-05 05:43:08 +00:00
Scott Knauert
663c3f2c13
Change how plugin combos are toggled in the Gtk GUI to update on state change.
2008-10-05 05:41:00 +00:00
Scott Knauert
008a65eaeb
Primarily implementation of new GUI state API and associated Gtk2 and Qt4 implementations. Fixed one minor Gtk bug (unable to select large toolbar icons). Fixed a could of NO_GUI warnings. Changed romcache.h to not define RCS structures in NO_GUI mode (more optimized NO_GUI binary). Fixed some non-ANSI static code analysis "bugs" mainly function() -> function(void) in C declarations. Also some GPL header updates to the newest template. Sorry for the large commit.
2008-10-05 03:33:52 +00:00
Scott Knauert
32a2ca13f9
A variety of Gtk GUI fixes. Some corner case bugs found by (and general cleanup to allow for) compiling with -Wall, also minor logic fix to improve UI and close issue 141.
2008-09-25 21:43:03 +00:00
Scott Knauert
1bd211aa06
First stab at themable Gtk icons for plugins. Extended plugin API with EXPORT void CALL SetInstallDir(char* installDir) based on the config dir work we had done. Modified core to send the install dir. Modified Rice to accept (since glide64 and rice share the same dialog system and we want to remove the windows icons from glide64), checks for a Gtk icon theme and hook into the theme change (does do transient dialog icon changes like the core, yet). Feel free to revert or offer other suggestions as to how best handle this.
2008-09-12 05:46:45 +00:00
Scott Knauert
32ea126717
Minor Gtk GUI fixes, pre.mk fixes for RSP Qt4 GUI.
2008-09-11 03:01:58 +00:00
Scott Knauert
b817627768
Code style changes for rcs thread. Minor Gtk GUI fixes, better handling of transient dialog icon themeing.
2008-09-09 18:28:53 +00:00
Scott Knauert
41640e3c54
Fixed issue 140, we can now delete roms from the rombrowser in both GUIs. Minor rcs code cleanup. Gtk GUI bugs, fixed memory leak / toggling full path crash issue. Child windows no longer have position memory, follow UI convention of snapping to center of main window.
2008-09-09 07:20:38 +00:00
Scott Knauert
63c4248bb1
Remove XID passing code accitendly commited as gdkx.h breaks portability.
2008-09-08 21:51:20 +00:00
Scott Knauert
a8f52ca62b
More Gtk GUI fixes. Finished transitioning to Gtk icon theme. Themable empty status stars. Minor UI additions to address issue 141. More removal of depreciated gtk functions. Fixed a number of minor bugs. First stab at better debugger GUI integration, strncpy fixes. Minor GUI API change from updaterombrowser() to update_rombroswer().
2008-09-08 11:13:02 +00:00
Richard Goedeken
18aa4baf5b
use SDL instead of pthreads in debugger, remove pthread from library list in makefile, fix small bug in glide64 makefile
2008-09-06 20:09:28 +00:00
Richard Goedeken
b69eb75714
merged r0970-sdl-threads branch into trunk. fixed old bug in signal handler
2008-09-06 05:27:50 +00:00
Scott Knauert
6790b9ce6b
Fixed minor icon oversight and win32 pthread bug.
2008-09-05 09:06:24 +00:00
Scott Knauert
13dee279e4
Gtk GUI improvements. Fix seg fault when adding new roms via config dialog. Added error dialogs when attempting to save or load save state while emulation is running. Fixed config policy to allow for changing plugin options while emulation is running. New standard Gtk About dialog. Removed a number of depreicated Gtk widget types and functions (mainly menu_shell and gtk_signal stuff). Added icons to most Gtk menu items (the 16x16 icons are also needed for the qt4 GUI). Better Gtk theme handling, foundation laid for plugins to tap into the mupen theme handling code. Fixes to mnemonic and labels. Major code cleanup.
2008-09-05 08:31:24 +00:00
Scott Knauert
e8a5dca439
Gtk GUI improvements, no need to reload full GUI on toolbar style or size change, better theme integration.
2008-08-28 21:08:45 +00:00
Scott Knauert
8059f07b5c
More minor Gtk GUI cleanup.
2008-08-27 06:08:10 +00:00
Scott Knauert
a4069b48ad
Gtk GUI updates for core and Jttl. Mostly Jttl polishing (add mnemonics) and dialog cleanup. Core config dialog, still needs work.
2008-08-26 21:34:23 +00:00
Scott Knauert
bc2476ede2
Removed defunct and unlicensed VCR functions, and language files. FSF address fixes.
2008-08-19 04:28:04 +00:00
Scott Knauert
2440008f10
Real compile guards for PLUGIN_INFO struct in Zilmar plugin spec. Rice video license fixes.
2008-08-18 22:50:55 +00:00
Scott Knauert
9d686fc1d3
Standardization of Zilmar spec. plugin headers, license fixes.
2008-08-18 09:29:44 +00:00
Scott Knauert
e14b6a936d
Replaced flags and n64cart icon Nmn added with original icon work to satifsy license issues. Also added base SVG files for our logo and GUI sheel integration icon. Minor GUI changes to use new icons.
2008-08-18 07:53:29 +00:00
Scott Knauert
1a655027ec
Many KDE4 GUI improvements. Fixed Play issue (selecting ROM and pressing play would not load ROM), re-added settings menu (removed in KXmlGUI rework), integrated with config system. Possible to hide filter. Uses toolbar settings from config system. Added plugin config options. Gtk GUI code is mainly an optimization of config integration.
2008-07-29 05:34:52 +00:00
Scott Knauert
620f98bd77
Implemented parts of astrange's portability patch. Mainly header (some missed malloc, some superfluous #includes removed) and plugin makefile improvements to improve OSX portability.
2008-07-28 02:56:08 +00:00
Scott Knauert
8f8b089899
Add OSX malloc.patch to trunk as <malloc.h> is non standard and there is no reason not to #include <stdlib.h> instead. In the process did some minor janitorial work on Gtk GUI, cleaning up extra #includes no longer needed (mainly non-RCS rom cache), gui_messages of messagetype = 1 would never occur, and gcc found a bug in filefrompath().
2008-07-26 10:04:08 +00:00
Scott Knauert
9263428e6d
KDE4 GUI slots now work (if slot is changed elsewhere, menu shows correct slot), slot is persistant. Added multirom archive suport to KDE4 GUI rombrowser. Minor KDE4 and Gtk GUI menu text / accelerator and mnemonic updates.
2008-07-22 18:23:46 +00:00
Scott Knauert
a67da4502b
Fixed reload() compiler warning. Shouldn't be in header since its not a public function.
2008-07-14 06:45:28 +00:00
Scott Knauert
a2ed083f95
Overhaul of messaging system. Mainly remove guifuncs.c and the associated includes. Double checked GUI=NONE build. Also changed alert_message to error_message as this is the more logical name. Also merged the three gui message functions which included a lot of repeated code as to simplify the gui api.
2008-07-14 06:42:33 +00:00
Scott Knauert
195afbe213
Fix semicolon bug in rom.c's hack detection for loop. Changed noask and messaging to only allow confirmation in GUI mode. Added #ifndefs for GUI=NONE option. Removed console confirmation code from guifuncs and the gui confirm.
...
-This line, and those below, will be ignored--
M main/gui_gtk/main_gtk.c
M main/guifuncs.c
M main/main.c
M main/rom.c
2008-07-13 23:46:38 +00:00
Scott Knauert
e3b1481a59
Changed rombrowser.cache format, added 4 bytes worth of 0s to the header so older (non RCS) versions simply ignore and rebuild the cache (as opposed to generally running out of memory or segfaulting). When switching back to an RCS version the cache will need to be rebuilt. Also changed some cache_entry types from unsigned short to unsigned chars to save space. Fixed two minor RCS bugs. Also added Penny Racers to the .ini.
2008-07-13 22:25:55 +00:00
James Hood
61a39ba35d
Added "Always Start in Full Screen Mode" checkbox to config dialog.
2008-07-01 18:04:20 +00:00
Richard Goedeken
44bb98d785
remove brackets around single conditional clauses (except romcache.*)
2008-07-01 03:33:05 +00:00
Richard Goedeken
30a1228913
style corrections for rev 722 - do not change C comments to C++ comments in a C file
2008-07-01 02:35:20 +00:00
Scott Knauert
59b84b98db
Added MainWindowXPosition and MainWindowYPosition so Gtk GUI remembers screen location along with sane fallbacks in case the user changes resolution.
2008-07-01 00:27:01 +00:00
Scott Knauert
b2427e1fb3
Fix bug when changing languages in Gtk GUI, simplify code and try to exit more cleanly.
2008-06-30 23:41:32 +00:00
Scott Knauert
a15ed3a458
Two memory bugs found with valgrind (not freeing 7zip db and having an if(buffer[counter]) for possible unitialized values of buffer).
2008-06-30 13:10:16 +00:00
Scott Knauert
685f42a28e
Rough 7zip support.
2008-06-30 01:13:04 +00:00
Scott Knauert
990d14f8fc
Changed open_rom() API. Updated its use in main and the Gtk GUI accordingly. Removed Gtk GUI title change to previous - rom internal name when loading via the file chooser since its silly and we don't do it when loading roms other ways. Moved open_rom() and close_rom() to rom.c and cleaned up the merged open_rom()/rom_read() function consolidating code, fixing a seg fault when the .ini couldn't assign a goodname to the loading rom.
2008-06-26 21:02:53 +00:00
Richard Goedeken
4bf03541d0
A few small changes to the new messaging code: dont use newlines in message strings, print to console even if gui is enabled, OSD pause message should be in center, print config/install dir info message to console. Small bugfix in gtk gui statusbar variable-arg code
2008-06-26 02:57:21 +00:00
Richard Goedeken
eaa7093f42
reverted commit 677, which introduced a bug which causes very bad things to happen if you run the same game twice. I suspect this is related to the g_MemHasBeenBSwapped mechanism which was removed in this commit, but there were too many changes to pinpoint the exact cause
2008-06-26 01:10:56 +00:00
Scott Knauert
d607893707
Tied rcs messages with new main_messaging system. Fixed longstanding rcs Gtk GUI bug (cannot load rom via play button), added multifile zip support, cleaned up rom loading functions.
2008-06-25 19:48:49 +00:00
Scott Knauert
b2c2462587
Integrated 2 icons out of 4 icons into theme which I missed, deleted 2 extra unused icons. We now actually make use of the config integration with MainWindowWidth/Height. Many Gtk GUI statusbar improvements. Implemented a unified console/GUI/OSB main_message function as per Richards suggestions. This is a little rough, I'd like suggestions to improve it and include the confirm message code.
2008-06-23 05:32:45 +00:00
Scott Knauert
ec306a5b63
Fixed eeprom issue crash for nogui version due to database RCS dependence. Set default savestate to 0. Savestate now persistent via config integration. Integrated sort column and method with config. Minor speedup to sorting.
2008-06-22 16:20:06 +00:00