Rainbow - The Atari 8-Bit Emulator for Windows ================================================= Full Version 1.36 Author's plea ------------- Unlike the demo, you are obliged not to give away copies of the full version. A lot of effort has gone into producing this software so please show your appreciation by encouraging other Atari folk to register. Thank you! Contents of Manual ------------------ 1. Re-booting 2. 400/800, 800XL, 130XE and 5200 emulation 3. Cartridges 4. Disk drives 5. Keyboard 6. TV Display 7. Pause feature 8. Importing external files 9. Exporting disk files 10. Sound 11. Joysticks and Paddles 12. Cheat mode 13. Speed capping 1) Re-booting ------------- Re-booting, as mentioned in README.TXT, is the same as switching your Atari off and on again. Any ROMs and disks will remain inserted. The OS will attempt to boot from drive#1 (if there's a disk in it). If the disk isn't a proper boot disk, you will get the dreaded 'Boot Error' messages. Just insert another disk into drive#1. No damage will be done. If you re-boot with the Control key pressed, you will re-initialise the system. The ROMs and disks are removed (not saved) and drive#1 turned off to stop the OS booting from it. Inserting an image will switch it back on. You will, from time to time, encounter the 'Atari computer crash' alert warning. This means a crash is inevitable and can sometimes happen after pressing SYSTEM RESET after playing a game. To get out of a repetitive crash situation (e.g. bad boot disk) keep the Control key pressed to re-initialise. See APPENDIX.TXT for more. 2) 400/800, 800XL, 130XE and 5200 emulation ------------------------------------------- On launching, Rainbow first looks for OP_400 (the 10K 400/800 OS) which needs to be in the same folder as Rainbow. This is the default OS. If it's missing, Rainbow looks for OP_SYSXL (and OP_BASIC) and goes into 800XL mode if found. Otherwise one last attempt is made to look for OP_5200 (the 2K 5200 monitor ROM) and if successful, 5200 games console mode is entered. The 800XL has 64K of RAM... 8K hidden under BASIC and 16K under the OS along with the normal 40K when BASIC is active. Note that BASIC is an integral part of the 800XL computer; you can't physically remove it as with other cartridges but you can always disable it by keeping the OPTION key (F1) pressed on re-booting (important with some software). The 130XE mode is very similar to 800XL except that there's now an extra 64K of RAM available accessed via the window $4000-$7FFF (see 'Mapping the Atari' or similar for more details). A good demo to try out is Video Blitz which uses the extra 64K RAM for page flipping. Else why not use the extra RAM as a RAM disk? (you need RAMDISK.SYS with ATARI DOS 2.5). Under 800XL/130XE emulation you can run many XL-only programs on Rainbow such as Turbo Basic, Gauntlet, Mousetrap etc. If you really want to play some of the older games under XL emulation, use FIX XL or Translator to create a RAM OS containing the old 400/800 OS. But it's simpler just to select 400/800 emulation under the 'System' menu! It's a good idea to re-init the 800XL/130XE system before trying to boot any new disks so that the effects of any previous software is removed. Finally, 5200 games console emulation. Adding this mode wasn't too difficult as the 5200 is very like the 400/800. If you can get your hands on 5200 cartridge images, you're laughing. The 5200 is a curious machine with more or less the same hardware as a 400/800 computer. It has only 16K RAM but can accept 32K ROMs. The full size keyboard is gone and has a simple numeric keypad instead. Since the hardware chips are mapped to different areas in the 5200, standard 400/800 software is incompatible but 5200 games *can* be converted to run on the 400/800 with some know-how. The 5200 # and * keys are at Z and X. The top fire button is SHIFT, the lower fire is CTRL. Because the real 5200 joystick is analogue, some games won't play properly with a normal (or switch) joystick. At this point you can select 'Pad0' and the mouse will emulate the joystick. The 5200 Pause key is at F4 and the 10 digit keys are supported as well. The monitor ROM is a tiny 2K OS which just sets up the 5200 for operation and draws the pretty rainbow fuji logo. You can insert either 16K or 32K 5200 ROM images in this mode. Once again, 400/800/800XL/130XE games will *not* work with the 5200 and vice versa. 3) Cartridges ------------- If you do have ROM images, you can insert them just like the real thing. Only images of exactly 8K or 16K are accepted as valid. Note that some ROM software have been modified to run from the disk as a binary file. Rainbow does not recognise these as legitimate ROMs! If you're brave, you may be able to 'surgically' remove the actual ROM image from these binary files which you can then insert. You will need some kind of hex editor to do this. In 5200 mode, you can insert either 16K or 32K ROM images. Another very cool feature is that Rainbow can run your SuperCartridges e.g. MAC/65 and Action. It's a 16K ROM mapped into 8K of space... the other 8K is accessed by hardware page switching. Just in case you're interested! You can remove the ROM as well. Insertion or removal of ROMs is followed by a re-boot just like on a real 8 bit. Disk drives are left untouched which leads us nicely onto... 4) Disk drives -------------- Two virtual drives are provided. Use these drives as you would your normal 810 or 1050. When you insert a disk, Rainbow will automatically sense standard and ATR images and whether they are single or enhanced density, adjusting the drive accordingly. The 810 drive reads single density disks; the 1050 can read enhanced ones. Single density images have 720 sectors whereas enhanced ones have 1040. Each sector holds 128 bytes. Drive#1 is switched OFF on initialization to stop the system booting from a diskless drive. Unlike drive#1, drive#2 is always switched ON although you should either insert a disk or format it before using it. The image for this drive is initialized to all zeroes. You can make the drives behave as 810s or 1050s on the fly. It's quite a dangerous thing to do and you should follow this by formatting the drive. This feature does NOT convert your single density images to enhanced density; it merely tells the drive how to behave. The effect can be seen when you use options I and P to format disks. Why not create single and enhanced blank disk images and save these? You will then never need to format another disk again! You can also write-protect each drive by simply checking the 'Protected' item. This prevents all writes to the image. IMPORTANT: To make your disk writes permanent, you must save the image! The size of the image saved depends on whether the drive is set to 810 or 1050 mode. Images are saved as standard images. Rainbow can automatically detect if a disk image has an ATR header and discards it. The largest image allowed is the enhanced density size (1040 sectors x 128 bytes). Whenever the drive is being read or written to, the pointer cursor turns into the egg-timer cursor. Generally, it is unadvisable to insert disks or save disk images while this cursor is visible. Rainbow has the Disk Turbo Access (tm) feature. When Rainbow senses the disk drives are being accessed, it drops the frame rate way down low (lower than the 'Normal' setting) to allow much faster booting than before! It doesn't matter what frame rate setting you're at or whether speed capping is on, your disks will be read as fast as possible. 5) Keyboard ----------- In addition to the standard keyboard, some other important keys are System Reset = F12 Option = F1 Select = F2 Start = F3 Help = F4 (XL/XE only) Pause = F4 (5200 only) Break = SHIFT ESC Caps/Lowr = END Atari Logo = PAGE UP The PC CAPS LOCK is not functional. A number of extra editing keys are included, i.e. the cursor keys work and Insert Char = INSERT Delete Char = DELETE Clr screen = HOME. Since the proper Atari keyboard doesn't match the one with your PC, a few keys are remapped. So if you try out the keyboard test (on XL/XE only), a number of punctuation keys won't seem right in the correct place but they do give you the required character. 6) TV Display ------------- A real Atari 400/800/800XL generates the playfield, player/missile graphics and updates Player/Missile collision registers every 60th of a second. To make Rainbow run at an acceptable speed, you can alter the frequency with which this takes place. Under the 'TV' menu, Normal = do graphics every 10 frames (default) More = " " " 6 frames Bit more = " " " 4 frames Even more = " " " 3 frames Half = " " " 2 frames Every = " " " single frame Most games should work okay with the lesser frame rates. However if players and missiles don't behave as they should, try a higher setting. With the lesser frame rates, collision registers are updated less frequently and so occasionally your PacMan will pass through a ghost with no ill effect! Increase the frame rate to avoid this. But see 'Cheat Mode' below... Some games like Jumpman, Caverns of Mars and Buried Bucks only work with the 'Every' frame rate setting. Some European games may need a PAL TV screen to work properly e.g. Airstrike, a scramble type game from Britain. But usually the NTSC/PAL setting shouldn't affect most games. If you find the small display too hard on your eyes, then you can switch to a medium size view or large size view in the 'Extras' menu. Rainbow runs fastest in 256 colours and this screen depth is highly recommended. With more colours, Rainbow runs about 10% slower since more screen data needs to be processed. 7) Pause feature ---------------- You can pause Rainbow at any time. Pressing a key or clicking the mouse button resumes emulation. 8) Importing external files --------------------------- This facility will intelligently paste an external file from your PC hard disk onto the disk image in drive#1, updating the directory, VTOC etc. This will work as long as the file is not too large for the remaining space on the disk and if the directory is not full. N.B. Importing DOS.SYS and DUP.SYS files into a blank disk will not give you a bootable disk; in additional you must set the 15th byte in sector 1 from zero to one. This can be accomplished using some kind of hex editor. This option is only highlighted when a disk is in drive#1. THIS FEATURE ASSUMES ATARI DOS IMAGES AND SHOULD WORK WITH SIMILAR DOSes. 9) Exporting disk files ----------------------- Choosing this option will allow you to dump valid DOS files from a disk image in drive#1 onto your PC hard disk. For each suitable file, you will be presented with a dialog box. Click on 'Cancel' to skip a file. But what is a suitable file? Well, files on an image created by Atari DOS. If other DOSes use the same disk layout (i.e. VTOC, sector and directory format etc.) then these should export okay. This option is only highlighted when a disk is in drive#1. THIS FEATURE ASSUMES ATARI DOS IMAGES AND SHOULD WORK WITH SIMILAR DOSes. 10) Sound --------- Rainbow plays sound through 4 channels using POKEY samples to give very realistic audio effects. You can turn off sound processing in the 'Sound' menu to increase speed. You can also turn off the disk noise. 11) Joysticks and Paddles ------------------------- Make sure that NUM LOCK is on! Rainbow gives you the opportunity to use all 4 joysticks (2 on XL) although not all at once. Just select the one you want to use under the 'Joy#' menu. The name of the active stick is displayed in the menu bar (handy, eh?). The chosen stick is then operated using the numeric keypad, i.e. Up = 8 (on keypad) Down = 5 (on keypad) Left = 4 (on keypad) Right = 6 (on keypad) Fire = 0 (on keypad) or control Pressing 8 and 4 together allows you to move the joystick north-west, etc. But you want a 2 player game in Gauntlet, right? Or World Karate? Easy! Choosing 'Joy 0+1' will give you sticks 0 and 1, both working simultaneously.Stick 1 is operated using the numeric keypad and stick 0 is now mapped to the left of the keyboard as follows:- Up = W Down = S Left = A Right = D Fire = control. Note that this may conflict with ordinary keypresses with some games, e.g. Star Raiders (not that you can play a 2 player game in SR anyway...) Notebook users don't have a numeric keypad. If you check the 'Use keys L<>?' item under the 'Joy' menu, you can use keys L<>? for joystick movement (L is up, < left, > down, ? right). These keys are then *not* recognised as keyboard strokes to avoid interference in some games (e.g. L in Star Raiders activates the long range scanner). So remember to uncheck the 'L<>?' option to use these keys. If you then select 'Joy0+1', Joy0 is WASD as before and Joy1 is now L<>? with the M key as the trigger for Joy1. So you can now play a two player game of Gauntlet or BallBlazer on your notebook. Check the 'Use keypad' item for normal joystick movement using the keypad and access to L<>? as keystrokes. Finally, paddles... and what better device to mimic a paddle than a mouse? Again just select the paddle you want to be active. Moving the mouse to the left is like turning the paddle to the left and vice versa. When the mouse pointer hits the edge of the screen, then the paddle can't 'turn' any more. The Control key serves as the paddle trigger, not the mouse button. Try Kaboom with paddles, great fun!! In 5200 mode, you may try selecting 'Pad0' which let you use the mouse as an analogue joystick. I have been told that there is a free program called UPJOY which will map a real joystick to keystrokes and that it works very well with Rainbow. Check out http://ns.nomius.com/~biggun/upjoy.htm for more details. Please do not direct any UPJOY questions to me as I will not be able to help you. 12) Cheat mode -------------- This is a little option to turn off Player/Missile Graphics collision detection. This cheat works fine with games like PacMan but it may cause some unpredictable results with others. Many games don't use collision registers (e.g. Defender) and so won't make any difference there. A tiny square is visible in the bottom right hand corner of the Rainbow screen when the cheat mode is on. 13) Speed capping ----------------- Turn this on to force Rainbow to run at 100% CPU (the real speed of an Atari 8bit computer). It does so by wasting any extra time it has, so you may see the FPS drop. Set your TV frame rate so that Rainbow runs at just over 100% and then turn the 100% CPU speed capping on. This ensures maximum frame rate at 100% speed. Good luck and enjoy! ---------------------------------------------------------------- Comments and suggestions (please say you are a PC user) to... E-mail: chris@chrislam.co.uk WWW : http://www.chrislam.co.uk Rainbow (c) 1995-2000 by Chris Lam. ----------------------------------------------------------------