Ramsoft's RealSpectrum |
BETA release 6
Version 0.50.23 (May 14th 2000)
Summary:
1. | Introduction |
Welcome to RealSpectrum, a high-fidelity ZX Spectrum emulator with no compromises. It reproduces the Spectrum hardware with a previousely unseen accuracy and it has been designed to support the most advanced features for the most realistic audiovisual experience. It is the world's first emulator offering 100% exact reproduction of all the multicolor effects commonly seen in demos and some games, not only on the screen but also in the border. It has faithful AY38912/YM2149 emulation for a great sound quality, with stereo and surround effects. It can instantaneousely flashload many turbo-recorded tapes (including commercial games) thanks to a new loading technique, treating TZX files just like snapshots or disk images. Besides, it has many other interesting features that make RealSpectrum the ideal demoscene emulator. |
2. | Features |
This is the list of the currently implemented features, but more will follow.
|
3. | Requirements |
SystemThe high detail of emulation offered by RealSpectrum requires intensive computations and memory accesses, so you'll probably need a 200 MHz Pentium class CPU (K6's are also fine, of course) to run smooth at any resolution with all features on. Yes we know that it's quite slow for a Spectrum emulator, but that's the price for the best quality possible. Recommended at least 8MB of RAM.To run under plain DOS (i.e. not within a Windows95 DOS box) you need the DPMI extender CWSDPMI.EXE. To enhance disk performance when running RealSpectrum under pure MSDOS, we strongly suggest you to activate a disk cache program such as SMARTDRIVE (this is particularly needed when the WAV writer is active). VideoRealSpectrum will run on any VGA card, but a VESA2 compliant video card is HIGHLY recommended. Depending on the selected video mode, RealSpectrum will choose the best driver amongst standard VGA, X-Mode and VESA1/2/3. VESA2/3 resolutions dramatically improve the performance. Video speed is really determinant for overall efficiency. If the BIOS of your video card does not support low-resolution VESA2 modes (320x240, etc), please download some of the extenders available such as Scitech's Display Doctor (or GX00VBE.EXE for Matrox G200/G400 cards).SoundcardsThe sound library used by RealSpectrum supports all the Soundblaster brand, ESS1688 and Windows Sound System (all cards based on AD1848/CS4231 chipsets). If you want to run under plain DOS with sound, you'll probably need an ISA soundcard, since PCI cards like SB Live! or SB PCI64/128 usually have problems running in pure MSDOS; this is not our fault. If you have a PCI card, you'd better run RealSpectrum in a fullscreen DOS box under Windows 95.ROM filesThe freely distributable roms are available in a separate archive which must be downloaded from our website. The package contains the following files:
In order to use DISCiPLE/+D and Multiface 128 emulation, you need the appropriate ROM files which are *NOT* included in the ROMs package:
The normal DISCiPLE/+D BIOS files (both GDOS and UNIDOS) are 8K in size, but a 16K interface memory image can be provided; in this case the operating system is pre-loaded and doesn't need to be booted. Important: Please don't ask us to send you any of these ROMs - we can't, really. |
4. | Usage and control keys |
RealSpectrum should be quite easy to use, since everything is done through a series of graphic menus. The startup settings are read from the REALSPEC.INI configuration file, a plain text file which can be edited to suite your needs; each option line of the file is commented, so you should be able to understand it clearly once you have read this manual. RealSpectrum can also accept command line parameters. The list of the available switches can be obtained by typing "REALSPEC -?" (or -h); the parameters entered from the command line take priority over the INI settings. Once started, RealSpectrum can be controlled through the following keys, which give access to the various GUI menus to change settings and parameters.
The FileselectorSome of the menus above will bring you a fileselector where you can choose a file to load or save.The upper part of fileselector window shows a list of directory and files, sorted by name; the currently selected item is highlighted by a red bar, which you can move up and down using the arrow keys of the PC keyaboard. Only files of the matching types for the context are shown (i.e. SNA and Z80 for snaphots, and so on). You can also use the keys PGUP/PGDN to move faster and HOME/END to go to the first and the last item respectively. At the bottom of the window there is an edit line where you can type the initials of the file your are looking for to speed up selection. Whenever you press an alphanumeric character, the selection bar is moved automatically to the file with the nearest name to the string appearing into the edit line. You can delete characters with the usual BACKSPACE key. You can change the working directory and drive by highlighting the desired directory or drive letter and then pressing ENTER. Once you have highlighted the desired file, press ENTER to confirm selection and quit the fileselector. When the fileselector is opened for saving, it will only show directories and drives so that you can choose the path where to save the file and you must type in the filename which will appear in the edit field. In some cases you can also choose the file format with the left/right arrow keys; the currently selected format is shown in the "Save as" line. If the edit line looses the focus (i.e. the characters you type don't appear), use the TAB key to set it back. Please note that RealSpectrum fully supports long filenames if run under Windows 95 and above. The Hardware Configuration menu (F3)From this panel you can select the various Spectrum models and interfaces. Use the TAB key to move the cursor focus between the sub-panels.The Joystick Configuration menu (ALT-F3)RealSpectrum supports up to 4 PC joysticks; each of them can be mapped to any supported Spectrum joystick such as Kempston, Sinclair 1 and Sinclair 2. The number of joysticks currently connected to the game port of your PC is reported in the last line of the menu. Use the arrow keys to select the various types and to set the assignements. |
5. | Snapshots |
RealSpectrum supports the most common types of snapshot files, the Z80 and SNA formats which alone represent nearly the totality of the snapshots available worldwide. Several versions of both Z80 and SNA files exist, but RealSpectrum is able to deal with them all transparently.
Using snapshots is very easy, they can be loaded with F5 at any time. In the configuration file, you can specify a default directory where you keep your collection of snapshots. For a design choice, RealSpectrum will not change the hardware model by itself when opening a snapshot saved for a different machine. For example, you can load a 128K snapshot while you are using a Spectrum 48K, but this will probably result in a crash; you will have to manually select a 128K model from F3 before loading it. Snapshots are very handy because they load and save instantaneously, but they have the major disadvantage that they are commonly considered "ugly". They start the program somewhere in the middle, not from the beginning, and something of the original program is lost; besides, they cannot store the data levels for multiload games and so are also incomplete in many cases. Consequently, snapshots should not be used to archive your collection of old games, but only as a temporary form for fast usage. Tapes, and especially TZX files, are the best choice for archiving purposes. |
6. | Tapes |
RealSpectrum supports several types of tapes and each format has special peculiarities in the way it can be handled by the emulator.
Tape OptionsBy pressing ALT-F7 you open the Tape Options control panel, where you can alter some settings.
FlashLoadingFlashLoading is the ability to load tape data instantaneousely, without having to wait like on the real Spectrum. This is a common feature with TAP files, but we did it even better: RealSpectrum is the first emulator which is able to flashload turbo TZX files too! This means that you can now load games (with levels too!) from their original tapes as if they were snapshots or on disk! Please note the difference from other kinds of so-called "flashloading": we are not just speeding up the emulator while loading, but rather autodetecting the tape routines and loading the data directly into the Spectrum memory as requested. In this way, the full loading of a 128K game happens in zero time! The only pauses that you will see are due to the various decrypters/decrunchers commonly used by games before startup to set up themselves, not really part of the actual loading. This cool feature is possible thanks to the MakeTZX technology which is embedded into RealSpectrum.
The "Screen Pause" setting is used to introduce a small pause right after the loading screen to let you see it (otherwise in most cases it would disappear immediately); it is particularly interesting with Alkatraz games, which usually show the loading screen in a very fancy way and we thought that it was nice to give you the ability to replay the screen in the original way. Choosing "NONE" disables the pause/animation at all, while the other three settings ("Slow", "Medium" and "Fast") affect the pause/animation speed. Note that it's only an artificial slowdown, since the real screen is internally loaded instantaneousely :-)
FlashLoading is also useful outside the expected situations. When it is enabled, RealSpectrum loads normal speed blocks found in TZX files just like it does with TAPs, so it can be used to skip any standard block also in unsupported loading schemes. If it stops before a custom turbo block because that particular loader is not directly supported by RealSpectrum, all you have to do is simply press CTRL-F7 and loading will continue normally according to the old-fashioned way; in this case, FlashLoading will be automatically disabled until you open the next tape. In general, you can switch between FlashLoading and conventional "slow" loading at any time from the ALT-F7 menu. Tape SavingRealSpectrum can save ZX tapes in all the file formats supported also for reading, that is you can choose amongst TZX, TAP, WAV and CSW. This is an useful capability, since it gives you the absolute freedom to manipulate any kind of data on writing, including turbo and custom loaders.To initiate tape writing, enter the Tape Options menu with ALT-F7, move the cursor to the "Tape Saving" section and select the "Open tape for saving" menu entry by pressing RETURN. This will open the usual fileselector where you can choose the destination directory and the filename of the tape to save. With the left/right cursors you can choose any desired tape format. When you have done, press RETURN again and tape saving will be activated. What happens then, it depends on the tape format chosen:
|
7. | Disks |
Currently RealSpectrum implements four disk interfaces: DISCiPLE, +D, Beta 128 and +3. DISCiPLE and +D are very similar and compatible, so they are often referred to as MGT interfaces (from the name of Miles Gordon Technology, the manufacturer). Beta 128 (a.k.a. TRDOS) is the default disk system for the Russian Spectrum clones such as Pentagon and Scorpion; it is based upon Technology Research's interface. The +3 system is obviousely found in the latest Spectrum model by Amstrad. From the F3 menu you can enable one of these interfaces for each Spectrum model. MGT and TRDOS are mutually exclusive because of some port conficts; TRDOS is enabled automatically when you select Pentagon mode, but you can change the disk interface as you like it. Disk OptionsPress F6 to access the disk drives configuration. For each available drive, RealSpectrum shows the disk images currently loaded in that drive and the write protection status of the disk. To insert a new disk, select the desired drive, then press ENTER and choose the disk file to load. To eject a disk, simply select it and then press the DEL key. To toggle the write protection on/off, use the left/right arrow keys. A default directory for disk files can be specified in the INI file.Physical disk supportBesides disk image files, RealSpectrum allows you to insert real floppy disks into the disk drive of your PC. To enable real disk mode, just open the special file called "Physical-Device" which is shown at the end of the list in the fileselector.Note that RealSpectrum uses the motherboard's BIOS routines to access the disk drive. This means that some old BIOSes might not be able to read non-MSDOS disks such as the Spectrum disks. On an Asus P5A, RealSpectrum reads my DISCiPLE disks at the same speed as the real Spectrum does! In case you have an unlucky BIOS, before giving up try to print the directory of a 720K MSDOS disk before starting RealSpectrum, or use a BIOS disk tweaking utility such as FDREAD.EXE. Also, the problem could be that your PC's drive has a different head alignement from the Spectrum's drive. DISCiPLE and +DThe MGT interfaces support up to two double density, double face floppy disks (MGT1 and MGT2), usually 80 track x 10 sectors of 512 bytes each (800K total). In order to able to use them, you need the ROM files GDOS.ROM for DISCiPLE and GDOS-PD.ROM for +D, which must be placed in the same directory where RealSpectrum is. Then you need a boot disk containing the DOS (a file called "sys*" or "+sys*" respectively). Please read our DISCiPLE/+D Guide to learn everything you need to get the most from these two wonderful interfaces. The devices are equipped with a magic button (NMI) which freezes the currently running program and lets you save a snapshot to disk, print the screen and many other things.RealSpectrum supports also UNIDOS, a powerful operating system for both DISCiPLE and +D which is available as an EPROM upgrade for the interfaces; you need UNI-DISC.ROM for DISCiPLE UNIDOS and UNI-PD.ROM for the +D version. You can choose between GDOS and UNIDOS from the F3 menu at any time. If the DISCiPLE/+D ROM file (default or manually specified into realspec.ini) is 16384 bytes long instead of 8192, RealSpectrum assumes that it contains the pre-loaded operating system and so you don't need to boot the DOS with the usual "RUN" command. Beta 128 (TRDOS)The Beta 128 interface allows to control up to four disk drives (TRD1-TRD4), usually 80 tracks x 16 sectors of 256 bytes each for a total of 640K. The supported file formats are .TRD and .SCL (FDI coming soon).+3 DisksWhen the +3 model is selected, you have two disk drives available (DSK1 and DSK2) where you can insert .DSK file images. +3 floppies are usually 3" 40 tracks x 9 sectors, single sided disks. |
8. | Video |
RealSpectrum can run at several video resolutions, which can be changed on-the-fly from the Video Options menu (F11) by selecting the desired mode and then pressing RETURN. You can also type in the resolution manually in the edit field, e.g. "320 200". If the selected mode is available on your system, RealSpectrum will change the videomode immediately, otherwise the old mode is kept. The emulator automatically uses every single pixel of the available video area to display the largest possible portion of the full ZX Spectrum screen. This means that at 320x200 you will see 4 lines of upper and lower border, while at 376x308 and above the entire picture will be shown (usually beyond the normal TV capabilities).
The list of video modes shown in the F11 panel is only a very small subset of all the available resolutions. RealSpectrum comes with the following built-in modes:
If your enter one of the resolutions listed above, RealSpectrum first tries to see if your BIOS supports it as VESA2 and if it doesn't then it uses X-Mode.
Besides these modes, RealSpectrum supports all the VESA 1/2/3 modes supported by the BIOS of you graphics card. You can use a VESA diagnostic tool to get the full list of your VESA modes. Typical VESA2 modes are 640x480 and 640x400, but many BIOSes implement also some of the low-res modes listed in the table above. Important: we strongly recommend you to always use VESA2 or VESA3 whenever possible, since this dramatically improves the speed performance of the emulator. The last line of the F11 control panels shows a text line describing the currently active video mode; you should try to work with resolutions that are reported as "VESA2" or "VESA3". If the low-res modes such as 320x240 are not available as VESA but only as X-Modes, we recommend you to try the Scitech Display Doctor. If RealSpectrum doesn't run at fullspeed on your machine even in VESA2 modes, then try the good old 320x200. Check that the video driver used is "Standard VGA" (aka mode 13H). You can always force the VGA mode 13H by entering a non-existent resolution into the INI file (e.g. "VideoMode: 333 333"). Extra video preferencesIn the ALT-F11 menu some extra options are available.
|
9. | Audio |
RealSpectrum has a very rich set of features concerning music and sound, because audio quality is one of its main design goals. You have already learned the capabilities in chapter 2 from the emulation point of view. This chapter explains the user interactions with the sound system. RealSpectrum can produce sound in many configurations: 8 or 16 bit, mono or stereo and at any sample rate supported by your soundcard. The recommended configuration is 8-bit stereo at 44100 Hz (16 bits are usually not necessary).
Sound OptionsBy pressing F12 you enter the sound options panel where the following controls are available:
Extra audio settingsWith ALT-F12 some extra audio features are available:
|
10. | Pokes (cheats) |
At the good old times, lots of cheat modes and trainers were available for many games, typically printed as POKES in the magazines. With RealSpectrum there are two ways to enter such pokes: you can enable the Multiface 128 and then use its menu to insert the poke, or you can use the trainer control panel which is accessed with the F9 key.
When you load a tape or a snapshot file, RealSpectrum automatically looks for a file having the same name and the .POK extension. POK files are produced by the popular SGD (Spectrum Games Database) utility by Martijn van der Heide and contain the cheat definitions. When POK files are available, the F9 panel shows a list of the available cheats for the running game; each trainer can be activated and disabled with the left/right cursors. Sometimes it is possible to specify a number as the value of a trainer, for example the number of lives; in this case you can alter the number which is shown when the trainer is active by using the +/- keys on the numeric keypad of the keyboard. If no POK file is available for the loaded game, you can still enter pokes manually by typing the values in the edit field, e.g. for a POKE 32654,201 you will enter "32654 201". If you prefer, you can keep POK files altogether into a single directory which is pointed to by the "PokesDir: " setting found in REALSPEC.INI. |
11. | Frequently Asked Questions |
|
12. | License, credits and contact info |
RealSpectrum is freeware. It can be freely used and distributed as long as no money is charged for it and the original package, program and documentation are not altered in any way. Before including RealSpectrum into a commercially sold media (such as a magazine CDROM), please contact us first.
RealSpectrum comes without any kind of warranty, both implied and expressed. By using this program, you accept that the authors are not responsible for any damage or data loss caused directly or indirectly to your system by the emulator. Use it at your own risk solely. The latest version of RealSpectrum can always be obtained from Ramsoft's official website: If you want to send your impressions, suggestions or even better bug reports, please write to: Before asking for something, please make sure that your question or your problem isn't already covered in this manual. When sending in bug reports, please describe in detail the encountered problem and the procedure to make it happen again; don't forget to include a description of your system (OS, soundcard, videocard, CPU, memory, etc). This will save us a lot of time, thanks.GreetingsWe would like to thank the following people who contributed useful suggestions or bug reports:
The following technical material was consulted during the creation of RealSpectrum, credits go to the respective authors/maintainers:
|
13. | Revision history |
New in v0.50.23 (May 14th 2000)
|