#include "app.h"\r
-#include "FileMenu.h"\r
+//#include "FileMenu.h"\r
\r
-// sram\r
-struct PicoSRAM\r
-{\r
- unsigned char *data; // actual data\r
- unsigned int start; // start address in 68k address space\r
- unsigned int end;\r
- unsigned char resize; // 1=SRAM size changed and needs to be reallocated on PicoReset\r
- unsigned char reg_back; // copy of Pico.m.sram_reg to set after reset\r
- unsigned char changed;\r
- unsigned char pad;\r
-};\r
-\r
-extern "C" PicoSRAM SRam;\r
extern char *romname;\r
int fastForward=0;\r
int frameStep=0;\r
char LoopQuit=0;\r
static FILE *DebugFile=NULL;\r
int LoopMode=0;\r
-static void UpdateSound();\r
+static void UpdateSound(int len);\r
\r
int LoopInit()\r
{\r
//PsndLen=PsndRate/60; // calculated later by pico itself\r
\r
// Init Direct3D:\r
- ret=DirectInit(); if (ret) return 1;\r
+ ret=DirectInit(); if (ret) { error("Direct3D init failed"); return 1; }\r
InputInit();\r
\r
// Init DirectSound:\r
//DSoundInit();\r
\r
ret=EmuInit(); if (ret) return 1;\r
- FileMenu.init();\r
+ //FileMenu.init();\r
\r
LoopMode=8;\r
PicoWriteSound = UpdateSound;\r
return 0;\r
}\r
\r
-void preLoopInit()\r
-{\r
- romname[strlen(romname)-3] = 0;\r
- strcat(romname, "srm");\r
- int sram_size = SRam.end-SRam.start+1;\r
- if(SRam.reg_back & 4) sram_size=0x2000;\r
- FILE *f = fopen(romname, "rb");\r
- if(f && SRam.data)\r
- fread(SRam.data, 1, sram_size, f);\r
- if(f) fclose(f);\r
-}\r
-\r
extern "C" char *debugString();\r
\r
void LoopExit()\r
{\r
dprintf(debugString());\r
\r
- romname[strlen(romname)-3] = 0;\r
- strcat(romname, "srm");\r
- int sram_size = SRam.end-SRam.start+1;\r
- if(SRam.reg_back & 4) sram_size=0x2000;\r
- for(; sram_size > 0; sram_size--)\r
- if(SRam.data[sram_size-1]) break;\r
- if(sram_size) {\r
- FILE *f = fopen(romname, "wb");\r
- if(f) {\r
- fwrite(SRam.data, 1, sram_size, f);\r
- fclose(f);\r
- }\r
- }\r
-\r
- FileMenu.exit();\r
+ //FileMenu.exit();\r
EmuExit();\r
DSoundExit(); PsndLen=0;\r
InputExit();\r
}\r
// ----------------------------------------------------------------\r
\r
+/*\r
static int MenuUpdate()\r
{\r
int delta=0;\r
\r
return 0;\r
}\r
+*/\r
\r
// ----------------------------------------------------------------\r
\r
\r
if (DSoundNext) memset(DSoundNext,0,PsndLen<<2);\r
\r
- if (LoopMode==2) { FileMenu.scan(); LoopMode++; return 0; }\r
- if (LoopMode==3) { MenuUpdate(); return 0; }\r
- if (LoopMode==4) { LightCalUpdate(); return 0; }\r
+// if (LoopMode==2) { FileMenu.scan(); LoopMode++; return 0; }\r
+// if (LoopMode==3) { MenuUpdate(); return 0; }\r
+// if (LoopMode==4) { LightCalUpdate(); return 0; }\r
\r
LoopMode=2; // Unknown mode, go to rom menu\r
return 0;\r
static int ModeRender()\r
{\r
DirectScreen();\r
- if (LoopMode==3) MenuRender();\r
- if (LoopMode==4) LightCalRender();\r
+// if (LoopMode==3) MenuRender();\r
+// if (LoopMode==4) LightCalRender();\r
\r
return 0;\r
}\r
\r
-static void UpdateSound()\r
+static void UpdateSound(int len)\r
{\r
if(fastForward) return;\r
while (DSoundUpdate()) { Sleep(1); }\r
\r
// -------------------------------------------------------------------------------------\r
\r
+#if 0\r
extern "C" int dprintf(char *format, ...)\r
{\r
char *name=NULL;\r
va_end(val);\r
return 0;\r
}\r
+#endif\r
\r
extern "C" int dprintf2(char *format, ...)\r
{\r
\r
return 0;\r
}\r
+\r