📄 bsedev.mh
字号:
#define PRINTER_TIMEOUT 0x0001
#define PRINTER_IO_ERROR 0x0008
#define PRINTER_SELECTED 0x0010
#define PRINTER_OUT_OF_PAPER 0x0020
#define PRINTER_ACKNOWLEDGED 0x0040
#define PRINTER_NOT_BUSY 0x0080
#define MODE_DTR_CONTROL 0x01
#define MODE_DTR_HANDSHAKE 0x02
#define MODE_CTS_HANDSHAKE 0x08
#define MODE_DSR_HANDSHAKE 0x10
#define MODE_DCD_HANDSHAKE 0x20
#define MODE_DSR_SENSITIVITY 0x40
#define MODE_AUTO_TRANSMIT 0x01
#define MODE_AUTO_RECEIVE 0x02
#define MODE_ERROR_CHAR 0x04
#define MODE_NULL_STRIPPING 0x08
#define MODE_BREAK_CHAR 0x10
#define MODE_RTS_CONTROL 0x40
#define MODE_RTS_HANDSHAKE 0x80
#define MODE_TRANSMIT_TOGGLE 0xC0
#define MODE_NO_WRITE_TIMEOUT 0x01
#define MODE_READ_TIMEOUT 0x02
#define MODE_WAIT_READ_TIMEOUT 0x04
#define MODE_NOWAIT_READ_TIMEOUT 0x06
#define DEVTYPE_48TPI 0x0000
#define DEVTYPE_96TPI 0x0001
#define DEVTYPE_35 0x0002
#define DEVTYPE_8SD 0x0003
#define DEVTYPE_8DD 0x0004
#define DEVTYPE_FIXED 0x0005
#define DEVTYPE_TAPE 0x0006
#define DEVTYPE_UNKNOWN 0x0007
#define DTR_ON 0x01
#define RTS_ON 0x02
#define DTR_OFF 0xFE
#define RTS_OFF 0xFD
#define RIGHTSHIFT 0x0001
#define LEFTSHIFT 0x0002
#define CONTROL 0x0004
#define ALT 0x0008
#define SCROLLLOCK_ON 0x0010
#define NUMLOCK_ON 0x0020
#define CAPSLOCK_ON 0x0040
#define INSERT_ON 0x0080
#define LEFTCONTROL 0x0100
#define LEFTALT 0x0200
#define RIGHTCONTROL 0x0400
#define RIGHTALT 0x0800
#define SCROLLLOCK 0x1000
#define NUMLOCK 0x2000
#define CAPSLOCK 0x4000
#define SYSREQ 0x8000
#ifndef INCL_MOU
#define MOUSE_MOTION 0x0001
#define MOUSE_MOTION_WITH_BN1_DOWN 0x0002
#define MOUSE_BN1_DOWN 0x0004
#define MOUSE_MOTION_WITH_BN2_DOWN 0x0008
#define MOUSE_BN2_DOWN 0x0010
#define MOUSE_MOTION_WITH_BN3_DOWN 0x0020
#define MOUSE_BN3_DOWN 0x0040
#define MHK_BUTTON1 0x0001
#define MHK_BUTTON2 0x0002
#define MHK_BUTTON3 0x0004
#define MOU_NOWAIT 0x0000
#define MOU_WAIT 0x0001
#endif
#define SCREENDD_GETCURRENTBANK 0x00
#define SCREENDD_SETCURRENTBANK 0x01
#define SCREENDD_SVGA_ID 0x08
#define SCREENDD_SVGA_OEM 0x09
#define SCREENDD_UPDATEMEMORY 0x0A
#define SCREENDD_GETLINEARACCESS 0x0B
#define SCREENDD_GETGLOBALACCESS 0x0C
#define SCREENDD_FREEGLOBALACCESS 0x0D
#define SCREENDD_REGISTER_RING0_CALLER 0x0E
#define SCREENDD_WAIT_ON_RING0_CALLER 0x0F
#define SCREENDD_CATEGORY 0x80
#define SCREENDD_NAME "SCREEN$"
#define GETLINEAR_FLAG_MAPPHYSICAL 0x00000010L
#define GETLINEAR_FLAG_MAPPROCESS 0x00000020L
#define GETLINEAR_FLAG_MAPSHARED 0x00000400L
#define GETLINEAR_FLAG_MAPATTACH 0x80000000L
#define EGA_BIT 4
#define VGA_BIT 8
#define EGAVGA_BIT (EGA_BIT+VGA_BIT)
#define READ_BANK 0
#define WRITE_BANK 1
#define MODE_TEXT 0
#define MODE_PLANAR 1
#define MODE_LINEAR 2
typedef struct _DCBINFO {
USHORT usWriteTimeout;
USHORT usReadTimeout;
BYTE fbCtlHndShake;
BYTE fbFlowReplace;
BYTE fbTimeout;
BYTE bErrorReplacementChar;
BYTE bBreakReplacementChar;
BYTE bXONChar;
BYTE bXOFFChar;
} DCBINFO, FAR *PDCBINFO;
typedef struct _TRACKLAYOUT {
BYTE bCommand;
USHORT usHead;
USHORT usCylinder;
USHORT usFirstSector;
USHORT cSectors;
struct {
USHORT usSectorNumber;
USHORT usSectorSize;
} TrackTable[1];
} TRACKLAYOUT, FAR *PTRACKLAYOUT;
typedef struct _BIOSPARAMETERBLOCK {
USHORT usBytesPerSector;
BYTE bSectorsPerCluster;
USHORT usReservedSectors;
BYTE cFATs;
USHORT cRootEntries;
USHORT cSectors;
BYTE bMedia;
USHORT usSectorsPerFAT;
USHORT usSectorsPerTrack;
USHORT cHeads;
ULONG cHiddenSectors;
ULONG cLargeSectors;
BYTE abReserved[6];
USHORT cCylinders;
BYTE bDeviceType;
USHORT fsDeviceAttr;
} BIOSPARAMETERBLOCK, FAR *PBIOSPARAMETERBLOCK;
typedef struct _SCREENGROUP {
USHORT idScreenGrp;
USHORT fTerminate;
} SCREENGROUP, FAR *PSCREENGROUP;
typedef struct _FRAME {
BYTE bCharsPerLine;
BYTE bLinesPerInch;
} FRAME, FAR *PFRAME;
typedef struct _KBDTYPE {
USHORT usType;
USHORT reserved1;
USHORT reserved2;
} KBDTYPE, FAR *PKBDTYPE;
typedef struct _LINECONTROL {
BYTE bDataBits;
BYTE bParity;
BYTE bStopBits;
BYTE fTransBreak;
} LINECONTROL, FAR *PLINECONTROL;
typedef struct _MODEMSTATUS {
BYTE fbModemOn;
BYTE fbModemOff;
} MODEMSTATUS, FAR *PMODEMSTATUS;
typedef struct _TRACKFORMAT {
BYTE bCommand;
USHORT usHead;
USHORT usCylinder;
USHORT usReserved;
USHORT cSectors;
struct {
BYTE bCylinder;
BYTE bHead;
BYTE idSector;
BYTE bBytesSector;
} FormatTable[1];
} TRACKFORMAT, FAR *PTRACKFORMAT;
typedef struct _RXQUEUE {
USHORT cch;
USHORT cb;
} RXQUEUE, FAR *PRXQUEUE;
typedef struct _DEVICEPARAMETERBLOCK {
USHORT reserved1;
USHORT cCylinders;
USHORT cHeads;
USHORT cSectorsPerTrack;
USHORT reserved2;
USHORT reserved3;
USHORT reserved4;
USHORT reserved5;
} DEVICEPARAMETERBLOCK, FAR *PDEVICEPARAMETERBLOCK;
typedef struct _PTRDRAWFUNCTION {
USHORT usReturnCode;
PFN pfnDraw;
PCH pchDataSeg;
} PTRDRAWFUNCTION, FAR *PPTRDRAWFUNCTION;
typedef struct _PTRDRAWADDRESS {
USHORT reserved;
PTRDRAWFUNCTION ptrdfnc;
} PTRDRAWADDRESS, FAR *PPTRDRAWADDRESS;
typedef struct _SHIFTSTATE {
USHORT fsState;
BYTE fNLS;
} SHIFTSTATE, FAR *PSHIFTSTATE;
typedef struct _HOTKEY {
USHORT fsHotKey;
UCHAR uchScancodeMake;
UCHAR uchScancodeBreak;
USHORT idHotKey;
} HOTKEY, FAR *PHOTKEY;
typedef struct _MONITORPOSITION {
USHORT fPosition;
USHORT index;
ULONG pbInBuf;
USHORT offOutBuf;
} MONITORPOSITION, FAR *PMONITORPOSITION;
typedef struct _RATEDELAY {
USHORT usDelay;
USHORT usRate;
} RATEDELAY, FAR *PRATEDELAY;
typedef struct _CODEPAGEINFO {
PBYTE pbTransTable;
USHORT idCodePage;
USHORT idTable;
} CODEPAGEINFO, FAR *PCODEPAGEINFO;
typedef struct _CPID {
USHORT idCodePage;
USHORT Reserved;
} CPID, FAR *PCPID;
typedef struct _LDTADDRINFO {
PULONG pulPhysAddr;
USHORT cb;
} LDTADDRINFO, FAR *PLDTADDRINFO;
typedef struct _PTRDRAWDATA {
USHORT cb;
USHORT usConfig;
USHORT usFlag;
} PTRDRAWDATA, FAR *PPTRDRAWDATA;
typedef struct _GETLINIOCTLDATA {
ULONG PacketLength;
ULONG PhysicalAddress;
ULONG ApertureSize;
PBYTE LinearAddress;
ULONG LinearFlags;
} GETLINIOCTLDATA, *PGETLINIOCTLDATA;
typedef struct _BANKINFO {
ULONG ulBankLength;
USHORT usBank;
USHORT usVideoModeType;
USHORT usReadWriteMode;
} BANKINFO;
typedef struct _GLOBALIOCTLDATA {
ULONG ProcessAddress;
ULONG AddressLength;
ULONG GlobalAddress;
} GLOBALIOCTLDATA;
typedef struct _OEMSVGAINFO {
USHORT AdapterType;
USHORT ChipType;
ULONG Memory;
} OEMSVGAINFO;
typedef struct _OEMINFO {
ULONG OEMLength;
USHORT Manufacturer;
ULONG ManufacturerData;
} OEMINFO;
typedef struct _GETGLOBALPACKET {
ULONG GlobalPktLength;
GLOBALIOCTLDATA GlobalPktData[1];
} GETGLOBALPACKET;
:include cplusepi.sp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -