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

关于port80的问题~

[复制链接]
发表于 2008-7-5 22:21:09 | 显示全部楼层 |阅读模式
想手工做一个简单的bios。就是能开机以后从port80丢出一个值(从网页上看的,但做了以后不行??)~~~( ?# l8 y% e1 Q5 Z+ i3 o
' I  i3 M' g) }
*.asm中$ e  Y& u8 c4 j! b, n
1. 对ICH9 中register RCBA Root Complex Base Address 填值。
6 ~1 J: d6 B5 d2. 进入 Flat_Mode 对 GCS(Reserved Page Route) bit2 支0,让port80 走LPC。
; L( J, [# R7 |3. 向port80 丢值。) U6 ~* R! x- [2 \* i
*.exe
5 _! y) s* E' K2 M4. 用 ml。exe 编译*。asm 生成的*。exe, 去掉头200h。7 P  {# b& S" ^' g1 k; L/ Y
*.rom& `/ s7 a% c  {/ |
5. 剩下的代码添加到一个*.rom中,位置是ffff 00003 B8 n% g1 J4 o1 {
6. 在fffffff0 放e9 0d 00 想跳到ffff 0000执行程序。
; d" N8 s. L# f, d7. 用烧录器烧到ROM中,开机
, K7 L) I0 ?7 L& N1 j5 ]~~~~失败~~~~~~
: p7 k7 d  o" O( A; B小弟才学bios试了一天还是不行特来请教~~~先谢谢各位大侠了!!~~~
发表于 2008-7-8 15:33:17 | 显示全部楼层
可以參考這邊的作法...; u# l" _% Z& d- H
http://biosengineer.blogspot.com/2007/11/x86-bios1.html
回复

使用道具 举报

发表于 2008-7-8 15:35:49 | 显示全部楼层
做法如下,我把它貼出來了......
6 B  _' A1 J; X3 c4 `" X' P4 m
$ w0 x0 h0 j! O( Q& TCOLDBOOT:
$ ~% R7 y7 A! cCLI+ u, P- C4 Z9 m' b4 ?
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;/ d( r. T0 t9 B" M: [2 m
;; 1. Enable big real mode3 y8 |' t8 M5 N9 g
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  N) T2 y/ e% E( V2 a) f1 Y....
* ?! x- C: U; W5 c: c. p) m. B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2 X6 `  s# H5 b
;; 2. Set RCRB base address2 X' ~# ?4 W$ \" x% k
;; 3. Config ICH9 Register
8 X( V- H* B" j. G/ c;; 4. Out 99h to Port 80h2 F" P9 q8 g# R& J4 }: ]; @' S
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; F4 l! Q9 Q6 `) S& |- l8 D
....
. ~/ }+ X3 ]$ ?8 x9 \  K9 ~) Fmov dx, 0cfch
$ S" r; u7 ]  j1 g! _mov eax,RCRB_BaseAddr# f' l" y. _& H* E% u
out dx, eax
) {+ R1 \3 B+ p. u0 c....5 w9 R3 f# V- U0 s% _9 o
and BYTE PTR es:[esi], NOT (04h) ; RCRB+xxxxh bit 2=0 Output to LPC
* @5 q/ e) G* F) O....
6 s; [" v# p8 g' q+ t! PfPostCode:
( ^" d! w& u2 {% j7 Cmov al,099h- q) W8 @9 ~" o" u0 d
mov dx,80h$ g1 s9 I1 x1 a- G# Z+ p/ t- ^; {
out dx,al
2 u$ \# |# F2 S# j9 \# Yjmp fPostCode ;無窮回圈ㄧ直顯示99h
- V% f( ^  l! _8 M8 [" x% ?& T5 h...* k; H( [4 F9 l' I: g: I; ^6 S. u! a
...
1 L; d1 W& u& I7 b8 U; Z3 u7 Wwbinvd ; ...begins here on power up9 A+ Q; f7 X- ]8 \5 \5 G
PUBLIC POWER
  z; Z) u0 c4 a' u: iPOWER:9 y$ O; C0 S1 ~2 \
JMP COLDBOOT ; first jump
9 ^. K- d, G0 {  P8 mDB '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-2-1 05:35 , Processed in 0.059096 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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