Date: Wed, 28 Jun 1995 06:33:46 +1000 From: Bruce Evans <bde@zeta.org.au> To: bde@zeta.org.au, rgrimes@gndrsh.aac.dev.com Cc: hackers@freebsd.org, wpaul@skynet.ctr.columbia.edu Subject: Re: 2.05R reboot hangs Message-ID: <199506272033.GAA22671@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>> You initialize it before jumping to the reset vector. >One that is very very hard to get right for most [3-4]86's is the >CPUID that is stored id DX:AX on power up reset since that is the >only way to get this value. "Genuine Intel NOT!" :-). >I don't want to call cold boot, I guess that was not clear from >above. Also jumping to 0xFFFF:0000 (note your address above is >not the reset vector the value here is) is not a documented interface There is no value there, only code that normally has a value embedded in it. >to the BIOS. Calling cold boot is about as reliable as triple faulting >or hitting the keyboard reset. The one and only proper way to >make this work reliable on all machines as far as I can tell would >be a good old int 0x19, and that means I had better leave the BDA's >intact. As I explained about 10 messages ago, int 0x19 isn't even useful for rebooting from DOS because it doesn't reinitialize hooked vectors. I now think the keyboard reset is best. It apparently requires disabling gateA20. The code that disables it needs to run from an address < 1MB. Page 0 is a good place. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199506272033.GAA22671>