apm.S revision 7c478bd95313f5f23a4c958a745db2134aa03244
/*
* GRUB -- GRand Unified Bootloader
* Copyright (C) 2000, 2001 Free Software Foundation, Inc.
*
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/*
! setup.S Copyright (C) 1991, 1992 Linus Torvalds
*/
/* APM BIOS installation check */
int $0x15
/* error -> no APM BIOS */
/* check for "PM" signature */
/* no signature -> no APM BIOS */
/* Is 32 bit supported? */
/* no ... */
/* Disconnect first just in case */
/* ignore return code */
int $0x15
/* 32 bit connect */
/* paranoia */
int $0x15
/* error */
/* BIOS code segment */
/* BIOS entry point offset */
/* BIOS 16 bit code segment */
/* BIOS data segment */
/* BIOS code segment length */
/* BIOS data segment length */
/*
* Redo the installation check as the 32 bit connect
* modifies the flags returned on some BIOSs
*/
/* APM BIOS installation check */
/* paranoia */
int $0x15
/* error -> should not happen, tidy up */
/* check for "PM" signature */
/* no signature -> should not happen, tidy up */
/* record the APM BIOS version */
/* and flags */
/* remove 32 bit support bit */
/* Some paranoia here: Always Disconnect from APM */
/* ignore return code */
int $0x15