Lioncash
be0119be08
dyncom: Move exclusive load/stores above bbl and swi in the decoding table
2015-05-14 16:24:39 -04:00
Lioncash
1e0255364c
dyncom: Remove duplicate enums/prototypes
...
These are already defined in arm_dyncom_interpreter_dec.cpp.
2015-05-14 14:32:17 -04:00
Lioncash
f4921d0f9d
dyncom: Remove unnecessary defines
...
These can simply be const vars.
2015-05-14 14:32:16 -04:00
Lioncash
0530fd2499
dyncom: Make translation-unit functions and variables static
2015-05-14 14:32:07 -04:00
Lioncash
773b1ef6bf
vfp: Get rid of warnings
...
- Unary minus operator applied to unsigned type.
- Unsafe use of bool.
2015-05-14 13:54:15 -04:00
Lioncash
150e700729
process: Get rid of warnings
...
Sign mismatches and "forcing value to bool" warnings.
2015-05-14 12:59:14 -04:00
Lioncash
f3c4de4ce4
dyncom: Remove unnecessary typedefs
2015-05-14 11:51:46 -04:00
Lioncash
a48b4ec583
dyncom: Remove unused structs
2015-05-14 11:33:50 -04:00
Lioncash
207087c856
thread: Fix a conditional check in Reschedule
2015-05-14 11:10:04 -04:00
bunnei
e83bc5b7ee
dyncom: Removed irrelevant log.
2015-05-14 00:24:38 -04:00
Lioncash
832c130ed1
dyncom: Fix decoding of BKPT's immediate
...
A shift here is intended since the representation is imm12:imm4
2015-05-13 14:11:03 -04:00
bunnei
7d21b0663b
Merge pull request #756 from purpasmart96/ptm_service_changes
...
PTM: Changed the ptm services to be like the IR, HID, and APT services.
2015-05-12 23:10:54 -04:00
bunnei
cb2b2071a8
Merge pull request #748 from Subv/tls_max
...
Core/Memory: Add TLS support for creating up to 300 threads
2015-05-11 23:32:28 -04:00
bunnei
ee8da4c356
Merge pull request #751 from yuriks/idle-thread
...
Thread: Remove the idle thread
2015-05-11 23:22:47 -04:00
bunnei
6e26d063a5
Merge pull request #757 from Subv/scheduling
...
Core/Scheduling: Prepare the new priority in the thread queue when svcSetPriority is called
2015-05-11 22:54:00 -04:00
bunnei
6223496a49
Merge pull request #752 from lioncash/flush
...
vfp: Handle flush-to-zero mode.
2015-05-11 21:43:33 -04:00
bunnei
d22bc68175
Merge pull request #755 from lioncash/mcrr-mrrc
...
dyncom: Stub MCRR and MRRC
2015-05-11 21:42:45 -04:00
Yuri Kunde Schlesner
4f7a055081
Thread: Remove the idle thread
...
Instead just use nullptr to represent no thread is active.
2015-05-11 22:39:39 -03:00
Subv
dda94e56dd
Core/Memory: Add TLS support for creating up to 300 threads
2015-05-11 20:09:23 -05:00
Yuri Kunde Schlesner
820b97787c
Merge pull request #750 from Subv/process_svc
...
Core/HLE: Implemented the SVCs GetProcessId and GetProcessIdOfThread
2015-05-11 17:44:26 -07:00
Subv
dbc1320923
Core/Scheduling: Prepare the new priority in the thread queue when svcSetPriority is called
2015-05-11 19:38:10 -05:00
purpasmart96
53130fffd9
PTM: Changed the way the ptm services are handled to be like the
...
IR, HID, and APT services.
2015-05-11 17:11:26 -07:00
Subv
25c010dc7d
fixup!
2015-05-11 18:23:45 -05:00
Lioncash
dc7ac751f2
dyncom: Stub MCRR and MRRC
...
There's no other coprocessor outside the VFP (which has its own VMOV variants) in which the MPCore can send/retrieve data from.
Stubbed so citra won't crash and burn on the odd chance someone actually tries to use these.
2015-05-11 18:31:45 -04:00
purpasmart96
046044618d
NWM_UDS: Fix a typo in the nwm service port name
2015-05-11 15:18:54 -07:00
Lioncash
ffc51161f3
vfp: Handle flush-to-zero mode.
2015-05-11 15:56:02 -04:00
Subv
41f74a16fd
Core/HLE: Implemented the SVCs GetProcessId and GetProcessIdOfThread
2015-05-11 09:15:10 -05:00
Yuri Kunde Schlesner
d16c2bd956
Thread: Correctly set main thread initial stack position
2015-05-11 05:08:47 -03:00
archshift
e98fbadf4a
Merge pull request #740 from yuriks/gsp-shmem
...
Fix crashes due to un-initialized GSP shared memory
2015-05-10 18:07:44 -07:00
Subv
115ad8e16a
fixup! Set the TLS address in the scheduler
2015-05-10 18:43:59 -05:00
Subv
000876858d
Core/Memory: Give every emulated thread it's own TLS area.
...
The TLS area for thread T with id Ti is located at TLS_AREA_VADDR + (Ti - 1) * 0x200.
This allows some games like Mario Kart 7 to continue further.
2015-05-10 18:35:37 -05:00
Yuri Kunde Schlesner
fd85367621
fixup! GSP: Small tweaks to shared memory initialization
2015-05-10 20:09:41 -03:00
Yuri Kunde Schlesner
1538a34eda
GSP: Small tweaks to shared memory initialization
2015-05-10 20:05:30 -03:00
Yuri Kunde Schlesner
774eea8374
Kernel: Zero-fill shared memory blocks when mapping
...
This works around crashes related to GSP/HID/etc. shared memory blocks
having garbage values. The proper fix requires proper management of
mapped memory blocks in the process.
2015-05-10 20:05:29 -03:00
Yuri Kunde Schlesner
c96f22490a
Kernel: Capture SharedMemory attributes at creation, not when mapping
2015-05-10 19:47:07 -03:00
Yuri Kunde Schlesner
b700b55696
Common: Remove the BIT macro
...
When the macro was introduced in 326ec51261
it wasn't noticed that it conflicted in name with a heavily used macro
inside of dyncom. This causes some compiler warnings. Since it's only
lightly used, it was opted to simply remove the new macro.
2015-05-09 18:16:46 -03:00
Tony Wasserka
e35e72d0a5
Merge pull request #734 from yuriks/memmap
...
Small memory map definitions cleanup
2015-05-09 15:57:29 +02:00
Yuri Kunde Schlesner
417c867e14
Loader: Add missing include
2015-05-09 05:05:59 -03:00
Yuri Kunde Schlesner
17a8cae003
Memory: Add GetPhysicalPointer helper function
2015-05-09 04:02:32 -03:00
Yuri Kunde Schlesner
28a9e4c1d5
Memory: Support more regions in the VAddr-PAddr translation functions
...
Also adds better documentation and removes the one-off reimplementation
of the function in pica.h.
2015-05-09 03:08:11 -03:00
Yuri Kunde Schlesner
e7b6ed7578
Memory: Sort memory region variables by VAddr
2015-05-09 01:31:00 -03:00
Yuri Kunde Schlesner
1c0b87edc2
Memory: Re-organize and rename memory area address constants
2015-05-09 01:29:52 -03:00
Yuri Kunde Schlesner
eb3eb9f75d
Loader: Remove .bin file support
...
It is of very limited practical utility currently, and will soon be
impossible to support due to more accurate memory map emulation.
2015-05-08 23:09:41 -03:00
Yuri Kunde Schlesner
7c50b999fa
Kernel: Remove unused g_main_thread variable
2015-05-08 22:12:12 -03:00
Yuri Kunde Schlesner
3cb19c9589
Process: Rename StaticAddressMapping => AddressMapping
2015-05-08 22:12:10 -03:00
Yuri Kunde Schlesner
83ccf85bb2
Process: Add more documentation to the class members
2015-05-08 22:11:49 -03:00
Yuri Kunde Schlesner
2f5904611d
Process: Use BitField to store process flags
2015-05-08 22:11:48 -03:00
Yuri Kunde Schlesner
7eb413155f
Loader/NCCH: Fix formatting of braces
2015-05-08 22:11:48 -03:00
Yuri Kunde Schlesner
2af30d465f
Process: Support parsing of exheader kernel caps
2015-05-08 22:11:44 -03:00
Yuri Kunde Schlesner
a5eba2f984
Kernel: Remove g_program_id
...
This has been obsoleted by the field in Process.
2015-05-08 22:11:03 -03:00
Yuri Kunde Schlesner
6d60acf0f1
Kernel: Introduce skeleton Process class to hold process data
2015-05-08 22:11:02 -03:00
Yuri Kunde Schlesner
0f39cc359b
Core: Fix sorting in CMakeFiles.txt
2015-05-08 03:03:04 -03:00
Lioncash
1622068198
Merge pull request #728 from lioncash/vars
...
dyncom: Remove an unnecessary variable in the interpreter
2015-05-07 21:09:03 -04:00
Lioncash
ae0c38a333
Remove unnecessary dyncom header files
2015-05-07 20:45:28 -04:00
Lioncash
31dc8b8890
dyncom: Remove an unnecessary variable in the interpreter
...
All this was doing was needlessly aliasing a variable.
2015-05-07 19:34:04 -04:00
Yuri Kunde Schlesner
3396f352cb
Common: Remove mem_arena.cpp/h
...
It is superfluous for Citra. (It's only really necessary if you're doing
JIT. We were using it but not taking any advantage from it.) This should
make 32-bit builds work again.
2015-05-07 19:01:09 -03:00
Yuri Kunde Schlesner
c956e8a686
Fix printf format warning
2015-05-07 15:45:22 -03:00
Yuri Kunde Schlesner
e1fbac3ca1
Common: Remove common.h
2015-05-07 15:45:22 -03:00
Yuri Kunde Schlesner
c0eaa662d4
Clean-up includes
2015-05-06 23:45:06 -03:00
Yuri Kunde Schlesner
b89f644cfe
FileSys: De-inline Path members
2015-05-06 23:45:06 -03:00
Yuri Kunde Schlesner
6f89d25f90
FileSys: Clean-up includes, de-inline destructors
2015-05-06 23:45:06 -03:00
Yuri Kunde Schlesner
c916bcf7b5
Move typedefs from kernel.h to more appropriate places
2015-05-06 23:45:05 -03:00
Yuri Kunde Schlesner
ecff2351a1
HLE: Clean up SVC dispatch mechanism
2015-05-06 00:24:39 -03:00
Yuri Kunde Schlesner
0749687b8d
Core: Remove some unused functions and types
2015-05-04 00:16:43 -03:00
bunnei
5a855bdb2f
CoreTiming: Initialize static variables at bootup.
2015-05-01 18:27:05 -04:00
bunnei
d3c2f9a4a4
HLE: Properly initialize and shutdown remaining modules.
2015-05-01 18:27:05 -04:00
bunnei
bab5abaf46
Dyncom: Move cream cache to ARMul_State.
2015-05-01 18:27:04 -04:00
bunnei
c7dc799e19
Kernel: Properly initialize and shutdown all modules.
2015-05-01 18:27:03 -04:00
bunnei
57aaaf92db
HW: Properly initialize and shutdown all modules.
2015-05-01 18:27:02 -04:00
bunnei
e0cb85691a
Services: Initialize all state variables at bootup.
2015-05-01 18:27:02 -04:00
bunnei
bbabed8e98
Memory: Properly cleanup & shutdown.
2015-05-01 18:27:01 -04:00
purpasmart96
8716445621
ConfigMem: Remove duplicate retail bit
2015-04-28 16:22:50 -07:00
bunnei
2cc6511039
Merge pull request #692 from purpasmart96/log_improvements
...
Services/Loader: Use more sensible log formats for certain functions along with more info being logged.
2015-04-28 10:12:50 -04:00
purpasmart96
c3a480160e
Services/Loader: Use more sensible log formats for certain functions
...
along with more info being logged.
2015-04-27 23:07:08 -07:00
Lioncash
1baab50e7c
ptm_sysm: Add static specifier to IsLegacyPowerOff
2015-04-24 18:23:20 -04:00
Lioncash
8b2b620a5e
dyncom: Remove more unused/unnecessary code
...
Gets rid of a sizeable amount of stuff in armdefs.
2015-04-20 16:30:34 -04:00
Lioncash
d66a12c6f6
dyncom: Remove unused/unnecessary VFP cruft
2015-04-17 20:46:05 -04:00
bunnei
3ee9f6c5d8
Merge pull request #696 from yuriks/interface-deinline
...
De-inline functions from Interface, removing them from service.h
2015-04-14 19:14:27 -04:00
Emmanuel Gil Peyrot
2e860bd59c
Core_ARM11: Replace debug prints with our own logging functions in vfpsingle.
2015-04-14 21:34:36 +02:00
Emmanuel Gil Peyrot
0d69b2f7bd
Kernel: Use the correct format string for u64 hex.
2015-04-14 21:18:31 +02:00
Emmanuel Gil Peyrot
bdcf28e3bc
Headers: Add some forgotten overrides, thanks clang!
2015-04-14 21:18:25 +02:00
Yuri Kunde Schlesner
ad3e25b414
De-inline functions from Interface, removing them from service.h
...
This reduces the time for a full recompile from 65.43s to 59.53s (~9%)
2015-04-14 15:34:28 -03:00
bunnei
db4bd98bac
SVC: Assert on unsupported CreateThread processor ID.
2015-04-09 22:55:18 -04:00
bunnei
c077bcefa9
SVC: Update various SVCs to cause a reschedule.
...
- CreateMutex/ReleaseMutex/ReleaseSemaphore/SetTimer/CancelTimer/ArbitrateAddress
2015-04-09 19:06:42 -04:00
bunnei
9c3419ebcc
Kernel: Implemented priority inheritance for mutexes.
2015-04-09 19:06:39 -04:00
bunnei
7b9f428b23
Thread: Implement priority boost for starved threads.
...
SVC: Return correct error code on invalid CreateThread processor ID.
SVC: Assert when creating a thread with an invalid userland priority.
2015-04-09 19:05:21 -04:00
bunnei
ee3377b67d
SVC: Reschedule on svcCreateThread.
2015-04-09 19:04:20 -04:00
bunnei
bdd190363d
APT: (Subv) Fix bug where start event was being incorrectly signaled.
2015-04-09 19:04:19 -04:00
bunnei
e08f55b1a7
Kernel: Fixed default thread priority.
2015-04-09 19:04:19 -04:00
Gareth Higgins
25a43cd2ec
Initialize base address to 0x0
2015-04-08 20:34:41 -04:00
Tony Wasserka
8af5753da5
Merge pull request #689 from lioncash/format
...
gpu: Fix a missing format specifier
2015-04-08 15:41:21 +02:00
bunnei
114126b216
Merge pull request #688 from lioncash/unused
...
dyncom: Remove unnecessary enum and typedef
2015-04-07 23:03:08 -04:00
bunnei
e630fd2a95
Merge pull request #676 from purpasmart96/ir_service_refc
...
IR: Move The IR services to their own folder and implement "GetHandles"
2015-04-07 23:01:07 -04:00
Lioncash
7da90dee42
gpu: Fix a missing format specifier
2015-04-07 10:38:49 -04:00
Lioncash
a6c9e453b2
dyncom: Remove unnecessary enum and typedef
...
Also fixes descriptions in the process.
2015-04-07 08:05:41 -04:00
Lioncash
29a4b6c7ed
vfp: Make the FPSID values match the MPCore
2015-04-06 16:09:35 -04:00
Lioncash
f9cc6d6484
vfp: Get rid of the VFP_OFFSET macro
2015-04-06 16:09:28 -04:00
bunnei
14dcd98653
Merge pull request #685 from lioncash/cpregs
...
dyncom: Set the MPCore CP15 register reset values on initialization.
2015-04-06 15:06:07 -04:00
Lioncash
8004d35ea1
core: Migrate 3DS-specific CP15 register setting into Init
2015-04-06 13:01:19 -04:00
Lioncash
c3ffe8f9c3
arm_interface: Support retrieval/storage to CP15 registers
2015-04-06 12:57:49 -04:00