WiiStrobe/Source
< WiiStrobe
This is an old revision of this page, as edited by WiibrewBot (talk | contribs) at 18:23, 10 August 2009. It may differ significantly from the current revision. |
Here is the very simple, very ugly and very short source code for WiiStrobe. Please do not use for educational purposes, other than as an example for bad code.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <malloc.h>
#include <ogcsys.h>
#include <gccore.h>
#include <wiiuse/wpad.h>
#include "GRRLIB.h"
#define BLACK 0x000000FF
#define WHITE 0xFFFFFFFF
#define RED 0xFF0000FF
#define BLUE 0x0000FFFF
Mtx GXmodelView2D;
int main(int argc, char **argv) {
VIDEO_Init();
WPAD_Init();
WPAD_SetIdleTimeout(60);
GRRLIB_InitVideo();
GRRLIB_Start();
VIDEO_WaitVSync();
int freq = 10;
int colset = 0;
int col = WHITE;
while(1){
WPAD_ScanPads();
GRRLIB_Render();
if(WPAD_ButtonsDown (0) & WPAD_BUTTON_DOWN)
freq += 1;
if(WPAD_ButtonsDown (0) & WPAD_BUTTON_UP)
freq -= 1;
if(WPAD_ButtonsDown (0) & WPAD_BUTTON_HOME)
return 0;
if(WPAD_ButtonsDown (0) & WPAD_BUTTON_HOME)
break;
if((WPAD_ButtonsDown (0) & WPAD_BUTTON_LEFT) || (WPAD_ButtonsDown (0) & WPAD_BUTTON_RIGHT)){
if(colset==0){
colset = 1;
}else{
colset = 0;
}
}
GRRLIB_FillScreen(col);
switch (colset) {
case 0:
if(col==WHITE)
col = BLACK;
else
col = WHITE;
break;
case 1:
if(col==RED)
col = BLUE;
else
col = RED;
}
int c = 0;
while(c <= freq){
GRRLIB_Render();
c++;
}
}
}