//Pascal &or the FreePascal use of nintendo 2ds, 3ds regime // // Copyright (c) 2013, 2015, 2017 Kenneth Dwayne Lee Bsc. // all rights reserved // // If the Box didn't have a bow; twats that never felt or what it is to sexlive, for whom & why ... prude reasons? //!! poster sized is optional, Pix sideways of before & after on the doors of any & all Christ's churches !! {$ifdef 3dsintf} {* * @file result.h * @brief 3DS result code tools } {/ Checks whether a result code indicates success. } { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_SUCCEEDED(res : longint) : longint; {/ Checks whether a result code indicates failure. } { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_FAILED(res : longint) : longint; {/ Returns the level of a result code. } { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_LEVEL(res : longint) : longint; {/ Returns the summary of a result code. } { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_SUMMARY(res : longint) : longint; {/ Returns the module ID of a result code. } { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_MODULE(res : longint) : longint; {/ Returns the description of a result code. } { was #define dname(params) para_def_expr } { argument types are unknown } function R_DESCRIPTION(res : longint) : longint; {/ Builds a result code from its constituent components. } { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function MAKERESULT(level,summary,module,description : longint) : longint; {/ Result code level values. } { >= 0 } { < 0 } type RcLevel = (RL_SUCCESS := 0,RL_INFO := 1,RL_FATAL := $1F, RL_RESET := 30, RL_REINITIALIZE := 29, RL_USAGE := 28, RL_PERMANENT := 27,RL_TEMPORARY := 26, RL_STATUS := 25); {/ Result code summary values. } RcSummary = (RS_SUCCESS := 0,RS_NOP := 1,RS_WOULDBLOCK := 2, RS_OUTOFRESOURCE := 3,RS_NOTFOUND := 4, RS_INVALIDSTATE := 5,RS_NOTSUPPORTED := 6, RS_INVALIDARG := 7,RS_WRONGARG := 8, RS_CANCELED := 9,RS_STATUSCHANGED := 10, RS_INTERNAL := 11,RS_INVALIDRESVAL := 63 ); {/ Result code module values. } RcModule = (RM_COMMON := 0,RM_KERNEL := 1,RM_UTIL := 2, RM_FILE_SERVER := 3,RM_LOADER_SERVER := 4, RM_TCB := 5,RM_OS := 6,RM_DBG := 7, RM_DMNT := 8,RM_PDN := 9,RM_GSP := 10, RM_I2C := 11,RM_GPIO := 12,RM_DD := 13, RM_CODEC := 14,RM_SPI := 15,RM_PXI := 16, RM_FS := 17,RM_DI := 18,RM_HID := 19, RM_CAM := 20,RM_PI := 21,RM_PM := 22, RM_PM_LOW := 23,RM_FSI := 24,RM_SRV := 25, RM_NDM := 26,RM_NWM := 27,RM_SOC := 28, RM_LDR := 29,RM_ACC := 30,RM_ROMFS := 31, RM_AM := 32,RM_HIO := 33,RM_UPDATER := 34, RM_MIC := 35,RM_FND := 36,RM_MP := 37, RM_MPWL := 38,RM_AC := 39,RM_HTTP := 40, RM_DSP := 41,RM_SND := 42,RM_DLP := 43, RM_HIO_LOW := 44,RM_CSND := 45,RM_SSL := 46, RM_AM_LOW := 47,RM_NEX := 48,RM_FRIENDS := 49, RM_RDT := 50,RM_APPLET := 51,RM_NIM := 52, RM_PTM := 53,RM_MIDI := 54,RM_MC := 55, RM_SWC := 56,RM_FATFS := 57,RM_NGC := 58, RM_CARD := 59,RM_CARDNOR := 60,RM_SDMC := 61, RM_BOSS := 62,RM_DBM := 63,RM_CONFIG := 64, RM_PS := 65,RM_CEC := 66,RM_IR := 67, RM_UDS := 68,RM_PL := 69,RM_CUP := 70, RM_GYROSCOPE := 71,RM_MCU := 72,RM_NS := 73, RM_NEWS := 74,RM_RO := 75,RM_GD := 76, RM_CARD_SPI := 77,RM_EC := 78,RM_WEB_BROWSER := 79, RM_TEST := 80,RM_ENC := 81,RM_PIA := 82, RM_ACT := 83,RM_VCTL := 84,RM_OLV := 85, RM_NEIA := 86,RM_NPNS := 87,RM_AVD := 90, RM_L2B := 91,RM_MVD := 92,RM_NFC := 93, RM_UART := 94,RM_SPM := 95,RM_QTM := 96, RM_NFP := 97,RM_APPLICATION := 254,RM_INVALIDRESVAL := 255 ); {/ Result code generic descriptions. } const RD_SUCCESS =0; RD_INVALID_RESULT_VALUE =$3FF; RD_TIMEOUT =RD_INVALID_RESULT_VALUE-1;RD_OUT_OF_RANGE =RD_INVALID_RESULT_VALUE-2; RD_ALREADY_EXISTS =RD_INVALID_RESULT_VALUE-3;RD_CANCEL_REQUESTED =RD_INVALID_RESULT_VALUE-4; RD_NOT_FOUND =RD_INVALID_RESULT_VALUE-5;RD_ALREADY_INITIALIZED =RD_INVALID_RESULT_VALUE-6; RD_NOT_INITIALIZED =RD_INVALID_RESULT_VALUE-7;RD_INVALID_HANDLE =RD_INVALID_RESULT_VALUE-8; RD_INVALID_POINTER =RD_INVALID_RESULT_VALUE-9;RD_INVALID_ADDRESS =RD_INVALID_RESULT_VALUE-10; RD_NOT_IMPLEMENTED =RD_INVALID_RESULT_VALUE-11;RD_OUT_OF_MEMORY =RD_INVALID_RESULT_VALUE-12; RD_MISALIGNED_SIZE =RD_INVALID_RESULT_VALUE-13;RD_MISALIGNED_ADDRESS =RD_INVALID_RESULT_VALUE-14; RD_BUSY =RD_INVALID_RESULT_VALUE-15;RD_NO_DATA =RD_INVALID_RESULT_VALUE-16;RD_INVALID_COMBINATION =RD_INVALID_RESULT_VALUE-17; RD_INVALID_ENUM_VALUE =RD_INVALID_RESULT_VALUE-18;RD_INVALID_SIZE =RD_INVALID_RESULT_VALUE-19; RD_ALREADY_DONE =RD_INVALID_RESULT_VALUE-20;RD_NOT_AUTHORIZED =RD_INVALID_RESULT_VALUE-21; RD_TOO_LARGE =RD_INVALID_RESULT_VALUE-22;RD_INVALID_SELECTION =RD_INVALID_RESULT_VALUE-23; {$endif 3dsintf} {$ifdef 3dsimpl} { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_SUCCEEDED(res : longint) : longint; begin R_SUCCEEDED:=longint(res>=0); end; { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_FAILED(res : longint) : longint; begin R_FAILED:=longint(res<0); end; { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_LEVEL(res : longint) : longint; begin R_LEVEL:=longint((res shr 27) and $1F); end; { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_SUMMARY(res : longint) : longint; begin R_SUMMARY:=longint((res shr 21) and $3F); end; { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function R_MODULE(res : longint) : longint; begin R_MODULE:=longint((res shr 10) and $FF); end; { was #define dname(params) para_def_expr } { argument types are unknown } function R_DESCRIPTION(res : longint) : longint; begin R_DESCRIPTION:= res and $3FF; end; { was #define dname(params) para_def_expr } { argument types are unknown } { return type might be wrong } function MAKERESULT(level,summary,module,description : longint) : longint; begin MAKERESULT:=longint( ((level and $1F) shl 27) or ((summary and $3F) shl 21) or ((module and $FF) shl 10) or (description and $3FF) ); end; {$endif 3dsimpl} //