|
|
我查看了些资料说winio可以读出我按照那个来发现一get就异常5 I8 v2 m0 B: J& h! U+ ^$ D% N e
void Wait4Get()% O* A5 ?+ G' Z" k
{. Z" H6 t3 {. }( h9 `
DWORD tmp = 0;
; X5 B7 t7 T/ ^; P1 B; k$ y; R( z, r( B GetPortVal(0x6c, &tmp, 1);
+ H" h; t% h; _: \ if (tmp != 1)
; ?4 d% {" L& z9 _2 h Wait4Set();
+ q& Z5 A6 _4 r0 d J4 [. M& @% W7 \6 U}$ ?8 h S3 q; |1 B% c
void Wait4Set()6 |2 L' v# j! M$ T; z8 t
{4 \7 |1 t2 f. U
DWORD tmp = 0;
1 [4 X+ k! `- | GetPortVal(0x6c, &tmp, 1);
, n- l) ?6 N& m* `+ G& g6 Y if (tmp != 2)
( ~# R' x" \. p% i Wait4Set();
R( I# k P% d; q* t& n
+ h' ]* X Q8 _- n/ Z}
, K$ f: h' S+ x( T( X# ~int main(int argc, char* argv[])
. D' [/ t9 A- f) ^% a+ e7 W0 E" ^{
' U; ^% H }% _8 ? DWORD temp =0;
' M; X9 w% E) V7 p if(!InitializeWinIo())5 C3 ?: Y+ g2 G
{. D1 m7 L- A0 P
printf("fail");9 b& O5 y i9 Y1 Q9 u2 l
}
2 L* h) y: D0 {' X Wait4Set();
6 v+ ^7 M0 u1 t7 m) @: ~ SetPortVal(0x6c,0x80,1);
* L$ L. q/ I2 n3 ~ Wait4Set();
* D8 p1 M t' U9 R) b SetPortVal(0x68,0xE7,1);% {, L$ }; A5 o6 l3 `7 }/ t6 }9 b7 z
Wait4Get();
$ d! b# n v4 W( t. U8 p GetPortVal(0x68,&temp,1);: Z: V4 {# ?! f, T2 M7 N$ }8 ^
printf("%s",temp);6 g' e) I2 @! _3 p7 `' D1 E
ShutdownWinIo();
4 W, N2 E- L- h" S% v# m return 0;
6 i0 e3 t0 T Q! }} |
|