mirror of
https://github.com/wiidev/usbloadergx.git
synced 2024-11-17 16:59:17 +01:00
*Changed some functions.
*Fixed one bug that you couldnt get to FormatMenu *Added USB functions, not yet implemented (they dont work under cIOS249/cIOS222, only under IOS36 (original). right now function only works if partition 1 is fat/fat32)
This commit is contained in:
parent
d15e8218a4
commit
feda5a7ba6
55
source/fatmounter.c
Normal file
55
source/fatmounter.c
Normal file
@ -0,0 +1,55 @@
|
||||
#include <fat.h>
|
||||
#include <ogc/lwp_watchdog.h>
|
||||
#include <ogc/mutex.h>
|
||||
#include <ogc/usbstorage.h>
|
||||
#include <sdcard/wiisd_io.h>
|
||||
#include <sys/dir.h>
|
||||
|
||||
#define CACHE 8
|
||||
|
||||
|
||||
int USBDevice_Init()
|
||||
{
|
||||
//right now only mounts first partition and only under IOS36
|
||||
__io_usbstorage.startup();
|
||||
|
||||
if (fatMountSimple("USB", &__io_usbstorage, 0, CACHE)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
void USBDevice_deInit()
|
||||
{
|
||||
//First unmount all the devs...
|
||||
fatUnmount("USB");
|
||||
//...and then shutdown em!
|
||||
__io_usbstorage.shutdown();
|
||||
}
|
||||
|
||||
int isSdInserted()
|
||||
{
|
||||
return __io_wiisd.isInserted();
|
||||
}
|
||||
|
||||
int SDCard_Init()
|
||||
{
|
||||
//mount SD if inserted
|
||||
__io_wiisd.startup();
|
||||
if (!isSdInserted()){
|
||||
return -1;
|
||||
}
|
||||
if (fatMount("SD", &__io_wiisd, 0, CACHE)) {
|
||||
return 1;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
void SDCard_deInit()
|
||||
{
|
||||
//First unmount all the devs...
|
||||
fatUnmount("SD");
|
||||
//...and then shutdown em!
|
||||
__io_wiisd.shutdown();
|
||||
}
|
19
source/fatmounter.h
Normal file
19
source/fatmounter.h
Normal file
@ -0,0 +1,19 @@
|
||||
#ifndef _FATMOUNTER_H_
|
||||
#define _FATMOUNTER_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
int USBDevice_Init();
|
||||
void USBDevice_deInit();
|
||||
int isSdInserted();
|
||||
int SDCard_Init();
|
||||
void SDCard_deInit();
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
@ -24,15 +24,13 @@
|
||||
#include "main.h"
|
||||
#include "http.h"
|
||||
#include "dns.h"
|
||||
|
||||
#include "fatmounter.h"
|
||||
#include "disc.h"
|
||||
#include "wbfs.h"
|
||||
#include "sys.h"
|
||||
#include "video2.h"
|
||||
#include "wpad.h"
|
||||
#include "cfg.h"
|
||||
#include <sdcard/wiisd_io.h>
|
||||
#include <fat.h>
|
||||
|
||||
|
||||
/* Constants */
|
||||
@ -70,8 +68,7 @@ void ExitApp()
|
||||
StopGX();
|
||||
ShutdownAudio();
|
||||
|
||||
fatUnmount("SD");
|
||||
__io_wiisd.shutdown();
|
||||
SDCard_deInit();
|
||||
|
||||
//WPAD_Flush(0);
|
||||
//WPAD_Disconnect(0);
|
||||
@ -109,19 +106,15 @@ int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
|
||||
|
||||
|
||||
s32 ret2;
|
||||
|
||||
__io_wiisd.startup();
|
||||
fatMountSimple("SD", &__io_wiisd);
|
||||
SDCard_Init();
|
||||
|
||||
CFG_Load(argc, argv);
|
||||
|
||||
DefaultSettings();
|
||||
|
||||
fatUnmount("SD");
|
||||
__io_wiisd.shutdown();
|
||||
SDCard_deInit();
|
||||
|
||||
/* Load Custom IOS */
|
||||
if(Settings.cios == ios222) {
|
||||
@ -139,8 +132,7 @@ main(int argc, char *argv[])
|
||||
SYS_ResetSystem(SYS_RETURNTOMENU, 0, 0);
|
||||
}
|
||||
|
||||
__io_wiisd.startup();
|
||||
fatMountSimple("SD", &__io_wiisd);
|
||||
SDCard_Init();
|
||||
|
||||
Sys_Init();
|
||||
//Video_SetMode();
|
||||
|
@ -5,7 +5,6 @@
|
||||
* menu.cpp
|
||||
* Menu flow routines - handles all menu logic
|
||||
***************************************************************************/
|
||||
|
||||
#include <gccore.h>
|
||||
#include <ogcsys.h>
|
||||
#include <stdio.h>
|
||||
@ -13,8 +12,6 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <wiiuse/wpad.h>
|
||||
#include <fat.h>
|
||||
#include <sdcard/wiisd_io.h>
|
||||
#include <stdio.h> //CLOCK
|
||||
#include <time.h> //CLOCK
|
||||
#include <dirent.h>
|
||||
@ -40,6 +37,7 @@
|
||||
#include "libwiigui/gui_customoptionbrowser.h"
|
||||
#include "libwiigui/gui_gamebrowser.h"
|
||||
#include "mp3s.h"
|
||||
#include "fatmounter.h"
|
||||
|
||||
#define MAX_CHARACTERS 38
|
||||
|
||||
@ -110,33 +108,6 @@ static void ResumeGui();
|
||||
extern const u8 data1;
|
||||
|
||||
|
||||
//libfat helper functions
|
||||
int isSdInserted() { return __io_wiisd.isInserted(); }
|
||||
|
||||
//Initialise SD CARD
|
||||
int SDCard_Init()
|
||||
{
|
||||
__io_wiisd.startup();
|
||||
if (!isSdInserted()){
|
||||
printf("No SD card inserted!");
|
||||
return -1;
|
||||
|
||||
} if (!fatMountSimple ("SD", &__io_wiisd)){
|
||||
printf("Failed to mount front SD card!");
|
||||
return -1;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
void SDCARD_deInit()
|
||||
{
|
||||
//First unmount all the devs...
|
||||
fatUnmount ("SD");
|
||||
//...and then shutdown em!
|
||||
__io_wiisd.shutdown();
|
||||
}
|
||||
|
||||
bool findfile(const char * filename, const char * path)
|
||||
{
|
||||
DIR *dir;
|
||||
@ -897,7 +868,7 @@ int GameWindowPrompt()
|
||||
|
||||
if(btn1.GetState() == STATE_CLICKED) { //boot
|
||||
choice = 1;
|
||||
SDCARD_deInit();
|
||||
SDCard_deInit();
|
||||
}
|
||||
|
||||
else if(btn2.GetState() == STATE_CLICKED) { //back
|
||||
@ -2001,7 +1972,6 @@ static int MenuInstall()
|
||||
char *name;
|
||||
static char buffer[MAX_CHARACTERS + 4];
|
||||
|
||||
|
||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
||||
|
||||
//GuiImageData battery(battery_png);
|
||||
@ -2016,7 +1986,6 @@ static int MenuInstall()
|
||||
snprintf(imgPath, sizeof(imgPath), "%sbattery_bar.png", CFG.theme_path);
|
||||
GuiImageData batteryBar(imgPath, battery_bar_png);
|
||||
|
||||
|
||||
#ifdef HW_RVL
|
||||
int i = 0, level;
|
||||
char txt[3];
|
||||
@ -2245,6 +2214,7 @@ static int MenuInstall()
|
||||
|
||||
static int MenuDiscList()
|
||||
{
|
||||
|
||||
datagB=0;
|
||||
int menu = MENU_NONE, dataef=0;
|
||||
char imgPath[100];
|
||||
@ -2492,7 +2462,6 @@ static int MenuDiscList()
|
||||
clockTime.SetPosition(THEME.clock_x, THEME.clock_y);
|
||||
clockTime.SetFont(fontClock);
|
||||
|
||||
|
||||
HaltGui();
|
||||
GuiWindow w(screenwidth, screenheight);
|
||||
|
||||
@ -2669,9 +2638,11 @@ static int MenuDiscList()
|
||||
|
||||
else if(sdcardBtn.GetState() == STATE_CLICKED)
|
||||
{
|
||||
__io_wiisd.shutdown();
|
||||
__io_wiisd.startup();
|
||||
break;
|
||||
SDCard_deInit();
|
||||
USBDevice_deInit();
|
||||
SDCard_Init();
|
||||
USBDevice_Init();
|
||||
sdcardBtn.ResetState();
|
||||
}
|
||||
|
||||
else if(DownloadBtn.GetState() == STATE_CLICKED)
|
||||
@ -3080,7 +3051,7 @@ static int MenuDiscList()
|
||||
}
|
||||
}
|
||||
|
||||
HaltGui();
|
||||
HaltGui();
|
||||
|
||||
#ifdef HW_RVL
|
||||
for(i=0; i < 4; i++)
|
||||
@ -3154,14 +3125,6 @@ static int MenuFormat()
|
||||
GuiTrigger trigHome;
|
||||
trigHome.SetButtonOnlyTrigger(-1, WPAD_BUTTON_HOME | WPAD_CLASSIC_BUTTON_HOME, 0);
|
||||
|
||||
GuiText titleTxt("Select the Partition", 18, (GXColor){0, 0, 0, 255});
|
||||
titleTxt.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||
titleTxt.SetPosition(10,40);
|
||||
|
||||
GuiText titleTxt2("you want to format:", 18, (GXColor){0, 0, 0, 255});
|
||||
titleTxt2.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||
titleTxt2.SetPosition(20,60);
|
||||
|
||||
GuiImage poweroffBtnImg(&btnpwroff);
|
||||
GuiImage poweroffBtnImgOver(&btnpwroffOver);
|
||||
poweroffBtnImg.SetWidescreen(CFG.widescreen);
|
||||
@ -3181,8 +3144,8 @@ static int MenuFormat()
|
||||
exitBtnImg.SetWidescreen(CFG.widescreen);
|
||||
exitBtnImgOver.SetWidescreen(CFG.widescreen);
|
||||
GuiButton exitBtn(btnhome.GetWidth(), btnhome.GetHeight());
|
||||
exitBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||
exitBtn.SetPosition(240, 367);
|
||||
exitBtn.SetAlignment(ALIGN_LEFT, ALIGN_BOTTOM);
|
||||
exitBtn.SetPosition(0, -10);
|
||||
exitBtn.SetImage(&exitBtnImg);
|
||||
exitBtn.SetImageOver(&exitBtnImgOver);
|
||||
exitBtn.SetSoundOver(&btnSoundOver);
|
||||
@ -3235,11 +3198,10 @@ static int MenuFormat()
|
||||
GuiOptionBrowser optionBrowser(THEME.selection_w, THEME.selection_h, &options, CFG.theme_path, bg_options_png, 1, 0);
|
||||
optionBrowser.SetPosition(THEME.selection_x, THEME.selection_y);
|
||||
optionBrowser.SetAlignment(ALIGN_LEFT, ALIGN_CENTRE);
|
||||
optionBrowser.SetCol2Position(200);
|
||||
|
||||
HaltGui();
|
||||
GuiWindow w(screenwidth, screenheight);
|
||||
w.Append(&titleTxt);
|
||||
w.Append(&titleTxt2);
|
||||
w.Append(&poweroffBtn);
|
||||
w.Append(&exitBtn);
|
||||
|
||||
@ -3881,7 +3843,11 @@ static int MenuSettings()
|
||||
if ( result == 1 )
|
||||
{ strncpy(CFG.covers_path, entered, sizeof(CFG.covers_path));
|
||||
WindowPrompt("Coverpath Changed",0,"OK",0,0,0);
|
||||
cfg_save_global();
|
||||
if(isSdInserted() == 1) {
|
||||
cfg_save_global();
|
||||
} else {
|
||||
WindowPrompt("No SD-Card inserted!", "Insert a SD-Card to save.", "OK", 0,0,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -3913,7 +3879,11 @@ static int MenuSettings()
|
||||
{
|
||||
strncpy(CFG.disc_path, entered, sizeof(CFG.disc_path));
|
||||
WindowPrompt("Discpath Changed",0,"OK",0,0,0);
|
||||
cfg_save_global();
|
||||
if(isSdInserted() == 1) {
|
||||
cfg_save_global();
|
||||
} else {
|
||||
WindowPrompt("No SD-Card inserted!", "Insert a SD-Card to save.", "OK", 0,0,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -3945,7 +3915,11 @@ static int MenuSettings()
|
||||
{
|
||||
strncpy(CFG.theme_path, entered, sizeof(CFG.theme_path));
|
||||
WindowPrompt("Themepath Changed",0,"OK",0,0,0);
|
||||
cfg_save_global();
|
||||
if(isSdInserted() == 1) {
|
||||
cfg_save_global();
|
||||
} else {
|
||||
WindowPrompt("No SD-Card inserted!", "Insert a SD-Card to save.", "OK", 0,0,0);
|
||||
}
|
||||
/////load new theme//////////////
|
||||
mainWindow->Remove(bgImg);
|
||||
CFG_Load1();
|
||||
@ -4434,13 +4408,11 @@ static int MenuCheck()
|
||||
|
||||
VIDEO_WaitVSync ();
|
||||
|
||||
|
||||
ret2 = WBFS_Init(WBFS_DEVICE_USB);
|
||||
if (ret2 < 0)
|
||||
{
|
||||
//shutdown SD
|
||||
fatUnmount("SD");
|
||||
__io_wiisd.shutdown();
|
||||
SDCard_deInit();
|
||||
//initialize WiiMote for Prompt
|
||||
Wpad_Init();
|
||||
WPAD_SetDataFormat(WPAD_CHAN_ALL,WPAD_FMT_BTNS_ACC_IR);
|
||||
@ -4468,8 +4440,7 @@ static int MenuCheck()
|
||||
Wpad_Init();
|
||||
WPAD_SetDataFormat(WPAD_CHAN_ALL,WPAD_FMT_BTNS_ACC_IR);
|
||||
WPAD_SetVRes(WPAD_CHAN_ALL, screenwidth, screenheight);
|
||||
__io_wiisd.startup();
|
||||
fatMountSimple("SD", &__io_wiisd);
|
||||
SDCard_Init();
|
||||
}
|
||||
if (ret2 < 0) {
|
||||
WindowPrompt ("ERROR:","USB-Device not found!", "ok", 0,0,0);
|
||||
@ -4479,8 +4450,7 @@ static int MenuCheck()
|
||||
Wpad_Init();
|
||||
WPAD_SetDataFormat(WPAD_CHAN_ALL,WPAD_FMT_BTNS_ACC_IR);
|
||||
WPAD_SetVRes(WPAD_CHAN_ALL, screenwidth, screenheight);
|
||||
__io_wiisd.startup();
|
||||
fatMountSimple("SD", &__io_wiisd);
|
||||
SDCard_Init();
|
||||
}
|
||||
|
||||
ret2 = Disc_Init();
|
||||
@ -4490,7 +4460,6 @@ static int MenuCheck()
|
||||
}
|
||||
|
||||
ret2 = WBFS_Open();
|
||||
|
||||
if (ret2 < 0) {
|
||||
|
||||
choice = WindowPrompt("No WBFS partition found!",
|
||||
@ -4523,11 +4492,9 @@ static int MenuCheck()
|
||||
//Spieleliste laden
|
||||
__Menu_GetEntries();
|
||||
|
||||
|
||||
if(menu == MENU_NONE)
|
||||
menu = MENU_DISCLIST;
|
||||
|
||||
|
||||
|
||||
return menu;
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,5 @@
|
||||
#include <stdio.h>
|
||||
#include <ogcsys.h>
|
||||
#include <fat.h>
|
||||
#include <sdcard/wiisd_io.h>
|
||||
|
||||
#include "sys.h"
|
||||
#include "wpad.h"
|
||||
@ -10,6 +8,7 @@
|
||||
#include "disc.h"
|
||||
#include "wbfs.h"
|
||||
#include "video.h"
|
||||
#include "fatmounter.h"
|
||||
|
||||
/* Constants */
|
||||
#define CERTS_LEN 0x280
|
||||
@ -52,8 +51,8 @@ int Sys_IosReload(int IOS)
|
||||
{
|
||||
s32 ret;
|
||||
|
||||
fatUnmount("SD");
|
||||
__io_wiisd.shutdown();
|
||||
SDCard_deInit();
|
||||
USBDevice_deInit();
|
||||
|
||||
WPAD_Flush(0);
|
||||
WPAD_Disconnect(0);
|
||||
@ -74,7 +73,7 @@ int Sys_IosReload(int IOS)
|
||||
WPAD_SetDataFormat(WPAD_CHAN_ALL,WPAD_FMT_BTNS_ACC_IR);
|
||||
WPAD_SetVRes(WPAD_CHAN_ALL, screenwidth, screenheight);
|
||||
|
||||
if(IOS == 249 || IOS == 222) {
|
||||
if(IOS == 249 || IOS == 222 || IOS == 223) {
|
||||
ret = WBFS_Init(WBFS_DEVICE_USB);
|
||||
ret = Disc_Init();
|
||||
ret = WBFS_Open();
|
||||
|
Loading…
Reference in New Issue
Block a user