robotfindskitten for SEGA Dreamcast
Version 1.0 [22-Feb-2001]

This is a from-scratch adaptation of the wildly popular robotfindskitten
simulator, written to run exclusively on the SEGA Dreamcast game console.

Files:

  dcrfk.c    - This is, of course, the highly unoptimized and inefficient
               C source code.
  dcrfk.o    - Relocatable Hitachi SH object code.
  dcrfk.elf  - Statically linked Hitachi SH executable.  Netcat this to
               your Broadband Adapter.
  fontset.h  - 8x8 arcade-style font set.  Now you, too, can make your
               128-bit Dreamcast look like an 8-bit NES.
  messages.h - From the core rfk distribution, this file contains
               descriptions of all the wacky, kooky, nutty, zany objects
               robot will encounter (unless you're REALLY good) in his
               never-ending quest to find kitten.
  readme.txt - Insert recursive description here.

Running the program:

Presently, this is verified to be working when loaded via the SEGA
Broadband Adapter using Marcus' IP Slave.  Observe:

drw@landscape:~/sh/libdream/stage/dcrfk$ nc -vvw1 rumors 4711 < dcrfk.elf
rumors [192.168.0.4] 4711 (?) open
net timeout
 sent 32716, rcvd 0

And our robot-finding-kitten mayhem begins.

Building the program:

Well, here's the output from make, if it helps you any..

drw@landscape:~/sh/libdream/stage/dcrfk$ gmake
/usr/local/dreamcast/bin/sh-elf-gcc -ml -O -m4-single-only -Wall
 -I/usr/include -I../../include -c dcrfk.c -o dcrfk.o
/usr/local/dreamcast/bin/sh-elf-gcc -ml -O -m4-single-only -Wall
 -I/usr/include -Wl,-Ttext,0x8c010000 -o dcrfk.elf dcrfk.o -L../../lib
 -ldream

I'm sure there's some way to burn an ELF to a standalone CD, though you'd
probably have to relocate where the program loads into memory, or
something.  If you want to recompile this thing, you'll need a SH
toolchain and compiler.  This isn't as hard as it sounds.  The packaged
executable was cross-compiled from an x86 FreeBSD host.  Here are some
URLs to get you started:

  How to build the SH toolchain  (Win32, but still..)
    http://www.inode.at/hitmen/hitdc/sh4gcc.htm

  IP Slave
    http://mc.pp.se/dc/ipslave.html

  libdream
    http://www.allusion.net/dcdev/

  SEGA Broadband Adapter  (ha ha, good luck finding one)
    http://www.sega.com/pc/segastore/SegaProduct.jhtml?PRODID=447

  Robotfindskitten
    http://sourceforge.net/projects/rfk/

How to help robot:

You will need to have a Dreamcast controller attached.  It should be
pretty easy to hack in keyboard or mouse support if you want it, but
everyone has a controller.  Thus, you are robot (#).  To move robot to
the nearest kitten or non-kitten object, use your D-pad.  When robot
touches an object, keep an eye on the lower half of your screen to see
what it is.  If you'd like to leave the game, just press the START button
during gameplay.

Things that would be neat in future versions:

- VMU save/restore.  Spent hours on one level trying to find kitten?
  This feature is for you.  Or maybe download and save new things robot
  can find.

- Arcade mode.  Find kitten before time runs out.  Or, find kitten
  fastest for a higher bonus.  Or a two-player mode (how do you do that in
  libdream anyway?).  Keep a high scores table.  Thank you robot, but our
  kitten is in another castle.

- Multiplayer.  This thing has 4 controller ports, a modem, and ethernet.
  That's just asking for trouble.  Besides, you can't say that you haven't
  dreamed of robotfindskitten deathmatch.

- Force feedback.  This will be added as soon as libdream gets maple bus
  support for it.  If it purrs, then it's a kitten.  Or a controller with
  force feedback.  Possibly even a purring kitten that has swallowed a
  controller with force feedback.

- Sound.  Anyone know how to do ARM?  CDDA is another possibility.  Maybe
  have a routine that decodes MP3-filled CDs to the ARM chip or something.
  Or make the VMU beep.

- Better graphics.  Because you can only do so much playing with videoram.
  Or not.

- A fully functioning email client.  Everything gets this feature
  eventually.  No, really.  You can check email from Sonic Adventure and
  SF Rush 2049, so why not from dcrfk?  Besides, chicks will think you're
  cool when you send them email in all caps with that 8x8 arcade font.

In case you haven't noticed, I was just kidding on that last one.  There
is likely no possibility of your being declared cool, 8x8 font or not.  
Sorry if I got your hopes up.

License or whatever:

dcrfk is released under the GPL.
Copyright (C) 2001 Douglas R. Winslow III.

messages.h is from the original robotfindskitten distribution.

libdream has been overheard as saying:
"THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON- INFRINGEMENT.
IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF, OR IN CONNECTION WITH THE SOFTWARE OR THE USE OF
OTHER DEALINGS IN THE SOFTWARE."

No, really, it says that.  IN ALL CAPS, TOO!  Lawyers must get all the
chicks.

This game is not produced by or under license from SEGA Enterprises, Ltd.
Which is a shame, since this game clearly has more replay value than most
of the Dreamcast games on the market today.  The exceptions being Eternal
Arcadia and Jet Set Radio.
