List of Supervisor Call (SVC) Functions

# Supervisor Call (SVC) Function List

### Wait for Interrupt

SVC_WaitVBlankIntr |  | Waits in Halt status until a V-Blank interrupt is generated.
SVC_Halt |  | Stops the CPU core and changes to the halt status.
SVC_Sleep |  | Stops the original system clock. (ARM7 only).

### Waiting

SVC_WaitByLoop |  | Waits by making a loop in the system ROM.

### Memory Operations

SVC_CpuClear* |  | Uses CPU to perform memory clear.
SVC_CpuCopy* |  | Uses CPU to perform memory copy.

### Expanding Compressed Data

SVC_UnpackBits |  | Expands the data filled with fixed 0.
SVC_UncompressLZ8 |  | Expands the LZ77-compressed data in 8-bit units.
SVC_UncompressRL8 |  | Expands run-length compressed data in 8-bit units.
SVC_UncompressLZ8FromDevice |  | Expands the LZ77 compressed data that exists in the device in units of 8 bits.
SVC_UncompressLZ16FromDevice |  | Expands the LZ77 compressed data that exists in the device in units of 16 bits.
SVC_UncompressRL16FromDevice |  | Expands the runlength compressed data that exists in the device in units of 16 bits
SVC_UncompressHuffmanFromDevice |  | Expands the Huffman compressed data in the device in units of 32 bits.

### Arithmetic Operations

SVC_Div |  | Performs division and obtains the result
SVC_DivRem |  | Performs division and obtains the remainder
SVC_Sqrt |  | Performs square root operation and obtains the result

### CRC

SVC_GetCRC16 |  | Calculates CRC-16

### Signature

SVC_InitSignHeap |  | Specifies the heap to use with `SVC_Decrypt*`.
SVC_DecryptRSA |  | Performs RSA decryption.
SVC_DecryptSign |  | Decrypts signed data.
SVC_DecryptSignDER |  | Decrypts signed data in DER format.

### Hash

SVC_SHA1Init |  | Configures the context for SHA1.
SVC_SHA1Update |  | Updates the SHA1 digest value.
SVC_SHA1GetHash |  | Gets the SHA1 digest value.
SVC_CalcSHA1 |  | Utility function for performing SHA1 calculations.
SVC_CompareSHA1 |  | Compares two SHA1 digest values.
SVC_RandomSHA1 |  | Gets a pseudo-random number using SHA1.
SVC_HMACSHA1Init |  | Configures the context for HMAC-SHA1.
SVC_HMACSHA1Update |  | Updates the HMAC-SHA1 digest value.
SVC_HMACSHA1GetHash |  | Gets the HMAC-SHA1 digest value.
SVC_CalcHMACSHA1 |  | Utility function for performing HMAC-SHA1 calculations.

CONFIDENTIAL