--- /dev/null
+\r
+#include "stdafx.h"\r
+\r
+// Loading roms, loading and saving states etc...\r
+\r
+int FileLoadRom()\r
+{\r
+ OPENFILENAME ofn;\r
+\r
+ memset(&ofn,0,sizeof(ofn));\r
+ memset(&RomName,0,sizeof(RomName));\r
+\r
+ ofn.lStructSize=sizeof(ofn);\r
+ ofn.hwndOwner=FrameWnd;\r
+ ofn.hInstance=GetModuleHandle(NULL);\r
+ ofn.lpstrFile=RomName;\r
+ ofn.nMaxFile=260;\r
+ ofn.lpstrDefExt=L"bin";\r
+ ofn.lpstrFilter=L"Rom Files\0*.bin;*.gen;*.smd\0\0";\r
+\r
+ GetOpenFileName(&ofn);\r
+\r
+ UpdateWindow(FrameWnd);\r
+\r
+ // Open new rom:\r
+ if (RomName[0]) EmulateInit();\r
+\r
+ return 0;\r
+}\r
+\r
+int FileState(int load)\r
+{\r
+ OPENFILENAME ofn;\r
+ WCHAR name[260]={0};\r
+\r
+ if (load==0) wcscpy(name,L"State.mds");\r
+\r
+ memset(&ofn,0,sizeof(ofn));\r
+ ofn.lStructSize=sizeof(ofn);\r
+ ofn.hwndOwner=FrameWnd;\r
+ ofn.hInstance=GetModuleHandle(NULL);\r
+ ofn.lpstrFile=name;\r
+ ofn.nMaxFile=sizeof(name)>>1;\r
+ ofn.lpstrDefExt=L"mds";\r
+ ofn.lpstrFilter=L"MD State Files\0*.mds\0\0";\r
+\r
+ if (load) GetOpenFileNameW(&ofn);\r
+ else GetSaveFileNameW(&ofn);\r
+ UpdateWindow(FrameWnd);\r
+\r
+ if (name[0]==0) return 1;\r
+\r
+ if (PmovFile) fclose(PmovFile);\r
+\r
+ PmovFile=_wfopen(name,load ? L"rb":L"wb");\r
+ if (PmovFile==NULL) return 1;\r
+ \r
+ PmovAction=load?6:5;\r
+ PmovState(); // Save the state\r
+\r
+ return 0;\r
+}\r