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

关于port80的问题~

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

5 B2 M# @" G4 H- s*.asm中
  G) A9 g4 g7 {% z1. 对ICH9 中register RCBA Root Complex Base Address 填值。, v/ \1 @  d* L
2. 进入 Flat_Mode 对 GCS(Reserved Page Route) bit2 支0,让port80 走LPC。$ f' o) }; e3 s* v, c( @% q
3. 向port80 丢值。& u# N% Q. g6 g* ^3 d0 ^
*.exe
+ |$ A+ h, v' e; j' K4. 用 ml。exe 编译*。asm 生成的*。exe, 去掉头200h。
+ c3 E6 p7 E  X  f*.rom
7 `, f! R" j1 P' M  x' @5. 剩下的代码添加到一个*.rom中,位置是ffff 0000
7 C  J/ [* j( c) M+ G* U6. 在fffffff0 放e9 0d 00 想跳到ffff 0000执行程序。/ \6 M, Y& _# K' l9 {$ L
7. 用烧录器烧到ROM中,开机9 \! l( B! L% z0 ], I) N7 |1 b
~~~~失败~~~~~~: c$ C! w: F! I% v- w3 e
小弟才学bios试了一天还是不行特来请教~~~先谢谢各位大侠了!!~~~
发表于 2008-7-8 15:33:17 | 显示全部楼层
可以參考這邊的作法.... n9 q; k% T1 B) D5 r; ^+ L) J% P
http://biosengineer.blogspot.com/2007/11/x86-bios1.html
回复

使用道具 举报

发表于 2008-7-8 15:35:49 | 显示全部楼层
做法如下,我把它貼出來了......
2 z; b2 E9 u" l0 q+ a' z: n% Z. I/ F7 V- U* k
COLDBOOT:
7 K! m' i* z1 a' Q3 dCLI$ t$ p: r! V5 {
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
) {; b  |) _' N1 O5 F% k' a' N8 I;; 1. Enable big real mode: X  S0 ~& ^+ s5 N! z9 K! o
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0 ?/ z$ h, y' g8 G$ ^3 |
....) _/ k7 h/ i* p7 }( j) d' |' r
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
* u9 Z; v* b% f0 w0 }3 [;; 2. Set RCRB base address
7 W) E$ M7 q- @! H& E5 O: B" D* J;; 3. Config ICH9 Register
* [* j+ o+ n  v0 k7 \: Z0 F: U4 K;; 4. Out 99h to Port 80h
( ?0 g! x3 u3 O/ R4 i& c! L: o;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  _: l. V% N; _2 E: o....0 M1 \# O0 b% R& v8 z
mov dx, 0cfch
6 Q- d; K% V) x3 a8 ]4 ?+ L7 pmov eax,RCRB_BaseAddr
, j* R% {: f) ^0 e) X( t( d/ ]out dx, eax
: m) G) ?) f, s' @....
9 J% @8 Q/ q- W& e$ I: O2 O- Iand BYTE PTR es:[esi], NOT (04h) ; RCRB+xxxxh bit 2=0 Output to LPC9 E+ |/ j5 R8 w0 t. R' \% N
....
! c# X/ ?2 X$ E0 MfPostCode:, K% ^4 N( J; y: b8 }. }8 i
mov al,099h
* _, E* `2 l2 U. k+ k* Y# w9 Rmov dx,80h# O- T. H# `7 `: n
out dx,al
4 _, H* N2 e( A' X3 D. u0 `- e; G9 X, ~2 [* ?jmp fPostCode ;無窮回圈ㄧ直顯示99h
9 H1 s7 E% ?, ~) g0 U1 R...
- ~1 a$ v$ j8 T3 t..., M" q# x5 Z: O  D; s8 n3 Y
wbinvd ; ...begins here on power up
) y: `5 @: d( @  Y) kPUBLIC POWER, D" T- }! A9 x5 F: d$ M
POWER:
& a. P3 i1 [3 W. j: TJMP COLDBOOT ; first jump, x' K2 A* S$ J2 _
DB '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-3-15 06:45 , Processed in 0.185179 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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