Files
NXST/source/Main.cpp

65 lines
1.5 KiB
C++

#include <MainApplication.hpp>
#include "util.hpp"
#include "main.hpp"
static int nxlink_sock = -1;
extern "C" void userAppInit() {
appletInitialize();
hidInitialize();
nsInitialize();
setsysInitialize();
setInitialize();
accountInitialize(AccountServiceType_Administrator);
pmshellInitialize();
socketInitializeDefault();
pdmqryInitialize();
nxlink_sock = nxlinkStdio();
printf("userAppInit\n");
}
extern "C" void userAppExit() {
if (nxlink_sock != -1) {
close(nxlink_sock);
}
appletExit();
hidExit();
nsExit();
setsysExit();
setExit();
accountExit();
pmshellExit();
socketExit();
pdmqryExit();
}
// Main entrypoint
int main() {
Result res = servicesInit();
if (R_FAILED(res)) {
servicesExit();
exit(res);
}
loadTitles();
// First create our renderer, where one can customize SDL or other stuff's
// initialization.
auto renderer_opts = pu::ui::render::RendererInitOptions(
SDL_INIT_EVERYTHING, pu::ui::render::RendererHardwareFlags);
renderer_opts.UseImage(pu::ui::render::IMGAllFlags);
renderer_opts.UseAudio(pu::ui::render::MixerAllFlags);
renderer_opts.UseTTF();
auto renderer = pu::ui::render::Renderer::New(renderer_opts);
// Create our main application from the renderer
auto main = ui::MainApplication::New(renderer);
main->Prepare();
main->Show();
return 0;
}