I am working from the OpenBIOS-0.0.2. The beep code in /Firmware/init/timer.c
I modified the print code to output a different number of beeps (2 of 'a' and 6 for 'z'). The OpenBIOS code (as is) boots and then sits in a loop waiting for a character of input. Once the character arrives it trys to print it out.
I have some assembler code which also produces a beep. I used it for the initial debugging of /boo/boot16/start.asm. Are you interested in this?
I know someone else was asking earlier where to start in with this so here is what I've found out so far (someone can correct me if I'm wrong): 1. Download OpenBIOS.0.0.2pre1 2. Make sure you have the nasm assembler (www.web-sites.co.uk/nasm to get the latest) and Gnu C (this came with Linux) 3. At the root directory type "make config" this will make the configuration and step you through the selections for Processor, Chipset, etc. (if you go with the defaults it seems to come up for some 486 board ... this sort of seemed to work for my machine to get things started) 4. Now type make and it should make everything. Leaving you with a ROM.bin
So now that you can actually get it to build you can download the LoadBIOS program and try out your BIOS from RAM (as has been discussed in other messages). The documentation directory has a very brief description of the internal structure.
How about adding a new chipset? 1. Everything starts in /boot/boot16/start.asm. There is an include of chipset.inc. When you ran the configuration make you specify which chipset which is actually telling the make which directories to find things such as chipset.inc 2. First create a new chipset directory in /drivers/chipset. ( I copied ali_M1511 to create a new chipset (440BX) directory.) Comment everything out as you will eventually have to modify this for your own chipset. 3. Modify the .config to allow selection of your new chipset. 4. Modify /drivers/Config.mak and add your chipset for the make process 5. Now run make .config and make to rebuild it. It should now be using your new chipset definition. To confirm that you are compiling the correct code put in a deliberate error in your chipset assembler file. If everything is correct then you should get an error showing up in the build.
You follow the same approach for your superio.
Helpful books. PC Intern by Michael Tischer, Brun Jennrich The Programmer's PC Sourcebook by Thom Hogan (Seems to be of print but you might get your hands on a copy )
Hope this is of some use.
Wallace
-----Original Message----- From: James [SMTP:jvh@uclink4.berkeley.edu] Sent: Friday, January 28, 2000 6:39 PM To: 'openbios@freiburg.linux.de' Subject: RE: [OpenBIOS] where I'm at with the 440gx and reading nvram
I am working with the 440BX chipset and have it hobbling along. I am having problems with the MDA getting any screen output. I am able to get beeps out for different keys on the keyboard but no character display. (Of course, this could be just the situation
to
use Morse code :-).
What is the code to get it to beep?
James
To unsubscribe: send mail to majordomo@freiburg.linux.de with 'unsubscribe openbios' in the body of the message
- To unsubscribe: send mail to majordomo@freiburg.linux.de with 'unsubscribe openbios' in the body of the message