|
|
我查看了些资料说winio可以读出我按照那个来发现一get就异常8 t" M% m8 W7 q! B
void Wait4Get()
/ C2 M) g+ M! ~6 o2 J/ X4 Z0 `{9 ?5 U) P; E0 s3 u$ p2 }0 d
DWORD tmp = 0;) q: c1 Q2 n2 ?% W
GetPortVal(0x6c, &tmp, 1);0 X! Z1 u2 K( s$ u3 U; R% j
if (tmp != 1)6 S: ]* F* {; X
Wait4Set();: B% k3 ~& j P1 z
}( q: y r C ~( D
void Wait4Set()! z& u7 D' n/ y. r
{
/ P; U; i; Z" x" R5 O' |! a, F DWORD tmp = 0;( H; d f8 x# [4 ?2 I/ S2 k% N
GetPortVal(0x6c, &tmp, 1);( ^+ i) r5 J3 M' _( {
if (tmp != 2)& I& y+ X, r% ?0 f2 o
Wait4Set();( i9 G y2 d/ ]8 A [( j/ }
( Y8 g& C: M1 @* H2 s; B5 W: r
}
, l4 e! @4 ?& M0 J0 Y0 Hint main(int argc, char* argv[])
0 B' t5 s$ f+ E5 A3 t{
. h- w9 G, L* r# o& C0 w* i DWORD temp =0;9 [- R9 e' B, {
if(!InitializeWinIo())! p" x; q' ?* o$ v
{! p Y7 d6 P/ I( L+ L) b
printf("fail");
# T9 f4 b- |9 Q6 b* i1 ^* d' f }
% R' d; O# q. f9 ^3 \ Wait4Set();! R) {6 o8 R/ N( c3 n2 S; n
SetPortVal(0x6c,0x80,1);
* ^; Q9 e a! ~% ^ Wait4Set();
' H; T+ j: p0 t SetPortVal(0x68,0xE7,1);
# u1 X( t6 q# E$ B# k Wait4Get();6 A1 J, |* r- D
GetPortVal(0x68,&temp,1);4 @! C5 p9 Z$ Q# y
printf("%s",temp);9 E6 a1 U& h% b6 _+ |' J% T
ShutdownWinIo();% c+ J2 G# O8 Y8 h& Q
return 0;
. q7 l( s2 i: f9 C7 |} |
|