summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/ldr (follow)
Commit message (Collapse)AuthorAgeFilesLines
* kernel/process: Remove most allocation functions from Process' interfaceLioncash2018-12-281-11/+16
| | | | | | | | | | | | | | | In all cases that these functions are needed, the VMManager can just be retrieved and used instead of providing the same functions in Process' interface. This also makes it a little nicer dependency-wise, since it gets rid of cases where the VMManager interface was being used, and then switched over to using the interface for a Process instance. Instead, it makes all accesses uniform and uses the VMManager instance for all necessary tasks. All the basic memory mapping functions did was forward to the Process' VMManager instance anyways.
* Merge pull request #1864 from lioncash/nrrbunnei2018-12-081-4/+5
|\ | | | | service/ldr: Amend layouts of NRO and NRR headers
| * service/ldr: Amend layout of the NRO headerLioncash2018-12-051-3/+3
| | | | | | | | | | | | The first word is just a padding byte, it's not an actual entry instruction. Also renames the rest of the entries according to SwitchBrew.
| * service/ldr: Corrent padding within the NRR header layoutLioncash2018-12-051-1/+2
| | | | | | | | | | The padding after the magic signature value should be 12 bytes rather than 28 bytes. The other 16 should be placed after the title ID pattern.
* | service/ldr: Deduplicate instruction cache clearing code in LoadNro()Lioncash2018-12-051-8/+2
|/ | | | We don't need to specify all of the ARM interfaces explicitly.
* Changed logging to be "Log before execution", Added more error logging, all services should now log on some levelDavid Marcec2018-11-261-1/+11
|
* ldr: Clean up error codesLioncash2018-11-191-29/+12
| | | | | | The separate enum isn't particularly necessary here, and the values can just be directly put into the ResultCode instances, given the names are also self-documenting here.
* ldr_ro: Add error check for memory allocation failureZach Hilman2018-11-181-7/+20
|
* ldr_ro: Implement UnloadNro (command 1)Zach Hilman2018-11-151-22/+85
| | | | Includes actual unmapping and address error checking.
* ldr_ro: Fully Implement LoadNro (command 0)Zach Hilman2018-11-151-11/+110
| | | | Includes NRO and BSS error checking, maximum loaded NRO check, NRR hash check, and proper remapping of BSS data.
* ldr_ro: Implement UnloadNrr (command 3)Zach Hilman2018-11-151-2/+84
| | | | Includes initialization check, proper address check, alignment check, and actual unloading of a loaded NRR.
* ldr_ro: Fully implement LoadNrr (command 2)Zach Hilman2018-11-151-0/+112
| | | | Includes parameter error checking, hash enforcement, initialization check, and max NRR load check.
* ldr: Partially implement LoadNro.bunnei2018-10-261-3/+49
| | | | - This is an incomplete implementation. It was tested with Super Mario Party.
* service: Add ldr servicesLioncash2018-07-262-0/+97
Adds the skeleton for the ldr-related services based off the information provided on Switch Brew.