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

关于port80的问题~

[复制链接]
发表于 2008-7-5 22:21:09 | 显示全部楼层 |阅读模式
想手工做一个简单的bios。就是能开机以后从port80丢出一个值(从网页上看的,但做了以后不行??)~~~# ^# c: a' r: K. F
8 H9 G+ v% a7 C4 y: I
*.asm中
  F9 D2 m4 v3 M. Y1. 对ICH9 中register RCBA Root Complex Base Address 填值。
4 c! H3 _9 X( O6 x' F' F2. 进入 Flat_Mode 对 GCS(Reserved Page Route) bit2 支0,让port80 走LPC。3 O; n. I7 s' Q' u4 j) w5 c
3. 向port80 丢值。8 l; y* [3 T+ o, L4 ~
*.exe
5 a! F7 s0 H1 W* o: s5 I. T& g3 N4. 用 ml。exe 编译*。asm 生成的*。exe, 去掉头200h。
& g: e! Q2 N8 N$ i*.rom
( S' Q4 r- a% O( ~' V. W0 v* I5. 剩下的代码添加到一个*.rom中,位置是ffff 0000
. [* D% \; B3 E3 M$ T6. 在fffffff0 放e9 0d 00 想跳到ffff 0000执行程序。
4 q  h! ^) y# s  V7. 用烧录器烧到ROM中,开机
- B# N8 c- K: h: ~~~~~失败~~~~~~" s9 X; V% x4 V' O
小弟才学bios试了一天还是不行特来请教~~~先谢谢各位大侠了!!~~~
发表于 2008-7-8 15:33:17 | 显示全部楼层
可以參考這邊的作法...0 }) _) R2 v  b2 l9 J# d
http://biosengineer.blogspot.com/2007/11/x86-bios1.html
回复

使用道具 举报

发表于 2008-7-8 15:35:49 | 显示全部楼层
做法如下,我把它貼出來了....../ f7 H4 R; k) {8 r6 J1 M
  W, P* s8 b# K* f; D- u7 Z+ G
COLDBOOT:
& ]: `: S4 l; Q" ~CLI
- s8 o/ d7 u) \) }( K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+ j2 N9 \! V- V* V# f/ L8 [
;; 1. Enable big real mode7 u; ]+ R. O0 Q- _: a
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
5 O% z1 F1 q% n8 v% Z2 C- b+ S....0 N3 Q& O5 L: d- U  H* P
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
% \6 F' e! P% w- T: I8 m;; 2. Set RCRB base address
5 ^' t+ K: H7 [- Z, @;; 3. Config ICH9 Register
" a$ K( ?- F: c, T4 a" ?;; 4. Out 99h to Port 80h, A" U/ J% T7 i2 c: b2 l: E$ @. [
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
4 x# k- L% N) H" P% v. y....
: D6 W2 J! {, Omov dx, 0cfch( K1 i3 I, P! K8 u; t3 M
mov eax,RCRB_BaseAddr
: G. @" q3 m3 K0 R& Bout dx, eax3 ?" F4 A7 }9 ~9 G! H5 Q
....
6 ~9 g5 g  e$ c0 V- rand BYTE PTR es:[esi], NOT (04h) ; RCRB+xxxxh bit 2=0 Output to LPC
# q8 i4 g5 D& E/ K( w....
4 u3 z: f) [( G# r  u, ~- SfPostCode:
. O: |  ?- g1 `9 y+ C3 Lmov al,099h% t( T4 F  p) y) x) o- G
mov dx,80h
) O* U7 C* J! j+ v7 u7 Vout dx,al
2 y: R+ L0 T, k# o1 I) T; Ujmp fPostCode ;無窮回圈ㄧ直顯示99h" e9 i- X: S4 D9 w1 T+ z$ Z
...
$ l7 k! y" K& x* [+ w...
4 d. @. ?) ]3 Y( Vwbinvd ; ...begins here on power up
  ~; b8 [' H: O2 d4 ZPUBLIC POWER, @$ J2 r5 }0 i( R6 g: k
POWER:
% a2 O# ^% v* x$ E, ^JMP COLDBOOT ; first jump
0 C% x& ?3 O1 |6 a1 e$ rDB '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-1-18 22:45 , Processed in 0.055315 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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