Re: [Etherboot-developers] Windows 98 slow booting
Brought to you by:
marty_connor,
stefanhajnoczi
|
From: Michael B. <mb...@fe...> - 2002-10-16 21:45:27
|
On Thu, 17 Oct 2002, Ken Yap wrote: > >We call gateA20_unset() on some exit paths but not all. The proper > >solution would probably be to have a static inline void eb_exit(int) that > >calls gateA20_unset() (and maybe some other last-minute tidy-ups) before > >doing an exit(). All existing calls to exit() should then be replaced > >with calls to eb_exit(). However, I'm not sure that I completely > >understand all the places where exit() is currently used in Etherboot, so > >I'm not confident in doing this. For example, in main.c we have: > > case 255: > > exit(0); > > state = -1; > > break; > >i.e. code following an exit(), which is puzzling me. > >Thoughts? > From a glance at the code, that looks like the correct solution for 5.0. > All the occurences of exit are in main, except for one in bootmenu.c > which I'll do for completeness. Have you tried it and does it work? If > so I'll make the changes later today. I tried temporarily adding gateA20_unset to one exit path and it worked (in the sense that Windows then booted normally). I haven't made any changes to the code - be my guest. I should have this test machine available for another few days if anyone wants to come up with a solution for 5.1, but it'll have to go back to its owner at some point. I don't have any other machines that exhibit this problem. Michael Brown http://www.fensystems.co.uk |