void far *EntryPoint;
typedef unsigned char byte;
/* Initialisierung: Pointer ermitteln */
void VxDInit(void);
/* Universelle VxD-Aufrufroutinen */
byte VxDsupC(byte AFunc, byte AUnit, long lParam1, long lParam2);
byte VxDsupV(byte AFunc, byte AUnit, long *lParam1, long *lParam2);
/* Folgende Kommandos gibt es: */
#define SM_Nop 0 /* "NOP"-Kommando */
#define SM_Free 1 /* Motorspulen stromfrei schalten */
#define SM_Sync 2 /* Referenzfahrt */
#define SM_MoveAbs 3 /* Absolutbewegung */
#define SM_MoveRel 4 /* Relativbewegung */
#define SM_Assign 5 /* Belegung */
#define SM_UnAssign 6 /* Freigabe */
#define SM_SetSA 7 /* Geschwindigkeit und Beschleunigung festlegen */
#define SM_GetSA 8 /* ...erfragen */
#define SM_SetPostMsg 9 /* PostMessage-Adresse + Fenster + Nachricht festlegen */
#define SM_GetPostMsg 10 /* ...erfragen */
#define SM_GetPosition 11 /* Momentane Position ermitteln (nach EDX und SpeedECX) */
#define SM_SetBounds 12
#define SM_GetBounds 13
#define SM_Stop 14
#define SM_SetGear 15 /* Übersetzungsverhältnis setzen */
#define SM_GetGear 16 /* Übersetzungsverhältnis erfragen */
#define SM_SetHWE 17 /* Hardware-Endschalter-Maske setzen */
/* Fehlercodes von Isel */
#define ME_NoError 0
#define ME_WrongFunction 1
#define ME_InMove 4
#define ME_SoftEnd 5
#define ME_HardEnd 7
#define ME_NoRef 9
/* Eigene Fehlercodes */
#define ME_NothingAssigned 50
#define ME_AlreadyAssigned 51
#define ME_NoDriver 52
/* Ungültige Position */
#define INVPOS 0x80000000
#define MPK3D_Device_ID 0x378C /* VxD-ID, von Microsoft zugewiesen */
Detected encoding: OEM (CP437) | 1
|
|