mirror of
https://github.com/wiiu-env/ftpiiu.git
synced 2024-11-29 04:54:19 +01:00
sources to ftpiiu everywhere
This commit is contained in:
parent
e09e81afe6
commit
872da4d912
2
Makefile
2
Makefile
@ -56,7 +56,7 @@ MAKEFLAGS += --no-print-directory
|
||||
#---------------------------------------------------------------------------------
|
||||
# any extra libraries we wish to link with the project
|
||||
#---------------------------------------------------------------------------------
|
||||
LIBS := -lgcc -lgd -lpng -lz -lfreetype -lvorbisidec
|
||||
LIBS := -lgcc -lgd -lpng -lz -lfreetype -lvorbisidec -liosuhax
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
# list of directories containing libraries, this must be the top level containing
|
||||
|
@ -74,6 +74,10 @@ EXPORT_DECL(int, OSScreenFlipBuffersEx, unsigned int bufferNum);
|
||||
EXPORT_DECL(int, OSScreenPutFontEx, unsigned int bufferNum, unsigned int posX, unsigned int posY, const char * buffer);
|
||||
EXPORT_DECL(int, OSScreenEnableEx, unsigned int bufferNum, int enable);
|
||||
|
||||
EXPORT_DECL(int, IOS_Ioctl,int fd, unsigned int request, void *input_buffer,unsigned int input_buffer_len, void *output_buffer, unsigned int output_buffer_len);
|
||||
EXPORT_DECL(int, IOS_Open,char *path, unsigned int mode);
|
||||
EXPORT_DECL(int, IOS_Close,int fd);
|
||||
|
||||
//!----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
//! Memory functions
|
||||
//!----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
@ -162,5 +166,11 @@ void InitOSFunctionPointers(void)
|
||||
OS_FIND_EXPORT(coreinit_handle, MEMCreateExpHeapEx);
|
||||
OS_FIND_EXPORT(coreinit_handle, MEMDestroyExpHeap);
|
||||
OS_FIND_EXPORT(coreinit_handle, MEMFreeToExpHeap);
|
||||
}
|
||||
|
||||
//!----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
//! Other function addresses
|
||||
//!----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
OS_FIND_EXPORT(coreinit_handle, IOS_Ioctl);
|
||||
OS_FIND_EXPORT(coreinit_handle, IOS_Open);
|
||||
OS_FIND_EXPORT(coreinit_handle, IOS_Close);
|
||||
}
|
||||
|
@ -105,6 +105,9 @@ extern void (* DCFlushRange)(const void *addr, u32 length);
|
||||
extern void (* ICInvalidateRange)(const void *addr, u32 length);
|
||||
extern void* (* OSEffectiveToPhysical)(const void*);
|
||||
extern int (* __os_snprintf)(char* s, int n, const char * format, ...);
|
||||
extern int (*IOS_Ioctl)(int fd, unsigned int request, void *input_buffer,unsigned int input_buffer_len, void *output_buffer, unsigned int output_buffer_len);
|
||||
extern int (*IOS_Open)(char *path, unsigned int mode);
|
||||
extern int (*IOS_Close)(int fd);
|
||||
|
||||
extern void (*OSScreenInit)(void);
|
||||
extern unsigned int (*OSScreenGetBufferSizeEx)(unsigned int bufferNum);
|
||||
|
36
src/main.c
36
src/main.c
@ -2,6 +2,9 @@
|
||||
#include <stdarg.h>
|
||||
#include <stdlib.h>
|
||||
#include <malloc.h>
|
||||
#include <gctypes.h>
|
||||
#include <iosuhax.h>
|
||||
#include <iosuhax_devoptab.h>
|
||||
#include "dynamic_libs/os_functions.h"
|
||||
#include "dynamic_libs/fs_functions.h"
|
||||
#include "dynamic_libs/gx2_functions.h"
|
||||
@ -109,6 +112,27 @@ int Menu_Main(void)
|
||||
log_printf("Mount SD partition\n");
|
||||
mount_sd_fat("sd");
|
||||
|
||||
int res = IOSUHAX_Open();
|
||||
if(res < 0)
|
||||
{
|
||||
log_printf("IOSUHAX_open failed\n");
|
||||
}
|
||||
|
||||
int fsaFd = IOSUHAX_FSA_Open();
|
||||
if(fsaFd < 0)
|
||||
{
|
||||
log_printf("IOSUHAX_FSA_Open failed\n");
|
||||
}
|
||||
|
||||
mount_fs("slccmpt01", fsaFd, "/dev/slccmpt01", "/vol/storage_slccmpt01");
|
||||
mount_fs("storage_odd_tickets", fsaFd, "/dev/odd01", "/vol/storage_odd_tickets");
|
||||
mount_fs("storage_odd_updates", fsaFd, "/dev/odd02", "/vol/storage_odd_updates");
|
||||
mount_fs("storage_odd_content", fsaFd, "/dev/odd03", "/vol/storage_odd_content");
|
||||
mount_fs("storage_odd_content2", fsaFd, "/dev/odd04", "/vol/storage_odd_content2");
|
||||
mount_fs("storage_slc", fsaFd, NULL, "/vol/system");
|
||||
mount_fs("storage_mlc", fsaFd, NULL, "/vol/storage_mlc01");
|
||||
mount_fs("storage_usb", fsaFd, NULL, "/vol/storage_usb01");
|
||||
|
||||
for(int i = 0; i < MAX_CONSOLE_LINES_TV; i++)
|
||||
consoleArrayTv[i] = NULL;
|
||||
|
||||
@ -194,6 +218,18 @@ int Menu_Main(void)
|
||||
|
||||
log_printf("Unmount SD\n");
|
||||
unmount_sd_fat("sd");
|
||||
|
||||
unmount_fs("slccmpt01");
|
||||
unmount_fs("storage_odd_tickets");
|
||||
unmount_fs("storage_odd_updates");
|
||||
unmount_fs("storage_odd_content");
|
||||
unmount_fs("storage_odd_content2");
|
||||
unmount_fs("storage_slc");
|
||||
unmount_fs("storage_mlc");
|
||||
unmount_fs("storage_usb");
|
||||
IOSUHAX_FSA_Close(fsaFd);
|
||||
IOSUHAX_Close();
|
||||
|
||||
log_printf("Release memory\n");
|
||||
//memoryRelease();
|
||||
log_deinit();
|
||||
|
@ -94,6 +94,14 @@ void AddVirtualPath(const char *name, const char *alias, const char *prefix)
|
||||
void MountVirtualDevices()
|
||||
{
|
||||
VirtualMountDevice("sd:/");
|
||||
VirtualMountDevice("slccmpt01:/");
|
||||
VirtualMountDevice("storage_odd_tickets:/");
|
||||
VirtualMountDevice("storage_odd_updates:/");
|
||||
VirtualMountDevice("storage_odd_content:/");
|
||||
VirtualMountDevice("storage_odd_content2:/");
|
||||
VirtualMountDevice("storage_slc:/");
|
||||
VirtualMountDevice("storage_mlc:/");
|
||||
VirtualMountDevice("storage_usb:/");
|
||||
}
|
||||
|
||||
void UnmountVirtualPaths()
|
||||
|
@ -191,8 +191,12 @@ FILE *vrt_fopen(char *cwd, char *path, char *mode) {
|
||||
|
||||
int vrt_stat(char *cwd, char *path, struct stat *st) {
|
||||
char *real_path = to_real_path(cwd, path);
|
||||
if (!real_path) return -1;
|
||||
else if (!*real_path) {
|
||||
if (!real_path)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
else if (!*real_path || (strcmp(path, ".") == 0) || (strlen(cwd) == 1) || ((strlen(cwd) > 1) && (strcmp(path, "..") == 0)))
|
||||
{
|
||||
st->st_mode = S_IFDIR;
|
||||
st->st_size = 31337;
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user