X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=platform%2Fcommon%2Fmain.c;h=5a0287edf516bbcc963001dd26ea42127bfe6ee3;hb=30f0fdd42279a99893034a5d21b64439536c60aa;hp=bdcdc1428e30af72c10d36bc625f02ebb2485ae3;hpb=b24e0f6ce6e8a59ba43597520709ca79fa36ff8e;p=picodrive.git diff --git a/platform/common/main.c b/platform/common/main.c index bdcdc14..5a0287e 100644 --- a/platform/common/main.c +++ b/platform/common/main.c @@ -1,18 +1,22 @@ -// (c) Copyright 2006-2009 notaz, All rights reserved. -// Free for non-commercial use. - -// For commercial use, separate licencing terms must be obtained. +/* + * PicoDrive + * (C) notaz, 2006-2010 + * + * This work is licensed under the terms of MAME license. + * See COPYING file in the top-level directory. + */ #include #include #include #include -#include "menu.h" +#include "../libpicofe/input.h" +#include "../libpicofe/plat.h" +#include "menu_pico.h" #include "emu.h" #include "config.h" -#include "input.h" -#include "plat.h" +#include #include @@ -34,6 +38,12 @@ void parse_cmd_line(int argc, char *argv[]) else if (strcasecmp(argv[x], "-loadstate") == 0) { if (x+1 < argc) { ++x; load_state_slot = atoi(argv[x]); } } + else if (strcasecmp(argv[x], "-pdb") == 0) { + if (x+1 < argc) { ++x; pdb_command(argv[x]); } + } + else if (strcasecmp(argv[x], "-pdb_connect") == 0) { + if (x+2 < argc) { pdb_net_connect(argv[x+1], argv[x+2]); x += 2; } + } else { unrecognized = 1; break; @@ -65,17 +75,15 @@ int main(int argc, char *argv[]) { g_argv = argv; - plat_early_init(); + //plat_early_init(); - /* in_init() must go before config, config accesses in_ fwk */ in_init(); - pemu_prep_defconfig(); - emu_read_config(0, 0); - config_readlrom(PicoConfigFile); - - plat_init(); in_probe(); - in_debug_dump(); + + plat_target_init(); + + emu_prep_defconfig(); // depends on input + emu_read_config(NULL, 0); emu_init(); menu_init(); @@ -104,6 +112,10 @@ int main(int argc, char *argv[]) menu_loop(); break; + case PGS_TrayMenu: + menu_loop_tray(); + break; + case PGS_ReloadRom: if (emu_reload_rom(rom_fname_reload)) engineState = PGS_Running; @@ -115,6 +127,7 @@ int main(int argc, char *argv[]) case PGS_RestartRun: engineState = PGS_Running; + /* vvv fallthrough */ case PGS_Running: emu_loop(); @@ -132,7 +145,7 @@ int main(int argc, char *argv[]) endloop: emu_finish(); - plat_finish(); + plat_target_finish(); return 0; }