Kaynağa Gözat

let it build on msvc

supposedly for the original XBox?
notaz 6 yıl önce
ebeveyn
işleme
24aab4da73

+ 3 - 3
pico/32x/32x.c

@@ -297,9 +297,9 @@ typedef void (event_cb)(unsigned int now);
 unsigned int p32x_event_times[P32X_EVENT_COUNT];
 static unsigned int event_time_next;
 static event_cb *p32x_event_cbs[P32X_EVENT_COUNT] = {
-  [P32X_EVENT_PWM]      = p32x_pwm_irq_event,
-  [P32X_EVENT_FILLEND]  = fillend_event,
-  [P32X_EVENT_HINT]     = hint_event,
+  p32x_pwm_irq_event, // P32X_EVENT_PWM
+  fillend_event,      // P32X_EVENT_FILLEND
+  hint_event,         // P32X_EVENT_HINT
 };
 
 // schedule event at some time 'after', in m68k clocks

+ 1 - 1
pico/32x/draw.c

@@ -292,7 +292,7 @@ void PicoDraw32xLayerMdOnly(int offs, int lines)
   for (l = 0; l < lines; l++) {
     if (have_scan) {
       PicoScan32xBegin(l + offs);
-      dst = Pico.est.DrawLineDest + poffs;
+      dst = (unsigned short *)Pico.est.DrawLineDest + poffs;
     }
     for (p = 0; p < plen; p += 4) {
       dst[p + 0] = pal[*pmd++];

+ 7 - 5
pico/cd/mcd.c

@@ -30,9 +30,11 @@ PICO_INTERNAL void PicoExitMCD(void)
 
 PICO_INTERNAL void PicoPowerMCD(void)
 {
+  int fmt_size;
+
   SekCycleCntS68k = SekCycleAimS68k = 0;
 
-  int fmt_size = sizeof(formatted_bram);
+  fmt_size = sizeof(formatted_bram);
   memset(Pico_mcd->prg_ram,    0, sizeof(Pico_mcd->prg_ram));
   memset(Pico_mcd->word_ram2M, 0, sizeof(Pico_mcd->word_ram2M));
   memset(Pico_mcd->pcm_ram,    0, sizeof(Pico_mcd->pcm_ram));
@@ -200,10 +202,10 @@ typedef void (event_cb)(unsigned int now);
 unsigned int pcd_event_times[PCD_EVENT_COUNT];
 static unsigned int event_time_next;
 static event_cb *pcd_event_cbs[PCD_EVENT_COUNT] = {
-  [PCD_EVENT_CDC]      = pcd_cdc_event,
-  [PCD_EVENT_TIMER3]   = pcd_int3_timer_event,
-  [PCD_EVENT_GFX]      = gfx_update,
-  [PCD_EVENT_DMA]      = pcd_dma_event,
+  pcd_cdc_event,            // PCD_EVENT_CDC
+  pcd_int3_timer_event,     // PCD_EVENT_TIMER3
+  gfx_update,               // PCD_EVENT_GFX
+  pcd_dma_event,            // PCD_EVENT_DMA
 };
 
 void pcd_event_schedule(unsigned int now, enum pcd_event event, int after)

+ 1 - 1
pico/draw.c

@@ -1617,7 +1617,7 @@ void PicoDrawSetOutBuf(void *dest, int increment)
 {
   DrawLineDestBase = dest;
   DrawLineDestIncrement = increment;
-  Pico.est.DrawLineDest = DrawLineDestBase + Pico.est.DrawScanline * increment;
+  Pico.est.DrawLineDest = (char *)DrawLineDestBase + Pico.est.DrawScanline * increment;
 }
 
 void PicoDrawSetInternalBuf(void *dest, int increment)

+ 7 - 0
pico/pico_port.h

@@ -15,4 +15,11 @@
 #define ALIGNED(n)
 #endif
 
+#ifdef _MSC_VER
+#define snprintf _snprintf
+#define strcasecmp _stricmp
+#define strncasecmp _strnicmp
+#define strdup _strdup
+#endif
+
 #endif // PICO_PORT_INCLUDED

+ 9 - 4
platform/libretro/libretro.c

@@ -484,6 +484,8 @@ int plat_mem_set_exec(void *ptr, size_t size)
 
 void emu_video_mode_change(int start_line, int line_count, int is_32cols)
 {
+   struct retro_system_av_info av_info;
+
    memset(vout_buf, 0, 320 * 240 * 2);
    vout_width = is_32cols ? 256 : 320;
    PicoDrawSetOutBuf(vout_buf, vout_width * 2);
@@ -494,7 +496,6 @@ void emu_video_mode_change(int start_line, int line_count, int is_32cols)
    vout_offset = vout_width * start_line;
 
    // Update the geometry
-   struct retro_system_av_info av_info;
    retro_get_system_av_info(&av_info);
    environ_cb(RETRO_ENVIRONMENT_SET_GEOMETRY, &av_info);
 }
@@ -566,6 +567,8 @@ void retro_get_system_info(struct retro_system_info *info)
 
 void retro_get_system_av_info(struct retro_system_av_info *info)
 {
+   float common_width;
+
    memset(info, 0, sizeof(*info));
    info->timing.fps            = Pico.m.pal ? 50 : 60;
    info->timing.sample_rate    = 44100;
@@ -574,7 +577,7 @@ void retro_get_system_av_info(struct retro_system_av_info *info)
    info->geometry.max_width    = vout_width;
    info->geometry.max_height   = vout_height;
 
-   float common_width = vout_width;
+   common_width = vout_width;
    if (user_vout_width != 0)
       common_width = user_vout_width;
 
@@ -1208,6 +1211,8 @@ static enum input_device input_name_to_val(const char *name)
 static void update_variables(void)
 {
    struct retro_variable var;
+   int OldPicoRegionOverride;
+   float old_user_vout_width;
 
    var.value = NULL;
    var.key = "picodrive_input1";
@@ -1237,7 +1242,7 @@ static void update_variables(void)
          PicoOpt &= ~POPT_EN_MCD_RAMCART;
    }
 
-   int OldPicoRegionOverride = PicoRegionOverride;
+   OldPicoRegionOverride = PicoRegionOverride;
    var.value = NULL;
    var.key = "picodrive_region";
    if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) {
@@ -1261,7 +1266,7 @@ static void update_variables(void)
       PsndRerate(1);
    }
 
-   float old_user_vout_width = user_vout_width;
+   old_user_vout_width = user_vout_width;
    var.value = NULL;
    var.key = "picodrive_aspect";
    if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value) {

+ 39 - 13
platform/libretro/msvc/msvc-2010/msvc-2010.vcxproj

@@ -51,9 +51,10 @@
       </PrecompiledHeader>
       <WarningLevel>Level3</WarningLevel>
       <Optimization>Disabled</Optimization>
-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;MSVC2010_EXPORTS;%(PreprocessorDefinitions);INLINE=_inline;_CRT_SECURE_NO_WARNINGS;EMU_F68K;_USE_CZ80;NO_ZLIB;FAMEC_NO_GOTOS</PreprocessorDefinitions>
+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;MSVC2010_EXPORTS;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;EMU_F68K;_USE_CZ80;FAMEC_NO_GOTOS</PreprocessorDefinitions>
       <CompileAs>CompileAsC</CompileAs>
-      <AdditionalIncludeDirectories>$(SolutionDir)\..\..\..\;$(SolutionDIr)\..\..\..\pico;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <AdditionalIncludeDirectories>$(SolutionDir)\..\..\..\;$(SolutionDIr)\..\..\..\pico;$(SolutionDIr)\..\..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <DisableSpecificWarnings>4018;4090;4101;4146;4244</DisableSpecificWarnings>
     </ClCompile>
     <Link>
       <SubSystem>Windows</SubSystem>
@@ -69,9 +70,10 @@
       <Optimization>MaxSpeed</Optimization>
       <FunctionLevelLinking>true</FunctionLevelLinking>
       <IntrinsicFunctions>true</IntrinsicFunctions>
-      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;MSVC2010_EXPORTS;%(PreprocessorDefinitions);INLINE=_inline;_CRT_SECURE_NO_WARNINGS;EMU_F68K;_USE_CZ80;NO_ZLIB;FAMEC_NO_GOTOS</PreprocessorDefinitions>
+      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;MSVC2010_EXPORTS;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;EMU_F68K;_USE_CZ80;FAMEC_NO_GOTOS</PreprocessorDefinitions>
       <CompileAs>CompileAsC</CompileAs>
-      <AdditionalIncludeDirectories>$(SolutionDir)\..\..\..\;$(SolutionDIr)\..\..\..\pico;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <AdditionalIncludeDirectories>$(SolutionDir)\..\..\..\;$(SolutionDIr)\..\..\..\pico;$(SolutionDIr)\..\..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <DisableSpecificWarnings>4018;4090;4101;4146;4244</DisableSpecificWarnings>
     </ClCompile>
     <Link>
       <SubSystem>Windows</SubSystem>
@@ -88,13 +90,23 @@
     <ClCompile Include="..\..\..\..\cpu\sh2\mame\sh2pico.c" />
     <ClCompile Include="..\..\..\..\cpu\sh2\sh2.c" />
     <ClCompile Include="..\..\..\..\pico\32x\32x.c" />
-    <ClCompile Include="..\..\..\..\pico\32x\32x_draw.c" />
-    <ClCompile Include="..\..\..\..\pico\32x\32x_memory.c" />
+    <ClCompile Include="..\..\..\..\pico\32x\draw.c">
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)\32x\</ObjectFileName>
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)\32x\</ObjectFileName>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\pico\32x\memory.c">
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)\32x\</ObjectFileName>
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)\32x\</ObjectFileName>
+    </ClCompile>
     <ClCompile Include="..\..\..\..\pico\32x\pwm.c" />
     <ClCompile Include="..\..\..\..\pico\32x\sh2soc.c" />
     <ClCompile Include="..\..\..\..\pico\cart.c" />
     <ClCompile Include="..\..\..\..\pico\carthw\carthw.c" />
-    <ClCompile Include="..\..\..\..\pico\carthw\svp\svp_memory.c" />
+    <ClCompile Include="..\..\..\..\pico\carthw\eeprom_spi.c" />
+    <ClCompile Include="..\..\..\..\pico\carthw\svp\memory.c">
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)\svp\</ObjectFileName>
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)\svp\</ObjectFileName>
+    </ClCompile>
     <ClCompile Include="..\..\..\..\pico\carthw\svp\ssp16.c" />
     <ClCompile Include="..\..\..\..\pico\carthw\svp\svp.c" />
     <ClCompile Include="..\..\..\..\pico\carthw_cfg.c" />
@@ -106,10 +118,19 @@
     <ClCompile Include="..\..\..\..\pico\cd\gfx.c" />
     <ClCompile Include="..\..\..\..\pico\cd\gfx_dma.c" />
     <ClCompile Include="..\..\..\..\pico\cd\mcd.c" />
-    <ClCompile Include="..\..\..\..\pico\cd\cd_memory.c" />
-    <ClCompile Include="..\..\..\..\pico\cd\cd_misc.c" />
+    <ClCompile Include="..\..\..\..\pico\cd\memory.c">
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)\cd\</ObjectFileName>
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)\cd\</ObjectFileName>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\pico\cd\misc.c">
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)\cd\</ObjectFileName>
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)\cd\</ObjectFileName>
+    </ClCompile>
     <ClCompile Include="..\..\..\..\pico\cd\pcm.c" />
-    <ClCompile Include="..\..\..\..\pico\cd\cd_sek.c" />
+    <ClCompile Include="..\..\..\..\pico\cd\sek.c">
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)\cd\</ObjectFileName>
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)\cd\</ObjectFileName>
+    </ClCompile>
     <ClCompile Include="..\..\..\..\pico\debug.c" />
     <ClCompile Include="..\..\..\..\pico\draw.c" />
     <ClCompile Include="..\..\..\..\pico\draw2.c" />
@@ -120,8 +141,14 @@
     <ClCompile Include="..\..\..\..\pico\mode4.c" />
     <ClCompile Include="..\..\..\..\pico\patch.c" />
     <ClCompile Include="..\..\..\..\pico\pico.c" />
-    <ClCompile Include="..\..\..\..\pico\pico\pico_memory.c" />
-    <ClCompile Include="..\..\..\..\pico\pico\pico_pico.c" />
+    <ClCompile Include="..\..\..\..\pico\pico\memory.c">
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)\pico\</ObjectFileName>
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)\pico\</ObjectFileName>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\pico\pico\pico.c">
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)\pico\</ObjectFileName>
+      <ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)\pico\</ObjectFileName>
+    </ClCompile>
     <ClCompile Include="..\..\..\..\pico\pico\xpcm.c" />
     <ClCompile Include="..\..\..\..\pico\sek.c" />
     <ClCompile Include="..\..\..\..\pico\sms.c" />
@@ -133,7 +160,6 @@
     <ClCompile Include="..\..\..\..\pico\videoport.c" />
     <ClCompile Include="..\..\..\..\pico\z80if.c" />
     <ClCompile Include="..\..\..\..\unzip\unzip.c" />
-    <ClCompile Include="..\..\..\..\unzip\unzip_stream.c" />
     <ClCompile Include="..\..\..\..\zlib\adler32.c" />
     <ClCompile Include="..\..\..\..\zlib\compress.c" />
     <ClCompile Include="..\..\..\..\zlib\crc32.c" />

+ 14 - 14
platform/libretro/msvc/msvc-2010/msvc-2010.vcxproj.filters

@@ -120,9 +120,6 @@
     <ClCompile Include="..\..\..\..\unzip\unzip.c">
       <Filter>Source Files\unzip</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\..\unzip\unzip_stream.c">
-      <Filter>Source Files\unzip</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\..\pico\cart.c">
       <Filter>Source Files\pico</Filter>
     </ClCompile>
@@ -198,22 +195,22 @@
     <ClCompile Include="..\..\..\..\pico\cd\mcd.c">
       <Filter>Source Files\pico\cd</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\..\pico\cd\cd_memory.c">
+    <ClCompile Include="..\..\..\..\pico\cd\memory.c">
       <Filter>Source Files\pico\cd</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\..\pico\cd\cd_misc.c">
+    <ClCompile Include="..\..\..\..\pico\cd\misc.c">
       <Filter>Source Files\pico\cd</Filter>
     </ClCompile>
     <ClCompile Include="..\..\..\..\pico\cd\pcm.c">
       <Filter>Source Files\pico\cd</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\..\pico\cd\cd_sek.c">
+    <ClCompile Include="..\..\..\..\pico\cd\sek.c">
       <Filter>Source Files\pico\cd</Filter>
     </ClCompile>
     <ClCompile Include="..\..\..\..\pico\32x\32x.c">
       <Filter>Source Files\pico\32x</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\..\pico\32x\32x_memory.c">
+    <ClCompile Include="..\..\..\..\pico\32x\memory.c">
       <Filter>Source Files\pico\32x</Filter>
     </ClCompile>
     <ClCompile Include="..\..\..\..\pico\32x\pwm.c">
@@ -225,7 +222,10 @@
     <ClCompile Include="..\..\..\..\pico\carthw\carthw.c">
       <Filter>Source Files\pico\carthw</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\..\pico\carthw\svp\svp_memory.c">
+    <ClCompile Include="..\..\..\..\pico\carthw\eeprom_spi.c">
+      <Filter>Source Files\pico\carthw</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\pico\carthw\svp\memory.c">
       <Filter>Source Files\pico\carthw\svp</Filter>
     </ClCompile>
     <ClCompile Include="..\..\..\..\pico\carthw\svp\ssp16.c">
@@ -261,17 +261,17 @@
     <ClCompile Include="..\..\..\..\cpu\sh2\mame\sh2pico.c">
       <Filter>Source Files\cpu\sh2\mame</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\..\pico\32x\32x_draw.c">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="..\..\..\..\pico\pico\pico_memory.c">
+    <ClCompile Include="..\..\..\..\pico\pico\xpcm.c">
       <Filter>Source Files\pico\pico</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\..\pico\pico\pico_pico.c">
+    <ClCompile Include="..\..\..\..\pico\pico\pico.c">
       <Filter>Source Files\pico\pico</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\..\pico\pico\xpcm.c">
+    <ClCompile Include="..\..\..\..\pico\pico\memory.c">
       <Filter>Source Files\pico\pico</Filter>
     </ClCompile>
+    <ClCompile Include="..\..\..\..\pico\32x\draw.c">
+      <Filter>Source Files\pico\32x</Filter>
+    </ClCompile>
   </ItemGroup>
 </Project>