Commit graph

2650 commits

Author SHA1 Message Date
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
Richard Goedeken a98d235a49 another big changeset moving over to the new API: 1. removed main/config.h and config.c, refactored core code to use new config api 2. added code for CoreAttachPlugin/CoreDetachPlugin 3. refactored r4300 core selector mechanism for single variable, removing dynacore/interpcore 4. rewrote main.c, removing unneeded functions and variables, refactoring for new API 2009-10-20 19:47:04 -04:00
Richard Goedeken 9d76a0d749 refactor plugin API to match core<-->frontend API: created api/m64p_plugin.h with function pointers and structure definitions. main/plugin.h now contains just the extern plugin function pointer declarations, some version info, and the global functions for attaching/detaching plugins 2009-10-18 13:54:35 -04:00
Richard Goedeken 1f5117801d Completely rewrote Core's plugin handling code. Too many changes to list them all, but from a high-level perspective: 1. Remove all file-based library-handling code from plugin.c 2. Changed global API of plugin.c to integrate easily with entry-point code in api/frontend.c 3. New feature: automatic dummy plugin fallback 4. Removed legacy Win32 types (BYTE, DWORD) and struct members (hWnd, hInst, etc) 2009-10-17 22:09:51 -04:00
Richard Goedeken fc935ffae2 Finished first draft of api/config.c: 1. added ConfigDirOverride parameter to ConfigInit 2. bugfix ConfigOpenSection: create new section if requested name doesnt exist 3. finished CoreStartup() function 4. Bugfixes in ConfigSaveFile() 2009-10-17 00:01:17 -04:00
Richard Goedeken d907996618 implemented the last 4 functions in the Config section, the special ConfigSetDefault* functions 2009-10-16 19:33:07 -04:00
Richard Goedeken 25905c5e5c implemented special-purpose Get() functions in configuration module 2009-10-16 01:26:28 -04:00
Richard Goedeken 2ef22904b3 Added general-purspose config Get/Set functions. Changed internal config floating-point value type from Double to Float 2009-10-16 00:47:41 -04:00
Richard Goedeken e48eb68133 bugfix in osal_mkdirp() function 2009-10-15 23:50:52 -04:00
Richard Goedeken e4054426fe implemented remaining Selector functions in Config module 2009-10-15 23:38:47 -04:00
Richard Goedeken cd54230594 moved all of the api_* files from main/ to api/, removing the prefix api_ from their names 2009-10-15 23:10:56 -04:00
Richard Goedeken 4be66b99ca makefile fix. added ConfigShutdown and ConfigSaveFile functions. added another warning message in ConfigInit 2009-10-15 23:01:14 -04:00
Richard Goedeken 6d6aba46c4 1. Added config get/set function for Floats 2. Added ConfigInit() function to load and parse configuration file 2009-10-14 23:47:22 -04:00
Richard Goedeken 9f65528f36 1. added Config Get*Path() functions, conformant to XDG Base Directory Specification 2. added debug callback code to pass messages back to front-end application 3. added extra level parameter to DebugCallback 4. numerous parameter type fixes in API 5. added ConfigGetUserConfigPath() function to API, so that user data / user config are separated 2009-10-13 23:11:55 -04:00
Richard Goedeken baf8df1137 a couple of typo fixes and API updates made during the UI-console initial draft 2009-10-11 22:53:57 -04:00
Richard Goedeken 924f5dc803 finished PluginGetVersion() function in api_common.c. Now the front-end can attach to the core 2009-10-09 13:59:27 -04:00
Richard Goedeken 86bd682682 fix typos in m64p_debugger.h, add new error code, start adding code in api_common.c 2009-10-09 13:37:12 -04:00
Richard Goedeken 1052d25a4c Updated makefile to use static version.h instead of generating it from template 2009-10-09 13:36:04 -04:00
Richard Goedeken e86fab2bed 1. moved main/plugin.* and dummy*/* into new plugin/ folder. 2. changed all #include statements with paths so that instead of being relative to current source file, they are relative to base source directory. 2009-10-07 23:01:13 -04:00
Richard Goedeken 95707e9d32 Added empty framework for the 2.0 api: all of the Core functions which will be exported to the other modules, and the API header files containing function pointers for use by the other modules 2009-10-07 20:19:58 -04:00
Richard Goedeken 3d2621617e Tagged core: v1.999-milestone-1. Source tree has been re-arranged and pruned of unnecessary components, project builds as a shared library but still runs when linked to a binary 2009-10-04 20:01:46 -04:00
Richard Goedeken 5d35ed216e only compile with -fPIC on 64-bit arch because 32-bit shared lib can be built without it, and it has 40-60% speed penalty on i386. Add -fvisibility=hidden cflag for performance. Change rjump.c in both dynarecs so source can be properly built either with or without -fPIC -DPIC 2009-10-04 14:50:26 -04:00
Richard Goedeken b63168dd6b Removed 7zip and lzma source code. Removed <bzlib.h> dependency from main/rom.c and removed <zlib.h> dependencies from everywhere except main/zip/*, which is only used by main/savestates.c 2009-10-04 00:30:27 -04:00
Richard Goedeken ce938b162b removed NO_GUI preprocessor directive, l_GuiEnabled main.c flag, and signal handler 2009-10-03 23:22:37 -04:00
Richard Goedeken 483c5304ed removed unneeded #include from memory/memory.h 2009-10-03 21:07:45 -04:00
Richard Goedeken 6603eae74a removed some of the #include statements in header files in r4300/ 2009-10-03 20:27:39 -04:00
Richard Goedeken bdcb92d6fb removed romcache.c/h, moved INI handling functions into rom.c/h 2009-10-03 19:54:23 -04:00
Richard Goedeken 50cd84121b removed all #include statements from header files in debugger/ 2009-10-03 17:46:22 -04:00
Richard Goedeken c3dbca64fb changed makefile so that a shared library is built instead of a binary. Also had to change rjump.c in both 32-bit and 64-bit dynamic recompilers so that the inline ASM code would be position independent 2009-10-03 15:42:55 -04:00
Richard Goedeken b2e094d5cb changed src/opengl folder to src/osd 2009-10-03 14:09:42 -04:00
Richard Goedeken 2a774ed2aa re-wrote and simplified core makefile. Now object files are stored in a separate _obj directory in projects/unix/. Now the project actually builds with the new directory structure, though it currently builds a binary and not a library like it should 2009-10-03 12:24:32 -04:00
Richard Goedeken 7c9ca6d214 use valloc() instead of posix_memalign() in malloc_exec() function because pre 10.6 versions of Mac OSX do not have posix_memalign() 2009-10-02 22:25:52 -04: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