home *** CD-ROM | disk | FTP | other *** search
/ Emulator Universe CD / emulatoruniversecd1998.iso / Speccy / Emulators / z80 / Z80FAQ.DOC < prev   
Encoding:
Text File  |  1996-08-17  |  10.8 KB  |  276 lines

  1. Sinclair ZX Spectrum Emulator 'Z80' v3.04  -  10/8/96  -  by G.A. Lunter
  2.  
  3.  
  4.  
  5. ────────────────────────────────────────────────────────────────────
  6.  
  7. Z80 - Frequently Asked Questions
  8.  
  9.  
  10. 1  - How to print the diagram of the tape-interface
  11.      as shown in DIAGRAM.Z80, or make other screendumps.
  12. 2  - How to LLIST and LPRINT to a printer
  13. 3  - How to build the tape-interface
  14. 4  - What to do if the Zandbergen joystick doesn't work correctly
  15. 5  - How to contact the author
  16. 6  - Manic Miner and Jetset Willy run too fast!
  17. 7  - How to save a .SCR snapshot to tape or .TAP file
  18. 8  - Printing problems with Tasword 128
  19. 9  - What to do about an IN 0 crash?
  20. 10 - I have a .TAP file, but it doesn't work
  21.                             
  22. ────────────────────────────────────────────────────────────────────
  23.  
  24.  
  25.  
  26. ad 1. How to make a screen-dump on a printer
  27.  
  28.  
  29. When the Interface 1 appeared, it was possible to attach a serial printer
  30. to the RS232 port of the Interface 1.  The emulator can redirect the RS232
  31. to the serial port of the PC, a file or a parallel (printer) port.
  32.  
  33. The SamRam can make a screen-dump on a dot-matrix printer. It is programmed
  34. for a Star SG-10.  The Spectrum 128's COPY command sends its output to the
  35. "p" printer channel, also an RS232 channel.  This will work for
  36. Epson-compatible printers.  The ZX Printer's COPY output can be translated
  37. into graphics data understandable for Epson and HP-PCL compatible printers,
  38. and finally, the DISCiPLE has also on-board screen dump routines.
  39.  
  40.  
  41. Example 1: Screen-dump for Epson or HP-PCL compatible printers, via
  42.    the standard COPY command.
  43.  
  44.    Select the printer port to use for output with -XL 2 for example, to
  45.    select LPT2 for output.  Select Epson or HP-PCL output format with -0e
  46.    or -0h.  Then simply type COPY (in 48K or SamRam mode, not in 128K
  47.    mode).
  48.  
  49.  
  50. Example 1: Screen-dump for Star SG-10 compatible matrix printer using
  51.    the SamRam.
  52.  
  53.    Redirect the Spectrum Interface 1 RS232 output to LPT1 by pressing F4,
  54.         O, L, 1.
  55.    Load a .Z80 file, and wait for the picture you want to print to appear.
  56.    Switch to SamRam mode by pressing F10, H, 3, CTRL-ENTER, and generate an
  57.         NMI by pressing X, N.  If you're already in SamRam mode you can
  58.         simply press F5.
  59.    Press P, then 1 to print the screen.
  60.  
  61.  
  62. Example 2: Screendump for EPSON compatible matrix printer using the
  63.    COPY command of the Spectrum 128
  64.  
  65.    Redirect the RS232 output to LPT1 by pressing F4, O, L, 1.
  66.    Load a .Z80 file, and wait for the picture you want to print to appear.
  67.    Save it as a .SCR screendump by pressing F10, X, S, name
  68.    Switch to Spectrum 128K mode (F9, 5, ENTER)
  69.    Choose '128K BASIC' from the menu, and type PAUSE 0:COPY, and press
  70.         ENTER once.
  71.    Press F10, X, L, name, to load the screen snapshot back into memory.
  72.    Go back to the emulator (ESC, ESC) and press any key to start printing.
  73.  
  74.  
  75. Example 3: Screendump for all other printers, using DOS utilities
  76.  
  77.    Follow the steps from example 2 up to the saving of the .SCR
  78.         screen snapshot.
  79.    Leave the emulator.
  80.    Run CONVERT on the .SCR file to generate a .GIF or a .PCX file, for
  81.         example
  82.                 CONVERT b g screen.scr screen.gif,   or
  83.                 CONVERT b x screen.scr screen.pcx
  84.    Find another program that can print the .GIF or .PCX file
  85.  
  86.  
  87. Example 4: Screendump for Epson or HP PCL compatible printers using
  88.    the screendump routines of the DISCiPLE
  89.  
  90.    Redirect RS232 output to LPT1.
  91.  
  92.    Switch to 48K + DISCiPLE mode (or 128K + DISCiPLE) and select the ROM
  93.         with the pre-loaded D.O.S. for Epson or HP PCL compatible printers
  94.    Type COPY SCREEN$ 1 for a small screen-dump (black/white but with regard
  95.         to colors)
  96.    Type COPY SCREEN$ 2 for an A4 dump with dithered grey-tones.
  97.  
  98.  
  99. ────────────────────────────────────────────────────────────────────
  100.  
  101. ad 2. How to LLIST and LPRINT to a printer
  102.  
  103.  
  104. There are several ways to print things.  The standard ZX Printer output can
  105. be converted to graphics output in Epson or HP-PCL format; for this, select
  106. output port with -xl and output mode with -0e or -0h, then simply use
  107. LPRINT, LLIST and COPY to output to the "p" stream (on 48K Spectrum or
  108. SamRam; not on the Spectrum 128K).
  109.  
  110. All output to the Interface I's RS232 channel "b" and "t" (for raw and text
  111. output respectively; use "t" for listings) and the Spectrum 128's RS232
  112. channel "p" and the parallel printer interface of the DISCiPLE/+D can be
  113. routed to the printer port, a serial port or a disk file.  Thus, by OPEN
  114. #3,"b", "t" on the 48K Spectrum with Interface 1, or OPEN #3,"p" on the
  115. Spectrum 128, all data sent to channel 3 (i.e. printed by LPRINT or LLIST)
  116. can be routed directly to a printer.
  117.  
  118. The normal ZX Printer "p" channel is automatically (by an interrupt
  119. routine...) converted into the DISCiPLE/+D parallel printer output channel
  120. by typing POKE @11,0.  POKE @11,1 resets the "p" channel to the default
  121. again.
  122.  
  123. As said above, you have to redirect the output of the Interface 1 RS232.
  124. In the emulator, press F4, O, L, 1.  Like on the real spectrum with
  125. Interface 1, if you want to print to the Interface 1 RS232, you have to
  126. open the #3 channel.  In Spectrum Basic, type: OPEN #3,"b"  (or OPEN #3,"t"
  127. for basic listings).  Press SHIFT-ALT 4 for OPEN #.
  128.  
  129. In this way you can print anything as long as your spectrum program
  130. supports printing to the Interface 1 RS232 and your printer type, or to the
  131. ZX printer.  For example, it is perfecty possible to print a textfile on
  132. your printer with Tasword 3, or make a printout with Art Studio.
  133.  
  134.  
  135. ───────────────────────────────────────────────────────────────────
  136.  
  137. ad 3. How to build the tape interface.
  138.  
  139.  
  140. The diagram of the tape interface is in the program DIAGRAM.Z80. It is easy
  141. to build, and inexpensive, since only passive components are used.
  142.  
  143. If you do not want to build the interface yourself, you can order one for
  144. BP 14.50 with B G Services.  For the address, see the Registering section
  145. in the documentation file, or the REGISTER.DOC file.
  146.  
  147.  
  148. ───────────────────────────────────────────────────────────────────
  149.  
  150. ad 4. What to do if the Zandbergen joystick doesn't work correctly
  151.  
  152.  
  153. The Zandbergen joystick interface did not work at all in version 2.01.  It
  154. works properly in V3 again.  Sorry to have kept you waiting so long...
  155.  
  156. To a fully implemented pc-joystick port, two analogue joysticks can be
  157. attached (on one plug!).  A number of multi-io cards can handle only one
  158. analogue joystick.  However, the Zandbergen joystick needs a fully
  159. implemented joystick port. If only two directions (out of four) work, your
  160. joystick port is not usable.  Use an analogue pc-joystick instead.
  161.  
  162. The joystick port of a Sounblaster is fully implemented and ok to use.
  163.  
  164. If you have more than one joystick port in your pc, you have to disable
  165. one.
  166.  
  167.  
  168. ───────────────────────────────────────────────────────────────────
  169.  
  170. ad 5. How to contact the author.
  171.  
  172.  
  173. You can contact me by normal post:
  174.  
  175.  
  176. Postal address:
  177.  
  178.         Gerton Lunter
  179.         P.O. Box 2535
  180.         9704 CM  Groningen
  181.         The Netherlands.
  182.  
  183. If it is REALLY urgent you can Email:
  184.  
  185. z80help@bgserv.demon.co.uk
  186.  
  187. Any queries which require my help will be forwarded to me.
  188.  
  189. ───────────────────────────────────────────────────────────────────
  190.  
  191. ad 6. Manic Miner and Jetset Willy run too fast!
  192.  
  193.  
  194. True. Most of the time these games are either producing sound or executing
  195. an LDIR instruction to update the screen. Since this instruction can be
  196. emulated with a single REP MOVSB instruction of the 8086, emulation is
  197. suddenly very fast. Without sound, Manic Miner and Jetset Willy were two of
  198. very few games that were actually playable on a 8 MHz PC, and of course I
  199. don't want to slow down the emulator on slow machines!
  200.  
  201. If you turn the LDIR emulation switch on, the LDIR instruction will behave
  202. somewhat differently, important for well-protected programs. As a side
  203. effect, it will then also run at the right speed.
  204.  
  205.  
  206. ───────────────────────────────────────────────────────────────────
  207.  
  208. ad 7. How to save a .SCR snapshot to tape or .TAP file
  209.  
  210.  
  211. First make the appropriate choises in the tape menu, F7.  Then type SAVE
  212. "name" SCREEN$.  Press ENTER, and then press F10 in the one second gap
  213. between header and data block.  When saving to tape you can easily see it;
  214. when saving to disk, after pressing ENTER give the emulator a split second
  215. to save the header to disk before pressing F10.
  216.  
  217. Now load the .SCR snapshot into memory, and continue saving.
  218.  
  219.  
  220. ───────────────────────────────────────────────────────────────────
  221.  
  222. ad 8.  Printing problems with Tasword 128
  223.  
  224.  
  225. Tasword 128 does not print correctly via the "p" channel; at least, my
  226. version of Tasword 128 doesn't.  The problems can be circumvented easily by
  227. opening stream 3 for output to channel "b", i.e. OPEN #3,"b", instead of
  228. using channel "p".  A better solution is to remove the bug.  Load Tasword
  229. 128, turn on Microface 128 emulation, hit NMI (F5), choose T, then H for
  230. Hex, address 9DD3, and poke the values 01 FD 7F ED 79 32 5C 5B FB C9 into
  231. the respective addresses (pressing ENTER twice after each value); then Q
  232. and R.
  233.  
  234.  
  235. ───────────────────────────────────────────────────────────────────
  236.  
  237. ad 9.  What to do about an IN 0 crash?
  238.  
  239.  
  240. The Interface I often crashes if the 'Microdrive Data' port is accessed
  241. when the microdrive is not running.  Entering PRINT IN 0 in Basic will
  242. usually hang the Spectrum.  So, if a program reads from the 'Microdrive
  243. Data' port when it shouldn't, the emulator lets the user know that an
  244. ordinary Spectrum would have crashed at that point.
  245.  
  246. Some programs did indeed crash if an Interface I was attached; JetSet Willy
  247. is an example (just wait until it pauses, then press a key).  To use these
  248. programs, simply select the hardware mode 48K (or 128K) Spectrum without
  249. Interface 1.  In this mode the emulator won't bother about programs reading
  250. from port 0.
  251.  
  252.  
  253. ────────────────────────────────────────────────────────────────────
  254.  
  255. ad 10.  I have a .TAP file, but it doesn't work
  256.  
  257.  
  258. Could be different things.  The Warajevo emulator uses a tape file format
  259. different from Z80's, but uses files with the same .TAP extension.  Check
  260. this first.  Wavajevo comes with a utility to translate its .TAP format to
  261. Z80's.
  262.  
  263. Some programs need the R register emulation to be switched on.  Some
  264. programs will not load with an Interface 1 emulated.  Some programs are
  265. Spectrum 128K programs without saying so when loaded in an 48K machine.
  266. Switch to 128K mode (without Interface 1 to avoid troubles there) and try
  267. again.
  268.  
  269. Some programs use the standard format on tape, but use their own load
  270. routine.  Because Z80 traps the ROM and does not emulate the bips and
  271. clicks of the data, this will not work.  Convert the .TAP file to a .VOC
  272. file using TAP2VOC, and play this file back to the emulator.
  273.  
  274.  
  275.  
  276.