#include #include #include #include #include #include #include #define printf pspDebugScreenPrintf #define MODULE_NAME "Basic Menu" PSP_MODULE_INFO(MODULE_NAME, 0, 1, 1); SceCtrlData pad; int pos = 1; char input[2000]; void menu() { pspDebugScreenSetXY(0,0); pspDebugScreenSetTextColor(0xFF0000); printf("InputChar = %s\n", input); pspDebugScreenSetTextColor( 0x0000FF); switch(pos) { case 1: pspDebugScreenSetTextColor(0xFF0000); printf("a");pspDebugScreenSetTextColor( 0x0000FF); printf("bcdefghijklmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 2: printf("a"); pspDebugScreenSetTextColor(0xFF0000); printf("b"); pspDebugScreenSetTextColor( 0x0000FF); printf("cdefghijklmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 3: printf("ab"); pspDebugScreenSetTextColor(0xFF0000); printf("c");pspDebugScreenSetTextColor( 0x0000FF); printf("defghijklmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 4: printf("abc"); pspDebugScreenSetTextColor(0xFF0000); printf("d");pspDebugScreenSetTextColor( 0x0000FF); printf("efghijklmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 5: printf("abcd"); pspDebugScreenSetTextColor(0xFF0000); printf("e");pspDebugScreenSetTextColor( 0x0000FF); printf("fghijklmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 6: printf("abcde"); pspDebugScreenSetTextColor(0xFF0000); printf("f");pspDebugScreenSetTextColor( 0x0000FF); printf("ghijklmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 7: printf("abcdef"); pspDebugScreenSetTextColor(0xFF0000); printf("g");pspDebugScreenSetTextColor( 0x0000FF); printf("hijklmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 8: printf("abcdefg"); pspDebugScreenSetTextColor(0xFF0000); printf("h");pspDebugScreenSetTextColor( 0x0000FF); printf("ijklmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 9: printf("abcdefgh"); pspDebugScreenSetTextColor(0xFF0000); printf("i");pspDebugScreenSetTextColor( 0x0000FF); printf("jklmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 10: printf("abcdefghi"); pspDebugScreenSetTextColor(0xFF0000); printf("j");pspDebugScreenSetTextColor( 0x0000FF); printf("klmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 11: printf("abcdefghij"); pspDebugScreenSetTextColor(0xFF0000); printf("k");pspDebugScreenSetTextColor( 0x0000FF); printf("lmnopqrstuvwxyz,.:_/?& DONE\n"); break; case 12: printf("abcdefghijk"); pspDebugScreenSetTextColor(0xFF0000); printf("l");pspDebugScreenSetTextColor( 0x0000FF); printf("mnopqrstuvwxyz,.:_/?& DONE\n"); break; case 13: printf("abcdefghijkl"); pspDebugScreenSetTextColor(0xFF0000); printf("m");pspDebugScreenSetTextColor( 0x0000FF); printf("nopqrstuvwxyz,.:_/?& DONE\n"); break; case 14: printf("abcdefghijklm"); pspDebugScreenSetTextColor(0xFF0000); printf("n");pspDebugScreenSetTextColor( 0x0000FF); printf("opqrstuvwxyz,.:_/?& DONE\n"); break; case 15: printf("abcdefghijklmn"); pspDebugScreenSetTextColor(0xFF0000); printf("o");pspDebugScreenSetTextColor( 0x0000FF); printf("pqrstuvwxyz,.:_/?& DONE\n"); break; case 16: printf("abcdefghijklmno"); pspDebugScreenSetTextColor(0xFF0000); printf("p");pspDebugScreenSetTextColor( 0x0000FF); printf("qrstuvwxyz,.:_/?& DONE\n"); break; case 17: printf("abcdefghijklmnop"); pspDebugScreenSetTextColor(0xFF0000); printf("q");pspDebugScreenSetTextColor( 0x0000FF); printf("rstuvwxyz,.:_/?& DONE\n"); break; case 18: printf("abcdefghijklmnopq"); pspDebugScreenSetTextColor(0xFF0000); printf("r");pspDebugScreenSetTextColor( 0x0000FF); printf("stuvwxyz,.:_/?& DONE\n"); break; case 19: printf("abcdefghijklmnopqr"); pspDebugScreenSetTextColor(0xFF0000); printf("s");pspDebugScreenSetTextColor( 0x0000FF); printf("tuvwxyz,.:_/?& DONE\n"); break; case 20: printf("abcdefghijklmnopqrs"); pspDebugScreenSetTextColor(0xFF0000); printf("t");pspDebugScreenSetTextColor( 0x0000FF); printf("uvwxyz,.:_/?& DONE\n"); break; case 21: printf("abcdefghijklmnopqrst"); pspDebugScreenSetTextColor(0xFF0000); printf("u");pspDebugScreenSetTextColor( 0x0000FF); printf("vwxyz,.:_/?& DONE\n"); break; case 22: printf("abcdefghijklmnopqrstu"); pspDebugScreenSetTextColor(0xFF0000); printf("v");pspDebugScreenSetTextColor( 0x0000FF); printf("wxyz,.:_/?& DONE\n"); break; case 23: printf("abcdefghijklmnopqrstuv"); pspDebugScreenSetTextColor(0xFF0000); printf("w");pspDebugScreenSetTextColor( 0x0000FF); printf("xyz,.:_/?& DONE\n"); break; case 24: printf("abcdefghijklmnopqrstuvw"); pspDebugScreenSetTextColor(0xFF0000); printf("x");pspDebugScreenSetTextColor( 0x0000FF); printf("yz,.:_/?& DONE\n"); break; case 25: printf("abcdefghijklmnopqrstuvwx"); pspDebugScreenSetTextColor(0xFF0000); printf("y");pspDebugScreenSetTextColor( 0x0000FF); printf("z,.:_/?& DONE\n"); break; case 26: printf("abcdefghijklmnopqrstuvwxy"); pspDebugScreenSetTextColor(0xFF0000); printf("z");pspDebugScreenSetTextColor( 0x0000FF); printf(",.:_/?& DONE\n"); break; case 27: printf("abcdefghijklmnopqrstuvwxyz"); pspDebugScreenSetTextColor(0xFF0000); printf(",");pspDebugScreenSetTextColor( 0x0000FF); printf(".:_/?& DONE\n"); break; case 28: printf("abcdefghijklmnopqrstuvwxyz,"); pspDebugScreenSetTextColor(0xFF0000); printf(".");pspDebugScreenSetTextColor( 0x0000FF); printf(":_/?& DONE\n"); break; case 29: printf("abcdefghijklmnopqrstuvwxyz,."); pspDebugScreenSetTextColor(0xFF0000); printf(":");pspDebugScreenSetTextColor( 0x0000FF); printf("_/?& DONE\n"); break; case 30: printf("abcdefghijklmnopqrstuvwxyz,.:"); pspDebugScreenSetTextColor(0xFF0000); printf("_");pspDebugScreenSetTextColor( 0x0000FF); printf("/?& DONE\n"); break; case 31: printf("abcdefghijklmnopqrstuvwxyz,.:_"); pspDebugScreenSetTextColor(0xFF0000); printf("/");pspDebugScreenSetTextColor( 0x0000FF); printf("?& DONE\n"); break; case 32: printf("abcdefghijklmnopqrstuvwxyz,.:_/"); pspDebugScreenSetTextColor(0xFF0000); printf("?");pspDebugScreenSetTextColor( 0x0000FF); printf("& DONE\n"); break; case 33: printf("abcdefghijklmnopqrstuvwxyz,.:_/?"); pspDebugScreenSetTextColor(0xFF0000); printf("&");pspDebugScreenSetTextColor( 0x0000FF); printf(" DONE\n"); break; case 34: printf("abcdefghijklmnopqrstuvwxyz,.:_/?& "); pspDebugScreenSetTextColor(0xFF0000); printf("DONE");pspDebugScreenSetTextColor( 0x0000FF); printf("\n"); break; default: printf("\n"); break; } } int main() { pspDebugScreenInit(); while(1) { sceCtrlReadBufferPositive(&pad, 1); menu(); if(pad.Buttons & PSP_CTRL_LEFT) { if(pos > 1) { pos--; sceKernelDelayThread(100*1500); } else { } } else if(pad.Buttons & PSP_CTRL_RIGHT) { if(pos < 34) { pos++; sceKernelDelayThread(100*1500); } else { } } else if(pad.Buttons & PSP_CTRL_TRIANGLE) { sceKernelExitGame(); } else if(pad.Buttons & PSP_CTRL_CROSS) { if(pos == 1) { strcat(input,"a"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(5*1000*1000); } else if(pos == 2) { strcat(input,"b"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(5*1000*1000); } else if(pos == 3) { strcat(input,"c"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 4) { strcat(input,"d"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 5) { strcat(input,"e"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 6) { strcat(input,"f"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 7) { strcat(input,"g"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 8) { strcat(input,"h"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 9) { strcat(input,"i"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 10) { strcat(input,"j"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 11) { strcat(input,"k"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 12) { strcat(input,"l"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 13) { strcat(input,"m"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 14) { strcat(input,"n"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 15) { strcat(input,"o"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 16) { strcat(input,"p"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 17) { strcat(input,"q"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 18) { strcat(input,"r"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 19) { strcat(input,"s"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 20) { strcat(input,"t"); sceKernelDelayThread(100*1600); } else if(pos == 21) { strcat(input,"u"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 22) { strcat(input,"v"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 23) { strcat(input,"w"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 24) { strcat(input,"x"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 25) { strcat(input,"y"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 26) { strcat(input,"z"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 27) { //,._/?& strcat(input,","); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 28) { strcat(input,"."); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 29) { strcat(input,":"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 30) { strcat(input,"_"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 31) { strcat(input,"/"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 32) { strcat(input,"?"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 33) { strcat(input,"&"); sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } else if(pos == 34) { // Send the string or whatever sceKernelDelayThread(100*1600); // sceKernelDelayThread(2*1000*1000); } } } sceKernelSleepThread(); return 0; }