--- a/src/sh4/sh4mem.c Tue Jan 15 20:50:23 2008 +0000 +++ b/src/sh4/sh4mem.c Tue Jan 22 10:06:41 2008 +0000 @@ -425,12 +425,11 @@ sh4ptr_t sh4_get_region_by_vma( sh4addr_t vma ) { - uint64_t ppa = mmu_vma_to_phys_read(vma); - if( ppa>>32 ) { - return 0; + sh4addr_t addr = mmu_vma_to_phys_read(vma); + if( addr == MMU_VMA_ERROR ) { + return NULL; } - sh4addr_t addr = (sh4addr_t)ppa; sh4ptr_t page = page_map[ (addr & 0x1FFFFFFF) >> 12 ]; if( ((uintptr_t)page) < MAX_IO_REGIONS ) { /* IO Region */ return NULL;