写我自己的BIOS [英] Writing my own BIOS

查看:453
本文介绍了写我自己的BIOS的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我没疯,只是重新发明轮子:D结果
我写的引导加载器,鼠标和放大器;键盘迷你驱动程序,迷你操作系统等。

I'm not crazy, just reinventing the wheel :D
I wrote boot-loaders, mouse & keyboard mini-drivers, mini OS and so on.

我总是试图避免DOS中断,只能通过BIOS的人,试图往前走统一的迷你操作系统,但突然我决定写我自己的BIOS :)

I'm always trying to avoid DOS interrupts, using BIOS ones only, trying to go forward a unity mini OS, but suddenly I decided to write my own BIOS :)

传奇说:结果
我是高层次的程序员,然后低一级。有一天我会成为机器语言编程!

The Legend said :
I was high-level programmer, then low-level one. One day I'll be machine-language programmer!

是用汇编一个BIOS?我怎么能闪光呢?什么是机制?我可以开始编辑我当前的BIOS?

Is a BIOS written in assembly? How can I flash it? What's the mechanism? Can I start editing my current BIOS?

推荐答案

一个BIOS可以用汇编写的,但不必须是,某些部分需要注册后才能获得系统调用的参数,因为他们不匹配的编译器调用约定。

A BIOS can be written in assembly but doesnt have to be, some parts need to be to get the parameters for the system call since they dont match the compilers calling convention.

你怎么闪了吗?从主板的主板不同,我将开始与一个开放源码的虚拟机和写入的BIOS。或者创造一个你写的BIOS虚拟机。该机制各不相同,从供应商的供应商,一般你启动DOS(DOS不是死的,这是非常活跃在PC世界,尤其主板开发和嵌入式系统)。我周围难道不惹一个真正的主板,如果你不已经知道你所有的这些问题,你打算砖一些主板,如果你采取的路径。

How do you flash it? Varies from motherboard to motherboard, I would start with an open source virtual machine and write a bios for that. Or create a virtual machine where you have written the bios. The mechanism varies from vendor to vendor, generally you boot dos (dos is not dead, it is very much alive in the pc world, esp motherboard development and embedded systems). I wouldnt mess around with a real motherboard, if you dont already know the answers to all of these questions you are going to brick a number of motherboards if you take that path.

您可以尝试采取BIOS升级您的主板和逆向工程它(虽然有可能是通过协议的点击,说你不会)。如果你看着办吧,你既可以加载并在破解。我不会去那里,你将砖头你的系统,你看着办吧了。

You can try to take a bios upgrade for your mother board and reverse engineer it (although there is probably a click through agreement that says that you wont). If you figure it out you can both load it and hack at at. I wouldnt go there, you will brick your system before you figure it out.

时真的写BIOS,你所追求的?相当老派,会像写6502 code的乐趣。还有很多低层次的问题,更加有用和有趣。

Is writing a bios really what you are after? Fairly old school, would be like writing 6502 code for fun. There are many low level problems that are more useful and as interesting.

如果你能ASM写作机器code写的是不是都不难,你可以只是去做到这一点的乐趣。 86是可怕的,你应该花一些时间学习其他的系统和他们的汇编和机器code(和写作的操作系统为他们)。 ARM占主导地位的世界,犯规依靠BIOS。有人告诉我,要得到一款显卡了,你还是要拨弄在x86 BIOS在x86的东西非x86系统上,可以计算出如何使一个主流的视频卡,而不需要运行x86的BIOS。看一个模拟器运行BIOS,看看它做什么,弄清楚更换电源没有初始化BIOS的做...写一个指令集仿真器或反汇编超出写作机code中的下一个步骤,我不会浪费即使时间在x86第二,虽然,我可以建议的替代品清单(或者你可以只用模拟器我写的或收集的发挥)。

If you can write asm the writing machine code is not that difficult at all, you could just go do that for fun. x86 is dreadful, you should spend some time learning other systems and their asm and machine code (and writing operating systems for them). ARM dominates the world and doesnt rely on a bios. I have been told that to get a video card up on a non-x86 system you still have to fiddle something in x86 on the x86 bios, could figure out how to bring up a mainstream video card without the need to run the x86 bios. watch an emulator run the bios and see what it does, figure it out replace that power on init without the bios doing it...Writing an instruction set simulator or disassembler is the next step beyond writing machine code, I wouldnt waste even a second of time on x86 though, I can suggest a list of alternatives (or you could just play with the simulators I have written or collected).

如果一个x86 BIOS是你想要去的方式,你的最佳路径是写,更换,或者在BIOS破解虚拟机是QEMU,VirtualBox的,或其他。更换与你的BIOS可能会在某些目录中替换文件或使用命令行选项来指定一个备用的BIOS。一旦你做好了经历了那么如果还有与他们传统的BIOS主板或许可以破解你的方式进入编程一(需要购买几个各类型的主板,因为你将砖一些)。有了这么多的嵌入式系统在那里,就可以了$ 20至$ 200,经验同级别虎子,它没有任何意义乱砍PC主板没有像样的原理图和文档上。你可以挖一个原始PC的原理图和BIOS上市被记录在案,并且被嵌在BIOS中,所以如果你犯规启动(和犯规破坏主板)它不是一块砖就可以重新编程或更换BIOS芯片。可能需要使用一个微控制器站在为假冒的BIOS,为寻求更多的重新编程的芯片BIOS正确的硬件也许是更难找到工作的原PC的......有一个Amiga的社区,可能是一个更加有乐趣,并会很高兴有你改善/调整他们的BIOS,把说现代化的硬件遗留系统调用的后面。

If an x86 bios is the way you want to go, your best path is to write, replace, or hack on a bios for a virtual machine being qemu, virtualbox, or other. Replacing that bios with yours would likely be replacing a file in some directory or using a command line option to specify an alternate bios. Once you are well experienced in that then if there are still motherboards with legacy bioses on them perhaps you can hack your way into programming one (need to buy several of each type of motherboard as you WILL brick some). With so many embedded systems out there that can be had for $20 to $200 with the same level of experience gained, it doesnt make sense to hack on a pc motherboard without decent schematics and documentation. You could dig up an original PC with the schematic and bios listing being documented, and the bios being socketed so if yours doesnt boot (and doesnt destroy the motherboard) it isnt a brick you can reprogram or replace the bios chip. Probably want to use a microcontroller to stand in as a fake bios, as finding the right hardware to reprogram more bios chips is perhaps harder to find that working original PC's...There is an amiga community that is likely a lot more fun and would be happy to have you improving/tweaking their bios, say putting modern hardware behind the legacy system calls.

这篇关于写我自己的BIOS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆