PhlexPlexico / mm3d-practice-tools

Practice Plugin for Majora's Mask 3D
GNU General Public License v2.0
7 stars 3 forks source link

[Feature request] Replace Watch Text Selection With Keyboard #7

Open PhlexPlexico opened 3 years ago

PhlexPlexico commented 3 years ago

Description I think it still may be possible to take control of the built in system keyboard when trying to type something in for a watch, or even for mem addresses.

Additional context This is just to look into, not sure if it's possible but will be keeping this open until I can find out.

PhlexPlexico commented 3 years ago

I'm sure there's still some configuration that's needed in order to compile this properly. The current error from compiling if you try adding in a new software keyboard

"/opt/devkitpro/devkitARM/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld: warning: address of `text-segment' isn't multiple of maximum page size\n"
"/opt/devkitpro/devkitARM/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld: /opt/devkitpro/libctru/lib/libctru.a(swkbd.o): in function `swkbdMessageCallback':\n"
"/home/fincs/pacman-packages/libctru/src/libctru-2.0.1/libctru/source/applets/swkbd.c:156: undefined reference to `__apt_appid'\n"
"/opt/devkitpro/devkitARM/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld: /opt/devkitpro/libctru/lib/libctru.a(apt.o): in function `aptSetSleepAllowed':\n"
"/home/fincs/pacman-packages/libctru/src/libctru-2.0.1/libctru/source/services/apt.c:271: undefined reference to `__apt_appid'\n"
"/opt/devkitpro/devkitARM/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld: /opt/devkitpro/libctru/lib/libctru.a(apt.o): in function `aptReceiveParameter':\n"
"/home/fincs/pacman-packages/libctru/src/libctru-2.0.1/libctru/source/services/apt.c:594: undefined reference to `__apt_appid'\n"
"/opt/devkitpro/devkitARM/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld: /opt/devkitpro/libctru/lib/libctru.a(apt.o): in function `aptScreenTransfer':\n"
"/home/fincs/pacman-packages/libctru/src/libctru-2.0.1/libctru/source/services/apt.c:744: undefined reference to `__apt_appid'\n"
"/opt/devkitpro/devkitARM/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld: /opt/devkitpro/libctru/lib/libctru.a(apt.o): in function `aptWaitForWakeUp':\n"
"/home/fincs/pacman-packages/libctru/src/libctru-2.0.1/libctru/source/services/apt.c:627: undefined reference to `__apt_appid'\n"
"/opt/devkitpro/devkitARM/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld: /opt/devkitpro/libctru/lib/libctru.a(env.o): in function `envGetHandle':\n"
"/home/fincs/pacman-packages/libctru/src/libctru-2.0.1/libctru/source/env.c:53: undefined reference to `__service_ptr'\n"

Using the following instantiations

static SwkbdState swkbd;
swkbdInit(&swkbd, SWKBD_TYPE_WESTERN, 1, -1);
swkbdSetValidation(&swkbd, SWKBD_NOTEMPTY_NOTBLANK, SWKBD_FILTER_DIGITS | SWKBD_FILTER_AT |
  SWKBD_FILTER_PERCENT | SWKBD_FILTER_BACKSLASH | SWKBD_FILTER_PROFANITY, 2);
swkbdSetFeatures(&swkbd, SWKBD_MULTILINE);
swkbdSetHintText(&swkbd, "Please enter a memory address.");
swkbdInputText(&swkbd, buf, len);
return buf;