Atari800 for SEGA Dreamcast =========================== Usage ----- The mapping of the connected DC controllers to the Atari joysticks is as follows: The leftmost controller is joystick #1. Then, while going to the right, the next controller is joystick #2. The next one is joystick #3. Joystick #4 is the rightmost controller if all 4 controller jacks are in use. The 1st (leftmost) controller is used to provide the console keys (start, select, etc). The mapping for the 1st controller is as follows (for computers, not 5200): B - START (maps to ESC key while being in the emulator menu) Y - SELECT X - OPTION A - joystick button L - emulator menu R - enter keyboard emulation screen Start - warm boot (reset key) Start + X - cold boot (power cycle) joypad - joystick directions On the other controllers only the joypad and A are used. L and R are mapped to Z and C buttons on the Arcade Stick. While in the emulator menu, pressing Start causes the Dreamcast to reboot. The Dreamcast keyboard is also supported: F1 - emulator menu ESC - leave menu/go back F2 - OPTION F3 - SELECT F4 - START F5 - cold boot (power cycle) F12 - Dreamcast reboot End - HELP Pause - break S3 - Atari key In 5200 mode the A, B, X, and Y buttons of the controllers are redefined: Y - Start key (only the 1st controller) B - 4 (starts some games, " " " " ) X - joystick button #2 A - joystick button #1 In 800 mode up to 4 paddles are supported (only 2 tested by me). A is the paddle trigger. Also in 800 mode, X, Y, and B can be redefined to generate keys from the keyboard. If this is enabled, Option, Select, and Start keys can be entered in the keyboard emulation screen. In order to use paddles, you have to switch on the "Emulate paddles" setting in the "AtariDC Settings" menu. Compiling --------- You will need a SH4 cross compiler and the KallistiOS library (http://cadcdev.sourceforge.net). See the README included in KallistiOS for information on how to build the cross compiler and library. After you have installed the cross compiler and compiled KOS, adapt src/dc/Makefile.dc to your environment. You'll probably have to change the SHBASE and KOS variables in dc/Makefile.dc to point to your compiler and KOS locations, respectively. Then you can build the executable, "atari800.elf". In the atari800 src directory type make -f dc/Makefile.dc to compile it. Use GNU make. CD setup -------- After you have compiled the atari800.elf file, you may want to make a CD image which contains the a8 binary files and disk images you'd like to use. If you don't want to burn a CD, but have a serial, broadband, or lan adapter, then you can use the dc-load tool to transfer the ELF executable to the Dreamcast and run it. The dc-load tool is included in the KOS library. You need to create a CD ISO image, as described below, and use the -i switch to dc-load, to emulate this image over the the dc-load connection. If you create a real CD, there is one more step needed additionally to the steps described below: You need to put the atari800 executable file as boot file onto the CD. For information to create Dreamcast bootable CDs see http://mc.pp.se/dc/cdr.html. Convert the atari800.elf to a plain binary file with something like "sh-elf-objcopy -R .stack -R .comment -R .bss -R .sbss -O binary atari800.elf atari800.bin" and then scramble it. The CD must contain the atari800.cfg file in the root directory. If you use the supplied demo atari800.cfg file, the Atari BIOS ROMS also have to be in the CD root directory. If you don't like this layout, change it and adapt the atari800.cfg file accordingly. Please note that paths in the atari800.cfg must start with /cd to reference the CD, so for a /roms directory on the CD the atari800.cfg entry must be ROM_DIR=/cd/roms. If you like to have a .com/.exe/.atr to be started automatically, copy it into the CD root directory and name it autorun.com / autorun.exe / autorun.atr, respectively. Bugs/ToDos ---------- * There are still sound glitches on some games. * There might be display jitter in scrolling games in NTSC mode. * Run ATRs read-write from vmu. * More than 2 controllers are not well tested. * Improve keyboard support * Mouse support? Help/Problems/Bugs/Suggestions ------------------------------ Please contact me at chris@groessler.org or groessler_christian@yahoo.de. I'm also monitoring the official Atari800 mailing list (atari800-users@lists.sourceforge.net). The newest version is at ftp://ftp.groessler.org/pub/chris/dreamcast/atari800dc Have fun with it, Christian Groessler Last change: 27-Apr-2015.