Commit graph

282 commits

Author SHA1 Message Date
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