--- np2/i286c/i286c.c 2003/12/19 23:33:49 1.15 +++ np2/i286c/i286c.c 2003/12/25 20:30:22 1.17 @@ -148,8 +148,29 @@ void i286c_initialize(void) { void i286c_reset(void) { ZeroMemory(&I286_STAT, sizeof(I286_STAT)); - I286_CS = 0x1fc0; - CS_BASE = 0x1fc00; + I286_CS = 0xf000; + CS_BASE = 0xf0000; + I286_IP = 0xfff0; + I286_ADRSMASK = 0xfffff; +} + +void i286c_shut(void) { + + I286_MSW = 0; + + I286_ES = 0; + I286_CS = 0xf000; + I286_SS = 0; + I286_DS = 0; + + ES_BASE = 0; + CS_BASE = 0xf0000; + SS_BASE = 0; + DS_BASE = 0; + SS_FIX = 0; + DS_FIX = 0; + + I286_IP = 0xfff0; I286_ADRSMASK = 0xfffff; }