From de1a06d59f3e24bb520248e71118ecdac86b6aee Mon Sep 17 00:00:00 2001 From: UnknownShadow200 Date: Wed, 18 Sep 2024 22:28:49 +1000 Subject: [PATCH] N64: Onscreen keyboard --- src/Platform_PS2.c | 2 +- src/Window_N64.c | 18 +++++++++++++++--- src/Window_PS1.c | 2 +- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/Platform_PS2.c b/src/Platform_PS2.c index f9aeebeac..b98420651 100644 --- a/src/Platform_PS2.c +++ b/src/Platform_PS2.c @@ -497,7 +497,7 @@ static cc_result ParseHost(const char* host, int port, cc_sockaddr* addrs, int* ip4_addr_t addr; int res = netconn_gethostbyname(host, &addr); - if (res == -NO_DATA) return SOCK_ERR_UNKNOWN_HOST; + //if (res == -NO_DATA) return SOCK_ERR_UNKNOWN_HOST; if (res) return res; addr4->sin_addr.s_addr = addr.addr; diff --git a/src/Window_N64.c b/src/Window_N64.c index 37218b7e0..f2fd20823 100644 --- a/src/Window_N64.c +++ b/src/Window_N64.c @@ -11,6 +11,7 @@ #include "Bitmap.h" #include "Errors.h" #include "ExtMath.h" +#include "VirtualKeyboard.h" #include static cc_bool launcherMode; @@ -41,6 +42,7 @@ void Window_Init(void) { DisplayInfo.ContentOffsetX = 10; DisplayInfo.ContentOffsetY = 10; + Window_Main.SoftKeyboard = SOFT_KEYBOARD_VIRTUAL; } void Window_Free(void) { } @@ -206,9 +208,19 @@ void Window_FreeFramebuffer(struct Bitmap* bmp) { /*########################################################################################################################* *------------------------------------------------------Soft keyboard------------------------------------------------------* *#########################################################################################################################*/ -void OnscreenKeyboard_Open(struct OpenKeyboardArgs* args) { /* TODO implement */ } -void OnscreenKeyboard_SetText(const cc_string* text) { } -void OnscreenKeyboard_Close(void) { /* TODO implement */ } +void OnscreenKeyboard_Open(struct OpenKeyboardArgs* args) { + kb_tileWidth = KB_TILE_SIZE / 2; + kb_tileHeight = KB_TILE_SIZE / 2; + VirtualKeyboard_Open(args, launcherMode); +} + +void OnscreenKeyboard_SetText(const cc_string* text) { + VirtualKeyboard_SetText(text); +} + +void OnscreenKeyboard_Close(void) { + VirtualKeyboard_Close(); +} /*########################################################################################################################* diff --git a/src/Window_PS1.c b/src/Window_PS1.c index 7316330f4..68cfd9380 100644 --- a/src/Window_PS1.c +++ b/src/Window_PS1.c @@ -161,7 +161,7 @@ static void ProcessPadInput(int port, PADTYPE* pad, float delta) { void Gamepads_Process(float delta) { PADTYPE* pad = (PADTYPE*)&pad_buff[0][0]; - int port = Gamepad_Connect(0x503, PadBind_Defaults); + int port = Gamepad_Connect(0x503E, PadBind_Defaults); if (pad->stat == 0) ProcessPadInput(port, pad, delta); }