diff --git a/Source/Core/Core/Src/HW/BBA-TAP/TAP_Win32.cpp b/Source/Core/Core/Src/HW/BBA-TAP/TAP_Win32.cpp index 8d6ca3ff33..032570e220 100644 --- a/Source/Core/Core/Src/HW/BBA-TAP/TAP_Win32.cpp +++ b/Source/Core/Core/Src/HW/BBA-TAP/TAP_Win32.cpp @@ -128,6 +128,8 @@ if(isActivated()) } bool CEXIETHERNET::sendPacket(u8 *etherpckt, int size) { + if(!isActivated()) + activate(); DEBUGPRINT( "Packet: 0x"); for(int a = 0; a < size; ++a) { @@ -136,8 +138,9 @@ bool CEXIETHERNET::sendPacket(u8 *etherpckt, int size) DEBUGPRINT( " : Size: %d\n", size); DWORD numBytesWrit; OVERLAPPED overlap; + memset((void*)&overlap, 0, sizeof(overlap)); //ZERO_OBJECT(overlap); - overlap.hEvent = mHRecvEvent; + //overlap.hEvent = mHRecvEvent; if(!WriteFile(mHAdapter, etherpckt, size, &numBytesWrit, &overlap)) { // Fail Boat DWORD res = GetLastError(); diff --git a/Source/Core/Core/Src/HW/BBA-TAP/Tap_Win32.h b/Source/Core/Core/Src/HW/BBA-TAP/Tap_Win32.h index a7482d5c77..2676a3fc7e 100644 --- a/Source/Core/Core/Src/HW/BBA-TAP/Tap_Win32.h +++ b/Source/Core/Core/Src/HW/BBA-TAP/Tap_Win32.h @@ -34,8 +34,8 @@ #include #include #include -#define TAP_WIN32_MIN_MAJOR 8 -#define TAP_WIN32_MIN_MINOR 1 +#define TAP_WIN32_MIN_MAJOR 9 +#define TAP_WIN32_MIN_MINOR 0 //============= // TAP IOCTLs @@ -84,4 +84,4 @@ // simultaneously. //========================================================= -#define TAP_COMPONENT_ID "tap0801" +#define TAP_COMPONENT_ID "tap0901" diff --git a/Source/Core/Core/Src/HW/EXI_DeviceEthernet.h b/Source/Core/Core/Src/HW/EXI_DeviceEthernet.h index ac05b1d8c9..edb505cbf1 100644 --- a/Source/Core/Core/Src/HW/EXI_DeviceEthernet.h +++ b/Source/Core/Core/Src/HW/EXI_DeviceEthernet.h @@ -144,13 +144,14 @@ private: volatile bool mWaiting; WriteBuffer mRecvBuffer; - u32 mRecvBufferLength; #ifdef _WIN32 HANDLE mHAdapter, mHRecvEvent, mHReadWait; DWORD mMtu; OVERLAPPED mReadOverlapped; DWORD mRecvBufferLength; static VOID CALLBACK ReadWaitCallback(PVOID lpParameter, BOOLEAN TimerFired); +#else + u32 mRecvBufferLength; #endif };