require '_h2ph_pre.ph';

unless(defined(&_MACHINE_CPU_H_)) {
    eval 'sub _MACHINE_CPU_H_ () {1;}' unless defined(&_MACHINE_CPU_H_);
    require 'machine/psl.ph';
    require 'm68k/cpu.ph';
    eval 'sub M68K_MMU_MOTOROLA () {1;}' unless defined(&M68K_MMU_MOTOROLA);
    eval 'sub cpu_swapin {
        local($p) = @_;
	    eval q();
    }' unless defined(&cpu_swapin);
    eval 'sub cpu_wait {
        local($p) = @_;
	    eval q();
    }' unless defined(&cpu_wait);
    eval 'sub cpu_swapout {
        local($p) = @_;
	    eval q();
    }' unless defined(&cpu_swapout);
    eval 'sub CLKF_USERMODE {
        local($framep) = @_;
	    eval q(((($framep)-> &sr &  &PSL_S) == 0));
    }' unless defined(&CLKF_USERMODE);
    eval 'sub CLKF_BASEPRI {
        local($framep) = @_;
	    eval q(((($framep)-> &sr &  &PSL_IPL) == 0));
    }' unless defined(&CLKF_BASEPRI);
    eval 'sub CLKF_PC {
        local($framep) = @_;
	    eval q((($framep)-> &pc));
    }' unless defined(&CLKF_PC);
    if(0) {
	eval 'sub CLKF_INTR {
	    local($framep) = @_;
    	    eval q(((($framep)-> &sr &  &PSL_M) == 0));
	}' unless defined(&CLKF_INTR);
    } else {
	eval 'sub CLKF_INTR {
	    local($framep) = @_;
    	    eval q((0));
	}' unless defined(&CLKF_INTR);
    }
    eval 'sub need_resched () {
        eval q({ &want_resched = 1;  &setsoftast();});
    }' unless defined(&need_resched);
    eval 'sub profile_tick {
        local($p, $framep) = @_;
	    eval q((($p)-> &p_flag |=  &P_OWEUPC,  &setsoftast()));
    }' unless defined(&profile_tick);
    eval 'sub need_proftick {
        local($p) = @_;
	    eval q((($p)-> &p_flag |=  &P_OWEUPC,  &setsoftast()));
    }' unless defined(&need_proftick);
    eval 'sub signotify {
        local($p) = @_;
	    eval q( &setsoftast());
    }' unless defined(&signotify);
    eval 'sub setsoftast () {
        eval q(( &astpending = 1));
    }' unless defined(&setsoftast);
    require 'machine/mtpr.ph';
    eval 'sub AMIGA_68020 () {(1<<1);}' unless defined(&AMIGA_68020);
    eval 'sub AMIGA_68030 () {(1<<2);}' unless defined(&AMIGA_68030);
    eval 'sub AMIGA_68040 () {(1<<3);}' unless defined(&AMIGA_68040);
    eval 'sub AMIGA_68881 () {(1<<4);}' unless defined(&AMIGA_68881);
    eval 'sub AMIGA_68882 () {(1<<5);}' unless defined(&AMIGA_68882);
    eval 'sub AMIGA_FPU40 () {(1<<6);}' unless defined(&AMIGA_FPU40);
    eval 'sub AMIGA_68060 () {(1<<7);}' unless defined(&AMIGA_68060);
    if(defined(&_KERNEL)) {
    }
    eval 'sub CPU_CONSDEV () {1;}' unless defined(&CPU_CONSDEV);
    eval 'sub CPU_MAXID () {2;}' unless defined(&CPU_MAXID);
    eval 'sub CTL_MACHDEP_NAMES () {{ { 0, 0}, { "console_device",  &CTLTYPE_STRUCT }, };}' unless defined(&CTL_MACHDEP_NAMES);
    if(defined(&_KERNEL)) {
	if(defined(&DRACO)) {
	}
	if(defined(&DRACO)) {
	}
	if(defined( &M68040) || defined( &M68060)) {
	}
	if(defined(&GENERIC)) {
	}
    }
}
1;
