mirror of
https://github.com/switchbrew/libnx.git
synced 2025-06-21 04:22:50 +02:00
87 lines
3.0 KiB
C
87 lines
3.0 KiB
C
/**
|
|
* @file result.h
|
|
* @brief Switch result code tools
|
|
*/
|
|
#pragma once
|
|
#include "types.h"
|
|
|
|
/// Checks whether a result code indicates success.
|
|
#define R_SUCCEEDED(res) ((res)==0)
|
|
/// Checks whether a result code indicates failure.
|
|
#define R_FAILED(res) ((res)!=0)
|
|
/// Returns the module ID of a result code.
|
|
#define R_MODULE(res) ((res)&0x1FF)
|
|
/// Returns the description of a result code.
|
|
#define R_DESCRIPTION(res) (((res)>>9)&0x1FFF)
|
|
|
|
/// Builds a result code from its constituent components.
|
|
#define MAKERESULT(module,description) \
|
|
((((module)&0x1FF)) | ((description)&0x1FFF)<<9)
|
|
|
|
enum {
|
|
Module_Libnx=345,
|
|
Module_LibnxNvidia=348
|
|
};
|
|
|
|
enum {
|
|
LibnxError_BadReloc=1,
|
|
LibnxError_OutOfMemory,
|
|
LibnxError_AlreadyMapped,
|
|
LibnxError_BadGetInfo_Stack,
|
|
LibnxError_BadGetInfo_Heap,
|
|
LibnxError_BadQueryMemory,
|
|
LibnxError_AlreadyInitialized,
|
|
LibnxError_NotInitialized,
|
|
LibnxError_NotFound,
|
|
LibnxError_IoError,
|
|
LibnxError_BadInput,
|
|
LibnxError_BadReent,
|
|
LibnxError_BufferProducerError,
|
|
LibnxError_HandleTooEarly,
|
|
LibnxError_HeapAllocFailed,
|
|
LibnxError_TooManyOverrides,
|
|
LibnxError_ParcelError,
|
|
LibnxError_BadGfxInit,
|
|
LibnxError_BadGfxEventWait,
|
|
LibnxError_BadGfxQueueBuffer,
|
|
LibnxError_BadGfxDequeueBuffer,
|
|
LibnxError_AppletCmdidNotFound,
|
|
LibnxError_BadAppletReceiveMessage,
|
|
LibnxError_BadAppletNotifyRunning,
|
|
LibnxError_BadAppletGetCurrentFocusState,
|
|
LibnxError_BadAppletGetOperationMode,
|
|
LibnxError_BadAppletGetPerformanceMode,
|
|
LibnxError_BadUsbCommsRead,
|
|
LibnxError_BadUsbCommsWrite,
|
|
LibnxError_InitFail_SM,
|
|
LibnxError_InitFail_AM,
|
|
LibnxError_InitFail_HID,
|
|
LibnxError_InitFail_FS,
|
|
LibnxError_BadGetInfo_Rng,
|
|
LibnxError_JitUnavailable,
|
|
LibnxError_WeirdKernel,
|
|
LibnxError_IncompatSysVer,
|
|
};
|
|
|
|
enum {
|
|
LibnxNvidiaError_Unknown=1,
|
|
LibnxNvidiaError_NotImplemented, // Maps to Nvidia: 1
|
|
LibnxNvidiaError_NotSupported, // Maps to Nvidia: 2
|
|
LibnxNvidiaError_NotInitialized, // Maps to Nvidia: 3
|
|
LibnxNvidiaError_BadParameter, // Maps to Nvidia: 4
|
|
LibnxNvidiaError_Timeout, // Maps to Nvidia: 5
|
|
LibnxNvidiaError_InsufficientMemory, // Maps to Nvidia: 6
|
|
LibnxNvidiaError_ReadOnlyAttribute, // Maps to Nvidia: 7
|
|
LibnxNvidiaError_InvalidState, // Maps to Nvidia: 8
|
|
LibnxNvidiaError_InvalidAddress, // Maps to Nvidia: 9
|
|
LibnxNvidiaError_InvalidSize, // Maps to Nvidia: 10
|
|
LibnxNvidiaError_BadValue, // Maps to Nvidia: 11
|
|
LibnxNvidiaError_AlreadyAllocated, // Maps to Nvidia: 13
|
|
LibnxNvidiaError_Busy, // Maps to Nvidia: 14
|
|
LibnxNvidiaError_ResourceError, // Maps to Nvidia: 15
|
|
LibnxNvidiaError_CountMismatch, // Maps to Nvidia: 16
|
|
LibnxNvidiaError_SharedMemoryTooSmall, // Maps to Nvidia: 0x1000
|
|
LibnxNvidiaError_FileOperationFailed, // Maps to Nvidia: 0x30003
|
|
LibnxNvidiaError_IoctlFailed, // Maps to Nvidia: 0x3000F
|
|
};
|