NEW in version 5.2: - New sound emulation engine with support for Soundblaster (compatible), Gravis Ultrasound, and Ensoniq Soundscape. 44kHz and stereo options. Accurate recreation of tone frequencies and hardware envelopes. Optimized for speed. Unfortunately, the new GUS code is currently non-functional; it will be fixed for a future version (if possible). - New FDC code, now 99% complete. All uPD765A commands, except Write ID, are faithfully emulated. Most copy protected material can be processed without problems. - Added support for high capacity disk images (eg. 80 tracks, double sided). Usually requires the use of an expansion ROM such as VDOS or ROMDOS. - Scroll-Lock LED indicates any CPC disk activity. - New auto-calibrating joystick routines and support for two PC joysticks. - New, faster VESA graphics mode routines. - Optimized keyboard interrupt handler. - Completely redesigned user interface. An easy to use file selector is now available to select snapshots and disk images. Files can be retrieved from different drives, and from within ZIP archives. See the main documentation for more details. - Fixed the snapshot support and maximized their processing speed. - Removed the "thin grey border" that was visible on some graphics cards in 800x600 VESA graphics mode. - Rewrote the CPESETUP utility to be more user-friendly. - Added spanish translation by Gerardo Brise¤o As always, make sure you delete your old PREFS.CPE prior to starting CPESETUP! ----------------------------------------------------------------------------- NEW in version 5.1: The following enhancements are available thanks to Ulrich Doewich: - Perfect sound emulation with GUS and Soundblaster cards. It supports all features of the CPC sound chip. - FDC code completely rewritten. It now supports both CPD formats (normal and compressed) as well as the old CPCEMU .DSK format and the extended .DSK format. Copy protection should work fine, and .DSK files are now writeable. Some other changes: - CPE2: Autocalibration of the frame rate. If you set the frame rate to 0 in CPESETUP, CPE2 will figure out the best value that it can use while still running at 100% the speed of a real CPC. - You can now change directories when selecting disk images. This may still have bugs... - Some silly bugs fixed. Especially the good old |TAPE:SAVE "FOO",b,&C000,&4000 effect should work again 8-) (Try it on a 386DX40 for best results) - Bug that would prevent CPE from working on some graphics cards removed (Brad Thomas) - Joystick support rewritten not to use BIOS routines (which may not exist on every machine) (Unai Uribarri Rodriguez) - French documentation (Emmanuel Roussin) - French keyboard support (Thierry Dymon) Please, please always re-run CPESETUP when you get a new version of CPE, or the emulator will behave strangely! ----------------------------------------------------------------------------- NEW in version 5.0: - CPE2 handles overscan a lot better. Scrolling is possible with F8,F9, F11 and F12 if the CPC's screen does not fit in 320x200. - CPE2 can now use EMS memory without crashing programs that are run after it. Consequently, EMS is now enabled by default. - CPE2 has new graphics modes. It is possible to select a resolution of 800x600 in 256 colors (VESA mode, your graphics card has to support that). This has the following advantages over the old 320x200 mode: * CPC mode 2 (640x200) is now displayed correctly; this can't be done in a 320x200 resolution. * Borders are painted, the screen is now a little smaller, which looks somewhat nicer and resembles a CPC more closely. No garbage is left over from previous screens. As a result, the screen will always be centered as on a real CPC. * All possible overscan resolutions are supported, nothing will ever be truncated. * 32k screens, used in many demos, are supported (only if EMS is on, it would be painful to implement this without EMS). Unfortunately, you need good hardware for this. With a maximum screen refresh rate of 50Hz (can be adjusted as usual in the setup), this requires a transfer rate of 11MB/s for graphics emulation only. Even a P90 may be unable to handle this. 25Hz refresh rate works fine, though, even on a VLB 486DX2-66 with a good video card. To improve speed, you can turn off the borders, which will make the screen refresh go much faster, but there will be blank spots on the screen that may contain garbage from previous frames. You can also reduce the number of displayed pixels to improve speed. The screen will then only fill the upper left quarter of the display, leaving most of the area blank. You lose most of the advantages of the 800x600 mode, but you'll still have full overscan and 32k screens. In this mode, it is possible to make CPE2 paint the menus not on a text mode screen, but rather keep the high resolution, thus avoiding switching frequencies too often. You should enable this, your monitor will thank you. There is a possibility that this mode does not work properly on your graphics card - I tested it with two S3 cards, and it works. But on other cards, the screen may be squeezed vertically, filling only the top half of the display. Please tell me which graphics cards suffer from this. - CPE2 tries to emulate the 'split screen' technique that some demos use. This works fairly well most of the time, but needs VESA mode to give good results (320x200 is just too small). Use programs like "The Demo" or "Voyage 93" to test this, most of the parts of these demos work fine now. (The Demo needs to be on a .CPD file, not a .DSK file) - Bug fixes in the FDC part, in interrupt generation, and in OUT decoding. I don't think I fully understand the way interrupts are generated in the CPC. If you have any programs that worked in v4.8, and behave strangely with the new version, please report this to me. - If you have configured your frame rate too high, CPE2 will still be slowed down, but hopefully not quite as much as in previous versions. - As a side result of some other changes, CPE2 will now behave correctly if the CRTC is programmed to 60Hz refresh rate instead of the usual 50Hz. On a real CPC, this has the effect that most games either crash or work faster, since they synchronize with the vertical blank interrupt. - Menus & setup program cleaned up a little. Some rather obsolete stuff removed (things I invented to get a 1% speed increase out of my 386DX-40) - Diskfile & snapshot selection menus now "remember" the last file you selected. You can jump to a specific file by typing the first character of the name. - The setup program has a new option to turn off cassette messages, so there won't be "Press Play then any key" or "Loading block ..." messages. This is useful if you have software that expects to be on a floppy in the TAPE directory; such software used to mess up title screens and such with tape messages. - It should no longer be possible to crash the emulator by using a joystick before calibrating it. - Maybe I fixed the disk menu crash that some people have seen. I can't tell, I've never had it crash myself. - The snapshot saving routine is improved, there is a directory of snapshot files, and you can edit your input. - The doc file is a bit improved, there are some additional hints (like, giving the "-d" option to PKUNZIP when decompressing the archive...) It should be somewhat easier to read and understand now. ----------------------------------------------------------------------------- NEW in version 4.8: - Support for Gravis Ultrasound cards, thanks to Ulrich Doewich. - ROMs are included now. They are copyrighted by Amstrad and Locomotive. Read CPE.DOC for more information. - A short program called STRIPES.BAS in the TAPE\ directory to calibrate the 50Hz mode. ----------------------------------------------------------------------------- NEW in version 4.7: - Bug fixes: CPE2.EXE sometimes crashed, and both versions had problems if there was only a DISC, but no DISKS directory. - CPESETUP.EXE was compiled for protected mode and could only be run if Borland Pascal was installed on the hard disk. Since I got only one complaint, I can assume two possibilities: a) No one ever called CPESETUP: This is bad, because this program is needed to fine-tune CPE's behaviour for your computer. b) Everyone got Borland Pascal: Well, maybe. - CPE2.EXE can now be made to refresh the screen only in intervals. This is done in CPESETUP.EXE. For example, you might want to make CPE2 draw only every second screen refresh. This will considerably speed up the emulation. (CPE.EXE is not affected.) On a 486DX2-66 with a local bus video card, most programs achieve full speed with this set to 1, i.e. every frame is drawn. If the program becomes too slow, you may want to change the setting to a higher value. There should be VERY FEW programs that require this to be set to 3 on a 486DX2-66. Only if this is set to 1 will graphics effects be smooth, provided your CPU is fast enough to handle the high refresh rate. - better joystick emulation. You may want to try it. Warning: If you encounter problems, because somehow the emulator does not react if you push the joystick in a certain direction, try re-calibrating the joystick, but this time don't push it to the full extent.