aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/arm
Commit message (Collapse)AuthorAge
* Move CP15 enum definitions into their own enum.Gravatar Lioncash2015-04-06
| | | | Also gets rid of preprocessor mumbo-jumbo
* dyncom: Properly return the value of the user RO thread registerGravatar Lioncash2015-04-06
|
* dyncom: Set CP15 reset values on initializationGravatar Lioncash2015-04-06
|
* dyncom: Move CP15 register writing into its own function.Gravatar Lioncash2015-04-02
| | | | Also implements writing to the rest of the ARM11 MPCore CP15 register set.
* dyncom: Move CP15 register reading into its own function.Gravatar Lioncash2015-04-02
| | | | Keeps everything contained. Added all supported readable registers in an ARM11 MPCore.
* dyncom: Migrate InAPrivilegedMode to armsuppGravatar Lioncash2015-03-26
| | | | It's a generic helper function, so it should be here anyway.
* Merge pull request #674 from lioncash/sys-instrsGravatar bunnei2015-03-24
|\ | | | | dyncom: Implement RFE and SRS.
| * dyncom: Implement SRSGravatar Lioncash2015-03-24
| |
| * dyncom: Implement RFEGravatar Lioncash2015-03-24
| |
* | dyncom: Remove unused/unnecessary macros and macro constantsGravatar Lioncash2015-03-24
|/
* armmmu: Remove unnecessary enum valuesGravatar Lioncash2015-03-20
| | | | We don't need to care about XScale or Intel specific ARM stuff.
* Merge pull request #659 from lioncash/setendGravatar bunnei2015-03-19
|\ | | | | Implement SETEND.
| * dyncom: Make Load/Store instructions support big endianGravatar Lioncash2015-03-17
| |
* | arm_interface: Get rid of GetTicks.Gravatar Lioncash2015-03-16
| | | | | | | | Removes a TODO.
| * dyncom: Implement SETENDGravatar Lioncash2015-03-14
|/
* dyncom: Minor cleanupGravatar Lioncash2015-03-10
| | | | Assemblers will exit with an error when trying to assemble instructions with disallowed registers.
* dyncom: Fix an indexing bug in STMGravatar Lioncash2015-03-08
| | | | Previously it would write the contents of register 13 for the case where the link register (r14) is supposed to be written.
* dyncom: General cleanup of STMGravatar Lioncash2015-03-08
|
* dyncom: Increment addr when accessing LR in LDMGravatar Lioncash2015-03-08
|
* Merge pull request #538 from yuriks/perf-statGravatar Tony Wasserka2015-03-07
|\ | | | | Add profiling infrastructure and widget
* | vfp: Get rid of warningsGravatar Lioncash2015-03-03
| |
| * Add profiling infrastructure and widgetGravatar Yuri Kunde Schlesner2015-03-01
|/
* Merge pull request #620 from lioncash/bkptGravatar bunnei2015-02-27
|\ | | | | arm_disasm: Show conditional code for BKPT instructions.
| * arm_disasm: Show conditional code for BKPT instructions.Gravatar Lioncash2015-02-27
| | | | | | | | Changed cond_to_str to take a uint32, since unsigned numbers are only ever passed to it, and this can be a source of warnings for some compilers (also indexing an array without bounds checking a signed number is kind of iffy).
* | arm_disasm: Remove unused variableGravatar Lioncash2015-02-27
|/ | | | Also declared an array as static, as it's only used in this translation unit.
* arm: The CP15 Main ID register is not writeableGravatar Lioncash2015-02-26
|
* arm: Remove unnecessary booleansGravatar Lioncash2015-02-25
| | | | We don't care about any of these.
* Cleaned up unaligned access.Gravatar Kevin Hartman2015-02-21
|
* Merge pull request #582 from lioncash/warningsGravatar bunnei2015-02-17
|\ | | | | vfpinstr: Fix trivial signed/unsigned mismatch warnings
* \ Merge pull request #579 from lioncash/bkptGravatar bunnei2015-02-17
|\ \ | | | | | | dyncom: Support conditional BKPT instructions
| | * vfpinstr: Fix trivial signed/unsigned mismatch warningsGravatar Lioncash2015-02-17
| |/ |/|
| * dyncom: Support conditional BKPT instructionsGravatar Lioncash2015-02-17
| |
* | Merge pull request #574 from lioncash/warnGravatar bunnei2015-02-16
|\ \ | |/ |/| vfpdouble: Use %p for printing pointer addresses.
* | dyncom: Actually set the destination register for USAD8/USADA8.Gravatar Lioncash2015-02-16
| | | | | | | | Idiotville: Population: 1 - Inhabitant name: Lioncash
| * vfpdouble: Use %p for printing pointer addresses.Gravatar Lioncash2015-02-15
|/
* arm: Set the A bit on reset.Gravatar Lioncash2015-02-15
| | | | 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.
* core: Apply static to local functionsGravatar Lioncash2015-02-13
|
* arm: General cleanupGravatar Lioncash2015-02-13
| | | | | | | - Remove several typedefs for ARMul_State. - Remove unused functions - Remove unused/unnecessary headers - Removed unused enums, etc.
* dyncom: Switch the app and system cores into the correct mode at initializationGravatar Lioncash2015-02-12
|
* dyncom: Clean up the constructorGravatar Lioncash2015-02-12
| | | | Some function calls aren't necessary and would be handled by regular initialization routines.
* dyncom: Remove warning for SXTAHGravatar Lioncash2015-02-12
| | | | This is tested to work correctly.
* arm: Remove ARMul_EmulateInitGravatar Lioncash2015-02-12
| | | | This was only used for armemu, which has since been removed. Removed components related to this as well.
* armdefs: Remove unnecessary extern CGravatar Lioncash2015-02-12
|
* arm: Remove ARM26 support.Gravatar Lioncash2015-02-11
| | | | This will never be used. 32-bit is the norm.
* Merge pull request #559 from lioncash/cleanGravatar bunnei2015-02-11
|\ | | | | arm: Some cleanup. Also fixed the initial ARM mode that is emulated.
| * arm: Get rid of some magic constants. Specify proper ARM mode.Gravatar Lioncash2015-02-11
| | | | | | | | Initially, we were starting the emulator in USER26MODE, which is incorrect, this should be USER32MODE.
| * arm: Change some more constants into enumsGravatar Lioncash2015-02-11
| |
* | Asserts: break/crash program, fit to style guide; log.h->assert.hGravatar archshift2015-02-10
| | | | | | | | | | | | | | Involves making asserts use printf instead of the log functions (log functions are asynchronous and, as such, the log won't be printed in time) As such, the log type argument was removed (printf obviously can't use it, and it's made obsolete by the file and line printing) Also removed some GEKKO cruft.
* | Merge pull request #556 from lioncash/cleanGravatar bunnei2015-02-10
|\| | | | | arm: Remove TRUE/FALSE defines
| * arm: Remove TRUE/FALSE definesGravatar Lioncash2015-02-10
| | | | | | | | | | - Removed the Debug parameter from ARMul_State since it isn't used. - Changed ARMul_CoProInit to a void function. It always returned true.