Commit Graph
100 Commits
Author SHA1 Message Date
Lioncash d5f5aeeab8 CMakeLists: Drop support for Qt 4 2016-06-17 10:48:40 -04:00
Lioncash a81b9ca689 travis: Use GCC 6 on Ubuntu CI builds 2016-06-17 10:48:40 -04:00
Lioncash c283a8509d travis: Use Qt 5 on Ubuntu CI builds 2016-06-17 10:48:35 -04:00
Mat MandGitHub 0c56c9f541 Merge pull request #1897 from linkmauve/sdl2-config-fix
SDL2: Add forgotten default config changes from 7129611e65
2016-06-10 22:38:51 -04:00
Mat M 7139e6353f Merge pull request #1893 from archshift/interpreter-split
Split huge interpreter source file into translation info and interpreter (+ some tiny misc style fixes)
2016-06-09 08:24:47 -04:00
Lioncash 64b6a7c006 service: Add other DLP services
Specifically, dlp::CLNT and dlp::FKCL

Moves them to their own folder like with other services.
2016-06-04 19:43:33 -04:00
Mat M 031a9c57bb Merge pull request #1568 from JayFoxRox/fix-printf
Fix ftoi and disable VFPv3
2016-05-26 19:03:00 -04:00
Mat M ade0889519 Merge pull request #1855 from MerryMage/memory-headers-20160526
Memory: Added necessary headers and removed unnecessary header
2016-05-26 14:19:31 -04:00
Mat M 7a7488a0bb Merge pull request #1814 from JayFoxRox/fix-read-after-write
Fix read-after-write in SMUAD, SMLAD, SMUSD, SMLSD
2016-05-18 08:32:36 -04:00
Mat M 1ec1325117 Merge pull request #1773 from lioncash/debug-build
gl_rasterizer: Fix compilation for debug builds
2016-05-10 09:52:05 -04:00
Lioncash 75e5d0a6a0 gl_rasterizer: Fix compilation for debug builds 2016-05-10 09:22:02 -04:00
Lioncash 0a52e1f587 gdbstub: Silence missing prototype warnings 2016-05-10 09:17:07 -04:00
Lioncash 0f941d0245 dyncom: Reset the context into user mode correctly
The other mode was system mode.
2016-05-09 16:30:55 -04:00
Lioncash da2400a601 source: Fix missing logging arguments
Silences two warnings on OSX.
2016-05-09 09:41:03 -04:00
Lioncash d5b983a8c0 swap: Get rid of pointer casting for swapping structs
These shouldn't haphazardly convert types
2016-05-08 23:33:52 -04:00
Lioncash 47ca79ba4b swap: Get rid of undefined behavior in swapf and swapd
This isn't well-defined in C++.
2016-05-08 23:21:47 -04:00
Lioncash aef4630102 swap: Remove unused methods
Also gets rid of pointer data variants as this prevents the use of
the regular swapping routines as unary predicates in std lib functions.

They also cast to stricter alignment types, which is undefined behavior.
2016-05-08 23:12:04 -04:00
Lioncash 6d5f2a3cff vertex_loader: Correct forward declaration of InputVertex
It's actually a struct, not a class.
2016-05-08 23:08:18 -04:00
Lioncash 5587383eb7 vertex_loader: Provide an assertion for ensuring the loader has been setup
Also adds an assert to ensure that Setup is not called more than once
during a VertexLoader's lifetime.
2016-05-08 23:08:12 -04:00
Lioncash 1357724cd9 vertex_loader: Add constructors to facilitate immediate and two-step initialization 2016-05-08 23:03:32 -04:00
Lioncash 769f4a7018 vertex_loader: initialize_num_total_attributes.
Keeps the public API sane.
2016-05-08 23:03:32 -04:00
Lioncash 8ea5e7dfb5 vertex_loader: Use std::array instead of raw C arrays 2016-05-08 23:03:32 -04:00
Lioncash a286b61f75 vertex_loader: Correct header ordering 2016-05-08 23:01:26 -04:00
Lioncash 1cc183703a core: Clean out some unnecessary header includes 2016-04-16 00:08:49 -04:00
Mathew Maidment d496969c9c Merge pull request #1671 from lioncash/mem
debug_utils: use std::make_unique for initializing PicaTrace
2016-04-15 07:37:10 -04:00
Lioncash 4501a9eb50 debug_utils: use std::make_unique for initializing PicaTrace 2016-04-14 22:05:28 -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
Mathew Maidment 0b7efc2be2 Merge pull request #1653 from mailwl/blx-lr
Fix BLX LR opcode interpretation
2016-04-09 15:32:42 -04:00
Mathew Maidment f3ba678b81 Merge pull request #1651 from mailwl/thread-init-thumb
Update cpsr (T)humb bit while creating thread
2016-04-08 11:50:44 -04:00
Mathew Maidment 0408f1191a Merge pull request #1645 from mailwl/thumb_pc
Fix thumb ADR instruction alignment
2016-04-06 13:01:32 -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
Lioncash 5181b4a0df travis: Update dependencies 2016-04-03 15:45:48 -04:00
Lioncash 5ef90464a1 CMakeFiles: Compile as C++14 2016-04-03 15:45:41 -04:00
Mathew Maidment fc6f898e0b Merge pull request #1622 from JayFoxRox/fix-warnings
Avoid warnings by casting to size_t for ARRAY_SIZE() comparisons
2016-03-31 20:46:44 -04: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
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
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
Lioncash 1400aeceac vector_math: Add missing member in Vec4's SetZero function 2016-03-18 01:49:34 -04: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
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
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
Mathew Maidment d622a2235b Merge pull request #1482 from LittleWhite-tb/mac-opengl-check
Fix missing return
2016-03-09 16:24:37 -05: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
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
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
Mathew Maidment b5ca152389 Merge pull request #1459 from MerryMage/dsp-firmware-hash
DSP: Print hash of firmware to console
2016-03-05 19:27:15 -05:00
Mathew Maidment 5eeef06c10 Merge pull request #1446 from vitorsilverio/patch-2
Update Building Links
2016-03-03 12:46:11 -05:00
Lioncash c89e3d5951 backend: defaulted move constructor/assignment 2016-02-04 22:39:33 -05:00
Mathew Maidment 30fd5d9e96 Merge pull request #1388 from yuriks/spammy-opengl-debug
OpenGL: Downgrade GL_DEBUG_SEVERITY_NOTIFICATION to Debug logging level
2016-02-03 01:57:22 -05: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
Lioncash 60fe45813b color: Make trivial helpers constexpr 2016-01-27 22:14:17 -05:00
Lioncash a89e32b157 elf: Don't cast away const 2016-01-25 02:36:57 -05: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
Mathew Maidment 1b9012aea0 Merge pull request #1363 from robturn/master
DisassembleMemHalf: actually use width in determining opcode name
2016-01-19 13:02:42 -05:00
Mathew Maidment 2c663fbc3e Merge pull request #1360 from lioncash/var
command_processor: Get rid of variable shadowing
2016-01-17 15:59:21 -05:00
Lioncash 4966568076 command_processor: Get rid of variable shadowing 2016-01-17 02:22:51 -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
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
Mathew Maidment 23f5d5a776 Merge pull request #1301 from lioncash/mrc-apsr
dyncom: Handle modifying the APSR via an MRC instruction
2015-12-28 09:59:39 -05:00
Lioncash fddfe946c8 dyncom: Handle modifying the APSR via an MRC instruction 2015-12-28 07:52:04 -05:00
Lioncash 270cbb0119 svc: Remove superfluous printf argument 2015-12-25 14:21:45 -05:00
Mathew Maidment 031443199b Merge pull request #1287 from lioncash/memory
dyncom: Minor changes
2015-12-23 04:56:04 -05: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
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
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
Mathew Maidment 32f92b4a69 Merge pull request #1259 from lioncash/zero
armstate: Zero out the registers on creation
2015-11-29 16:40:22 -05: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