Commit Graph

3326 Commits

Author SHA1 Message Date
bunnei
23f967b0af Merge pull request #1666 from MerryMage/barrier
Thread: Correct Common::Barrier implementation
2016-04-14 22:03:17 -04:00
bunnei
aff35d3e58 Merge pull request #1665 from lioncash/file
IOFile: Minor API changes
2016-04-14 16:28:15 -04:00
wwylele
727d508e02 ncch:only decompress .code section 2016-04-14 18:33:42 +03:00
MerryMage
3c710f9b10 Thread: Make Barrier reusable 2016-04-14 13:59:58 +01:00
MerryMage
8c50833445 common/thread: Correct code style 2016-04-14 13:58:28 +01:00
bunnei
d7fe2784cc shader_jit_x64: Rename RuntimeAssert to Compile_Assert. 2016-04-13 23:04:53 -04:00
bunnei
3f623b2561 shader_jit_x64.cpp: Rename JitCompiler to JitShader. 2016-04-13 23:04:53 -04:00
bunnei
847fb951e2 shader_jit_x64: Free memory that's no longer needed after compilation. 2016-04-13 23:04:52 -04:00
bunnei
60aa72e117 shader_jit_x64: Use a sorted vector instead of a set for keeping track of return addresses. 2016-04-13 23:04:52 -04:00
bunnei
60749f2cda shader_jit_x64: Use CALL/RET instead of JMP for subroutines. 2016-04-13 23:04:52 -04:00
bunnei
507e0b5989 emitter: Add CALL that can be fixed up. 2016-04-13 23:04:50 -04:00
bunnei
1d45b57939 shader_jit_x64: Separate initialization and code generation for readability. 2016-04-13 23:04:50 -04:00
bunnei
6e0319eec9 shader_jit_x64: Get rid of unnecessary last_program_counter variable. 2016-04-13 23:04:49 -04:00
bunnei
f3afe24594 shader_jit_x64: Execute certain asserts at runtime.
- This is because we compile the full shader code space, and therefore its common to compile malformed instructions.
2016-04-13 23:04:49 -04:00
bunnei
ffcf7ecee9 shader: Remove unused 'state' argument from 'Setup' function. 2016-04-13 23:04:48 -04:00
bunnei
a5a74eb121 shader_jit_x64: Specify shader main offset at runtime. 2016-04-13 23:04:47 -04:00
bunnei
c9d10de644 shader_jit_x64: Allocate each program independently and persist for emu session. 2016-04-13 23:04:47 -04:00
bunnei
4632791a40 shader_jit_x64: Rewrite flow control to support arbitrary CALL and JMP instructions. 2016-04-13 23:04:44 -04:00
bunnei
135aec7bea shader_jit_x64: Fix strict memory aliasing issues. 2016-04-13 23:04:43 -04:00
bunnei
e5d417213c emitter: Support arbitrary FixupBranch targets. 2016-04-13 23:04:42 -04:00
Lioncash
5f51622e9d file_util: In-class initialize data members 2016-04-13 20:17:24 -04:00
Lioncash
655623ebb2 file_util: const qualify IOFile's Tell and GetSize functions 2016-04-13 20:17:23 -04:00
Lioncash
a4120ca66c file_util: Don't expose IOFile internals through the API 2016-04-13 20:17:17 -04:00
Lioncash
bf9945b81b file_util: Check for is_trivially_copyable
Also applies the template checks to ReadArray as well.
2016-04-13 19:20:26 -04:00
Lioncash
3ee4432fe3 file_util: Make IOFile data members private 2016-04-13 19:10:54 -04:00
MerryMage
226c5546e2 FileUtil: Missing #include, Add const to IOFile methods 2016-04-12 14:50:20 +01:00
bunnei
38f4c9cce9 Merge pull request #1613 from mailwl/anp
Set Kernel config "Hardware Inited" to 1 (true)
2016-04-11 16:26:47 -04:00
Jannik Vogel
997af88ec6 Use Settings::Apply in SDL frontend 2016-04-11 15:20:05 +02:00
Jannik Vogel
f2c8619704 CitraQt: Apply config at startup 2016-04-11 15:18:00 +02:00
mailwl
df0a81621f Set Kernel config "Unknown Value" to 0x1 2016-04-11 13:47:52 +03:00
Yuri Kunde Schlesner
ad664b4a01 Merge pull request #1657 from JayFoxRox/remove-dump-geometry
Pica: Remove geometry dumper (PICA_DUMP_GEOMETRY)
2016-04-10 19:24:47 -07:00
bunnei
a1b81469a3 Merge pull request #1368 from LittleWhite-tb/configure-widget
Implementation for a configure widget
2016-04-10 20:21:34 -04:00
Jannik Vogel
ff7c798d86 Pica: Remove geometry dumper (PICA_DUMP_GEOMETRY) 2016-04-10 22:07:06 +02:00
Jannik Vogel
0ad050f85d OpenGL: Implement color combiner Operation::Dot3_RGB 2016-04-10 15:31:24 +02:00
Mathew Maidment
0b7efc2be2 Merge pull request #1653 from mailwl/blx-lr
Fix BLX LR opcode interpretation
2016-04-09 15:32:42 -04:00
mailwl
2efc1c9348 Fix BLX LR opcode interpretation 2016-04-09 19:11:02 +03:00
bunnei
069e040500 Merge pull request #1624 from JayFoxRox/buffer-allow-write
Implement buffer-write allow registers
2016-04-09 11:19:23 -04:00
Jannik Vogel
35a92b4097 OpenGL: Respect buffer-write allow registers 2016-04-08 22:57:11 +02:00
Jannik Vogel
c6bbc41984 OpenGL: Split buffer-write mask sync into seperate functions 2016-04-08 22:42:44 +02:00
Jannik Vogel
fa24df7340 Rasterizer: Respect buffer-write allow registers 2016-04-08 22:35:22 +02:00
Jannik Vogel
d47605b2ed OpenGL: Keep stencil-test and framebuffer.depth_format in sync 2016-04-08 22:35:17 +02:00
bunnei
a4c5d8fd50 Merge pull request #1644 from polaris-/gdb-fixes
Adopted WinterMute's gdbstub changes
2016-04-08 16:03:40 -04:00
JamePeng
9045c57d6f update the code of AM service! (#1623) 2016-04-08 15:44:00 -04:00
mailwl
61ec5fa776 cecd:u: stub GetCecStateAbbreviated (#1648) 2016-04-08 15:39:52 -04:00
mailwl
4630209c4c Update cpsr (T)humb bit while creating thread 2016-04-08 18:41:09 +03:00
bunnei
6e750ae12d Merge pull request #1639 from linkmauve/fix-double-framebuffer-check
OpenGL: Fix a double framebuffer completeness checks.
2016-04-07 19:52:02 -04:00
polaris-
64ec5ac356 Default to settings from ini for gdbstub 2016-04-06 22:27:28 -04:00
bunnei
f531d4b810 Merge pull request #1577 from JamePeng/update-apta-func
Append the missing function name"GetAppletInfo", "SetAppCpuTimeLimit" and "GetAppCpuTimeLimit" to APT:A
2016-04-06 21:07:08 -04:00
mailwl
06a4369f75 Fix thumb ADR instruction alignment 2016-04-06 19:46:58 +03:00
polaris-
44d746fc92 Adopted WinterMute's gdbstub changes
This fixes the comments left on the PR (whitespace, SO_REUSEADDR,
comment changes).
2016-04-06 07:01:00 -04:00
JamePeng
857bf9cd09 append SetAppCpuTimeLimit and GetAppCpuTimeLimit to APT:A 2016-04-06 14:24:09 +08:00
bunnei
dccadce074 Merge pull request #1435 from mailwl/frd_u
frd:u: Initial stub some functions
2016-04-05 23:04:35 -04:00
Mathew Maidment
aa6380e5bc Merge pull request #1643 from MerryMage/make_unique
Common: Remove Common::make_unique, use std::make_unique
2016-04-05 20:10:11 -04:00
MerryMage
a06dcfeb61 Common: Remove Common::make_unique, use std::make_unique 2016-04-05 13:31:17 +01:00
bunnei
b393408496 Merge pull request #1620 from LFsWang/path
Fix filename&path encode problem on Windows
2016-04-04 21:55:08 -04:00
JamePeng
af9a8258b9 implement APT::GetStartupArgument 2016-04-05 02:04:58 +08:00
JamePeng
ef47d855ce Append the missing function name"GetAppletInfo" to APT:A 2016-04-05 01:57:18 +08:00
Emmanuel Gil Peyrot
3219be8ee0 OpenGL: Fix a double framebuffer completeness checks. 2016-04-03 17:00:44 +01:00
Jannik Vogel
693cbc1f8f OpenGL: Check for framebuffer completeness 2016-04-03 17:06:05 +02:00
bunnei
6d24c73ea9 Merge pull request #1616 from exhalatio/dlp_dummy
Dummy implementation dlp:SRVR Service.
2016-04-03 10:10:58 -04:00
exhalatio
bbdfbe44e6 Dummy implementation dlp:SRVR Service. 2016-04-03 06:05:20 +09:00
bunnei
e5e3b97db2 Merge pull request #1619 from mailwl/cecd
cecd:u: stub GetCecInfoEventHandle, GetChangeStateEventHandle
2016-04-02 01:43:35 -04:00
Ryan Loebs
58ee548ed8 Rework sockopt translation to match the error translation code already in place 2016-04-01 22:19:21 -07:00
bunnei
9d7028bcfb Merge pull request #1390 from purpasmart96/citra_gsp_error_codes
GSP: Return proper error codes for register writes
2016-04-01 10:50:36 -04:00
Jannik Vogel
c26b141407 Avoid warnings by casting to size_t for ARRAY_SIZE() comparisons 2016-04-01 02:14:43 +02:00
Mathew Maidment
80c16961ae Merge pull request #1618 from MerryMage/one-step
Prevent cache overflow when single stepping
2016-03-31 11:00:42 -04:00
bunnei
67c982be1b Merge pull request #1419 from mailwl/branch-gsp
Add gsp functions: SetAxiConfigQoSMode, UnregisterInterruptRelayQueue
2016-03-31 08:52:38 -04:00
LFsWang
87afef73b1 remove debug code 2016-03-31 20:29:39 +08:00
mailwl
cb8e85a37d cecd:u: stub GetCecInfoEventHandle, GetChangeStateEventHandle 2016-03-31 14:59:10 +03:00
LFsWang
be01912539 fix unicode url problem on windows 2016-03-31 19:21:03 +08:00
LFsWang
acfa76aa38 Fix encode problem On Windows 2016-03-31 18:58:37 +08:00
mailwl
f7619a9a19 Add gsp functions: SetAxiConfigQoSMode, UnregisterInterruptRelayQueue 2016-03-31 10:40:25 +03:00
purpasmart96
abe5c6efec GSP: Return proper error codes for register writes 2016-03-30 18:31:49 -07:00
bunnei
644fbbeb13 Merge pull request #1572 from MerryMage/audio-filter
DSP: Implement audio filters (simple, biquad)
2016-03-30 20:17:52 -04:00
Ryan Loebs
2faafff1b9 Code style 2016-03-30 13:51:34 -07:00
MerryMage
cbba0bec7c DynCom: Optimize single stepping 2016-03-30 18:57:59 +01:00
Ryan Loebs
b1f89408dd Added GetSockOptName
Filter out and translate invalid sockopt names.
2016-03-30 00:25:19 -07:00
Ryan Loebs
0a7d53692a Derp: win32: typedef int socklen_t; 2016-03-29 14:48:25 -07:00
Ryan Loebs
64815a8b16 But of course, Windows uses 'int' while Linux uses 'socklen_t' 2016-03-29 14:33:32 -07:00
Ryan Loebs
b8422b24bd Compiling on Windows now 2016-03-29 14:24:03 -07:00
Ryan Loebs
aa5bb3b997 Formatting... 2016-03-29 04:45:17 -07:00
Ryan Loebs
65883d9327 Addressing PR comments 2016-03-29 04:42:58 -07:00
Ryan Loebs
91dbebbcc5 SOC Updates
-Implement GetSockOpt / SetSockOpt
-Fix bug in RecvFrom where sending from localhost
 does not fill in src_addr/src_addr_len on Linux
2016-03-28 23:34:34 -07:00
Ryan Loebs
1ce8cb148c Add common methods to all cfg:* ports 2016-03-28 23:32:25 -07:00
MerryMage
2a99464ef1 DSP: Implement audio filters (simple, biquad) 2016-03-28 15:51:00 +01:00
LittleWhite
b0e2e1d3f5 Compilation fix 2016-03-28 15:33:03 +02:00
bunnei
e815e4a6aa Merge pull request #1541 from LFsWang/path
Fix Qt string encode problem on Windows
2016-03-27 22:03:07 -04:00
mailwl
81d988b022 frd:u: Initial stub some functions 2016-03-27 10:08:04 +03:00
wwylele
aeb29a1a60 use reference instead of pointer 2016-03-26 10:50:02 +03:00
wwylele
6bd5f98272 remove unnecessary const 2016-03-26 10:46:48 +03:00
bunnei
39da819b55 Merge pull request #1549 from wwylele/acc_gyro
hid: implement accelerometer and gyroscope back-end
2016-03-25 21:07:21 -04:00
wwylele
1d2070d0d3 implement GyroscopeCalibrateParam 2016-03-25 12:22:02 +03:00
bunnei
b25605e20f Merge pull request #1566 from MerryMage/audio-codec
DSP: Implement audio codecs (PCM8, PCM16, ADPCM)
2016-03-24 17:53:22 -04:00
MerryMage
efd1c3f8c3 DSP: Implement audio codecs (PCM8, PCM16, ADPCM) 2016-03-24 03:46:59 +00:00
Yuri Kunde Schlesner
81004211dd Pica: Improve accuracy of immediate-mode support
This partially fixes Etrian Odyssey IV.
2016-03-23 20:18:40 -07:00
Yuri Kunde Schlesner
0c447e0a06 OpenGL: Don't attempt to draw empty triangle batches
Our code did not handle this well, causing random crashes in some
situations.
2016-03-23 20:02:05 -07:00
LittleWhite
3eb737a5f5 Add more stuff to configure. 2016-03-22 21:53:43 +01:00
wwylele
db151efd0a implement accel and gyro backend 2016-03-22 18:35:03 +02:00
bunnei
ebbba0d381 Merge pull request #1508 from JayFoxRox/vs-output-map
Respect vs output map
2016-03-22 11:59:12 -04:00
bunnei
85edb851b0 Merge pull request #1560 from lioncash/savedata
archive_extsavedata: Fix member initialization order
2016-03-22 11:56:47 -04:00
bunnei
e16899783d Merge pull request #1563 from lioncash/lolfiq
armstate: Correct FIQ register banking
2016-03-22 08:38:48 -04:00
Lioncash
d53c9cde1a armstate: Correct FIQ register banking
FIQ has seven banked registers (R8 to R14), not two.
2016-03-21 18:56:27 -04:00
LittleWhite
e33b938505 Whole config is handled by Config class.
This also means : we have only one config file, now
2016-03-21 20:03:18 +01:00
LittleWhite
426c4a2a5b Add Configure widget 2016-03-21 20:03:18 +01:00
bunnei
446d7c7e55 Merge pull request #1559 from lioncash/vec
soc_u: Get rid of explicit delete and new
2016-03-21 11:19:18 -04:00
Lioncash
04f8d39a96 session: Make helper functions constexpr 2016-03-21 04:07:03 -04:00
Lioncash
c99f47d8f0 loader: Make MakeMagic constexpr 2016-03-21 03:28:22 -04:00
Lioncash
6b7ebb3f82 hle: Get rid of global access to g_reschedule
This shouldn't be directly exposed if there's already a partial API that operates on it.
We can just provide the rest of that API.
2016-03-21 02:57:12 -04:00
Lioncash
f6ad3e42f0 archive_extsavedata: Fix member initialization order
shared appears in the initializer list before mount_point
2016-03-21 02:09:12 -04:00
Lioncash
9ea3d55243 soc_u: Get rid of explicit delete and new 2016-03-21 01:22:44 -04:00
bunnei
b83e95727f Merge pull request #1302 from Subv/save_fix
HLE/FS: Fixed many corner cases in our file handling
2016-03-20 16:11:49 -04:00
Subv
f707026ac5 HLE/FS: Change the error code returned when an ExtSaveData archive is not found.
This allows Fire Emblem to boot again.
2016-03-20 14:52:50 -05:00
Subv
3aa42627a3 HLE/FS: Corrected some style concerns. 2016-03-20 14:52:26 -05:00
Subv
95380d8950 HLE/FS: Fixed creating the config savefile when it doesn't exist.
This fixes a regression.
2016-03-20 14:30:03 -05:00
Subv
d26c6b3212 HLE/FS: Implemented GetFormatInfo
Format information is currently only implemented for the ExtSaveData, SharedExtSaveData and SaveData archives, the information is stored in a file alongside the root folder of the archive.
2016-03-20 14:30:01 -05:00
Subv
9b2d643451 HLE/FS: Don't return an error when deleting the ExtSaveData if it does not exist. 2016-03-20 14:28:24 -05:00
Subv
95b34f8081 HLE/FS: Return the proper error codes when opening files. 2016-03-20 14:28:22 -05:00
Subv
802ef6d099 HLE/FS: Fixed the OpenDirectory error code 2016-03-20 14:28:19 -05:00
Subv
96f0e32f83 HLE/FS: Return the proper error codes on file Read/Write operations.
These operations are limited by the open flags specified while opening the file.
2016-03-20 14:28:17 -05:00
Subv
09b0564c75 HLE/FS: Corrected the error codes for DeleteFile 2016-03-20 14:28:14 -05:00
Subv
b350f192bb HLE/FS: Corrected the error codes for CreateFile 2016-03-20 14:28:10 -05:00
Subv
381a5c053f HLE/FS: FS::CreateFile takes an u64 for the file size. 2016-03-20 14:28:08 -05:00
LittleWhite
89a43b8447 Fix missing header 2016-03-20 14:35:51 +01:00
bunnei
784c5539ea Merge pull request #1538 from lioncash/dot
shader_interpreter: use std::inner_product for the dot product
2016-03-20 00:35:06 -04:00
bunnei
958b978efe Merge pull request #1543 from lioncash/zero
vector_math: Add missing member in Vec4's SetZero function
2016-03-18 09:57:15 -04:00
Lioncash
1400aeceac vector_math: Add missing member in Vec4's SetZero function 2016-03-18 01:49:34 -04:00
bunnei
06b70d170e Merge pull request #1505 from pippo2931/fef
GetArchiveResource stub
2016-03-18 00:32:53 -04:00
bunnei
58852bedbf Merge pull request #1535 from JayFoxRox/fix-align
PICA: Alignment happens locally in vertex
2016-03-17 20:00:00 -04:00
bunnei
20ba5b14b4 Merge pull request #1539 from lioncash/const
video_core: Don't cast away const
2016-03-17 10:29:40 -04:00
LFsWang
933af7af66 Fix Qt chinese words encode problem on Windows 2016-03-17 17:18:45 +08:00
Yuri Kunde Schlesner
de7ecee516 Merge pull request #1466 from LittleWhite-tb/gamelist-update-recent
Register ROM started through the gamelist in the list of ROM recently started
2016-03-16 23:42:24 -07:00
Lioncash
63e956cc7a video_core: Don't cast away const 2016-03-17 02:01:38 -04:00
Lioncash
4d89df8df2 shader_interpreter: use std::inner_product for the dot product
Same thing, less code.
2016-03-17 01:00:30 -04:00
Lioncash
c928b04eee core/video_core: Make NumIds functions constexpr 2016-03-17 00:29:47 -04:00
Lioncash
39baad9926 core/video_core: Don't cast away const in subscript operators
Not to say these subscript operators aren't totally ugly as is.
2016-03-17 00:27:15 -04:00
Jannik Vogel
7eef9ebc3b PICA: Alignment happens locally in vertex 2016-03-17 02:24:20 +01:00
LittleWhite
5912c9c327 Register ROM started through the gamelist in the list of ROM recently started 2016-03-16 22:20:39 +01:00
bunnei
55f24e1cf4 Merge pull request #1519 from JayFoxRox/vp-offset-fix
PICA: Fix viewport offset
2016-03-16 14:19:53 -04:00
bunnei
96cafbe4cc Merge pull request #1503 from bunnei/clear-jit-cache
Clear JIT cache
2016-03-16 13:18:51 -04:00
bunnei
caba93fa45 Merge pull request #1479 from JayFoxRox/mad-encoding
Fix MAD/MADI encoding
2016-03-16 13:17:07 -04:00
bunnei
becb758a84 Merge pull request #1526 from bunnei/sdl-rgb8
SDL2: Explicitly use RGB8 color buffer.
2016-03-15 15:48:59 -04:00
Jannik Vogel
9aad2f29bb PICA: Fix MAD/MADI encoding 2016-03-15 20:01:25 +01:00
MerryMage
317e795d35 citra: Shutdown cleanly if ROM load fails 2016-03-15 03:16:54 +00:00
bunnei
69a38e7b54 SDL2: Explicitly use RGB8 color buffer. 2016-03-14 21:59:16 -04:00
Jannik Vogel
964cfaea47 PICA: Fix viewport offset 2016-03-14 18:37:33 +01:00
JamePeng
dd0b8047eb Reorganize the ndm service path for dummy implement function
SuspendDaemons , ResumeDaemons , OverrideDefaultDaemons

The NDM file move to /core/hle/service/ndm/ now!
2016-03-15 00:42:47 +08:00
Jannik Vogel
f746a00964 Respect vs output map 2016-03-14 13:03:34 +01:00
bunnei
a2024d7497 Merge pull request #1509 from lioncash/noncopy
common: Minor changes to NonCopyable
2016-03-13 16:47:44 -04:00
wwylele
ab67f0ffa3 hid: fix pad update 2016-03-13 11:19:17 +02:00
Jannik Vogel
a66c186e81 PICA: Align vertex attributes 2016-03-13 04:54:23 +01:00
Lioncash
38376b833e common_types: Make NonCopyable constructor constexpr 2016-03-12 21:57:18 -05:00
Lioncash
45e2fce7c0 common_types: Specify const in deleted copy constructor/assignment operator 2016-03-12 21:55:30 -05:00
Lioncash
856a1d0386 svc: Move ResetType enum to the kernel event header 2016-03-12 21:47:41 -05:00
Lioncash
31797a242f svc: Remove unused ArbitrationType enum
An equivalent enum already exists within address_arbiter.h
2016-03-12 15:09:13 -05:00
Lioncash
12e92f17de svc: Make ResetType an enum class 2016-03-12 15:06:31 -05:00
pippo2931
8186f1271b Fix header 2016-03-12 11:05:48 -08:00
pippo2931
31abe54c99 GetArchiveResource stub 2016-03-12 11:01:12 -08:00
bunnei
6efb710b28 shader_jit_x64: Clear cache after code space fills up. 2016-03-12 12:15:49 -05:00
bunnei
c103759cdc shader_jit_x64: Make assert outputs more useful & cleanup formatting. 2016-03-12 12:06:28 -05:00
bunnei
46f78b7f19 shader: Update log message to use proper log class. 2016-03-12 12:03:32 -05:00
bunnei
2f0a61debf Merge pull request #1266 from Subv/miiapplet
HLE/Applets: Implemented a dummy Mii Selector applet.
2016-03-12 11:23:59 -05:00
Subv
0f8be2d2cc HLE/Applets: Implemented a dummy Mii Selector applet.
This prevents some games (like Super Mario 3D Land) from freezing when trying to launch it, however, it's not complete and won't let you go past Mii selection as the parameter structure hasn't been reverse engineered yet.
2016-03-12 10:59:37 -05:00
bunnei
afb5140b53 Merge pull request #1500 from lioncash/nullptr
gsp_gpu: Change 0 literal to nullptr
2016-03-12 10:15:02 -05:00
Lioncash
fba547b924 gsp_gpu: Change 0 literal to nullptr 2016-03-11 22:59:48 -05:00
Lioncash
d7dd6c8bd1 hle: Update service function tables 2016-03-11 22:23:51 -05:00
bunnei
3789de6bd9 Merge pull request #1476 from lioncash/emit
emitter: constexpr/misc changes
2016-03-10 01:06:25 -05:00
Yuri Kunde Schlesner
305e63d9ea Merge pull request #1475 from lioncash/align
Common: Get rid of alignment macros
2016-03-09 20:08:38 -08:00
Yuri Kunde Schlesner
3475808a54 Merge pull request #1478 from JayFoxRox/master
Fix attribute mapping in vs debugger
2016-03-09 20:06:49 -08:00
LittleWhite
e649f5d98d Fix missing return 2016-03-09 22:20:08 +01:00
bunnei
4a2d1571bc Merge pull request #1474 from lioncash/renderer
renderer_base: Minor changes
2016-03-09 10:57:38 -05:00
Jannik Vogel
557b732b43 Fix attribute mapping in vs debugger 2016-03-09 13:15:37 +01:00
Lioncash
e3f9d09b28 emitter: templatize ImmPtr 2016-03-09 03:13:01 -05:00
Lioncash
1351c0ce9f emitter: constexpr-ify helper functions 2016-03-09 03:13:00 -05:00
Lioncash
e66a6a2a1b emitter: Get rid of CanDoOpWith
This was removed in Dolphin as there were no particular uses for it.
I'm sure the same will apply to citra.
2016-03-09 03:12:59 -05:00
Lioncash
6085b419e5 emitter: constexpr-ify OpArg 2016-03-09 03:12:53 -05:00
Lioncash
77bcdafc94 emitter: friend class OpArg with XEmitter 2016-03-09 02:25:00 -05:00
Lioncash
450c84c990 emitter: Remove unimplemented prototype 2016-03-09 02:20:00 -05:00
Lioncash
88d604383e Common: Get rid of alignment macros
The gl rasterizer already uses alignas,
so we may as well move everything over.
2016-03-09 01:31:14 -05:00
bunnei
8530a2d7df Merge pull request #1344 from LittleWhite-tb/error-output
Output errors in GUI
2016-03-08 23:12:04 -05:00
Lioncash
4b5b32e721 renderer_base: In-class initialize variables 2016-03-08 21:46:47 -05:00
Lioncash
be913040a8 render_base: Clarify/normalize getter functions 2016-03-08 21:45:24 -05:00
Lioncash
bf76afc68d renderer_base: Don't directly expose the rasterizer unique_ptr
There's no reason to allow direct access to the unique_ptr instance. Only
its contained pointer.
2016-03-08 21:31:44 -05:00
LittleWhite
4be68dddfb Improve error report from Init() functions
Add error popup when citra initialization failed
2016-03-08 22:05:25 +01:00
bunnei
58c336b671 Merge pull request #1441 from MerryMage/dsp-pipes
AudioCore: Implement Pipe 2
2016-03-07 20:29:30 -05:00
bunnei
b12a0b753f Merge pull request #1467 from LittleWhite-tb/bug-shader-object
Set the appropriate locale to get float conversion working using to_string
2016-03-07 20:23:48 -05:00
LittleWhite
9d8a724225 Set the appropriate locale to get float conversion working using std::to_string 2016-03-07 19:51:35 +01:00
MerryMage
004991d79e DSP: Implement Pipe 2
Pipe 2 is a DSP pipe that is used to initialize both the DSP hardware (the
application signals to the DSP to initialize) and the application (the DSP
provides the memory location of structures in the shared memory region).
2016-03-06 21:25:44 +00:00
bunnei
6436d101b5 Merge pull request #1462 from yuriks/depth-test-write
Pica: Write depth value even when depth test is disabled
2016-03-06 11:16:21 -05:00
Yuri Kunde Schlesner
6aa90e13f9 Memory: Do correct Phys->Virt address translation for non-APP linheap 2016-03-05 22:09:59 -08:00
Mathew Maidment
8ee230fe1c Merge pull request #1455 from yuriks/ResultVal-union
core: Use unrestricted union to hold storage of ResultVal value
2016-03-05 23:29:14 -05:00
Yuri Kunde Schlesner
c58bc25d5b Pica: Write depth value even when depth test is disabled
This has been confirmed on hardware. Fixes Etrian Odyssey IV.
2016-03-05 20:16:20 -08:00
MerryMage
5b0fe77140 DSP: Print hash of firmware to console 2016-03-06 00:11:17 +00:00
Yuri Kunde Schlesner
6dd05e610a core: Use unrestricted union to hold storage of ResultVal value 2016-03-05 00:13:20 -08:00
Yuri Kunde Schlesner
b967a581a1 Loader/NCCH: Log the program ID during loading
This is useful for all sorts of things, but mainly to identify save
folders more easily.
2016-03-04 23:53:10 -08:00
bunnei
987d85a33b Merge pull request #1429 from mailwl/branch-acu
ac:u IsConnected implemented
2016-03-05 02:10:25 -05:00
bunnei
878562c291 Merge pull request #1389 from yuriks/stub-cam
Stub CAM:U service
2016-03-04 10:11:09 -05:00
mailwl
d6be7ff683 ac:u: Stub IsConnected 2016-03-04 15:59:02 +03:00
LittleWhite
7ad669a911 Display errors in GUI when loading ROM failed 2016-03-03 22:52:29 +01:00
bunnei
c9009d39d4 Merge pull request #1394 from ds84182/immediate-mode-vtx
Add immediate mode vertex submission
2016-03-03 10:51:15 -05:00
Dwayne Slater
6b775034dd Add immediate mode vertex submission 2016-03-02 22:16:38 -05:00
bunnei
699b2a6571 Merge pull request #1403 from MerryMage/sdl
Dependencies: Remove GLFW, Add SDL2
2016-03-02 20:32:32 -05:00
MerryMage
48366b1071 Config: Use unique_ptr instead of raw pointer 2016-03-02 14:25:06 +00:00
bunnei
ea0ca17215 Merge pull request #1434 from Kloen/legend
Add THREADPROCESSORID_ALL on SVC::CreateThread
2016-03-02 09:09:09 -05:00
MerryMage
ba2a54a9dd Dependencies: Remove GLFW, Add SDL2
citra: Remove GLFW, Add SDL2

FindSDL2: Do not CACHE SDL2_* variables if library is not found

EmuWindow_SDL2: Set minimal client area at initialisation time

EmuWindow_SDL2: Corrections

EmuWindow_SDL2: Fix no decorations on startup on OS X

cmake: windows_copy_files
2016-03-02 14:09:02 +00:00
bunnei
cddb9bd2aa Merge pull request #1297 from Subv/saves
DiskDirectory: Initialize the directory member with valid info.
2016-03-01 17:16:05 -05:00
Kloen
1149e66820 ThreadProcessorId_All on SVC::CreateThread 2016-03-01 12:03:32 +01:00
Yuri Kunde Schlesner
1912c4691b Service/CFG: Fix potential endianess issue 2016-02-29 23:56:02 -08:00
Yuri Kunde Schlesner
228d8ac14a Service/CFG: Add block 0x000A0000 (username) to default config file 2016-02-29 23:55:48 -08:00
Yuri Kunde Schlesner
338a0f01f2 Service/CAM: Add doxycomments to all service functions 2016-02-29 22:53:36 -08:00
Yuri Kunde Schlesner
ddcf2ef32a Merge pull request #1427 from MerryMage/emit-lbit
x64 Emitter: Fix L bit in VEX prefix
2016-02-28 03:12:57 -08:00
MerryMage
f73c39d573 x64 Emitter: Fix L bit in VEX prefix 2016-02-27 12:45:26 +00:00
mailwl
2e13b7f3ca Initial implementation ir:user 2016-02-26 18:39:28 +03:00
bunnei
c28a48aa02 Merge pull request #1352 from LittleWhite-tb/exit_check
Add check before closure when emulation is running
2016-02-26 08:36:33 -05:00
bunnei
2b00bdec1f Merge pull request #1424 from MerryMage/lut_init
renderer_opengl: Initalise fragment shader LUT textures
2016-02-25 19:36:27 -05:00
bunnei
af7282b5ea Merge pull request #1386 from MerryMage/audio-core-skeleton
Audio Core: Skeleton
2016-02-25 19:21:50 -05:00
MerryMage
0801363840 renderer_opengl: Initalise fragment shader LUT textures 2016-02-26 00:12:38 +00:00
bunnei
e04e6aabbc Merge pull request #1395 from ds84182/padding-attributes
Add support for padding vertex attributes
2016-02-24 18:15:16 -08:00
MerryMage
8b00954ec7 AudioCore: Skeleton Implementation
This commit:
* Adds a new subproject, audio_core.
* Defines structures that exist in DSP shared memory.
* Hooks up various other parts of the emulator into audio core.

This sets the foundation for a later HLE DSP implementation.
2016-02-21 13:13:52 +00:00
Dwayne Slater
ed8072b48b Fix out of bounds array access when loading a component >= 12 2016-02-20 19:03:14 -05:00
Dwayne Slater
82fc075ff6 Add support for padding vertex attributes 2016-02-20 19:00:31 -05:00
Yuri Kunde Schlesner
fc6fa0f088 Service/CAM: Dummy implementation of some functions
Thanks to @mailwl for the initial version of the stubs.
2016-02-13 01:16:08 -08:00
MerryMage
6c71858c5c BitField: Make trivially copyable and remove assignment operator 2016-02-12 19:51:16 +00:00
bunnei
19557aaab3 pica: Cleanup lighting register definitions and documentation. 2016-02-05 17:20:25 -05:00
bunnei
c4d318f691 gl_rasterizer: Use alignas(16) instead of explicit padding. 2016-02-05 17:20:24 -05:00
bunnei
aaa7beeda8 renderer_opengl: Use GLvec3/GLvec4 aliases for commonly used types. 2016-02-05 17:20:23 -05:00
bunnei
8e9318f20a gl_rasterizer: Fix issue with interpolation of opposite quaternions. 2016-02-05 17:20:23 -05:00
bunnei
b694423d09 pica_types: Fix typo in docstring. 2016-02-05 17:20:22 -05:00
bunnei
a949fd5f25 pica_types: Replace float24/20/16 with a template class. 2016-02-05 17:20:22 -05:00
bunnei
d171822dce command_processor: Add an assertion to ensure LUTs are not written past their boundaries. 2016-02-05 17:20:20 -05:00
bunnei
310a1c30ca gl_rasterizer: Remove unnecessary casts. 2016-02-05 17:20:19 -05:00
bunnei
c229503f4a gl_rasterizer: Fix PicaShaderConfig on GCC. 2016-02-05 17:20:19 -05:00
bunnei
9dfb223d26 gl_rasterizer: Initial implementation of bump mapping. 2016-02-05 17:20:19 -05:00
bunnei
449902b558 gl_shader_gen: Fix bug in LUT range (should within range [0, 255] not [0, 256]). 2016-02-05 17:20:17 -05:00
bunnei
348c9c9ff3 gl_shader_gen: Implement lighting red, green, and blue reflection. 2016-02-05 17:20:16 -05:00
bunnei
01b407638c gl_shader_gen: View should be normalized. 2016-02-05 17:20:15 -05:00
bunnei
c37de30cfc gl_shader_gen: Implement fragment lighting fresnel effect. 2016-02-05 17:20:13 -05:00
bunnei
0e67c21c9e gl_shader_gen: Implement fragment lighting specular 1 component. 2016-02-05 17:19:16 -05:00
bunnei
781b046579 gl_shader_gen: Add support for D0 LUT scaling. 2016-02-05 17:18:36 -05:00
bunnei
3d89dacd56 gl_shader_gen: Refactor lighting config to match Pica register naming.
- Also implement D0 LUT enable.
2016-02-05 17:17:35 -05:00
bunnei
6307999116 pica: Cleanup and add some comments to lighting registers. 2016-02-05 17:17:34 -05:00
bunnei
6878ba7608 gl_rasterizer: Minor naming refactor on Pica register naming. 2016-02-05 17:17:33 -05:00
bunnei
76f303538b gl_shader_gen: Reorganize and cleanup lighting code.
- No functional difference.
2016-02-05 17:17:33 -05:00
bunnei
5f3bad8fb1 gl_shader_gen: Fix directional lights. 2016-02-05 17:17:32 -05:00
bunnei
bdc72d0904 gl_shader_gen: Fix bug with lighting where clamp highlights was only applied to last light. 2016-02-05 17:17:32 -05:00
bunnei
603b619cbe gl_shader_gen: View vector needs to be normalized when computing half angle vector. 2016-02-05 17:17:31 -05:00
bunnei
021cb0bced renderer_opengl: Use textures for fragment shader LUTs instead of UBOs.
- Gets us LUT interpolation for free.
- Some older Intel GPU drivers did not support the big UBOs needed to store the LUTs.
2016-02-05 17:17:31 -05:00
bunnei
bf89870437 renderer_opengl: Initial implementation of basic specular lighting. 2016-02-05 17:17:30 -05:00
bunnei
e34fa6365f renderer_opengl: Implement HW fragment lighting distance attenuation. 2016-02-05 17:17:30 -05:00
bunnei
e9af70eaf3 renderer_opengl: Implement HW fragment lighting LUTs within our default UBO. 2016-02-05 17:17:29 -05:00
bunnei
afbef52516 renderer_opengl: Implement diffuse component of HW fragment lighting. 2016-02-05 17:17:29 -05:00
bunnei
b003075570 pica: Implement decoding of basic fragment lighting components.
- Diffuse
- Distance attenuation
- float16/float20 types
- Vertex Shader 'view' output
2016-02-05 17:17:28 -05:00
bunnei
281bc90ad2 pica: Implement fragment lighting LUTs. 2016-02-05 17:17:27 -05:00
bunnei
4369767c72 pica: Add decodings for distance attenuation and LUT registers. 2016-02-05 17:17:26 -05:00
bunnei
38c7b20475 pica: Add pica_types module and move float24 definition. 2016-02-05 17:17:26 -05:00
bunnei
69e2453649 Merge pull request #1391 from tfarley/hw-fb-sync-fix
hwrasterizer: Use proper cached framebuffer addr/size
2016-02-05 17:03:58 -05:00
Lioncash
c89e3d5951 backend: defaulted move constructor/assignment 2016-02-04 22:39:33 -05:00
LittleWhite
973a6c40da Add a configuration entry to enable/disable the check 2016-02-04 22:15:42 +01:00
LittleWhite
c2b210f713 Add check before closure when emulation is running
Implement confirmation in a specific function
Fix typos and coding style

Coding convention
2016-02-04 22:15:42 +01:00
tfarley
a15f4d1590 hwrasterizer: Use proper cached fb addr/size 2016-02-03 15:52:34 -05:00
bunnei
7497675a83 Merge pull request #1387 from lioncash/func
services: minor changes
2016-02-03 12:14:48 -05:00
Yuri Kunde Schlesner
05356543d9 OpenGL: Downgrade GL_DEBUG_SEVERITY_NOTIFICATION to Debug logging level
The nVidia driver is *extremely* spammy on this category, sending a
message on every buffer or texture upload, slowing down the emulator and
making the log useless.
2016-02-02 22:44:13 -08:00
Lioncash
0937bed8d8 services: Get rid of unnecessary includes 2016-02-02 01:40:23 -05:00
Lioncash
5e5bb0c32e services: Update function tables 2016-02-01 21:49:44 -05:00
bunnei
cd0b31fd73 Merge pull request #1377 from MerryMage/mmio
Memory: Implemented MMIO
2016-01-30 19:03:33 -05:00
MerryMage
2b93313348 Memory: Implement MMIO 2016-01-30 18:41:04 +00:00
Lioncash
60fe45813b color: Make trivial helpers constexpr 2016-01-27 22:14:17 -05:00
bunnei
a43f8d2fb7 Merge pull request #1367 from yuriks/jit-jmp
Shader JIT: Fix off-by-one error when compiling JMPs
2016-01-27 09:19:28 -05:00
bunnei
c407b6ce2f Merge pull request #1369 from yuriks/jmpu-inverted
Shader: Implement "invert condition" feature of IFU instruction
2016-01-26 09:58:16 -05:00
bunnei
01cb800256 Merge pull request #1370 from yuriks/gpureg-names
Debugger: Use 3dbrew names for GPU registers
2016-01-25 13:37:12 -05:00
Yuri Kunde Schlesner
8b3994e9e4 Merge pull request #1373 from lioncash/cast
elf: Don't cast away const
2016-01-25 00:41:32 -08:00
Lioncash
a89e32b157 elf: Don't cast away const 2016-01-25 02:36:57 -05:00
Yuri Kunde Schlesner
cfaacc07dc Merge pull request #1372 from lioncash/tie
key_map: Use std::tie for comparisons
2016-01-24 22:38:37 -08:00
Lioncash
3933b68c59 key_map: Use std::tie for comparisons 2016-01-25 01:19:21 -05:00
Lioncash
3ed5ecd67a archive_backend: Remove unnecessary const from return types
This doesn't return by reference so const isn't really necessary
2016-01-25 00:14:53 -05:00
Yuri Kunde Schlesner
d01d1f7e01 Debugger: Use 3dbrew names for GPU registers
This list was imported from the 3dbrew wiki page and is pretty much
complete.
2016-01-24 20:29:44 -08:00
Yuri Kunde Schlesner
083d2d89a5 Shader: Implement "invert condition" feature of IFU instruction
If the bit 0 of the JMPU instruction is set, then the jump condition
will be inverted. That is, a jump will happen when the boolean is false
instead of when it is true.
2016-01-24 20:29:06 -08:00
Yuri Kunde Schlesner
c1071c1ff7 Shader JIT: Fix off-by-one error when compiling JMPs
There was a mistake in the JMP code which meant that one instruction at
the destination would be skipped when the jump was taken. This commit
also changes the meaning of the culprit parameter to make it less
confusing and avoid similar mistakes in the future.
2016-01-24 02:15:56 -08:00
bunnei
0b6cc0592d Merge pull request #1334 from tfarley/hw-depth-modifiers
hwrasterizer: Use depth offset
2016-01-20 22:27:33 -05:00
tfarley
f53dbafdae hwrasterizer: Use depth offset 2016-01-20 21:57:59 -05:00
rob turner
d29578d467 ARM_Disasm::DisassembleMemHalf: actually use width in determining opcode name 2016-01-19 18:42:16 +01:00
Lioncash
4966568076 command_processor: Get rid of variable shadowing 2016-01-17 02:22:51 -05:00
Subv
922b31ebbd DiskDirectory: Initialize the directory member with valid info. 2016-01-16 09:30:29 -05:00
bunnei
190b1bbf1f Merge pull request #1327 from Subv/unmap_memblock
HLE/SVC: Implement UnmapMemoryBlock.
2016-01-14 22:27:36 -05:00
Subv
d90d5a0ee6 HLE/SVC: Implement UnmapMemoryBlock.
This implementation will need to be (almost completely) changed when we implement multiprocess support.
2016-01-14 11:29:19 -05:00
bunnei
6a261e825c Merge pull request #1196 from linkmauve/khr_debug
Add optional GL_KHR_debug support
2016-01-12 22:54:52 -05:00
archshift
0144b8e1da Change default gameListRootDir from "" to "."
Not much thought went into that one...
2016-01-06 16:54:14 -08:00
bunnei
848effe9c3 Merge pull request #1283 from Subv/soc_fixup
HLE/Sockets: Fixed the buffer offset in recvfrom.
2016-01-05 13:52:25 -05:00
bunnei
0ca8354464 Merge pull request #1330 from archshift/add-defaults
Gamelist: supply default settings for QSettings config
2016-01-03 11:14:44 -05:00
archshift
e516a5bc96 Gamelist: supply default settings for QSettings config 2016-01-01 13:54:06 -08:00
bunnei
085c8f2987 Merge pull request #1310 from lioncash/services
services: Update some function tables
2015-12-30 21:30:07 -05:00
bunnei
54bdba750a Merge pull request #1316 from lioncash/decode
arm_dyncom_dec: Fix decoding of VMLS
2015-12-30 21:29:35 -05:00
Lioncash
532dc797c9 arm_dyncom_dec: Fix decoding of VMLS
Previously, all VMLS variants would misdecode as CDP
(which isn't necessarily wrong in itself, however
VMLS has it's own label of execution)
2015-12-30 14:23:07 -05:00
Lioncash
744f4af3ab services: Update some function tables 2015-12-30 11:29:21 -05:00
Lioncash
5e17a586da video_core: Make the renderer global a unique_ptr 2015-12-30 08:52:01 -05:00
bunnei
4bc961d5fd Merge pull request #1306 from Subv/sync
HLE/Timers: Reset OneShot timers when they are acquired instead of when they're triggered
2015-12-29 22:36:29 -05:00
bunnei
8a24214b46 Merge pull request #1303 from lioncash/unique
core: Use unique_ptr for holding the interpreter instances
2015-12-29 22:34:32 -05:00
Subv
6cccc36505 HLE/Timers: Reset OneShot timers when they are acquired instead of when they're triggered.
Closes #1139
2015-12-29 20:35:25 -05:00
Lioncash
97dc9634a2 swrasterizer: Add missing override specifier 2015-12-29 18:35:38 -05:00
Lioncash
cee8df6ff0 core: Use unique_ptr for holding the interpreter instances 2015-12-29 18:03:08 -05:00
bunnei
73740d74ed Merge pull request #1300 from Subv/arbitrateaddress
SVC: Fixed ArbitrateAddress to behave as it does on hardware.
2015-12-28 22:23:51 -05:00
Lioncash
fddfe946c8 dyncom: Handle modifying the APSR via an MRC instruction 2015-12-28 07:52:04 -05:00
Subv
29032ce9b6 SVC: Fixed ArbitrateAddress to behave as it does on hardware.
This was verified with hwtests that i plan to upload later on.
2015-12-27 18:44:42 -05:00
bunnei
8f39297c53 Merge pull request #1296 from lioncash/warn
svc: Remove superfluous printf argument
2015-12-27 16:19:48 -05:00
bunnei
40599c24ea Merge pull request #1290 from LFsWang/master
Add a return value in ForeachDirectoryEntry
2015-12-27 16:18:43 -05:00
Lioncash
270cbb0119 svc: Remove superfluous printf argument 2015-12-25 14:21:45 -05:00
Subv
282f2c8042 HLE/Sockets: Fixed the buffer offset in recvfrom.
Closes #1277
2015-12-24 09:19:27 -05:00
Mathew Maidment
031443199b Merge pull request #1287 from lioncash/memory
dyncom: Minor changes
2015-12-23 04:56:04 -05:00
LFsWang
8376821776 Add missing return values in ForeachDirectoryEntry
ForeachDirectoryEntry is changed by #1256 ,but return value at last line
was missing.
2015-12-23 16:26:38 +08:00
Lioncash
d09b7a3c12 dyncom: Remove PC dispatch from several instructions
These instructions aren't capable of using the PC as a destination
2015-12-20 21:19:02 -05:00
Yuri Kunde Schlesner
015d7b9779 VideoCore: Sync state after changing rasterizers
This fixes various bugs that appear in the HW rasterizer after switching
between it and the SW one during emulation.
2015-12-20 17:37:15 -08:00
Lioncash
5a531d7ec2 dyncom: Handle unprivileged load/store variants correctly
LDRT/LDRBT/STRBT/STRT should simulate the load or store
as if the host CPU is in user mode.

STRT is also allowed to use the PC as an operand
2015-12-19 19:05:50 -05:00
Lioncash
84afaaa10c svc: Fix compilation with LOG_TRACE enabled 2015-12-12 18:14:36 -05:00
Yuri Kunde Schlesner
402692c08d Merge pull request #1267 from yuriks/flipped-framebuffer
OpenGL: Flip framebuffers during transfer rather than when rendering
2015-12-09 20:35:15 -08:00
bunnei
3013f26d70 Merge pull request #1269 from Subv/triangle_fan
GPU/PrimitiveAssembler: Fixed drawing triangle fans.
2015-12-08 10:27:40 -05:00
Yuri Kunde Schlesner
31764c48fb Merge pull request #1272 from yuriks/merge-rasterizer
VideoCore: Unify interface to OpenGL and SW rasterizers
2015-12-07 20:21:06 -08:00
Yuri Kunde Schlesner
195fedccf0 VideoCore: Unify interface to OpenGL and SW rasterizers
This removes explicit checks sprinkled all over the codebase to instead
just have the SW rasterizer expose an implementation with no-ops for
most operations.
2015-12-07 20:20:38 -08:00
Yuri Kunde Schlesner
03835d04f4 VideoCore: Rename HWRasterizer methods to be less confusing 2015-12-06 19:08:37 -08:00
Yuri Kunde Schlesner
da80ece8b9 OpenGL: Rename cache functions to better match what they actually do 2015-12-06 17:02:52 -08:00
Lioncash
56e22e6aac dyncom: Remove static keyword from header functions 2015-12-06 15:14:51 -05:00
Lioncash
1ea0702eaa arm_interface: Make GetNumInstructions const 2015-12-06 15:07:59 -05:00
Lioncash
de9a625c7e arm_interface: directly initialize class members 2015-12-06 15:07:00 -05:00
Lioncash
d03e7f08ff dyncom: const correctness changes 2015-12-06 15:03:06 -05:00
Subv
7b33e163b9 GPU/PrimitiveAssembler: Fixed drawing triangle fans.
It was skipping the second vertex assignment and using uninitialized garbage when assembling the corresponding triangle.
2015-12-06 10:48:05 -05:00
Yuri Kunde Schlesner
cf81e08389 OpenGL: Flip framebuffers during transfer rather than when rendering 2015-12-04 22:23:39 -08:00
Yuri Kunde Schlesner
95dbc6eb0e OpenGL: Add support for glFrontFace in the state tracker 2015-12-04 21:58:26 -08:00
bunnei
87df493b5b Merge pull request #1252 from Subv/cam
Services/Cam: Added new log type and camera enums from 3dbrew.
2015-12-03 22:01:45 -05:00
Yuri Kunde Schlesner
e9c209ccc8 PICA: Properly emulate 1-stage delay in the combiner buffer
This was discovered and verified by @fincs. The tev combiner buffer
actually lags behind by one stage, meaning stage 1 reads the initial
color, stage 2 reads stage 0's output, and so on.

Fixes character portraits in Fire Emblem: Awakening and world textures
in Zelda: ALBW. Closes #1140.
2015-11-30 22:45:18 -08:00
Yuri Kunde Schlesner
84a22cb594 Kernel: Implement svcGetSystemInfo
This makes smealum/ctrulib@b96dd51d33 work
with Citra.
2015-11-30 19:49:44 -08:00
Lioncash
5e2b66d2a4 armstate: Zero out the registers on creation
std::array isn't always guaranteed to explicitly zero out it's contents
without an initializer list.
2015-11-29 15:16:34 -05:00
Subv
1d02eb0587 Core/ARM11: Correct the size of the VFP register array in the ThreadContext structure.
The VFP registers are 64 bits each, and there are 32 of them.
2015-11-29 13:06:45 -05:00
bunnei
e906165229 Merge pull request #1225 from lioncash/clean
csnd_snd: Get rid of type punning
2015-11-28 23:32:05 -05:00
archshift
b3cfcf55ea Refactor ScanDirectoryTreeAndCallback to separate errors and retvals
ScanDirectoryTreeAndCallback, before this change, coupled error/return
codes and actual return values (number of entries found). This caused
confusion and difficulty interpreting the precise way the function
worked.

Supersedes, and closes #1255.
2015-11-27 13:33:38 -08:00
bunnei
f008dfbaca renderer_opengl: Fix uniform issues introduced with kemenaran/avoid-explicit-uniform-location. 2015-11-25 22:33:24 -05:00
Pierre de La Morinerie
0735630744 Use regular uniform location
The support for GL_ARB_explicit_uniform_location is not that good
(53% according to http://feedback.wildfiregames.com/report/opengl/feature/GL_ARB_explicit_uniform_location).

This fix the shader compilation on Intel HD 4000 (#1222).
2015-11-25 11:56:11 +01:00
bunnei
c642dc459b Merge pull request #1248 from polaris-/add-ssl-stubs
Add stub functions for Initialize and GenerateRandomData in ssl:C
2015-11-24 16:15:21 -05:00
Subv
434ae89a6a Services/Cam: Added new log type and camera enums from 3dbrew.
Followup to #1102
Original author @mailwl
2015-11-23 17:17:28 -05:00
polaris-
4179e91baf Add stub functions for Initialize and GenerateRandomData in ssl:C 2015-11-22 16:54:51 -05:00
bunnei
78b0d9c8b0 Merge pull request #1246 from polaris-/patch-1
Fix read and write register blocks in gdbstub
2015-11-22 13:38:50 -05:00
polaris-
912e53323d Add Initialize and GenerateRandomData stubs 2015-11-22 09:27:46 -05:00
polaris-
2732ec758d Fix read and write register blocks in gdbstub
Previously, the padding wasn't correctly accounted for which caused the gdbstub to read and write everything after R15 (starting with the dummy FPA registers) incorrectly, which caused CPSR to not be handled correctly. Everything appears to be working as expected with this change.
2015-11-22 07:48:26 -05:00
bunnei
ac829f87e0 Merge pull request #1237 from Subv/ubos
Shaders: Use UBOs instead of individual uniforms in the generated frag shaders
2015-11-18 22:20:12 -05:00
Subv
823ce62f2f FragShader: Use an UBO instead of several individual uniforms 2015-11-18 21:03:56 -05:00
wwylele
1f89d5d184 fix failure on gcc and clang 2015-11-12 20:39:30 +02:00
wwylele
8de154893c disable unary minus when the type is not signed
silent warning C4146 on msvc
2015-11-12 20:39:28 +02:00
bunnei
43bb29edc5 Merge pull request #1122 from polaris-/gdbstub
gdbstub implementation
2015-11-11 23:21:31 -05:00
Subv
7a37dba75b GPU/Loaders: Log an error when a loader tries to load from a component beyond the available ones (12).
Related to #1170
2015-11-09 21:16:11 -05:00
polaris-
bcea959910 Fix bug with reading addresses and lengths 2015-11-03 21:50:53 -05:00
polaris-
b6422038b5 Change headers 2015-10-29 06:17:29 -04:00
Lioncash
a1bd909294 csnd_snd: Get rid of type punning 2015-10-28 16:10:21 -04:00
bunnei
7c12ee9ecc Merge pull request #1165 from esoteric-programmer/master
Added CSND_ExecuteType0Commands stub.
2015-10-28 15:19:13 -04:00
Matthias Ernst
3d89e0a94c Added CSND stub. 2015-10-28 19:04:01 +01:00
bunnei
af26b7a0bc Merge pull request #1208 from archshift/free-bytes
Implement FS_User::GetFreeBytes
2015-10-28 11:30:25 -04:00
archshift
5dfd2dba70 Implement FS_User::GetFreeBytes 2015-10-27 23:33:59 -07:00
Filiph Sandström
a06a32c05d Fix copy paste 2015-10-24 13:17:04 +02:00
Emmanuel Gil Peyrot
53df67376d OpenGL: Log GL_KHR_debug messages we receive
This allows the driver to communicate errors, warnings and improvement
suggestions about our usage of the API.
2015-10-24 02:30:51 +01:00
Filiph Sandström
0c84d59a27 Fix wrong branch 2015-10-23 23:58:54 +02:00
Filiph Sandström
844b9970b4 Add GetTotalStepCount Stub 2015-10-23 23:52:13 +02:00
Filiph Sandström
f61c9da7d3 Update ptm.h 2015-10-23 23:50:51 +02:00
bunnei
8c385a3fc6 Merge pull request #1209 from wwylele/file-path-encoding
citra-qt: Change file path encoding
2015-10-22 22:41:39 -04:00
polaris-
a7eb6a4045 Add some headers so TravisCI will hopefully work 2015-10-22 00:31:49 -04:00
polaris-
45ed9e7e5e Use CHAR_BIT instead of 8 2015-10-22 00:19:44 -04:00
polaris-
a5ab8accc2 Handle changes pointed out in comments on PR 2015-10-22 00:11:25 -04:00
bunnei
74186a5f01 gl_shader_gen: Use explicit locations for vertex shader attributes. 2015-10-21 22:29:56 -04:00
bunnei
e663f5c914 gl_shader_gen: Optimize code for AppendAlphaTestCondition.
- Also add a comment to AppendColorCombiner.
2015-10-21 22:29:56 -04:00
bunnei
e7b1f2ae0a gl_rasterizer: Define enum types for each vertex texcoord attribute. 2015-10-21 21:59:47 -04:00
bunnei
0ebcff710e gl_shader_gen: Various cleanups to shader generation. 2015-10-21 21:59:44 -04:00
bunnei
240a3b80d9 gl_rasterizer: Use MMH3 hash for shader cache hey.
- Includes a check to confirm no hash collisions.
2015-10-21 21:58:59 -04:00
bunnei
71edb55114 gl_shader_gen: Require explicit uniform locations.
- Fixes uniform issue on AMD.
2015-10-21 21:54:56 -04:00
bunnei
5ef2df056d gl_shader_gen: Rename 'o' to 'attr' in vertex/fragment shaders. 2015-10-21 21:53:19 -04:00
bunnei
c2c4faef4c gl_shader_gen: AppendAlphaModifier default should be 0.0, not vec4(0.0). 2015-10-21 21:53:18 -04:00
bunnei
bd833b8dd8 gl_shader_gen: Fix bug where TEV stage outputs should be clamped. 2015-10-21 21:53:18 -04:00
bunnei
f2e7f7e101 gl_rasterizer: Add documentation to ShaderCacheKey. 2015-10-21 21:53:17 -04:00
bunnei
4b5141954e gl_shader_gen: Add additional function documentation. 2015-10-21 21:53:17 -04:00
bunnei
2a0a86f629 gl_shader_util: Cleanup header file + add docstring. 2015-10-21 21:53:16 -04:00
bunnei
a74774257e gl_shader_gen: Various cleanups + moved TEV stage generation to its own function. 2015-10-21 21:53:16 -04:00
bunnei
c86b9d4242 renderer_opengl: Refactor shader generation/caching to be more organized + various cleanups. 2015-10-21 21:53:14 -04:00
bunnei
3c057bd3d8 gl_rasterizer: Move logic for creating ShaderCacheKey to a static function. 2015-10-21 21:53:05 -04:00
bunnei
b02a533d94 gl_shader_util: Use vec3 constants for AppendColorCombiner. 2015-10-21 21:51:24 -04:00
bunnei
37b0aa5af7 gl_rasterizer: Fix typo in uploading TEV const color uniforms. 2015-10-21 21:51:24 -04:00
bunnei
82f3e6dc69 gl_shader_util: Fix precision bug with alpha testing.
- Alpha testing is not done with float32 precision, this makes the HW renderer match the SW renderer.
2015-10-21 21:51:23 -04:00
Subv
e3f4233cef Initial implementation of fragment shader generation with caching. 2015-10-21 21:51:23 -04:00
polaris-
d1f73c424f Add a register variable to loops 2015-10-21 07:45:35 -04:00
polaris-
d7e346239b Update register read loops to go with last commit 2015-10-21 07:40:30 -04:00
polaris-
8a0d848646 Pad responses to gdb for VFP registers 2015-10-21 07:19:03 -04:00
polaris-
53aa55fcaa Try to add support for VFP registers 2015-10-21 07:14:43 -04:00
polaris-
9f66580d7e Fix buffer overflow comments 2015-10-21 06:49:49 -04:00
wwylele
6e57389172 change file path encoding to Local8bit()
to support non-latin characters
2015-10-20 20:58:23 +03:00
bunnei
7411aed5c7 Merge pull request #1207 from kemenaran/persist-citra-settings-in-qt
citra-qt: save hardware-rendering and shaders-jit settings
2015-10-20 10:31:13 -04:00
bunnei
2e2cfa0037 Merge pull request #1204 from kemenaran/qt-add-mac-icon
citra-qt: Add icon to the OS X app
2015-10-20 10:21:03 -04:00
bunnei
c717d1551d Merge pull request #1199 from Gareth422/encryption-check
Loader: Implement NCCH encryption check
2015-10-20 10:17:31 -04:00
Pierre de La Morinerie
71f6672415 citra-qt: persist hardware-rendering and shaders-jit settings
Before this changing these settings from the GUI would apply the
settings, but they were reseted to the default values when exiting
citra.
2015-10-18 14:08:23 +02:00
Pierre de La Morinerie
22421528b7 citra-qt: Add icon to Mac app
Previously the Mac app didn't have any icon.
2015-10-14 15:02:36 +02:00
polaris-
2b7316a379 Remove unnecessary new lines, changed Deinit to Shutdown 2015-10-11 20:07:58 -04:00
Gareth Poole
721475420d Loader: Change NCCH header types to be explicitly little-endian 2015-10-10 22:35:22 -04:00
Gareth Poole
2706394384 Loader: Implement encryption check 2015-10-10 22:34:17 -04:00
bunnei
04325e5980 Merge pull request #1194 from linkmauve/no-newline
Remove newlines in LOG_* calls
2015-10-10 14:42:17 -04:00
Emmanuel Gil Peyrot
14af5919ba CitraQt, SkyEye, Loader, VideoCore: Remove newlines in LOG_* calls.
The LOG_* function itself already appends one.
2015-10-09 22:14:56 +01:00
Gareth Poole
be217bca70 Fixed spelling errors 2015-10-09 17:09:52 -04:00
bunnei
7c747c8c33 Merge pull request #1189 from archshift/game-list-toggle-window
Game list: propely hide on toggling window mode
2015-10-07 10:33:11 -04:00
Rohit Nirmal
32391cffdd Silence -Wsign-compare warnings. 2015-10-06 22:16:15 -05:00
archshift
2ce2e05db0 Game list: propely hide on toggling window mode
Properly hides the game list upon toggling from external
window mode to single window mode. Previously, both the game
list and the render window would have been shown at the same
time upon toggling.
2015-10-06 12:20:26 -07:00
Pierre de La Morinerie
ba5d0f594d citra-qt: Fix mouse events coordinates on high-DPI screens 2015-10-04 23:11:05 +02:00
Pierre de La Morinerie
2f4a1e0d59 citra-qt: Enable high-DPI widgets on Mac app
The OS will render the widgets using the system screen DPI (instead of
being locked at @1x resolution).

This has no impact on the existing high-DPI rendering code in Citra,
which means that the resolution of the emulated content is increased
to the real number of pixels, as on other platforms.
2015-10-04 23:11:05 +02:00
Pierre de La Morinerie
513483f8d5 citra-qt: Use custom Info.plist for Mac builds
Instead of letting CMake re-generate an automatic Info.plist file on
every build, use our own. This allows greater control on the application
bundle settings.
2015-10-04 23:11:05 +02:00
polaris-
42928659e8 Use BreakpointAddress struct instead of passing address directly 2015-10-04 11:22:31 -04:00
polaris-
6ea428addf Toggle use_gdbstub in citra GLFW 2015-10-04 11:22:07 -04:00
polaris-
31dee93e84 Implement gdbstub 2015-10-04 11:16:59 -04:00
bunnei
5d635986bf Merge pull request #1176 from lioncash/vs2015-code-junking-day
Obligatory "Throw out workarounds VS2013 once limited us to" PR
2015-10-03 13:19:03 -04:00
bunnei
11a64acf23 Merge pull request #1095 from archshift/game-list
Initial implementation of a game list
2015-10-01 23:35:19 -04:00
archshift
0fae76c741 Game list: save and load column sizes, sort order, to QSettings 2015-10-01 19:39:15 -07:00
archshift
797b91a449 Add menu item for selecting the game list folder 2015-10-01 19:39:14 -07:00
archshift
6e1bb58ee8 Initial implementation of a game list 2015-10-01 19:39:14 -07:00
archshift
f297a59985 Add helper function for creating a readable byte size string. 2015-10-01 19:39:14 -07:00
archshift
afd06675fa Don't show render window until a game is started 2015-10-01 19:39:14 -07:00
Lioncash
845ac621b3 bit_field: Re-enable code on MSVC 2015-10-01 15:43:42 -04:00
bunnei
1f18d64d1f Merge pull request #1180 from lioncash/symbol
symbols: Minor changes
2015-10-01 11:20:21 -04:00
archshift
7134a17fc6 Split up FileUtil::ScanDirectoryTree to be able to use callbacks for custom behavior
Converted FileUtil::ScanDirectoryTree and FileUtil::DeleteDirRecursively
to use the new ScanDirectoryTreeAndCallback function internally.
2015-09-30 21:04:47 -07:00
archshift
bba12520c4 Expose loader helper functions for identifying files. 2015-09-30 21:04:47 -07:00
Lioncash
8cb2bc748d symbols: Replace an insert call with emplace 2015-09-30 11:55:58 -04:00
Lioncash
65d7a82db4 symbols: Get rid of initial underscores in variable names 2015-09-30 11:54:44 -04:00
Lioncash
7e143d4422 symbols: Directly initialize TSymbol members 2015-09-30 11:53:01 -04:00
Lioncash
052eacc3b9 symbols: Simplify GetSymbol 2015-09-30 11:51:06 -04:00
bunnei
bcaafb826e Merge pull request #1177 from linkmauve/fix-msvc-todo
Use a constexpr function for country initialization in service/cfg
2015-09-30 11:06:47 -04:00
Lioncash
a97d9613a7 ivfc_archive: Fix a printf specifier 2015-09-30 08:19:42 -04:00
Emmanuel Gil Peyrot
57722fb192 Service/CFG: Use a constexpr function for country initialization
This fixes a TODO left over from when we supported MSVC 2013.
2015-09-30 04:02:48 +01:00
bunnei
a67df5ad94 Merge pull request #1172 from martinlindhe/fix-warnings
Fix some xcode 7 (llvm) warnings
2015-09-29 22:00:27 -04:00
Martin Lindhe
bafb7afba2 fix some xcode 7.0 warnings 2015-09-29 23:11:09 +02:00
LittleWhite
d06824809f Fix for the refresh issue when no rendering is done 2015-09-24 21:48:41 +02:00
bunnei
09f43c0975 Merge pull request #1160 from lioncash/clang
Silence some clang warnings
2015-09-21 21:29:55 -04:00
bunnei
ca5ea5142d Merge pull request #1106 from Kloen/fix-connect
citra-qt: Fix connect error on startup (#449)
2015-09-21 21:16:48 -04:00
Cruel
d60a9be5c6 Implement 3dsx RomFS 2015-09-21 13:03:18 -04:00
polaris-
5114d75647 Implement gdbstub 2015-09-19 22:28:02 -04:00
Kloen
541fc80240 citra-qt: Fix connect error on startup 2015-09-18 11:36:59 +02:00
Lioncash
543192e045 hash: Get rid of unused functions 2015-09-16 08:54:28 -04:00
Lioncash
751fbfdcc3 general: Silence some warnings when using clang 2015-09-16 08:51:53 -04:00
Yuri Kunde Schlesner
bbf92a54e5 Service/CFG: Add default entry for block 0x000A0001 (birthday) 2015-09-14 17:39:52 -03:00
Yuri Kunde Schlesner
13a8e39813 Service/CFG: Correct flags in 2 default blocks
Verified against a 9.2.0-20 config save
2015-09-14 17:39:51 -03:00
Yuri Kunde Schlesner
d91f1c0624 Service/CFG: Add additional blocks to default save data
These blocks are required by various games to boot.
2015-09-14 17:39:50 -03:00
Yuri Kunde Schlesner
6c89d4ca26 Fix narrowing conversion warning 2015-09-14 17:39:50 -03:00
Yuri Kunde Schlesner
1fe72dcc04 Service/CFG: Move several private types from the header to the cpp 2015-09-14 17:39:49 -03:00
Yuri Kunde Schlesner
ac4f7b0fde Service/CFG: Clean up default block creation 2015-09-14 17:39:48 -03:00
Yuri Kunde Schlesner
b3af7aad9e Merge pull request #1123 from yuriks/gsp-flush
GSP: Implement command 0x05, used for flushing caches
2015-09-14 17:00:45 -03:00
bunnei
d6e56b8c88 Merge pull request #1111 from LittleWhite-tb/qt-close-renderwindow
Stop emulation when render window is closed
2015-09-14 15:23:08 -04:00
Yuri Kunde Schlesner
1ed7f3e028 GSP: Implement command 0x05, used for flushing caches
May fix additional texture caching issues. (Though mostly in homebrew, I
haven't seen any commercial software use this to flush anything but
command lists.)
2015-09-14 16:19:05 -03:00
Lioncash
13683a6a11 memory_util: Remove unnecessary assignment in FreeMemoryPages 2015-09-11 23:16:34 -04:00
Lioncash
3972ac40ef memory_util: Remove commented out printf statements 2015-09-11 23:12:28 -04:00
Lioncash
07bfe0abbb general: Replace 0 literals with nullptr where applicable 2015-09-11 23:11:01 -04:00
Lioncash
b9fb46ac9d synchronized_wrapper: Add missing return in SynchronizedRef move assignment operator 2015-09-11 22:00:21 -04:00
Yuri Kunde Schlesner
5bca1e6adf Merge pull request #1147 from lioncash/nullptr
General: Replace NULL and '0' usages with nullptr where applicable
2015-09-11 18:56:41 -03:00
Yuri Kunde Schlesner
5bf8eed96c Merge pull request #1149 from lioncash/override
graphics_breakpoints_p: Add missing override specifier
2015-09-11 18:24:24 -03:00