|
|
| version 1.3, 2003/12/09 15:49:14 | version 1.9, 2005/02/07 14:46:11 |
|---|---|
| Line 11 | Line 11 |
| // 000000-0fffff メインメモリ | // 000000-0fffff メインメモリ |
| // 100000-10ffef HMA | // 100000-10ffef HMA |
| // 110000-193fff FONT-ROM/RAM | // 110000-193fff FONT-ROM/RAM |
| // 1a8000-1e7fff VRAM1 | // 1a8000-1bffff VRAM1 |
| // 1c0000-1c7fff ITF-ROM BAK | |
| // 1c8000-1dffff EPSON RAM | |
| // 1e0000-1e7fff VRAM1 | |
| // 1f8000-1fffff ITF-ROM | // 1f8000-1fffff ITF-ROM |
| #define USE_HIMEM 0x110000 | |
| enum { | enum { |
| VRAM_STEP = 0x100000, | VRAM_STEP = 0x100000, |
| VRAM_B = 0x0a8000, | VRAM_B = 0x0a8000, |
| Line 41 enum { | Line 46 enum { |
| extern "C" { | extern "C" { |
| #endif | #endif |
| extern BYTE mem[0x200000]; | extern UINT8 mem[0x200000]; |
| void MEMCALL i286_memorymap(UINT type); | |
| void MEMCALL i286_romareamap(UINT16 map); | |
| void MEMCALL i286_vram_dispatch(UINT operate); | void MEMCALL i286_vram_dispatch(UINT operate); |
| BYTE MEMCALL i286_memoryread(UINT32 address); | UINT8 MEMCALL i286_memoryread(UINT32 address); |
| UINT16 MEMCALL i286_memoryread_w(UINT32 address); | UINT16 MEMCALL i286_memoryread_w(UINT32 address); |
| void MEMCALL i286_memorywrite(UINT32 address, BYTE value); | void MEMCALL i286_memorywrite(UINT32 address, UINT8 value); |
| void MEMCALL i286_memorywrite_w(UINT32 address, UINT16 value); | void MEMCALL i286_memorywrite_w(UINT32 address, UINT16 value); |
| BYTE MEMCALL i286_membyte_read(UINT seg, UINT off); | UINT8 MEMCALL i286_membyte_read(UINT seg, UINT off); |
| UINT16 MEMCALL i286_memword_read(UINT seg, UINT off); | UINT16 MEMCALL i286_memword_read(UINT seg, UINT off); |
| void MEMCALL i286_membyte_write(UINT seg, UINT off, BYTE value); | void MEMCALL i286_membyte_write(UINT seg, UINT off, UINT8 value); |
| void MEMCALL i286_memword_write(UINT seg, UINT off, UINT16 value); | void MEMCALL i286_memword_write(UINT seg, UINT off, UINT16 value); |
| void MEMCALL i286_memstr_read(UINT seg, UINT off, void *dat, UINT leng); | void MEMCALL i286_memstr_read(UINT seg, UINT off, void *dat, UINT leng); |
| Line 62 void MEMCALL i286_memstr_write(UINT seg, | Line 69 void MEMCALL i286_memstr_write(UINT seg, |
| void MEMCALL i286_memx_read(UINT32 address, void *dat, UINT leng); | void MEMCALL i286_memx_read(UINT32 address, void *dat, UINT leng); |
| void MEMCALL i286_memx_write(UINT32 address, const void *dat, UINT leng); | void MEMCALL i286_memx_write(UINT32 address, const void *dat, UINT leng); |
| // ---- Physical Space (DMA) | |
| #define MEMP_READ8(addr) \ | |
| i286_memoryread((addr)) | |
| #define MEMP_WRITE8(addr, dat) \ | |
| i286_memorywrite((addr), (dat)) | |
| // ---- Logical Space (BIOS) | |
| #define MEML_READ8(seg, off) \ | |
| i286_membyte_read((seg), (off)) | |
| #define MEML_READ16(seg, off) \ | |
| i286_memword_read((seg), (off)) | |
| #define MEML_WRITE8(seg, off, dat) \ | |
| i286_membyte_write((seg), (off), (dat)); | |
| #define MEML_WRITE16(seg, off, dat) \ | |
| i286_memword_write((seg), (off), (dat)); | |
| #define MEML_READSTR(seg, off, dat, leng) \ | |
| i286_memstr_read((seg), (off), (dat), (leng)) | |
| #define MEML_WRITESTR(seg, off, dat, leng) \ | |
| i286_memstr_write((seg), (off), (dat), (leng)) | |
| #define MEML_READ(addr, dat, leng) \ | |
| i286_memx_read((addr), (dat), (leng)) | |
| #define MEML_WRITE(addr, dat, leng) \ | |
| i286_memx_write((addr), (dat), (leng)) | |
| #ifdef __cplusplus | #ifdef __cplusplus |
| } | } |
| #endif | #endif |