Difference between revisions of "Swkbd.rpl"
Jump to navigation
Jump to search
(Add "Keyboard Control" functions) |
(Add "Logic" (aka maths) functions, data (getters/setters) all that's left, will do later) |
||
Line 63: | Line 63: | ||
| | | | ||
|Writes argument 1 to an internal struct, returns argument 1 due to lazy programming. | |Writes argument 1 to an internal struct, returns argument 1 due to lazy programming. | ||
+ | |} | ||
+ | |||
+ | ===Logic=== | ||
+ | {|class="wikitable" | ||
+ | !Prototype | ||
+ | !Symbol name (5.5.1) | ||
+ | !Description | ||
+ | !Reverse-Engineering Notes | ||
+ | |- | ||
+ | |<code>int SwkbdCalc(nn:swkbd::ControllerInfo const &)</code> | ||
+ | |<code>SwkbdCalc__3RplFRCQ3_2nn5swkbd14ControllerInfo</code> | ||
+ | | | ||
+ | |Returns a value from an internal subroutine (presumably the response from the math operation). | ||
+ | |- | ||
+ | |<code>int SwkbdCalcSubThreadFont(void)</code> | ||
+ | |<code>SwkbdCalcSubThreadFont__3RplFv</code> | ||
+ | | | ||
+ | |Returns a value from an internal subroutine (presumably the response from the math operation). | ||
+ | |- | ||
+ | |<code>int SwkbdCalcSubThreadPredict(void)</code> | ||
+ | |<code>SwkbdCalcSubThreadPredict__3RplFv</code> | ||
+ | | | ||
+ | |Returns a value from an internal subroutine (presumably the response from the math operation). | ||
|} | |} |
Revision as of 06:49, 28 August 2016
swkbd.rpl is the system library that allows applications to use the Wii U's on-screen keyboard. It is one of the only libraries to export C++ functions; thus it isn't known how to use them in homebrew at this point.
Functions
All the swkbd functions are C++ functions in the namespace Rpl::
. To export them with OSDynLoad, you have to use their C symbol names (as listed).
Initialisation
Prototype | Symbol name (5.5.1) | Description | Reverse-Engineering Notes |
---|---|---|---|
void SwkbdCreate(unsigned char*, nn::swkbd::RegionType, unsigned int, FSClient*)
|
SwkbdCreate__3RplFPUcQ3_2nn5swkbd10RegionTypeUiP8FSClient
|
Sets up a structure in memory | No clear return value. Will return a mutex pointer (1004D294 on 5.5.1) from memory due to lazy programming. |
void SwkbdDestroy()
|
SwkbdDestroy__3RplFv
|
No clear return value. |
Keyboard Control
Prototype | Symbol name (5.5.1) | Description | Reverse-Engineering Notes |
---|---|---|---|
int SwkbdAppearInputForm(nn::swkbd::AppearArg const &)
|
SwkbdAppearInputForm__3RplFRCQ3_2nn5swkbd9AppearArg
|
Returns 0 or a status code from a subroutine. | |
int SwkbdAppearKeyboard(nn:swkbd::KeyboardArg)
|
SwkbdAppearKeyboard__3RplFRCQ3_2nn5swkbd11KeyboardArg
|
Returns 0 or a status code from a subroutine. | |
int SwkbdDisappearInputForm()
|
SwkbdDisappearInputForm__3RplFv
|
Returns 0 or a status code from a subroutine. | |
int SwkbdDissappearKeyboard()
|
SwkbdDisappearKeyboard__3RplFv
|
Returns 0 or a status code from a subroutine. | |
void SwkbdInactivateSelectCursor()
|
SwkbdInactivateSelectCursor__3RplFv
|
Disables selection? | No clear return value. Will return a pointer to some kind of internal struct due to lazy programming. Split up over several chunks. |
int SwkbdInitLearnDic(void*)
|
SwkbdInitLearnDic__3RplFPv
|
Enables self-learning predictive text? | Returns 0 or a status code from a subroutine. |
void SwkbdMuteAllSound(bool)
|
SwkbdMuteAllSound__3RplFb
|
Writes argument 1 to an internal struct, returns argument 1 due to lazy programming. |
Logic
Prototype | Symbol name (5.5.1) | Description | Reverse-Engineering Notes |
---|---|---|---|
int SwkbdCalc(nn:swkbd::ControllerInfo const &)
|
SwkbdCalc__3RplFRCQ3_2nn5swkbd14ControllerInfo
|
Returns a value from an internal subroutine (presumably the response from the math operation). | |
int SwkbdCalcSubThreadFont(void)
|
SwkbdCalcSubThreadFont__3RplFv
|
Returns a value from an internal subroutine (presumably the response from the math operation). | |
int SwkbdCalcSubThreadPredict(void)
|
SwkbdCalcSubThreadPredict__3RplFv
|
Returns a value from an internal subroutine (presumably the response from the math operation). |