fixed network freeze

This commit is contained in:
mrdude2478 2022-04-27 06:13:16 +01:00
parent 2d33f80db7
commit b4342c6f1f
20 changed files with 40 additions and 22 deletions

View File

@ -163,7 +163,7 @@ $(info $$NROFLAGS is [${NROFLAGS}])
all: all:
@echo making everything @echo making everything
@$(MAKE) --no-print-directory -C $(CURDIR) -f Makefile libusb #@$(MAKE) --no-print-directory -C $(CURDIR) -f Makefile libusb
@$(MAKE) --no-print-directory -C $(CURDIR) -f Makefile plutonium @$(MAKE) --no-print-directory -C $(CURDIR) -f Makefile plutonium
@$(MAKE) --no-print-directory -C $(CURDIR) -f Makefile tinwoo @$(MAKE) --no-print-directory -C $(CURDIR) -f Makefile tinwoo

Binary file not shown.

Before

Width:  |  Height:  |  Size: 435 KiB

After

Width:  |  Height:  |  Size: 460 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 58 KiB

View File

@ -36,7 +36,7 @@
"title": "Applet-Modus wird nicht unterstützt", "title": "Applet-Modus wird nicht unterstützt",
"desc": "Es kann zu Problemen bei der Verwendung des TinWoo Installer im Applet-Modus kommen.\nWenn du Probleme hast, starte den TinWoo Installer über einen installierten Titel (halte R gedrückt, während du ein Spiel startest)!" "desc": "Es kann zu Problemen bei der Verwendung des TinWoo Installer im Applet-Modus kommen.\nWenn du Probleme hast, starte den TinWoo Installer über einen installierten Titel (halte R gedrückt, während du ein Spiel startest)!"
}, },
"buttons": "\ue0e0 Auswählen \ue0e3 Freiraum \ue0e1 Beenden" "buttons": "\ue0e0 Auswählen \ue0e3 Freiraum \ue0e4+\ue0e5 oder \ue0ef oder \ue0f0 Beenden"
}, },
"inst": { "inst": {
"net": { "net": {

View File

@ -36,7 +36,7 @@
"title": "Applet Mode not supported", "title": "Applet Mode not supported",
"desc": "You may experience issues using TinWoo Installer in Applet Mode. If you do\nhave problems, please switch to running TinWoo Installer over an installed\ntitle (hold R while starting a game)!" "desc": "You may experience issues using TinWoo Installer in Applet Mode. If you do\nhave problems, please switch to running TinWoo Installer over an installed\ntitle (hold R while starting a game)!"
}, },
"buttons": "\ue0e0 Select \ue0e3 FreeSpace \ue0e1 Exit " "buttons": "\ue0e0 Select \ue0e3 FreeSpace \ue0e4+\ue0e5 or \ue0ef or \ue0f0 Exit"
}, },
"inst": { "inst": {
"net": { "net": {

View File

@ -36,7 +36,7 @@
"title": "Le mode Applet n'est pas compatible", "title": "Le mode Applet n'est pas compatible",
"desc": "Vous pouvez rencontrer des problèmes en utilisant TinWoo Installer en mode Applet. Si vous \navez des problèmes, veuillez lancer TinWoo en mode 'non-Applet'\n (Maintenez R pendant le démarrage d'un jeu)!" "desc": "Vous pouvez rencontrer des problèmes en utilisant TinWoo Installer en mode Applet. Si vous \navez des problèmes, veuillez lancer TinWoo en mode 'non-Applet'\n (Maintenez R pendant le démarrage d'un jeu)!"
}, },
"buttons": "\ue0e0 Select \ue0e3 Espace libre \ue0e1 Quitter" "buttons": "\ue0e0 Select \ue0e3 Espace libre \ue0e4+\ue0e5 ou \ue0ef ou \ue0f0 Quitter"
}, },
"inst": { "inst": {
"net": { "net": {

View File

@ -36,7 +36,7 @@
"title": "Applet Mode non è supportata", "title": "Applet Mode non è supportata",
"desc": "Puoi incontrare problemi utilizzando TinWoo Installer in Applet Mode. Se\nriscontri problemi, ti prego di utilizzare TinWoo Installer avviandolo attraverso un gioco\ngià installato (tieni premuto R mentre avvii un gioco)!" "desc": "Puoi incontrare problemi utilizzando TinWoo Installer in Applet Mode. Se\nriscontri problemi, ti prego di utilizzare TinWoo Installer avviandolo attraverso un gioco\ngià installato (tieni premuto R mentre avvii un gioco)!"
}, },
"buttons": "\ue0e0 Seleziona \ue0e3 Spazio libero \ue0e1 Esci" "buttons": "\ue0e0 Seleziona \ue0e3 Spazio libero \ue0e4+\ue0e5 o \ue0ef o \ue0f0 Esci"
}, },
"inst": { "inst": {
"net": { "net": {

View File

@ -36,7 +36,7 @@
"title": "アプレットモードはサポートされていません", "title": "アプレットモードはサポートされていません",
"desc": "アプレットモードでTinWooを使用すると問題が発生する場合があります。\n問題が発生した場合は、インストール済みのタイトルでTinWooを実行するように切り替えてください\n(ゲームの開始中にRを押したままにしてください)!" "desc": "アプレットモードでTinWooを使用すると問題が発生する場合があります。\n問題が発生した場合は、インストール済みのタイトルでTinWooを実行するように切り替えてください\n(ゲームの開始中にRを押したままにしてください)!"
}, },
"buttons": "\ue0e0 選択 \ue0e3 フリースペース \ue0e1 終了" "buttons": "\ue0e0 選択 \ue0e3 フリースペース \ue0e4+\ue0e5 また \ue0ef また \ue0f0 終了"
}, },
"inst": { "inst": {
"net": { "net": {

View File

@ -36,7 +36,7 @@
"title": "Applet Mode не поддерживается", "title": "Applet Mode не поддерживается",
"desc": "В TinWoo Installer могут возникать проблемы когда и если он запущен в режиме апплета.\nЕсли у вас есть трудности, пожалуйста запустите приложение через установленную игру\n(зажмите R при запуске)!" "desc": "В TinWoo Installer могут возникать проблемы когда и если он запущен в режиме апплета.\nЕсли у вас есть трудности, пожалуйста запустите приложение через установленную игру\n(зажмите R при запуске)!"
}, },
"buttons": "\ue0e0 Выбрать \ue0e3 Свободное место \ue0e1 Выход" "buttons": "\ue0e0 Выбрать \ue0e3 Свободное место \ue0e4+\ue0e5 или \ue0ef или \ue0f0 Выход"
}, },
"inst": { "inst": {
"net": { "net": {

View File

@ -221,6 +221,13 @@ namespace netInstStuff{
std::vector<std::string> OnSelected() std::vector<std::string> OnSelected()
{ {
/*
https://switchbrew.github.io/libnx/hid_8h.html#aa163470a1a7b811662e5c38905cc86fba4d9ae7fa7e27704abaf86c8a8a5398bd
*/
padConfigureInput(8, HidNpadStyleSet_NpadStandard);
PadState pad;
padInitializeAny(&pad);
u64 freq = armGetSystemTickFreq(); u64 freq = armGetSystemTickFreq();
u64 startTime = armGetSystemTick(); u64 startTime = armGetSystemTick();
@ -252,6 +259,8 @@ namespace netInstStuff{
while (true) while (true)
{ {
padUpdate(&pad);
// If we don't update the UI occasionally the Switch basically crashes on this screen if you press the home button // If we don't update the UI occasionally the Switch basically crashes on this screen if you press the home button
u64 newTime = armGetSystemTick(); u64 newTime = armGetSystemTick();
if (newTime - startTime >= freq * 0.25) { if (newTime - startTime >= freq * 0.25) {
@ -260,13 +269,10 @@ namespace netInstStuff{
} }
// Break on input pressed // Break on input pressed
padConfigureInput(1, HidNpadStyleSet_NpadStandard);
PadState pad;
padInitializeDefault(&pad);
hidInitializeTouchScreen();
u64 kDown = padGetButtonsDown(&pad); u64 kDown = padGetButtonsDown(&pad);
//fix the A button on this page - for some reason it crashes the appif pressed...27/4/22
if (kDown & HidNpadButton_B) if (kDown & HidNpadButton_B)
{ {

View File

@ -210,7 +210,7 @@ namespace inst::ui {
this->Add(this->eggImage); this->Add(this->eggImage);
this->awooImage->SetVisible(!inst::config::gayMode); this->awooImage->SetVisible(!inst::config::gayMode);
this->Add(this->optionMenu); this->Add(this->optionMenu);
//this->AddThread(this->mainMenuThread); //fix later to prevent UI from freezing.... //this->AddThread(mainMenuThread); //fix later to prevent UI from freezing....
} }
void MainPage::installMenuItem_Click() { void MainPage::installMenuItem_Click() {
@ -257,14 +257,14 @@ namespace inst::ui {
mainApp->LoadLayout(mainApp->optionspage); mainApp->LoadLayout(mainApp->optionspage);
} }
void MainPage::onInput(u64 Down, u64 Up, u64 Held, pu::ui::TouchPoint touch_pos) { void MainPage::onInput(u64 Down, u64 Up, u64 Held, pu::ui::TouchPoint touch_pos) { //some issue with held - fix later....27/4/22
if (((Down & HidNpadButton_Plus) || (Down & HidNpadButton_Minus) || (Down & HidNpadButton_B)) && mainApp->IsShown()) { if (((Down & HidNpadButton_Plus) || (Down & HidNpadButton_Minus) || ((Down & HidNpadButton_L) && ( Down & HidNpadButton_R))) && mainApp->IsShown()) {
mainApp->FadeOut(); mainApp->FadeOut();
mainApp->Close(); mainApp->Close();
} }
if (Down & HidNpadButton_A) { if (Up & HidNpadButton_A) {
switch (this->optionMenu->GetSelectedIndex()) { switch (this->optionMenu->GetSelectedIndex()) {
case 0: case 0:
this->installMenuItem_Click(); this->installMenuItem_Click();
@ -289,14 +289,19 @@ namespace inst::ui {
} }
} }
/*
if (Down & HidNpadButton_X) { if (Down & HidNpadButton_X) {
this->awooImage->SetVisible(false); this->awooImage->SetVisible(false);
this->eggImage->SetVisible(true); this->eggImage->SetVisible(true);
} }
if (Up & HidNpadButton_A) { if (Down & HidNpadButton_A) {
this->eggImage->SetVisible(false); this->eggImage->SetVisible(false);
if (!inst::config::gayMode) this->awooImage->SetVisible(true); if (!inst::config::gayMode) this->awooImage->SetVisible(true);
} }
*/
if (Down & HidNpadButton_Y) { if (Down & HidNpadButton_Y) {
mathstuff(); mathstuff();
} }

View File

@ -163,6 +163,7 @@ namespace inst::ui {
} }
void netInstPage::onInput(u64 Down, u64 Up, u64 Held, pu::ui::TouchPoint touch_pos) { void netInstPage::onInput(u64 Down, u64 Up, u64 Held, pu::ui::TouchPoint touch_pos) {
if (Down & HidNpadButton_B) { if (Down & HidNpadButton_B) {
mainApp->LoadLayout(mainApp->mainPage); mainApp->LoadLayout(mainApp->mainPage);
} }

View File

@ -60,13 +60,15 @@ namespace usbInstStuff {
std::vector<std::string> OnSelected() { std::vector<std::string> OnSelected() {
TUSHeader header; TUSHeader header;
padConfigureInput(8, HidNpadStyleSet_NpadStandard);
PadState pad;
padInitializeAny(&pad);
while(true) { while(true) {
if (bufferData(&header, sizeof(TUSHeader), 500000000) != 0) break; if (bufferData(&header, sizeof(TUSHeader), 500000000) != 0) break;
padConfigureInput(1, HidNpadStyleSet_NpadStandard); padUpdate(&pad);
PadState pad;
padInitializeDefault(&pad);
hidInitializeTouchScreen();
u64 kDown = padGetButtonsDown(&pad); u64 kDown = padGetButtonsDown(&pad);
if (kDown & HidNpadButton_B) return {}; if (kDown & HidNpadButton_B) return {};

View File

@ -243,6 +243,8 @@ namespace tin::network
errno = 0; errno = 0;
} }
padUpdate(&pad); //test
return read; return read;
} }
@ -260,6 +262,8 @@ namespace tin::network
errno = 0; errno = 0;
} }
padUpdate(&pad); //test
return written; return written;
} }
} }