コード例 #1
0
ファイル: BOOT.C プロジェクト: polaco1782/ultrahle
void reset(void)
{
    view_status("booting rom");
    flushdisplay();

    view_status("loading ultra.ini");
    inifile_read(cart.title);

    boot_boot();

    // have to load a second time... boot_boot overwrites some stuff
    // should be fixed
    view_status("loading ultra.ini");
    inifile_read(cart.title);

    view.hidestuff=0; view_changed(VIEW_RESIZE); flushdisplay();

    sym_findfirstos();
    if(cart.isdocalls)
    {
        print("Creating OSCALLS list.\n");
        sym_demooscalls(); // generate oscalls
    }
    else
    {
        sym_addpatches();
    }

    inifile_patches(0);
}
コード例 #2
0
ファイル: BOOT.C プロジェクト: polaco1782/ultrahle
void boot(char *cartname,int nomemmap)
{
    view.hidestuff=1; view_changed(VIEW_RESIZE); flushdisplay();

    st.pc=0; // pc displayed in exceptions generated by load

    view_status("loading rom");
    flushdisplay();

    if(!cartname) cart_dummy();
    else cart_open(cartname,!nomemmap);

    reset();
}
コード例 #3
0
static int
view_changed_timeout(void *d)
{
	EComponentView *component_view = d;
	EInfoLabel *el = g_object_get_data((GObject *)component_view, "info-label");
	EMFolderView *emfv = g_object_get_data((GObject *)el, "folderview");

	view_changed(emfv, component_view);

	g_object_set_data((GObject *)component_view, "view-changed-timeout", NULL);

	g_object_unref(el);
	g_object_unref(emfv);

	return 0;
}
コード例 #4
0
ファイル: ocio_view_combo.cpp プロジェクト: devernay/ramen-1
void ocio_view_combo_t::combo_index_changed( int indx)
{
	current_view_ = currentText().toStdString();
	view_changed( current_view_);
}
コード例 #5
0
ファイル: BOOT.C プロジェクト: polaco1782/ultrahle
void boot_boot(void)
{
    int a;

    // memory init (Must do before cpuinit!)
    mem_init(RDRAMSIZE);

    // cpu/compiler init
    cpu_init();

    // os emulator structures
    os_init();

    // map cart into memory (read only)
    for(a=0;a<cart.size;a+=4096)
    {
        mem_mapexternal(0x10000000+a,MAP_R,cart.data+a);
        mem_mapexternal(0x90000000+a,MAP_R,cart.data+a);
        mem_mapexternal(0xb0000000+a,MAP_R,cart.data+a);
    }

    // copy pif rom
#ifdef PIFROM
    memcpy(RPIF,pifRomImage,0x7c0);
    memcpy(WPIF,pifRomImage,0x7c0);
#endif

    cart.codebase=mem_read32(0x10000008);
    cart.codesize=0x100000; // guess, always same?

    if(cart.codesize>4096*1024)
    {
        print("error: codeblock too large");
        return;
    }

    if(mem_read32(0x10000540)!=0) cart.bootloader=1;

    if(cart.bootloader==1)
    {
        print("Alternate boot loader. ");
        cart.codebase&=~0x300000; // fzero
    }

    if(0)
    { // RealBoot
        mem_writerangeraw(0xa4000000,4096,cart.data);
        cpu_goto(0xa4000000);
    }
    else
    { // C-Boot
        mem_writerangeraw(cart.codebase,cart.codesize,cart.data+0x1000);
        sym_load(cart.symname);
        cpu_goto(cart.codebase);
    }

    st.framesync=cart.framesync;

    view.codebase=cart.codebase;
    view_changed(VIEW_CODE);
}