Made some changes from review comments:
- Made LoadKernelSystemMode return a pair consisting of a system mode and a result code (Could use review). - Deleted ErrorOpenGL error code in favor of just having ErrorVideoCore. - Made dialog messages more clear. - Compared archive ID in fs_user.cpp to ArchiveIdCode::NCCH as opposed to hex magic. - Cleaned up some other stuff.
This commit is contained in:
parent
1ecb322daa
commit
37bec598ea
10 changed files with 55 additions and 53 deletions
|
@ -8,8 +8,11 @@
|
|||
#include <initializer_list>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
#include <boost/optional.hpp>
|
||||
|
||||
#include "common/common_types.h"
|
||||
#include "common/file_util.h"
|
||||
|
||||
|
@ -100,13 +103,11 @@ public:
|
|||
* Loads the system mode that this application needs.
|
||||
* This function defaults to 2 (96MB allocated to the application) if it can't read the
|
||||
* information.
|
||||
* @param boost::optional<u32> Reference to Boost optional to store system mode.
|
||||
* @ return Result of operation.
|
||||
* @return A pair with the system mode (If found) and the result.
|
||||
*/
|
||||
virtual ResultStatus LoadKernelSystemMode(boost::optional<u32>& system_mode) {
|
||||
virtual std::pair<boost::optional<u32>, ResultStatus> LoadKernelSystemMode() {
|
||||
// 96MB allocated to the application.
|
||||
system_mode = 2;
|
||||
return ResultStatus::Success;
|
||||
return std::make_pair(2, ResultStatus::Success);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -121,19 +121,16 @@ FileType AppLoader_NCCH::IdentifyType(FileUtil::IOFile& file) {
|
|||
return FileType::Error;
|
||||
}
|
||||
|
||||
ResultStatus AppLoader_NCCH::LoadKernelSystemMode(boost::optional<u32>& system_mode) {
|
||||
std::pair<boost::optional<u32>, ResultStatus> AppLoader_NCCH::LoadKernelSystemMode() {
|
||||
if (!is_loaded) {
|
||||
ResultStatus res = LoadExeFS();
|
||||
if (res != ResultStatus::Success) {
|
||||
// Set the system mode as invalid.
|
||||
system_mode = boost::none;
|
||||
// Return the error code.
|
||||
return res;
|
||||
return std::make_pair(boost::none, res);
|
||||
}
|
||||
}
|
||||
// Set the system mode as the one from the exheader.
|
||||
system_mode = exheader_header.arm11_system_local_caps.system_mode.Value();
|
||||
return ResultStatus::Success;
|
||||
return std::make_pair(exheader_header.arm11_system_local_caps.system_mode.Value(),
|
||||
ResultStatus::Success);
|
||||
}
|
||||
|
||||
ResultStatus AppLoader_NCCH::LoadExec() {
|
||||
|
|
|
@ -179,10 +179,9 @@ public:
|
|||
|
||||
/**
|
||||
* Loads the Exheader and returns the system mode for this application.
|
||||
* @param boost::optional<u32> Reference to Boost optional to store system mode.
|
||||
* @return Result of operation.
|
||||
* @return A pair with the system mode (If found) and the result.
|
||||
*/
|
||||
ResultStatus LoadKernelSystemMode(boost::optional<u32>& system_mode) override;
|
||||
std::pair<boost::optional<u32>, ResultStatus> LoadKernelSystemMode() override;
|
||||
|
||||
ResultStatus ReadCode(std::vector<u8>& buffer) override;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue