CaPriCe32 Firmware and BASIC ROMs | ||||||||||||||||||||||||||||||||||||||
ContentsDisclaimer | ||||||||||||||||||||||||||||||||||||||
DisclaimerThis software is provided as is. The author accepts no responsibility for damages occurring as a direct or indirect result of using this software. | ||||||||||||||||||||||||||||||||||||||
SynopsisCaprice32 is a software emulator of the Amstrad CPC 8bit home computer series. The emulator faithfully imitates the CPC464, CPC664, and CPC6128 models. By recreating the operations of all hardware components at a low level, the emulator achieves a high degree of compatibility with original CPC software. These programs or games can be run unmodified at real-time or higher speeds, depending on the PC environment used. | ||||||||||||||||||||||||||||||||||||||
Requirements
| ||||||||||||||||||||||||||||||||||||||
Getting StartedAfter selecting CaPriCe32 in Programs/CaPriCe32 on your Start menu, you will be presented with the standard CPC startup screen: yellow text on a blue background. The PC keyboard will now imitate the keyboard of a CPC - so don't be alarmed if a key press results in something other than what you'd expect! If you are not yet familiar with the CPC's keyboard layout, see the picture below for a simplified representation. ![]() Where possible CPC keys map to the PC keyboard keys in the same positions, but some CPC keys had to be moved to alternate locations:
The most frequently used emulator commands are initially mapped to the following keys:
The purpose behind some of the not-so-obvious emulator features (e.g. snapshots) will be revealed in the next section. At this point, feel free to experiment with Caprice32, and return if something is unclear or if you wish to tweak the emulation for best performance. If you run into any kind of problems, please refer to the TROUBLESHOOTING section. | ||||||||||||||||||||||||||||||||||||||
FeaturesSnapshotsSnapshots are used to preserve the entire state of the emulation at the exact moment the snapshot is taken. Used with a game for example, the snapshot facility gives you the ability to save your progress at any time. NOTE: Snapshots only store what is currently in memory. If for example, you are playing a game that loads level data from disk, you will have to have the DSK image in the CPC drive for the game to continue properly from the point the snapshot was taken. It is generally NOT a good idea to take a snapshot while the CPC is accessing any of its disk drives. ROMsCaprice32 allows (just like the original CPC) the use of expansion ROMs. If you had any additional ROMs for your CPC, you may be able to use them under Caprice32 as well. As a bonus, Richard Wilson's replacement disk operating system PARADOS is included in the Caprice32 archive. To activate it, call up the Options dialog by pressing F8 or selecting it from the Tools menu. Click on the "ROM Slot 7" button to get a list of available ROM files. Select "parados.rom" from the list and click on OK to confirm. The button text will now have changed to reflect your choice. Click on OK and the CPC will reset to activate the new configuration. PARADOS is more tolerant of high capacity disk formats, and by default configures CPC drive B to be a double sided, 80 track capable disk drive. Enter the "|DRIVE" command at the BASIC prompt to access the built in utility suite of PARADOS. | ||||||||||||||||||||||||||||||||||||||
Tools MenuOptions...General Page
Video Page
Audio Page
Controls Page
Debugger...The debugger is not yet fully operational - to be completed in a later version. | ||||||||||||||||||||||||||||||||||||||
Loading Disk GamesStart the emulator and hit F6 to open the file selector for CPC drive A. Navigate to where you placed the DSK or the ZIP which contains it. Highlight the desired file and click on OK. If you selected a ZIP and it contained more than one DSK file, you now have to choose which one to load. Once again, highlight an entry and click on OK. Back on the blue CPC screen, type CAT to list the contents of the disk image. Two things can happen at this point: a) either a bunch of names appears, or b) you get a "Drive A: read fail" error message. Depending on what you got, follow the instructions in the corresponding paragraph below.
| ||||||||||||||||||||||||||||||||||||||
Loading Tape GamesStart the emulator and hit F3 to open the file selector for the tape drive. Navigate to where you placed the CDT or the ZIP which contains it. Highlight the desired file and click on OK. If you selected a ZIP and it contained more than one CDT file, you now have to choose which one to load. Once again, highlight an entry and click on OK. Back on the blue CPC screen, type |TAPE and hit Enter. The | symbol is entered by pressing Shift+[ (US keyboard). The CPC has now disabled the disk drive and is ready to load from tape. Type RUN" and hit Enter (you get the quotation marks by hitting SHIFT+2). The CPC will prompt with Press PLAY then any key: Simply hit any key (except ESC, which aborts) to get things going. Loading from tape can take a very long time, so you may want to switch to Full Speed via F12 while it is doing so, to speed things up a bit. | ||||||||||||||||||||||||||||||||||||||
Troubleshooting- comming soon - | ||||||||||||||||||||||||||||||||||||||
How To Get In TouchIf you want to let me know what you think about Caprice32, submit a bug report, or have a suggestion for a future version, drop me a line via one of the following methods: e-mail: snail mail: You can always find the latest version of Caprice32 and other utilities authored by me on the official Caprice32 web site at: | ||||||||||||||||||||||||||||||||||||||
Background InformationWorking on and writing CPC emulators has been a rewarding and pleasurable experience for me since 1995. Caprice32 came into being as I was struggling with improving Bernd Schmidt's CPE, a DOS based CPC Emulator. Rather than poring over the (undocumented) assembly code of CPE I decided to write my own CPC Emulator. That was the beginning of Caprice32. Versions 1 and 2 were written in x86 assembly code and still DOS based. Since that OS was on the way out I decided in October 2000 that it was time to start over - again. Version 3 is basically a complete rewrite in C code to make it easier to port to different environments. Right now, only a version for Windows and DirectX exists - but who knows what the future might hold?! ;) For the latest versions of my Z80 and AY-3-8912 emulations I have referenced the sources of MAME (see http://www.mame.net). | ||||||||||||||||||||||||||||||||||||||
AcknowledgementsThanks must go out to...My brother Ralf, who is a great resource when it comes to hard and software problems. Together we have traced quite a few signals of the CPC hardware. He is also responsible for designing the Caprice32 logo and all other graphics used in the emulator. Kevin Thacker, with whom I have frequent e-mail exchanges. We've pinned down the inner workings of the CRTC/GA combo pretty accurately now, and continue to delve deeper into their secrets until we perfect the video emulation... Dirk Junker, who was kind enough to send me his Schneider CPC 6128 from Germany. Without having the actual machine to test software and theories on, Caprice32 probably wouldn't exist today! Brian Watson, for sending me a replacement drive belt for the CPCs 3" floppy disk drive. Marco Bergman, for sending me his CPC mouse - which shall be emulated in an upcoming Caprice32 version. Richard Wilson, for giving permission to include his AMSDOS replacement ROM PARADOS with Caprice32, and for his efforts in improving the accuracy of CPC emulation. Check out his excellent WinAPE32 CPC Plus emulator at http://winape.emuunlim.com/. Sergio Bayarri ...and last, but certainly not least, to all the users of Caprice32! |