鱼C论坛

 找回密码
 立即注册
查看: 3406|回复: 2

bios

[复制链接]
发表于 2022-12-30 13:45:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
有没有懂BIOS开发的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-12-30 13:51:49 | 显示全部楼层
不懂,BIOS还有开发这说法?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-31 11:58:51 | 显示全部楼层
uefi的有,你所说的是uefi bios吧?还是legacy bios  ?
https://kagurazakakotori.github.io/ubmp-cn/foreward.html

legacy bios好像没给接口吧?你怎么开发?
uefi的我在物理机上试过
legacy bios我没有在物理机上试过
如果是在虚拟机中的话,那就简单了,直接改代码就可以了
sh-5.1$ pwd
/source/level_1/bochs/bochs-2.6.11/bochs-2.6.11/bios
sh-5.1$ ls
acpi-dsdt.dsl           biossums.c         rombios32.ld            usage.cc                        VGABIOS-lgpl-latest-cirrus-debug
acpi-dsdt.hex           bios_usage         rombios32start.S   vgabios-cirrus.bin-1.13.0        VGABIOS-lgpl-latest-debug
apmbios.S           Makefile.in         rombios.c            VGABIOS-elpin-2.40                VGABIOS-lgpl-README
bios.bin-1.13.0    makesym.perl  rombios.h            VGABIOS-elpin-LICENSE
BIOS-bochs-latest  notes         SeaBIOS-README     VGABIOS-lgpl-latest
BIOS-bochs-legacy  rombios32.c         SeaVGABIOS-README  VGABIOS-lgpl-latest-cirrus
sh-5.1$ du -bsh rombios.c
315K        rombios.c
sh-5.1$

vga bios也一样,直接改代码
sh-5.1$ pwd
/source/level_1/vgabios/vgabios-0.8a
sh-5.1$ ls
banshee.c      dataseghack  vbe_display_api.txt  vgabios-cirrus.debug.txt          VGABIOS-lgpl-latest.cirrus.debug.bin
biossums       Makefile     vbe.h                 vgabios-cirrus.txt                  VGABIOS-lgpl-latest.debug.bin
biossums.c     Notes            vbetables-gen         vgabios.debug.txt                  vgabios.txt
BUGS               README            vbetables-gen.c         vgabios.h                          vgafonts.h
ChangeLog.old  tests            vbetables.h                 VGABIOS-lgpl-latest.banshee.bin  vgatables.h
clext.c        TODO            vgabios-banshee.txt  VGABIOS-lgpl-latest.bin
COPYING        vbe.c            vgabios.c                 VGABIOS-lgpl-latest.cirrus.bin
sh-5.1$ du -bsh clext.c
39K        clext.c
sh-5.1$

uefi的也一样,改代码
不过我没有研究过uefi的代码
上一次我枚举pci配置空间的时候就用的uefi的加载器
pci配置空间里面有很多的id,如果你需要对应的字符串,你需要自己去查表
因为这个表非常的大,我把这个查表的操作写到程序里面以后,uefi的加载器就不给我加载程序了
之后我就没有继续研究uefi的东西
所以,如果你需要修改uefi的代码的话,那就自己研究uefi的代码吧
如果你需要修改legacy bios的代码,是rombios.c这个文件
vga bios是clext.c这个文件,这个是32位接口部分的文件,其他的还没有研究,我目前正在32位保护模式下调用16位的vbe函数,clext.c就是那个接口部分的代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 21:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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