added copyright line to top of source files next to license information
[cyclone68000.git] / PicoDrive / Config.cpp
CommitLineData
15eb0001 1\r
58db92b9 2// This file is part of the PicoDrive Megadrive Emulator\r
3\r
c41b9b97 4// Copyright (c) 2011 FinalDave (emudave (at) gmail.com)\r
5\r
58db92b9 6// This code is licensed under the GNU General Public License version 2.0 and the MAME License.\r
7// You can choose the license that has the most advantages for you.\r
8\r
9// SVN repository can be found at http://code.google.com/p/cyclone68000/\r
10\r
15eb0001 11#include "stdafx.h"\r
12\r
13static char *ConfigName="\\PicoConfig.txt";\r
14struct Config Config;\r
15\r
16int ConfigInit()\r
17{\r
18 memset(&Config,0,sizeof(Config));\r
19\r
20 Config.key[0]=VK_UP;\r
21 Config.key[1]=VK_DOWN;\r
22 Config.key[2]=VK_LEFT;\r
23 Config.key[3]=VK_RIGHT;\r
24 Config.key[4]=GXKey.vkC; // A\r
25 Config.key[5]=GXKey.vkA; // B\r
26 Config.key[6]=GXKey.vkB; // C\r
27 Config.key[7]=GXKey.vkStart;\r
28\r
29 return 0;\r
30}\r
31\r
32int ConfigSave()\r
33{\r
34 FILE *f=NULL;\r
35 int i=0,max=0;\r
36\r
37 // Open config file:\r
38 f=fopen(ConfigName,"wt"); if (f==NULL) return 1;\r
39\r
40 fprintf(f,"// PicoDrive Config File\n\n");\r
41\r
42 fprintf(f,"// Keys: Up Down Left Right\n");\r
43 fprintf(f,"// A B C Start\n\n");\r
44\r
45 max=sizeof(Config.key)/sizeof(Config.key[0]);\r
46 for (i=0;i<max;i++)\r
47 {\r
48 fprintf(f,"key,%d,0x%.2x\n",i,Config.key[i]);\r
49 }\r
50\r
51 fclose(f);\r
52\r
53 return 0;\r
54}\r
55\r
56int ConfigLoad()\r
57{\r
58 FILE *f=NULL;\r
59 char line[256];\r
60 int i=0;\r
61\r
62 memset(line,0,sizeof(line));\r
63\r
64 // Open config file:\r
65 f=fopen(ConfigName,"rt"); if (f==NULL) return 1;\r
66\r
67 // Read through each line of the config file\r
68 for (;;)\r
69 {\r
70 char *tok[3]={"","",""};\r
71 if (fgets(line,sizeof(line)-1,f)==NULL) break;\r
72\r
73 // Split line into tokens:\r
74 for (i=0;i<3;i++)\r
75 {\r
76 tok[i]=strtok(i<1?line:NULL, ",\r\n");\r
77 if (tok[i]==NULL) { tok[i]=""; break; }\r
78 }\r
79\r
80 if (_stricmp(tok[0],"key")==0)\r
81 {\r
82 // Key code\r
83 int ta=0,tb=0;\r
84 \r
85 ta=strtol(tok[1],NULL,0);\r
86 tb=strtol(tok[2],NULL,0);\r
87\r
88 Config.key[ta&7]=tb;\r
89 }\r
90 }\r
91\r
92 fclose(f);\r
93\r
94 return 0;\r
95}\r