summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/cfg/cfg.h
diff options
context:
space:
mode:
authorwwylele <wwylele@gmail.com>2016-06-01 09:37:57 +0200
committerwwylele <wwylele@gmail.com>2016-07-03 07:23:58 +0200
commit324c8d21a4e5e7847c3c97d81757d0243ea9bb7f (patch)
tree3dff7473330fa2075b43ec4a34f005b21420cc59 /src/core/hle/service/cfg/cfg.h
parentService::CFG: add missing language (diff)
downloadyuzu-324c8d21a4e5e7847c3c97d81757d0243ea9bb7f.tar
yuzu-324c8d21a4e5e7847c3c97d81757d0243ea9bb7f.tar.gz
yuzu-324c8d21a4e5e7847c3c97d81757d0243ea9bb7f.tar.bz2
yuzu-324c8d21a4e5e7847c3c97d81757d0243ea9bb7f.tar.lz
yuzu-324c8d21a4e5e7847c3c97d81757d0243ea9bb7f.tar.xz
yuzu-324c8d21a4e5e7847c3c97d81757d0243ea9bb7f.tar.zst
yuzu-324c8d21a4e5e7847c3c97d81757d0243ea9bb7f.zip
Diffstat (limited to 'src/core/hle/service/cfg/cfg.h')
-rw-r--r--src/core/hle/service/cfg/cfg.h30
1 files changed, 29 insertions, 1 deletions
diff --git a/src/core/hle/service/cfg/cfg.h b/src/core/hle/service/cfg/cfg.h
index bf544bd8d..4822433cf 100644
--- a/src/core/hle/service/cfg/cfg.h
+++ b/src/core/hle/service/cfg/cfg.h
@@ -185,6 +185,22 @@ void GetConfigInfoBlk2(Service::Interface* self);
void GetConfigInfoBlk8(Service::Interface* self);
/**
+ * CFG::SetConfigInfoBlk4 service function
+ * Inputs:
+ * 0 : 0x04020082 / 0x08020082
+ * 1 : Block ID
+ * 2 : Size
+ * 3 : Descriptor for the output buffer
+ * 4 : Output buffer pointer
+ * Outputs:
+ * 1 : Result of function, 0 on success, otherwise error code
+ * Note:
+ * The parameters order is different from GetConfigInfoBlk2/8's,
+ * where Block ID and Size are switched.
+ */
+void SetConfigInfoBlk4(Service::Interface* self);
+
+/**
* CFG::UpdateConfigNANDSavegame service function
* Inputs:
* 0 : 0x04030000 / 0x08030000
@@ -212,7 +228,19 @@ void FormatConfig(Service::Interface* self);
* @param output A pointer where we will write the read data
* @returns ResultCode indicating the result of the operation, 0 on success
*/
-ResultCode GetConfigInfoBlock(u32 block_id, u32 size, u32 flag, u8* output);
+ResultCode GetConfigInfoBlock(u32 block_id, u32 size, u32 flag, void* output);
+
+/**
+ * Reads data from input and writes to a block with the specified id and flag
+ * in the Config savegame buffer.
+ * The input size must match exactly the size of the target block
+ * @param block_id The id of the block we want to write
+ * @param size The size of the block we want to write
+ * @param flag The target block must have this flag set
+ * @param input A pointer where we will read data and write to Config savegame buffer
+ * @returns ResultCode indicating the result of the operation, 0 on success
+ */
+ResultCode SetConfigInfoBlock(u32 block_id, u32 size, u32 flag, const void* input);
/**
* Creates a block with the specified id and writes the input data to the cfg savegame buffer in memory.