| version 1.13, 2005/03/21 02:24:23 | version 1.14, 2005/05/20 13:59:47 | 
| Line 45  extern "C" { | Line 45  extern "C" { | 
 |  |  | 
 | extern  UINT8   mem[0x200000]; | extern  UINT8   mem[0x200000]; | 
 |  |  | 
| void MEMCALL i286_memorymap(UINT type); | void MEMCALL memm_arch(UINT type); | 
| void MEMCALL i286_romareamap(UINT16 map); | void MEMCALL memm_vram(UINT operate); | 
| void MEMCALL i286_vram_dispatch(UINT operate); |  | 
|  |  | 
| REG8 MEMCALL i286_memoryread(UINT32 address); |  | 
| REG16 MEMCALL i286_memoryread_w(UINT32 address); |  | 
| UINT32 MEMCALL i286_memoryread_d(UINT32 address); |  | 
| void MEMCALL i286_memorywrite(UINT32 address, REG8 value); |  | 
| void MEMCALL i286_memorywrite_w(UINT32 address, REG16 value); |  | 
| void MEMCALL i286_memorywrite_d(UINT32 address, UINT32 value); |  | 
|  |  | 
| REG8 MEMCALL meml_read8(UINT seg, UINT off); |  | 
| REG16 MEMCALL meml_read16(UINT seg, UINT off); |  | 
| void MEMCALL meml_write8(UINT seg, UINT off, REG8 value); |  | 
| void MEMCALL meml_write16(UINT seg, UINT off, REG16 value); |  | 
 |  |  | 
| void MEMCALL meml_readstr(UINT seg, UINT off, void *dat, UINT leng); | REG8 MEMCALL memp_read8(UINT32 address); | 
| void MEMCALL meml_writestr(UINT seg, UINT off, const void *dat, UINT leng); | REG16 MEMCALL memp_read16(UINT32 address); | 
|  | UINT32 MEMCALL memp_read32(UINT32 address); | 
|  | void MEMCALL memp_write8(UINT32 address, REG8 value); | 
|  | void MEMCALL memp_write16(UINT32 address, REG16 value); | 
|  | void MEMCALL memp_write32(UINT32 address, UINT32 value); | 
|  |  | 
|  | void MEMCALL memp_reads(UINT32 address, void *dat, UINT leng); | 
|  | void MEMCALL memp_writes(UINT32 address, const void *dat, UINT leng); | 
|  |  | 
|  | REG8 MEMCALL memr_read8(UINT seg, UINT off); | 
|  | REG16 MEMCALL memr_read16(UINT seg, UINT off); | 
|  | void MEMCALL memr_write8(UINT seg, UINT off, REG8 value); | 
|  | void MEMCALL memr_write16(UINT seg, UINT off, REG16 value); | 
|  | void MEMCALL memr_reads(UINT seg, UINT off, void *dat, UINT leng); | 
|  | void MEMCALL memr_writes(UINT seg, UINT off, const void *dat, UINT leng); | 
 |  |  | 
| void MEMCALL meml_read(UINT32 address, void *dat, UINT leng); | #ifdef __cplusplus | 
| void MEMCALL meml_write(UINT32 address, const void *dat, UINT leng); | } | 
|  | #endif | 
|  |  | 
|  |  | 
|  | // ---- Memory map | 
|  |  | 
|  | #define MEMM_ARCH(t)            memm_arch(t) | 
|  | #define MEMM_VRAM(o)            memm_vram(o) | 
 |  |  | 
 |  |  | 
 | // ---- Physical Space (DMA) | // ---- Physical Space (DMA) | 
 |  |  | 
 | #define MEMP_READ8(addr)                                        \ | #define MEMP_READ8(addr)                                        \ | 
| i286_memoryread((addr)) | memp_read8((addr)) | 
 | #define MEMP_WRITE8(addr, dat)                          \ | #define MEMP_WRITE8(addr, dat)                          \ | 
| i286_memorywrite((addr), (dat)) | memp_write8((addr), (dat)) | 
 |  |  | 
 |  |  | 
 | // ---- Logical Space (BIOS) | // ---- Logical Space (BIOS) | 
 |  |  | 
| #define MEML_READ8(seg, off)                            \ | #define MEML_READ8(addr)                                        \ | 
| meml_read8((seg), (off)) | memp_read8((addr)) | 
| #define MEML_READ16(seg, off)                           \ | #define MEML_READ16(addr)                                       \ | 
| meml_read16((seg), (off)) | memp_read16((addr)) | 
| #define MEML_WRITE8(seg, off, dat)                      \ | #define MEML_WRITE8(addr, dat)                          \ | 
| meml_write8((seg), (off), (dat)); | memp_write8((addr), (dat)) | 
| #define MEML_WRITE16(seg, off, dat)                     \ | #define MEML_WRITE16(addr, dat)                         \ | 
| meml_write16((seg), (off), (dat)); | memp_write16((addr), (dat)) | 
| #define MEML_READSTR(seg, off, dat, leng)       \ | #define MEML_READS(addr, dat, leng)                     \ | 
| meml_readstr((seg), (off), (dat), (leng)) | memp_reads((addr), (dat), (leng)) | 
| #define MEML_WRITESTR(seg, off, dat, leng)      \ | #define MEML_WRITES(addr, dat, leng)            \ | 
| meml_writestr((seg), (off), (dat), (leng)) | memp_writes((addr), (dat), (leng)) | 
| #define MEML_READ(addr, dat, leng)                      \ |  | 
| meml_read((addr), (dat), (leng)) | #define MEMR_READ8(seg, off)                            \ | 
| #define MEML_WRITE(addr, dat, leng)                     \ | memr_read8((seg), (off)) | 
| meml_write((addr), (dat), (leng)) | #define MEMR_READ16(seg, off)                           \ | 
|  | memr_read16((seg), (off)) | 
| #ifdef __cplusplus | #define MEMR_WRITE8(seg, off, dat)                      \ | 
| } | memr_write8((seg), (off), (dat)) | 
| #endif | #define MEMR_WRITE16(seg, off, dat)                     \ | 
|  | memr_write16((seg), (off), (dat)) | 
|  | #define MEMR_READS(seg, off, dat, leng)         \ | 
|  | memr_reads((seg), (off), (dat), (leng)) | 
|  | #define MEMR_WRITES(seg, off, dat, leng)        \ | 
|  | memr_writes((seg), (off), (dat), (leng)) | 
 |  |  |