80-Bus News |
September–October 1983 · Volume 2 · Issue 5 |
Page 12 of 67 |
---|
review manual came bound with one of those pull-on plastic spines. I have no objection to then, I’ve used them myself, but when I opened the manual I found I could not read the start of most lines as they were lost in the binding. Pulling the plastic spine off cured that, but then left me with a pile of loose paper. My alternative method of storing manuals – four-hole punching the pages and storing them in a ring binder – would not be perfect either, as the holes would mutilate some of the text. I measured the left and right margins at 10mm and 15mm respectively. I reckon they should be 15mm at an absolute minimum, 20mm would be better.
On glancing through the Hisoft HP5 manual one thing I noticed immediately was that the range of the floating point numbers was given as 3.4x1038 to 5.9x10-39). However the range that the Am9511 can handle directly is only 9.2x1018 to 2.7x10-20. Subsequently I wrote a short program that verified that the limits in HP5 are those of the Am9511.
The area where a product like this stands or falls is in how easy it is to use. All your current software will obviously ignore it, and it is not a trivial task to get round this problem. Belectra have taken a step in the right direction by including in the price a special version of the Hisoft Pascal compiler whose run-time routines make specific use of the arithmetic processor. So if you want to “plug-in-and-go”, you are currently restricted to Hisoft Pascal, or Pascal/MT+ which also has an option for using the Am9511.
I list below a few comparitive benchmarks of the performance. A nice benchmark I came across recently [4] is a good test of processor speed and accuracy on purely arithmetic routines. This very nicely matches the area in which the HSA-88B would be used. Try it on your current favourite interpreter and/or compiler for comparison with the figures below. Ideally it should produce a result of 2500 in as little time as possible.
5 REM Benchmark from DDJ No 83 (Sept '83) p120-122 10 N%=2500 20 A=1 30 FOR I%=1 TO N%-1:A=TAN(ATN(EXP(LOG(SQR(A*A)))))+1:NEXT I% 40 PRINT USING "A = ££££.££££";A
Fig 1 – DDJ Benchmark in BASIC
Language | Result | Time | ||||||
---|---|---|---|---|---|---|---|---|
Standard MBASIC interpreter | : | 2304.86 | in | 225 | secs | |||
BASCOM compiler | : | 2304.86 | in | 183 | secs | |||
* | Modified MBASIC interpreter | : | 2326.94 | in | 41.8 | secs | Am9511 | support |
Hisoft Pascal (V5) | : | 2326.94 | in | 29.1 | secs | " | " | |
Simple assembly code | : | 2326.94 | in | 26.8 | secs | " | " | |
version of the benchmark | : |
* see below
Fig 2 – Benchmark timings (4MHz Z80)
Unfortunately several Pascals do not appear to offer TAN as a function, (they do have SIN and COS), and only have ARCTAN for the inverse functions. So, for the Pascals, I have translated the PCW BM8 into Pascal.
Page 12 of 67 |
---|