Re: Hook INT18 for IBM servers?
Jarrod Johnson <[email protected]>
| Newsgroups | gmane.network.etherboot.user |
|---|---|
| Message-ID | <[email protected]> |
I keep forgetting to reply to all. In short, the GIT change did allow gPXE to detect PnP capability, but INT19 is still detected/used, and I'm pretty sure that is an accurate assessment of IBM BIOS capabilities (PnP, but not BBS compliant). For hooking int18 instead of 19, that is correct in terms of what changed, though saving the original int18 vector is of little use, as an attempt to call the original int18 vector from the int18 handler causes IBM BIOS to be kind of confused and, at best, enter a boot loop where it will not progress past the gPXE rom, just jump back to the first INT18 handler it had registered until gPXE tells it to go back to start again. Glenn's change seemed to be a simple 'iret' statement, but I'm assuming I need to restore some state before I do iret as it seems to not work well, and I'm not a particularly skilled firmware/assembly guy to know enough of what I'm doing to assess better than that. On Sat, Aug 22, 2009 at 5:44 AM, Itay Gazit<[email protected]> wrote: > Hi Jarrod, > > Did you use latest git tree? On Aug 8 commit > 7a3a159af54d48158cb260f05043d8b503de7992 may relate to the problem. > > BTW: For using interrupt 18 instead of 19, you needed to replace, in > romprefix.S, 0x19 with 0x18 in the lines: > "pushl %es:( 0x19 * 4 )" and > "popl %es:( 0x19 * 4 )", correct? > > Thanks, > > Itay > > > On Sat, Aug 22, 2009 at 6:00 AM, Jarrod Johnson <[email protected]> > wrote: >> >> I see that back in December Glenn Brown pointed out that for IBM >> servers in Etherboot, he changed the hook to INT18 to iret to make it >> behave normally under IBM BIOS (which does not support BBS). >> >> I don't see gPXE having any config mechanism to build to hook INT18 >> instead of INT19. I changed it to hook INT18, but I couldn't figure >> out the right way to iret (all my attempts just hung). If it calls >> INT18 or INT19 to exit, it ends poorly (looping/hanging). At least >> when I hooked INT18, it was able to be moved around by the BIOS setup >> menu instead of forcing itself to boot first every time, though >> getting to a boot device past that I couldn't figure out due to the >> whole iret aspect. >> >> >> ------------------------------------------------------------------------------ >> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 >> 30-Day >> trial. Simplify your report design, integration and deployment - and focus >> on >> what you do best, core application coding. Discover what's new with >> Crystal Reports now. http://p.sf.net/sfu/bobj-july >> _______________________________________________ >> Etherboot-discuss mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/etherboot-discuss > > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july