Riot - yeah, err, i do too. That doesnt mean you dont have to set your mingw enviornment paths.
Oh, and the dll comes with a .def file thats alot different from the one produced by pexports:
.def file that comes with it:
LIBRARY P5DLL
DESCRIPTION "P5 Absolute Mode Driver"
EXPORTS
??0CP5DLL@@QAE@XZ @1
P5_Close @22
P5_Init @23
P5_SetClickSensitivity @24
P5_GetClickSensitivity @25
P5_SaveBendSensors @26
P5_CalibrateBendSensors @27
P5_CalibratePositionData @28
P5_GetMouseState @29
P5_SetMouseState @30
P5_SetMouseStickTime @31
P5_GetMouseStickTime @32
P5_GetMouseButtonAllocation @33
P5_SetMouseButtonAllocation @34
P5_GetLastError @35
P5_GetCount @36
P5_GetDataPointer @37
P5_GetStatePointer @38
P5_GetInfoPointer @39
P5_GetCP5DLL @40
P5_GetCP5 @41
P5_GetPrivatePointer @42
Java_com_essentialreality_CP5DLL_00024P5State_update @43
Java_com_essentialreality_CP5DLL_P5_1Close @44
Java_com_essentialreality_CP5DLL_P5_1Doit @45
Java_com_essentialreality_CP5DLL_P5_1SetClickSensitivity @46
Java_com_essentialreality_CP5DLL_P5_1GetClickSensitivity @47
Java_com_essentialreality_CP5DLL_P5_1SaveBendSensors @48
Java_com_essentialreality_CP5DLL_P5_1CalibrateBendSensors @49
Java_com_essentialreality_CP5DLL_P5_1CalibratePositionData @50
Java_com_essentialreality_CP5DLL_P5_1GetMouseState @51
Java_com_essentialreality_CP5DLL_P5_1SetMouseState @52
Java_com_essentialreality_CP5DLL_P5_1SetMouseStickTime @53
Java_com_essentialreality_CP5DLL_P5_1GetMouseStickTime @54
Java_com_essentialreality_CP5DLL_P5_1GetMouseButtonAllocation @55
Java_com_essentialreality_CP5DLL_P5_1SetMouseButtonAllocation @56
Java_com_essentialreality_CP5DLL_P5_1GetLastError @57
Java_com_essentialreality_CP5DLL_00024P5Data_update @58
Java_com_essentialreality_CP5DLL_00024P5Data_updateFull @59
Java_com_essentialreality_CP5DLL_00024P5Info_update @60
P5_GetACAdaptorStatus @61
P5_GetBendCalibration @62
P5_GetRawFingerBends @63
P5_GetCalibrationData @64
P5_SetUnits @65
P5_SetForwardZ @66
P5_SetTowerPos @67
P5_SetTowerRotMat @68
P5_TiltTowerForward @69
P5_SpinTowerRight @70
P5_TiltTowerRight @71
P5_SetSensitivity @72
P5_SetLedPos @73
P5_SetGlovePos @74
P5_SetGloveRotMat @75
P5_PitchGlove @76
P5_YawGlove @77
P5_RollGlove @78
P5_SetInterfaceMode @79
P5_SetFilterMode @80
P5_SetFilterAmount @81
P5_ClearArchive @82
P5_SetRequiredAccuracy @83
P5_SetPrediction @84
P5_RestoreMouse @85
P5_UnRestoreMouse @86
P5_SetFeature @87
P5_SetFeatureReport @88
P5_GetFeature @89
P5_GetFeatureReport @90
P5_GetData @91
P5_GetState @92
P5_GetInfo @93
P5_GetAbsolutePos @94
P5_GetRelativePos @95
P5_GetRelativeAvgPos @96
P5_GetRotation @97
P5_GetFingerBends @98
P5_GetButtons @99
P5_GetThreadStatus @100
Java_com_essentialreality_CP5DLL_P5_1GetACAdaptorStatus @101
Java_com_essentialreality_CP5DLL_P5_1SetUnits @102
Java_com_essentialreality_CP5DLL_P5_1SetForwardZ @103
Java_com_essentialreality_CP5DLL_P5_1SetTowerPos @104
Java_com_essentialreality_CP5DLL_P5_1TiltTowerForward @105
Java_com_essentialreality_CP5DLL_P5_1SpinTowerRight @106
Java_com_essentialreality_CP5DLL_P5_1TiltTowerRight @107
Java_com_essentialreality_CP5DLL_P5_1SetSensitivity @108
Java_com_essentialreality_CP5DLL_P5_1SetLedPos @109
Java_com_essentialreality_CP5DLL_P5_1SetGlovePos @110
Java_com_essentialreality_CP5DLL_P5_1PitchGlove @111
Java_com_essentialreality_CP5DLL_P5_1YawGlove @112
Java_com_essentialreality_CP5DLL_P5_1RollGlove @113
Java_com_essentialreality_CP5DLL_P5_1SetInterfaceMode @114
Java_com_essentialreality_CP5DLL_P5_1SetFilterMode @115
Java_com_essentialreality_CP5DLL_P5_1SetFilterAmount @116
Java_com_essentialreality_CP5DLL_P5_1ClearArchive @117
Java_com_essentialreality_CP5DLL_P5_1SetRequiredAccuracy @118
Java_com_essentialreality_CP5DLL_P5_1SetPrediction @119
Java_com_essentialreality_CP5DLL_P5_1RestoreMouse @120
Java_com_essentialreality_CP5DLL_P5_1UnRestoreMouse @121
P5_SetTrackerUnwarp @122
P5_GetTrackerUnwarp @123Def file produced:
LIBRARY P5DLL.dll
EXPORTS
??0CP5DLL@@QAE@XZ
??1CP5DLL@@QAE@XZ
??4CEnumerator@@QAEAAV0@ABV0@@Z
??4CP5DLL@@QAEAAV0@ABV0@@Z
?CloseHidDevice@CEnumerator@@QAEXPAU_HID_DEVICE@@@Z
?FindHidDevice@CEnumerator@@QAE_NPAPAU_HID_DEVICE@@PAK@Z
?OpenHidDevice@CEnumerator@@AAEEPAXPAU_SP_DEVICE_INTERFACE_DATA@@PAU_HID_DEVICE@@@Z
?P5_CalibrateBendSensors@CP5DLL@@QAEXH@Z
?P5_CalibratePositionData@CP5DLL@@QAEXH@Z
?P5_Close@CP5DLL@@QAEXXZ
?P5_GetClickSensitivity@CP5DLL@@QAEXHPAH00@Z
?P5_GetLastError@CP5DLL@@QAEIPAH0@Z
?P5_GetMouseButtonAllocation@CP5DLL@@QAEXHPAH00@Z
?P5_GetMouseState@CP5DLL@@QAEIH@Z
?P5_GetMouseStickTime@CP5DLL@@QAEHH@Z
?P5_Init@CP5DLL@@QAEIXZ
?P5_SaveBendSensors@CP5DLL@@QAEXH@Z
?P5_SetClickSensitivity@CP5DLL@@QAEXHEEE@Z
?P5_SetMouseButtonAllocation@CP5DLL@@QAEXHHHH@Z
?P5_SetMouseState@CP5DLL@@QAEXHI@Z
?P5_SetMouseStickTime@CP5DLL@@QAEXHE@Z
Java_com_essentialreality_CP5DLL_00024P5Data_update
Java_com_essentialreality_CP5DLL_00024P5Data_updateFull
Java_com_essentialreality_CP5DLL_00024P5Info_update
Java_com_essentialreality_CP5DLL_00024P5State_update
Java_com_essentialreality_CP5DLL_P5_1CalibrateBendSensors
Java_com_essentialreality_CP5DLL_P5_1CalibratePositionData
Java_com_essentialreality_CP5DLL_P5_1ClearArchive
Java_com_essentialreality_CP5DLL_P5_1Close
Java_com_essentialreality_CP5DLL_P5_1Doit
Java_com_essentialreality_CP5DLL_P5_1GetACAdaptorStatus
Java_com_essentialreality_CP5DLL_P5_1GetClickSensitivity
Java_com_essentialreality_CP5DLL_P5_1GetLastError
Java_com_essentialreality_CP5DLL_P5_1GetMouseButtonAllocation
Java_com_essentialreality_CP5DLL_P5_1GetMouseState
Java_com_essentialreality_CP5DLL_P5_1GetMouseStickTime
Java_com_essentialreality_CP5DLL_P5_1PitchGlove
Java_com_essentialreality_CP5DLL_P5_1RestoreMouse
Java_com_essentialreality_CP5DLL_P5_1RollGlove
Java_com_essentialreality_CP5DLL_P5_1SaveBendSensors
Java_com_essentialreality_CP5DLL_P5_1SetClickSensitivity
Java_com_essentialreality_CP5DLL_P5_1SetFilterAmount
Java_com_essentialreality_CP5DLL_P5_1SetFilterMode
Java_com_essentialreality_CP5DLL_P5_1SetForwardZ
Java_com_essentialreality_CP5DLL_P5_1SetGlovePos
Java_com_essentialreality_CP5DLL_P5_1SetInterfaceMode
Java_com_essentialreality_CP5DLL_P5_1SetLedPos
Java_com_essentialreality_CP5DLL_P5_1SetMouseButtonAllocation
Java_com_essentialreality_CP5DLL_P5_1SetMouseState
Java_com_essentialreality_CP5DLL_P5_1SetMouseStickTime
Java_com_essentialreality_CP5DLL_P5_1SetPrediction
Java_com_essentialreality_CP5DLL_P5_1SetRequiredAccuracy
Java_com_essentialreality_CP5DLL_P5_1SetSensitivity
Java_com_essentialreality_CP5DLL_P5_1SetTowerPos
Java_com_essentialreality_CP5DLL_P5_1SetUnits
Java_com_essentialreality_CP5DLL_P5_1SpinTowerRight
Java_com_essentialreality_CP5DLL_P5_1TiltTowerForward
Java_com_essentialreality_CP5DLL_P5_1TiltTowerRight
Java_com_essentialreality_CP5DLL_P5_1UnRestoreMouse
Java_com_essentialreality_CP5DLL_P5_1YawGlove
P5_CalibrateBendSensors
P5_CalibratePositionData
P5_ClearArchive
P5_Close
P5_GetACAdaptorStatus
P5_GetAbsolutePos
P5_GetBendCalibration
P5_GetButtons
P5_GetCP5
P5_GetCP5DLL
P5_GetCalibrationData
P5_GetClickSensitivity
P5_GetCount
P5_GetData
P5_GetDataPointer
P5_GetFeature
P5_GetFeatureReport
P5_GetFingerBends
P5_GetInfo
P5_GetInfoPointer
P5_GetLastError
P5_GetMouseButtonAllocation
P5_GetMouseState
P5_GetMouseStickTime
P5_GetPrivatePointer
P5_GetRawFingerBends
P5_GetRelativeAvgPos
P5_GetRelativePos
P5_GetRotation
P5_GetState
P5_GetStatePointer
P5_GetThreadStatus
P5_GetTrackerUnwarp
P5_Init
P5_PitchGlove
P5_RestoreMouse
P5_RollGlove
P5_SaveBendSensors
P5_SetClickSensitivity
P5_SetFeature
P5_SetFeatureReport
P5_SetFilterAmount
P5_SetFilterMode
P5_SetForwardZ
P5_SetGlovePos
P5_SetGloveRotMat
P5_SetInterfaceMode
P5_SetLedPos
P5_SetMouseButtonAllocation
P5_SetMouseState
P5_SetMouseStickTime
P5_SetPrediction
P5_SetRequiredAccuracy
P5_SetSensitivity
P5_SetTowerPos
P5_SetTowerRotMat
P5_SetTrackerUnwarp
P5_SetUnits
P5_SpinTowerRight
P5_TiltTowerForward
P5_TiltTowerRight
P5_UnRestoreMouse
P5_YawGlove
Not sure which ones right.
Oh, and for reference,
p5.d.i produced by blitzmax
import brl.blitz
P5HEAD_SEPARATION#=51.2#
P5_THUMB=0
P5_INDEX=1
P5_MIDDLE=2
P5_RING=3
P5_PINKY=4
P5_FILTER_NONE=0
P5_FILTER_DEADBAND=1
P5_FILTER_AVERAGE=2
P5_FILTER_DEADBEND=1
P5ERROR_NONE=0
P5ERROR_NOP5DETECTED=1
P5ERROR_P5DISCONNECTED=2
P5ERROR_P5CONNECTED=3
P5ERROR_INVALID_P5ID=4
P5ERROR_INVALID_P5GLOVETYPE=5
P5ERROR_WRONGFIRMWAREVER=6
P5ERROR_EXCEPTION=7
P5ERROR_GETTIME=8
P5ERROR_PARSEBEND=9
P5ERROR_PARSEBUTTONS=10
P5ERROR_PARSELEDNUM=11
P5ERROR_PARSELED=12
P5ERROR_UNWARP=13
P5ERROR_PROCESS=14
P5ERROR_PROCESSROTATION=15
P5ERROR_PROCESSRELATIVEPOSITION=16
P5ERROR_PROCESSRELATIVEAVGPOSITION=17
P5ERROR_PROCESSROTATIONREAL=18
P5ERROR_PROCESSABSOLUTEPOSITION=19
P5ERROR_PROCESSLEDPOSITIONS=20
P5ERROR_INTERNAL=21
P5GLOVETYPE_RIGHTHAND=0
P5GLOVETYPE_LEFTHAND=1
P5GLOVEBACKWARDS_NOT=0
P5GLOVEBACKWARDS_THUMBLITTLE=1
P5GLOVEBACKWARDS_NOTHUMB=2
P5GLOVEBACKWARDS_UPSIDEDOWN=3
P5GLOVEBACKWARDS_DONTWORRY=4
P5_UNITS=1
P5_CM#=0.0496094#
P5_MM#=0.496094#
P5_INCHES#=0.0195313#
P5_FEET#=0.0016276#
P5_M#=0.000496094#
P5_KM#=4.96094e-007#
P5_SECONDS#=1#
P5_MINUTES#=0.0166667#
P5_HOURS#=0.000277778#
P5_FRAME#=0.0239808#
P5_KPH#=0.00178594#
P5_MPS#=0.000496094#
P5_MPSPS#=0.000496094#
P5_DEGREES#=1#
P5_RADIANS#=0.0174533#
P5_REVOLUTIONS#=0.00277778#
P5MODE_RELATIVE=0
P5MODE_ABSOLUTE=1
P5MODE_RELATIVEAVG=2
P5MODE_FILTERED=3
P5MODE_LED0=4
P5MODE_LED1=5
P5MODE_LED2=6
P5MODE_LED3=7
P5MODE_LED4=8
P5MODE_LED5=9
P5MODE_LED6=10
P5MODE_LED7=11
P5MODE_LED8=12
P5MODE_LED9=13
P5MODE_LEDBRIGHT=14
P5MODE_LEDBEST=15
P5MODE_ORIGINAL_PYR=0
P5MODE_BETTER_PYR=2560
P5MODE_BETTER_YPR=2816
P5MODE_BETTER_RYP=3072
P5MODE_BETTER_RPY=3328
P5MODE_BETTER_YRP=3584
P5MODE_BETTER_PRY=3840
P5MODE_BETTER_MIX=4096
P5MODE_FILTERED_PYR=5120
P5MODE_FILTERED_YPR=5376
P5MODE_FILTERED_RYP=5632
P5MODE_FILTERED_RPY=5888
P5MODE_FILTERED_YRP=3584
P5MODE_FILTERED_PRY=3840
P5MODE_FILTERED_MIX=6144
P5_Close()S="P5_Close@0"
P5_Init@()S="P5_Init@0"
P5_SetClickSensitivity(P5Id%%,leftvalue@,rightvalue@,middlevalue@)S="P5_SetClickSensitivity@20"
P5_GetClickSensitivity(P5Id%%,leftclick%%*,rightclick%%*,middleclick%%*)S="P5_GetClickSensitivity@20"
P5_SaveBendSensors(P5Id%%=-1)S="P5_SaveBendSensors@8"
P5_CalibrateBendSensors(P5Id%%=-1)S="P5_CalibrateBendSensors@8"
P5_CalibratePositionData(P5Id%%=-1)S="P5_CalibratePositionData@8"
P5_GetMouseState@(P5Id%%=0)S="P5_GetMouseState@8"
P5_SetMouseState(P5Id%%,state%%)S="P5_SetMouseState@16"
P5_SetMouseStickTime(P5Id%%,time@)S="P5_SetMouseStickTime@12"
P5_GetMouseStickTime%%(P5Id%%=0)S="P5_GetMouseStickTime@8"
P5_GetMouseButtonAllocation(P5Id%%,leftclick%%*,rightclick%%*,middleclick%%*)S="P5_GetMouseButtonAllocation@20"
P5_SetMouseButtonAllocation(P5Id%%,leftclickfinger%%,rightclickfinger%%,middleclickfinger%%)S="P5_SetMouseButtonAllocation@32"
P5_GetLastError@(P5Id%%*,ErrorCode%%*)S="P5_GetLastError@8"
P5_GetCount%%()S="P5_GetCount@0"
P5_GetACAdaptorStatus%%(P5Id%%=0)S="P5_GetACAdaptorStatus@8"
P5_GetBendCalibration(P5Id%%,ThumbStraight%%*,ThumbBent%%*,IndexStraight%%*,IndexBent%%*,MiddleStraight%%*,MiddleBent%%*,RingStraight%%*,RingBent%%*,PinkyStraight%%*,PinkyBent%%*)S="P5_GetBendCalibration@48"
P5_GetRawFingerBends(P5Id%%,thumb%%*,index%%*,middle%%*,ring%%*,pinky%%*)S="P5_GetRawFingerBends@28"
P5_SetUnits(units#=1#)S="P5_SetUnits@4"
P5_SetForwardZ(z%%=1)S="P5_SetForwardZ@8"
P5_SetTowerPos(P5Id%%,x#,y#,z#)S="P5_SetTowerPos@20"
P5_TiltTowerForward(P5Id%%,degrees#)S="P5_TiltTowerForward@12"
P5_SplongowerRight(P5Id%%,degrees#)S="P5_SplongowerRight@12"
P5_TiltTowerRight(P5Id%%,degrees#)S="P5_TiltTowerRight@12"
P5_SetSensitivity(P5Id%%,multiplier#)S="P5_SetSensitivity@12"
P5_SetLedPos(P5Id%%,led%%,x#,y#,z#)S="P5_SetLedPos@28"
P5_SetGlovePos(P5Id%%,x#,y#,z#)S="P5_SetGlovePos@20"
P5_PitchGlove(P5Id%%,theta#)S="P5_PitchGlove@12"
P5_YawGlove(P5Id%%,theta#)S="P5_YawGlove@12"
P5_RollGlove(P5Id%%,theta#)S="P5_RollGlove@12"
P5_SetInterfaceMode(mode%%)S="P5_SetInterfaceMode@8"
P5_SetFilterMode(filters%%)S="P5_SetFilterMode@8"
P5_SetFilterAmount(ExtraFrames%%,DeadDistance#)S="P5_SetFilterAmount@12"
P5_ClearArchive(P5Id%%=-1)S="P5_ClearArchive@8"
P5_SetRequiredAccuracy(accuracy#=10#)S="P5_SetRequiredAccuracy@4"
P5_SetPrediction(prediction%%=1)S="P5_SetPrediction@8"
P5_RestoreMouse(P5Id%%=-1)S="P5_RestoreMouse@8"
P5_UnRestoreMouse(P5Id%%=-1)S="P5_UnRestoreMouse@8"
P5_GetAbsolutePos(P5Id%%,x#*,y#*,z#*)S="P5_GetAbsolutePos@20"
P5_GetRelativePos(P5Id%%,x#*,y#*,z#*)S="P5_GetRelativePos@20"
P5_GetRelativeAvgPos(P5Id%%,x#*,y#*,z#*)S="P5_GetRelativeAvgPos@20"
P5_GetRotation(P5Id%%,yaw#*,pitch#*,roll#*)S="P5_GetRotation@20"
P5_GetFingerBends(P5Id%%,thumb#*,index#*,middle#*,ring#*,pinky#*)S="P5_GetFingerBends@28"
P5_GetButtons(P5Id%%,A#*,B#*,C#*,D#*)S="P5_GetButtons@24"
P5_GetThreadStatus@(P5Id%%)S="P5_GetThreadStatus@8"
The p5.d.a file has a few references to __bb_p5_p5.