home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 106 / EnigmaAmiga106CD.iso / demo / eurochart38 / articles / klokkenermange < prev    next >
Text File  |  1979-12-31  |  16KB  |  525 lines

  1. »CL8:»SML:--------------------------------------
  2. »CL9:»BIG:How to overclock CyberVision64/3D
  3. »CL8:»SML:--------------------------------------
  4.  
  5. »CL4:            by Troda/Pegas
  6.  
  7. »CL0:The Cybervision64/3D (henceforth to be
  8. referred to as the CV3D in this
  9. article), is a Zorro II/III compatible
  10. video card which is based on the ViRGE
  11. chip which was designed for PCI
  12. applications. There was also a VLBUS
  13. version, which would be much faster
  14. when writing, however, unfortunately,
  15. it would only be suitable for Zorro
  16. III usage. Likewise, the earlier CV64
  17. was ZIII only as it used the VLBUS
  18. Trio64 chip. The CV64 also had an
  19. inbuilt monitor switcher which did not
  20. scandouble the native Amiga
  21. screenmodes, unlike the CV3D which had
  22. provision for an optional scandoubler,
  23. using the Amiga's video slot. Since
  24. the CV64 used the VLBUS-based Trio64
  25. chip, it is twice as fast when
  26. comparing writing speed into gfx
  27. memory when compared to the newer CV3D
  28. as there was no requirement for a PCI
  29. to ZorroIII bridge and it's consequent
  30. overheads. This is because the VLBUS
  31. is nearly the same as ZorroIII and is
  32. asynchronous, like Zorro III. PCI uses
  33. a synchronous design and as a result,
  34. the CV64 was the fastest Amiga Zorro
  35. graphics card available in regards to
  36. writing to video memory, however it
  37. lacks such features as PIP, 3D
  38. hardware rendering and scandoubler as
  39. is found on the CV3D. Note that the
  40. PicassoIV is also much faster that the
  41. »CL0:CV3D and it also contains a
  42. flickerfixer.
  43.  
  44. »PIC:Atomic.320x128»
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61. Although the CV3D was officially
  62. fitted with the ViRGE chip, there was
  63. a later version of the ViRGE chip,
  64. which may have found it's way into
  65. some of the later CV3D cards. This was
  66. the ViRGE DX chip, which will be
  67. examined in more detail later in this
  68. article. The information on the DX
  69. chip is currently incomplete since I
  70. am lacking some official information
  71. from Phase5. If anyone out there has a
  72. CV3D with a ViRGE DX chip, please
  73. contact me.
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81. »CL9:    Video Memory and overclocking
  82. »CL8:--------------------------------------
  83. »CL0:Overclocking the CV3D basically
  84. involves changing some environment
  85. variables since video memory clock
  86. speed is programmable. The main
  87. limiting factor here is your video
  88. memory speed. The CV3D is normally
  89. supplied with 70nS memory, which will
  90. allow a modest amount of overclocking.
  91. Much more can be obtained if the video
  92. memory on the CV3D is replaced with
  93. faster chips. I replaced my original
  94. 70nS chips with 25nS chips, however,
  95. 40 or 45nS chips are still more than
  96. fast enough because the ViRGE chip
  97. can't work reliably at the maximum
  98. speed appropriate to 25nS memory. In
  99. any case, just about anything that is
  100. faster than 70nS will be worthwhile.
  101. The chips you need are standard
  102. 512KBx4 video DRAMs, as used on pC
  103. video cards. These RAMs could be taken
  104. from a ViRGE-based video card, in
  105. which case you could be sure that they
  106. will work. EDO RAM should also be OK,
  107. although I did not test them. I don't
  108. expect any speed advantage from using
  109. EDO as the memory controller and
  110. interface in the card will need to be
  111. modified to gain the improvements, and
  112. these modifications would be out of
  113. the scope for this simple hack. The
  114. RAMs will need to be changed by an
  115. electronics technician, as they are
  116. surface mount and hard to remove
  117. without damaging the PCB. My memory
  118. chips were taken from an Eagle Power
  119. 3D card which contains a ViRGE DX
  120. chip. Note that all figures quoted in
  121. »CL0:this text will assume the memory has
  122. been replaced. Naturally, you won't be
  123. able to overclock as much if you are
  124. using the standard 70nS memory. Many
  125. people have reported diferent maximum
  126. clock speeds, but around 70MHz is the
  127. most you can expect with the standard
  128. 70nS RAMs, if you are lucky!
  129.  
  130.  
  131.  
  132.            »PIC:128x51»
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141. »CL9:    Overclocking with CyberGraphX
  142. »CL8:--------------------------------------
  143. »CL0:Memory clock speed is set by a
  144. tooltype in the CyberGraphX monitor
  145. (found in devs/monitors). Note there
  146. may be variations in this name
  147. depending on which version of
  148. CyberGraphX you are running. If you
  149. find that this doesn't work, because
  150. you are using an old CyberGraphX v3,
  151. then try to update it or contact me.
  152. All you have to do is either edit or
  153. add MEMCLOCK=77 to the tooltypes. If
  154. you have not changed your memory, the
  155. maximum value you can use will be
  156. about 70. The default value is 55. If
  157. you use too high a value, your screen
  158. will be corrupt the next time you
  159. boot. While you are editing the
  160. tooltypes, I suggest you also add
  161. »CL0:ADVANCEDCLK=YES as well. This will
  162. give you greater flexibility in
  163. editing your screenmodes later, and
  164. will help you get the most out of your
  165. overclocking. Once you have saved it,
  166. reboot. You will now find that
  167. blitting operations such as scrolling,
  168. filling, blit bitmap etc.. are now
  169. faster. You can also now edit your
  170. screenmodes for higher refresh rates
  171. to reduce flicker. For example, with
  172. MEMCLOCK=77, you will now be able to
  173. get 1024x768 24-bit noninterlaced at
  174. 69Hz without the "digital noise" which
  175. happens when anything is moving on the
  176. screen. This is because faster memory
  177. allows the internal DAC in the chip to
  178. work faster, providing higher
  179. resolutions. Finally, avoid the
  180. temptation to set the MEMCLOCK too
  181. high - you will get a severely corrupt
  182. screen, making it difficult to see for
  183. the purposes of correcting it! Go
  184. little by little, when corruption
  185. appears, back off a bit and test
  186. thoroughly, over a period of several
  187. hours. If you have gone too high (such
  188. as 99MHz!), and you can't correct the
  189. clock setting because of screen
  190. corruption or crashing, try booting
  191. without the Startup-sequence and type
  192. "LoadWB". This will allow you to boot
  193. your system using the standard Amiga
  194. display, and you can then edit the
  195. tooltype to a more sensible value.
  196. Note that there is little risk of
  197. damaging the card, as it is inactive
  198. at this time.
  199.  
  200.  
  201. »CL9:  Overclocking with P96 (Picasso 96)
  202. »CL8:--------------------------------------
  203. »CL0:As in CyberGraphX, you will need to
  204. add or change a couple of tooltypes.
  205. these are: MemoryClock=77 and
  206. OverClock=YES. At the moment, however,
  207. the maximum allowable value for
  208. MemoryClock is 75. Hopefully, Tobias,
  209. the author of P96 may be convinced to
  210. increase it in future. It is possible
  211. to change this maximum limit by using
  212. FileX (version 2.0b5, available from
  213. Aminet). Open the P96 file in
  214. Libs:Picasso96 S3VIRGE.chip and search
  215. for the hex equivalent of 75000000
  216. (047868c0). Replace this value with
  217. the new maximum limit you desire, eg:
  218. - 99000000 for 99MHz. That is 05e69ec0
  219. in hex. Disable String search option
  220. in the Filex 2.0 Search/Replace
  221. requester before you start editing. If
  222. you are using an OLD version of p96,
  223. replace only the first value. Save and
  224. reboot. Now you will be able to set
  225. your MemoryClock up to a maximum of
  226. 99. Don't forget, as in the
  227. CyberGraphx case, if you haven't
  228. changed your RAM, the maximum
  229. allowable will only be about 70Mhz.
  230. You may find that using P96 you will
  231. end with a slightly lower clock
  232. (1-2MHz) than CyberGraphX. This is
  233. because P96 uses a chip function
  234. called "occlusion" which prevents
  235. visual overdrawing windows and menus
  236. by PIP window. (when these are
  237. correctly opened through the P96 API)
  238.  
  239.  
  240.  
  241. »CL9:               Testing
  242. »CL8:--------------------------------------
  243. »CL0:Once you have selected the values that
  244. you like, and your system has been
  245. working OK for several hours, select a
  246. screenmode that uses the highest
  247. possible bandwidth (the highest pixel
  248. clock setting), and open a PIP window
  249. on it. Drag it around. Try resizing
  250. it, making it alternately small and
  251. large, narrow and wide. There should
  252. be no corruption on the screen during
  253. these movements. If there is you will
  254. need to back off a bit on your new
  255. pixelclock settings. A good example of
  256. a PIP screen is Megademo/Artwork (best
  257. to adjust the window for the smallest
  258. possible width and the biggest
  259. possible height - this will ensure the
  260. most rigorous conditions for this test).
  261.  
  262.  
  263.  
  264.  »PIC:GreenEye96x105»   »CL1:           David Myers hint:
  265. »CL0:               Another test (for
  266.                CyberGraphX users), if
  267.                you have set up your WB
  268.                with opaque move (from
  269.                MCP), you can open up
  270.                the test pattern in the
  271.                CGraphX mode program
  272.                (in prefs) and drag
  273.                around the settings
  274.                requester. You can do
  275.                it for each screenmode
  276.                you are setting up.
  277.  
  278.  
  279.  
  280.  
  281. »CL9:            ViRGE DX Chip
  282. »CL8:--------------------------------------
  283. »CL0:A further improvement can be obtained
  284. by also replacing the ViRGE chip to
  285. the later DX version. I tried this and
  286. ran into a few problems. 8-bit
  287. screenmodes were corrupt (see attached
  288. picture). There were also problems
  289. with displaying PIP images, though my
  290. PIP tests were also using 8-bit
  291. background screenmodes. I think that
  292. these problems are possibly caused by
  293. differences in the way the DX chip
  294. reads/stores palette information,
  295. since the first 16 colours are OK,
  296. then the next 16 are trashed, then the
  297. 16 after that are OK, and so on....
  298. Tobias Abt (the author of P96) has
  299. said that if he can get hold of a card
  300. with a DX chip, he will be able to
  301. update P96 to support it. People who
  302. have CV3D cards with DX chips fitted
  303. by Phase5 report that there are no
  304. problems with 8-bit screenmodes,
  305. although they have found that PIP does
  306. not work at all. It seems that there
  307. are some differences with the boards.
  308. If you have one, I would like to find
  309. out what they are.
  310.  
  311. The DX chip (I had it tested and
  312. working in the CV3D) promises to
  313. provide much faster 3D rendering. In
  314. addition, there is a 30% speedup at
  315. any given clock speed compared to the
  316. older ViRGE chip and finally, it is
  317. possible to clock the DX chip at
  318. higher frequencies - such as 99MHz.
  319. For example, at 99MHz, using an 8-bit
  320. 800x600 screen at 100Hz, I was able to
  321. »CL0:scroll it at up to 252fps! (that is
  322. normal PicassoIV speed, BTW) But at              »PIC:EC38.160x145»
  323. 99MHz are there some small gfx errors
  324. - chip can't handle that clock
  325. realiably. However, backing off a
  326. little to 92Mhz provides correct
  327. operation, and is still much faster
  328. than 77Mhz, which I am using now.
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361. »CL9:Benchmarks
  362. »CL8:-------------------------------------------------------------------------------
  363. »CL4:p96speed 1.2, a1200 Micronik Z2, CV3D
  364. 800x600x8bit 100Hz refresh memory clock 77Mhz
  365.  
  366. »CL6:                               cgx 4.1 p96 1.44b4      cgx 4.1 p96 1.44b4
  367.                                55 MHz      55 Mhz      77 Mhz      77 Mhz
  368.  
  369. »CL5:RectFill()................ »CL6:  1760 op/s»CL5:   1640 op/s»CL6:   2396 op/s»CL5:   2868 op/s
  370. »CL5:RectFill() Pattern........»CL6:    283 op/s»CL5:   1606 op/s»CL6:    273 op/s»CL5:   2765 op/s
  371. »CL5:WritePixel()..............»CL6: 250293 op/s»CL5: 118549 op/s»CL6: 244927 op/s»CL5: 118879 op/s
  372. »CL5:WriteChunkyPixels().......»CL6:    168 op/s»CL5:    207 op/s»CL6:    168 op/s»CL5:    207 op/s
  373. »CL5:WritePixelArray8()........»CL6:    205 op/s»CL5:    206 op/s»CL6:    204 op/s»CL5:    206 op/s
  374. »CL5:WritePixelLine8().........»CL6:  12317 op/s»CL5:  11678 op/s»CL6:  10916 op/s»CL5:  11743 op/s
  375. »CL5:DrawEllipse().............»CL6:   5340 op/s»CL5:   5170 op/s»CL6:   5145 op/s»CL5:   5190 op/s
  376. »CL5:DrawCircle()..............»CL6:   5567 op/s»CL5:   5423 op/s»CL6:   5173 op/s»CL5:   5517 op/s
  377. »CL5:Draw()....................»CL6:   8036 op/s»CL5:   9178 op/s»CL6:   8385 op/s»CL5:  10984 op/s
  378. »CL5:Draw() Hor/Ver............»CL6:   9953 op/s»CL5:  15156 op/s»CL6:   8718 op/s»CL5:  17013 op/s
  379. »CL5:ScrollRaster() X..........»CL6:    112 op/s»CL5:    102 op/s»CL6:    175 op/s»CL5:    182 op/s
  380. »CL5:ScrollRaster() Y..........»CL6:    110 op/s»CL5:     99 op/s»CL6:    172 op/s»CL5:    180 op/s
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401. »CL5:PutText()................. »CL6:  4789 op/s»CL5:   5265 op/s»CL6:   4194 op/s»CL5:   5278 op/s
  402. »CL5:BlitBitMap().............. »CL6:  4740 op/s»CL5:   5523 op/s»CL6:   4945 op/s»CL5:   7460 op/s
  403. »CL5:BlitBitMapRastPort()...... »CL6:  4192 op/s»CL5:   4843 op/s»CL6:   4089 op/s»CL5:   6205 op/s
  404. »CL5:BitMapScale()............. »CL6:    29 op/s»CL5:     46 op/s»CL6:     30 op/s»CL5:     47 op/s
  405. »CL5:OpenWindow().............. »CL6:    92 op/s»CL5:    116 op/s»CL6:     88 op/s»CL5:    118 op/s
  406. »CL5:MoveWindow().............. »CL6:   518 op/s»CL5:    477 op/s»CL6:    545 op/s»CL5:    529 op/s
  407. »CL5:SizeWindow().............. »CL6:   133 op/s»CL5:    169 op/s»CL6:    127 op/s»CL5:    154 op/s
  408. »CL5:CON-Output................ »CL6:   154 op/s»CL5:    160 op/s»CL6:    213 op/s»CL5:    248 op/s
  409. »CL5:ScreenToFront()........... »CL6:    50 op/s»CL5:     60 op/s»CL6:     50 op/s»CL5:     60 op/s
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442. »CL0:Note that blitter routines (important
  443. for scrolling) are sped up by 1.8x. At
  444. 99MHz, using a DX chip, the speed up
  445. is 2.5x. Amazing, eh? Also note that
  446. blitter operations are faster using
  447. P96 ie: BitMapBlit etc... Of course,
  448. things that rely on Zorro bus speed,
  449. such as writing tests are not affected
  450. by memory clock. Tests shown here are
  451. with Zorro II. Dropping refresh down
  452. to 75Hz should provide a further
  453. increase in speed, however, I prefer
  454. 100Hz. Keep that in mind if you get
  455. faster results than me, the you are
  456. using a lower refresh rate. Note that
  457. I am using 100Hz refresh for all my
  458. RTG software settings.
  459.  
  460.  
  461. »CL9:          What RTG software?
  462. »CL8:--------------------------------------
  463. »CL0:I had been using CGX for many years,
  464. and I decided to try P96, as I was
  465. unhappy with the bugs I had in CGX. I
  466. was amazed with the results.
  467. Everything seems to be about twice as
  468. fast! Booting is faster, menus are
  469. much faster (for example in CeD they
  470. are about 10x faster). Moving windows
  471. is faster. WB backdrops are textured
  472. much faster, scrolling... etc. This
  473. appears to be because P96 makes
  474. extensive use of the blitter whereas
  475. CGX uses fast-RAM for the parts of the
  476. screen that are under windows. This is
  477. of great value in a ZII machine like
  478. mine because access to the blitter is
  479. far faster compared to going through
  480. the ZII bus to get to fast RAM. I
  481. suspect using the blitter in this case
  482. is almost 30x faster. Using the
  483. onboard blitter would still be faster
  484. when using ZIII. This is still true in
  485. the case of cards using faster custom
  486. buses such as the Phase5 CVPPC and
  487. Bvision. In this case, using the
  488. blitter in the Permedia2 chip should
  489. be about 10x faster than accessing
  490. Fast RAM. Other advantages I found
  491. using P96 are: - no more PIP
  492. overwriting menus, windows etc. - P96
  493. uses the occlusion feature of ViRGE
  494. here. Graphics bugs I had before
  495. (centering and cleaning hi/tru color
  496. screens) are also not evident in P96.
  497. P96 can open 24bit screens, CGX only
  498. 32bit (+alpha). There virtually is no
  499. difference, but ViRGE can do texturing
  500. only in 24bit, not in 32 bit, so when
  501. Warp3D adds support for that,
  502. then...!! =) (15bit & dither sucks!)
  503. Also many programs need 24bit (R8G8B8)
  504. instead of 32bit (ARGB) mode... (at
  505. least some betas... and mostly from
  506. PicassoIV owners) It is also possible
  507. to create a 160*120 pixel screen with
  508. P96, unlike CGX, which won't allow you
  509. to set a low enough pixel clock to to
  510. avoid having your vertical refresh
  511. over 120Hz 9or simply over what your
  512. monitor can handle =). Also P96 will
  513. have in future the possibility of
  514. opening an 8bit PIP on CV3D, as
  515. promised by the author. You can see
  516. the comparisons in the benchmarks
  517. above, so I think P96 is very much
  518. worth a try, if you have a supported
  519. GFX card like PicassoIV, PicassoII,
  520. CV3D, CV64 or Retina or... =)
  521. Unfortunately, there is currently no
  522. support for the CVPPC and the BVision.
  523.  
  524. For more information, contact me at:
  525. »CL4:Pavel Narozny, troda@cbnet.cz