Fastest way to set a specific pixel in screen memory

Hi, Im still getting to grips with GAPI programming!
Assume I want to set the pixel (u,v) to the color c. What is the quickest way to do this? Is the following code reasonable?
============================
unsigned short * pusLine = (unsigned short *)GXBeginDraw();
if (pusLine == NULL) return false;
y = 0;
while(y<v)
{
pusLine += g_gxdp.cbyPitch >> 1;
++y;
}
unsigned short *pusDest = pusLine;
x = 0;
while(x < u)
{
pusDest += g_gxdp.cbxPitch >> 1;
++x;
}
*pusDest = c;
Assume I want to set the pixel (u,v) to the color c. What is the quickest way to do this? Is the following code reasonable?
============================
unsigned short * pusLine = (unsigned short *)GXBeginDraw();
if (pusLine == NULL) return false;
y = 0;
while(y<v)
{
pusLine += g_gxdp.cbyPitch >> 1;
++y;
}
unsigned short *pusDest = pusLine;
x = 0;
while(x < u)
{
pusDest += g_gxdp.cbxPitch >> 1;
++x;
}
*pusDest = c;