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

关于port80的问题~

[复制链接]
发表于 2008-7-5 22:21:09 | 显示全部楼层 |阅读模式
想手工做一个简单的bios。就是能开机以后从port80丢出一个值(从网页上看的,但做了以后不行??)~~~
- G8 w3 J, B) X, R, P
" y: C. ?8 ~8 X" F) c*.asm中
0 d' |& Z7 B5 x1. 对ICH9 中register RCBA Root Complex Base Address 填值。
/ Y; X4 B. l/ m/ {$ `2. 进入 Flat_Mode 对 GCS(Reserved Page Route) bit2 支0,让port80 走LPC。
- F) I+ s7 u5 |" E, [/ Y3. 向port80 丢值。
# ]9 m! |: s3 O2 W% d*.exe1 G8 H" i' W! V9 c. Y/ |+ Q/ Z
4. 用 ml。exe 编译*。asm 生成的*。exe, 去掉头200h。& T+ V+ y6 z' J5 R; B$ {
*.rom
) m4 y) J- A* e* `5. 剩下的代码添加到一个*.rom中,位置是ffff 0000
6 {# \, b+ I2 T. i5 \6 q7 U6. 在fffffff0 放e9 0d 00 想跳到ffff 0000执行程序。
' U, r/ r; ~+ L0 V8 i7. 用烧录器烧到ROM中,开机
; h6 [( {, M) ~" p& F2 q~~~~失败~~~~~~. a9 z# a4 \- x2 L( T
小弟才学bios试了一天还是不行特来请教~~~先谢谢各位大侠了!!~~~
发表于 2008-7-8 15:33:17 | 显示全部楼层
可以參考這邊的作法...
9 r5 @' P6 A0 Thttp://biosengineer.blogspot.com/2007/11/x86-bios1.html
回复

使用道具 举报

发表于 2008-7-8 15:35:49 | 显示全部楼层
做法如下,我把它貼出來了......
9 V0 h( g- K9 R4 L( Y6 @5 _% `* C( x* m5 f) [+ ~6 r
COLDBOOT:& C5 T) d& r! w  W' ?4 u; m! I6 m4 A
CLI, }- `1 I2 @, D
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4 o$ z+ x% }& y- ]- z% B0 w
;; 1. Enable big real mode
2 f3 t! d! p0 C2 i8 z/ I;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- V4 ^9 a3 h7 f: L3 N....
* K5 s: v7 C1 _6 N;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;( Y' }  s8 S; R; ^: Z, Z% c0 o# C$ k
;; 2. Set RCRB base address
( \( J4 B- w* v) ?" K;; 3. Config ICH9 Register
8 y) e/ O$ }7 y4 Q5 K' l% v1 Z7 D;; 4. Out 99h to Port 80h3 _! D" y8 R! B$ M/ M2 V2 v
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
# p, q5 F6 s$ B9 \4 b  c% S. d) p....) x* d- x, y+ ?: z& f
mov dx, 0cfch
& B8 c9 o; D# V) Mmov eax,RCRB_BaseAddr
  `5 H; r" j; [0 _- C. Pout dx, eax
: {0 F- j( F) _& X4 W! \1 N& M# ]....
# a1 A; s0 Y$ f: Iand BYTE PTR es:[esi], NOT (04h) ; RCRB+xxxxh bit 2=0 Output to LPC
" n0 c1 q* ]; r...." w# j' P$ b# U$ f8 o1 v  Y
fPostCode:2 b8 x) q* p1 J# k, j  d
mov al,099h
: z1 l( V/ x( X: a2 P# M. j& ]mov dx,80h
; l4 c. @1 c+ }out dx,al
4 U0 X" f2 [& O! ?6 [- r7 Ijmp fPostCode ;無窮回圈ㄧ直顯示99h$ f: m, \3 F1 z
...6 H* m8 ~) R- z& Y: S' W: Z
...
0 c4 W& v0 n# |  V0 F6 awbinvd ; ...begins here on power up
/ V" v* s$ z. {0 X  kPUBLIC POWER- t6 d) S- W$ J& s  w
POWER:
. x+ v4 i5 D+ @% d% z0 C, e% P4 e: x; qJMP COLDBOOT ; first jump
  G9 X. R) H! D+ }- r1 l& N- X: eDB '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, 2026-8-11 17:52 , Processed in 0.123937 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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