| version 1.69, 2004/07/22 11:31:32 | version 1.74, 2005/03/05 06:02:28 | 
| Line 56  const IODATA *pterm; | Line 56  const IODATA *pterm; | 
 | gdc_biosreset(); | gdc_biosreset(); | 
 |  |  | 
 | p = iodata; | p = iodata; | 
| pterm = iodata + (sizeof(iodata) / sizeof(IODATA)); | pterm = iodata + NELEMENTS(iodata); | 
 | while(p < pterm) { | while(p < pterm) { | 
 | iocore_out8(p->port, p->data); | iocore_out8(p->port, p->data); | 
 | p++; | p++; | 
| Line 82  static void bios_memclear(void) { | Line 82  static void bios_memclear(void) { | 
 |  |  | 
 | static void bios_reinitbyswitch(void) { | static void bios_reinitbyswitch(void) { | 
 |  |  | 
| BYTE    prxcrt; | UINT8   prxcrt; | 
| BYTE    prxdupd; | UINT8   prxdupd; | 
| BYTE    biosflag; | UINT8   biosflag; | 
 | UINT8   boot; | UINT8   boot; | 
 |  |  | 
 | if (!(np2cfg.dipsw[2] & 0x80)) { | if (!(np2cfg.dipsw[2] & 0x80)) { | 
| Line 132  static void bios_reinitbyswitch(void) { | Line 132  static void bios_reinitbyswitch(void) { | 
 | biosflag |= 0x40; | biosflag |= 0x40; | 
 | } | } | 
 | mem[MEMB_BIOS_FLAG1] = biosflag; | mem[MEMB_BIOS_FLAG1] = biosflag; | 
| mem[MEMB_EXPMMSZ] = (BYTE)(pccore.extmem << 3); | mem[MEMB_EXPMMSZ] = (UINT8)(pccore.extmem << 3); | 
 | mem[MEMB_CRT_RASTER] = 0x0f; | mem[MEMB_CRT_RASTER] = 0x0f; | 
 |  |  | 
 | // FDD initialize | // FDD initialize | 
| Line 151  static void bios_reinitbyswitch(void) { | Line 151  static void bios_reinitbyswitch(void) { | 
 | mem[MEMB_F2DD_MODE] = 0xff; | mem[MEMB_F2DD_MODE] = 0xff; | 
 |  |  | 
 | #if defined(SUPPORT_CRT31KHZ) | #if defined(SUPPORT_CRT31KHZ) | 
| mem[MEMB_CRT_BIOS] = 0x80; | mem[MEMB_CRT_BIOS] |= 0x80; | 
 | #endif | #endif | 
 | #if defined(SUPPORT_PC9821) | #if defined(SUPPORT_PC9821) | 
 |  | mem[MEMB_CRT_BIOS] |= 0x04;             // 05/02/03 | 
 | mem[0x45c] = 0x40; | mem[0x45c] = 0x40; | 
 | #endif | #endif | 
 |  |  | 
| Line 210  static void setbiosseed(UINT8 *ptr, UINT | Line 211  static void setbiosseed(UINT8 *ptr, UINT | 
 | void bios_initialize(void) { | void bios_initialize(void) { | 
 |  |  | 
 | BOOL    biosrom; | BOOL    biosrom; | 
| char    path[MAX_PATH]; | OEMCHAR path[MAX_PATH]; | 
 | FILEH   fh; | FILEH   fh; | 
 | UINT    i; | UINT    i; | 
 | UINT32  tmp; | UINT32  tmp; | 
 | UINT    pos; | UINT    pos; | 
 |  |  | 
 | biosrom = FALSE; | biosrom = FALSE; | 
| getbiospath(path, str_biosrom, sizeof(path)); | getbiospath(path, str_biosrom, NELEMENTS(path)); | 
 | fh = file_open_rb(path); | fh = file_open_rb(path); | 
 | if (fh != FILEH_INVALID) { | if (fh != FILEH_INVALID) { | 
 | biosrom = (file_read(fh, mem + 0x0e8000, 0x18000) == 0x18000); | biosrom = (file_read(fh, mem + 0x0e8000, 0x18000) == 0x18000); | 
| Line 248  void bios_initialize(void) { | Line 249  void bios_initialize(void) { | 
 | } | } | 
 |  |  | 
 | #if defined(SUPPORT_PC9821) | #if defined(SUPPORT_PC9821) | 
| getbiospath(path, "bios9821.rom", sizeof(path)); | getbiospath(path, OEMTEXT("bios9821.rom"), sizeof(path)); | 
 | fh = file_open_rb(path); | fh = file_open_rb(path); | 
 | if (fh != FILEH_INVALID) { | if (fh != FILEH_INVALID) { | 
 | if (file_read(fh, mem + 0x0d8000, 0x2000) == 0x2000) { | if (file_read(fh, mem + 0x0d8000, 0x2000) == 0x2000) { | 
| Line 258  void bios_initialize(void) { | Line 259  void bios_initialize(void) { | 
 | } | } | 
 | file_close(fh); | file_close(fh); | 
 | } | } | 
 |  | #if defined(BIOS_SIMULATE) | 
 |  | mem[0xf8e80] = 0x98; | 
 |  | mem[0xf8e81] = 0x21; | 
 |  | mem[0xf8e82] = 0x1f; | 
 |  | mem[0xf8e83] = 0x20;    // Model Number? | 
 |  | mem[0xf8e84] = 0x2c; | 
 |  | mem[0xf8e85] = 0xb0; | 
 |  |  | 
 |  | // mem[0xf8eaf] = 0x21;         // <- これって何だっけ? | 
 |  | #endif | 
 | #endif | #endif | 
 |  |  | 
 | #if defined(BIOS_SIMULATE) | #if defined(BIOS_SIMULATE) |