12 |
|
#include "sysdeps.h" |
13 |
|
|
14 |
|
#include "cpu_emulation.h" |
15 |
+ |
#include "main.h" |
16 |
+ |
#include "video.h" |
17 |
+ |
|
18 |
|
#include "m68k.h" |
19 |
|
#include "memory.h" |
20 |
|
#include "readcpu.h" |
21 |
|
#include "newcpu.h" |
19 |
– |
#include "main.h" |
20 |
– |
#include "video.h" |
22 |
|
|
23 |
|
#if !REAL_ADDRESSING && !DIRECT_ADDRESSING |
24 |
|
|
37 |
|
#endif |
38 |
|
|
39 |
|
#ifdef NO_INLINE_MEMORY_ACCESS |
40 |
< |
__inline__ uae_u32 longget (uaecptr addr) |
40 |
> |
uae_u32 longget (uaecptr addr) |
41 |
|
{ |
42 |
|
return call_mem_get_func (get_mem_bank (addr).lget, addr); |
43 |
|
} |
44 |
< |
__inline__ uae_u32 wordget (uaecptr addr) |
44 |
> |
uae_u32 wordget (uaecptr addr) |
45 |
|
{ |
46 |
|
return call_mem_get_func (get_mem_bank (addr).wget, addr); |
47 |
|
} |
48 |
< |
__inline__ uae_u32 byteget (uaecptr addr) |
48 |
> |
uae_u32 byteget (uaecptr addr) |
49 |
|
{ |
50 |
|
return call_mem_get_func (get_mem_bank (addr).bget, addr); |
51 |
|
} |
52 |
< |
__inline__ void longput (uaecptr addr, uae_u32 l) |
52 |
> |
void longput (uaecptr addr, uae_u32 l) |
53 |
|
{ |
54 |
|
call_mem_put_func (get_mem_bank (addr).lput, addr, l); |
55 |
|
} |
56 |
< |
__inline__ void wordput (uaecptr addr, uae_u32 w) |
56 |
> |
void wordput (uaecptr addr, uae_u32 w) |
57 |
|
{ |
58 |
|
call_mem_put_func (get_mem_bank (addr).wput, addr, w); |
59 |
|
} |
60 |
< |
__inline__ void byteput (uaecptr addr, uae_u32 b) |
60 |
> |
void byteput (uaecptr addr, uae_u32 b) |
61 |
|
{ |
62 |
|
call_mem_put_func (get_mem_bank (addr).bput, addr, b); |
63 |
|
} |
132 |
|
static int REGPARAM2 ram_check(uaecptr addr, uae_u32 size) REGPARAM; |
133 |
|
static uae_u8 *REGPARAM2 ram_xlate(uaecptr addr) REGPARAM; |
134 |
|
|
135 |
< |
static uae_u32 RAMBaseDiff; // RAMBaseHost - RAMBaseMac |
135 |
> |
static uintptr RAMBaseDiff; // RAMBaseHost - RAMBaseMac |
136 |
|
|
137 |
|
uae_u32 REGPARAM2 ram_lget(uaecptr addr) |
138 |
|
{ |
252 |
|
static int REGPARAM2 rom_check(uaecptr addr, uae_u32 size) REGPARAM; |
253 |
|
static uae_u8 *REGPARAM2 rom_xlate(uaecptr addr) REGPARAM; |
254 |
|
|
255 |
< |
static uae_u32 ROMBaseDiff; // ROMBaseHost - ROMBaseMac |
255 |
> |
static uintptr ROMBaseDiff; // ROMBaseHost - ROMBaseMac |
256 |
|
|
257 |
|
uae_u32 REGPARAM2 rom_lget(uaecptr addr) |
258 |
|
{ |
363 |
|
static int REGPARAM2 frame_check(uaecptr addr, uae_u32 size) REGPARAM; |
364 |
|
static uae_u8 *REGPARAM2 frame_xlate(uaecptr addr) REGPARAM; |
365 |
|
|
366 |
< |
static uae_u32 FrameBaseDiff; // MacFrameBaseHost - MacFrameBaseMac |
366 |
> |
static uintptr FrameBaseDiff; // MacFrameBaseHost - MacFrameBaseMac |
367 |
|
|
368 |
|
uae_u32 REGPARAM2 frame_direct_lget(uaecptr addr) |
369 |
|
{ |
559 |
|
|
560 |
|
void memory_init(void) |
561 |
|
{ |
562 |
< |
char buffer[4096]; |
562 |
< |
char *nam; |
563 |
< |
int i, fd; |
564 |
< |
|
565 |
< |
for(i=0; i<65536; i++) |
562 |
> |
for(long i=0; i<65536; i++) |
563 |
|
put_mem_bank(i<<16, &dummy_bank); |
564 |
|
|
565 |
|
// Limit RAM size to not overlap ROM |
569 |
– |
#if REAL_ADDRESSING |
570 |
– |
uint32 ram_size = RAMSize; |
571 |
– |
#else |
566 |
|
uint32 ram_size = RAMSize > ROMBaseMac ? ROMBaseMac : RAMSize; |
573 |
– |
#endif |
567 |
|
|
568 |
< |
RAMBaseDiff = (uae_u32)RAMBaseHost - (uae_u32)RAMBaseMac; |
569 |
< |
ROMBaseDiff = (uae_u32)ROMBaseHost - (uae_u32)ROMBaseMac; |
570 |
< |
FrameBaseDiff = (uae_u32)MacFrameBaseHost - (uae_u32)MacFrameBaseMac; |
568 |
> |
RAMBaseDiff = (uintptr)RAMBaseHost - (uintptr)RAMBaseMac; |
569 |
> |
ROMBaseDiff = (uintptr)ROMBaseHost - (uintptr)ROMBaseMac; |
570 |
> |
FrameBaseDiff = (uintptr)MacFrameBaseHost - (uintptr)MacFrameBaseMac; |
571 |
|
|
572 |
|
// Map RAM and ROM |
573 |
|
if (TwentyFourBitAddressing) { |