bananatools/platform/platform.h

46 lines
983 B
C

#pragma once
#include "platform/netenv.h"
#include "platform/locale.h"
#include "platform/clock.h"
#include "platform/dns.h"
#include "platform/jvs.h"
#include "platform/misc.h"
#include "platform/vfs.h"
#include "platform/es3sec.h"
#include "platform/epay.h"
struct dongle_info {
USHORT pid;
USHORT vid;
wchar_t manufacturer[MAX_PATH];
wchar_t product[MAX_PATH];
};
struct platform_config {
struct clock_config clock;
struct netenv_config netenv;
struct locale_config locale;
struct dns_config dns;
struct jvs_config jvs;
struct misc_config misc;
struct vfs_config vfs;
struct es3sec_config dongle;
struct epay_config epay;
};
enum platform_type {
PLATFORM_ES1_A2,
PLATFORM_ES2_PLUS,
PLATFORM_ES3,
PLATFORM_ES4,
PLATFORM_BNA1,
};
HRESULT platform_hook_init(
const struct platform_config *cfg,
enum platform_type type,
jvs_provider_t jvs,
HMODULE redir_mod,
struct dongle_info d_info
);