M68K support added. (#735)

* Fix for MIPS issue.

* Sparc support added.

* M68K support added.
This commit is contained in:
xorstream 2017-01-23 17:40:02 +11:00 committed by Nguyen Anh Quynh
parent a40921ce32
commit 2695a0ffe8
22 changed files with 265 additions and 54 deletions

View File

@ -130,6 +130,7 @@ Global
{F67EB1EA-DCFA-4758-A2AA-4B570BA78036}.Release|Win32.ActiveCfg = Release|Win32
{F67EB1EA-DCFA-4758-A2AA-4B570BA78036}.Release|x64.ActiveCfg = Release|x64
{2C5AD347-6E34-463B-8289-00578E43B255}.Debug|Win32.ActiveCfg = Debug|Win32
{2C5AD347-6E34-463B-8289-00578E43B255}.Debug|Win32.Build.0 = Debug|Win32
{2C5AD347-6E34-463B-8289-00578E43B255}.Debug|x64.ActiveCfg = Debug|x64
{2C5AD347-6E34-463B-8289-00578E43B255}.Release|Win32.ActiveCfg = Release|Win32
{2C5AD347-6E34-463B-8289-00578E43B255}.Release|x64.ActiveCfg = Release|x64
@ -154,10 +155,12 @@ Global
{006A7908-ABF3-4D18-BC35-0A29E39B95F9}.Release|Win32.ActiveCfg = Release|Win32
{006A7908-ABF3-4D18-BC35-0A29E39B95F9}.Release|x64.ActiveCfg = Release|x64
{698C2D54-475C-446F-B879-F629BBEF75FE}.Debug|Win32.ActiveCfg = Debug|Win32
{698C2D54-475C-446F-B879-F629BBEF75FE}.Debug|Win32.Build.0 = Debug|Win32
{698C2D54-475C-446F-B879-F629BBEF75FE}.Debug|x64.ActiveCfg = Debug|x64
{698C2D54-475C-446F-B879-F629BBEF75FE}.Release|Win32.ActiveCfg = Release|Win32
{698C2D54-475C-446F-B879-F629BBEF75FE}.Release|x64.ActiveCfg = Release|x64
{8804AD29-E398-480C-AC0F-98EC1B7A51CB}.Debug|Win32.ActiveCfg = Debug|Win32
{8804AD29-E398-480C-AC0F-98EC1B7A51CB}.Debug|Win32.Build.0 = Debug|Win32
{8804AD29-E398-480C-AC0F-98EC1B7A51CB}.Debug|x64.ActiveCfg = Debug|x64
{8804AD29-E398-480C-AC0F-98EC1B7A51CB}.Release|Win32.ActiveCfg = Release|Win32
{8804AD29-E398-480C-AC0F-98EC1B7A51CB}.Release|x64.ActiveCfg = Release|x64

View File

@ -18,6 +18,9 @@
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClInclude Include="config-target.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{2A7F483F-CD19-4F84-BBDA-B6A1865E2773}</ProjectGuid>
<Keyword>Win32Proj</Keyword>

View File

@ -1,2 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ClInclude Include="config-target.h" />
</ItemGroup>
</Project>

View File

@ -18,6 +18,9 @@
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClInclude Include="config-target.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{F67EB1EA-DCFA-4758-A2AA-4B570BA78036}</ProjectGuid>
<Keyword>Win32Proj</Keyword>

View File

@ -1,2 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ClInclude Include="config-target.h" />
</ItemGroup>
</Project>

View File

@ -18,6 +18,50 @@
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\..\qemu\cpu-exec.c" />
<ClCompile Include="..\..\..\qemu\cpus.c" />
<ClCompile Include="..\..\..\qemu\cputlb.c" />
<ClCompile Include="..\..\..\qemu\exec.c" />
<ClCompile Include="..\..\..\qemu\fpu\softfloat.c" />
<ClCompile Include="..\..\..\qemu\ioport.c" />
<ClCompile Include="..\..\..\qemu\memory.c" />
<ClCompile Include="..\..\..\qemu\memory_mapping.c" />
<ClCompile Include="..\..\..\qemu\tcg\i386\tcg-target.c">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\qemu\tcg\optimize.c" />
<ClCompile Include="..\..\..\qemu\tcg\tcg.c" />
<ClCompile Include="..\..\..\qemu\translate-all.c" />
<ClCompile Include="..\..\..\qemu\hw\m68k\dummy_m68k.c" />
<ClCompile Include="..\..\..\qemu\target-m68k\cpu.c" />
<ClCompile Include="..\..\..\qemu\target-m68k\helper.c" />
<ClCompile Include="..\..\..\qemu\target-m68k\op_helper.c" />
<ClCompile Include="..\..\..\qemu\target-m68k\translate.c" />
<ClCompile Include="..\..\..\qemu\target-m68k\unicorn.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\qemu\fpu\softfloat-macros.h" />
<ClInclude Include="..\..\..\qemu\fpu\softfloat-specialize.h" />
<ClInclude Include="..\..\..\qemu\tcg\i386\tcg-target.h" />
<ClInclude Include="..\..\..\qemu\tcg\tcg-be-ldst.h" />
<ClInclude Include="..\..\..\qemu\tcg\tcg-be-null.h" />
<ClInclude Include="..\..\..\qemu\tcg\tcg-op.h" />
<ClInclude Include="..\..\..\qemu\tcg\tcg-opc.h" />
<ClInclude Include="..\..\..\qemu\tcg\tcg-runtime.h" />
<ClInclude Include="..\..\..\qemu\tcg\tcg.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="..\..\..\qemu\m68k.h" />
<ClInclude Include="..\..\..\qemu\target-m68k\cpu-qom.h" />
<ClInclude Include="..\..\..\qemu\target-m68k\cpu.h" />
<ClInclude Include="..\..\..\qemu\target-m68k\helper.h" />
<ClInclude Include="..\..\..\qemu\target-m68k\m68k-qreg.h" />
<ClInclude Include="..\..\..\qemu\target-m68k\unicorn.h" />
<ClInclude Include="config-target.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{2C5AD347-6E34-463B-8289-00578E43B255}</ProjectGuid>
<Keyword>Win32Proj</Keyword>

View File

@ -1,2 +1,110 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="fpu">
<UniqueIdentifier>{45b613c4-9fdb-482c-b94f-0138ea9907c3}</UniqueIdentifier>
</Filter>
<Filter Include="hw">
<UniqueIdentifier>{14f99bfc-becf-403c-9100-1612ab30a848}</UniqueIdentifier>
</Filter>
<Filter Include="tcg">
<UniqueIdentifier>{63d2e327-f759-4757-a44b-90513ce433f7}</UniqueIdentifier>
</Filter>
<Filter Include="tcg\i386">
<UniqueIdentifier>{574ebec7-47db-49de-8f59-3365337e42a7}</UniqueIdentifier>
</Filter>
<Filter Include="hw\m68k">
<UniqueIdentifier>{484590c4-abd5-4db4-8b06-b34087856c27}</UniqueIdentifier>
</Filter>
<Filter Include="target-m68k">
<UniqueIdentifier>{476366de-d432-4ce4-8e04-64aa34326aa0}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\..\qemu\fpu\softfloat.c">
<Filter>fpu</Filter>
</ClCompile>
<ClCompile Include="..\..\..\qemu\tcg\optimize.c">
<Filter>tcg</Filter>
</ClCompile>
<ClCompile Include="..\..\..\qemu\tcg\tcg.c">
<Filter>tcg</Filter>
</ClCompile>
<ClCompile Include="..\..\..\qemu\tcg\i386\tcg-target.c">
<Filter>tcg\i386</Filter>
</ClCompile>
<ClCompile Include="..\..\..\qemu\cpu-exec.c" />
<ClCompile Include="..\..\..\qemu\cpus.c" />
<ClCompile Include="..\..\..\qemu\cputlb.c" />
<ClCompile Include="..\..\..\qemu\exec.c" />
<ClCompile Include="..\..\..\qemu\ioport.c" />
<ClCompile Include="..\..\..\qemu\memory.c" />
<ClCompile Include="..\..\..\qemu\memory_mapping.c" />
<ClCompile Include="..\..\..\qemu\translate-all.c" />
<ClCompile Include="..\..\..\qemu\hw\m68k\dummy_m68k.c">
<Filter>hw\m68k</Filter>
</ClCompile>
<ClCompile Include="..\..\..\qemu\target-m68k\cpu.c">
<Filter>target-m68k</Filter>
</ClCompile>
<ClCompile Include="..\..\..\qemu\target-m68k\helper.c">
<Filter>target-m68k</Filter>
</ClCompile>
<ClCompile Include="..\..\..\qemu\target-m68k\op_helper.c">
<Filter>target-m68k</Filter>
</ClCompile>
<ClCompile Include="..\..\..\qemu\target-m68k\translate.c">
<Filter>target-m68k</Filter>
</ClCompile>
<ClCompile Include="..\..\..\qemu\target-m68k\unicorn.c">
<Filter>target-m68k</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\qemu\fpu\softfloat-macros.h">
<Filter>fpu</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\fpu\softfloat-specialize.h">
<Filter>fpu</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\tcg\tcg-be-ldst.h">
<Filter>tcg</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\tcg\tcg-be-null.h">
<Filter>tcg</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\tcg\tcg-op.h">
<Filter>tcg</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\tcg\tcg-opc.h">
<Filter>tcg</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\tcg\tcg-runtime.h">
<Filter>tcg</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\tcg\tcg.h">
<Filter>tcg</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\tcg\i386\tcg-target.h">
<Filter>tcg\i386</Filter>
</ClInclude>
<ClInclude Include="..\config-host.h" />
<ClInclude Include="..\..\..\qemu\m68k.h" />
<ClInclude Include="..\..\..\qemu\target-m68k\cpu.h">
<Filter>target-m68k</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-m68k\cpu-qom.h">
<Filter>target-m68k</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-m68k\helper.h">
<Filter>target-m68k</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-m68k\m68k-qreg.h">
<Filter>target-m68k</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-m68k\unicorn.h">
<Filter>target-m68k</Filter>
</ClInclude>
<ClInclude Include="config-target.h" />
</ItemGroup>
</Project>

View File

@ -81,7 +81,6 @@
<ItemGroup>
<ClInclude Include="..\..\..\qemu\mips.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="config-target.h" />
<ClInclude Include="..\..\..\qemu\fpu\softfloat-macros.h">
<Filter>fpu</Filter>
</ClInclude>
@ -124,5 +123,6 @@
<ClInclude Include="..\..\..\qemu\target-mips\unicorn.h">
<Filter>target-mips</Filter>
</ClInclude>
<ClInclude Include="config-target.h" />
</ItemGroup>
</Project>

View File

@ -3,7 +3,6 @@
<ItemGroup>
<ClInclude Include="..\..\..\qemu\mips64.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="config-target.h" />
<ClInclude Include="..\..\..\qemu\fpu\softfloat-macros.h">
<Filter>fpu</Filter>
</ClInclude>
@ -46,6 +45,7 @@
<ClInclude Include="..\..\..\qemu\target-mips\unicorn.h">
<Filter>target-mips</Filter>
</ClInclude>
<ClInclude Include="config-target.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\..\qemu\cpu-exec.c" />

View File

@ -3,7 +3,6 @@
<ItemGroup>
<ClInclude Include="..\..\..\qemu\mips64el.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="config-target.h" />
<ClInclude Include="..\..\..\qemu\fpu\softfloat-macros.h">
<Filter>fpu</Filter>
</ClInclude>
@ -46,6 +45,7 @@
<ClInclude Include="..\..\..\qemu\target-mips\unicorn.h">
<Filter>target-mips</Filter>
</ClInclude>
<ClInclude Include="config-target.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\..\qemu\cpu-exec.c" />

View File

@ -3,7 +3,6 @@
<ItemGroup>
<ClInclude Include="..\..\..\qemu\mipsel.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="config-target.h" />
<ClInclude Include="..\..\..\qemu\fpu\softfloat-macros.h">
<Filter>fpu</Filter>
</ClInclude>
@ -46,6 +45,7 @@
<ClInclude Include="..\..\..\qemu\target-mips\unicorn.h">
<Filter>target-mips</Filter>
</ClInclude>
<ClInclude Include="config-target.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\..\qemu\cpu-exec.c" />

View File

@ -60,7 +60,11 @@
<ClInclude Include="..\..\..\qemu\tcg\tcg-runtime.h" />
<ClInclude Include="..\..\..\qemu\tcg\tcg.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="..\mips-softmmu\config-target.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\cpu-qom.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\cpu.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\helper.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\unicorn.h" />
<ClInclude Include="config-target.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{698C2D54-475C-446F-B879-F629BBEF75FE}</ProjectGuid>

View File

@ -104,7 +104,19 @@
<Filter>tcg\i386</Filter>
</ClInclude>
<ClInclude Include="..\config-host.h" />
<ClInclude Include="..\mips-softmmu\config-target.h" />
<ClInclude Include="..\..\..\qemu\sparc.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\cpu.h">
<Filter>target-sparc</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-sparc\cpu-qom.h">
<Filter>target-sparc</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-sparc\helper.h">
<Filter>target-sparc</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-sparc\unicorn.h">
<Filter>target-sparc</Filter>
</ClInclude>
<ClInclude Include="config-target.h" />
</ItemGroup>
</Project>

View File

@ -61,7 +61,11 @@
<ClInclude Include="..\..\..\qemu\tcg\tcg-runtime.h" />
<ClInclude Include="..\..\..\qemu\tcg\tcg.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="..\mips-softmmu\config-target.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\cpu-qom.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\cpu.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\helper.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\unicorn.h" />
<ClInclude Include="config-target.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{8804AD29-E398-480C-AC0F-98EC1B7A51CB}</ProjectGuid>

View File

@ -106,8 +106,20 @@
<ClInclude Include="..\..\..\qemu\tcg\i386\tcg-target.h">
<Filter>tcg\i386</Filter>
</ClInclude>
<ClInclude Include="..\mips-softmmu\config-target.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="..\..\..\qemu\sparc64.h" />
<ClInclude Include="..\..\..\qemu\target-sparc\cpu.h">
<Filter>target-sparc</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-sparc\cpu-qom.h">
<Filter>target-sparc</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-sparc\helper.h">
<Filter>target-sparc</Filter>
</ClInclude>
<ClInclude Include="..\..\..\qemu\target-sparc\unicorn.h">
<Filter>target-sparc</Filter>
</ClInclude>
<ClInclude Include="config-target.h" />
</ItemGroup>
</Project>

View File

@ -166,8 +166,8 @@
<ClInclude Include="..\..\..\qemu\include\sysemu\sysemu.h" />
<ClInclude Include="..\..\..\qemu\vl.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="qapi-types.h" />
<ClInclude Include="qapi-visit.h" />
<ClInclude Include="..\qapi-types.h" />
<ClInclude Include="..\qapi-visit.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{B6EFD6D7-C2D4-4FBB-B363-2E08CE09CC96}</ProjectGuid>
@ -237,7 +237,7 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;inline=__inline;__func__=__FUNCTION__;__i386__;UNICORN_HAS_MIPS;UNICORN_HAS_MIPS64;UNICORN_HAS_MIPSEL;UNICORN_HAS_MIPS64EL;UNICORN_HAS_SPARC;UNICORN_HAS_X86</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;inline=__inline;__func__=__FUNCTION__;__i386__;UNICORN_HAS_M68K;UNICORN_HAS_MIPS;UNICORN_HAS_MIPS64;UNICORN_HAS_MIPSEL;UNICORN_HAS_MIPS64EL;UNICORN_HAS_SPARC;UNICORN_HAS_X86</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<AdditionalIncludeDirectories>.;..;../../../include;../../../qemu;../../../qemu/include;../../../qemu/tcg</AdditionalIncludeDirectories>
<AdditionalOptions>/wd4018 /wd4244 /wd4267 %(AdditionalOptions)</AdditionalOptions>
@ -249,7 +249,7 @@
</Link>
<Lib>
<AdditionalLibraryDirectories>$(SolutionDir)$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
<AdditionalDependencies>ws2_32.lib;mips-softmmu.lib;mips64-softmmu.lib;mipsel-softmmu.lib;mips64el-softmmu.lib;sparc-softmmu.lib;sparc64-softmmu.lib;x86_64-softmmu.lib</AdditionalDependencies>
<AdditionalDependencies>ws2_32.lib;m68k-softmmu.lib;mips-softmmu.lib;mips64-softmmu.lib;mipsel-softmmu.lib;mips64el-softmmu.lib;sparc-softmmu.lib;sparc64-softmmu.lib;x86_64-softmmu.lib</AdditionalDependencies>
</Lib>
<PreBuildEvent>
<Command>..\prebuild_script.bat</Command>
@ -261,7 +261,7 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;inline=__inline;__func__=__FUNCTION__;__x86_64__;UNICORN_HAS_MIPS;UNICORN_HAS_MIPS64;UNICORN_HAS_MIPSEL;UNICORN_HAS_MIPS64EL;UNICORN_HAS_SPARC;UNICORN_HAS_X86</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;inline=__inline;__func__=__FUNCTION__;__x86_64__;UNICORN_HAS_M68K;UNICORN_HAS_MIPS;UNICORN_HAS_MIPS64;UNICORN_HAS_MIPSEL;UNICORN_HAS_MIPS64EL;UNICORN_HAS_SPARC;UNICORN_HAS_X86</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<AdditionalIncludeDirectories>.;..;../../../include;../../../qemu;../../../qemu/include;../../../qemu/tcg</AdditionalIncludeDirectories>
<AdditionalOptions>/wd4018 /wd4244 /wd4267 %(AdditionalOptions)</AdditionalOptions>
@ -273,7 +273,7 @@
</Link>
<Lib>
<AdditionalLibraryDirectories>$(SolutionDir)$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
<AdditionalDependencies>ws2_32.lib;mips-softmmu.lib;mips64-softmmu.lib;mipsel-softmmu.lib;mips64el-softmmu.lib;sparc-softmmu.lib;sparc64-softmmu.lib;x86_64-softmmu.lib</AdditionalDependencies>
<AdditionalDependencies>ws2_32.lib;m68k-softmmu.lib;mips-softmmu.lib;mips64-softmmu.lib;mipsel-softmmu.lib;mips64el-softmmu.lib;sparc-softmmu.lib;sparc64-softmmu.lib;x86_64-softmmu.lib</AdditionalDependencies>
</Lib>
<PreBuildEvent>
<Command>..\prebuild_script.bat</Command>
@ -287,7 +287,7 @@
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;inline=__inline;__func__=__FUNCTION__;__i386__;UNICORN_HAS_MIPS;UNICORN_HAS_MIPS64;UNICORN_HAS_MIPSEL;UNICORN_HAS_MIPS64EL;UNICORN_HAS_SPARC;UNICORN_HAS_X86</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;inline=__inline;__func__=__FUNCTION__;__i386__;UNICORN_HAS_M68K;UNICORN_HAS_MIPS;UNICORN_HAS_MIPS64;UNICORN_HAS_MIPSEL;UNICORN_HAS_MIPS64EL;UNICORN_HAS_SPARC;UNICORN_HAS_X86</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<AdditionalIncludeDirectories>.;..;../../../include;../../../qemu;../../../qemu/include;../../../qemu/tcg</AdditionalIncludeDirectories>
<AdditionalOptions>/wd4018 /wd4244 /wd4267 %(AdditionalOptions)</AdditionalOptions>
@ -301,7 +301,7 @@
</Link>
<Lib>
<AdditionalLibraryDirectories>$(SolutionDir)$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
<AdditionalDependencies>ws2_32.lib;mips-softmmu.lib;mips64-softmmu.lib;mipsel-softmmu.lib;mips64el-softmmu.lib;sparc-softmmu.lib;sparc64-softmmu.lib;x86_64-softmmu.lib</AdditionalDependencies>
<AdditionalDependencies>ws2_32.lib;m68k-softmmu.lib;mips-softmmu.lib;mips64-softmmu.lib;mipsel-softmmu.lib;mips64el-softmmu.lib;sparc-softmmu.lib;sparc64-softmmu.lib;x86_64-softmmu.lib</AdditionalDependencies>
</Lib>
<PreBuildEvent>
<Command>..\prebuild_script.bat</Command>
@ -315,7 +315,7 @@
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;inline=__inline;__func__=__FUNCTION__;__x86_64__;UNICORN_HAS_MIPS;UNICORN_HAS_MIPS64;UNICORN_HAS_MIPSEL;UNICORN_HAS_MIPS64EL;UNICORN_HAS_SPARC;UNICORN_HAS_X86</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions);_CRT_SECURE_NO_WARNINGS;inline=__inline;__func__=__FUNCTION__;__x86_64__;UNICORN_HAS_M68K;UNICORN_HAS_MIPS;UNICORN_HAS_MIPS64;UNICORN_HAS_MIPSEL;UNICORN_HAS_MIPS64EL;UNICORN_HAS_SPARC;UNICORN_HAS_X86</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<AdditionalIncludeDirectories>.;..;../../../include;../../../qemu;../../../qemu/include;../../../qemu/tcg</AdditionalIncludeDirectories>
<AdditionalOptions>/wd4018 /wd4244 /wd4267 %(AdditionalOptions)</AdditionalOptions>
@ -329,7 +329,7 @@
</Link>
<Lib>
<AdditionalLibraryDirectories>$(SolutionDir)$(Platform)\$(Configuration)\</AdditionalLibraryDirectories>
<AdditionalDependencies>ws2_32.lib;mips-softmmu.lib;mips64-softmmu.lib;mipsel-softmmu.lib;mips64el-softmmu.lib;sparc-softmmu.lib;sparc64-softmmu.lib;x86_64-softmmu.lib</AdditionalDependencies>
<AdditionalDependencies>ws2_32.lib;m68k-softmmu.lib;mips-softmmu.lib;mips64-softmmu.lib;mipsel-softmmu.lib;mips64el-softmmu.lib;sparc-softmmu.lib;sparc64-softmmu.lib;x86_64-softmmu.lib</AdditionalDependencies>
</Lib>
<PreBuildEvent>
<Command>..\prebuild_script.bat</Command>

View File

@ -488,14 +488,14 @@
<ClInclude Include="..\..\..\include\unicorn\unicorn.h" />
<ClInclude Include="..\..\..\include\unicorn\x86.h" />
<ClInclude Include="..\..\..\include\unicorn\platform.h" />
<ClInclude Include="qapi-types.h">
<Filter>qemu</Filter>
</ClInclude>
<ClInclude Include="qapi-visit.h">
<Filter>qemu</Filter>
</ClInclude>
<ClInclude Include="..\config-host.h">
<Filter>qemu</Filter>
</ClInclude>
<ClInclude Include="..\qapi-visit.h">
<Filter>qemu</Filter>
</ClInclude>
<ClInclude Include="..\qapi-types.h">
<Filter>qemu</Filter>
</ClInclude>
</ItemGroup>
</Project>

View File

@ -131,7 +131,6 @@
<ClInclude Include="..\..\..\qemu\tcg\i386\tcg-target.h">
<Filter>tcg\i386</Filter>
</ClInclude>
<ClInclude Include="config-target.h" />
<ClInclude Include="..\config-host.h" />
<ClInclude Include="..\..\..\qemu\target-i386\cc_helper_template.h">
<Filter>target-i386</Filter>
@ -160,5 +159,6 @@
<ClInclude Include="..\..\..\qemu\target-i386\unicorn.h">
<Filter>target-i386</Filter>
</ClInclude>
<ClInclude Include="config-target.h" />
</ItemGroup>
</Project>

View File

@ -39,12 +39,11 @@ static int dummy_m68k_init(struct uc_struct *uc, MachineState *machine)
void dummy_m68k_machine_init(struct uc_struct *uc)
{
static QEMUMachine dummy_m68k_machine = {
.name = "dummy",
.init = dummy_m68k_init,
.is_default = 1,
.arch = UC_ARCH_M68K,
};
static QEMUMachine dummy_m68k_machine = { 0 };
dummy_m68k_machine.name = "dummy",
dummy_m68k_machine.init = dummy_m68k_init,
dummy_m68k_machine.is_default = 1,
dummy_m68k_machine.arch = UC_ARCH_M68K,
//printf(">>> dummy_m68k_machine_init\n");
qemu_register_machine(uc, &dummy_m68k_machine, TYPE_MACHINE, NULL);

View File

@ -140,10 +140,10 @@ typedef struct M68kCPUInfo {
} M68kCPUInfo;
static const M68kCPUInfo m68k_cpus[] = {
{ .name = "m5206", .instance_init = m5206_cpu_initfn },
{ .name = "m5208", .instance_init = m5208_cpu_initfn },
{ .name = "cfv4e", .instance_init = cfv4e_cpu_initfn },
{ .name = "any", .instance_init = any_cpu_initfn },
{ "m5206", m5206_cpu_initfn },
{ "m5208", m5208_cpu_initfn },
{ "cfv4e", cfv4e_cpu_initfn },
{ "any", any_cpu_initfn },
};
static int m68k_cpu_realizefn(struct uc_struct *uc, DeviceState *dev, Error **errp)
@ -201,10 +201,9 @@ static void m68k_cpu_class_init(struct uc_struct *uc, ObjectClass *c, void *data
static void register_cpu_type(void *opaque, const M68kCPUInfo *info)
{
TypeInfo type_info = {
.parent = TYPE_M68K_CPU,
.instance_init = info->instance_init,
};
TypeInfo type_info = {0};
type_info.parent = TYPE_M68K_CPU,
type_info.instance_init = info->instance_init,
type_info.name = g_strdup_printf("%s-" TYPE_M68K_CPU, info->name);
type_register(opaque, &type_info);
@ -213,15 +212,25 @@ static void register_cpu_type(void *opaque, const M68kCPUInfo *info)
void m68k_cpu_register_types(void *opaque)
{
TypeInfo m68k_cpu_type_info = {
.name = TYPE_M68K_CPU,
.parent = TYPE_CPU,
.instance_userdata = opaque,
.instance_size = sizeof(M68kCPU),
.instance_init = m68k_cpu_initfn,
.abstract = true,
.class_size = sizeof(M68kCPUClass),
.class_init = m68k_cpu_class_init,
const TypeInfo m68k_cpu_type_info = {
TYPE_M68K_CPU,
TYPE_CPU,
sizeof(M68kCPUClass),
sizeof(M68kCPU),
opaque,
m68k_cpu_initfn,
NULL,
NULL,
NULL,
m68k_cpu_class_init,
NULL,
NULL,
true,
};
int i;

View File

@ -60,7 +60,7 @@ void m68k_tcg_init(struct uc_struct *uc)
// tcg_ctx->QREG_FP_RESULT = tcg_global_mem_new_i64(tcg_ctx, TCG_AREG0, offsetof(CPUM68KState, fp_result), "FP_RESULT");
tcg_ctx->cpu_halted = tcg_global_mem_new_i32(tcg_ctx, TCG_AREG0,
-offsetof(M68kCPU, env) +
0-offsetof(M68kCPU, env) +
offsetof(CPUState, halted), "HALTED");
tcg_ctx->cpu_env = tcg_global_reg_new_ptr(tcg_ctx, TCG_AREG0, "env");

View File

@ -20,8 +20,11 @@ static void m68k_set_pc(struct uc_struct *uc, uint64_t address)
void m68k_release(void* ctx);
void m68k_release(void* ctx)
{
TCGContext *tcg_ctx;
int i;
release_common(ctx);
TCGContext *tcg_ctx = (TCGContext *) ctx;
tcg_ctx = (TCGContext *) ctx;
g_free(tcg_ctx->tb_ctx.tbs);
g_free(tcg_ctx->QREG_PC);
g_free(tcg_ctx->QREG_SR);
@ -33,7 +36,6 @@ void m68k_release(void* ctx)
g_free(tcg_ctx->QREG_DIV2);
g_free(tcg_ctx->QREG_MACSR);
g_free(tcg_ctx->QREG_MAC_MASK);
int i;
for (i = 0; i < 8; i++) {
g_free(tcg_ctx->cpu_dregs[i]);
g_free(tcg_ctx->cpu_aregs[i]);