diff --git a/headers/os/device/Joystick.h b/headers/os/device/Joystick.h index 1c3baecddc..615a8e3768 100644 --- a/headers/os/device/Joystick.h +++ b/headers/os/device/Joystick.h @@ -5,13 +5,10 @@ #ifndef _JOYSTICK_H #define _JOYSTICK_H -#include + #include #include -#if DEBUG -#include -#endif class BList; class BString; @@ -20,6 +17,7 @@ struct entry_ref; struct _extended_joystick; struct _joystick_info; + class BJoystick { public: BJoystick(); @@ -35,7 +33,7 @@ public: bigtime_t timestamp; int16 horizontal; int16 vertical; - + bool button1; bool button2; @@ -58,12 +56,12 @@ public: int32 forStick = 0); status_t GetAxisNameAt(int32 index, BString* outName); - + int32 CountHats(); status_t GetHatValues(uint8* outHats, int32 forStick = 0); status_t GetHatNameAt(int32 index, BString* outName); - + int32 CountButtons(); uint32 ButtonValues(int32 forStick = 0); @@ -80,16 +78,20 @@ friend class _BJoystickTweaker; status_t GatherEnhanced_info(const entry_ref* ref = NULL); status_t SaveConfig(const entry_ref* ref = NULL); + void _ReservedJoystick1(); + virtual void _ReservedJoystick2(); + virtual void _ReservedJoystick3(); + virtual status_t _Reserved_Joystick_4(void *, ...); + virtual status_t _Reserved_Joystick_5(void *, ...); + virtual status_t _Reserved_Joystick_6(void *, ...); + bool fBeBoxMode; bool fReservedBool; int ffd; BList* fDevices; _joystick_info* fJoystickInfo; char* fDevName; -#if DEBUG -public: - static FILE* sLogFile; -#endif + uint32 _reserved_Joystick_[10]; }; #endif // _JOYSTICK_H diff --git a/src/kits/device/Joystick.cpp b/src/kits/device/Joystick.cpp index 00159291c2..430ea494fa 100644 --- a/src/kits/device/Joystick.cpp +++ b/src/kits/device/Joystick.cpp @@ -4,6 +4,7 @@ * Distributed under the terms of the MIT License. */ + #include #include "Joystick.h" @@ -30,8 +31,11 @@ LOG(const char *fmt, ...) va_end(ap); fputs(buf, BJoystick::sLogFile); fflush(BJoystick::sLogFile); } + # define LOG_ERR(text...) LOG(text) -FILE *BJoystick::sLogFile = NULL; + +static FILE *sLogFile = NULL; + #else # define LOG(text...) # define LOG_ERR(text...) fprintf(stderr, text) @@ -112,14 +116,14 @@ BJoystick::Open(const char *portName, bool enter_enhanced) //Read the Joystick Description file for this port/joystick _BJoystickTweaker jt(*this); jt.GetInfo(fJoystickInfo, portName); - + LOG("ioctl - %d\n", fJoystickInfo->num_buttons); ioctl(ffd, B_JOYSTICK_SET_DEVICE_MODULE, fJoystickInfo); ioctl(ffd, B_JOYSTICK_GET_DEVICE_MODULE, fJoystickInfo); LOG("ioctl - %d\n", fJoystickInfo->num_buttons); - + return ffd; - } else + } else return errno; } @@ -152,7 +156,7 @@ BJoystick::CountDevices() // Refresh devices list ScanDevices(true); - + int32 count = 0; if (fDevices != NULL) count = fDevices->CountItems(); @@ -361,3 +365,13 @@ BJoystick::SaveConfig(const entry_ref *ref) return B_ERROR; } + +// #pragma mark - FBC protection + + +void BJoystick::_ReservedJoystick1() {} +void BJoystick::_ReservedJoystick2() {} +void BJoystick::_ReservedJoystick3() {} +status_t BJoystick::_Reserved_Joystick_4(void*, ...) { return B_ERROR; } +status_t BJoystick::_Reserved_Joystick_5(void*, ...) { return B_ERROR; } +status_t BJoystick::_Reserved_Joystick_6(void*, ...) { return B_ERROR; }