home *** CD-ROM | disk | FTP | other *** search
- ; tdinput.inc (c) Minde 06/08/99 montana@is.lt
- ; Content: TASM DirectSetup include file ver. 1.2
- ; converted from dinput.h, DX ver. 6.1
- ;
- ; Feel free to use or distribute the package, part or whole, for any
- ; non-commercial use preferably crediting me.
- ; Also feel free to contact me at the above address if you experience any
- ; problems or notice any omissions.
-
- DIRECTX_VERSION = 0600h
- DirectInputCreate = DirectInputCreateA
- DirectInputCreateA PROCDESC STDCALL :DWORD, :DWORD, :DWORD, :DWORD
-
- CLSID_DirectInput GUID <025E609E0h,0B259h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- CLSID_DirectInputDevice GUID <025E609E1h,0B259h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- IID_IDirectInputA GUID <089521360h,0AA8Ah,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- IID_IDirectInputW GUID <089521361h,0AA8Ah,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- IID_IDirectInput2A GUID <05944E662h,0AA8Ah,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- IID_IDirectInput2W GUID <05944E663h,0AA8Ah,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- IID_IDirectInputDeviceA GUID <05944E680h,0C92Eh,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- IID_IDirectInputDeviceW GUID <05944E681h,0C92Eh,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- IID_IDirectInputDevice2A GUID <05944E682h,0C92Eh,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- IID_IDirectInputDevice2W GUID <05944E683h,0C92Eh,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- IID_IDirectInputEffect GUID <0E7E1F7C0h,088D2h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
-
- GUID_XAxis GUID <0A36D02E0h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_YAxis GUID <0A36D02E1h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_ZAxis GUID <0A36D02E2h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- ;GUID_RAxis GUID <0A36D02E3h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- ;GUID_UAxis GUID <0A36D02E4h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- ;GUID_VAxis GUID <0A36D02E5h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_RxAxis GUID <0A36D02F4h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_RyAxis GUID <0A36D02F5h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_RzAxis GUID <0A36D02E3h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_Slider GUID <0A36D02E4h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_Button GUID <0A36D02F0h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_Key GUID <055728220h,0D33Ch,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_POV GUID <0A36D02F2h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_Unknown GUID <0A36D02F3h,0C9F3h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_SysMouse GUID <06F1D2B60h,0D5A0h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_SysKeyboard GUID <06F1D2B61h,0D5A0h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
- GUID_Joystick GUID <06F1D2B70h,0D5A0h,011CFh,0BFh,0C7h,044h,045h,053h,054h,000h,000h>
-
- GUID_ConstantForce GUID <013541C20h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_RampForce GUID <013541C21h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_Square GUID <013541C22h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_Sine GUID <013541C23h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_Triangle GUID <013541C24h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_SawtoothUp GUID <013541C25h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_SawtoothDown GUID <013541C26h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_Spring GUID <013541C27h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_Damper GUID <013541C28h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_Inertia GUID <013541C29h,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_Friction GUID <013541C2Ah,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
- GUID_CustomForce GUID <013541C2Bh,08E33h,011D0h,09Ah,0D0h,000h,0A0h,0C9h,0A0h,06Eh,035h>
-
-
- DIEFT_ALL = 00000000h;
- DIEFT_CONSTANTFORCE = 00000001h;
- DIEFT_RAMPFORCE = 00000002h;
- DIEFT_PERIODIC = 00000003h;
- DIEFT_CONDITION = 00000004h;
- DIEFT_CUSTOMFORCE = 00000005h;
- DIEFT_HARDWARE = 000000FFh;
- DIEFT_FFATTACK = 00000200h;
- DIEFT_FFFADE = 00000400h;
- DIEFT_SATURATION = 00000800h;
- DIEFT_POSNEGCOEFFICIENTS = 00001000h;
- DIEFT_POSNEGSATURATION = 00002000h;
- DIEFT_DEADBAND = 00004000h;
-
- DI_DEGREES = 100;
- DI_FFNOMINALMAX = 10000;
- DI_SECONDS = 1000000;
-
-
- DICONSTANTFORCE struct
- diconstantforce_lMagnitude DD ?
- DICONSTANTFORCE
-
- DIRAMPFORCE struct
- dirampforce_lStart DD ?
- dirampforce_lEnd DD ?
- DIRAMPFORCE ends
-
- DIPERIODIC struct
- diperiodic_dwMagnitude DD ?
- diperiodic_lOffset DD ?
- diperiodic_dwPhase DD ?
- diperiodic_dwPeriod DD ?
- DIPERIODIC ends
-
-
- DICONDITION struct
- dicondition_lOffset DD ?
- dicondition_lPositiveCoefficient DD ?
- dicondition_lNegativeCoefficient DD ?
- dicondition_dwPositiveSaturation DD ?
- dicondition_dwNegativeSaturation DD ?
- dicondition_lDeadBand DD ?
- DICONDITION ends
-
- DICUSTOMFORCE struct
- dicustomforce_cChannels DD ?
- dicustomforce_dwSamplePeriod DD ?
- dicustomforce_cSamples DD ?
- dicustomforce_rglForceData DD ?
- DICUSTOMFORCE ends
-
-
- DIENVELOPE struct
- dienvelope_dwSize DD ?
- dienvelope_dwAttackLevel DD ?
- dienvelope_dwAttackTime DD ?
- dienvelope_dwFadeLevel DD ?
- dienvelope_dwFadeTime DD ?
- DIENVELOPE ends
-
- DIEFFECT struct
- dieffect_dwSize DD ?
- dieffect_dwFlags DD ?
- dieffect_dwDuration DD ?
- dieffect_dwSamplePeriod DD ?
- dieffect_dwGain DD ?
- dieffect_dwTriggerButton DD ?
- dieffect_dwTriggerRepeatInterval DD ?
- dieffect_cAxes DD ?
- dieffect_rgdwAxes DD ?
- dieffect_rglDirection DD ?
- dieffect_lpEnvelope DD ?
- dieffect_cbTypeSpecificParams DD ?
- dieffect_lpvTypeSpecificParams DD ?
- DIEFFECT ends
-
-
- DIEFF_OBJECTIDS = 000000001h;
- DIEFF_OBJECTOFFSETS = 000000002h;
- DIEFF_CARTESIAN = 000000010h;
- DIEFF_POLAR = 000000020h;
- DIEFF_SPHERICAL = 000000040h;
-
- DIEP_DURATION = 000000001h;
- DIEP_SAMPLEPERIOD = 000000002h;
- DIEP_GAIN = 000000004h;
- DIEP_TRIGGERBUTTON = 000000008h;
- DIEP_TRIGGERREPEATINTERVAL = 000000010h;
- DIEP_AXES = 000000020h;
- DIEP_DIRECTION = 000000040h;
- DIEP_ENVELOPE = 000000080h;
- DIEP_TYPESPECIFICPARAMS = 000000100h;
- DIEP_ALLPARAMS = 0000001FFh;
- DIEP_START = 020000000h;
- DIEP_NORESTART = 040000000h;
- DIEP_NODOWNLOAD = 080000000h;
- DIEB_NOTRIGGER = 0FFFFFFFFh;
-
- DIES_SOLO = 000000001h;
- DIES_NODOWNLOAD = 080000000h;
-
- DIEGES_PLAYING = 000000001h;
- DIEGES_EMULATED = 000000002h;
-
-
- DIEFFESCAPE struct
- dieffescape_dwSize DD ?
- dieffescape_dwCommand DD ?
- dieffescape_lpvInBuffer DD ?
- dieffescape_cbInBuffer DD ?
- dieffescape_lpvOutBuffer DD ?
- dieffescape_cbOutBuffer DD ?
- DIEFFESCAPE ends
-
-
- ; IDirectInputEffect
- ; IUnknown methods
- DIEQueryInterface = 0
- DIEAddRef = 4
- DIERelease = 8
- ; IDirectInputEffect methods
- DIEInitialize = 12
- DIEGetEffectGuid = 16
- DIEGetParameters = 20
- DIESetParameters = 24
- DIEStart = 28
- DIEStop = 32
- DIEGetEffectStatus = 36
- DIEDownload = 40
- DIEUnload = 44
- DIEEscape = 48
-
-
- ; *
- ; * IDirectInputDevice
- ; *
-
- DIDEVTYPE_DEVICE = 1
- DIDEVTYPE_MOUSE = 2
- DIDEVTYPE_KEYBOARD = 3
- DIDEVTYPE_JOYSTICK = 4
- DIDEVTYPE_HID = 00010000h
-
- DIDEVTYPEMOUSE_UNKNOWN = 1
- DIDEVTYPEMOUSE_TRADITIONAL = 2
- DIDEVTYPEMOUSE_FINGERSTICK = 3
- DIDEVTYPEMOUSE_TOUCHPAD = 4
- DIDEVTYPEMOUSE_TRACKBALL = 5
-
- DIDEVTYPEKEYBOARD_UNKNOWN = 0
- DIDEVTYPEKEYBOARD_PCXT = 1
- DIDEVTYPEKEYBOARD_OLIVETTI = 2
- DIDEVTYPEKEYBOARD_PCAT = 3
- DIDEVTYPEKEYBOARD_PCENH = 4
- DIDEVTYPEKEYBOARD_NOKIA1050 = 5
- DIDEVTYPEKEYBOARD_NOKIA9140 = 6
- DIDEVTYPEKEYBOARD_NEC98 = 7
- DIDEVTYPEKEYBOARD_NEC98LAPTOP = 8
- DIDEVTYPEKEYBOARD_NEC98106 = 9
- DIDEVTYPEKEYBOARD_JAPAN106 = 10
- DIDEVTYPEKEYBOARD_JAPANAX = 11
- DIDEVTYPEKEYBOARD_J3100 = 12
-
- DIDEVTYPEJOYSTICK_UNKNOWN = 1;
- DIDEVTYPEJOYSTICK_TRADITIONAL = 2;
- DIDEVTYPEJOYSTICK_FLIGHTSTICK = 3;
- DIDEVTYPEJOYSTICK_GAMEPAD = 4;
- DIDEVTYPEJOYSTICK_RUDDER = 5;
- DIDEVTYPEJOYSTICK_WHEEL = 6;
- DIDEVTYPEJOYSTICK_HEADTRACKER = 7;
-
-
-
- DIDEVCAPS STRUCT
- didevcaps_dwSize DD ? ;
- didevcaps_dwFlags DD ? ;
- didevcaps_dwDevType DD ? ;
- didevcaps_dwAxes DD ? ;
- didevcaps_dwButtons DD ? ;
- didevcaps_dwPOVs DD ? ;
- IF DIRECTX_VERSION GE 0500h
- didevcaps_dwFFSamplePeriod DD ? ;
- didevcaps_dwFFMinTimeResolution DD ? ;
- didevcaps_dwFirmwareRevision DD ? ;
- didevcaps_dwHardwareRevision DD ? ;
- didevcaps_dwFFDriverVersion DD ? ;
- ENDIF
- DIDEVCAPS ENDS
-
-
- DIDC_ATTACHED = 000000001h
- DIDC_POLLEDDEVICE = 000000002h
- DIDC_EMULATED = 000000004h;
- DIDC_POLLEDDATAFORMAT = 000000008h;
- DIDC_FORCEFEEDBACK = 000000100h;
- DIDC_FFATTACK = 000000200h;
- DIDC_FFFADE = 000000400h;
- DIDC_SATURATION = 000000800h;
- DIDC_POSNEGCOEFFICIENTS = 000001000h;
- DIDC_POSNEGSATURATION = 000002000h;
- DIDC_DEADBAND = 000004000h;
-
- DIDFT_ALL = 000000000h
- DIDFT_RELAXIS = 000000001h
- DIDFT_ABSAXIS = 000000002h
- DIDFT_AXIS = 000000003h
- DIDFT_PSHBUTTON = 000000004h
- DIDFT_TGLBUTTON = 000000008h
- DIDFT_BUTTON = 00000000Ch
- DIDFT_POV = 000000010h
- DIDFT_COLLECTION = 000000040h;
- DIDFT_NODATA = 000000080h;
-
- DIDFT_ANYINSTANCE = 00000FF00h
- DIDFT_INSTANCEMASK = DIDFT_ANYINSTANCE;
- DIDFT_FFACTUATOR = 01000000h;
- DIDFT_FFEFFECTTRIGGER = 02000000h;
- DIDFT_NOCOLLECTION = 00FFFF00h;
-
-
- DIOBJECTDATAFORMAT STRUCT
- diobjectdataformat_pguid DD ? ;
- diobjectdataformat_dwOfs DD ? ;
- diobjectdataformat_dwType DD ? ;
- diobjectdataformat_dwFlags DD ? ;
- DIOBJECTDATAFORMAT ENDS
-
- DIDATAFORMAT STRUCT
- didataformat_dwSize DD ? ;
- didataformat_dwObjSize DD ? ;
- didataformat_dwFlags DD ? ;
- didataformat_dwDataSize DD ? ;
- didataformat_dwNumObjs DD ? ;
- didataformat_rgodf DD ? ;
- DIDATAFORMAT ENDS
-
- DIDF_ABSAXIS = 000000001h
- DIDF_RELAXIS = 000000002h
-
-
- DIDEVICEOBJECTINSTANCEA STRUCT
- dideviceobjectinstancea_dwSize DD ? ;
- dideviceobjectinstancea_guidType GUID ? ;
- dideviceobjectinstancea_dwOfs DD ? ;
- dideviceobjectinstancea_dwType DD ? ;
- dideviceobjectinstancea_dwFlags DD ? ;
- dideviceobjectinstancea_tszName DB MAX_PATH DUP (?) ;
- IF DIRECTX_VERSION GE 0500h
- dideviceobjectinstancea_dwFFMaxForce DD ?
- dideviceobjectinstancea_dwFFForceResolution DD ?
- dideviceobjectinstancea_wCollectionNumber DW ?
- dideviceobjectinstancea_wDesignatorIndex DW ?
- dideviceobjectinstancea_wUsagePage DW ?
- dideviceobjectinstancea_wUsage DW ?
- dideviceobjectinstancea_dwDimension DD ?
- dideviceobjectinstancea_wExponent DW ?
- dideviceobjectinstancea_wReserved DW ?
- ENDIF
- DIDEVICEOBJECTINSTANCEA ENDS
-
- DIDOI_FFACTUATOR = 00000001h;
- DIDOI_FFEFFECTTRIGGER = 00000002h;
- DIDOI_POLLED = 00008000h;
- DIDOI_ASPECTPOSITION = 00000100h;
- DIDOI_ASPECTVELOCITY = 00000200h;
- DIDOI_ASPECTACCEL = 00000300h;
- DIDOI_ASPECTFORCE = 00000400h;
- DIDOI_ASPECTMASK = 00000F00h;
-
-
- DIPROPHEADER STRUCT
- dipropheader_dwSize DD ? ;
- dipropheader_dwHeaderSize DD ? ;
- dipropheader_dwObj DD ? ;
- dipropheader_dwHow DD ? ;
- DIPROPHEADER ENDS
-
- DIPH_DEVICE = 0;
- DIPH_BYOFFSET = 1;
- DIPH_BYID = 2;
-
- DIPROPDWORD STRUCT
- dipropdword_diph DIPROPHEADER ? ;
- dipropdword_dwData DD ? ;
- DIPROPDWORD ENDS
-
- DIPROPRANGE STRUCT
- diproprange_diph DIPROPHEADER ? ;
- diproprange_lMin DD ? ;
- diproprange_lMax DD ? ;
- DIPROPRANGE ENDS
-
- DIPROPRANGE_NOMIN = 080000000h;
- DIPROPRANGE_NOMAX = 07FFFFFFFh;
-
- ; Below some flags not defined in this release
- ;type MAKEDIPROP = PGUID;
- ;DIPROP_BUFFERSIZE = MAKEDIPROP(1);
- ;DIPROP_AXISMODE = MAKEDIPROP(2);
- DIPROPAXISMODE_ABS = 0;
- DIPROPAXISMODE_REL = 1;
- ;DIPROP_GRANULARITY = MAKEDIPROP(3);
- ;DIPROP_RANGE = MAKEDIPROP(4);
- ;DIPROP_DEADZONE = MAKEDIPROP(5);
- ;DIPROP_SATURATION = MAKEDIPROP(6);
- ;DIPROP_FFGAIN = MAKEDIPROP(7);
- ;DIPROP_FFLOAD = MAKEDIPROP(8);
- ;DIPROP_AUTOCENTER = MAKEDIPROP(9);
- DIPROPAUTOCENTER_OFF = 0;
- DIPROPAUTOCENTER_ON = 1;
- ;DIPROP_CALIBRATIONMODE = MAKEDIPROP(10);
- DIPROPCALIBRATIONMODE_COOKED = 0;
- DIPROPCALIBRATIONMODE_RAW = 1;
-
-
-
- DIDEVICEOBJECTDATA STRUCT
- dideviceobjectdata_dwOfs DD ? ;
- dideviceobjectdata_dwData DD ? ;
- dideviceobjectdata_dwTimeStamp DD ? ;
- dideviceobjectdata_dwSequence DD ? ;
- DIDEVICEOBJECTDATA ENDS
-
- DIGDD_PEEK = 00000001h;
-
- DISCL_EXCLUSIVE = 00000001h;
- DISCL_NONEXCLUSIVE = 00000002h;
- DISCL_FOREGROUND = 00000004h;
- DISCL_BACKGROUND = 00000008h;
-
-
- DIDEVICEINSTANCEA STRUCT
- dideviceinstancea_dwSize DD ? ;
- dideviceinstancea_guidInstance GUID ? ;
- dideviceinstancea_guidProduct GUID ? ;
- dideviceinstancea_dwDevType DD ? ;
- dideviceinstancea_tszInstanceName DB MAX_PATH DUP (?) ;
- dideviceinstancea_tszProductName DB MAX_PATH DUP (?) ;
- IF DIRECTX_VERSION GE 0500h
- dideviceinstancea_guidFFDriver GUID ?
- dideviceinstancea_wUsagePage DW ?
- dideviceinstancea_wUsage DW ?
- ENDIF
- DIDEVICEINSTANCEA ENDS
-
-
- ; IDirectInputDeviceA
- ; IUnknown methods
- DIDQueryInterface = 0
- DIDAddRef = 4
- DIDRelease = 8
- ; IDirectInputDeviceA methods
- DIDGetCapabilities = 12
- DIDEnumObjects = 16
- DIDGetProperty = 20
- DIDSetProperty = 24
- DIDAcquire = 28
- DIDUnacquire = 32
- DIDGetDeviceState = 36
- DIDGetDeviceData = 40
- DIDSetDataFormat = 44
- DIDSetEventNotification = 48
- DIDSetCooperativeLevel = 52
- DIDGetObjectInfo = 56
- DIDGetDeviceInfo = 60
- DIDRunControlPanel = 64
- DIDInitialize = 68
- ; IDirectInputDevice2A
- DID2CreateEffect = 72
- DID2EnumEffects = 76
- DID2GetEffectInfo = 80
- DID2GetForceFeedbackState = 84
- DID2SendForceFeedbackCommand = 88
- DID2EnumCreatedEffectObjects = 92
- DID2Escape = 96
- DID2Poll = 100
- DID2SendDeviceData = 104
-
-
- DISFFC_RESET = 00000001h;
- DISFFC_STOPALL = 00000002h;
- DISFFC_PAUSE = 00000004h;
- DISFFC_CONTINUE = 00000008h;
- DISFFC_SETACTUATORSON = 00000010h;
- DISFFC_SETACTUATORSOFF = 00000020h;
-
- DIGFFS_EMPTY = 00000001h;
- DIGFFS_STOPPED = 00000002h;
- DIGFFS_PAUSED = 00000004h;
- DIGFFS_ACTUATORSON = 00000010h;
- DIGFFS_ACTUATORSOFF = 00000020h;
- DIGFFS_POWERON = 00000040h;
- DIGFFS_POWEROFF = 00000080h;
- DIGFFS_SAFETYSWITCHON = 00000100h;
- DIGFFS_SAFETYSWITCHOFF = 00000200h;
- DIGFFS_USERFFSWITCHON = 00000400h;
- DIGFFS_USERFFSWITCHOFF = 00000800h;
- DIGFFS_DEVICELOST = 80000000h;
-
-
- DIEFFECTINFOA struct
- dieffectinfoa_dwSize DD ?
- dieffectinfoa_guid GUID ?
- dieffectinfoa_dwEffType DD ?
- dieffectinfoa_dwStaticParams DD ?
- dieffectinfoa_dwDynamicParams DD ?
- dieffectinfoa_tszName DB MAX_PATH DUP (?)
- DIEFFECTINFOA ends
-
-
- ; *
- ; * Mouse
- ; *
-
-
- DIMOUSESTATE STRUCT
- dimousestate_lX DD ? ;
- dimousestate_lY DD ? ;
- dimousestate_lZ DD ? ;
- dimousestate_rgbButtons DB 4 DUP (?) ;
- DIMOUSESTATE ENDS
-
- DIMOFS_X = 0;
- DIMOFS_Y = 4;
- DIMOFS_Z = 8;
- DIMOFS_BUTTON0 = 12;
- DIMOFS_BUTTON1 = 13;
- DIMOFS_BUTTON2 = 14;
- DIMOFS_BUTTON3 = 15;
-
-
- ; *
- ; * DirectInput keyboard scan codes
- ; *
-
- DIK_ESCAPE = 001h
- DIK_1 = 002h
- DIK_2 = 003h
- DIK_3 = 004h
- DIK_4 = 005h
- DIK_5 = 006h
- DIK_6 = 007h
- DIK_7 = 008h
- DIK_8 = 009h
- DIK_9 = 00Ah
- DIK_0 = 00Bh
- DIK_MINUS = 00Ch ; - on main keyboard
- DIK_EQUALS = 00Dh
- DIK_BACK = 00Eh ; backspace
- DIK_TAB = 00Fh
- DIK_Q = 010h
- DIK_W = 011h
- DIK_E = 012h
- DIK_R = 013h
- DIK_T = 014h
- DIK_Y = 015h
- DIK_U = 016h
- DIK_I = 017h
- DIK_O = 018h
- DIK_P = 019h
- DIK_LBRACKET = 01Ah
- DIK_RBRACKET = 01Bh
- DIK_RETURN = 01Ch ; Enter on main keyboard
- DIK_LCONTROL = 01Dh
- DIK_A = 01Eh
- DIK_S = 01Fh
- DIK_D = 020h
- DIK_F = 021h
- DIK_G = 022h
- DIK_H = 023h
- DIK_J = 024h
- DIK_K = 025h
- DIK_L = 026h
- DIK_SEMICOLON = 027h
- DIK_APOSTROPHE = 028h
- DIK_GRAVE = 029h ; accent grave
- DIK_LSHIFT = 02Ah
- DIK_BACKSLASH = 02Bh
- DIK_Z = 02Ch
- DIK_X = 02Dh
- DIK_C = 02Eh
- DIK_V = 02Fh
- DIK_B = 030h
- DIK_N = 031h
- DIK_M = 032h
- DIK_COMMA = 033h
- DIK_PERIOD = 034h ; on main keyboard
- DIK_SLASH = 035h ; on main keyboard
- DIK_RSHIFT = 036h
- DIK_MULTIPLY = 037h ; on numeric keypad
- DIK_LMENU = 038h ; left Alt
- DIK_SPACE = 039h
- DIK_CAPITAL = 03Ah
- DIK_F1 = 03Bh
- DIK_F2 = 03Ch
- DIK_F3 = 03Dh
- DIK_F4 = 03Eh
- DIK_F5 = 03Fh
- DIK_F6 = 040h
- DIK_F7 = 041h
- DIK_F8 = 042h
- DIK_F9 = 043h
- DIK_F10 = 044h
- DIK_NUMLOCK = 045h
- DIK_SCROLL = 046h ; Scroll Lock
- DIK_NUMPAD7 = 047h
- DIK_NUMPAD8 = 048h
- DIK_NUMPAD9 = 049h
- DIK_SUBTRACT = 04Ah ; - on numeric keypad
- DIK_NUMPAD4 = 04Bh
- DIK_NUMPAD5 = 04Ch
- DIK_NUMPAD6 = 04Dh
- DIK_ADD = 04Eh ; + on numeric keypad
- DIK_NUMPAD1 = 04Fh
- DIK_NUMPAD2 = 050h
- DIK_NUMPAD3 = 051h
- DIK_NUMPAD0 = 052h
- DIK_DECIMAL = 053h ; . on numeric keypad
- DIK_F11 = 057h
- DIK_F12 = 058h
- DIK_F13 = 064h ; (NEC PC98)
- DIK_F14 = 065h ; (NEC PC98)
- DIK_F15 = 066h ; (NEC PC98)
- DIK_KANA = 070h ; (Japanese keyboard)
- DIK_CONVERT = 079h ; (Japanese keyboard)
- DIK_NOCONVERT = 07Bh ; (Japanese keyboard)
- DIK_YEN = 07Dh ; (Japanese keyboard)
- DIK_NUMPADEQUALS = 08Dh ; = on numeric keypad (NEC PC98)
- DIK_CIRCUMFLEX = 090h ; (Japanese keyboard)
- DIK_AT = 091h ; (NEC PC98)
- DIK_COLON = 092h ; (NEC PC98)
- DIK_UNDERLINE = 093h ; (NEC PC98)
- DIK_KANJI = 094h ; (Japanese keyboard)
- DIK_STOP = 095h ; (NEC PC98)
- DIK_AX = 096h ; (Japan AX)
- DIK_UNLABELED = 097h ; (J3100)
- DIK_NUMPADENTER = 09Ch ; Enter on numeric keypad
- DIK_RCONTROL = 09Dh
- DIK_NUMPADCOMMA = 0B3h ; , on numeric keypad (NEC PC98)
- DIK_DIVIDE = 0B5h ; / on numeric keypad
- DIK_SYSRQ = 0B7h
- DIK_RMENU = 0B8h ; right Alt
- DIK_HOME = 0C7h ; Home on arrow keypad
- DIK_UP = 0C8h ; UpArrow on arrow keypad
- DIK_PRIOR = 0C9h ; PgUp on arrow keypad
- DIK_LEFT = 0CBh ; LeftArrow on arrow keypad
- DIK_RIGHT = 0CDh ; RightArrow on arrow keypad
- DIK_END = 0CFh ; End on arrow keypad
- DIK_DOWN = 0D0h ; DownArrow on arrow keypad
- DIK_NEXT = 0D1h ; PgDn on arrow keypad
- DIK_INSERT = 0D2h ; Insert on arrow keypad
- DIK_DELETE = 0D3h ; Delete on arrow keypad
- DIK_LWIN = 0DBh ; Left Windows key
- DIK_RWIN = 0DCh ; Right Windows key
- DIK_APPS = 0DDh ; AppMenu key
- ; New with DX 6.1 & Win98
- DIK_POWER = 0DEh;
- DIK_SLEEP = 0DFh;
-
- ; Alternate names for keys, to facilitate transition from DOS.
- DIK_BACKSPACE = DIK_BACK ; backspace
- DIK_NUMPADSTAR = DIK_MULTIPLY ; * on numeric keypad
- DIK_LALT = DIK_LMENU ; left Alt
- DIK_CAPSLOCK = DIK_CAPITAL ; CapsLock
- DIK_NUMPADMINUS = DIK_SUBTRACT ; - on numeric keypad
- DIK_NUMPADPLUS = DIK_ADD ; + on numeric keypad
- DIK_NUMPADPERIOD = DIK_DECIMAL ; . on numeric keypad
- DIK_NUMPADSLASH = DIK_DIVIDE ; / on numeric keypad
- DIK_RALT = DIK_RMENU ; right Alt
- DIK_UPARROW = DIK_UP ; UpArrow on arrow keypad
- DIK_PGUP = DIK_PRIOR ; PgUp on arrow keypad
- DIK_LEFTARROW = DIK_LEFT ; LeftArrow on arrow keypad
- DIK_RIGHTARROW = DIK_RIGHT ; RightArrow on arrow keypad
- DIK_DOWNARROW = DIK_DOWN ; DownArrow on arrow keypad
- DIK_PGDN = DIK_NEXT ; PgDn on arrow keypad
-
-
- DIKEYBOARDSTATE typedef BYTE 255 DUP (?)
-
-
- ; *
- ; * Joystick
- ; *
-
-
- DIJOYSTATE struct
- dijoystate_lX DD ?
- dijoystate_lY DD ?
- dijoystate_lZ DD ?
- dijoystate_lRx DD ?
- dijoystate_lRy DD ?
- dijoystate_lRz DD ?
- dijoystate_rglSlider DD 2 DUP (?)
- dijoystate_rgdwPOV DD 4 DUP (?)
- dijoystate_rgbButtons DB 32 DUP (?)
- DIJOYSTATE ends
-
- DIJOYSTATE2 struct
- dijoystate2_lX DD ?
- dijoystate2_lY DD ?
- dijoystate2_lZ DD ?
- dijoystate2_lRx DD ?
- dijoystate2_lRy DD ?
- dijoystate2_lRz DD ?
- dijoystate2_rglSlider DD 2 DUP (?)
- dijoystate2_rgdwPOV DD 4 DUP (?)
- dijoystate2_rgbButtons DB 128 DUP (?)
- dijoystate2_lVX DD ?
- dijoystate2_lVY DD ?
- dijoystate2_lVZ DD ?
- dijoystate2_lVRx DD ?
- dijoystate2_lVRy DD ?
- dijoystate2_lVRz DD ?
- dijoystate2_rglVSlider DD 2 DUP (?)
- dijoystate2_lAX DD ?
- dijoystate2_lAY DD ?
- dijoystate2_lAZ DD ?
- dijoystate2_lARx DD ?
- dijoystate2_lARy DD ?
- dijoystate2_lARz DD ?
- dijoystate2_rglASlider DD 2 DUP (?)
- dijoystate2_lFX DD ?
- dijoystate2_lFY DD ?
- dijoystate2_lFZ DD ?
- dijoystate2_lFRx DD ?
- dijoystate2_lFRy DD ?
- dijoystate2_lFRz DD ?
- dijoystate2_rglFSlider DD 2 DUP (?)
- DIJOYSTATE2 ends
-
-
- DIJOFS_BUTTON_ = 48;
- DIJOFS_BUTTON0 = DIJOFS_BUTTON_ + 0;
- DIJOFS_BUTTON1 = DIJOFS_BUTTON_ + 1;
- DIJOFS_BUTTON2 = DIJOFS_BUTTON_ + 2;
- DIJOFS_BUTTON3 = DIJOFS_BUTTON_ + 3;
- DIJOFS_BUTTON4 = DIJOFS_BUTTON_ + 4;
- DIJOFS_BUTTON5 = DIJOFS_BUTTON_ + 5;
- DIJOFS_BUTTON6 = DIJOFS_BUTTON_ + 6;
- DIJOFS_BUTTON7 = DIJOFS_BUTTON_ + 7;
- DIJOFS_BUTTON8 = DIJOFS_BUTTON_ + 8;
- DIJOFS_BUTTON9 = DIJOFS_BUTTON_ + 9;
- DIJOFS_BUTTON10 = DIJOFS_BUTTON_ + 10;
- DIJOFS_BUTTON11 = DIJOFS_BUTTON_ + 11;
- DIJOFS_BUTTON12 = DIJOFS_BUTTON_ + 12;
- DIJOFS_BUTTON13 = DIJOFS_BUTTON_ + 13;
- DIJOFS_BUTTON14 = DIJOFS_BUTTON_ + 14;
- DIJOFS_BUTTON15 = DIJOFS_BUTTON_ + 15;
- DIJOFS_BUTTON16 = DIJOFS_BUTTON_ + 16;
- DIJOFS_BUTTON17 = DIJOFS_BUTTON_ + 17;
- DIJOFS_BUTTON18 = DIJOFS_BUTTON_ + 18;
- DIJOFS_BUTTON19 = DIJOFS_BUTTON_ + 19;
- DIJOFS_BUTTON20 = DIJOFS_BUTTON_ + 20;
- DIJOFS_BUTTON21 = DIJOFS_BUTTON_ + 21;
- DIJOFS_BUTTON22 = DIJOFS_BUTTON_ + 22;
- DIJOFS_BUTTON23 = DIJOFS_BUTTON_ + 23;
- DIJOFS_BUTTON24 = DIJOFS_BUTTON_ + 24;
- DIJOFS_BUTTON25 = DIJOFS_BUTTON_ + 25;
- DIJOFS_BUTTON26 = DIJOFS_BUTTON_ + 26;
- DIJOFS_BUTTON27 = DIJOFS_BUTTON_ + 27;
- DIJOFS_BUTTON28 = DIJOFS_BUTTON_ + 28;
- DIJOFS_BUTTON29 = DIJOFS_BUTTON_ + 29;
- DIJOFS_BUTTON30 = DIJOFS_BUTTON_ + 30;
- DIJOFS_BUTTON31 = DIJOFS_BUTTON_ + 31;
-
- DIJOFS_X =0;
- DIJOFS_Y =4;
- DIJOFS_Z =8;
- DIJOFS_RX =12;
- DIJOFS_RY =16;
- DIJOFS_RZ =20;
-
-
- ; *
- ; * IDirectInput
- ; *
-
- DIENUM_STOP = 0;
- DIENUM_CONTINUE = 1;
-
- DIEDFL_ALLDEVICES = 000000000h
- DIEDFL_ATTACHEDONLY = 000000001h
- DIEDFL_FORCEFEEDBACK = 000000100h
-
-
- ; IDirectInputA
- ; IUnknown methods
- DIQueryInterface = 0
- DIAddRef = 4
- DIRelease = 8
- ; IDirectInputA methods
- DICreateDevice = 12
- DIEnumDevices = 16
- DIGetDeviceStatus = 20
- DIRunControlPanel = 24
- DIInitialize = 28
- ; IDirectInput2A methods
- DI2FindDevice = 32
-
-
-
- ; *
- ; * Return Codes
- ; *
-
- DI_OK = S_OK
- DI_NOTATTACHED = S_FALSE
- DI_BUFFEROVERFLOW = S_FALSE
- DI_PROPNOEFFECT = S_FALSE
- DI_NOEFFECT = S_FALSE
- DI_POLLEDDEVICE = 000000002h
- DI_DOWNLOADSKIPPED = 000000003h;
- DI_EFFECTRESTARTED = 000000004h;
- DI_TRUNCATED = 000000008h;
- DI_TRUNCATEDANDRESTARTED = 00000000Ch;
-
- DIERR_OLDDIRECTINPUTVERSION = (70000h + 1150) ; SEVERITY_ERROR_FACILITY_WIN32 or ERROR_OLD_WIN_VERSION;
- DIERR_BETADIRECTINPUTVERSION = (70000h + 1153); SEVERITY_ERROR_FACILITY_WIN32 or ERROR_RMODE_APP;
- DIERR_BADDRIVERVER = (70000h + 119) ; SEVERITY_ERROR_FACILITY_WIN32 or ERROR_BAD_DRIVER_LEVEL;
- DIERR_DEVICENOTREG = REGDB_E_CLASSNOTREG
- DIERR_NOTFOUND = (70000h + 2) ; SEVERITY_ERROR_FACILITY_WIN32 or ERROR_FILE_NOT_FOUND;
- DIERR_OBJECTNOTFOUND = (70000h + 2) ; SEVERITY_ERROR_FACILITY_WIN32 or ERROR_FILE_NOT_FOUND;
- DIERR_INVALIDPARAM = E_INVALIDARG
- DIERR_NOINTERFACE = E_NOINTERFACE
- DIERR_GENERIC = E_FAIL
- DIERR_OUTOFMEMORY = E_OUTOFMEMORY
- DIERR_UNSUPPORTED = E_NOTIMPL
- DIERR_NOTINITIALIZED = (70000h + 21) ; SEVERITY_ERROR_FACILITY_WIN32 or ERROR_NOT_READY;
- DIERR_ALREADYINITIALIZED = (70000h + 1247); SEVERITY_ERROR_FACILITY_WIN32 or ERROR_ALREADY_INITIALIZED;
- DIERR_NOAGGREGATION = CLASS_E_NOAGGREGATION
- DIERR_OTHERAPPHASPRIO = E_ACCESSDENIED
- DIERR_INPUTLOST = (70000h + 30) ; SEVERITY_ERROR_FACILITY_WIN32 or ERROR_READ_FAULT;
- DIERR_ACQUIRED = (70000h + 170); SEVERITY_ERROR_FACILITY_WIN32 or ERROR_BUSY;
- DIERR_NOTACQUIRED = (70000h + 12) ; SEVERITY_ERROR_FACILITY_WIN32 or ERROR_INVALID_ACCESS;
- DIERR_READONLY = E_ACCESSDENIED
- DIERR_HANDLEEXISTS = E_ACCESSDENIED
- E_PENDING = 080070007h
- DIERR_INSUFFICIENTPRIVS = 080040200h;
- DIERR_DEVICEFULL = 080040201h;
- DIERR_MOREDATA = 080040202h;
- DIERR_NOTDOWNLOADED = 080040203h;
- DIERR_HASEFFECTS = 080040204h;
- DIERR_NOTEXCLUSIVEACQUIRED = 080040205h;
- DIERR_INCOMPLETEEFFECT = 080040206h;
- DIERR_NOTBUFFERED = 080040207h;
- DIERR_EFFECTPLAYING = 080040208h;
-
-
- ; *
- ; * Definitions for non-IDirectInput (VJoyD) features defined more recently
- ; * than the current sdk files
- ; *
-
- JOY_PASSDRIVERDATA = 010000000h;
- JOY_HWS_ISHEADTRACKER = 002000000h;
- JOY_HWS_ISGAMEPORTDRIVER = 004000000h;
- JOY_HWS_ISANALOGPORTDRIVER = 008000000h;
- JOY_HWS_AUTOLOAD = 010000000h;
- JOY_HWS_NODEVNODE = 020000000h;
- JOY_HWS_ISGAMEPORTEMULATOR = 040000000h;
- JOY_US_VOLATILE = 000000008h;
-
- ; *
- ; * Definitions for non-IDirectInput (VJoyD) features defined more recently
- ; * than the current ddk files
- ; *
-
- JOY_OEMPOLL_PASSDRIVERDATA = 7;
-
- ;end of file
-