Commit graph

7215 commits

Author SHA1 Message Date
bunnei
7ff92c36ed SharedMemory: Updated MapSharedMemory to use an enum for permissions.
- Also added some safety checks to MapSharedMemory.
2014-07-05 10:24:54 -04:00
bunnei
882dc07929 Memory: Removed deprecated MapBlock_Shared function. 2014-07-05 10:24:54 -04:00
bunnei
7b7a435094 GSP: Fixed to use real shared memory object, various cleanups.
- Previously, used a hard-coded shared memory handle of 0x10002000 (as used by libctru homebrew)

GSP: Added name for shared memory.

GSP: Cleaned up assertion message.
2014-07-05 10:24:52 -04:00
bunnei
e547128185 Kernel: Added support for shared memory objects.
SharedMemory: Added optional name field for tracking known objects.
2014-07-05 01:21:05 -04:00
bunnei
3013015a0c mem_map: Updated interface to expose template functions to other modules. 2014-07-04 23:46:16 -04:00
bunnei
b70c4fb48e NCCH: Updated ExeFS memory allocation to be safer. 2014-07-04 20:37:51 -04:00
bunnei
542700ccb7 Archive: Added Init/Shutdown methods to reset kernel archive state. 2014-07-04 20:37:51 -04:00
bunnei
1099d83455 Marked AppLoader_ELF, AppLoader_NCCH, and Archive_RomFS virtual functions as "override". 2014-07-04 20:37:50 -04:00
bunnei
2d734bb6c5 Marked AppLoader_ELF, AppLoader_NCCH, and Archive_RomFS classes as "final" 2014-07-04 20:37:49 -04:00
bunnei
2c62d92551 Loader: Updated read methods to be const
- Required "file" handle to be made local and explicitly opened/closed as needed
2014-07-04 20:37:49 -04:00
bunnei
1ccdb6a769 Qt: Updated open dialog to include NCCH formats. 2014-07-04 20:37:48 -04:00
bunnei
17a6148f9d FileSys: Added preliminary support for applications reading the RomFS archive.
Archive: Fixed brace ugliness for neobrain :)

FS: Commented out unused local variables to prevent warnings.

...But keeping them here for future use.

archive_romfs: Removed unused #include.
2014-07-04 20:37:45 -04:00
bunnei
82702fedb8 APT: Added stubbed ReceiveParameter and various cleanups.
APT: More cleanups.

APT: Changed SignalType to be type u32.
2014-07-04 14:18:16 -04:00
Tony Wasserka
fd78786828 citra-qt: Rewrite disassembly view. 2014-07-02 21:16:36 +02:00
bunnei
d8da707bb9 Loader: Refactored interface such that data is no longer stored by loader.
NCCH: Removed extra qualification ‘Loader::AppLoader_NCCH::’.
2014-06-27 17:49:01 -04:00
bunnei
48e39fc992 FS: Added stubbed code to intercept and decode file system service functions.
FS: Added to CMakeLists.txt
2014-06-27 16:58:30 -04:00
bunnei
8b8c8f4c13 Kernel: Added stubbed code to support creation of kernel Archive objects. 2014-06-27 16:58:30 -04:00
bunnei
0cc3e85685 Core: Removed unused directory_file_system and meta_file_system modules.
Core: Updated CMakeLists.txt to remove directory_file_system and meta_file_system modules.
2014-06-27 16:58:30 -04:00
bunnei
469fe42fad Merge pull request #22 from bunnei/loader-improvements
Refactor loader code and add preliminary NCCH support
2014-06-25 09:46:14 -04:00
bunnei
a7f1c54490 Loader: Refactored loading functions to only read data from binary if called.
NCCH: Updated LoadExec to use Memory::WriteBlock function to load binary code.
2014-06-24 19:30:08 -04:00
bunnei
6aebd4ac98 MemMap: Added a WriteBlock function to write a buffer of data to memory. 2014-06-24 19:30:08 -04:00
bunnei
cedc28dcc6 ELF: Refactored LoadInto(..) to use memcpy, removed unnecessary code. 2014-06-24 19:30:07 -04:00
bunnei
62b444cd17 Loader: Refactored use of const. 2014-06-24 19:30:06 -04:00
bunnei
a8c4648520 NCCH: Added RomFS loading. 2014-06-24 19:30:06 -04:00
bunnei
3da2bc6830 NCCH: Fixes reduce unnecessary logging and load logo/banner/etc. sections correctly.
Loader: Added ErrorNotUsed ReturnStatus type to specify when something is not used.
2014-06-24 19:30:05 -04:00
bunnei
7889cafc76 Loader: Implemented AppLoader interface for abstracting application loading.
- Various cleanups/refactorings to Loader, ELF, and NCCH modules.
- Added AppLoader interface to ELF and NCCH.
- Updated Qt/GLFW frontends to check AppLoader ResultStatus.

NCCH: Removed extra qualification typos.

Loader: Removed unnecessary #include's.

NCCH: Improved readability of memcmp statements.

NCCH: Added missing space.

Elf: Removed unnecessary usage of unique_ptr.

Loader: Removed unnecessary usage of unique_ptr.
2014-06-24 19:29:58 -04:00
bunnei
4e4a028ecd citra_qt: Removed autogenerated files from repo and fixed build issues. 2014-06-22 16:37:07 -04:00
bunnei
79a48082e2 NCCH: Changed decompression to load .code directly into memory rather than an intermediate buffer. 2014-06-17 06:30:14 -04:00
bunnei
c144ed5058 Elf: Removed unused macros, changed #include of "common.h" to just "common_types.h". 2014-06-17 06:23:46 -04:00
bunnei
13bdaa6c60 Loader: Cleaned up and removed unused code, refactored ELF namespace. 2014-06-16 23:43:33 -04:00
bunnei
1da361c7ab Elf: Renamed modules to be consistent with new loader naming, fixed tabs -> spaces. 2014-06-16 23:43:32 -04:00
bunnei
3577dd027d Loader: Added support for booting NCCH executables.
NCCH: Fixed typo in printing NCCH filename.
2014-06-16 23:43:29 -04:00
bunnei
0aca202ae9 Loader: Moved elf and loader modules to a "loader" subdirectory. 2014-06-16 18:03:13 -04:00
bunnei
2d7c46c874 Loader: Added stubbed detection of CXI and CCI files. 2014-06-16 17:53:25 -04:00
bunnei
10ae45b5e7 Loader: Removed unused CXI and DAT loading code. 2014-06-16 17:51:04 -04:00
bunnei
004df76795 Merge branch 'threading' of https://github.com/bunnei/citra
Conflicts:
	src/core/hle/function_wrappers.h
	src/core/hle/service/gsp.cpp
2014-06-14 12:13:16 -04:00
bunnei
b45a38f557 Kernel: Removed unnecessary "#pragma once". 2014-06-13 09:51:20 -04:00
bunnei
f49ac3a2d7 Kernel: Added freeing of kernel objects on emulator shutdown. 2014-06-13 09:51:19 -04:00
bunnei
83a4ad2885 Event: Updated several log messages to be assertions. 2014-06-13 09:51:18 -04:00
bunnei
edaefe9fa6 HLE: Moved "PARAM" and "RETURN" macros to function_wrappers.h (this is only module where they are needed). 2014-06-13 09:51:18 -04:00
bunnei
8957622d10 SVC: Renamed all function wrapper templates to Wrap, moved to HLE namespace. 2014-06-13 09:51:17 -04:00
bunnei
b62ef4bbd2 Thread: Renamed occurrences of "t" to "thread" to improve readability. 2014-06-13 09:51:17 -04:00
bunnei
5b7cf50a77 Thread: Cleaned up VerifyWait, fixed issue where nullptr msg could unnecessarily be logged. 2014-06-13 09:51:16 -04:00
bunnei
4620e2a741 HLE: Removed usnused EatCycles function. 2014-06-13 09:51:16 -04:00
bunnei
862db811f0 SVC: Cleaned up function wrappers to pass in correct argument types. 2014-06-13 09:51:15 -04:00
bunnei
bfdd874b1f Thread: Moved position of * in arguments. 2014-06-13 09:51:14 -04:00
bunnei
12e2a59565 Thread: Updated VerifyWait to be more readable (but functionally the same). 2014-06-13 09:51:14 -04:00
bunnei
4d6c96b7d8 SVC: Moved declaration of "wait" variable in SendSyncRequest for improved readability. 2014-06-13 09:51:13 -04:00
bunnei
c95972275e HLE: Updated all uses of NULL to nullptr (to be C++11 compliant) 2014-06-13 09:51:13 -04:00
bunnei
5365ca157d Kernel: Updated various kernel function "name" arguments to be const references. 2014-06-13 09:51:12 -04:00
bunnei
d7363322c7 HLE: Updated various handle debug assertions to be more clear. 2014-06-13 09:51:11 -04:00
bunnei
780a443b08 Mutex: Moved ReleaseMutex iterator declaration to be inside while loop. 2014-06-13 09:51:11 -04:00
bunnei
8cac527c94 Kernel: Updated several member functions to be const 2014-06-13 09:51:10 -04:00
bunnei
0deeda54ee Core: Cleaned up SingleStep(), updated default LCD refresh to assume each instruction is ~3 cycles 2014-06-13 09:51:09 -04:00
bunnei
3449aaa350 Core: Changed HW update/thread reschedule to occur more frequently (assume each instruction is ~3 cycles) 2014-06-13 09:51:09 -04:00
bunnei
b774b8b04e Thread: Fixed bug with ResetThread where cpu_registers[15] was being incorrectly set 2014-06-13 09:51:08 -04:00
bunnei
aae9fcf4a4 Kernel: Made SyncRequest not pure virtual, with a default implementation of error (as this is not required for all kernel objects) 2014-06-13 09:51:08 -04:00
bunnei
f5c7c15434 Kernel: Added real support for thread and event blocking
- SVC: Added ExitThread support
- SVC: Added SignalEvent support
- Thread: Added WAITTYPE_EVENT for waiting threads for event signals
- Thread: Added support for blocking on other threads to finish (e.g. Thread::Join)
- Thread: Added debug function for printing current threads ready for execution
- Thread: Removed hack/broken thread ready state code from Kernel::Reschedule
- Mutex: Moved WaitCurrentThread from SVC to Mutex::WaitSynchronization
- Event: Added support for blocking threads on event signalling

Kernel: Added missing algorithm #include for use of std::find on non-Windows platforms.
2014-06-13 09:51:02 -04:00
Tony Wasserka
c34ba38001 GPU debugger: Const correctness and build fix. 2014-06-12 06:10:56 -04:00
bunnei
b919158050 Removed definition of MAX_PATH, this is already defined in common_paths.h. 2014-06-12 06:10:55 -04:00
archshift
ee4717aaae Preprocessor: #if's out OSX-specific GL changes on other platforms 2014-06-12 06:10:55 -04:00
bunnei
06ef8f001a Common: Removed duplicate "LONG" and "MAX_PATH" definitions. 2014-06-12 06:10:54 -04:00
Tony Wasserka
4c2bff61e5 Pica: Use some template magic to define register structures efficiently. 2014-06-12 06:10:54 -04:00
Tony Wasserka
f82410e633 Further refine GPU command list debugging. 2014-06-12 06:10:53 -04:00
Tony Wasserka
b0051b2203 Refine command list debugging functionality and its qt interface. 2014-06-12 06:10:52 -04:00
Tony Wasserka
6893732348 citra-qt: Add command list view. 2014-06-12 06:10:52 -04:00
Tony Wasserka
5d62f5d92a GPU debugger: Add functionality to inspect command lists. 2014-06-12 06:10:51 -04:00
Tony Wasserka
50b2b73be4 video core: added PICA definitions file. 2014-06-12 06:10:51 -04:00
Tony Wasserka
d4530765ce GPU: Cleanup register definitions. 2014-06-12 06:10:50 -04:00
Tony Wasserka
1dfa392824 Rename LCD to GPU. 2014-06-12 06:10:49 -04:00
Tony Wasserka
87e98ff97b citra-qt: Add GX command history viewer. 2014-06-12 06:10:49 -04:00
Tony Wasserka
31666632ca Add initial graphics debugger interface. 2014-06-12 06:10:48 -04:00
Tony Wasserka
82d3260359 GSP: Define more GX commands. 2014-06-12 06:10:48 -04:00
Tony Wasserka
b1c8bad9a6 Pica: Add command list registers. 2014-06-12 06:10:47 -04:00
bunnei
a002abf171 qt: updated disassembler to show 2X as many instructions 2014-06-05 01:08:54 -04:00
bunnei
174cc9a0ed hle: added a hokey way to force a thread reschedule during CPU single step mode (as used by the debugger) 2014-06-05 00:26:48 -04:00
bunnei
6cdad8390c arm: fixed a bug where ARM_Interpreter::ExecuteInstructions was actually executing one more instruction than expected 2014-06-05 00:25:32 -04:00
bunnei
ce1c561278 kernel: changed current default thread priority back to 0x30 - I think this is more correct 2014-06-05 00:20:58 -04:00
bunnei
9ece9da50d arm: fixed bug in how thread context switch occurs with SkyEye 2014-06-05 00:20:11 -04:00
bunnei
870c6146e7 service: added a error log messages for unimplemented WaitSynchronization 2014-06-04 18:50:50 -04:00
bunnei
c330a0a1d6 arm: reverting a change made with cb0663de - this has to have been a typo! 2014-06-04 18:41:44 -04:00
bunnei
b78aff8585 svc: added optional name field to Event and Mutex (used for debugging) 2014-06-02 20:38:34 -04:00
bunnei
8c0f02a70c kernel: moved position of * for GetTypeName and GetName 2014-06-02 20:36:58 -04:00
bunnei
2773360f84 coprocessor: reenabled debug log 2014-06-02 20:36:34 -04:00
bunnei
477b0caca4 svc: updated WaitSynchronizationN to properly use first pointer argument 2014-06-02 17:54:07 -04:00
bunnei
4819e9a60f svc: changed DuplicateHandle log message from "error" to "debug" 2014-06-01 22:33:53 -04:00
bunnei
3fb31fbc57 svc: added GetThreadPriority and SetThreadPriority, added (incomplete) DuplicateHandle support 2014-06-01 22:12:54 -04:00
bunnei
10447d1f48 kernel: changed main thread priority to default, updated Kernel::Reschedule to use PrepareReschedule 2014-06-01 21:42:50 -04:00
bunnei
e8a17ee6fd arm: added option to prepare CPU core (while mid-instruction) for thread reschedule 2014-06-01 21:40:10 -04:00
bunnei
15c7d81706 svc: cleaned up function_wrappers, updated various SVCs to make use of pointer arguments 2014-06-01 20:48:29 -04:00
Disruption
0be75c13ee Added 'this' reference to num_instructions field so it's properly updated,as before the method was affecting the local method parameter rather than the class field 2014-06-01 21:08:26 +02:00
bunnei
00adbc7817 log: updated MAX_LOGLEVEL to use correct log level enum type 2014-06-01 11:49:58 -04:00
bunnei
5cd922d151 log: updated GenericLog __attribute__ for newly added parameter 2014-06-01 11:05:48 -04:00
bunnei
2f55c9e55b svc: added missing function wrapper for SleepThread 2014-06-01 10:41:41 -04:00
bunnei
7dd18a8df9 gsp: always pass through synchronization barrier for commands 2014-06-01 10:41:23 -04:00
bunnei
f2f638492b svc: updated waitSychronization to not overwrite handle on return, added stub for SleepThread (does nothing) 2014-06-01 10:37:19 -04:00
bunnei
ba98e25e97 thread: updated Reschedule to sit at a synchronization barrier when no other threads are ready for execution 2014-06-01 10:35:42 -04:00
bunnei
f7cececc5c event: added a hackish ability to set an event as "locked" to its current state, cleaned up some comments 2014-06-01 10:33:55 -04:00
bunnei
55325dea4c hle: added stubbed service for ndm_u 2014-05-30 00:24:04 -04:00
bunnei
c451ad2835 service: cleaned up log messages 2014-05-30 00:22:39 -04:00
bunnei
2482be13df service: removed PT_A from, as this was just an alias for APT_U 2014-05-30 00:22:25 -04:00
bunnei
007b7edada srv: fix to log unimplemented service (instead of crash) 2014-05-29 23:54:09 -04:00
bunnei
d8a2c8c657 mutex: fixed typo in ReleaseMutex 2014-05-29 23:31:01 -04:00
bunnei
c404d22036 hle: cleaned up log messages 2014-05-29 23:26:58 -04:00
bunnei
b0bad47c0e svc: updated OutputDebugString to use OS_LOG 2014-05-29 23:04:18 -04:00
bunnei
55a540eb02 arm: removed unnecessary code when calling SVC from skyeye 2014-05-29 23:03:47 -04:00
bunnei
6fc62f8c93 log: fixed to not print twice, enabled coloring, added OS print logging as its own type 2014-05-29 23:03:03 -04:00
bunnei
9839f3b6cd core: changed time delay before kernel reschedule to "approximate" a screen refresh 2014-05-29 20:30:17 -04:00
bunnei
6d267142ad svc: changed unimplemented SVC log messages from "debug" messages to "error" messages 2014-05-29 20:26:27 -04:00
bunnei
58af0da792 svc: added svcClearEvent, stubbed function for svcArbitrateAddress, and various fixes
- force kernel reschedule after svcWaitSynchronization
- fixed some bugs with passing in pointer arguments
- cleaned up some comments and log messages
2014-05-29 20:24:51 -04:00
bunnei
d51c84dde2 event: added support for ClearEvent, fixed a bug with CreateEvent, fixed some comments 2014-05-29 20:00:44 -04:00
bunnei
545e6919ce service: added additional hack to return success on unimplemented service calls 2014-05-29 18:54:59 -04:00
bunnei
b08b3c154f srv: changed a NOTICE_LOG to DEBUG_LOG 2014-05-29 18:53:45 -04:00
bunnei
e7202e5b2d svc: added ArbitrationType enumeration 2014-05-29 18:52:57 -04:00
bunnei
4b4a6de1d8 apt: added stubbed function for InquireNotification 2014-05-28 23:33:24 -04:00
bunnei
c4b5168b45 hle: properly cast 64-bit function wrapper parameters to (u64) 2014-05-28 22:03:10 -04:00
bunnei
9fd5d6c7d8 hle: removed PARAM64 macro (this was incorrect), made several bug fixes accordingly for decoding U64 function parameters 2014-05-28 21:20:00 -04:00
bunnei
46aef01d04 lcd: moved kFrameTicks to lcd.h for use in other modules 2014-05-28 21:19:13 -04:00
bunnei
70af9d620b service: changed interface to return 0 (no error) when a service method is unimplemented - hack to make apps boot further 2014-05-28 18:39:28 -04:00
bunnei
3972d4ca8b APT_U: added stubbed function for APT_U::Enable, fixed some log messages to be more consistent 2014-05-27 23:56:08 -04:00
bunnei
2ed6652f10 mutex: added preliminary SyncRequest/WaitSynchronization, added some comments/assertions 2014-05-27 22:42:16 -04:00
bunnei
47e781e80a svc: implemented WaitSynchronization1, WaitSynchronizationN, and CreateEvent 2014-05-27 22:41:09 -04:00
bunnei
94b30e8a38 APT_U: added event creation to Initialize method 2014-05-27 22:29:11 -04:00
bunnei
ea8627d536 event: fixed typos and updated CMakeLists 2014-05-27 22:14:38 -04:00
bunnei
beea6f054a event: added SetEventLocked method to change status an events lock 2014-05-27 22:14:00 -04:00
bunnei
fd69fd0325 kernel: added event module to support creation of CTR "Event" objects 2014-05-27 20:16:13 -04:00
bunnei
d493d725ac mutex: removed docstring comment that is no longer relevant 2014-05-26 22:49:11 -04:00
bunnei
93cd5a0691 mutex: added additional docstrings 2014-05-26 22:47:47 -04:00
bunnei
a432dc8f39 kernel: added WaitSynchronization method to Kernel::Object 2014-05-26 22:17:49 -04:00
bunnei
58a3adcdd2 kernel: updated SyncRequest to take boolean thread wait result as a parameter 2014-05-26 22:12:46 -04:00
bunnei
6e51c56fe4 svc: added some assertions 2014-05-26 21:57:10 -04:00
bunnei
16fea415d0 service: Renamed Sync to SyncRequest 2014-05-26 21:56:51 -04:00
bunnei
3d7693f75f kernel: added enum for known CurrentThread and CurrentProcess handles 2014-05-26 21:56:23 -04:00
bunnei
96b2105524 srv: added a real mutex for GetProcSemaphore (instead of stubbed) 2014-05-26 21:55:55 -04:00
bunnei
9f7ed2d027 svc: changed SendSyncRequest to use Kernel::Object SyncRequest (instead of just service Interface class) 2014-05-26 21:17:10 -04:00
bunnei
d73d782ba7 kernel: add a SyncRequest method to KernelObject for use with svcSendSyncRequest 2014-05-26 21:01:27 -04:00
bunnei
15d2ab1b33 svc: added stub for DuplicateHandle SVC call 2014-05-26 20:55:48 -04:00
bunnei
0aa582bf89 service: fixed typo that MSVC did not catch as an error 2014-05-22 23:48:37 -04:00
bunnei
420971a849 core: fixed headers in CMakeLists 2014-05-22 23:39:25 -04:00
bunnei
32c314c992 Merge branch 'threading' 2014-05-22 22:57:45 -04:00
bunnei
1de7e8cbe4 Merge branch 'master' of https://github.com/bunnei/citra 2014-05-22 22:54:56 -04:00
bunnei
51f636b3d4 core: added Kernel::Reschedule() call to check for thread changes, shortened delay time to 100 instructions 2014-05-22 22:54:07 -04:00
bunnei
f8a98ab022 svc: added a check to ensure that a service was implemented before attempting to connect to its port 2014-05-22 22:49:29 -04:00
bunnei
7bb66421a0 lcd: added thread wait after (faked) vblank interrupt (would have) occurred 2014-05-22 20:01:04 -04:00
bunnei
b99ac2c3d6 thread: renamed "WaitCurThread" to "WaitCurrentThread", removed unused "reason" argument 2014-05-22 19:36:56 -04:00
bunnei
7c0b006076 thread: removed unused SwitchContext/Reschedule reason field, added missing arg parameter to SVC CreateThread 2014-05-22 19:32:45 -04:00
bunnei
d26f3d4c1f kernel: refactored function naming to remove "__" prefix 2014-05-22 19:06:12 -04:00
bunnei
ac21e8f2db core: moved armcopro.cpp to correct filter folder (arm/interpreter) 2014-05-22 18:51:55 -04:00
bunnei
14bd37c5dc thread: moved ThreadStatus/WaitType to header, added support for arg on CreateThread, added correct CPSR reset 2014-05-22 18:50:36 -04:00
bunnei
9fddba6843 APT_U: added a debug log on calling GetLockHandle 2014-05-22 18:48:14 -04:00
bunnei
481d936d34 arm_interpreter: fixed load context to currently resume a thread 2014-05-22 18:47:42 -04:00
bunnei
6a78be5930 thread: fixed bug where result of __NextThread was not being properly checked when NULL 2014-05-21 21:42:18 -04:00
bunnei
06e3c3d55a svc: added Kernel::Reschedule to svc WaitSynchronization1, updated log messages to include newly created handles 2014-05-21 21:41:40 -04:00
bunnei
706584f007 svc: enabled use of newly created kernel thread handle 2014-05-20 23:36:35 -04:00
bunnei
eb537c560a mutex: refactored the interface to code to return a Mutex* handle 2014-05-20 23:23:58 -04:00
bunnei
978e1d4653 mutex: initial commit of HLE module 2014-05-20 23:03:45 -04:00
bunnei
08e6a9bf89 svc: added some comments 2014-05-20 22:57:54 -04:00
bunnei
1c5802c35a kernel: fixed include, in general include "common.h" not "common_types.h" 2014-05-20 22:27:46 -04:00
bunnei
9bf7ce535a service: removed redundant include of common_types.h 2014-05-20 22:27:12 -04:00
bunnei
a721a4eb33 arm: removed include of windows.h from armdefs.h to arminit.c (only module that uses it) 2014-05-20 22:26:40 -04:00
bunnei
22eb9a8981 armemu: missed rename of "Syscall" to "SVC" 2014-05-20 22:25:40 -04:00
bunnei
203541da11 thread: added correct lowest thread priority, added a thread priority check, and added some comments 2014-05-20 21:02:35 -04:00
bunnei
bed4e920fa thread: exposed ResumeThreadFromWait function for use in other kernel modules 2014-05-20 21:00:10 -04:00
bunnei
75c6d2a8fa thread: moved threading calls to the Kernel namespace 2014-05-20 19:37:46 -04:00
bunnei
0012802456 ARM_Interpreter/ARM_Interface: Fixed member variable naming to be consistent with style guide 2014-05-20 18:52:54 -04:00
bunnei
49dc2ce8ac ARM_Interface: added SaveContext and LoadContext functions for HLE thread switching 2014-05-20 18:50:16 -04:00
bunnei
143bba2045 renamed "syscall" module to "svc" (more accurate naming) 2014-05-20 18:28:38 -04:00
bunnei
f654a03f1f thread: whitespace change - fixed * and & placement 2014-05-20 18:20:35 -04:00
bunnei
44336329ed - created a Kernel namespace
- cleaned up Kernel code a bit (moved stuff into namespace, fixed whitespace issues)
- added handle types for all different CTROS handles
2014-05-20 18:13:25 -04:00
bunnei
0886dc70ed apt: changed stubbed handle to be something other than 0xDEADBEEF (used as a magic value in other places) so that I can track how it propagates through the app code 2014-05-19 22:21:17 -04:00
bunnei
f5a119a367 thread: added declaration for __KernelReschedule to be used by syscall module 2014-05-19 22:19:48 -04:00
bunnei
29930ac110 VFP: disable DBG messages because they spam the console with unimportant skyeye junk 2014-05-19 22:19:10 -04:00
bunnei
204c6bfeca Merge pull request #2 from archshift/issue-7-fix
Fixes issues with building Citra on OSX
2014-05-19 21:46:57 -04:00
archshift
5a8ed196e6 common_types: Changed BasicRect back to Rect, in the common namespace
Only Rect is in the namespace for now; the rest of common should be added in the future
2014-05-19 17:57:35 -07:00
archshift
034e3aabc8 Improved clarity and whitespace
Changed QGL version to 3,2 in order to be less restrictive, yet it should still change up to 4,1 on OSX on Qt5.
2014-05-19 15:21:55 -07:00
archshift
403e4bf837 CMakeLists: rename HEADS, improved comments
Changes for clarity of comments, removed redundant compiler flags.
2014-05-19 15:19:36 -07:00
archshift
71b8789803 Indent fixes 2014-05-19 13:51:59 -07:00
bunnei
9592d61037 Merge pull request #13 from archshift/master
Use runtime arguments to specify boot filename.
2014-05-18 22:39:40 -04:00
bunnei
088a2de9a6 renamed "session" to "handle" 2014-05-18 22:24:26 -04:00
bunnei
112904b832 - renamed NewHandle to CreateHandle
- updated CreateHandle/DeleteHandle to use KernelObject's
2014-05-18 22:09:08 -04:00
bunnei
16d55842c5 fix warning 2014-05-18 21:43:41 -04:00
bunnei
eab6fd01d7 - updated service(s) to be KernelObject's
- various cleanups
2014-05-18 21:43:29 -04:00
bunnei
725d240bf7 renamed "UID" to "Handle" where appropriate 2014-05-18 18:24:24 -04:00
bunnei
772abad778 - moved Handle/Result definitions to kernel.h
- added ResetType enum
2014-05-18 18:12:29 -04:00
bunnei
8fba88d5d5 - added stub for CreateEvent
- changed some stubbed SVCs to return unique handle names for debugging purposes
2014-05-18 17:52:02 -04:00
bunnei
6a6c7eeccb added stubbed function for WaitSynchronizationN 2014-05-17 23:37:25 -04:00
archshift
c396a5ac57 Fixed vfp issues 2014-05-17 10:55:45 -07:00
bunnei
fbc04ad0c7 ignore thumbemu 0xDEADCODE debugging catch on MCR 2014-05-17 13:48:27 -04:00
bunnei
09b8e8fb6a changed a comment 2014-05-17 13:47:55 -04:00
bunnei
cfea5fdd58 cleanups to SVC CreateThread 2014-05-17 13:47:44 -04:00
bunnei
3fac6dc39e Merge branch 'master' into threading 2014-05-17 13:35:20 -04:00
bunnei
265c770a9d updated how we call ARM core to make things much faster 2014-05-17 11:59:18 -04:00
archshift
c1394650ff Updated cmakelists 2014-05-16 23:39:27 -07:00
archshift
b8c8d0903e Merge remote-tracking branch 'upstream/master' into issue-7-fix 2014-05-16 23:21:03 -07:00
bunnei
14ae026386 - added enum ThreadProcessorId
- reorganized some kernel thread functions
- added placeholder __KernelWaitThread_Synchronization function
2014-05-17 00:56:00 -04:00
bunnei
43bc2ac724 added MIN, MAX, and CLAMP macros to common_funcs 2014-05-17 00:53:41 -04:00
bunnei
7cdb705059 - replaced KERNELOBJECT_MAX_NAME_LENGTH with KERNEL_MAX_NAME_LENGTH
- added KERNEL_DEFAULT_STACK_SIZE definition (0x4000)
2014-05-16 23:48:15 -04:00
bunnei
39ee75fc8d added stubbed GetProcSemaphore - does nothing but avoids an exception 2014-05-16 23:25:16 -04:00
bunnei
4faed70b40 add kernel.* and thread.* to VS filters 2014-05-16 23:24:39 -04:00
bunnei
540a693eae updated APT_U::GetLockHandle to return a valid handle 2014-05-16 23:23:56 -04:00
bunnei
0b1ba2f37a Merge master into threading to add support for VFP 2014-05-16 22:24:34 -04:00
bunnei
92be5517c4 same fix as last commit - just for vfpsingle.cpp 2014-05-16 21:25:33 -04:00
bunnei
1dc08765a8 another VFP fix for GCC 2014-05-16 21:18:01 -04:00
bunnei
509f63486a fixed VFP DBG log for GCC 2014-05-16 21:10:30 -04:00
bunnei
afc9e27fc7 fixed typo in CMakeLists.txt 2014-05-16 20:57:31 -04:00
bunnei
145a91f21f - reenabled MCR and MRC functions now that VFP is attached
- removed HLE::CallMCR function (was pointless)
2014-05-16 20:52:46 -04:00
bunnei
a2804bf701 - removed unused stubbed out code
- fixed some compiler issues with xscale_copro when porting code to Windows
- fixed some #include's
2014-05-16 20:04:13 -04:00
bunnei
f872807de2 added maverick.cpp to ARM core from skyeye 2014-05-16 00:52:42 -04:00
bunnei
f3c9875acb fixed includes 2014-05-16 00:52:13 -04:00
bunnei
f5400080bd enabled CP_ACCESS_ALLOWED 2014-05-16 00:51:59 -04:00
bunnei
68408ed9b9 fixed include path 2014-05-16 00:51:45 -04:00
bunnei
7cd7d17954 removed undefined function ARMul_ConsolePrint 2014-05-16 00:51:36 -04:00
bunnei
ad49d481a8 added missing armcopro from skyeye 2014-05-16 00:23:36 -04:00
bunnei
9a642caee7 added missing skyeye mmu code 2014-05-15 23:39:06 -04:00
bunnei
56846a4200 fixed armmmu imports 2014-05-15 22:58:21 -04:00
bunnei
3e1eafa244 - moved mmu to arm/interpreter folder
- added initial VFP code from skyeye
2014-05-15 22:54:17 -04:00
bunnei
4fba4f36bf - added SVC stubs for QueryMemory and GetThreadId
- added SVC structs MemoryInfo and PageInfo
2014-05-15 20:17:30 -04:00
bunnei
4910b6f336 added memory mapped region for system mem - sdk demos load a segment here on ELF load 2014-05-15 18:56:28 -04:00
bunnei
3c240abf10 added ability to load AXF files (same as ELF) 2014-05-15 18:54:57 -04:00
bunnei
940330c6e1 completely gutted/refactored threading code to be simpler 2014-05-15 18:27:08 -04:00
bunnei
a7cc430aa4 changed "UID" to "Handle" to be a little more consistent with CTR naming 2014-05-15 18:26:28 -04:00
bunnei
367d63691f - added ThreadContext struct
- cleaned up CreateThread svc
2014-05-15 18:25:56 -04:00
bunnei
cf2eb8e3d3 added ThreadQueueList class to common (taken from PPSSPP) 2014-05-15 18:19:34 -04:00
bunnei
b99a5da65b - added helper function for __KernelCreateThread
- added __KernelSwitchToThread for enabling a thread
- added __KernelRotateThreadReadyQueue
2014-05-14 20:50:30 -04:00
bunnei
9f5588725c changed primary thread priority to 0x30 - this is typical, not 0x31 2014-05-14 20:49:27 -04:00
bunnei
4d7f3c74fd added function stubs for EatCycles and ReSchedule 2014-05-14 20:49:02 -04:00
bunnei
0de78eb3c4 fixed thread reset to not set stack address 2014-05-13 23:18:28 -04:00
bunnei
7d078189da various cleanups / remove unused code 2014-05-13 22:29:31 -04:00
bunnei
3838d46b90 added a bunch of threading code, recycled from PPSSPP, with lots of hacks in for 3DS... doesn't really do much yet. Just a jumping off point 2014-05-13 22:00:11 -04:00
bunnei
b87536e82c changed loader to use __KernelLoadExec 2014-05-13 21:58:51 -04:00
bunnei
b5ef630c9c added CreateThread, CreateMutex, and ReleaseMutex SVC stubs (just parameter decoding for now) 2014-05-13 21:58:26 -04:00
bunnei
1583d2b6f3 - added __KernelLoadExec function
- fixed some logging
2014-05-13 21:57:12 -04:00
bunnei
ce4d271a53 added option to set CPSR register to arm_interface 2014-05-11 22:14:13 -04:00
bunnei
6b264518a5 added initial kernel/thread modules 2014-05-09 22:11:18 -04:00
bunnei
daf7a7880a added kernel logger to common 2014-05-09 20:54:51 -04:00
bunnei
bdc54d0d48 Merge pull request #15 from bunnei/hle-services
Various fixes/improvements to HLE of 3DS services, mostly cleans up GSP call decoding
2014-05-08 17:16:35 -04:00
bunnei
b39cd3a64c removed unknown fields from GX_CmdBufferHeader 2014-05-08 17:12:07 -04:00
bunnei
a6b047ec3b removed incorrect dolphin copyright line 2014-05-08 17:11:41 -04:00
Sethpaien
e1fcb2fdfb Update FlipFramebuffer
Less calculations + fix
2014-05-08 18:05:30 +02:00
bunnei
a713bd1bad fixed include of common in bit_field.h 2014-05-07 21:44:16 -04:00
bunnei
505d984f16 logger fix for linux 2014-05-07 21:34:04 -04:00
bunnei
4de763f462 removed unnecessary log message 2014-05-07 21:19:03 -04:00
bunnei
72622a1b5a - removed HLE mem "hack" and replaced with kernel mem region
- added a helper function for getting command buffer for services
- fixed bug where GSP DMA was incorrectly being done in DataSynchronizationBarrier (instead of gsp_TriggerCmdReqQueue)
2014-05-07 21:04:55 -04:00
bunnei
f23e99bb85 added kernel memory to mem_map 2014-05-07 21:01:09 -04:00
bunnei
92bde183dd added GSP to loggers 2014-05-07 20:59:21 -04:00
bunnei
e7a0283625 added BitField to common 2014-05-07 18:14:42 -04:00
bunnei
de36d82dde - added debug logging to syscall.cpp
- added stubbed HLE syscall functions for svc_GetResourceLimit and svc_GetResourceLimitCurrentValues
2014-05-06 23:34:20 -04:00
bunnei
a3a383cb7a added mem_map read for config_mem 2014-05-06 23:32:04 -04:00
bunnei
34dc0a9b07 added config_mem module for HLE of firmware configuration memory settings 2014-05-06 23:29:39 -04:00
bunnei
d1472b816f - disable strict alignment on LDRD/STRD
- handle RD in STREX/STREXB
2014-05-06 21:34:00 -04:00
bunnei
9db26df05f - added better SVC logging
- added stubs for GetResourceLimit and GetResourceLimitCurrentValues SVCs
2014-05-06 17:18:20 -04:00
bunnei
e3ee3e441b commented out useless debug logs that just spammed console 2014-05-06 17:17:00 -04:00
archshift
bd316ca0c0 Fixed indents 2014-05-04 15:47:42 -07:00
archshift
62528320ea Check arg count before attempting to access it. 2014-05-01 20:41:42 -07:00
bunnei
f7c6302009 - added CallMCR function to coprocessor HLE module
- moved instruction decoding to coprocessor HLE module
2014-05-01 23:03:50 -04:00
bunnei
c1e71ae1ac fixed include in coprocessor.cpp 2014-05-01 19:21:04 -04:00
bunnei
f043424915 renamed hle "mrc" module to "coprocessor" 2014-05-01 19:20:44 -04:00
bunnei
4ee72869cc - added some function wrappers for HLE
- added stub for SVC CreateAddressArbiter
- added OutputDebugString SVC
2014-05-01 18:50:36 -04:00
archshift
eec40f8f6f Use runtime arguments to specify boot filename. 2014-05-01 15:13:06 -07:00
archshift
7817d6c79a Support for C++11 on OSX 2014-04-30 23:47:38 -07:00
bunnei
bb7fcf79fe - added option to load a code.bin file extracted from a CXI file
- updated load launcher.dat function to use ARM11 format hack
2014-04-30 23:50:14 -04:00
bunnei
08fb71108a added symbol map load function to Qt GUI 2014-04-30 23:46:57 -04:00
bunnei
29da6e9ab5 added a module to load symbol map files for debugging 2014-04-30 23:46:06 -04:00
bunnei
924e7b6af8 fixed a bug where ExeFs code was being incorrectly masked 2014-04-30 23:31:04 -04:00
archshift
704075f04a Fixed indents 2014-04-30 20:13:28 -07:00
archshift
948cfe6d37 Reverse debugging changes 2014-04-30 20:00:44 -07:00
archshift
dade106aa9 Linux support 2014-04-30 18:44:48 -07:00
archshift
fb47258af7 TGA dumps work, courtesy of @bunnei 2014-04-30 18:34:49 -07:00
archshift
bdc3c99904 Merge commit upstream/master into issue-7-fix 2014-04-30 18:01:12 -07:00
archshift
3dad4e3b5c Sets OGL version for Qt; will only work with Qt5 2014-04-30 17:10:38 -07:00
archshift
c1b770cc0d OpenGL 3+ on OSX with GLFW 2014-04-30 17:00:36 -07:00
archshift
a7f3ed003d A bit of Cmake love 2014-04-30 16:56:47 -07:00
bunnei
235dddb3f1 added virtual memory map for ExeFS (where ARM11 code is supposed to be loaded) 2014-04-30 18:31:35 -04:00
bunnei
c37390f8e2 reorganized memory regions enum, added regions for ExeFS code 2014-04-30 18:31:24 -04:00
archshift
52377cf0d2 Some more experimentation 2014-04-29 19:27:01 -07:00
archshift
237d079aad Merge commit upstream/master into issue-7-fix 2014-04-28 19:44:43 -07:00
archshift
5a9c2ce5ea IT'S ALIVE! 2014-04-28 19:40:39 -07:00
bunnei
d45b14fc66 Merge pull request #5 from cpp3ds/master
Travis CI script
2014-04-28 11:57:12 -04:00
archshift
5749d1eabe Fix complaints about functions that could not be found 2014-04-27 22:25:30 -07:00
archshift
5741f2fb26 Problematic class with no current implementation 2014-04-27 22:24:39 -07:00
archshift
b9fc729928 Problematic template functions 2014-04-27 22:23:58 -07:00
archshift
48deb45624 Xcode complains that the class name is redundant. 2014-04-27 22:23:01 -07:00
archshift
ff48c8bed3 Rect to BasicRect
Somewhere along the line an OSX header had already taken the name Rect.
2014-04-27 22:21:46 -07:00
bunnei
af921daa4c added virtual address conversion for firmware FW0B 2014-04-27 22:32:51 -04:00
bunnei
81cb80997a add missing bswap functions 2014-04-27 21:49:50 -04:00
bunnei
535947a0e1 fix for issue Linux build #9, not sure why this is broken but its unused code I'm just getting rid of it 2014-04-27 21:31:50 -04:00
bunnei
438dba40c1 Merge branch 'hle-interface-updates' 2014-04-27 21:25:16 -04:00
bunnei
a48c6b947d removed DISALLOW_COPY_AND_ASSIGN in favor of NonCopyable class 2014-04-27 18:29:51 -04:00
bunnei
451a14f98c fixed weird spacing 2014-04-27 18:24:54 -04:00
bunnei
f76a60be05 removed commented out line - this was for an unimplemented MRC call, no longer need to leave this here 2014-04-27 18:22:30 -04:00
bunnei
1142ccba03 fixed renderer to use correct framebuffer location 2014-04-27 12:42:01 -04:00
bunnei
a6c925112a hackish but working way to set the framebuffer location to VRAM (used in ARM11 demos tested thus far, e.g. yeti3DS) 2014-04-27 12:41:25 -04:00
bunnei
b2a6ad52f4 added helper functions to mem_map to convert physical addresses to virtual addresses 2014-04-27 12:40:31 -04:00
bunnei
f0525a1eb4 added code to LCD modules keep track of framebuffer location in FCRAM or VRAM 2014-04-27 12:39:57 -04:00
bunnei
f78794961e - changed HW IO map to use virtual addresses
- added hooks to catch LCD IO read/writes
2014-04-26 14:21:40 -04:00
bunnei
9e047e32d4 added simple GSP GPU ReadHWRegs function to support returning the framebuffer address 2014-04-26 01:48:24 -04:00
bunnei
a272803dcb added preliminary DataSynchronizationBarrier support with simple DMA copy 2014-04-26 01:47:52 -04:00
bunnei
25d595d869 added (fake) physical addresses for where to put framebuffer in VRAM 2014-04-26 01:32:05 -04:00
bunnei
86a515e5ac added vram to memory_map 2014-04-26 01:27:25 -04:00
Thomas Edvalson
a226dc57bf Need to add Xcursor to linker? 2014-04-25 23:01:58 -04:00
bunnei
cb0663de51 moved HLE::MRC to its own module, added support for catching data synchronization barrier command 2014-04-25 17:15:19 -04:00
bunnei
6151e26958 added disassembly to unimplemented instruction 2014-04-25 15:57:32 -04:00
bunnei
2672e7d883 removed some cruft 2014-04-25 15:27:47 -04:00
bunnei
e08f242141 fixed bug where svc_ControlMemory was not properly getting passed in parameters 2014-04-25 15:26:27 -04:00
Thomas Edvalson
c51e4822b1 Fixed CMake's import of GLFW. 2014-04-25 10:50:25 -04:00
Thomas Edvalson
08e1ba746f Resolved undefined Common::g_scm_branch error. 2014-04-25 10:34:27 -04:00
bunnei
890c7261d2 - added preliminary support for svc_MapMemoryBlock
- added shared memory region
- moarrrr cleanups to memory_map
2014-04-24 23:56:06 -04:00
bunnei
b7cd4c9e90 added functions to map Heap and Shared memory space 2014-04-24 22:32:26 -04:00
bunnei
66e1f8ab33 added GSP::RegisterInterruptRelayQueue function 2014-04-24 22:20:13 -04:00
bunnei
cd0664eb77 - refactored how service functions are called
- added option to create/delete service handles
2014-04-24 22:16:54 -04:00
bunnei
66a98ea686 made qt window title consistent 2014-04-23 22:49:55 -04:00
bunnei
80a040ac77 fixes to scm_rev generation to make it conistent with windows build 2014-04-23 19:13:00 -07:00
ShizZy
121960a2eb updated windows scm_rev code to use new style 2014-04-23 22:04:33 -04:00
bunnei
4405a53cf3 added scm rev generation on Linux/cmake 2014-04-23 18:43:57 -07:00
bunnei
7a136b8a84 fixes to build on linux 2014-04-22 19:42:29 -07:00
ShizZy
c479921142 removed duplicate rotl/rotr functions 2014-04-22 18:47:43 -04:00
ShizZy
5c89324809 updated CMakeLists for missing files 2014-04-22 18:35:40 -04:00
Mathieu Vaillancourt
81f6062c85 Re-enable toggling window mode. 2014-04-21 23:21:02 -04:00
Mathieu Vaillancourt
5ad1aa8b68 Add a quick way to load Launcher.dat files 2014-04-21 23:15:40 -04:00
bunnei
bf025ed03c fixed order of LogManager and System init 2014-04-21 22:02:32 -04:00
bunnei
7a080551ac fixed GL context acquire (applies to Qt GUI only) 2014-04-21 22:00:32 -04:00
Mathieu Vaillancourt
ad0734acee Remove unused QTableView 2014-04-18 18:34:24 -04:00
Mathieu Vaillancourt
e5f09b8be6 UI/debugger changes 2014-04-18 18:34:23 -04:00
bunnei
958bca606e Merge branch 'hle-interface' 2014-04-18 17:52:49 -04:00
bunnei
70c2cce963 renamed hw_lcd module to just lcd 2014-04-17 23:48:23 -04:00
bunnei
c3a4b4bfca added NDMA hardware interface 2014-04-17 23:43:55 -04:00
bunnei
b2baafaf8b added GSP heap memory allocation 2014-04-17 23:05:31 -04:00
bunnei
33e7d97d46 fixed bug in Memory::GetPointer 2014-04-17 21:40:42 -04:00
bunnei
fb026f6b46 moved enums into Memory:: namespace 2014-04-17 21:19:32 -04:00
bunnei
a9dba388eb added memory read/write to GSP heap 2014-04-17 21:15:40 -04:00
bunnei
09ffe87360 more various refactors to memory interface 2014-04-17 21:05:34 -04:00
bunnei
ae99574b6d cleaned up memory interfaces a lot, removed some hackish stuff 2014-04-17 18:40:42 -04:00
bunnei
9d5a561c1b fixed framebuffer color order 2014-04-17 17:47:34 -04:00
bunnei
f0797dcf1f added a new function wrapper 2014-04-16 22:19:23 -04:00
bunnei
d4411acfd0 removed hard-coded framebuffer addresses from renderer_opengl.cpp 2014-04-16 21:30:10 -04:00
bunnei
9d1a17ca88 fixed bug with printing std::string in log messages 2014-04-16 21:22:15 -04:00
bunnei
795d6bf5b7 changed unknown memory read/write to report the size 2014-04-16 21:21:53 -04:00
bunnei
bb5bc2df25 added class stub for HID:User service 2014-04-16 20:58:36 -04:00
bunnei
b8851305bd updated service comments 2014-04-16 20:46:05 -04:00
bunnei
de3dcd38f6 - fixed tabs in function_wrappers.h
- fixed log message wording in hle.cpp
- added syscall stubs for CloseHandle and WaitSynchronization1
2014-04-16 20:41:33 -04:00
bunnei
32c3462047 - added stubbed out GSP::Gpu service interface
- various cleanups/refactors to HLE services
2014-04-16 00:03:41 -04:00
bunnei
acef5e0b17 removed no longer used function header 2014-04-15 23:41:52 -04:00
bunnei
ffabed8c25 restructured hle:services completely to use function lookup tables 2014-04-15 23:28:03 -04:00
bunnei
386dd722e7 fixed naming for APT_U 2014-04-15 22:42:35 -04:00
bunnei
7ec5950bc4 - extracted srv: calls from service.cpp and put in its own module
- added function tables for service calls
- lots of refactoring
2014-04-15 22:40:19 -04:00
bunnei
cb504e236b added helper functions for upper/lowercase strings 2014-04-14 21:25:46 -04:00
bunnei
18766b9e69 added a stub for GetLockHandle 2014-04-13 22:59:16 -04:00
bunnei
9f4d677cdf added framework for APT service (application and title launching service) 2014-04-13 16:33:45 -04:00
bunnei
524e78ece8 renamed class Interface_SRV to SRV 2014-04-13 01:22:05 -04:00
bunnei
ce822b6815 replace tabs with spaces 2014-04-13 00:39:05 -04:00
bunnei
5ea4679630 added some very initial command parsing for SRV Sync 2014-04-13 00:38:48 -04:00
bunnei
67f6e41470 added a GetPointer function for reading from HLE command buffer 2014-04-13 00:37:10 -04:00
bunnei
f2f63a0f05 fixed hw write declarations to not be const 2014-04-12 23:32:04 -04:00
bunnei
6f6d5158de added OS memory read/write for thread command buffer 2014-04-12 23:31:39 -04:00
bunnei
b24e6f2b60 cleanups to service HLE 2014-04-12 22:08:48 -04:00
bunnei
68e198476f - added HLE to connect to "srv:" service
- added a manager for keeping track of services/ports
- added a memory mapped region for memory accessed by HLE
- added HLE for GetThreadCommandBuffer function
2014-04-12 21:55:36 -04:00
Mathieu Vaillancourt
68a8594d04 Init window size from VideoCore. Start changing the default window behavior... 2014-04-12 19:04:33 -04:00
Mathieu Vaillancourt
0ecb0365e4 Show symbols in disasm 2014-04-12 19:04:33 -04:00
Mathieu Vaillancourt
67095f8083 Implement simple LoadSymbols for ELF files 2014-04-12 19:04:32 -04:00
Mathieu Vaillancourt
d046cfbba1 Add symbols map 2014-04-12 19:04:31 -04:00
bunnei
4d88318903 hacked CPU interpreter to ignore branch on SVC instruction (as we are HLEing this...) 2014-04-12 01:36:39 -04:00
bunnei
cd7de52fea added a SETABORT method that does not update LR (for HLE'd SVC that does not jump appcore CPU to an IRQ vector) 2014-04-12 01:35:45 -04:00
bunnei
9a9b7b289a added a memory mapped option for HLE 2014-04-12 01:33:13 -04:00
bunnei
02fbd42e7f - renamed hle_syscall to just syscall
- added service.h as an initial service interface
2014-04-11 18:44:21 -04:00
bunnei
7ea7585898 replace tabs with spaces 2014-04-11 18:09:23 -04:00
bunnei
f6c328cf37 moved hle.cpp into hle folder (due to mistake earlier) 2014-04-11 18:07:49 -04:00
bunnei
ec19c679d7 Fixed GPLv2 license issue
Doing this from work via GitHub - Sorry for not combining with previous commits
2014-04-11 16:21:14 -04:00
bunnei
1c491d5c98 Fixed GPLv2 license issue
Doing this from work via GitHub - Sorry for not combining with previous commits
2014-04-11 16:20:39 -04:00
bunnei
503e584ee1 Fixed GPLv2 license issue 2014-04-11 16:19:39 -04:00
bunnei
e9f0e4967d added remaining known syscall functions to Syscall_Table 2014-04-11 14:19:40 -04:00
bunnei
2bde8f2856 base code to call a syscall from ARM11 appcore 2014-04-10 23:26:12 -04:00
bunnei
01bedbf956 updated logging message 2014-04-10 22:49:12 -04:00
bunnei
5d95bb9843 cleaned up some logging messages 2014-04-10 22:45:40 -04:00
bunnei
d4cb2aab63 added logger for generic HLE 2014-04-10 22:43:48 -04:00
bunnei
3bd041f5b0 changed some naming/misc cleanups 2014-04-10 22:15:07 -04:00
bunnei
2a7d7ce55d - removed syscall classes (will just use HLEFunction)
- added hle.cpp and module registration
- removed unused code
2014-04-10 21:30:00 -04:00
Mathieu Vaillancourt
ff4fe52bf6 Temporarily "fix" citra_qt for Windows 2014-04-10 20:51:32 -04:00
bunnei
95f237a086 Merge branch 'master' into hle-interface 2014-04-10 20:10:18 -04:00
bunnei
17b32b7b3f removed scm_rev.h from version control 2014-04-10 20:05:58 -04:00
bunnei
b0ae99e177 removed unused macros from citra.h 2014-04-10 20:04:38 -04:00
bunnei
7b3cde1f3a added missing const to GetWindowTitle 2014-04-10 20:04:38 -04:00
bunnei
f68de21ad1 added initial modules for setting up SysCall HLE 2014-04-10 19:58:28 -04:00
bunnei
fccbfc208c missed this file with commit 95e5436f 2014-04-10 19:57:56 -04:00
bunnei
d9bb4f11c6 added Memory::GetCharPointer to read strings from HLE functions 2014-04-10 19:56:30 -04:00
bunnei
95e5436f41 cleaned up arm_interface, added a setter to set registers for use with HLE return values 2014-04-10 19:55:59 -04:00
bunnei
9527fc74ad fixed a bunch of errors in CMakeLists 2014-04-09 20:28:43 -07:00
bunnei
6b83509a7e updated CMakeLists 2014-04-09 23:09:05 -04:00
bunnei
5da03e821e - removed deprecated version.h
- cleaned up window title
- cleaned up emu_window_glfw/emu_window
2014-04-08 23:18:23 -04:00
bunnei
d0674cc98b fixed licensing and updated code style naming for arm_interface/arm_interpreter frontend module 2014-04-08 20:38:33 -04:00
bunnei
ad4fffca0d fixed license headers in citra project 2014-04-08 20:25:53 -04:00
bunnei
2c54d5eee2 fixed scm_rev_gen 2014-04-08 20:20:10 -04:00
bunnei
de0a034a84 fixed project includes to use new directory structure 2014-04-08 20:15:08 -04:00
bunnei
63e46abdb8 got rid of 'src' folders in each sub-project 2014-04-08 19:25:03 -04:00
bunnei
03c245345e fixed some license headers that I missed 2014-04-08 19:19:26 -04:00
bunnei
c0796cf762 fixed all license file headers in core 2014-04-08 19:15:46 -04:00
bunnei
3dc3bd5627 fixed licensing issue with core_timing being GPL v2+ instead of Dolphin's GPL v2 2014-04-08 19:11:21 -04:00
bunnei
ef7cfa0207 fixed license header in video_core 2014-04-08 19:04:25 -04:00
bunnei
8c60294243 - removed lots of unused code from gekko
- updated code style/naming conventions
2014-04-08 18:59:02 -04:00
bunnei
f446f79da2 Merge branch 'hardware-interface'
Conflicts:
	src/core/src/core.h
2014-04-07 00:57:37 -04:00
bunnei
efef514fd8 removed unused comments, changed main processing loop to be infinite 2014-04-07 00:53:47 -04:00
bunnei
8cf851f68a added support for renderering the external framebuffers 2014-04-07 00:52:34 -04:00
bunnei
506e6049d3 added external framebuffer GL handles 2014-04-06 22:57:04 -04:00
bunnei
6f7fd741db removed log message from hw_lcd 2014-04-06 22:56:25 -04:00
bunnei
aae52e3f8f added hack physical memory reads with Memory::GetPointer 2014-04-06 22:56:08 -04:00
bunnei
aa3ae1af49 added "citra" instead of "emu" to title bar 2014-04-06 22:49:54 -04:00
bunnei
0716470609 added logger option specifically for the renderer 2014-04-06 16:56:42 -04:00
bunnei
f0d49253e4 calling SwapBuffers from hw_lcd.cpp 2014-04-06 16:56:13 -04:00
bunnei
551b2a52e0 initialize VideoCore 2014-04-06 16:55:54 -04:00
bunnei
080f847550 added initial renderer code 2014-04-06 16:55:39 -04:00
bunnei
e4d1ad4bda set window size to correspond to framebuffer sizes 2014-04-06 16:55:05 -04:00
bunnei
a604eaee54 added project linker reference 2014-04-06 16:54:28 -04:00
bunnei
23506defe3 added video_core project to solution 2014-04-05 16:04:25 -04:00
bunnei
89fd6eb237 added missing includes to common_types.h 2014-04-05 15:47:55 -04:00
bunnei
e022717477 added g_app_core->Step and HW::Update to Core::SingleStep to be consistent with other changes made 2014-04-05 15:26:03 -04:00
bunnei
ed15feebf1 changed hw_lcd to use ARM core correct tick counter instead of [what was actually] just an instruction count. this seems to fix timing issues with the 3DS_Homebrew_Pong3Dv2 demo. 2014-04-05 15:23:59 -04:00
bunnei
02bcb4cfad Updated common_types.h to use Gekko's version w/ Rect and some useful unions 2014-04-05 15:22:36 -04:00
bunnei
925a894c1b added DISALLOW_COPY_AND_ASSIGN macro 2014-04-05 15:22:11 -04:00
bunnei
7509a9b21f added LCD logger 2014-04-05 01:25:13 -04:00
bunnei
c874c1d06c add hw_lcd.* to VS project files 2014-04-05 01:24:54 -04:00
bunnei
6433f4d6f9 added an "Update" method to update all hardware 2014-04-05 01:24:14 -04:00
bunnei
9c2355ba4f added a module for interfacing to hardware LCD 2014-04-05 01:23:51 -04:00
bunnei
c1dfa75845 added a tick counter 2014-04-05 01:23:28 -04:00
bunnei
31abc42d3d added initial support for hw.cpp module 2014-04-05 00:01:07 -04:00
Mathieu Vaillancourt
9b6041d818 Remove Core::GetState(). Use new ARM_Interface instead. 2014-04-04 23:24:09 -04:00
Mathieu Vaillancourt
f1fd84aa0f Support vs express edition without having to get platform sdk 2014-04-04 23:10:02 -04:00
bunnei
670ac5643a added hw module to interface h/w register reads/writes 2014-04-04 23:02:59 -04:00
bunnei
006bb834df added a HW option to logging 2014-04-04 22:53:34 -04:00
bunnei
590f294d8e renamed some functions 2014-04-04 22:47:10 -04:00
bunnei
c89f3a5c38 added entry point loading from ELF file 2014-04-04 22:26:25 -04:00
bunnei
69223d007e - added an interface layer for ARM cores
- cleaned up core.cpp a bit
2014-04-04 22:26:06 -04:00
bunnei
d601d2e696 renamed ARM disassembler class from "Arm" to "ARM_Disasm" 2014-04-04 22:25:12 -04:00
bunnei
f5f6428b97 got rid of some really poorly named macros in SkyEye core 2014-04-04 22:24:41 -04:00
bunnei
66299a4880 moved arm core to interpreter directory 2014-04-04 21:12:05 -04:00
bunnei
c2d4c7d4f4 added some commented out ARMulator functions 2014-04-03 22:07:07 -04:00
bunnei
829952834a added hack to allow physical mem read/writes 2014-04-03 22:07:06 -04:00
bunnei
cbd1de38be made memory #define's enum to make debugging easier 2014-04-03 22:07:05 -04:00
Mathieu Vaillancourt
1c7120b3aa More Qt changes for debugger 2014-04-03 21:25:40 -04:00
Mathieu Vaillancourt
564e3f5032 Add Core::GetState() for debugger 2014-04-03 21:25:39 -04:00
bunnei
20bf361b95 removed some useless log messages 2014-04-03 19:04:14 -04:00
bunnei
7bf24c066b added thumb mode emulation 2014-04-03 19:03:55 -04:00
bunnei
c9b5b89e21 convert tabs to spaces 2014-04-01 18:48:08 -04:00
bunnei
4860480c36 convert tabs to spaces 2014-04-01 18:48:06 -04:00
bunnei
e05be0145c -converted tabs to spaces
-moved scratchpad memory out of MemArena
2014-04-01 18:48:04 -04:00
Mathieu Vaillancourt
81b61ee720 Load file in qt window 2014-03-31 22:42:19 -04:00
Mathieu Vaillancourt
05be8d2f0c Basic QT window 2014-03-31 22:32:03 -04:00
bunnei
d4b529111a added very hackish ARMulator core initialization and CPU stepping 2014-03-31 22:26:50 -04:00
bunnei
c7f4914a90 added simple processing loop and ELF loading to main()... hackish, will cleanup later 2014-03-31 22:25:55 -04:00
bunnei
85e8da6fc8 added ELF loading support to loader.cpp 2014-03-31 22:23:55 -04:00
bunnei
e32c03e860 commented out bswap stuff... ARM ELF files are little endian anyway 2014-03-31 22:15:02 -04:00
bunnei
a36f9492cc added support for reading/writing to stack mem 2014-03-31 21:05:51 -04:00
bunnei
07ea22de5c grabbed ppsspp's MemArena 2014-03-31 21:04:50 -04:00
bunnei
4fdeadb8e2 replaced some error logs with debug asserts 2014-03-30 02:13:25 -04:00
bunnei
7c5d8f6dad removed unnecessary debug assert 2014-03-30 00:42:13 -04:00
bunnei
328c415c74 added ARM11 MMU from skyeye 2014-03-29 23:28:38 -04:00
bunnei
bd38abf249 initialize mem regions 2014-03-29 21:53:41 -04:00
bunnei
6b255111d5 added various arm modules from skyeye to make project link OK 2014-03-29 21:53:07 -04:00
bunnei
20807c4d5a added a GetPointer function to Memory for use with ELF loading 2014-03-25 10:50:34 -04:00
bunnei
97e4d9f211 updated Windows project files to include ELF files 2014-03-25 10:49:56 -04:00
bunnei
872d9ae87f added Dolphin's ELF reader to the project 2014-03-25 10:47:12 -04:00
ShizZy
e0cfd6b0b8 renamed FILETYPE_CTR_DIRECTORY to FILETYPE_DIRECTORY_CXI 2013-10-06 09:39:11 -04:00
ShizZy
8a95dd3f11 fixed a typo in declaration of meta file system 2013-10-06 09:24:46 -04:00
ShizZy
e0cb54ea35 moved some core functions over to system module 2013-10-03 17:47:31 -04:00
ShizZy
9d79fc7aa6 added core_timing and system modules to core vcproj 2013-10-01 19:10:47 -04:00
ShizZy
4c24ea3d88 added an early function for booting from a directory 2013-10-01 19:09:49 -04:00
ShizZy
539bf8bc86 added a message option to Core::Halt function 2013-10-01 19:07:33 -04:00
ShizZy
2f2a980c92 added TIME logger for core timing 2013-10-01 19:06:51 -04:00
ShizZy
eab69534c6 renamed GC_ALIGNED* macros to MEMORY_ALIGNED* 2013-10-01 19:05:33 -04:00
ShizZy
a79fb90d62 upgraded proj files to vs 2013 2013-09-26 22:48:31 -04:00
ShizZy
c71868a6b1 added system.h to project 2013-09-26 22:01:09 -04:00
ShizZy
8bb0c457bc renamed from citrus to citra 2013-09-26 17:34:48 -04:00
ShizZy
a7b06698ff added meta_file_system to project 2013-09-25 21:25:46 -04:00
ShizZy
05d5113701 renamed file_sys_directory.* to directory_file_system.* 2013-09-25 21:03:42 -04:00
ShizZy
5b0b60ad6b moved file_sys back to core 2013-09-25 20:59:29 -04:00
ShizZy
00287b7a65 removed <windows.h> include from common.h and added it only where needed 2013-09-23 22:09:26 -04:00
ShizZy
29cdc1df39 moved file_sys to common 2013-09-23 22:04:56 -04:00
ShizZy
e83de18f4b removed unused commented-out code 2013-09-23 21:57:54 -04:00
ShizZy
59020e8d9c renamed PSPFileInfo to just FileInfo 2013-09-23 21:55:02 -04:00
ShizZy
1af6ae2f48 added PPSSPP's file system directory module for game loading 2013-09-23 21:50:41 -04:00
ShizZy
1114eb9aaf added localtime_r for use on windows 2013-09-23 21:47:24 -04:00
ShizZy
a8c3c2a391 added utf8 to common module, utils for dealing with utf8 2013-09-23 21:46:59 -04:00
ShizZy
80b85ee7e6 ppsspp file system module - currently unused 2013-09-19 23:28:34 -04:00
ShizZy
a5b31dea56 updated to chunk_file module from ppsspp 2013-09-19 23:28:05 -04:00
ShizZy
8990b51ac8 added a module for loading bootable binaries 2013-09-19 23:21:22 -04:00
ShizZy
bf3938d56e added mem_map hardware writing 2013-09-19 23:13:33 -04:00
ShizZy
030c836793 added hw R/W/ memory functions 2013-09-18 23:52:51 -04:00
ShizZy
f24f4ff978 added swap types to common 2013-09-18 23:26:13 -04:00
ShizZy
cd6e998e9a refactored some mem_map stuff 2013-09-18 22:36:39 -04:00
ShizZy
b2c5690413 added log msg to core 2013-09-18 22:36:07 -04:00
ShizZy
9a248afb5a added core initialization to app entry point 2013-09-18 22:35:45 -04:00
ShizZy
a658419946 removed CORE and LOADER from LogTypes 2013-09-18 22:35:09 -04:00
ShizZy
5417346585 added CORE and LOADER to LogTypes 2013-09-18 21:29:55 -04:00
ShizZy
7dcfb9c1cf added ARMulator/skyeye ARM11 core to the project 2013-09-17 23:03:54 -04:00
ShizZy
cdbe6557e8 changed log CPU from PPC to ARM11 2013-09-17 22:58:55 -04:00
ShizZy
d5863c415e added default windows include 2013-09-17 22:58:18 -04:00
ShizZy
dab2d6917b initialized log manager 2013-09-17 22:57:59 -04:00
ShizZy
71d4fa9d3f added file platform.h 2013-09-15 22:18:16 -04:00
ShizZy
b8ca09160b renamed project to 'citrus' 2013-09-13 18:11:14 -04:00
ShizZy
9709dd2def added scm_rev_gen project to automatically create a header with the git revision on build 2013-09-13 17:46:27 -04:00
ShizZy
2161364258 cleaned up VS project files 2013-09-08 21:56:54 -04:00
ShizZy
4f5d397379 fixed some code warnings 2013-09-08 21:55:37 -04:00
ShizZy
c2867f7e14 removed unneeded dolphin paths code, fixed linker problems with common.lib 2013-09-08 20:42:03 -04:00
ShizZy
7ea22ffcdb re-enabled GetLastErrorMsg 2013-09-08 20:41:23 -04:00
ShizZy
0ec884c433 removed ignored specific libraries section from project file 2013-09-08 20:36:00 -04:00
ShizZy
6847033b27 updated common paths 2013-09-08 13:17:27 -04:00
ShizZy
62d873da3e start of 3DS memory map 2013-09-05 23:04:04 -04:00
ShizZy
d708e2d68a added core and mem_map files to the project 2013-09-05 18:33:46 -04:00
ShizZy
b5c78f8a20 added an ARM disassembler from the android project 2013-09-04 23:00:12 -04:00
ShizZy
48db82013b added missing files 2013-09-04 22:10:47 -04:00
ShizZy
ed79f16b6e deleting renamed directory 2013-09-04 22:10:05 -04:00
ShizZy
86495a83c1 various fixes to be able to build project 2013-09-04 22:09:15 -04:00
ShizZy
4ca6d6452e added emu_window.h to define interface to drawing to a window 2013-09-04 21:00:29 -04:00
ShizZy
d9c849586e updated CMakeLists.txt file for new common files 2013-09-04 20:42:27 -04:00
ShizZy
7564d28faf replaced common code with dolphin common 2013-09-04 20:17:46 -04:00
ShizZy
72325bef1d deleted gekko's common files 2013-09-04 17:52:59 -04:00
ShizZy
27474060e1 adding initial project layout 2013-08-29 23:35:09 -04:00