📄 ports.h
字号:
/* ***************************************************************************
* PORTIO95.h - include file for VxD PORTIO95
*
*
* Disclaimer??
* Copyright??
* Note: This file is best viewed with tab stops of 4
*/
/* this section defines some constants we use */
#define MAX_PORTIO_VERSION_STR_LEN 40 /* max len of the returned version string */
#define PORTIO95_DEVICE_ID 0xDB0
/* this section defines some of the control codes
* (ie functions we can call */
#define PORTIO_GETVERSION 0x1000
#define PORTIO_DEBUGMODEON 0x1001
#define PORTIO_DEBUGMODEOFF 0x1002
#define PORTIO_FINDLPT1 0x1003
#define PORTIO_FINDLPT2 0x1004
#define PORTIO_FINDLPT3 0x1005
#define PORTIO_UNSETPORT 0x1007
#define PORTIO_SETPORT 0x1008
#define PORTIO_READCREGCOOK 0x1009
#define PORTIO_READCREG PORTIO_READCREGCOOK
#define PORTIO_READCREGRAW 0x100A
#define PORTIO_WRITECREGCOOK 0x100B
#define PORTIO_WRITECREG PORTIO_WRITECREGCOOK
#define PORTIO_WRITEDREG 0x100C
#define PORTIO_READSREGRAW 0x100D
#define PORTIO_READSREGCOOK 0x100E
#define PORTIO_WRITECREGRAW 0x100F
#define PORTIO_READSREG PORTIO_READSREGCOOK
#define PORTIO_SETD0 0x1010
#define PORTIO_SETD1 0x1011
#define PORTIO_SETD2 0x1012
#define PORTIO_SETD3 0x1013
#define PORTIO_SETD4 0x1014
#define PORTIO_SETD5 0x1015
#define PORTIO_SETD6 0x1016
#define PORTIO_SETD7 0x1017
#define PORTIO_SETCREGINPUT 0x1018
#define PORTIO_SETCREGOUTPUT 0x1019
#define PORTIO_READS3 0x101A
#define PORTIO_READS4 0x101B
#define PORTIO_READS5 0x101C
#define PORTIO_READS6 0x101D
#define PORTIO_READRAWS7 0x101E /* gives you exactly what the Sreg has */
#define PORTIO_READCOOKEDS7 0x101F /* performs logical NOT for you */
#define PORTIO_READS7 PORTIO_READCOOKEDS7
#define PORTIO_UNSETD0 0x1020
#define PORTIO_UNSETD1 0x1021
#define PORTIO_UNSETD2 0x1022
#define PORTIO_UNSETD3 0x1023
#define PORTIO_UNSETD4 0x1024
#define PORTIO_UNSETD5 0x1025
#define PORTIO_UNSETD6 0x1026
#define PORTIO_UNSETD7 0x1027
#define PORTIO_READRAWC0 0x102A /* gives you exactly what the Creg has */
#define PORTIO_READCOOKEDC0 0x102B /* performs logical NOT for you */
#define PORTIO_READRAWC1 0x102C /* gives you exactly what the Creg has */
#define PORTIO_READCOOKEDC1 0x102D /* performs logical NOT for you */
#define PORTIO_READC2 0x102E /* gives you exactly what the Creg has */
#define PORTIO_READRAWC3 0x102F /* gives you exactly what the Creg has */
#define PORTIO_READCOOKEDC3 0x1030 /* performs logical NOT for you */
#define PORTIO_READC0 PORTIO_READCOOKEDC0
#define PORTIO_READC1 PORTIO_READCOOKEDC1
#define PORTIO_READC3 PORTIO_READCOOKEDC3
#define PORTIO_SETC0ASINPUT 0x1031
#define PORTIO_SETC1ASINPUT 0x1032
#define PORTIO_SETC2ASINPUT 0x1033
#define PORTIO_SETC3ASINPUT 0x1034
#define PORTIO_SETC0ASOUTPUT 0x1035
#define PORTIO_SETC1ASOUTPUT 0x1036
#define PORTIO_SETC2ASOUTPUT 0x1037
#define PORTIO_SETC3ASOUTPUT 0x1038
#define PORTIO_READ_CS_BYTE 0x103C
#define PORTIO_UNSETC0 0x1040
#define PORTIO_UNSETC1 0x1041
#define PORTIO_UNSETC2 0x1042
#define PORTIO_UNSETC3 0x1043
#define PORTIO_SETC0 0x1044
#define PORTIO_SETC1 0x1045
#define PORTIO_SETC2 0x1046
#define PORTIO_SETC3 0x1047
/* Some synonyms for above function calls
* These act exactly the same but refer to the function
* in terms of the effect it has on the output pins
*/
#define PORTIO_SEND_BYTE_TO_PINS2_TO_9 PORTIO_WRITEDREG
#define PORTIO_SET_PINS_1_14_16_17_AS_INPUT PORTIO_SETCREGINPUT
#define PORTIO_SET_PINS_1_14_16_17_AS_OUTPUT PORTIO_SETCREGOUTPUT
#define PORTIO_SEND_BYTE_TO_PINS1_14_16_17 PORTIO_WRITECREGCOOK
#define PORTIO_READPINS1_14_16_17 PORTIO_READCREGCOOK
#define PORTIO_READPINS15_13_12_11 PORTIO_READSREGCOOK
#define PORTIO_PIN2HIGH PORTIO_SETD0
#define PORTIO_PIN3HIGH PORTIO_SETD1
#define PORTIO_PIN4HIGH PORTIO_SETD2
#define PORTIO_PIN5HIGH PORTIO_SETD3
#define PORTIO_PIN6HIGH PORTIO_SETD4
#define PORTIO_PIN7HIGH PORTIO_SETD5
#define PORTIO_PIN8HIGH PORTIO_SETD6
#define PORTIO_PIN9HIGH PORTIO_SETD7
#define PORTIO_PIN2LOW PORTIO_UNSETD0
#define PORTIO_PIN3LOW PORTIO_UNSETD1
#define PORTIO_PIN4LOW PORTIO_UNSETD2
#define PORTIO_PIN5LOW PORTIO_UNSETD3
#define PORTIO_PIN6LOW PORTIO_UNSETD4
#define PORTIO_PIN7LOW PORTIO_UNSETD5
#define PORTIO_PIN8LOW PORTIO_UNSETD6
#define PORTIO_PIN9LOW PORTIO_UNSETD7
#define PORTIO_READPIN1 PORTIO_READC0
#define PORTIO_READPIN14 PORTIO_READC1
#define PORTIO_READPIN16 PORTIO_READC2
#define PORTIO_READPIN17 PORTIO_READC3
#define PORTIO_READPIN15 PORTIO_READS3
#define PORTIO_READPIN13 PORTIO_READS4
#define PORTIO_READPIN12 PORTIO_READS5
#define PORTIO_READPIN10 PORTIO_READS6
#define PORTIO_READPIN11 PORTIO_READS7
#define PORTIO_SETPIN1ASINPUT PORTIO_SETC0ASINPUT
#define PORTIO_SETPIN14ASINPUT PORTIO_SETC1ASINPUT
#define PORTIO_SETPIN16ASINPUT PORTIO_SETC2ASINPUT
#define PORTIO_SETPIN17ASINPUT PORTIO_SETC3ASINPUT
#define PORTIO_SETPIN1ASOUTPUT PORTIO_SETC0ASOUTPUT
#define PORTIO_SETPIN14ASOUTPUT PORTIO_SETC1ASOUTPUT
#define PORTIO_SETPIN16ASOUTPUT PORTIO_SETC2ASOUTPUT
#define PORTIO_SETPIN17ASOUTPUT PORTIO_SETC3ASOUTPUT
#define PORTIO_PIN1HIGH PORTIO_SETC0
#define PORTIO_PIN14HIGH PORTIO_SETC1
#define PORTIO_PIN16HIGH PORTIO_SETC2
#define PORTIO_PIN17HIGH PORTIO_SETC3
#define PORTIO_PIN1LOW PORTIO_UNSETC0
#define PORTIO_PIN14LOW PORTIO_UNSETC1
#define PORTIO_PIN16LOW PORTIO_UNSETC2
#define PORTIO_PIN17LOW PORTIO_UNSETC3
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -