📄 chipfn02.c
字号:
/*-
* ----------------------------------------------------------------------
* File : CHIPFN02.C
* Creator : Blake Miller
* Version : 01.00.00 February 1991
* Language : Microsoft Quick C Version 2.0
* Purpose : Intel 8255 Compatible Digital IO Functions
* : 80X86 IN Instruction Function
* ----------------------------------------------------------------------
*/
void chp_portrd (int d_port, unsigned char *d_byte);
/*- CHIP : Byte Get --------------------------**
* Read a byte from one of the 80X86 ports.
* Duplicates the library function inp()
*/
void chp_portrd (int d_port, unsigned char *d_byte)
{
unsigned char t_byte = 0; /* temporary byte */
/* set port address
* get data into AL
* store data into temporary variable
* Note: Use temporary variable because ASM has no idea
* what a pointer to an unsigned char is!
*/
_asm {
PUSH AX
PUSH DX
MOV DX, d_port
IN AL, DX ; get byte into AL
MOV t_byte, AL ; transfer data to C temporary
POP DX
POP AX
}
*d_byte = t_byte; /* transfer data back to C */
}
/*-
* ----------------------------------------------------------------------
* END CHIPFN02.C Source File
* ----------------------------------------------------------------------
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -