# NNS_GfdRegisterNewVramTransferTask

## Syntax

      #include <nnsys/gfd.h>

      BOOL NNS_GfdRegisterNewVramTransferTask(
            NNS_GFD_DST_TYPE type, u32 dstAddr, void* pSrc, u32 szByte);

## Arguments

type | The data transfer destination type
dstAddr | The transfer destination address
pSrc | Pointer to the transfer-source data
szByte | Transfer size

## Return Values

Returns TRUE if VRAM transfer task has been registered.

## Description

This function registers a new VRAM transfer task in the VRAM Transfer Manager. The number of VRAM transfer tasks that can be registered in the VRAM Transfer Manager is defined by the number of elements in the `NNSGfdVramTransferTask` type array that was specified when the VRAM Transfer Manager was initialized.

`type` specifies the type of data that the VRAM Transfer Manager will transfer. This argument can specify the following 36 different types of data:

        NNS_GFD_DST_3D_TEX_VRAM             3D texture
        NNS_GFD_DST_3D_TEX_PLTT             3D texture palette
        NNS_GFD_DST_3D_CLRIMG_COLOR         3D clear image color
        NNS_GFD_DST_3D_CLRIMG_DEPTH         3D clear image depth

        NNS_GFD_DST_2D_BG0_CHAR_MAIN        2D Main BG0 character
        NNS_GFD_DST_2D_BG1_CHAR_MAIN        2D Main BG1 character
        NNS_GFD_DST_2D_BG2_CHAR_MAIN        2D Main BG2 character
        NNS_GFD_DST_2D_BG3_CHAR_MAIN        2D Main BG3 character
        NNS_GFD_DST_2D_BG0_SCR_MAIN         2D Main BG0 screen
        NNS_GFD_DST_2D_BG1_SCR_MAIN         2D Main BG1 screen
        NNS_GFD_DST_2D_BG2_SCR_MAIN         2D Main BG2 screen
        NNS_GFD_DST_2D_BG3_SCR_MAIN         2D Main BG3 screen
        NNS_GFD_DST_2D_BG2_BMP_MAIN         2D Main BG2 bitmap
        NNS_GFD_DST_2D_BG3_BMP_MAIN         2D Main BG3 bitmap
        NNS_GFD_DST_2D_OBJ_PLTT_MAIN        2D Main OBJ palette
        NNS_GFD_DST_2D_BG_PLTT_MAIN         2D Main BG palette
        NNS_GFD_DST_2D_OBJ_EXTPLTT_MAIN     2D Main OBJ extended palette
        NNS_GFD_DST_2D_BG_EXTPLTT_MAIN      2D Main BG extended palette
        NNS_GFD_DST_2D_OBJ_OAM_MAIN         2D Main OBJ OAM
        NNS_GFD_DST_2D_OBJ_CHAR_MAIN        2D Main OBJ character

        NNS_GFD_DST_2D_BG0_CHAR_SUB         2D Sub BG0 character
        NNS_GFD_DST_2D_BG1_CHAR_SUB         2D Sub BG1 character
        NNS_GFD_DST_2D_BG2_CHAR_SUB         2D Sub BG2 character
        NNS_GFD_DST_2D_BG3_CHAR_SUB         2D Sub BG3 character
        NNS_GFD_DST_2D_BG0_SCR_SUB          2D Sub BG0 screen
        NNS_GFD_DST_2D_BG1_SCR_SUB          2D Sub BG1 screen
        NNS_GFD_DST_2D_BG2_SCR_SUB          2D Sub BG2 screen
        NNS_GFD_DST_2D_BG3_SCR_SUB          2D Sub BG3 screen
        NNS_GFD_DST_2D_BG2_BMP_SUB          2D Sub BG2 bitmap
        NNS_GFD_DST_2D_BG3_BMP_SUB          2D Sub BG3 bitmap
        NNS_GFD_DST_2D_OBJ_PLTT_SUB         2D Sub OBJ palette
        NNS_GFD_DST_2D_BG_PLTT_SUB          2D Sub BG palette
        NNS_GFD_DST_2D_OBJ_EXTPLTT_SUB      2D Sub OBJ extended palette
        NNS_GFD_DST_2D_BG_EXTPLTT_SUB       2D Sub BG extended palette
        NNS_GFD_DST_2D_OBJ_OAM_SUB          2D Sub OBJ OAM
        NNS_GFD_DST_2D_OBJ_CHAR_SUB         2D Sub OBJ character

## See Also

``

## Revision History

2004/07/16 Initial version.

CONFIDENTIAL