Big restructuring of how the video plugin works. In linux and windows you shouldn't see a change in the functionality; however, there are changes in how render to main or not, and fullscreen modes, and such are handled. Input is largely restructured for the video plugin. It is now handled by the host. Keys for pausing and changing fullscreen are configurable. More will probably be later. This is probably classified as highly experimental.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5336 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
1 parent
ba853e682c
commit
33a64d5db0
53 files changed
+1003
-1649
No files matched your search
@@ -90,6 +90,22 @@ void SConfig::SaveSettings()
|
||||
ini.Set("Interface", "ShowLogWindow", m_InterfaceLogWindow);
|
||||
ini.Set("Interface", "ShowConsole", m_InterfaceConsole);
|
||||
|
||||
// Hotkeys
|
||||
ini.Set("Hotkeys", "ToggleFullscreen", m_LocalCoreStartupParameter.iHotkey[HK_FULLSCREEN]);
|
||||
ini.Set("Hotkeys", "PlayPause", m_LocalCoreStartupParameter.iHotkey[HK_PLAY_PAUSE]);
|
||||
ini.Set("Hotkeys", "Stop", m_LocalCoreStartupParameter.iHotkey[HK_STOP]);
|
||||
ini.Set("Hotkeys", "ToggleFullscreenModifier", m_LocalCoreStartupParameter.iHotkeyModifier[HK_FULLSCREEN]);
|
||||
ini.Set("Hotkeys", "PlayPauseModifier", m_LocalCoreStartupParameter.iHotkeyModifier[HK_PLAY_PAUSE]);
|
||||
ini.Set("Hotkeys", "StopModifier", m_LocalCoreStartupParameter.iHotkeyModifier[HK_STOP]);
|
||||
|
||||
// Display
|
||||
ini.Set("Display", "Fullscreen", m_LocalCoreStartupParameter.bFullscreen);
|
||||
ini.Set("Display", "RenderToMain", m_LocalCoreStartupParameter.bRenderToMain);
|
||||
ini.Set("Display", "RenderWindowXPos", m_LocalCoreStartupParameter.iRenderWindowXPos);
|
||||
ini.Set("Display", "RenderWindowYPos", m_LocalCoreStartupParameter.iRenderWindowYPos);
|
||||
ini.Set("Display", "RenderWindowWidth", m_LocalCoreStartupParameter.iRenderWindowWidth);
|
||||
ini.Set("Display", "RenderWindowHeight", m_LocalCoreStartupParameter.iRenderWindowHeight);
|
||||
|
||||
// Game List Control
|
||||
ini.Set("GameList", "ListDrives", m_ListDrives);
|
||||
ini.Set("GameList", "ListWad", m_ListWad);
|
||||
@@ -198,6 +214,23 @@ void SConfig::LoadSettings()
|
||||
ini.Get("Interface", "ShowLogWindow", &m_InterfaceLogWindow, false);
|
||||
ini.Get("Interface", "ShowConsole", &m_InterfaceConsole, false);
|
||||
|
||||
// Hotkeys
|
||||
ini.Get("Hotkeys", "ToggleFullscreen", &m_LocalCoreStartupParameter.iHotkey[HK_FULLSCREEN], 13); // WXK_RETURN
|
||||
ini.Get("Hotkeys", "PlayPause", &m_LocalCoreStartupParameter.iHotkey[HK_PLAY_PAUSE], 349); // WXK_F10
|
||||
ini.Get("Hotkeys", "Stop", &m_LocalCoreStartupParameter.iHotkey[HK_STOP], 27); // WXK_ESCAPE
|
||||
ini.Get("Hotkeys", "ToggleFullscreenModifier", &m_LocalCoreStartupParameter.iHotkeyModifier[HK_FULLSCREEN], 0x0001); // wxMOD_ALT
|
||||
ini.Get("Hotkeys", "PlayPauseModifier", &m_LocalCoreStartupParameter.iHotkeyModifier[HK_PLAY_PAUSE], 0x0000); // wxMOD_NONE
|
||||
ini.Get("Hotkeys", "StopModifier", &m_LocalCoreStartupParameter.iHotkeyModifier[HK_STOP], 0x0000); // wxMOD_NONE
|
||||
|
||||
// Display
|
||||
ini.Get("Display", "Fullscreen", &m_LocalCoreStartupParameter.bFullscreen, false);
|
||||
ini.Get("Display", "RenderToMain", &m_LocalCoreStartupParameter.bRenderToMain, false);
|
||||
std::string temp;
|
||||
ini.Get("Display", "RenderWindowXPos", &m_LocalCoreStartupParameter.iRenderWindowXPos, 0);
|
||||
ini.Get("Display", "RenderWindowYPos", &m_LocalCoreStartupParameter.iRenderWindowYPos, 0);
|
||||
ini.Get("Display", "RenderWindowWidth", &m_LocalCoreStartupParameter.iRenderWindowWidth, 640);
|
||||
ini.Get("Display", "RenderWindowHeight", &m_LocalCoreStartupParameter.iRenderWindowHeight, 480);
|
||||
|
||||
// Game List Control
|
||||
ini.Get("GameList", "ListDrives", &m_ListDrives, false);
|
||||
ini.Get("GameList", "ListWad", &m_ListWad, true);
|
||||
|
||||
@@ -71,7 +71,7 @@ volatile u32 DrawnFrame = 0;
|
||||
u32 DrawnVideo = 0;
|
||||
|
||||
// Function forwarding
|
||||
//void Callback_VideoRequestWindowSize(int _iWidth, int _iHeight, BOOL _bFullscreen);
|
||||
void Callback_VideoRequestWindowSize(int& x, int& y, int& width, int& height);
|
||||
void Callback_VideoLog(const TCHAR* _szMessage, int _bDoBreak);
|
||||
void Callback_VideoCopiedToXFB(bool video_update);
|
||||
void Callback_DSPLog(const TCHAR* _szMessage, int _v);
|
||||
@@ -80,9 +80,10 @@ void Callback_DSPInterrupt();
|
||||
void Callback_PADLog(const TCHAR* _szMessage);
|
||||
void Callback_WiimoteLog(const TCHAR* _szMessage, int _v);
|
||||
void Callback_WiimoteInput(int _number, u16 _channelID, const void* _pData, u32 _Size);
|
||||
bool Callback_RendererHasFocus(void);
|
||||
|
||||
// For keyboard shortcuts.
|
||||
void Callback_KeyPress(int key, bool shift, bool control);
|
||||
void Callback_CoreMessage(int Id);
|
||||
TPeekMessages Callback_PeekMessages = NULL;
|
||||
TUpdateFPSDisplay g_pUpdateFPSDisplay = NULL;
|
||||
|
||||
@@ -322,17 +323,14 @@ THREAD_RETURN EmuThread(void *pArg)
|
||||
VideoInitialize.pScheduleEvent_Threadsafe = CoreTiming::ScheduleEvent_Threadsafe;
|
||||
// This is first the m_Panel handle, then it is updated to have the new window handle
|
||||
VideoInitialize.pWindowHandle = _CoreParameter.hMainWindow;
|
||||
#if defined(HAVE_X11) && HAVE_X11 && defined(HAVE_GTK2) && HAVE_GTK2
|
||||
VideoInitialize.pPanel = _CoreParameter.hMainWindow;
|
||||
#endif
|
||||
VideoInitialize.pLog = Callback_VideoLog;
|
||||
VideoInitialize.pSysMessage = Host_SysMessage;
|
||||
VideoInitialize.pRequestWindowSize = NULL; //Callback_VideoRequestWindowSize;
|
||||
VideoInitialize.pRequestWindowSize = Callback_VideoRequestWindowSize;
|
||||
VideoInitialize.pCopiedToXFB = Callback_VideoCopiedToXFB;
|
||||
VideoInitialize.pPeekMessages = NULL;
|
||||
VideoInitialize.pUpdateFPSDisplay = NULL;
|
||||
VideoInitialize.pMemoryBase = Memory::base;
|
||||
VideoInitialize.pKeyPress = Callback_KeyPress;
|
||||
VideoInitialize.pCoreMessage = Callback_CoreMessage;
|
||||
VideoInitialize.bWii = _CoreParameter.bWii;
|
||||
VideoInitialize.bOnThread = _CoreParameter.bCPUThread;
|
||||
VideoInitialize.Fifo_CPUBase = &ProcessorInterface::Fifo_CPUBase;
|
||||
@@ -381,11 +379,9 @@ THREAD_RETURN EmuThread(void *pArg)
|
||||
PADInitialize.hWnd = g_pWindowHandle;
|
||||
#if defined(HAVE_X11) && HAVE_X11
|
||||
PADInitialize.pXWindow = g_pXWindow;
|
||||
#if defined(HAVE_GTK2) && HAVE_GTK2
|
||||
PADInitialize.pPanel = VideoInitialize.pPanel;
|
||||
#endif
|
||||
#endif
|
||||
PADInitialize.pLog = Callback_PADLog;
|
||||
PADInitialize.pRendererHasFocus = Callback_RendererHasFocus;
|
||||
// This is may be needed to avoid a SDL problem
|
||||
//Plugins.FreeWiimote();
|
||||
Plugins.GetPad(0)->Initialize(&PADInitialize);
|
||||
@@ -396,14 +392,12 @@ THREAD_RETURN EmuThread(void *pArg)
|
||||
SWiimoteInitialize WiimoteInitialize;
|
||||
WiimoteInitialize.hWnd = g_pWindowHandle;
|
||||
#if defined(HAVE_X11) && HAVE_X11
|
||||
#if defined(HAVE_GTK2) && HAVE_GTK2
|
||||
WiimoteInitialize.pPanel = VideoInitialize.pPanel;
|
||||
#endif
|
||||
WiimoteInitialize.pXWindow = g_pXWindow;
|
||||
#endif
|
||||
WiimoteInitialize.ISOId = Ascii2Hex(_CoreParameter.m_strUniqueID);
|
||||
WiimoteInitialize.pLog = Callback_WiimoteLog;
|
||||
WiimoteInitialize.pWiimoteInput = Callback_WiimoteInput;
|
||||
WiimoteInitialize.pRendererHasFocus = Callback_RendererHasFocus;
|
||||
// Wait for Wiiuse to find the number of connected Wiimotes
|
||||
Plugins.GetWiimote(0)->Initialize((void *)&WiimoteInitialize);
|
||||
}
|
||||
@@ -711,6 +705,12 @@ void Callback_VideoCopiedToXFB(bool video_update)
|
||||
Frame::FrameUpdate();
|
||||
}
|
||||
|
||||
// Ask the host for the desired window size
|
||||
void Callback_VideoRequestWindowSize(int& x, int& y, int& width, int& height)
|
||||
{
|
||||
Host_RequestWindowSize(x, y, width, height);
|
||||
}
|
||||
|
||||
// Callback_DSPLog
|
||||
// WARNING - THIS MAY BE EXECUTED FROM DSP THREAD
|
||||
void Callback_DSPLog(const TCHAR* _szMessage, int _v)
|
||||
@@ -748,46 +748,10 @@ const char *Callback_ISOName()
|
||||
}
|
||||
|
||||
// Called from ANY thread!
|
||||
// The hotkey function
|
||||
void Callback_KeyPress(int key, bool shift, bool control)
|
||||
// Pass the message on to the host
|
||||
void Callback_CoreMessage(int Id)
|
||||
{
|
||||
// F1 - F8: Save states
|
||||
if (key >= 0x70 && key < 0x78) {
|
||||
// F-key
|
||||
int slot_number = key - 0x70 + 1;
|
||||
if (shift)
|
||||
State_Save(slot_number);
|
||||
else
|
||||
State_Load(slot_number);
|
||||
}
|
||||
|
||||
// 0x78 == VK_F9
|
||||
if (key == 0x78)
|
||||
ScreenShot();
|
||||
|
||||
// 0x7a == VK_F11
|
||||
if (key == 0x7a)
|
||||
State_LoadLastSaved();
|
||||
|
||||
// 0x7b == VK_F12
|
||||
if (key == 0x7b)
|
||||
{
|
||||
if(shift)
|
||||
State_UndoSaveState();
|
||||
else
|
||||
State_UndoLoadState();
|
||||
}
|
||||
#if defined(HAVE_X11) && HAVE_X11
|
||||
if (key == 0)
|
||||
Host_Message(WM_USER_CREATE);
|
||||
// 0x1b == VK_ESCAPE
|
||||
if (key == 0x1b)
|
||||
Host_Message(WM_USER_STOP);
|
||||
if (key == 0x1c)
|
||||
Host_Message(WM_USER_PAUSE);
|
||||
if (key == 0x1d)
|
||||
Host_Message(TOGGLE_FULLSCREEN);
|
||||
#endif
|
||||
Host_Message(Id);
|
||||
}
|
||||
|
||||
// Callback_WiimoteLog
|
||||
@@ -797,4 +761,10 @@ void Callback_WiimoteLog(const TCHAR* _szMessage, int _v)
|
||||
GENERIC_LOG(LogTypes::WIIMOTE, (LogTypes::LOG_LEVELS)_v, _szMessage);
|
||||
}
|
||||
|
||||
// Check to see if the renderer window has focus
|
||||
bool Callback_RendererHasFocus(void)
|
||||
{
|
||||
return Host_RendererHasFocus();
|
||||
}
|
||||
|
||||
} // Core
|
||||
@@ -50,6 +50,9 @@ SCoreStartupParameter::SCoreStartupParameter()
|
||||
bWii(false),
|
||||
bConfirmStop(false), bHideCursor(false),
|
||||
bAutoHideCursor(false), bUsePanicHandlers(true),
|
||||
bFullscreen(false), bRenderToMain(false),
|
||||
iRenderWindowXPos(0), iRenderWindowYPos(0),
|
||||
iRenderWindowWidth(640), iRenderWindowHeight(480),
|
||||
iTheme(0),
|
||||
iPosX(100), iPosY(100), iWidth(800), iHeight(600)
|
||||
{
|
||||
|
||||
@@ -24,6 +24,13 @@
|
||||
#define MAXPADS 1
|
||||
#define MAXWIIMOTES 1
|
||||
|
||||
enum Hotkey {
|
||||
HK_FULLSCREEN,
|
||||
HK_PLAY_PAUSE,
|
||||
HK_STOP,
|
||||
NUM_HOTKEYS,
|
||||
};
|
||||
|
||||
struct SCoreStartupParameter
|
||||
{
|
||||
void * hInstance; // HINSTANCE but we don't want to include <windows.h>
|
||||
@@ -77,6 +84,16 @@ struct SCoreStartupParameter
|
||||
|
||||
// Interface settings
|
||||
bool bConfirmStop, bHideCursor, bAutoHideCursor, bUsePanicHandlers;
|
||||
|
||||
// Hotkeys
|
||||
int iHotkey[NUM_HOTKEYS];
|
||||
int iHotkeyModifier[NUM_HOTKEYS];
|
||||
|
||||
// Display settings
|
||||
bool bFullscreen, bRenderToMain;
|
||||
int iRenderWindowXPos, iRenderWindowYPos;
|
||||
int iRenderWindowWidth, iRenderWindowHeight;
|
||||
|
||||
int iTheme;
|
||||
int iPosX, iPosY, iWidth, iHeight;
|
||||
|
||||
|
||||
@@ -45,6 +45,8 @@ void Host_NotifyMapLoaded();
|
||||
void Host_UpdateBreakPointView();
|
||||
void Host_ShowJitResults(unsigned int address);
|
||||
void Host_SetDebugMode(bool enable);
|
||||
void Host_RequestWindowSize(int& x, int& y, int& width, int& height);
|
||||
bool Host_RendererHasFocus();
|
||||
|
||||
void Host_SetWaitCursor(bool enable);
|
||||
|
||||
|
||||
@@ -601,7 +601,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventInquiryComplete()
|
||||
SHCIEventInquiryComplete* pInquiryComplete = (SHCIEventInquiryComplete*)Event.m_buffer;
|
||||
pInquiryComplete->EventType = HCI_EVENT_INQUIRY_COMPL;
|
||||
pInquiryComplete->PayloadLength = sizeof(SHCIEventInquiryComplete) - 2;
|
||||
pInquiryComplete->Status = 0x00;
|
||||
pInquiryComplete->EventStatus = 0x00;
|
||||
|
||||
AddEventToQueue(Event);
|
||||
|
||||
@@ -666,7 +666,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventConnectionComplete(const bdad
|
||||
|
||||
pConnectionComplete->EventType = HCI_EVENT_CON_COMPL;
|
||||
pConnectionComplete->PayloadLength = sizeof(SHCIEventConnectionComplete) - 2;
|
||||
pConnectionComplete->Status = 0x00;
|
||||
pConnectionComplete->EventStatus = 0x00;
|
||||
pConnectionComplete->Connection_Handle = pWiiMote->GetConnectionHandle();
|
||||
pConnectionComplete->bdaddr = _bd;
|
||||
pConnectionComplete->LinkType = HCI_LINK_ACL;
|
||||
@@ -745,7 +745,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventDisconnect(u16 _connectionHan
|
||||
SHCIEventDisconnectCompleted* pDisconnect = (SHCIEventDisconnectCompleted*)Event.m_buffer;
|
||||
pDisconnect->EventType = HCI_EVENT_DISCON_COMPL;
|
||||
pDisconnect->PayloadLength = sizeof(SHCIEventDisconnectCompleted) - 2;
|
||||
pDisconnect->Status = 0;
|
||||
pDisconnect->EventStatus = 0;
|
||||
pDisconnect->Connection_Handle = _connectionHandle;
|
||||
pDisconnect->Reason = _Reason;
|
||||
|
||||
@@ -770,7 +770,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventAuthenticationCompleted(u16 _
|
||||
SHCIEventAuthenticationCompleted* pEventAuthenticationCompleted = (SHCIEventAuthenticationCompleted*)Event.m_buffer;
|
||||
pEventAuthenticationCompleted->EventType = HCI_EVENT_AUTH_COMPL;
|
||||
pEventAuthenticationCompleted->PayloadLength = sizeof(SHCIEventAuthenticationCompleted) - 2;
|
||||
pEventAuthenticationCompleted->Status = 0;
|
||||
pEventAuthenticationCompleted->EventStatus = 0;
|
||||
pEventAuthenticationCompleted->Connection_Handle = _connectionHandle;
|
||||
|
||||
// Log
|
||||
@@ -794,7 +794,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventRemoteNameReq(const bdaddr_t&
|
||||
|
||||
pRemoteNameReq->EventType = HCI_EVENT_REMOTE_NAME_REQ_COMPL;
|
||||
pRemoteNameReq->PayloadLength = sizeof(SHCIEventRemoteNameReq) - 2;
|
||||
pRemoteNameReq->Status = 0x00;
|
||||
pRemoteNameReq->EventStatus = 0x00;
|
||||
pRemoteNameReq->bdaddr = _bd;
|
||||
strcpy((char*)pRemoteNameReq->RemoteName, pWiiMote->GetName());
|
||||
|
||||
@@ -821,7 +821,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventReadRemoteFeatures(u16 _conne
|
||||
|
||||
pReadRemoteFeatures->EventType = HCI_EVENT_READ_REMOTE_FEATURES_COMPL;
|
||||
pReadRemoteFeatures->PayloadLength = sizeof(SHCIEventReadRemoteFeatures) - 2;
|
||||
pReadRemoteFeatures->Status = 0x00;
|
||||
pReadRemoteFeatures->EventStatus = 0x00;
|
||||
pReadRemoteFeatures->ConnectionHandle = _connectionHandle;
|
||||
pReadRemoteFeatures->features[0] = pWiiMote->GetFeatures()[0];
|
||||
pReadRemoteFeatures->features[1] = pWiiMote->GetFeatures()[1];
|
||||
@@ -856,7 +856,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventReadRemoteVerInfo(u16 _connec
|
||||
SHCIEventReadRemoteVerInfo* pReadRemoteVerInfo = (SHCIEventReadRemoteVerInfo*)Event.m_buffer;
|
||||
pReadRemoteVerInfo->EventType = HCI_EVENT_READ_REMOTE_VER_INFO_COMPL;
|
||||
pReadRemoteVerInfo->PayloadLength = sizeof(SHCIEventReadRemoteVerInfo) - 2;
|
||||
pReadRemoteVerInfo->Status = 0x00;
|
||||
pReadRemoteVerInfo->EventStatus = 0x00;
|
||||
pReadRemoteVerInfo->ConnectionHandle = _connectionHandle;
|
||||
pReadRemoteVerInfo->lmp_version = pWiiMote->GetLMPVersion();
|
||||
pReadRemoteVerInfo->manufacturer = pWiiMote->GetManufactorID();
|
||||
@@ -914,7 +914,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventCommandStatus(u16 _Opcode)
|
||||
SHCIEventStatus* pHCIEvent = (SHCIEventStatus*)Event.m_buffer;
|
||||
pHCIEvent->EventType = HCI_EVENT_COMMAND_STATUS;
|
||||
pHCIEvent->PayloadLength = sizeof(SHCIEventStatus) - 2;
|
||||
pHCIEvent->Status = 0x0;
|
||||
pHCIEvent->EventStatus = 0x0;
|
||||
pHCIEvent->PacketIndicator = 0x01;
|
||||
pHCIEvent->Opcode = _Opcode;
|
||||
|
||||
@@ -947,7 +947,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventRoleChange(bdaddr_t _bd, bool
|
||||
|
||||
pRoleChange->EventType = HCI_EVENT_ROLE_CHANGE;
|
||||
pRoleChange->PayloadLength = sizeof(SHCIEventRoleChange) - 2;
|
||||
pRoleChange->Status = 0x00;
|
||||
pRoleChange->EventStatus = 0x00;
|
||||
pRoleChange->bdaddr = _bd;
|
||||
pRoleChange->NewRole = _master ? 0x00 : 0x01;
|
||||
|
||||
@@ -1002,7 +1002,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventModeChange(u16 _connectionHan
|
||||
SHCIEventModeChange* pModeChange = (SHCIEventModeChange*)Event.m_buffer;
|
||||
pModeChange->EventType = HCI_EVENT_MODE_CHANGE;
|
||||
pModeChange->PayloadLength = sizeof(SHCIEventModeChange) - 2;
|
||||
pModeChange->Status = 0;
|
||||
pModeChange->EventStatus = 0;
|
||||
pModeChange->Connection_Handle = _connectionHandle;
|
||||
pModeChange->CurrentMode = _mode;
|
||||
pModeChange->Value = _value;
|
||||
@@ -1074,7 +1074,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventReadClockOffsetComplete(u16 _
|
||||
SHCIEventReadClockOffsetComplete* pReadClockOffsetComplete = (SHCIEventReadClockOffsetComplete*)Event.m_buffer;
|
||||
pReadClockOffsetComplete->EventType = HCI_EVENT_READ_CLOCK_OFFSET_COMPL;
|
||||
pReadClockOffsetComplete->PayloadLength = sizeof(SHCIEventReadClockOffsetComplete) - 2;
|
||||
pReadClockOffsetComplete->Status = 0x00;
|
||||
pReadClockOffsetComplete->EventStatus = 0x00;
|
||||
pReadClockOffsetComplete->ConnectionHandle = _connectionHandle;
|
||||
pReadClockOffsetComplete->ClockOffset = 0x3818;
|
||||
|
||||
@@ -1099,7 +1099,7 @@ bool CWII_IPC_HLE_Device_usb_oh1_57e_305::SendEventConPacketTypeChange(u16 _conn
|
||||
SHCIEventConPacketTypeChange* pChangeConPacketType = (SHCIEventConPacketTypeChange*)Event.m_buffer;
|
||||
pChangeConPacketType->EventType = HCI_EVENT_CON_PKT_TYPE_CHANGED;
|
||||
pChangeConPacketType->PayloadLength = sizeof(SHCIEventConPacketTypeChange) - 2;
|
||||
pChangeConPacketType->Status = 0x00;
|
||||
pChangeConPacketType->EventStatus = 0x00;
|
||||
pChangeConPacketType->ConnectionHandle = _connectionHandle;
|
||||
pChangeConPacketType->PacketType = _packetType;
|
||||
|
||||
|
||||
@@ -2407,7 +2407,7 @@ struct SHCIEventStatus
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
u8 PacketIndicator;
|
||||
u16 Opcode;
|
||||
};
|
||||
@@ -2423,14 +2423,14 @@ struct SHCIEventInquiryComplete
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
};
|
||||
|
||||
struct SHCIEventReadClockOffsetComplete
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
u16 ConnectionHandle;
|
||||
u16 ClockOffset;
|
||||
};
|
||||
@@ -2439,7 +2439,7 @@ struct SHCIEventConPacketTypeChange
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
u16 ConnectionHandle;
|
||||
u16 PacketType;
|
||||
};
|
||||
@@ -2448,7 +2448,7 @@ struct SHCIEventReadRemoteVerInfo
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
u16 ConnectionHandle;
|
||||
u8 lmp_version;
|
||||
u16 manufacturer;
|
||||
@@ -2459,7 +2459,7 @@ struct SHCIEventReadRemoteFeatures
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
u16 ConnectionHandle;
|
||||
u8 features[HCI_FEATURES_SIZE];
|
||||
};
|
||||
@@ -2468,7 +2468,7 @@ struct SHCIEventRemoteNameReq
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
bdaddr_t bdaddr;
|
||||
u8 RemoteName[248];
|
||||
};
|
||||
@@ -2486,7 +2486,7 @@ struct SHCIEventConnectionComplete
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
u16 Connection_Handle;
|
||||
bdaddr_t bdaddr;
|
||||
u8 LinkType;
|
||||
@@ -2497,7 +2497,7 @@ struct SHCIEventRoleChange
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
bdaddr_t bdaddr;
|
||||
u8 NewRole;
|
||||
};
|
||||
@@ -2515,7 +2515,7 @@ struct SHCIEventAuthenticationCompleted
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
u16 Connection_Handle;
|
||||
};
|
||||
|
||||
@@ -2524,7 +2524,7 @@ struct SHCIEventModeChange
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
u16 Connection_Handle;
|
||||
u8 CurrentMode;
|
||||
u16 Value;
|
||||
@@ -2535,7 +2535,7 @@ struct SHCIEventDisconnectCompleted
|
||||
{
|
||||
u8 EventType;
|
||||
u8 PayloadLength;
|
||||
u8 Status;
|
||||
u8 EventStatus;
|
||||
u16 Connection_Handle;
|
||||
u8 Reason;
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user