找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 8928|回复: 4

关于port80的问题~

[复制链接]
发表于 2008-7-5 22:21:09 | 显示全部楼层 |阅读模式
想手工做一个简单的bios。就是能开机以后从port80丢出一个值(从网页上看的,但做了以后不行??)~~~+ M/ c: F! x- a  M% F

) E  Q, z' s) o*.asm中+ _$ `' G; ?4 E! `; H* ]* ]
1. 对ICH9 中register RCBA Root Complex Base Address 填值。) E0 F0 h  N. y; L
2. 进入 Flat_Mode 对 GCS(Reserved Page Route) bit2 支0,让port80 走LPC。6 l- `; O9 u$ d( S
3. 向port80 丢值。3 S. m! e: O2 H1 @
*.exe
& K7 E: ^: X& n# s4. 用 ml。exe 编译*。asm 生成的*。exe, 去掉头200h。
6 _/ X7 L! b+ p) l*.rom8 a/ j. L. x; l$ z# b! x* M
5. 剩下的代码添加到一个*.rom中,位置是ffff 0000
3 ]' V* Y& [' ?$ N8 K, n6. 在fffffff0 放e9 0d 00 想跳到ffff 0000执行程序。! w$ U6 G; D9 p
7. 用烧录器烧到ROM中,开机4 ?" d* v- V0 M. O
~~~~失败~~~~~~
. W* V7 Y/ k8 h" d* y小弟才学bios试了一天还是不行特来请教~~~先谢谢各位大侠了!!~~~
发表于 2008-7-8 15:33:17 | 显示全部楼层
可以參考這邊的作法...
" K2 F/ J$ Q" Lhttp://biosengineer.blogspot.com/2007/11/x86-bios1.html
回复

使用道具 举报

发表于 2008-7-8 15:35:49 | 显示全部楼层
做法如下,我把它貼出來了......
' C) t+ h* s* ^- T$ Q4 e+ F8 Z7 ?4 W$ t' W- P' Z& y
COLDBOOT:
% E8 q. L+ S6 ZCLI
. v+ t1 E. n: D6 C: P;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3 d5 a: [2 q' o5 p% a4 h  g;; 1. Enable big real mode3 x& H1 H* G' x
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- m9 [  J- N" |. W: J....
. {! M( L2 o7 F+ j% x5 f;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
& L) E& e0 |$ q) R2 P;; 2. Set RCRB base address
0 r' \4 @. l2 r" D, u7 Z9 ^9 I;; 3. Config ICH9 Register7 b- A# s& s7 `2 e4 ?9 ^
;; 4. Out 99h to Port 80h
- r1 U$ Q4 L) P; E' ];;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0 @9 s# F! H4 X( d# d/ K0 D5 m  t9 `....( m: g# ]% e6 H' b& r
mov dx, 0cfch
2 ~: i5 a7 g% V) x* `mov eax,RCRB_BaseAddr
; P$ L3 ]! p4 n/ l  v3 Iout dx, eax
/ k$ ?4 E& G1 O& S....1 |& \9 c; j3 h- ^& T8 w0 Z8 Q$ u2 R
and BYTE PTR es:[esi], NOT (04h) ; RCRB+xxxxh bit 2=0 Output to LPC
$ j' c5 L7 D& _# n, X4 t....$ ]: w: Z& L) X% L! r7 g
fPostCode:
( K2 H7 |+ t" x5 t9 Vmov al,099h
6 J% L, M& ~' b  e) x2 Mmov dx,80h
% Y1 H, A! l4 Jout dx,al" O$ k3 C6 x0 @5 m
jmp fPostCode ;無窮回圈ㄧ直顯示99h% G+ m% ~; x8 U& ~
...
9 x2 z6 P0 ]8 b...% t4 U& z; s  A
wbinvd ; ...begins here on power up; T7 X9 E% H8 R
PUBLIC POWER1 U1 D% x' Q& l: l+ A: i9 S
POWER:
+ ~$ S+ P/ c( L. wJMP COLDBOOT ; first jump
% q# O* E' K  {" O' d+ hDB '11/14/07',00,00,00 ; My release marker
回复

使用道具 举报

 楼主| 发表于 2008-7-8 19:11:54 | 显示全部楼层
其实我就是看了上面的文章才开始做的哈~~~~~~但没成功~!不知道各位大侠是否有成功~??
回复

使用道具 举报

发表于 2008-7-9 23:36:17 | 显示全部楼层
不知道可不可以把弄好的rom文件传来看看?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2024-5-20 14:52 , Processed in 0.097181 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表