--- trunk/src/machines/machine_dreamcast.c 2007/10/08 16:21:06 33 +++ trunk/src/machines/machine_dreamcast.c 2007/10/08 16:21:17 34 @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006 Anders Gavare. All rights reserved. + * Copyright (C) 2006-2007 Anders Gavare. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: @@ -25,7 +25,7 @@ * SUCH DAMAGE. * * - * $Id: machine_dreamcast.c,v 1.24 2006/11/06 05:32:38 debug Exp $ + * $Id: machine_dreamcast.c,v 1.30 2007/01/28 16:59:06 debug Exp $ * * Dreamcast. */ @@ -70,12 +70,13 @@ * * 0x00000000 - 0x001fffff Boot ROM (2 MB) * 0x00200000 - 0x003fffff Flash (256 KB) - * 0x005f6800 - ... PVR DMA register + * 0x005f6800 - ... G2 DMA registers * 0x005f6900 - ... ASIC registers * 0x005f6c00 - ... Maple registers (controller ports) + * 0x005f7000 - ... GDROM registers * 0x005f7400 - ... ??? - * 0x005f74e4 - ... ??? CDROM - * 0x005f7800 - ... G2 DMA registers + * 0x005f74e4 - ... GDROM re-enable disabled drive (?) + * 0x005f7800 - ... G2 External DMA registers * 0x005f7c00 - ... ??? * 0x005f8000 - 0x005f9fff PVR registers (graphics) * 0x00600400 - 0x0060047f LAN Adapter (MB86967) registers @@ -98,8 +99,17 @@ * (*3) = See VOUTC in Linux' drivers/video/pvr2fb.c. */ + dev_ram_init(machine, 0x00702c00, 4, DEV_RAM_RAM, 0); + + /* Sound RAM: */ dev_ram_init(machine, 0x00800000, 2 * 1048576, DEV_RAM_RAM, 0); + /* + * HACK! TODO: Remove this device at 0x00a00000 once NetBSD has + * been fixed to not clear 6 MB beyound the sound RAM area. + */ + dev_ram_init(machine, 0x00a00000, 6 * 1048576, DEV_RAM_RAM, 0); + dev_ram_init(machine, 0x0c000000, 16 * 1048576, DEV_RAM_RAM, 0x0); /* The "luftvarg" 4KB intro uses memory at paddr 0x0ef00000... */ @@ -107,8 +117,10 @@ dev_ram_init(machine, 0x0e000000, 16 * 1048576, DEV_RAM_RAM, 0); device_add(machine, "pvr"); - device_add(machine, "mb8696x addr=0x600400 addr_mult=4"); +/* device_add(machine, "mb8696x addr=0x600400 addr_mult=4"); */ device_add(machine, "dreamcast_asic"); + device_add(machine, "dreamcast_g2"); + device_add(machine, "dreamcast_gdrom"); device_add(machine, "dreamcast_maple"); device_add(machine, "dreamcast_rtc");