Beispiel #1
0
uae_u32 REGPARAM2 kickmem_lget (uaecptr addr)
{
    uae_u32 *m;
    addr -= kickmem_start & kickmem_mask;
    addr &= kickmem_mask;
    m = (uae_u32 *)(kickmemory + addr);
    return swab_l(do_get_mem_long (m));
}
Beispiel #2
0
void REGPARAM2 chipmem_lput (uaecptr addr, uae_u32 l)
{
    uae_u32 *m;

    addr -= chipmem_start & chipmem_mask;
    addr &= chipmem_mask;
    m = (uae_u32 *)(chipmemory + addr);
    do_put_mem_long (m, swab_l(l));
}
Beispiel #3
0
uae_u32 REGPARAM2 chipmem_lget (uaecptr addr)
{
    uae_u32 *m;

    addr -= chipmem_start & chipmem_mask;
    addr &= chipmem_mask;
    m = (uae_u32 *)(chipmemory + addr);
    return swab_l(do_get_mem_long (m));
}
Beispiel #4
0
uae_u32 REGPARAM2 extendedkickmem_lget (uaecptr addr)
{
#ifdef DEBUG_MEMORY
    dbgf("extendedkickmem_lget 0x%X\n",addr);
#endif
    uae_u32 *m;
    addr -= extendedkickmem_start & extendedkickmem_mask;
    addr &= extendedkickmem_mask;
    m = (uae_u32 *)(extendedkickmemory + addr);
    return swab_l(do_get_mem_long (m));
}
Beispiel #5
0
void REGPARAM2 kickmem_lput (uaecptr addr, uae_u32 b)
{
    uae_u32 *m;
    if (a1000_kickstart_mode) {
	if (addr >= 0xfc0000) {
	    addr -= kickmem_start & kickmem_mask;
	    addr &= kickmem_mask;
	    m = (uae_u32 *)(kickmemory + addr);
	    do_put_mem_long (m, swab_l(b));
	    return;
	} else
	    a1000_handle_kickstart (0);
    }
}
Beispiel #6
0
static void allocate_memory (void)
{
	if (allocated_chipmem != prefs_chipmem_size) 
	{
	if (chipmemory)
	    mapped_free (chipmemory);
	chipmemory = 0;

	allocated_chipmem = prefs_chipmem_size;
	chipmem_mask = allocated_chipmem - 1;

	chipmemory = (uae_u8 *)mapped_malloc (allocated_chipmem, "chip");

	if (chipmemory == 0) {
	    write_log ("Fatal error: out of memory for chipmem.\n");
	    allocated_chipmem = 0;
		}	 
		else do_put_mem_long ((uae_u32 *)(chipmemory + 4), swab_l(0));
    }

    if (savestate_state == STATE_RESTORE)
    {
	    fseek (savestate_file, chip_filepos, SEEK_SET);
#ifdef USE_LIB7Z
	    void *tmp=malloc(compressed_size);
	    int outSize=allocated_chipmem;
	    int inSize=compressed_size;
	    SRes res;
	    fread (tmp, 1, compressed_size, savestate_file);
	    res=Lzma_Decode((Byte *)chipmemory, (size_t *)&outSize, (const Byte *)tmp, (size_t *)&inSize);
	    free(tmp);
	    if(res != SZ_OK)
	    {
		   allocated_chipmem=compressed_size;
	    	   fseek (savestate_file, chip_filepos, SEEK_SET);
	    }
	    if(res != SZ_OK)
#endif
	    fread (chipmemory, 1, allocated_chipmem, savestate_file);
	    if (allocated_bogomem > 0)
	    {
		    fseek (savestate_file, bogo_filepos, SEEK_SET);
		    fread (bogomemory, 1, allocated_bogomem, savestate_file);
	    }
    }

    chipmem_bank.baseaddr = chipmemory;
    bogomem_bank.baseaddr = bogomemory;
    chipmemory_word=(uae_u16 *)chipmemory;
}
Beispiel #7
0
static void allocate_memory (void)
{
    if (allocated_chipmem != prefs_chipmem_size) {
	if (chipmemory)
	    mapped_free (chipmemory);
	chipmemory = 0;

	allocated_chipmem = prefs_chipmem_size;
	chipmem_mask = allocated_chipmem - 1;

	chipmemory = mapped_malloc (allocated_chipmem, "chip");

	if (chipmemory == 0) {
	    write_log ("Fatal error: out of memory for chipmem.\n");
	    allocated_chipmem = 0;
	} else
	    do_put_mem_long ((uae_u32 *)(chipmemory + 4), swab_l(0));
    }

    chipmem_bank.baseaddr = chipmemory;
    bogomem_bank.baseaddr = bogomemory;
    chipmemory_word=(uae_u16 *)chipmemory;
}