1 |
/* |
/* |
2 |
* Copyright (C) 2006 Anders Gavare. All rights reserved. |
* Copyright (C) 2006-2007 Anders Gavare. All rights reserved. |
3 |
* |
* |
4 |
* Redistribution and use in source and binary forms, with or without |
* Redistribution and use in source and binary forms, with or without |
5 |
* modification, are permitted provided that the following conditions are met: |
* modification, are permitted provided that the following conditions are met: |
25 |
* SUCH DAMAGE. |
* SUCH DAMAGE. |
26 |
* |
* |
27 |
* |
* |
28 |
* $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 $ |
29 |
* |
* |
30 |
* Dreamcast. |
* Dreamcast. |
31 |
*/ |
*/ |
70 |
* |
* |
71 |
* 0x00000000 - 0x001fffff Boot ROM (2 MB) |
* 0x00000000 - 0x001fffff Boot ROM (2 MB) |
72 |
* 0x00200000 - 0x003fffff Flash (256 KB) |
* 0x00200000 - 0x003fffff Flash (256 KB) |
73 |
* 0x005f6800 - ... PVR DMA register |
* 0x005f6800 - ... G2 DMA registers |
74 |
* 0x005f6900 - ... ASIC registers |
* 0x005f6900 - ... ASIC registers |
75 |
* 0x005f6c00 - ... Maple registers (controller ports) |
* 0x005f6c00 - ... Maple registers (controller ports) |
76 |
|
* 0x005f7000 - ... GDROM registers |
77 |
* 0x005f7400 - ... ??? |
* 0x005f7400 - ... ??? |
78 |
* 0x005f74e4 - ... ??? CDROM |
* 0x005f74e4 - ... GDROM re-enable disabled drive (?) |
79 |
* 0x005f7800 - ... G2 DMA registers |
* 0x005f7800 - ... G2 External DMA registers |
80 |
* 0x005f7c00 - ... ??? |
* 0x005f7c00 - ... ??? |
81 |
* 0x005f8000 - 0x005f9fff PVR registers (graphics) |
* 0x005f8000 - 0x005f9fff PVR registers (graphics) |
82 |
* 0x00600400 - 0x0060047f LAN Adapter (MB86967) registers |
* 0x00600400 - 0x0060047f LAN Adapter (MB86967) registers |
99 |
* (*3) = See VOUTC in Linux' drivers/video/pvr2fb.c. |
* (*3) = See VOUTC in Linux' drivers/video/pvr2fb.c. |
100 |
*/ |
*/ |
101 |
|
|
102 |
|
dev_ram_init(machine, 0x00702c00, 4, DEV_RAM_RAM, 0); |
103 |
|
|
104 |
|
/* Sound RAM: */ |
105 |
dev_ram_init(machine, 0x00800000, 2 * 1048576, DEV_RAM_RAM, 0); |
dev_ram_init(machine, 0x00800000, 2 * 1048576, DEV_RAM_RAM, 0); |
106 |
|
|
107 |
|
/* |
108 |
|
* HACK! TODO: Remove this device at 0x00a00000 once NetBSD has |
109 |
|
* been fixed to not clear 6 MB beyound the sound RAM area. |
110 |
|
*/ |
111 |
|
dev_ram_init(machine, 0x00a00000, 6 * 1048576, DEV_RAM_RAM, 0); |
112 |
|
|
113 |
dev_ram_init(machine, 0x0c000000, 16 * 1048576, DEV_RAM_RAM, 0x0); |
dev_ram_init(machine, 0x0c000000, 16 * 1048576, DEV_RAM_RAM, 0x0); |
114 |
|
|
115 |
/* The "luftvarg" 4KB intro uses memory at paddr 0x0ef00000... */ |
/* The "luftvarg" 4KB intro uses memory at paddr 0x0ef00000... */ |
117 |
dev_ram_init(machine, 0x0e000000, 16 * 1048576, DEV_RAM_RAM, 0); |
dev_ram_init(machine, 0x0e000000, 16 * 1048576, DEV_RAM_RAM, 0); |
118 |
|
|
119 |
device_add(machine, "pvr"); |
device_add(machine, "pvr"); |
120 |
device_add(machine, "mb8696x addr=0x600400 addr_mult=4"); |
/* device_add(machine, "mb8696x addr=0x600400 addr_mult=4"); */ |
121 |
device_add(machine, "dreamcast_asic"); |
device_add(machine, "dreamcast_asic"); |
122 |
|
device_add(machine, "dreamcast_g2"); |
123 |
|
device_add(machine, "dreamcast_gdrom"); |
124 |
device_add(machine, "dreamcast_maple"); |
device_add(machine, "dreamcast_maple"); |
125 |
device_add(machine, "dreamcast_rtc"); |
device_add(machine, "dreamcast_rtc"); |
126 |
|
|