|
|
我查看了些资料说winio可以读出我按照那个来发现一get就异常
; z* F# H! _* xvoid Wait4Get()+ C; B/ L# L: b2 S, z
{
" S) y$ j+ Y* r9 ^1 u! ]: p DWORD tmp = 0;
) q) p; M* i8 S8 F0 {3 ?1 a7 ]; P GetPortVal(0x6c, &tmp, 1);
6 j$ M7 z5 B' y1 K if (tmp != 1)
9 r$ T) a' n+ o Wait4Set();
: I; w; u9 c( @, U9 V5 F6 \/ q3 B}
4 ^) E2 B- V, D1 h2 pvoid Wait4Set()$ `( w# a5 B, |! x) Z
{
2 V; k& C, O0 M" e; @, a DWORD tmp = 0;
$ u4 n+ x+ P# Q: M+ y$ D GetPortVal(0x6c, &tmp, 1);+ s n( ^$ L$ Z4 \) J0 l* I
if (tmp != 2)4 j" x! u3 n% j5 t
Wait4Set();
; o& ^% Z' b2 q: P
& U3 u5 g" y) w+ y$ [ W$ p$ U}* y1 ?: j/ C. X6 `5 m' k9 H
int main(int argc, char* argv[])
7 A' @$ D& x8 h' L! [& N+ e6 j{ 1 T3 w$ h& m* f
DWORD temp =0;
! {$ l! v2 U$ I4 S- B if(!InitializeWinIo())
2 R+ ~4 X2 R/ _: R {$ P* a n! }) q6 g# L! B, \' V
printf("fail");
9 G. G$ w+ L4 D3 k; p: i3 h }; c6 S; H/ V2 k/ L
Wait4Set();
3 L( i% r/ d* q- x& c+ ]" m0 Z& u SetPortVal(0x6c,0x80,1);
8 G q& n% Z! R Wait4Set();
0 T1 F6 E) Q" r! ~1 M SetPortVal(0x68,0xE7,1);# i& I5 v; V% C# N+ P0 i8 B1 U! ^
Wait4Get();
9 i1 S; l$ e9 o7 y, F9 }, z GetPortVal(0x68,&temp,1);
( C. k; l+ Y( ?2 u8 X printf("%s",temp);7 Y' f+ D9 y$ e) X
ShutdownWinIo();
1 j( k/ r- X# d, K return 0;# A( t4 L" E0 d" s9 g
} |
|