# HG changeset patch # User nkeynes # Date 1195035693 0 # Node ID 41ce7a074f4ec2fd628fec0d4d3a426e7e498394 # Parent d72564edc4828fbcf9adc2e1b683a270998d056d Use an explicit 32-bit type for region flags (save-file compatibility) Ensure page map is fully cleared --- a/src/mem.c Wed Nov 14 10:18:21 2007 +0000 +++ b/src/mem.c Wed Nov 14 10:21:33 2007 +0000 @@ -1,5 +1,5 @@ /** - * $Id: mem.c,v 1.22 2007-11-08 11:54:16 nkeynes Exp $ + * $Id: mem.c,v 1.23 2007-11-14 10:21:33 nkeynes Exp $ * mem.c is responsible for creating and maintaining the overall system memory * map, as visible from the SH4 processor. * @@ -61,7 +61,7 @@ void mem_init( void ) { - page_map = mmap( NULL, sizeof(char *) * PAGE_TABLE_ENTRIES, + page_map = mmap( NULL, sizeof(sh4ptr_t) * PAGE_TABLE_ENTRIES, PROT_READ|PROT_WRITE, MAP_ANON|MAP_PRIVATE, -1, 0 ); if( page_map == MAP_FAILED ) { ERROR( "Unable to allocate page map! (%s)", strerror(errno) ); @@ -69,7 +69,7 @@ return; } - memset( page_map, 0, sizeof(uint32_t) * PAGE_TABLE_ENTRIES ); + memset( page_map, 0, sizeof(sh4ptr_t) * PAGE_TABLE_ENTRIES ); } void mem_reset( void ) @@ -97,7 +97,7 @@ for( i=0; i