|
char read_ec_ram(char ec_index)
9 \8 d- g, k; ^{ // Input ec_index = EC RAM Index
# k+ d9 D, S" M7 o P: f# p3 d __asm{
$ l. x- q6 z! D1 W, V2 S8 D2 J/ \0 i" X .486
6 D/ E. @( h2 h# B mov al, ec_index7 G. M2 {4 G+ a* V
out 0B3h, al, l+ q6 _% f$ H
mov al, 0E4h
! c2 p P) l; \- v. U3 ? out 0B2h, al // Call S/W SMI to read EC RAM0 { Z4 l( i1 M) r
in al, 0B3h // Read data store to I/O port 0B3h4 l4 E4 h" P* e# G2 r( Y
mov ec_index, al // Save read data to ec_index.
- _5 l, g8 Y# c) l' J- [$ A } - e' b" _# }; M, a3 U* R
return ec_index&0xff;( N8 a7 Y N* d: h1 p% @" x
}
! s2 j1 n" [9 C- R1 F+ h4 [4 j* w O南狼老师能否帮忙解释一下上面的代码,我只知道是通过bios读取ec的内容。 |
|