I'm really a newbie when it comes to this stuff

Moderator: Stef
Code: Select all
int main {
<< DO INITIAL STUFF >>
while(TRUE)
{
<< DO STUFF >>
VDP_waitVSync();
}
}
Code: Select all
// init stuff
...
SYS_setVIntCallback(vint);
while(true)
{
VDP_waitVSync();
// prepare next frame
...
frameDone = TRUE;
}
}
void vint()
{
if (frameDone)
{
// do VDP stuff
VDP_setTileMap(..);
VDP_drawText(...);
...
frameDone = FALSE;
}
}
Code: Select all
while(true)
{
VDP_waitVSync();
// prepare next frame
...
// disable ints
SYS_disableInterrupts();
// do VDP stuff
VDP_drawText(..);
// re-enable ints
SYS_enableInterrupts();
...
frameDone = TRUE;
}
Code: Select all
u16 writeOnScreenMessage(char * Message, u16 MessageRow) {
u16 completeOnScreenMessage = FALSE;
u16 static increment = 0;
u16 static TextTimer = 0;
char static character[1];
if (TextTimer == 0) {
u16 stringLength = strlen(Message) - 1;
if (increment <= stringLength) {
character[0] = Message[increment];
SYS_disableInts();
VDP_drawText(character, 2+increment, MessageRow);
SYS_enableInts();
strclr(character);
TextTimer = TIMERSECONDS;
increment++;
} else {
TextTimer = 0;
increment = 0;
completeOnScreenMessage = TRUE;
}
} else if (TextTimer > 0) {
TextTimer--;
}
return completeOnScreenMessage;
}