Minimalistic README for the prerelease (version 0.5) libdream


This is a work in progress. The library itself (the part we wrote) is
distributed under the MIT licensing terms. Basically they say that you
can do whatever you want to with this, as long as you don't change it
and then distribute it saying that it's the same library (i.e., you claim
it's the original "libdream") or that you change it and say that you
wrote it. Additionally, there is NO WARRANTY on the program or its
functionality. Pieces of code included in the library not written by me
(Dan Potter), Jordan DeLong, or Mike Brent are marked as such in the header
of libdream.c. That header is included here for reference:

/*
 * Dreamcast function library (libdream)
 * Portions (c)2000 Dan Potter, Jordan DeLong, and Mike Brent
 *
 * Many thanks to and helpful info from these guys:
 *  Marcus Comstedt (cdfs.c/h, maple.c/h, some sound and video info)
 *  Bitmaster (video info)
 *  HeroZero (waitvbl info)
 *  HitMen-DC (help on gcc)
 *  The DCDev list on eGroups
 *
 * This library is ilcensed under the MIT/X style license. For more
 * information, please see COPYING. Note that the above copyright notice
 * applies only to parts of the library that were created by those people.
 * Several complete source files in this library were imported from other
 * sources with no explicit copyright notice. When this happened, a notation
 * is made at the top of the file. Please contact those authors for
 * information on using their code in your programs. Thanks!
 */

All of the basic functionality is declared in "dream.h", which you can 
include in your programs. This program expects a certain amount of libc
code to be present, which can come from newlib or some other source.

This new version includes routines for almost all of the currently 
discovered Dreamcast hardware. This includes the GD-ROM (Mode1/2 only! =),
the sound CPU, basic video routines, a simple (inaccurate) sleep function,
peripheral access, etc. Please see my DC Dev site for some examples (below).

If you'd like to change and recompile the AICA firmware portion of the
library, you'll need the GNU toolchain built for ARM7. Specifically you'll
need GCC and AS. These can be built in exactly the same way you built the
SH4 toolchain -- just follow the directions on the Hitmen page except
use these configure lines:

../binutils-2.10/configure --target=arm-elf --prefix=$prefix
../gcc-2.95.2/configure --target=arm-elf --prefix=$prefix --without-headers
	--without-libs

That ought to do it for you. I have included the aica_fw.h that has the
precompiled version though.

					Dan Potter
					Aug 14, 2000
					http://www.allusion.net/dcdev/

