Commit graph

122 commits

Author SHA1 Message Date
Lioncash
816b1ca776 dyncom: Use std::array for register arrays 2015-07-26 13:21:04 -04:00
Lioncash
0ecc6e2f04 dyncom: Use ARMul_State as an object
Gets rid of C-like parameter passing.
2015-07-26 13:18:32 -04:00
Lioncash
03213f893e dyncom: Remove unnecessary initialization code.
Targeting ARM version variants was only a thing on armemu.

The reset routine also does basically the same thing as NewState.
2015-07-25 22:10:54 -04:00
Lioncash
3257d797e1 dyncom: Remove unnecessary abort-related cruft
Both the MPCore and the ARM9 have the same data abort model (base restored), so differentiating isn't necessary.
2015-07-25 22:10:53 -04:00
Lioncash
dfb424b6d1 dyncom: Rename armdefs.h to armstate.h 2015-07-25 22:10:44 -04:00
Lioncash
4bb1a5ca47 dyncom: Get rid of skyeye typedefs 2015-07-25 20:52:10 -04:00
Lioncash
0191c26521 dyncom: Move helper functions to their own header 2015-07-25 20:35:18 -04:00
Lioncash
6b73e4566b dyncom: Move arminit.cpp and armsupp.cpp into skyeye_common 2015-07-25 20:01:44 -04:00
Lioncash
f7ba683dc3 armdefs: Remove unnecessary extern keywords 2015-07-25 18:32:57 -04:00
Yuri Kunde Schlesner
867c28ae03 Merge pull request #876 from linkmauve/include-cleanups
Cleanup includes, mostly in common
2015-07-10 16:36:12 -07:00
Lioncash
e3e8ad48c1 vfp: Change return type of VFPInit from unsigned int to void. 2015-06-29 14:51:38 -04:00
Lioncash
32a6379bc8 vfp: Handle accesses to FPINST/FPINST2 system registers
Also has a side-benefit of correcting access to the FPEXC register.
2015-06-29 03:27:26 -04:00
Emmanuel Gil Peyrot
f48b28ad27 Core, VideoCore: Replace or fix exit() calls. 2015-06-28 00:36:55 +01:00
Lioncash
71858fc7cc vfp: Handle accesses to the VFP media feature registers
These are able to be accessed in any privilege mode.
2015-06-12 20:21:51 -04:00
Lioncash
e817224f89 vfp: Implement VMOVBCR/VMOVBRC 2015-06-12 02:47:10 -04:00
Emmanuel Gil Peyrot
b1503b2020 Remove every trailing whitespace from the project (but externals). 2015-05-29 21:59:29 +01:00
Lioncash
6278937a28 dyncom: Get rid of armemu.h 2015-05-23 20:51:02 -04:00
Lioncash
097d8282a6 dyncom: remove load_r15 from arm_inst
It's entirely unused. Also allows getting rid of more clunky macros.
2015-05-22 23:38:00 -04:00
bunnei
3a348a90fd VFP: Log as trace to get rid of spamming. 2015-05-22 19:42:44 -04:00
Lioncash
572c91a024 dyncom: Eliminate clang warnings
Gets rid of a whole load of missing brace initialization warnings.
2015-05-21 16:43:21 -04:00
bunnei
f0365f28c2 Merge pull request #772 from lioncash/warn
core/video_core: Fix a few warnings when compiling on MSVC.
2015-05-18 08:08:49 -04:00
bunnei
6abed88092 Merge pull request #770 from lioncash/dyncom_clean
dyncom: Minor cleanup.
2015-05-15 09:44:39 -04:00
Yuri Kunde Schlesner
7ada357b2d Memmap: Re-organize memory function in two files
memory.cpp/h contains definitions related to acessing memory and
configuring the address space
mem_map.cpp/h contains higher-level definitions related to configuring
the address space accoording to the kernel and allocating memory.
2015-05-15 00:04:38 -03:00
Lioncash
773b1ef6bf vfp: Get rid of warnings
- Unary minus operator applied to unsigned type.
- Unsafe use of bool.
2015-05-14 13:54:15 -04:00
Lioncash
f3c4de4ce4 dyncom: Remove unnecessary typedefs 2015-05-14 11:51:46 -04:00
Lioncash
ffc51161f3 vfp: Handle flush-to-zero mode. 2015-05-11 15:56:02 -04:00
Lioncash
ae0c38a333 Remove unnecessary dyncom header files 2015-05-07 20:45:28 -04:00
Yuri Kunde Schlesner
e1fbac3ca1 Common: Remove common.h 2015-05-07 15:45:22 -03:00
Yuri Kunde Schlesner
c0eaa662d4 Clean-up includes 2015-05-06 23:45:06 -03:00
bunnei
bab5abaf46 Dyncom: Move cream cache to ARMul_State. 2015-05-01 18:27:04 -04:00
Lioncash
8b2b620a5e dyncom: Remove more unused/unnecessary code
Gets rid of a sizeable amount of stuff in armdefs.
2015-04-20 16:30:34 -04:00
Lioncash
d66a12c6f6 dyncom: Remove unused/unnecessary VFP cruft 2015-04-17 20:46:05 -04:00
Emmanuel Gil Peyrot
2e860bd59c Core_ARM11: Replace debug prints with our own logging functions in vfpsingle. 2015-04-14 21:34:36 +02: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
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
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
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
Lioncash
f23f2a9a42 armmmu: Remove unnecessary enum values
We don't need to care about XScale or Intel specific ARM stuff.
2015-03-20 19:35:32 -04:00
Lioncash
9fdb311d6e dyncom: Make Load/Store instructions support big endian 2015-03-17 15:13:32 -04:00
Lioncash
4b89cf9e43 vfp: Get rid of warnings 2015-03-03 19:13:01 -05:00
Lioncash
1bb400be1b arm: Remove unnecessary booleans
We don't care about any of these.
2015-02-25 10:55:50 -05:00
Lioncash
4f910bb1a1 vfpinstr: Fix trivial signed/unsigned mismatch warnings 2015-02-17 18:53:50 -05:00
Lioncash
f0c4bd629c vfpdouble: Use %p for printing pointer addresses. 2015-02-15 17:11:02 -05:00
Lioncash
473afa4530 arm: Set the A bit on reset.
This enum value is ORed against in ARMul_Reset (and used to refer to all interrupt bits in the CPSR). So simply updating this is enough.
2015-02-15 00:35:50 -05:00
Lioncash
0c6434c379 core: Apply static to local functions 2015-02-13 10:48:32 -05:00
Lioncash
a75e1ff6e6 arm: General cleanup
- Remove several typedefs for ARMul_State.
- Remove unused functions
- Remove unused/unnecessary headers
- Removed unused enums, etc.
2015-02-13 09:11:12 -05:00
Lioncash
b7fac494cd dyncom: Switch the app and system cores into the correct mode at initialization 2015-02-12 21:54:28 -05:00