Look at grub or lilo, they are bootloaders, maybe you can modify them. They show some messages before loading the OS, letting you also select the OS.
Main Topics
Browse All TopicsHello!
I want to know how can I develop a code in C or Assembly which will show a "Hello" message before OS?
When you have OS installed on your PC, Linux, Windows or ... (if OS makes difference for now I just need Hard disk which have Windows installed)
I want to show a message! Hello message there...
How can I do that?
Thanks from now!
Please provide some example codes and useful links for it!
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
Perhaps this could help, in customizing LILO:
http://www.samspublishing.
Perhaps this can help.
http://www.omninerd.com/20
>>I don't want to use Linux or grub or modifying another's software!
There is no miracles in this world, at least in computer industry. To print something on the screen (you'll possibly want also some delay, so you'll be able to read this message) you need to "load" your program to memory and to cause CPU to "jump" to it. And you want to do this before OS.
Well, as jhance mentioned BIOS (and you probably can not change it) by INT 19h loads Master boot loader from HD or boot loader from floppy to RAM and jumps to it. And this master bootloader chooses active partition and loads boot loader from it to load OS. So if you want to be "BEFORE" OS you need to "insert" yourself in between BIOS INT 19h and OS boot loader. The easest way it to change master boot loader, as most of "advanced" boot managers do.
How to do this ?
http://home.no.net/tkos/in
Shows you MBR and how to change it.
http://www.beroset.com/loa
Explains how to create your own bootloader.
--> I don't want to use Linux or grub or modifying another's software!
Then read read grub and Lilo's source code and figure out how to write a master boot loader. Then write your own from scratch. There is no magic. The systems BIOS initilizes the computer and then reads the master boot loader record, which then loads the next program. The next program is either a OS or a OS loader (NT OS Loader, LILO, Grub are just a few of the many examples).
The master boot loader could be on a harddrive, cdrom, floopy, or USB device.
Maybe it is sufficient for you to exchange the boot logo in Windows XP to display your message. It will show while the OS gets loaded and you can use graphics in it.
Here is a description how to use the /bootlogo option in the boot.ini file:
http://members.ozemail.com
Business Accounts
Answer for Membership
by: jhancePosted on 2006-12-07 at 01:50:16ID: 18091829
To do this you must replace or modify whatever boot loader is installed on the system. The system BIOS loads the first sector from the boot device into RAM and executes it.
So you can put whatever you want there, and it will get loaded and run.