From 7428dff871a146a7543a87c3b6c0c44ee6e9fbe4 Mon Sep 17 00:00:00 2001 From: CTurt Date: Wed, 10 Dec 2014 17:00:55 +0000 Subject: [PATCH] Added brewboard --- 3DS/data/keyboard.bin | Bin 0 -> 230400 bytes 3DS/include/brewboard.h | 8 ++++ 3DS/source/brewboard.c | 85 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 93 insertions(+) create mode 100644 3DS/data/keyboard.bin create mode 100644 3DS/include/brewboard.h create mode 100644 3DS/source/brewboard.c diff --git a/3DS/data/keyboard.bin b/3DS/data/keyboard.bin new file mode 100644 index 0000000000000000000000000000000000000000..a496063be121a8d2c28d4531362d8a440a5451c9 GIT binary patch literal 230400 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 +#include +#include +//#include "textstuff.h" +#include "keyboard_bin.h" + +void gfxDrawSprite(gfxScreen_t screen, gfx3dSide_t side, u8* spriteData, u16 width, u16 height, s16 x, s16 y) { + if(!spriteData)return; + + u16 fbWidth, fbHeight; + u8* fbAdr=gfxGetFramebuffer(screen, side, &fbWidth, &fbHeight); + + if(x+width<0 || x>=fbWidth)return; + if(y+height<0 || y>=fbHeight)return; + + u16 xOffset=0, yOffset=0; + u16 widthDrawn=width, heightDrawn=height; + + if(x<0)xOffset=-x; + if(y<0)yOffset=-y; + if(x+width>=fbWidth)widthDrawn=fbWidth-x; + if(y+height>=fbHeight)heightDrawn=fbHeight-y; + widthDrawn-=xOffset; + heightDrawn-=yOffset; + + int j; + for(j=yOffset; j= 1 && tpos.px <= 312 && tpos.py >= 78 && tpos.py <= 208 && kDown & KEY_TOUCH) + chr = chars[(u16)(floor(tpos.px/26)+12*floor((tpos.py-78)/26))]; + + return chr; +} + +#ifdef TEXTSTUFF_H +void bbDisplayText(char* text) { + tsDrawWord(GFX_BOTTOM, GFX_LEFT, (char*)text, 10, 220, 0, 0, 0); +} + +char* bbHandleKeyboardBlocking(char* text) { + static char out[37]; + char chr; + u8 i; + + strncpy(out, text, 37); + i = strlen(out); + + while (aptMainLoop()) { + gspWaitForVBlank(); + hidScanInput(); + + chr = bbHandleKeyboard(out); + if (chr == '\13') + break; + else if (i > 0 && chr == '\x08') { + i--; + out[i] = '\0'; + } else if (i < 36 && chr != '\0') { + out[i] = chr; + i++; + out[i] = '\0'; + } + + tsDrawWord(GFX_BOTTOM, GFX_LEFT, (char*)out, 10, 220, 0, 0, 0); + + gfxFlushBuffers(); + gfxSwapBuffers(); + } + return (char*)out; +} +#endif \ No newline at end of file