Add some project files that can compile a 64-bit version of the driver

for new versions of Windows.
This commit is contained in:
asvitkine 2012-04-22 03:23:27 +00:00
parent 235c71e1b2
commit 473d6d326c
4 changed files with 266 additions and 0 deletions

View File

@ -0,0 +1,80 @@
[version]
Signature = "$Windows NT$"
Class = NetTrans
ClassGUID = {4d36e975-e325-11ce-bfc1-08002be10318}
Provider = %Msft%
DriverVer = 12/05/1999,5.00.2128
[Manufacturer]
%Msft%=MSFT,NTamd64
[MSFT.NTamd64]
%B2ETHER_Desc%=Install, MS_B2ETHER
;-------------------------------------------------------------------------
; Installation Section
;-------------------------------------------------------------------------
[Install]
AddReg=Inst_Ndi
Characteristics=0 ; Has no characteristic
CopyFiles=CpyFiles_Sys
;-------------------------------------------------------------------------
; Ndi installation support
;-------------------------------------------------------------------------
[Inst_Ndi]
HKR,Ndi,Service,,"B2Ether"
HKR,Ndi,HelpText,,%B2ETHER_HelpText%
HKR, Ndi\Interfaces, UpperRange,, noupper
HKR,"Ndi\Interfaces","LowerRange",,"ndis5,ndis4"
;-------------------------------------------------------------------------
; Service installation support
;-------------------------------------------------------------------------
[Install.Services]
AddService=B2Ether,,B2ETHER_Service_Inst
[B2Ether_Service_Inst]
DisplayName = %B2ETHER_Desc%
ServiceType = 1 ;SERVICE_KERNEL_DRIVER
StartType = 2 ;SERVICE_AUTO_START
ErrorControl = 1 ;SERVICE_ERROR_NORMAL
ServiceBinary = %12%\B2Ether64.sys
LoadOrderGroup = "PNP_TDI"
AddReg = AddReg_B2ETHER_Service_Inst
Description = %B2ETHER_Desc%
[AddReg_B2ETHER_Service_Inst]
HKLM,"System\CurrentControlSet\Services\B2Ether","TextModeFlags",%REG_DWORD%,0x0001
HKR,"Parameters","Version",,"5.00.2128"
;-------------------------------------------------------------------------
; Support for removal of static registry settings
;-------------------------------------------------------------------------
[Install.Remove]
DelReg=Del_Static_Reg
[Install.Remove.Services]
DelService=B2Ether
[Del_Static_Reg]
HKLM,"System\CurrentControlSet\Services\B2Ether","TextModeFlags"
;-------------------------------------------------------------------------
; Declare Destination Directories for file copy/deletion
;-------------------------------------------------------------------------
[DestinationDirs]
CpyFiles_Sys = 12 ; DIRID_DRIVERS
;-------------------------------------------------------------------------
; Files to Copy/Delete - Referenced by Install and Remove sections above
;-------------------------------------------------------------------------
[CpyFiles_Sys]
B2Ether64.sys,,,2
[Strings]
Msft = "Microsoft"
B2ETHER_Desc = "Basilisk II Ethernet Driver Test x64"
B2ETHER_HelpText = "Adds ethernet capability to the Basilisk II Macintosh II emulator."
REG_DWORD = 0x10001

View File

@ -0,0 +1,32 @@
// #include <ntddndis.h>
#ifndef __NTDDPACKET
#define __NTDDPACKET 1
// #include <devioctl.h>
#define MAX_LINK_NAME_LENGTH 124
#pragma pack(1)
typedef struct _PACKET_OID_DATA {
ULONG Oid;
ULONG Length;
UCHAR Data[1];
} PACKET_OID_DATA, *PPACKET_OID_DATA;
#pragma pack()
#define FILE_DEVICE_PROTOCOL 0x8000
#define IOCTL_PROTOCOL_SET_OID CTL_CODE(FILE_DEVICE_PROTOCOL, 0 , METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_PROTOCOL_QUERY_OID CTL_CODE(FILE_DEVICE_PROTOCOL, 1 , METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_PROTOCOL_RESET CTL_CODE(FILE_DEVICE_PROTOCOL, 2 , METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_PROTOCOL_READ CTL_CODE(FILE_DEVICE_PROTOCOL, 3 , METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_PROTOCOL_WRITE CTL_CODE(FILE_DEVICE_PROTOCOL, 4 , METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_PROTOCOL_MACNAME CTL_CODE(FILE_DEVICE_PROTOCOL, 5 , METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_PROTOCOL_SELECT_BY_NAME CTL_CODE(FILE_DEVICE_PROTOCOL, 6 , METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_ENUM_ADAPTERS CTL_CODE(FILE_DEVICE_PROTOCOL, 7 , METHOD_BUFFERED, FILE_ANY_ACCESS)
#endif

View File

@ -0,0 +1,26 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "b2ether64", "b2ether64.vcxproj", "{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}.Debug|Win32.ActiveCfg = Debug|Win32
{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}.Debug|Win32.Build.0 = Debug|Win32
{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}.Debug|x64.ActiveCfg = Debug|x64
{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}.Debug|x64.Build.0 = Debug|x64
{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}.Release|Win32.ActiveCfg = Release|Win32
{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}.Release|Win32.Build.0 = Release|Win32
{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}.Release|x64.ActiveCfg = Release|x64
{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@ -0,0 +1,128 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{F7EA62B6-E0EC-4074-8A83-D0CBB1C990B4}</ProjectGuid>
<Keyword>MakeFileProj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Makefile</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Makefile</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ConfigurationType>Makefile</ConfigurationType>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ConfigurationType>Makefile</ConfigurationType>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<NMakeBuildCommandLine>call $(WDKPATH)\bin\setenv.bat $(WDKPATH) chk win7
cd /d C:\Dev\projects\b2ether64
build</NMakeBuildCommandLine>
<NMakeCleanCommandLine>rmdir /s /q C:\Dev\projects\b2ether64\objchk_win7_x86</NMakeCleanCommandLine>
<NMakeReBuildCommandLine>rmdir /s /q C:\Dev\projects\b2ether64\objchk_win7_x86
call $(WDKPATH)\bin\setenv.bat $(WDKPATH) chk win7
cd /d C:\Dev\projects\b2ether64
build</NMakeReBuildCommandLine>
<IntDir>C:\Dev\projects\b2ether64\objchk_win7_x86</IntDir>
<OutDir>C:\Dev\projects\b2ether64\objchk_win7_x86</OutDir>
<NMakeOutput>C:\Dev\projects\b2ether64\objchk_win7_x86\i386\b2ether.sys</NMakeOutput>
<NMakePreprocessorDefinitions>WIN32;_CONSOLE;_X86_;_DDK_;_DEBUG;DBG=1;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
<NMakeIncludeSearchPath>$(WDKPATH)\inc\ddk;$(WDKPATH)\inc\api;$(WDKPATH)\inc\crt;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<NMakeBuildCommandLine>call $(WDKPATH)\bin\setenv.bat $(WDKPATH) fre win7
cd /d C:\Dev\projects\b2ether64
build</NMakeBuildCommandLine>
<NMakeCleanCommandLine>rmdir /s /q C:\Dev\projects\b2ether64\objfre_win7_x86</NMakeCleanCommandLine>
<NMakeReBuildCommandLine>rmdir /s /q C:\Dev\projects\b2ether64\objfre_win7_x86
call $(WDKPATH)\bin\setenv.bat $(WDKPATH) fre win7
cd /d C:\Dev\projects\b2ether64
build</NMakeReBuildCommandLine>
<IntDir>C:\Dev\projects\b2ether64\objfre_win7_x86</IntDir>
<OutDir>C:\Dev\projects\b2ether64\objfre_win7_x86</OutDir>
<NMakeOutput>C:\Dev\projects\b2ether64\objfre_win7_x86\i386\b2ether.sys</NMakeOutput>
<NMakePreprocessorDefinitions>WIN32;_CONSOLE;_X86_;_DDK_;_NDEBUG;DBG=0;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
<NMakeIncludeSearchPath>$(WDKPATH)\inc\ddk;$(WDKPATH)\inc\api;$(WDKPATH)\inc\crt;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<NMakeBuildCommandLine>call $(WDKPATH)\bin\setenv.bat $(WDKPATH) chk x64 win7
cd /d C:\Dev\projects\b2ether64
build</NMakeBuildCommandLine>
<NMakeCleanCommandLine>rmdir /s /q C:\Dev\projects\b2ether64\objchk_win7_amd64</NMakeCleanCommandLine>
<NMakeReBuildCommandLine>rmdir /s /q C:\Dev\projects\b2ether64\objchk_win7_amd64
call $(WDKPATH)\bin\setenv.bat $(WDKPATH) chk x64 win7
cd /d C:\Dev\projects\b2ether64
build</NMakeReBuildCommandLine>
<IntDir>C:\Dev\projects\b2ether64\objchk_win7_amd64</IntDir>
<OutDir>C:\Dev\projects\b2ether64\objchk_win7_amd64</OutDir>
<NMakeOutput>C:\Dev\projects\b2ether64\objchk_win7_amd64\amd64\b2ether64.sys</NMakeOutput>
<NMakePreprocessorDefinitions>WIN32;_CONSOLE;_AMD64_;_DDK_;_DEBUG;DBG=1;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
<NMakeIncludeSearchPath>$(WDKPATH)\inc\ddk;$(WDKPATH)\inc\api;$(WDKPATH)\inc\crt;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<NMakeBuildCommandLine>call $(WDKPATH)\bin\setenv.bat $(WDKPATH) fre x64 win7
cd /d C:\Dev\projects\b2ether64
build</NMakeBuildCommandLine>
<NMakeCleanCommandLine>rmdir /s /q C:\Dev\projects\b2ether64\objfre_win7_amd64</NMakeCleanCommandLine>
<NMakeReBuildCommandLine>rmdir /s /q C:\Dev\projects\b2ether64\objfre_win7_amd64
call $(WDKPATH)\bin\setenv.bat $(WDKPATH) fre x64 win7
cd /d C:\Dev\projects\b2ether64
build</NMakeReBuildCommandLine>
<IntDir>C:\Dev\projects\b2ether64\objfre_win7_amd64</IntDir>
<OutDir>C:\Dev\projects\b2ether64\objfre_win7_amd64</OutDir>
<NMakeOutput>C:\Dev\projects\b2ether64\objfre_win7_amd64\amd64\b2ether64.sys</NMakeOutput>
<NMakePreprocessorDefinitions>WIN32;_CONSOLE;_AMD64_;_DDK_;_NDEBUG;DBG=0;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
<NMakeIncludeSearchPath>$(WDKPATH)\inc\ddk;$(WDKPATH)\inc\api;$(WDKPATH)\inc\crt;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
</PropertyGroup>
<ItemDefinitionGroup>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="b2ether.c" />
<ClCompile Include="b2ether_openclose.c" />
<ClCompile Include="b2ether_read.c" />
<ClCompile Include="b2ether_write.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="b2ether.h" />
<ClInclude Include="NTDDPACK.H" />
</ItemGroup>
<ItemGroup>
<None Include="sources" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>