/[gxemul]/trunk/doc/dreamcast.html
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk/doc/dreamcast.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 36 - (show annotations)
Mon Oct 8 16:21:34 2007 UTC (13 years, 1 month ago) by dpavlin
File MIME type: text/html
File size: 6701 byte(s)
++ trunk/HISTORY	(local)
$Id: HISTORY,v 1.1497 2007/03/18 03:41:36 debug Exp $
20070224	Minor update to the initialization of the ns16550 in
		machine_walnut.c, to allow that machine type to boot with the
		new interrupt system (although it is still a dummy machine).
		Adding a wdc at 0x14000000 to machine_landisk.c, and fixing
		the SCIF serial interrupts of the SH4 cpu enough to get
		NetBSD/landisk booting from a disk image :-)  Adding a
		preliminary install instruction skeleton to guestoses.html.
20070306	Adding SH-IPL+G PROM emulation, and also passing the "end"
		symbol in r5 on bootup, for Landisk emulation. This is enough
		to get OpenBSD/landisk to install :)  Adding a preliminary
		install instruction skeleton to the documentation. SuperH
		emulation is still shaky, though :-/
20070307	Fixed a strangeness in memory_sh.c (read/write was never
		returned for any page). (Unknown whether this fixes any actual
		problems, though.)
20070308	dev_ram.c fix: invalidate code translations on writes to
		RAM, emulated as separate devices. Linux/dreamcast gets
		further in the boot process than before, but still bugs out
		in userland.
		Fixing bugs in the "stc.l gbr,@-rN" and "ldc.l @rN+,gbr" SuperH 
		instructions (they should NOT check the MD bit), allowing the
		Linux/dreamcast Live CD to reach userland correctly :-)
20070310	Changing the cpu name "Alpha" in src/useremul.c to "21364" to
		unbreak userland syscall emulation of FreeBSD/Alpha binaries.
20070314	Applying a patch from Michael Yaroslavtsev which fixes the
		previous Linux lib64 patch to the configure script.
20070315	Adding a (dummy) sun4v machine type, and SPARC T1 cpu type.
20070316	Creating a new directory, src/disk, and moving diskimage.c
		to it. Separating out bootblock loading stuff from emul.c into
		new files in src/disk.
		Adding some more SPARC registers.
20070318	Preparing/testing for a minirelease, 0.4.4.1.

==============  RELEASE 0.4.4.1  ==============


1 <html><head><title>Gavare's eXperimental Emulator:&nbsp;&nbsp;&nbsp;Dreamcast emulation</title>
2 <meta name="robots" content="noarchive,nofollow,noindex"></head>
3 <body bgcolor="#f8f8f8" text="#000000" link="#4040f0" vlink="#404040" alink="#ff0000">
4 <table border=0 width=100% bgcolor="#d0d0d0"><tr>
5 <td width=100% align=center valign=center><table border=0 width=100%><tr>
6 <td align="left" valign=center bgcolor="#d0efff"><font color="#6060e0" size="6">
7 <b>Gavare's eXperimental Emulator:</b></font><br>
8 <font color="#000000" size="6"><b>Dreamcast emulation</b>
9 </font></td></tr></table></td></tr></table><p>
10
11 <!--
12
13 $Id: dreamcast.html,v 1.11 2007/03/08 19:04:09 debug Exp $
14
15 Copyright (C) 2006-2007 Anders Gavare. All rights reserved.
16
17 Redistribution and use in source and binary forms, with or without
18 modification, are permitted provided that the following conditions are met:
19
20 1. Redistributions of source code must retain the above copyright
21 notice, this list of conditions and the following disclaimer.
22 2. Redistributions in binary form must reproduce the above copyright
23 notice, this list of conditions and the following disclaimer in the
24 documentation and/or other materials provided with the distribution.
25 3. The name of the author may not be used to endorse or promote products
26 derived from this software without specific prior written permission.
27
28 THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
29 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
30 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
31 ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
32 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
33 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
34 OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
35 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
36 LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
37 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
38 SUCH DAMAGE.
39
40 -->
41
42 <a href="./">Back to the index</a>
43
44 <p><br>
45 <h2>Dreamcast emulation</h2>
46
47 <p>
48 <ul>
49 <li><a href="#intro">Introduction</a>
50 <li><a href="#netbsd_generic_md">NetBSD/dreamcast GENERIC_MD</a>
51 <li><a href="#netbsd_live_cd">NetBSD/dreamcast Live CD</a>
52 <li><a href="#linux_live_cd">Linux/dreamcast Live CD</a>
53 </ul>
54
55
56
57
58
59
60 <p><br>
61 <a name="intro"></a>
62 <h3>Introduction:</h3>
63
64 This page contains information about the Dreamcast emulation mode in
65 GXemul. It's not a very long page, but I thought it would be best to
66 gather everything Dreamcast-specific in one place.
67
68 <p>My main goal with Dreamcast emulation is to let <a
69 href="http://www.netbsd.org/Ports/dreamcast/">NetBSD/dreamcast</a> run,
70 similar to how it runs on a real machine. I am also experimenting with
71 other programs, such as Linux and simple demo programs that use KOS, and
72 Marcus Comstedt's tutorial programs. These sometimes work to a certain
73 degree.
74
75 <p>Games (especially commercial games) are very unlikely to run.
76
77
78
79
80
81 <p><br>
82 <a name="netbsd_generic_md"></a>
83 <h3>NetBSD/dreamcast GENERIC_MD:</h3>
84
85 <p>It is possible to run <a
86 href="http://www.netbsd.org/Ports/dreamcast/">NetBSD/dreamcast</a> in
87 GXemul. A NetBSD ramdisk kernel can reach userland, however, no network
88 interface is emulated yet, so root-on-nfs is not possible.
89
90 <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
91 <a href="20061029-netbsd-dreamcast.png"><img src="20061029-netbsd-dreamcast_small.png"></a>
92 &nbsp;&nbsp;&nbsp;
93 <a href="20061104-netbsd-dreamcast-real.jpg"><img src="20061104-netbsd-dreamcast-real_small.png"></a>
94
95 <p>(The photo on the right shows NetBSD/dreamcast running both on a real
96 Dreamcast, and in the emulator.)
97
98 <p>Download the 3.1 kernel here:<pre>
99 <a href="ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/dreamcast/binary/kernel/netbsd-GENERIC_MD.gz">ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/dreamcast/binary/kernel/netbsd-GENERIC_MD.gz</a>
100 </pre>
101
102 <p>Start NetBSD/dreamcast using the following command line:<pre>
103 <b>gxemul -XEdreamcast netbsd-GENERIC_MD.gz</b>
104
105 </pre>
106
107
108
109
110
111
112
113
114
115 <p><br>
116 <a name="netbsd_live_cd"></a>
117 <h3>NetBSD/dreamcast Live CD:</h3>
118
119 <p>According to <a href="http://mail-index.netbsd.org/port-dreamcast/2005/04/25/0000.html">http://mail-index.netbsd.org/port-dreamcast/2005/04/25/0000.html</a>,
120 Rui Paulo has made available a NetBSD/dreamcast Live CD. It can run in
121 GXemul:
122
123 <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
124 <a href="20070128-netbsd-dreamcast-livecd-1.png"><img src="20070128-netbsd-dreamcast-livecd-1_small.png"></a>
125 &nbsp;&nbsp;&nbsp;
126 <a href="20070128-netbsd-dreamcast-livecd-2.png"><img src="20070128-netbsd-dreamcast-livecd-2_small.png"></a>
127
128 <p>The image is available here:<pre>
129 <a href="http://netbsd.student.utwente.nl/rpaulo/">http://netbsd.student.utwente.nl/rpaulo/</a>
130 </pre>
131
132 <p><font color="#ff0000">NOTE (February 2007):</font>
133 The ISO image seems to have been removed from the server,
134 but you should be able to create one from scratch using
135 instructions available at various locations on the Internet.
136
137
138 <p>Only the ISO9660 filesystem image is needed:<pre>
139 <a href="http://netbsd.student.utwente.nl/rpaulo/livecd.raw.bz2">http://netbsd.student.utwente.nl/rpaulo/livecd.raw.bz2</a>
140 </pre>
141
142 Uncompress the CD image (using bunzip2), and type the following command
143 to attempt to boot directly from the image:<pre>
144 <b>gxemul -XEdreamcast -d co23965696:livecd.raw</b>
145 </pre>
146
147 (The <tt><b>c</b></tt> disk image option is necessary to treat the raw
148 file as a CDROM image, and the <tt><b>o</b></tt> part is needed because
149 the ISO9660 filesystem in the image is offset by 11702 sectors, i.e. 2048
150 bytes each.)
151
152 <p>At the <b><tt>root device:</tt></b> prompt, type
153 <b><tt>gdrom0</tt></b>. For <b><tt>dump device</tt></b>,
154 <b><tt>file system</tt></b>, and <b><tt>init path</tt></b>, just press
155 Enter.
156
157
158
159
160
161
162
163 <p><br>
164 <a name="linux_live_cd"></a>
165 <h3>Linux/dreamcast Live CD:</h3>
166
167 <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
168 <a href="20070308-linux-dreamcast-1.png"><img src="20070308-linux-dreamcast-1_small.png"></a>
169 &nbsp;&nbsp;&nbsp;
170 <a href="20070308-linux-dreamcast-2.png"><img src="20070308-linux-dreamcast-2_small.png"></a>
171
172 <p>A Linux/dreamcast Live CD ISO image can be found here:<pre>
173 <a href="http://ftp.riken.go.jp/pub/misc/Japan/m17n.org/super-h/CD-R/lc2000.iso">http://ftp.riken.go.jp/pub/misc/Japan/m17n.org/super-h/CD-R/lc2000.iso</a>
174 </pre>
175
176 Once you have downloaded the ISO image, type the following command to
177 boot directly from the image:<pre>
178 <b>gxemul -XEdreamcast -d co23965696:lc2000.iso</b>
179 </pre>
180
181
182
183
184
185
186
187
188
189 <p><br>
190
191
192
193 </body>
194 </html>
195

  ViewVC Help
Powered by ViewVC 1.1.26