home *** CD-ROM | disk | FTP | other *** search
/ ftp.uni-stuttgart.de/pub/systems/acorn/ / Acorn.tar / Acorn / riscos / problems / benchmark / armsi346.spk / !ArmSI / !Help < prev    next >
Text File  |  1993-09-10  |  13KB  |  287 lines

  1. | > !Help
  2. |
  3. | Title         ArmSI application - Speed Indexer for Acorn RISC machines
  4. | Authors       J.Abbott & Nick Smith
  5. | Version       3.46H (07-Sep-93)
  6. | Status        Public Domain, no distribution restrictions
  7.  
  8. Welcome to the all-new !ArmSI application - it was developed from !SI
  9. v3.12 (written by 'J.Abbott') by Nick Smith to give a range of
  10. interesting machine speed indexes for Acorn RISC machines.
  11.  
  12. Versions postfixed by H (for Hack 8-) are modified by Nick Smith because
  13. !SI 3.12 was pretty poorly written I felt, and needed some work done
  14. in a few places (user interface, RAM speed checks, etc) Once I started
  15. on fixing the bugs, I began to think of lots of things to add to the
  16. program ...
  17.  
  18. Thanks go to Owen Smith for ideas, some tech information & helping test
  19. out some of the stranger hardware configurations. Thanks also to some
  20. wonderful beta-testers; Paul Fidler & Holger Klingspohr.
  21.  
  22. I would be most interested in talking to Mr Abbott about !SI, but he
  23. didn't bother to put his address in the original documentation - so I
  24. have no way of getting in contact with him !
  25.  
  26. Note that to run the Dhrystones/Flops20 test you need ;
  27.   - Version of the SharedCLibrary v3.75 or greater
  28.   - The disc with !ArmSI in the drive (because it is a separate command)
  29.  
  30. Note that to run any FP computations you need ;
  31.   - Some version of the FPEmulator loaded
  32.  
  33. If you load some old SI file into !ArmSI, then many of the fields in
  34. the main window will not be available because that information wasn't
  35. saved by !SI. Also, if you load some SI/ArmSI file from another 
  36. machine, then remember to use 'Re-calculate' before playing around
  37. with any improvements. Versions later than 3.43 have an Acorn-allocated
  38. filetype of &3f2, and so to load old (&003) files, you have to drag
  39. the files to a loaded copy of !ArmSI.
  40.  
  41. Some example SI files are including for your interest - ranging from
  42. the lowest 1MB A310 (5900 Dhrystones) all the way up to my 'turbo'
  43. A5000 (over 25000 Dhrystones 8-) ... Note my A5000 can run at 16.6MHz
  44. RAM (*big* speed increase) by using a 4MB upgrade card of 60ns DRAM
  45. from SimTec electronics.
  46.  
  47. Users of old !SI may notice that the option to turn DRAM refresh on
  48. or off has gone. In fact turning off DRAM is extremely dangerous -
  49. and on some types of system/RAM chips can completely corrupt your
  50. memory. So I decided to take the safe path, and remove all the code
  51. which turns DRAM refresh on or off - keep it set to the RISC OS
  52. default - you know it makes sense !
  53.  
  54. *** Known bugs
  55.  
  56. If you can help me track these down (or even give me reproducable
  57. circumstances) then I would be most grateful.
  58.  
  59.   - Sometimes the FPEmulator doesn't like being RMFaster'd, although
  60.     I cannot duplicate the problem on my machine.
  61.   - Sometimes stupid FP results are given - again I can't reproduce
  62.     the problem ... So if you see an EXP of 0.72 and a SIN of 11.12
  63.     then it is probably messed up !
  64.  
  65. *** Contacts
  66.  
  67. Please send me any bugreports, comments, ideas for new features, etc.
  68. I can be contacted at the following address, at least until Jul '94 ;
  69.  
  70. Nick Smith
  71. Churchill College
  72. Cambridge
  73. CB3 0DS                 nas20@cus.cam.ac.uk (JANET/Internet email)
  74.  
  75. *** Distribution
  76.  
  77. This software is 'Public Domain'. You may copy and distribute it
  78. without restriction - include it on magazine discs, with commercial
  79. products (eg, ARM3/FPA upgrades), etc, etc. If you do include it with
  80. commercial hardware, I'd really like to know about it too.
  81.  
  82. *** Revision history
  83.  
  84. Modifications to v3.20H (05-Nov-92)
  85.   - Removed all line number references in BASIC code (first job in any
  86.     BASIC hack!)
  87.   - Made iconbar menu appear in correct place!
  88.   - Misc mods to templates
  89.   - Did new code to read RAM speed - old stuff was rubbish I think (at
  90.     least it never returned anything useful for >8MHz memory)
  91.   - Possibly removed RO2.xx compatibility - oh well 8-)
  92.   - Changed ROM speed reading code based on speed of memory speed (ie, 
  93.     memory system clock)
  94.  
  95. Modifications to v3.21H (07-Nov-92)
  96.   - Restructured application - moved Templates & Code to a 'Resources'
  97.     directory.
  98.   - Added 'Dhrystone' benchmark to application - uses standard Dhrystone
  99.     version 2.1 (May 25, 1988) with no optimisations
  100.     Full source is included, as is a Makefile for recompilation with
  101.     different settings
  102.   - Generally did lots of code tidying & documentation
  103.   - Re-did main 'System Information' window, renumbering icons as I went
  104.     to tidy up redraw (argh - icons should be numbered from 0 at top -> )
  105.   - Added 'Available ROM' (shows 5th column ROM info too)
  106.   - Added display of ROM speed (2,3,4 ticks, or Page mode access)
  107.   - Added 'IOEB chip set information'
  108.   - Added FPA coprocessor recognition
  109.   - Added 'Additional details:' section ;
  110.         RISC OS version
  111.         Video screen mode, resolution, colours & refresh rate
  112.         Unique machine ID reading
  113.         Floating point identification (Old FPE, New FPE, FPPC, FPA chip)
  114.         Dhrystone results (microseconds/loop, dhrystones/sec)
  115.   - Did all this silly documentation (!)
  116.   - Now wasn't all this more useful than going to a 'Use of the IBM 3084
  117.     mainframe' lecture ?? 8-)
  118.  
  119. Modifications to v3.22H (08-Nov-92)
  120.   - Generally wrote the support code for all the above features which
  121.     didn't get done yesterday ...
  122.   - Integrated the Dhrystone index into the application (or at least it
  123.     gets run by the main application)
  124.   - Added recognition of FPPC (Old Acorn FP card)
  125.   - Renumbered some more icons to fix icon delete/recreate problems
  126.   - Added snazzy 'machine identification' code which guesses your
  127.     machine type
  128.   - Recalibrated ARM instruction indexes based on 1.000 being an old
  129.     1MB A310 (MEMC1, 8MHz ARM2), rather than the previous 'perfect' ARM2
  130.     whatever that might have been !
  131.  
  132. Modifications to v3.23H (09-Nov-92)
  133.   - Fixed so that prompts for disc with Dhrystone command to be 
  134.     inserted (*before* video DMA turned off!)
  135.   - Reduced no. of Dhrystone loops so not so slow on ARM2
  136.   - Recalibrates old SI files when loaded so that 1.00 = 310, 8MHz ARM2
  137.   - Removed all the 'MOVNV R0,R0' instructions in app, now MOV R0, R0
  138.   - Added ARM250 processor recognition (for A3010/3020/4000/etc)
  139.   - Reads MEMC type from zero page in SVC mode (in case users/OS have
  140.     zero page protected)
  141.   - Open main window on a load operation of SI file
  142.   - Improved error messages & error handling (what sort of idiot defines
  143.     an error block of 64 bytes ?? sigh)
  144.   - Closes menu on saving via key press/mouse click
  145.   - Extended window widths to allow for the higher speeds that I am
  146.     getting ... Almost certainly not enough for the FPA when it arrives!
  147.  
  148. Modifications to v3.24H (10-Nov-92)
  149.   - Renamed to !ArmSI because I felt it was a more identifiable name,
  150.     and it also distinguishes the program from the original !SI app.
  151.   - Identifies ARM2as/ARM61 processors (cannot tell the difference)
  152.   - Identifies ARM600/610 or ARM600 processors
  153.   - Changed ROM speed terminology - should be 'n-cycles'
  154.   - Sent out to a few people for a little bit of testing ...
  155.   - New Sprites, and a !Sprites22 file.
  156.   - Now identifies A500 (A310 protoype), with a VIDC1 chip
  157.  
  158. Modifications to v3.25H (11-Nov-92)
  159.   - Improved !Sprites22, but they still aren't very good !
  160.   - Added some more improvements ;
  161.         *RMFaster BASIC on/off
  162.         *RMFaster FPEmulator on/off
  163.         ARM3 cache on/off
  164.     Yes - you can *RMFaster BASIC in the middle of a BASIC program
  165.     (well I was impressed!) Note that the FPEmulator can only be
  166.     RMFaster'd if you have it in ROM (RO3.xx owners)
  167.   - Made sure that all zero page reads are done from SVC mode
  168.   - Because of the new facilities, 3.25 cannot read the SI files
  169.     created with 3.20->3.24 (although it can read 1.xx, 2.xx and
  170.     pre 3.20), because it seemed too much effort - there hasn't
  171.     been a public release yet, and there is a new file format every
  172.     day !
  173.   - ADJUST-click on icon bar open FP info window
  174.  
  175. Modifications to v3.26H (13-Nov-92)
  176.   - Now shouldn't moan on startup if you have no FPEmulator module
  177.     present.
  178.   - Strange problem with DRAM refresh changing at random points -
  179.     think it fixed now. Probably due to Mr.Abbott's enthusiastic
  180.     use of real variables when he should have been using integers!
  181.   - A500 test had to be changed. Looks like the OS frigs the RTC
  182.     calls 8-( So now uses the keyboard ID, instead of the RTC
  183.     precision.
  184.   - Memory bandwidth/Video bandwidth/etc calculations should now
  185.     be more accurate. The memory bandwidth is based on 1 n-cycle +
  186.     3 s-cycle RAM access, and so will actually give lower results
  187.     than previous versions.
  188.     The video/dram refresh calculations now take into account the
  189.     refresh rate of the screen (!) and also use the better memory
  190.     bandwidth value.
  191.   - Slightly more accurate video refresh code, but it looks like I
  192.     am underestimating both refresh rate & video bandwidth values
  193.     slightly ...
  194.   - Far too much debugging to get the code to work on a 1MB, RO2,
  195.     MEMC1, ARM2 A310 8-(
  196.  
  197. Modifications to v3.27H (16-Nov-92)
  198.   - Now reads total RAM size sensibly (uses OS_ReadMemMapInfo)
  199.     to correctly identify >4MB
  200.   - Moved all the Bxx% variables (for bar icon nos) into an array
  201.   - Lots of code documentation, tidying up & LOCAL variables ...
  202.     If you think the code is messy now, you should have seen 3.12 !
  203.   - Now echoes unrecognized key presses with Wimp_ProcessKey
  204.   - Paged mode access ROMs option is always greyed out under OS3
  205.  
  206. Modifications to v3.30H (18-Nov-92)
  207.   - Better ARM610 identification (processor type=&61)
  208.   - Complete removal of DRAM refresh code (serious side effects can
  209.     occur) Still reports the DRAM refresh status, but doesn't let
  210.     you change it.
  211.   - Replaced the DRAM refresh menu option with one for Video DMA,
  212.     so that during tests you can either have the video DMA turned off
  213.     or on. Old versions always turned off Video/Sound DMA for max
  214.     speed ratings !
  215.   - RAM size now displays page size, and number of pages. (eg, ARM600
  216.     has 4K pages, while old MEMC1/1a machines will have 8, 16 or
  217.     32K pages)
  218.   - Final beta-release before the public release.
  219.  
  220. Modifications to v3.31H (21-Nov-92) [release]
  221.   - Some final small changes for the first public release (wow!) ;
  222.   - ID's PCATS graphics enhancer card
  223.   - Clicks to open windows opens them at top of window stack
  224.   - Compiled a nice collection of SI files from different machines
  225.   - Fixed 5th Column ROM reading code (thanks to Owen making me my
  226.     own custom 5th column ROM!)
  227.   - Increased the number of Dhrystone loops performed from 50,000
  228.     to 75,000 - my A5000 at top speed goes too fast for 50,000 to
  229.     have accurate results !! 8-)
  230.   - Public release #1 to Newcastle info-server & comp.binaries.acorn
  231.  
  232. Modifications to v3.32H (05-Jul-93)
  233.   - Fixed bug to do with recognizing FPA chip software support
  234.   - New 3D version of templates (you need to set the 3D-bit of CMOS
  235.     RAM to switch this on).
  236.   - Changed "RMFaster BASIC" etc string to "RAM-loaded BASIC" to
  237.     make more sense to the user
  238.  
  239. Modifications to v3.33H (06-Jul-93) [release]
  240.   - Some new examples files (A540 with FPA chip)
  241.   - New FP-index/FLOP calculations biased towards common operations
  242.     I am still unhappy with the FP indexing code, but it will do for
  243.     now
  244.   - Sent filetype request to Acorn Customer Support
  245.  
  246. Modifications to v3.40H (27-Jul-93)
  247.   - Removed 'BASIC' & 'Machine code' indexes; they were useless
  248.   - Added excellent 'flops20' FP-benchmarking code
  249.     Source code & docs provided
  250.     Outputs to new section in FP window, and new bars on system
  251.     index window
  252.   - Deleted ARM calculation sources from distribution to save space
  253.   
  254. Modifications to v3.42H (11-Aug-93)
  255.   - Cleaned up Flops code, integrated correctly into application
  256.   - needs testing/recalibration on a base level ARM2/RISCOS2 machine
  257.     before release
  258.   - With an FPEmulator module > 4.00 (FPA chip support code) we
  259.     don't allow RMFaster or RMReinit because it crashes the machine
  260.  
  261. Modifications to v3.43H (16-Aug-93)
  262.   - Fix to menu width
  263.   - Fix to flops20 code so that it takes about 30secs to run,
  264.     independent of hardware
  265.   - Switched to double precision IEEE tests for flops20 instead of
  266.     single precision
  267.  
  268. Modifications to v3.44H (24-Aug-93)
  269.   - Recalibrated to ARM2/MEMC1/RISCOS2 machine
  270.   - ReBuilt collection of example files (thanks Owen!)
  271.   - Got filetype allocation from Acorn Customer Services (&3f2) !
  272.   - Changed sprites to make change of filetype number more visible
  273.   - Removed the ability to load old format ArmSI files unless they
  274.     are dragged directly to appliction (even then, limited to
  275.     v3.31 and 3.33 - the most widely distributed public releases)
  276.   - Added ability to load ArmSI file by double-clicking on saved file
  277.     without having to preload application (reads command line)
  278.  
  279. Modifications to v3.45H (26-Aug-93) [release]
  280.   - Fixed a bug in FPE version no. reading code
  281.   - Added example FPA ArmSI files
  282.   - Fixed a bug in FP display bars being >32768 OS units long (!)
  283.  
  284. Modifications to v3.46H (07-Sep-93) [release]
  285.   - Added DragASprite support code for saveas dbox
  286.  
  287.