fix some sloppy stuff in wifi that made its savestates unreliable
This commit is contained in:
parent
fe8c424c4a
commit
43b00fb2a0
|
@ -4434,13 +4434,6 @@ void WifiHandler::Reset()
|
||||||
_wifi.io.BSSID[4] = 0xFF;
|
_wifi.io.BSSID[4] = 0xFF;
|
||||||
_wifi.io.BSSID[5] = 0xFF;
|
_wifi.io.BSSID[5] = 0xFF;
|
||||||
|
|
||||||
_wifi.txPacketInfo[0].txLocation = &_wifi.io.TXBUF_LOC1;
|
|
||||||
_wifi.txPacketInfo[1].txLocation = &_wifi.io.TXBUF_CMD;
|
|
||||||
_wifi.txPacketInfo[2].txLocation = &_wifi.io.TXBUF_LOC2;
|
|
||||||
_wifi.txPacketInfo[3].txLocation = &_wifi.io.TXBUF_LOC3;
|
|
||||||
_wifi.txPacketInfo[4].txLocation = &_wifi.io.TXBUF_BEACON;
|
|
||||||
_wifi.txPacketInfo[5].txLocation = &_wifi.io.TXBUF_REPLY2;
|
|
||||||
|
|
||||||
this->_didWarnWFCUser = false;
|
this->_didWarnWFCUser = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -210,7 +210,7 @@ struct slock;
|
||||||
typedef slock slock_t;
|
typedef slock slock_t;
|
||||||
|
|
||||||
// RF2958 Register Addresses
|
// RF2958 Register Addresses
|
||||||
enum RegAddrRF2958
|
enum RegAddrRF2958 : s32
|
||||||
{
|
{
|
||||||
REG_RF2958_CFG1 = 0,
|
REG_RF2958_CFG1 = 0,
|
||||||
REG_RF2958_IPLL1 = 1,
|
REG_RF2958_IPLL1 = 1,
|
||||||
|
@ -753,7 +753,7 @@ typedef struct
|
||||||
u8 data[105];
|
u8 data[105];
|
||||||
} bb_t;
|
} bb_t;
|
||||||
|
|
||||||
enum WifiRFStatus
|
enum WifiRFStatus : s32
|
||||||
{
|
{
|
||||||
WifiRFStatus0_Initial = 0,
|
WifiRFStatus0_Initial = 0,
|
||||||
WifiRFStatus1_TXComplete = 1,
|
WifiRFStatus1_TXComplete = 1,
|
||||||
|
@ -767,7 +767,7 @@ enum WifiRFStatus
|
||||||
WifiRFStatus9_Idle = 9
|
WifiRFStatus9_Idle = 9
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WifiIRQ
|
enum WifiIRQ : s32
|
||||||
{
|
{
|
||||||
WifiIRQ00_RXComplete = 0,
|
WifiIRQ00_RXComplete = 0,
|
||||||
WifiIRQ01_TXComplete = 1,
|
WifiIRQ01_TXComplete = 1,
|
||||||
|
@ -787,14 +787,14 @@ enum WifiIRQ
|
||||||
WifiIRQ15_TimeslotPreBeacon = 15
|
WifiIRQ15_TimeslotPreBeacon = 15
|
||||||
};
|
};
|
||||||
|
|
||||||
enum EAPStatus
|
enum EAPStatus : s32
|
||||||
{
|
{
|
||||||
APStatus_Disconnected = 0,
|
APStatus_Disconnected = 0,
|
||||||
APStatus_Authenticated,
|
APStatus_Authenticated,
|
||||||
APStatus_Associated
|
APStatus_Associated
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WifiTXLocIndex
|
enum WifiTXLocIndex : s32
|
||||||
{
|
{
|
||||||
WifiTXLocIndex_LOC1 = 0,
|
WifiTXLocIndex_LOC1 = 0,
|
||||||
WifiTXLocIndex_CMD = 1,
|
WifiTXLocIndex_CMD = 1,
|
||||||
|
@ -804,7 +804,7 @@ enum WifiTXLocIndex
|
||||||
WifiTXLocIndex_CMDREPLY = 5
|
WifiTXLocIndex_CMDREPLY = 5
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WifiStageID
|
enum WifiStageID : s32
|
||||||
{
|
{
|
||||||
WifiStageID_PreambleDone = 0,
|
WifiStageID_PreambleDone = 0,
|
||||||
WifiStageID_TransmitDone = 1,
|
WifiStageID_TransmitDone = 1,
|
||||||
|
@ -813,14 +813,14 @@ enum WifiStageID
|
||||||
WifiStageID_CmdReplyTransferDone = 4
|
WifiStageID_CmdReplyTransferDone = 4
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WifiEmulationLevel
|
enum WifiEmulationLevel : s32
|
||||||
{
|
{
|
||||||
WifiEmulationLevel_Off = 0,
|
WifiEmulationLevel_Off = 0,
|
||||||
WifiEmulationLevel_Normal = 10000,
|
WifiEmulationLevel_Normal = 10000,
|
||||||
WifiEmulationLevel_Compatibility = 65535
|
WifiEmulationLevel_Compatibility = 65535
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WifiCommInterfaceID
|
enum WifiCommInterfaceID : s32
|
||||||
{
|
{
|
||||||
WifiCommInterfaceID_AdHoc = 0,
|
WifiCommInterfaceID_AdHoc = 0,
|
||||||
WifiCommInterfaceID_Infrastructure = 1
|
WifiCommInterfaceID_Infrastructure = 1
|
||||||
|
@ -2773,9 +2773,11 @@ typedef struct
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
IOREG_W_TXBUF_LOCATION *txLocation;
|
//do not do this. it will break savestates (pointer sizes may vary, and what sense does it make to save them anyway).
|
||||||
size_t emuPacketLength;
|
//if this is needed later once somebody makes wifi work later, use some integer to ID the packet kind and look up the correct TXBUF from that
|
||||||
size_t remainingBytes;
|
//IOREG_W_TXBUF_LOCATION *txLocation;
|
||||||
|
u32 emuPacketLength;
|
||||||
|
u32 remainingBytes;
|
||||||
} TXPacketInfo;
|
} TXPacketInfo;
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
|
@ -2820,14 +2822,14 @@ typedef struct
|
||||||
} DesmumeFrameHeader; // Should total 16 bytes
|
} DesmumeFrameHeader; // Should total 16 bytes
|
||||||
|
|
||||||
// IEEE 802.11 Frame Information
|
// IEEE 802.11 Frame Information
|
||||||
enum WifiFrameType
|
enum WifiFrameType : s32
|
||||||
{
|
{
|
||||||
WifiFrameType_Management = 0,
|
WifiFrameType_Management = 0,
|
||||||
WifiFrameType_Control = 1,
|
WifiFrameType_Control = 1,
|
||||||
WifiFrameType_Data = 2
|
WifiFrameType_Data = 2
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WifiFrameManagementSubtype
|
enum WifiFrameManagementSubtype : s32
|
||||||
{
|
{
|
||||||
WifiFrameManagementSubtype_AssociationRequest = 0x00,
|
WifiFrameManagementSubtype_AssociationRequest = 0x00,
|
||||||
WifiFrameManagementSubtype_AssociationResponse = 0x01,
|
WifiFrameManagementSubtype_AssociationResponse = 0x01,
|
||||||
|
@ -2847,7 +2849,7 @@ enum WifiFrameManagementSubtype
|
||||||
WifiFrameManagementSubtype_RESERVED0F = 0x0F
|
WifiFrameManagementSubtype_RESERVED0F = 0x0F
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WifiFrameControlSubtype
|
enum WifiFrameControlSubtype : s32
|
||||||
{
|
{
|
||||||
WifiFrameControlSubtype_RESERVED00 = 0x00,
|
WifiFrameControlSubtype_RESERVED00 = 0x00,
|
||||||
WifiFrameControlSubtype_RESERVED01 = 0x01,
|
WifiFrameControlSubtype_RESERVED01 = 0x01,
|
||||||
|
@ -2867,7 +2869,7 @@ enum WifiFrameControlSubtype
|
||||||
WifiFrameControlSubtype_EndAck = 0x0F
|
WifiFrameControlSubtype_EndAck = 0x0F
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WifiFrameDataSubtype
|
enum WifiFrameDataSubtype : s32
|
||||||
{
|
{
|
||||||
WifiFrameDataSubtype_Data = 0x00,
|
WifiFrameDataSubtype_Data = 0x00,
|
||||||
WifiFrameDataSubtype_DataAck = 0x01,
|
WifiFrameDataSubtype_DataAck = 0x01,
|
||||||
|
@ -2887,7 +2889,7 @@ enum WifiFrameDataSubtype
|
||||||
WifiFrameDataSubtype_RESERVED0F = 0x0F
|
WifiFrameDataSubtype_RESERVED0F = 0x0F
|
||||||
};
|
};
|
||||||
|
|
||||||
enum WifiFCFromToState
|
enum WifiFCFromToState : s32
|
||||||
{
|
{
|
||||||
WifiFCFromToState_STA2STA = 0x0,
|
WifiFCFromToState_STA2STA = 0x0,
|
||||||
WifiFCFromToState_STA2DS = 0x1,
|
WifiFCFromToState_STA2DS = 0x1,
|
||||||
|
|
Loading…
Reference in New Issue