Lioncash
676daef3c7
core: Fix some warnings on OSX
2015-02-03 08:14:42 +07:00
bunnei
7f730ed158
Merge pull request #523 from yuriks/kernel-lifetime5
...
Kernel Lifetime Reform Pt. 5: The Reckoning
2015-02-02 13:04:04 +07:00
Yuri Kunde Schlesner
88a4a808c6
Kernel: Stop creating useless Handles during object creation
...
They're finally unnecessary, and will stop cluttering the application's
handle table.
2015-02-02 15:37:09 +07:00
Yuri Kunde Schlesner
52f58e64ef
Kernel: Make WaitObjects share ownership of Threads waiting on them
...
During normal operation, a thread waiting on an WaitObject and the
object hold mutual references to each other for the duration of the
wait.
If a process is forcefully terminated (The CTR kernel has a SVC to do
this, TerminateProcess, though no equivalent exists for threads.) its
threads would also be stopped and destroyed, leaving dangling pointers
in the WaitObjects.
The solution is to simply have the Thread remove itself from WaitObjects
when it is stopped. The vector of Threads in WaitObject has also been
changed to hold SharedPtrs, just in case. (Better to have a reference
cycle than a crash.)
2015-02-02 15:37:08 +07:00
Yuri Kunde Schlesner
7725256f64
Explicitly instantiate constructors/destructors for Kernel objects
...
This should speed up compile times a bit, as well as enable more liberal
use of forward declarations. (Due to SharedPtr not trying to emit the
destructor anymore.)
2015-02-02 15:37:07 +07:00
Yuri Kunde Schlesner
12232e0b08
Update boost external
2015-02-02 15:37:06 +07:00
Yuri Kunde Schlesner
4e84df8be3
Mutex: Replace g_mutex_held_locks with a set inside Thread
2015-02-02 15:37:06 +07:00
Yuri Kunde Schlesner
0f69668fc6
HID: Fix crash when pressing a key when the emulator is stopped
2015-02-02 15:37:05 +07:00
Yuri Kunde Schlesner
c4208c1171
SVC: Enable CloseHandle, clean up DuplicateHandle
2015-02-02 15:37:04 +07:00
Yuri Kunde Schlesner
e8330dd162
Kernel: Fix bug in HandleTable::Close
2015-02-02 15:37:04 +07:00
Yuri Kunde Schlesner
5354a479bc
Kernel: Remove Object::GetHandle (it's not used anymore :D)
2015-02-02 15:37:04 +07:00
Yuri Kunde Schlesner
869ec46683
Kernel: Introduce unique Object ids for debugging
2015-02-02 15:37:03 +07:00
Yuri Kunde Schlesner
a9b86db3cf
Kernel: Use separate Handle tables for CoreTiming userdata
...
This is to support the removal of GetHandle soon
2015-02-02 15:37:03 +07:00
Yuri Kunde Schlesner
ec9c773251
Kernel: Remove previous scheduled event when a Timer is re-Set
2015-02-02 15:37:02 +07:00
Yuri Kunde Schlesner
8441591659
FS: Remove use of GetHandle
2015-02-02 15:37:01 +07:00
Yuri Kunde Schlesner
664c79ff47
Thread: Modernize two functions that slipped through previous rebases
2015-02-02 15:37:01 +07:00
Yuri Kunde Schlesner
6e11570862
Service: Store function names as const char* instead of std::string
...
Uses less memory (strings and function table is stored in constant data)
and speeds up start up (no need to allocate and copy strings).
2015-02-02 15:37:00 +07:00
Yuri Kunde Schlesner
a79d21c83e
Service: Clean-up Interface
2015-02-02 15:36:59 +07:00
Yuri Kunde Schlesner
8779b31fe6
Make Port/Service registration and querying more HW-accurate
2015-02-02 15:36:59 +07:00
Yuri Kunde Schlesner
5e91fc0d1a
Filesys: Move creation of Handles for File/Directory to service handlers
2015-02-02 15:36:58 +07:00
Tony Wasserka
e1f9f9ea04
Merge pull request #517 from bunnei/blend-factors
...
Pica: Implement blend factors.
2015-02-01 12:00:10 +07:00
bunnei
c915d0b727
Merge pull request #514 from rohit-n/fix-warnings
...
Silence a few warnings.
2015-02-01 00:31:06 +07:00
bunnei
c8628f5d56
Merge pull request #525 from lioncash/armwarn
...
vfp: Get rid of some compile warnings
2015-02-01 00:28:50 +07:00
bunnei
a4b1e8ce52
Merge pull request #524 from lioncash/state
...
arm: Clean up ARMul_State
2015-02-01 00:28:29 +07:00
Lioncash
8c944bd1f0
vfp: Get rid of some compile warnings
2015-01-31 22:14:00 +07:00
Lioncash
3f00dd9117
arm: Clean up ARMul_State
...
Remove unnecessary/unused struct variables.
2015-01-31 21:55:34 +07:00
bunnei
1a82721ad2
Merge pull request #522 from lioncash/adios
...
arm: Adios armemu
2015-01-31 21:11:34 +07:00
Lioncash
f44781fd7b
arm: Adios armemu
2015-01-31 20:43:03 +07:00
Tony Wasserka
73a7a379d6
Merge pull request #512 from lioncash/assignment
...
shared_memory: Fix assignments in SharedMemory::Map
2015-01-31 12:59:00 +07:00
bunnei
72cc512b1e
Pica: Implement blend factors.
2015-01-31 01:40:05 +07:00
bunnei
dbff4e5e12
Merge pull request #516 from lioncash/cleanup
...
ARM: More cleanup.
2015-01-30 17:11:12 +07:00
Lioncash
b6cfc48a0b
dyncom: clean up arm_dyncom_dec.h
2015-01-30 16:28:52 +07:00
Lioncash
fc1a9e35fb
arm: Move headers over to pragma once
2015-01-30 16:17:02 +07:00
Lioncash
83bc1a3120
arm: Get rid of armcpu.h and skyeye_types.h
2015-01-30 16:16:58 +07:00
Lioncash
904194c3e8
arm: Clean out armos.h and armmmu.h
2015-01-30 15:48:57 +07:00
bunnei
88a62b671b
Merge pull request #513 from lioncash/cleanup
...
arm: Cleanup.
2015-01-30 15:30:30 +07:00
Rohit Nirmal
5ebf35db96
Silence a few warnings.
2015-01-30 19:20:34 +07:00
bunnei
c8c3a94b20
Merge pull request #511 from lioncash/warnings
...
Fix a few warnings.
2015-01-30 13:57:08 +07:00
Lioncash
09a66860e2
arm: Throw out a lot of unnecessary code
2015-01-30 13:32:03 +07:00
Lioncash
3dfef1701c
armdefs: Move some defines over to enums
2015-01-30 12:43:58 +07:00
Lioncash
96c174aed4
shared_memory: Fix assignments in SharedMemory::Map
2015-01-30 11:37:53 +07:00
Lioncash
0c4685ca12
loader: Add missing printf argument
2015-01-30 11:34:05 +07:00
Lioncash
551264f815
archive: Fix initializer list order for the File class.
2015-01-30 11:30:22 +07:00
Lioncash
0c53cc52bd
apt_u: Fix missing printf specifiers
2015-01-30 11:28:09 +07:00
Tony Wasserka
28702cbfeb
Merge pull request #503 from yuriks/kernel-lifetime4
...
Kernel Lifetime Reform Pt. 4
2015-01-30 15:00:17 +07:00
Yuri Kunde Schlesner
d917a9bf77
Kernel: Mark all appropriate kernel objects as "final"
2015-01-30 11:49:46 +07:00
Yuri Kunde Schlesner
58b544db99
SVC: Use CASCADE_RESULT in SVC handlers
2015-01-30 11:49:46 +07:00
Yuri Kunde Schlesner
09ae6e1fa3
Remove result.h InvalidHandle
...
It was only being used in two places, where it was replaced by a local
constant.
2015-01-30 11:49:45 +07:00
Yuri Kunde Schlesner
44f90340dc
SVC: Change return type of handlers to ResultCode
2015-01-30 11:49:44 +07:00
Yuri Kunde Schlesner
d52d859936
Kernel: Convert Event to not use Handles
2015-01-30 11:49:43 +07:00