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
bunnei
10eb8b0c02
Merge pull request #749 from yuriks/stack-top
...
Thread: Correctly set main thread initial stack position
2015-05-11 11:03:08 -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
40310e2132
Implement I4 texture format
...
@neobrain, could you confirm that this is correct?
It's been tested with various different games and fixes different textures, including in Animal Crossing, Kirby Triple Deluxe, and SMB3D.
2015-05-10 18:59:22 -07: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
bunnei
23e8be573e
rasterizer: Implemented combiner output scaling.
2015-05-09 22:26:17 -04:00
bunnei
ff767eeb40
rasterizer: Implemented AddSigned combiner op.
2015-05-09 22:12:39 -04:00
bunnei
547da374b8
rasterizer: Fixed a depth testing bug.
2015-05-09 22:12:38 -04:00
bunnei
a806b420a6
rasterizer: Implement combiner buffer input.
2015-05-09 22:12:36 -04:00
bunnei
44927f0306
rasterizer: Return zero'd vectors on error conditions.
2015-05-09 22:12:35 -04:00
bunnei
692a74c09e
vertex_shader: Implement FLR instruction.
2015-05-09 22:12:34 -04:00
bunnei
f935130a0f
vertex_shader: Implement MADI instruction.
...
nihstro: Update submodule to latest upstream/master to support MADI instruction decoding.
2015-05-09 22:12:34 -04: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
326ec51261
Common: Add BIT macro
2015-05-08 22:11:04 -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
8809d02db3
Common: Add StringFromFixedZeroTerminatedBuffer
2015-05-08 03:03:06 -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
4560178f66
Merge pull request #725 from yuriks/remove-common-crap
...
Remove unused hash and mem_arena from common
2015-05-07 16:18:03 -07:00
bunnei
10ef39624a
Merge pull request #723 from lioncash/commonstr
...
string_util: Get rid of UriDecode/UriEncode
2015-05-07 18:55:18 -04:00
Yuri Kunde Schlesner
ed12b08e7a
Profiler: Fix off-by-one error when computing average.
2015-05-07 19:48:31 -03: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
d9df5b575a
Common: Remove hash.cpp/h
...
Currently unused and the code quality is pretty questionable.
2015-05-07 18:31:18 -03:00
Yuri Kunde Schlesner
fae5933ad6
Common: Add proper macros to test for architecture pointer size
...
The old system of just defining macros available in some other platform
was susceptible to silently using the wrong code if you forgot to
include a particular header. This fixes a crash on non-Windows platforms
introduced by e1fbac3ca1
.
2015-05-07 18:22:36 -03:00
Lioncash
9adad45b0f
string_util: Get rid of UriDecode/UriEncode
2015-05-07 17:10:55 -04:00
Yuri Kunde Schlesner
4f4d230dac
Merge pull request #721 from yuriks/more-cleanups
...
More cleanups
2015-05-07 11:45:45 -07: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
1bd1a13a02
Common: Move alignment macros to common_funcs.h
2015-05-07 15:45:21 -03:00
Yuri Kunde Schlesner
ae963d75f8
Common: Move SSE detection ifdefs to platform.h
2015-05-07 15:45:20 -03:00
Yuri Kunde Schlesner
a594fdb66e
Common: Remove more unused compatibility defines
2015-05-07 15:45:20 -03:00
Yuri Kunde Schlesner
f3c096951b
Common: Move IO-specific compatibility macros to file_util.cpp
2015-05-07 15:45:20 -03:00
Yuri Kunde Schlesner
bf12f270b3
Common: Remove many unnecessary cross-platform compatibility macros
2015-05-06 23:50:08 -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
6ad71c216b
Common: Move NonCopyable to common_types.h
2015-05-06 23:45:05 -03:00
Yuri Kunde Schlesner
7a4b717772
Common: Use C++11 deleted functions for NonCopyable
2015-05-06 23:45:04 -03:00
Yuri Kunde Schlesner
1fee769aa0
Common: Remove unused enums
2015-05-06 23:45:04 -03:00
bunnei
337f1e1b96
Merge pull request #695 from Subv/crash_f
...
GPU: Implemented default vertex shader attributes.
2015-05-06 19:33:03 -04:00
Subv
0e5ca080a8
GPU: Implemented default vertex shader attributes.
...
Fixes some games crashing.
2015-05-06 18:11:46 -05: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
Tony Wasserka
7859b145cf
Merge pull request #698 from Zaneo/clip_stylus_input
...
EmuWindow: Clip mouse input coordinates to emulated screen dimensions.
2015-05-02 19:15:03 +02:00
Zaneo
b8328593fe
EmuWindow: Clip mouse input coordinates to emulated screen dimensions.
...
If the mouse position for a mouse move/drag would take it outside the emulated screen dimensions, clip the coordinates to
the emulated screen dimensions.
Qt and GLFW will report negative coordinates for mouse positions to the left, or above citra window. Added restriction
to mouse coordinates passed to touchmoved by Qt/GLFW to be greater or equal to zero.
2015-05-01 23:52:33 -04:00
bunnei
046dd6e3ef
Qt: Shutdown game on emulator close event.
2015-05-01 18:35:56 -04:00
bunnei
85cc81d8cc
Qt: Disable "Start" unless we are paused (it otherwise has no meaning and causes a crash).
2015-05-01 18:35:55 -04:00
bunnei
bc41de2131
Qt: Fixed a bug in shutdown procedure, various cleanups.
2015-05-01 18:35:51 -04:00
bunnei
ad4445c529
Qt: Clear registers widget on shutdown.
2015-05-01 18:34:49 -04:00
bunnei
43cf424907
Qt: Use signals for emu_thread start/stop and fix disasm widget.
2015-05-01 18:34:42 -04:00
bunnei
e4ea133717
Qt: Restructured to remove unnecessary shutdown event and various cleanups.
2015-05-01 18:27:07 -04:00
bunnei
3dd2688785
Qt: Fix loading a new game without stopping emulation.
2015-05-01 18:27:06 -04: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
bunnei
28df8dbfeb
Qt: Create emu thread on bootup, kill it on shutdown.
2015-05-01 18:27:00 -04:00
bunnei
d5665fea89
EmuThread: Remove unused filename attribute.
2015-05-01 18:26:59 -04:00
bunnei
762c1a9ff5
Qt: Move EmuThread ownership from render window to main window.
2015-05-01 18:26:58 -04:00
bunnei
4d30edc11e
Merge pull request #717 from linkmauve/useless-auto
...
VideoCore: Remove a superfluous auto variable declaration in debug_utils
2015-04-29 10:27:58 -04:00
Emmanuel Gil Peyrot
36b48082d5
VideoCore: Remove a superfluous auto variable declaration in debug_utils.
2015-04-29 13:37:12 +02: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
bunnei
a698e15c5d
Merge pull request #703 from lioncash/cruft
...
dyncom: Remove unused/unnecessary VFP cruft
2015-04-19 20:50:41 -04:00
Lioncash
d66a12c6f6
dyncom: Remove unused/unnecessary VFP cruft
2015-04-17 20:46:05 -04:00
bunnei
5e55a525d8
Merge pull request #691 from rohit-n/sign-compare
...
Silence some -Wsign-compare warnings.
2015-04-17 20:22:03 -04:00
Yuri Kunde Schlesner
6402de9ae7
Common: thread.h cleanups
...
The helper classes are rendered obsolete by C++11 lambdas. Also made
formatting conform to our code style.
2015-04-16 17:55:30 -03: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
d9eb7ca95c
citra-qt: Use std::abs() to get the right absolute function for s64.
2015-04-14 21:18:35 +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
Rohit Nirmal
f15c142c5e
Silence some -Wsign-compare warnings.
2015-04-09 18:55:01 -05: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
Lioncash
b7b8b67620
Move CP15 enum definitions into their own enum.
...
Also gets rid of preprocessor mumbo-jumbo
2015-04-06 12:48:35 -04:00
Lioncash
23dd2ca8a6
dyncom: Properly return the value of the user RO thread register
2015-04-06 09:26:04 -04:00
Lioncash
e628ed4810
dyncom: Set CP15 reset values on initialization
2015-04-06 09:16:42 -04:00
Lioncash
bb7dac022e
dyncom: Suppress uninitialized variable warnings
...
The switch cases will always be hit, but this makes compilers stop complaining.
2015-04-05 23:49:06 -04:00
bunnei
8997cfaeb4
Merge pull request #682 from yuriks/virtmem2
...
Clean-up mem_map constants and fix framebuffer translation errors
2015-04-05 22:07:25 -04:00
Yuri Kunde Schlesner
34b009cf38
Clean-up mem_map constants and fix framebuffer translation errors
2015-04-05 20:14:33 -03:00
Gareth Higgins
8060c519a6
Changed occurences of colour to color for consistency
2015-04-05 02:36:43 -04:00
bunnei
64196976b9
Merge pull request #680 from archshift/bg-color
...
Allow the user to set the background clear color during emulation
2015-04-04 15:14:14 -04:00
purpasmart96
d6c9af600f
IR: Move The IR services to their own folder and implement "GetHandles"
2015-04-03 19:36:03 -07:00
bunnei
3fd2cc566b
Merge pull request #641 from purpasmart96/service_stubs
...
Services: Stubs and minor changes
2015-04-03 22:16:50 -04:00
archshift
cae89fb315
Allow the user to set the background clear color during emulation
...
The background color can be seen at the sides of the bottom screen or when the window is wider than normal.
2015-04-03 15:35:51 -07:00
purpasmart96
198c0ddc72
Services: Stubs and minor changes
2015-04-02 20:05:11 -07:00
bunnei
e25ffaba86
Merge pull request #677 from lioncash/cp15
...
dyncom: Isolate CP15 register reading and writing
2015-04-02 20:21:11 -04:00
Lioncash
490df716f3
dyncom: Move CP15 register writing into its own function.
...
Also implements writing to the rest of the ARM11 MPCore CP15 register set.
2015-04-02 00:20:52 -04:00
Lioncash
5e5954c63b
dyncom: Move CP15 register reading into its own function.
...
Keeps everything contained. Added all supported readable registers in an ARM11 MPCore.
2015-04-02 00:19:11 -04:00
bunnei
d95d6e3ecd
Merge pull request #678 from lioncash/disasm
...
callstack: Remove unnecessary disassembler instantiation
2015-03-31 22:33:23 -04:00
Lioncash
e05d6220f5
disassembler: Get rid of a const_cast
2015-03-30 15:37:34 -04:00
Lioncash
0520a3b178
callstack: Remove unnecessary disassembler instantiation
...
Decode is a static function. There's no need to allocate a disassembler instance.
2015-03-30 11:25:02 -04:00
Lioncash
de6eba0288
dyncom: Migrate InAPrivilegedMode to armsupp
...
It's a generic helper function, so it should be here anyway.
2015-03-26 09:22:02 -04:00
James Rowe
635ed87788
unsetting a few more variables that arent needed outside of this function
2015-03-26 04:11:05 -06:00
James Rowe
5b9a5493c5
Updated the copy commands to run on post_build and use generator expressions to simplify the code as well
2015-03-26 04:04:24 -06:00
James Rowe
2d7008f03c
Changes to bring the previous commits in line with the comments on thepull request. Made the debug build a true debug build with no optimizxations and the RelWithDebInfo is what it says it is too. Changed the copying of the dlls to the build directories to happen at configuration time instead of build time
2015-03-26 04:04:23 -06:00
James Rowe
4a7e21eb58
More changes to the CMakeFiles for better MSVC compatibility. Added in the RelWithDebInfo target and setup copying the Qt 5 Dlls to the output directories.
2015-03-26 04:04:22 -06:00