- 积分
- 8289
- 下载分
- 分
- 威望
- 点
- 原创币
- 点
- 下载
- 次
- 上传
- 次
- 注册时间
- 2007-3-24
- 精华
|
马上注册,获取阅读精华内容及下载权限
您需要 登录 才可以下载或查看,没有帐号?注册
x
原始资料见下面网址:
http://www.chinafix.com.cn/viewt ... mp;page=1#pid205666
我给大家翻译了一下,看有没有用处。
ASUS微码更新文件的结构
用于ASUS主板的微码更新文件与其他主板不同。不仅微码文件粘连在一起而且还有一个ASUS没有公布的文件头。
感谢Martin提供了文件中所有的资料,感谢Carl Tao把资料e-mail给我。
前2字节是更新微码的偏移地址,接着2字节是一个常数。
文件头的每行可以用下面C语言描述:
typedef struct {
unsigned short offset;
unsigned short constant;
};
文件头以16进制FFFF结束:
unsigned short endofHeader = 0xFFFF;
偏移的计算:4*N+2+2048*X ,其中X是更新微码(0到N-1)的编号
常数是0x4000(16进制4000),可能是一个长度相关的值。
注意:所有的整数都是16位endians(intel)。显然都是无符号值。
这就是全部。现在你需要做的是去写一个程序,这个程序生成一个文件头并与两个“0”块及想要的来自intel的更新微码粘到一起。微码文件的序列似乎是无关紧要的。
注意:整个文件不能大于65KB,因为文件头用的是16位无符号短整数作为偏移的。再说你的bIOS也没有那么多空间。
[ 本帖最后由 张先生 于 2007-11-8 14:57 编辑 ] |
|