require '_h2ph_pre.ph';

no warnings 'redefine';

unless(defined(&_I386_MPBIOSREG_H_)) {
    eval 'sub _I386_MPBIOSREG_H_ () {1;}' unless defined(&_I386_MPBIOSREG_H_);
    eval 'sub BIOS_BASE () {(0xf0000);}' unless defined(&BIOS_BASE);
    eval 'sub BIOS_SIZE () {(0x10000);}' unless defined(&BIOS_SIZE);
    eval 'sub BIOS_COUNT () {( &BIOS_SIZE);}' unless defined(&BIOS_COUNT);
    eval 'sub MPS_MCT_CPU () {0;}' unless defined(&MPS_MCT_CPU);
    eval 'sub MPS_MCT_BUS () {1;}' unless defined(&MPS_MCT_BUS);
    eval 'sub MPS_MCT_IOAPIC () {2;}' unless defined(&MPS_MCT_IOAPIC);
    eval 'sub MPS_MCT_IOINT () {3;}' unless defined(&MPS_MCT_IOINT);
    eval 'sub MPS_MCT_LINT () {4;}' unless defined(&MPS_MCT_LINT);
    eval 'sub MPS_MCT_NTYPES () {5;}' unless defined(&MPS_MCT_NTYPES);
    eval 'sub MPS_INTTYPE_INT () {0;}' unless defined(&MPS_INTTYPE_INT);
    eval 'sub MPS_INTTYPE_NMI () {1;}' unless defined(&MPS_INTTYPE_NMI);
    eval 'sub MPS_INTTYPE_SMI () {2;}' unless defined(&MPS_INTTYPE_SMI);
    eval 'sub MPS_INTTYPE_ExtINT () {3;}' unless defined(&MPS_INTTYPE_ExtINT);
    eval 'sub MPS_INTPO_DEF () {0;}' unless defined(&MPS_INTPO_DEF);
    eval 'sub MPS_INTPO_ACTHI () {1;}' unless defined(&MPS_INTPO_ACTHI);
    eval 'sub MPS_INTPO_ACTLO () {3;}' unless defined(&MPS_INTPO_ACTLO);
    eval 'sub MPS_INTPO_SHIFT () {0;}' unless defined(&MPS_INTPO_SHIFT);
    eval 'sub MPS_INTPO_MASK () {3;}' unless defined(&MPS_INTPO_MASK);
    eval 'sub MPS_INTTR_DEF () {0;}' unless defined(&MPS_INTTR_DEF);
    eval 'sub MPS_INTTR_EDGE () {1;}' unless defined(&MPS_INTTR_EDGE);
    eval 'sub MPS_INTTR_LEVEL () {3;}' unless defined(&MPS_INTTR_LEVEL);
    eval 'sub MPS_INTTR_SHIFT () {2;}' unless defined(&MPS_INTTR_SHIFT);
    eval 'sub MPS_INTTR_MASK () {3;}' unless defined(&MPS_INTTR_MASK);
    eval 'sub MPS_INT {
        local($p,$t) = @_;
	    eval q((((($p) &  &MPS_INTPO_MASK) <<  &MPS_INTPO_SHIFT) | ((($t) &  &MPS_INTTR_MASK) <<  &MPS_INTTR_SHIFT)));
    }' unless defined(&MPS_INT);
    eval 'sub MP_FP_SIG () {0x5f504d5f;}' unless defined(&MP_FP_SIG);
    eval 'sub MPFPS_FLAG_IMCR () {0x80;}' unless defined(&MPFPS_FLAG_IMCR);
    eval 'sub MP_CT_SIG () {0x504d4350;}' unless defined(&MP_CT_SIG);
    eval 'sub PROCENTRY_FLAG_EN () {0x1;}' unless defined(&PROCENTRY_FLAG_EN);
    eval 'sub PROCENTRY_FLAG_BP () {0x2;}' unless defined(&PROCENTRY_FLAG_BP);
    eval 'sub IOAPICENTRY_FLAG_EN () {0x1;}' unless defined(&IOAPICENTRY_FLAG_EN);
    eval 'sub MPS_ALL_APICS () {0xff;}' unless defined(&MPS_ALL_APICS);
}
1;
