home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / emulation / cpc / !CPC_Demo / !Help < prev    next >
Encoding:
Text File  |  1996-05-24  |  16.4 KB  |  395 lines

  1.  
  2.  !CPC_Demo - An Amstrad CPC emulator for Acorn RISC OS machines (demo)
  3.  =====================================================================
  4.  
  5. [For information on the full version of this emulator, !CPC, see
  6. the end of this document.]
  7.  
  8. Copyright
  9. ---------
  10.  
  11. !CPC_Demo is Copyright (C) 1996 Mark RISON.  This copyright extends to
  12. all the files provided in or with !CPC_Demo, except the BASIC, OS and
  13. AMSDOS ROM images, and the FrontEnd module.  The BASIC and OS ROM images
  14. are copyright Amstrad and Locomotive Software, and are distributed with
  15. their kind permission.  The AMSDOS ROM image is copyright Amstrad and
  16. Digital Research (Novell), and is distributed with their kind permission
  17. (well, Amstrad's at least...).  The FrontEnd module is copyright Acorn,
  18. and is distributed with their kind permission.
  19.  
  20.  
  21. Conditions of use
  22. -----------------
  23.  
  24. You may only use !CPC_Demo for your own personal and non-commercial
  25. purposes.  You may freely distribute !CPC_Demo (including by FTP or BBS)
  26. provided you do not modify it in any way (you must distribute it in its
  27. entirety, including this file), and do not charge anything, either
  28. directly or indirectly.  You may not, however, put !CPC_Demo on CD
  29. without explicit permission.
  30.  
  31. No guarantee of any kind is made concerning operation of !CPC_Demo.  You
  32. use !CPC_Demo at your own risk; you are advised to save all your work
  33. before launching !CPC_Demo.
  34.  
  35.  
  36. Introduction
  37. ------------
  38.  
  39. The Amstrad CPC range of computers was a hugely successful range of
  40. 8-bit computers.  There were 3 models.  The CPC464, released in 1984,
  41. consisted of a central unit, a cassette unit and a monitor in one
  42. package.  The CPC664 had a 3" disc drive instead of the cassette unit. 
  43. The CPC6128 had, in addition, 64K of bank-switched RAM.
  44.  
  45. All models were based around a Z80 CPU running at an effective 3.3 MHz.
  46. There was 64K of main RAM and 32K of ROM to contain the BASIC and OS;
  47. the disc drive models had an extra 16K ROM to hold the DOS, and the 6128
  48. had an extra 64K of RAM.  The screen could be operated in one of three
  49. modes: 640x200 in 2 colours, 320x200 in 4 colours, and 160x200 in 16
  50. colours -- from a palette of 27 colours (27 greens on the green screen
  51. models).  Sound capabilities ran to 3 channels with noise and hardware
  52. enveloping if desired.  Two joysticks could be used with the machine. 
  53. CP/M was an option on the disc models (CP/M 2.2 on both, and CP/M+ on
  54. the 6128).
  55.  
  56. !CPC_Demo aims to emulate a real CPC in sufficient detail to allow
  57. programs written for the CPC to be used under RISC OS.  This entails
  58. quite considerable translation from the CPC world to the RISC OS world;
  59. nonetheless !CPC_Demo is roughly as fast as the real thing on machines
  60. with an ARM3 (and faster with newer machines such as Risc PCs).
  61.  
  62.  
  63. A reminder of RISC OS operations
  64. --------------------------------
  65.  
  66. To open a RISC OS directory, double-click on it.  If it's an application
  67. (it's got a ! at the start), press Shift as well, else the application
  68. will be run.  To copy files from one directory to another, open both and
  69. drag from one to the other.  To load a given file into a text editor
  70. (e.g. !Edit) double-click on it while pressing Shift -- when you've
  71. finished the editing pressing F3 followed by Return should save the
  72. edited version.  To set filetypes, click on the menu button
  73. while the pointer is above the file to be filetyped.  Finally, to access
  74. the command line (to type * commands, setting variables, for example),
  75. press F12 -- when you've finished press Return on its own.
  76.  
  77.  
  78. File formats
  79. ------------
  80.  
  81. There are a number of formats for files suitable for use with CPC
  82. emulators such as !CPC.
  83.  
  84. The most common file format is the disc image format (this is a file
  85. reproducing the contents of a real CPC disc).  This can be recognised by
  86. filenames ending in .DSK (/DSK under the standard DOS mapping).  Discs
  87. must be used under AMSDOS (see below) -- use CAT to see what's on them,
  88. and something like RUN"MEGADETH", or perhaps |CPM, to run them (file
  89. extensions need not normally be specified).  Discs should be placed in
  90. the subdirectory Discs in !CPC_Demo.  If you set a disc's filetype to
  91. "CPC disc" (&065 at present), double-clicking on the disc will launch
  92. !CPC_Demo with it.  Note that !CPC_Demo does not support writing to
  93. discs.
  94.  
  95. Another file format is the snapshot format (this is a file reproducing
  96. the state of a real CPC), recognisable by filenames ending in .SNA
  97. (/SNA).  Snaps must be used under PseuDOS (see below).  Use
  98. |SNAP,"MEGADETH" to launch snapshot MEGADETH.  Snaps should be placed in
  99. the subdirectory Snaps in !CPC_Demo.  If you set a snap's filetype to
  100. "CPC snap" (&064 at present), double-clicking on the snap will launch
  101. !CPC_Demo with it.  |SNAPS will give a list of snapshots.
  102.  
  103. The last file format is the native AMSDOS format, consisting of one or
  104. more files with filenames typically ending in .BAS or .BIN.  These need
  105. to be converted to PseuDOS format using !AmsToArc (see below), and
  106. placed in the subdirectory Tapes in !CPC_Demo.  These programs are
  107. typically launched with RUN"MEGADETH".
  108.  
  109.  
  110. Using !CPC_Demo
  111. ---------------
  112.  
  113. !CPC_Demo should mostly behave just like a real CPC!  !CPC_Demo has some
  114. extra features, however.  You can reset the CPC not only using
  115. Shift-Ctrl-Esc, but also by pressing Alt-Esc (you may need to try a few
  116. times for this to work).  You can quit !CPC_Demo by pressing Alt-F12, or
  117. by typing |QUIT (if you're using PseuDOS and not AMSDOS).
  118.  
  119. One joystick is emulated, using Insert, Home, Page Up, Page Down, Num
  120. Lock and keypad / for left, right, up, down, main fire and secondary
  121. fire respectively.  !CPC_Demo also supports two standard Acorn
  122. joysticks, as found on the A3010, which will behave just like CPC
  123. joysticks.
  124.  
  125. If a program seems to be attempting to constantly change the screen
  126. colours, you can press Alt-P to lock out changes.  You can try this a
  127. few times until you get a suitable palette.  If a program seems to be
  128. attempting to constantly change the screen resolution, you can press
  129. Alt-M to lock out changes -- again, you can keep trying until the bit
  130. you're interested in appears right.
  131.  
  132. You can squeeze extra performance out of !CPC by running in MODE 12
  133. rather than a higher resolution mode such as MODE 20.  This is
  134. especially the case for games which use screen banking for smooth
  135. animation -- symptoms are faint horizontal interleave patterns on the
  136. screen.  In certain cases, turning palette switching off (with Alt-P)
  137. will also speed things up.
  138.  
  139. If the machine seems to hang and neither Alt-Esc nor Alt-F12 seem to get
  140. things back under control, you can attempt to kill the emulator off
  141. with Alt-Delete.  This should be a solution of last resort!  If even
  142. this does not seem to help, well ... you were advised to save all your
  143. work before launching !CPC_Demo, weren't you?
  144.  
  145.  
  146. PseuDOS and AMSDOS
  147. ------------------
  148.  
  149. AMSDOS is the original DOS provided with disc models.  It supports discs
  150. containing about 170K of data.  Various | commands are provided by it to
  151. handle disc files (|ERA, |REN, etc.).  To use AMSDOS the system variable
  152. CPC$DOS should be set to AMSDOS (use *SET CPC$DOS AMSDOS from the
  153. command line to do so).  The disc to be used can be set in CPC$Disc
  154. (e.g. *SET CPC$Disc Megadeth); alternatively, if this variable is not
  155. set, a list of available discs will be given, and you will be asked to
  156. choose one.
  157.  
  158. PseuDOS is a DOS whose purpose is to allow 'tape' files to be used.
  159. These files are held as RISC OS files in a special format.  PseuDOS
  160. provides full access to these files. In addition, PseuDOS redefines the
  161. CPC keyboard mappings to follow the UK RISC OS keyboard -- so if you're
  162. using AMSDOS some keys will be wrong (in particular, " will be obtained
  163. with Shift-2).  To use PseuDOS the system variable CPC$DOS should be set
  164. to PseuDOS (*SET CPC$DOS PseuDOS).  !AmsToArc (as found in the Support
  165. subdirectory in !CPC_Demo) should be used to make PseuDOS format files
  166. -- see the help file there for more details.
  167.  
  168. CheckSnap and CheckDisc, as found in the Support subdirectory, allow you
  169. to check whether a snap or a disc is broken in some way.  Simply
  170. double-click to launch, and give the name of the snap or disc to be
  171. checked when prompted.
  172.  
  173. Treat both AMSDOS and PseuDOS with care -- don't do unexpected things.
  174. For example, if you are using floppy discs, try to keep the disc in the
  175. drive all the time.  If you are saving under PseuDOS, make sure there's
  176. enough free space, and that the disc isn't write-protected.
  177.  
  178.  
  179. Configuring !CPC_Demo
  180. ---------------------
  181.  
  182. !CPC_Demo can be configured by adding to the file !Config in !CPC_Demo.
  183.  
  184. By changing the value for CPC$ScreenMode you can change the screen mode
  185. !CPC_Demo uses.  Recommended values are 12 if you have a low resolution
  186. monitor (or TV), 20 or 27 if you have a multisync or VGA monitor, or 46
  187. if you have a CGA monitor.  A value of -1 will select the screen mode in
  188. use when !CPC_Demo is launched.  In all cases the screen mode must be a
  189. 16-colour mode.  If you have a RiscPC, you can use a string such as
  190. X640Y400C16 to select such a mode if it is appropriate.
  191.  
  192. CPC$Slowdown selects the amount of slowdown to be used for fast machines
  193. (RiscPCs) to make them as slow as a real CPC.  Values of the order of
  194. 10000 should be OK.
  195.  
  196. CPC$DOS selects the DOS -- use either AMSDOS or PseuDOS.  If AMSDOS, you
  197. can specify a disc name with CPC$Disc.
  198.  
  199. If you would like to change the place where tapes, discs or snaps are to
  200. be found, you can alter DriveA, CPCDisc$Path and CPCSnap$Path.  Note the
  201. latter two are path variables, so you can have more than one directory
  202. of discs or snaps -- but remember to put a trailing dot!
  203.  
  204. The other variables should not normally need changing.
  205.  
  206.  
  207. Problems
  208. --------
  209.  
  210. !CPC_Demo, being only a demonstration version of the real thing, !CPC,
  211. will not always get things right, and so some programs may not work
  212. properly under it.  The symptoms can range from the mild (an inability
  213. to count the score) to the severe (a CPC hang, which necessitates an
  214. Alt-Esc to reset the CPC).  When in doubt, try waiting a bit, since the
  215. program may be working away without visible effects, or may be playing a
  216. tune (which you won't hear since !CPC_Demo does not support sound). 
  217. Also try pressing keys such as Escape, Space, Return and Fire (Num
  218. Lock).  You can try running with palette changing disabled to see what
  219. might be going on behind a blank screen.
  220.  
  221. You may occasionally get Internal Errors.  There are not necessarily as
  222. bad as they sound!  You can normally attempt to ignore the error by
  223. pressing space.  IEs such as "OPPIb" and "ICRTC" are not severe, and can
  224. safely be skipped.  The "BANK" IE is a sign that the program is trying
  225. to do bank switching a la CPC6128.  "DIHALT" and FDC IEs are bad news. 
  226. Any PseuDOS IEs are probably the result of bad configuration
  227. (write-protected discs, etc.).  Note that if an IE occurs when the
  228. palette has been set to e.g. all black, the text will not be visible;
  229. you'll just hear a beep -- don't let this confuse you!
  230.  
  231.  
  232. Limitations
  233. -----------
  234.  
  235. Disc handling is limited (only one drive, no writing to discs).
  236.  
  237. The Z80 R register is not emulated.  This means some programs which
  238. use R as a source of random numbers will behave rather predictably.
  239.  
  240. Z80 BCD operations are not emulated properly.  This means some programs
  241. won't count properly, which could be either very useful or very
  242. disastrous!
  243.  
  244. Z80 parity operations are not emulated.  This will only rarely cause
  245. trouble.
  246.  
  247. Sound is not supported.
  248.  
  249. You cannot save snaps or make screendumps.
  250.  
  251. RAM banking (a la CPC6128) is not supported.
  252.  
  253. Extension ROMs are not supported.
  254.  
  255. Printing is not supported.
  256.  
  257.  
  258. Thanks
  259. ------
  260.  
  261. Thanks are due to a large number of people.  I fear the list below may
  262. be incomplete: not having kept a list right from the start, I had to
  263. compile one from my records.  If you feel you've been left out, please
  264. do not hesitate to get in touch; I'll immediately set the record straight!
  265.  
  266. Nothing should be read into the ordering of this list (it is
  267. actually ordered by e-mail address!).
  268.  
  269. Jim Nagel, for a mention in his Computer Shopper column
  270. Cliff Lawson, for permission to distribute Amstrad copyright material
  271. Dave Long, for getting me to release !CPC in the first place
  272. Frederic Elisei, pour les echanges techniques presque en continu
  273. Kevin Thacker, for his stupendous WWW site, lots of FDC info, etc.
  274. Nige Jones, for !CPCFront and valuable discussions
  275. Richard Black, for info on ARM2/3 speed optimisations
  276. Andrew Hodgkinson, for info on WimpSlot intricacies
  277. Alan Glover, for accepting to post my propaganda to c.s.a.announce
  278. Arnt Gulbrandsen, for ftp.nvg.unit.no
  279. Adam Parsons, for !CPCDisk
  280. Mike Borcherds, for info on emulation intricacies
  281. Bernd Schmidt, for info on emulation intricacies
  282. Mark Wooding, for info on RISC OS intricacies
  283. Dave Allison, for info on task killers
  284. Frank Cringle, for yaze and its brilliant Z80 exerciser
  285. Martin Wheatley, for the games list and valuable discussions
  286. Ian Johnson, for info on task killers
  287. Mark Sinclair, for his MDFs for RiscPCs
  288. Andreas Stroiczek, for competition (!CPCEmu) and discussion
  289. Noel Llopis, for ftp.nvg.unit.no
  290. Richard Fairhurst, for FDC and Z80 info
  291. Richard Clayton, for permission to distribute Locomotive Software copyright material
  292. Emmanuel Roussin, for the CPC FAQ and ftp.ibp.fr
  293. Richard Wilson, for info on the Wimp
  294. Susanne Albrecht, for info on Z80 block I/O ops
  295. Sue Sound, for info on Z80 block I/O ops
  296. Thomas Hawtin, for excellent ideas about speeding-up the emulator
  297. Tony ?, for info on Z80 block I/O ops
  298. Thomas Down, for info on task killers
  299. Timothy Partridge, for info on ARM2/3 speed optimisations
  300. Dave Walker, for permission to distribute Acorn copyright material
  301. Robin Watts, for much marketing advice and assistance
  302. Toby Haynes, for allowing me to test !CPC on his Risc PC
  303. Dave Baldwin, for Z80 discussion
  304. Ian Collier, for Z80 discussion
  305. All the spodders on Egham Hills, for lots of technical chit-chat
  306. Everybody who tried out !CPC while it was in its beta test phase
  307. Everybody who showed their appreciation by contributing to the full version
  308. And everybody else who gave me valuable feedback and encouragment!
  309.  
  310. Kaj kompreneble Marianne, kiu toleris mian duon-edzi^gon al la komputilo!
  311.  
  312. No thanks to those who promised feedback and didn't provide any.
  313.  
  314.  
  315. Feedback
  316. --------
  317.  
  318. Feedback of any nature is very welcome!  Please write to the author.
  319.  
  320.  
  321. CPC resources on the Internet
  322. -----------------------------
  323.  
  324. There is a very wide range of CPC material on the Internet.  There are
  325. hundreds of games, utilities, documents, pictures, etc.  There's a
  326. newsgroup devoted to Amstrad's 8-bit computers, comp.sys.amstrad.8bit. 
  327. A real treasure trove!
  328.  
  329. Your best starting point is probably to take a look at
  330. comp.sys.amstrad.8bit, and follow some WWW URL mentioned there.  You can
  331. also try to access the author's WWW page at
  332.  
  333.    http://www.hep.phy.cam.ac.uk:8080/rison/cpc/cpc.html
  334.    
  335. but this might not exist anymore by the time you read this (such is the
  336. Internet!).
  337.  
  338.  
  339. The full version, !CPC
  340. ----------------------
  341.  
  342. A full version of this emulator, !CPC, is available, which fixes most of
  343. the limitations above.  It will successfully run the vast majority of
  344. CPC programs, including many which !CPC_Demo cannot handle.  It also has
  345. a host of features designed to make your life easier (you can change
  346. discs within the program, mix AMSDOS and PseuDOS, try different
  347. emulation strategies to get problem programs to work, there's full
  348. documentation, etc.).
  349.  
  350. !CPC is shareware, with a registration fee of GBP 15.  To get !CPC,
  351. write to the author.  If you have access to the Internet, try e-mail
  352. first.  Failing that, send a stamped self-addressed envelope together
  353. with a blank, formatted 800K (double density) disc to the author. 
  354. Please note that if any of these ingredients is missing, no response is
  355. likely to be forthcoming!
  356.  
  357. Esperantistoj ^guas rabaton de kvin pundoj je la ^ci-supra prezo. 
  358. Necesas tamen iom montri onian lingvan kapablon...
  359.  
  360. If you're in or closer to Germany or France, then there are !CPC agents
  361. there whom you might prefer to deal with instead (again, try e-mail
  362. first and then snail-mail):
  363.  
  364.    ELISEI Frederic (Frederic.Elisei@imag.fr)
  365.    Les Plaines
  366.    F - 73600 Moutiers
  367.    FRANCE
  368.  
  369.    Steffen HUBER (hubersn@minnie.informatik.uni-stuttgart.de)
  370.    Geigeraeckerstr. 19
  371.    D - 71336 Waiblingen
  372.    DEUTSCHLAND
  373.    
  374. No guarantees of any kind are made concerning operation of !CPC.  It has
  375. been tested on an 4 MB A440/1 with ARM3/25.  It will probably not work
  376. with only 1 MB.
  377.  
  378. Also note that registering does not guarantee you any future updates,
  379. though it is planned to make these available on the Internet, or by
  380. sending a disc and SAE as above.
  381.  
  382.  
  383. Contact details
  384. ---------------
  385.  
  386. Mark RISON
  387. Caius College
  388. GB - Cambridge CB2 1TA
  389. UNITED KINGDOM
  390.  
  391. rison@hep.phy.cam.ac.uk
  392. Mark.Rison@cern.ch
  393.  
  394. 1996-05-24
  395.