home *** CD-ROM | disk | FTP | other *** search
/ Amiga Elysian Archive / AmigaElysianArchive.iso / emulate / turbo208.lzh / 2088mod.txt next >
Text File  |  1991-06-17  |  10KB  |  200 lines

  1.                  SPEEDING UP THE A2088 BRIDGEBOARD
  2.                             by Eddy Olk
  3.                   email: eddy@duteca.et.tudelft.nl
  4.  
  5.  
  6. ABSTRACT
  7. The A2088 bridgeboard is IBM XT compatible, especially with respect to speed
  8. unfortunately. So any speedup is welcome. Those with unlimited supply of
  9. money will go for a turbo AT bridgeboard of course. But for us cheapies with
  10. a plain A2088 there is some hope! This text describes how the A2088 bridgeboard
  11. can be (easily) run at 7.15 MHz or even 9.54 MHz with minor modifications.
  12. However, you must have a bridgeboard with the Faraday FE2010A (watch the A!)
  13. chip. If I'm not mistaken the newer A2088s are equipped with this chip.
  14.  
  15.  
  16. DISCLAIMER
  17. Of course: I can't guarantee the proper working of any of the modifications
  18. described in this file nor can I be held responsible for any related damage.
  19. I've done my best to describe the necessary speedup modifications (for a
  20. rev 3 board) as detailed and understandable as possible.
  21. I do advise however you only apply the modifications when you know what you're
  22. doing and have some experience with electronics. Don't risk ruining your
  23. bridgeboard, 4.77 MHz is still better than 0 MHz :-).
  24.  
  25.  
  26. TECHNICAL INFO
  27. The FE2010(A) is a multi-function chip in a 68-pin PLCC package and is almost a
  28. complete PC on a single chip. Among other things, it incorporates the 8237 (DMA
  29. controller), 8253 (timer/counter), 8254 (clock oscillator), 8255 (PIO) and 8259
  30. (PIC) ICs used in the IBM XT.
  31. The FE2010 chip (without the A) can only run a 8088 at 4.77 MHz. However, the
  32. FE2010A, a pin-compatible enhanced version of the FE2010, allows either a V20
  33. or 8088 to run at clock speeds of 4.77 and 7.15 MHz when using a 14.31818 MHz
  34. crystal/oscillator or at 4.77, 7.15 and 9.54 MHz when using a 28.63636 MHz
  35. crystal/oscillator. This input frequency is indicated by pin 16 (not used on
  36. FE2010). This pin must be pulled up with a 4K7 resistor to +5V when supplying
  37. 14.31818 MHz and must be tied to 0V when using a frequency of 28.63636 MHz.
  38.  
  39. The FE2010A has an extended configuration control register to allow switching
  40. between CPU clock speeds. This (write only) register is located at I/O address
  41. 063H. The functions of the data bits of this register are summarized in Table 1.
  42.  
  43.           data bit | function
  44.           ---------+----------
  45.               0    | disable parity
  46.               1    | 8087 present (enable 8087 NMI)
  47.               2    | 256K RAM (1 bank)
  48.               3    | lock register (bits 0-4)
  49.               4    | 512K RAM size (2 banks)
  50.               5    | fast mode (0=semi-fast, 1=fast)
  51.               6    | 7.15 MHz clock
  52.               7    | 9.54 MHz clock
  53.  
  54.      Table 1: Function of data bits of configuration register.
  55.  
  56.  
  57. SOFTWARE
  58. Since the FE2010A always clocks the CPU at 4.77 MHz after a reset and the BIOS
  59. doesn't support the faster execution modes of the FE2010A, we have to fiddle
  60. with the configuration register (see technical info) ourselves to run at the
  61. higher speeds. I've written two programs: BIOSEXT.COM and CPUCLK.COM
  62. BIOSEXT.COM is stay-resident and extends the BIOS and allows you switching the
  63. clock speed from the keyboard by pressing the following keys simultaneously:
  64.  
  65.           <ctrl>-<alt>-S for 4.77 MHz
  66.           <ctrl>-<alt>-M for 7.15 MHz
  67.           <ctrl>-<alt>-F for 9.54 MHz
  68.  
  69. With CPUCLK.COM you can change the cpu clock speed under program control, most
  70. likely in a batch file.
  71. You must give a digit as argument: 0 for 4.77, 1 for 7.15 or 2 for 9.54 MHz.
  72. Put both programs in your AUTOEXEC.BAT, e.g.:
  73.  
  74.         biosext
  75.         rem install bios extension
  76.         cpuclk 2
  77.         rem switch to 9.54 MHz
  78.  
  79. I've included both sources and executables of the programs.
  80.  
  81.  
  82. YOU HAVE A FE2010 NOT A FE2010A
  83. If you've sadly discovered you have the old FE2010 and not the enhanced FE2010A
  84. (BTW the chip is near the CPU, see the photographs in the introduction section
  85. and Appendix F of your A2088 user's guide) you have three options:
  86.  
  87. 1. do nothing: least trouble, least satisfaction :-).
  88. 2. not replace the FE2010 but still get a speedup by replacing the 14.31818 MHz
  89.    crystal with a faster one, e.g. 22 or 24 MHz. This is essentially what the
  90.    German firm X-Pert offers (even for bridgeboards with a FE2010A!). This
  91.    has some drawbacks, e.g. the faster running timers (SI still reports
  92.    index of 1.0!). Also when using the floppy drive, you must switch back
  93.    to 4.77 MHz since the floppy interface will not work reliable at the higher
  94.    speed. So what you need here is two oscillators, 14.31818 and 22-24 MHz,
  95.    and a multiplexer controlled by a switch and/or the MOTORON signal of the
  96.    floppy. If you want to build this, you will find instructions and a
  97.    schematic in the German AMIGA (Markt & Technik) sonderheft 13, entitled
  98.    "Tips & Tools". I can't help you further here, but there is a last option!
  99. 3. replace the FE2010 with a FE2010A and go for the (easy) 7.15 MHz or
  100.    (slightly harder) 9.54 MHz modification. You can also use a V20 now.
  101.    The main problem here will be to obtain the FE2010A. Unfortunately, I can't
  102.    help you much here. Try a store specialized in electronic components for
  103.    PCs. If it helps: the chip is manufactured by Faraday.
  104.    When you have somehow acquired a FE2010A, you have to make some
  105.    modifications to your A2088 before replacing the FE2010. The FE2010A is pin
  106.    compatible with the FE2010 but some internal pull-up resistors present in
  107.    the FE2010 were left out in the FE2010A. This affects pins 12,13 and 16.
  108.    Pin 12 and 13 are connected to J1, the default display jumper. For proper
  109.    operation you have to pull-up pins 1 and 2 of J1 (see Appendix H of the
  110.    A2088 user's guide) with a 4K7 resistor to +5V. However, I didn't encounter
  111.    problems using the FE2010A without the pull-up resistors.
  112.    Pin 16 indicates the input frequency of the FE2010A: 14.31818 (pull-up with
  113.    4K7 to +5V) or 28.63636 MHz (tie to 0V).
  114.  
  115.  
  116. RUNNING A2088 AT 7.15 MHZ
  117. This is simple! You must:
  118. 1. Replace the 5MHz 8088 with a 8MHz 8088 or V20. You may even want to try
  119.    running the original 8088 at 7.15 MHz, this will most likely work although
  120.    I haven't tried this.
  121. 2. Run the CPUCLK.COM program on your bridgeboard with option 1 to set the cpu
  122.    clock to 7.15 MHz.
  123.  
  124.  
  125. MODIFY A2088 TO RUN AT 9.54 MHZ
  126. Here's where a soldering-iron comes in handy! The following steps are needed:
  127. 1. desolder the 14.31818 MHz crystal near the bracket.
  128. 2. replace it with a 28.63636 MHz crystal (not sure this will work) or use a
  129.    28.63636 MHz oscillator. Connect pins 1 and 7 of the oscillator with 0V,
  130.    pin 14 with +5V and pin 8 to the lower contact hole (the one nearest to the
  131.    edge connector) of the (now desoldered) 14.31818 MHz crystal.
  132.    Also put a 100nF decoupling capacitor between pins 7 and 14.
  133. 3. tie pin 16 of FE2010A to 0V.
  134.    Figure 1 shows the contacts              (top)
  135.    of the FE2010A socket seen            ooooooooooo
  136.    from the back of the                 ooooooooooooo
  137.    bridgeboard. Pin 16 is               oo         oo
  138.    marked with an asterisk (*).         oo         oo
  139.    Check with an ohmmeter if            oo         oo
  140.    you're not sure!                     oo         oo
  141.                                         oo         oo
  142.                                         oo         oo
  143.    Figure 1: FE2010A socket seen        oo         oo
  144.              from backside, pin 16      oo         oo
  145.              marked with *.             oo         oo
  146.                                         ooooooooooooo
  147.                                          oooooooo*oo
  148.                                            (bottom)
  149.  
  150. 4. replace the original 8088 with a 10 MHz 8088 or (better) V20, a 8 MHz V20
  151.    will work too (and may be cheaper). Before inserting the new 8088/V20 you
  152.    must bend pin 19 (clock input) a little bit outwards so it will not stick
  153.    in the socket. Do the same with the 8087, if you have one.
  154. 5. connect pin 19 of the 8088/V20 (and pin 19 of the 8087, if present) to
  155.    pin 15 of U8 (74LS244). This pin carries the unbuffered cpu clock signal
  156.    from the FE2010A (also pin 19) and must be used instead of the buffered
  157.    clock signal connected originally to let it all work at 9.54 MHz.
  158.    U8 is the lower-right one of the four 20-pin ICs below the 8088/V20.
  159. 6. run the CPUCLK.COM program with options 0,1,2 to run the bridgeboard at
  160.    4.77, 7.15 and 9.54 MHz respectively.
  161.  
  162.  
  163. PROBLEMS
  164. Well, you didn't expect it to be perfect did you? But relax, the problems I
  165. encountered using my 'upgraded' bridgeboard are not severe.
  166. The two problems I've run into are:
  167. 1. The floppy interface only works reliable at 4.77 MHz. Most of the time
  168.    it works at other speeds but it occasionally fails. However, DOS doesn't
  169.    report this but zoo, for instance, sometimes gives CRC errors when
  170.    unzooing from floppy. I don't know whether this is a hardware or a
  171.    software problem. I do remember some (earlier) turbo pc clones having
  172.    this problem too. Be sure to switch to 4.77 MHz when using the floppy!
  173. 2. When using a PC display window on the amiga side, characters are
  174.    occasionally wrongly displayed (mostly as a space) on the screen. This
  175.    is probably a problem with the communication between the amiga and the
  176.    PC and is a lot more noticeable at 7.15 MHz than at 9.54 MHz where I can
  177.    work for weeks on the monochrome display without seeing a single wrongly
  178.    displayed character. Of course, when using a video card, e.g. a VGA card,
  179.    there is no problem.
  180.  
  181. Furthermore, I'm not sure a 8 or 10 MHz 8087 will work in the faster
  182. bridgeboard. I don't expect problems however, but perhaps someone could verify
  183. this! BTW make sure the 8087 clock (pin 19) is provided with the unbuffered
  184. clock signal, i.e. connect it to pin 19 of 8088/V20.
  185.  
  186.  
  187. CONCLUSION
  188. Well, I think the modifications described in this file are pretty neat. (That's
  189. why I call them modifications, not hacks!) I've my fully equipped A2088 (VGA
  190. card, hardcard, multi I/O card, 512K 150ns RAM, 128K 120ns dual-port RAM and
  191. 8 MHz V20) running at 9.54 MHz for over 5 months now and besides the problem
  192. with the floppy, it runs perfectly. Perhaps someone (I don't have time
  193. unfortunately) is willing to extend the BIOSEXT.COM program to automatically
  194. (temporary) switch back to 4.77 MHz when accessing the floppy.
  195.  
  196. If you have any questions/remarks regarding the modifications I described, you
  197. can reach me via email: eddy@duteca.et.tudelft.nl
  198. Enjoy!!
  199.  
  200.