--- np2/pccore.c 2003/11/30 11:20:55 1.22 +++ np2/pccore.c 2003/12/04 09:47:08 1.25 @@ -1,4 +1,6 @@ #include "compiler.h" +#include "strres.h" +#include "dosio.h" #include "soundmng.h" #include "sysmng.h" #include "timemng.h" @@ -31,7 +33,6 @@ #include "timing.h" //#include "hostdrv.h" #include "debugsub.h" -#include "dosio.h" const char np2version[] = NP2VER_CORE; @@ -51,7 +52,7 @@ 1, 0x82, 0, {0x17, 0x04, 0x1f}, {0x0c, 0x0c, 0x02, 0x10, 0x3f, 0x3f}, 1, 80, 0, - {"", ""}, ""}; + {"", ""}, "", ""}; PCCORE pc = { PCBASECLOCK25, 4, @@ -184,6 +185,18 @@ static void sound_term(void) { void pccore_init(void) { + char *p; + + p = np2cfg.biospath; + if (p[0]) { + file_setseparator(p, sizeof(np2cfg.biospath)); + } + else { + file_cpyname(p, file_getcd(str_null), sizeof(np2cfg.biospath)); + } + + i286_initialize(); + pal_initlcdtable(); pal_makelcdpal(); pal_makeskiptable(); @@ -519,8 +532,8 @@ void pccore_exec(BOOL draw) { resetcnt++; #endif pic_irq(); - if (cpuio.reset_req) { - cpuio.reset_req = 0; + if (i286core.s.resetreq) { + i286core.s.resetreq = 0; I286_CS = 0xf000; CS_BASE = 0xf0000; I286_IP = 0xfff0;