From 5e666ef774d11d030ea9957ecc64a197de2abcd8 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Wed, 4 Jun 2008 20:28:20 +0000 Subject: Patch #1971285: "Nintendo Wii port" svn-id: r32547 --- backends/platform/wii/main.cpp | 88 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 backends/platform/wii/main.cpp (limited to 'backends/platform/wii/main.cpp') diff --git a/backends/platform/wii/main.cpp b/backends/platform/wii/main.cpp new file mode 100644 index 0000000000..7529df6de3 --- /dev/null +++ b/backends/platform/wii/main.cpp @@ -0,0 +1,88 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#include +#include +#include +#include +#include + +#include "osystem.h" + +#ifdef DEBUG_WII +#include +#include +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +int main(int argc, char *argv[]) { + s32 res; + + VIDEO_Init(); + PAD_Init(); + AUDIO_Init(NULL); + +#ifdef DEBUG_WII + gecko_console_init(0); + //DEBUG_Init(GDBSTUB_DEVICE_USB, 1); +#endif + + printf("startup\n"); + + if (!fatInitDefault()) { + printf("fatInitDefault failed\n"); + } else { + // set the default path if libfat couldnt set it + // this allows loading over tcp/usbgecko + char buf[MAXPATHLEN]; + + getcwd(buf, MAXPATHLEN); + if (!strcmp(buf, "fat:/")) + chdir("/apps/scummvm"); + + //fatEnableReadAhead(PI_DEFAULT, 32, 128); + } + + g_system = new OSystem_Wii(); + assert(g_system); + + res = scummvm_main(argc, argv); + g_system->quit(); + + printf("shutdown\n"); + + if (!fatUnmount(PI_DEFAULT)) { + printf("fatUnmount failed\n"); + fatUnsafeUnmount(PI_DEFAULT); + } + + printf("reloading\n"); + + return res; +} + +#ifdef __cplusplus +} +#endif + -- cgit v1.2.3 From 1217f0a42be87138a2d375bd78b50b880b2bdcab Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Sat, 7 Jun 2008 15:37:17 +0000 Subject: added support for reset and power buttons svn-id: r32593 --- backends/platform/wii/main.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'backends/platform/wii/main.cpp') diff --git a/backends/platform/wii/main.cpp b/backends/platform/wii/main.cpp index 7529df6de3..5753ecefe4 100644 --- a/backends/platform/wii/main.cpp +++ b/backends/platform/wii/main.cpp @@ -36,6 +36,17 @@ extern "C" { #endif +bool reset_btn_pressed = false; +bool power_btn_pressed = false; + +void reset_cb(void) { + reset_btn_pressed = true; +} + +void power_cb(void) { + power_btn_pressed = true; +} + int main(int argc, char *argv[]) { s32 res; @@ -50,6 +61,9 @@ int main(int argc, char *argv[]) { printf("startup\n"); + SYS_SetResetCallback(reset_cb); + SYS_SetPowerCallback(power_cb); + if (!fatInitDefault()) { printf("fatInitDefault failed\n"); } else { @@ -77,6 +91,11 @@ int main(int argc, char *argv[]) { fatUnsafeUnmount(PI_DEFAULT); } + if (power_btn_pressed) { + printf("shutting down\n"); + SYS_ResetSystem(SYS_POWEROFF, 0, 0); + } + printf("reloading\n"); return res; -- cgit v1.2.3