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

关于port80的问题~

[复制链接]
发表于 2008-7-5 22:21:09 | 显示全部楼层 |阅读模式
想手工做一个简单的bios。就是能开机以后从port80丢出一个值(从网页上看的,但做了以后不行??)~~~) j+ b: J/ `7 s' n- I  Q
% _/ e+ E& L+ r
*.asm中3 k! e6 O3 L+ x; Q: g
1. 对ICH9 中register RCBA Root Complex Base Address 填值。) b0 I! a! K: r% u) J, z4 C
2. 进入 Flat_Mode 对 GCS(Reserved Page Route) bit2 支0,让port80 走LPC。
" \# E" T9 V# t' \( E6 H0 D3. 向port80 丢值。: Z" I7 Q/ N6 h" K3 z$ I! p" j
*.exe
0 f) ?: W# u6 X% P& T; ]4 @/ C; f5 j4. 用 ml。exe 编译*。asm 生成的*。exe, 去掉头200h。/ A8 [  t! A* f# M( [
*.rom" x* V8 S0 _+ f
5. 剩下的代码添加到一个*.rom中,位置是ffff 0000. ?$ r$ m( `6 R& u8 o9 \5 A" p& n% L2 [
6. 在fffffff0 放e9 0d 00 想跳到ffff 0000执行程序。
; t* c7 c3 a# i0 u$ r1 P4 m7. 用烧录器烧到ROM中,开机" ?: v& z0 b6 f3 [5 n! Q
~~~~失败~~~~~~
& g& N" X! q# t; P+ l8 |6 w小弟才学bios试了一天还是不行特来请教~~~先谢谢各位大侠了!!~~~
发表于 2008-7-8 15:33:17 | 显示全部楼层
可以參考這邊的作法...& |9 j0 z. r8 [) r* \
http://biosengineer.blogspot.com/2007/11/x86-bios1.html
回复

使用道具 举报

发表于 2008-7-8 15:35:49 | 显示全部楼层
做法如下,我把它貼出來了......
2 t( W& y% s' L% x' v3 g: M; F- Y, {8 }; z! n1 V& E
COLDBOOT:
% ?5 D% l8 D5 Z2 ^* P, f2 v9 o5 u2 MCLI
! y/ s) n3 f) _* O;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  D/ t# {  P4 Z- J
;; 1. Enable big real mode
9 Y* b6 ?( S' w3 y& ]1 I;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0 `( y  C# C! j+ n! h9 K....2 U2 I' |. K! h  @  \6 f
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
" e; i: S( T- e' y$ z4 i7 d5 L8 a;; 2. Set RCRB base address
3 B% c; O8 @8 O+ h* `2 C0 ?6 g% o1 o;; 3. Config ICH9 Register
# |. x7 K. ~# T, B;; 4. Out 99h to Port 80h
+ F: G8 `' }- I;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
: F8 O+ @( e8 E; u( M....
9 m3 _1 B/ V5 [, `mov dx, 0cfch- L, _' j6 H& Q( g+ v8 z4 s
mov eax,RCRB_BaseAddr
, v. \; N! h' U" oout dx, eax2 [, {* Z- e8 v4 G
....
+ A6 R6 ]4 Z* s5 q0 dand BYTE PTR es:[esi], NOT (04h) ; RCRB+xxxxh bit 2=0 Output to LPC0 Q' z8 }. {$ _8 f7 M& D
....
1 q+ i$ ]. L9 R2 K  P5 ?fPostCode:
( T0 ^2 }0 a! C+ K3 imov al,099h
; ?0 w0 ]! J( {. s8 t( Zmov dx,80h
/ y1 i  {, a7 E1 }0 iout dx,al
% I0 F, w* a) N4 G  ^! Ljmp fPostCode ;無窮回圈ㄧ直顯示99h: C. ^; Q5 S6 w0 S5 }
...
, v  T: x# ]$ L$ x8 }5 i...& D4 r  I: z# {
wbinvd ; ...begins here on power up* L0 f# P& n: {: S
PUBLIC POWER
$ n( Y; d  j7 Y' J- m+ a- h' X: fPOWER:
# S9 f: m! e9 M/ V0 nJMP COLDBOOT ; first jump9 I! K! _$ a  P7 w. L
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-7-21 22:16 , Processed in 0.049900 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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