GEM Bench V3.0
 Ofir Gal 24.7.93

-----------------------------------------------------------------------------
New Features in V3.0
-----------------------------------------------------------------------------

*  Improved interface
   
   GEM Bench now uses dialog windows instead of modal dialog boxes. You 
   may open several windows, move them around, close and top them. At any 
   time you have access to the menu bar. If you open several windows at 
   once, changing something in one is automatically reflected in the 
   other. Changing the Blitter state in the main window for example is 
   also reflected in the Save or System Info windows if these are open, 
   even if they are partially hidden.
   If you have several windows open, you can top any window by clicking 
   on it or by selecting its menu entry or button that invoked it in the 
   first place.
   
   The menu bar can be used to  perform a collection of tests. Three 
   entries are available, Display runs all graphic tests, CPU performs 
   the math and memory access tests and All Tests simply runs all tests. 
   This items also have keyboard shortcuts which are available at ANY 
   time.
   
   The Hardware Reference box has an improved layout, making it easier to 
   work out which system you are comparing your setup to.


*  FPU support

   The float math tests now use an FPU if one is installed. The file 
   AUTOFPU.RUN must be in the same directory as GEMBENCH.PRG for this to 
   work.
   
   There is a special text file called FPU_CPU.TXT that discusses some of 
   the difficulties in benchmarking the FPU.


*  New test routines

   Many of the routines have been improved. Notably, the CPU tests are 
   now in assembler as opposed to BASIC (Thanks to Eric Northwood). The 
   FPU test is written in Lattice C. The graphics tests have also been 
   improved.


*  System Information
   
   The Info button opens a dialog displaying machine type, TOS version, 
   AES and GEMDOS versions, NVDI, FPU and other information about the 
   system.

   When using the Save or Print facilities, GEM Bench now adds info about 
   TOS version, MultiTOS (MiNT) version, Blitter, NVDI, screen resolution 
   and FPU.
   

*  MultiTOS

   GEM Bench is now MultiTOS compatible, utilising dialogs in windows 
   which can be moved around the screen, topped and closed. The menu bar 
   and therefore desk accessories and other applications are always 
   available (except when test is in progress).

   The best way to run GEM Bench under MultiTOS is to quit the Desktop 
   (click on the Desktop menu entry while holding <Control>). Then using 
   Load... to run GEM Bench. This reduces the overhead of having to 
   redraw the desktop between tests. If you run GEM Bench from the 
   desktop, the GEM Dialogue box and GEM Window tests will be very slow.
   
   Process priority may be set by pressing the Priority button. This will 
   bring up a dialog box where you can enter the required priority level. 
   Positive values increase priority and negative numbers decrease it. 
   The value range is -20 to +20. This sets ABSOLUTE priority level as 
   opposed to delta (relative) values.


*  Bug fixes and general improvements

   The ST Review version (2.5) had a bug which caused the system to hang 
   when trying to move the cursor in the Save and Print dialogues. This 
   is now fixed.
   
   When saving test results more than once, the chosen path is preserved, 
   making the process a little easier.
   
   The justified text test has a cleaner appearance when not using NVDI.

=============================================================================



Introduction
------------

This program is Shareware, if you like it and use it you are required to 
pay for it. Please send 5 to the address below. If you enclose a blank 
disk and an SAE I will send you a registered version of GEM Bench and a 
selection of my other programs. I will accept foreign currency from North 
America and Germany which I can use to register shareware overseas. US 
and Canada - $10. Germany 15DM.


About the program:

I wrote the program because I was never sure what other benchmark 
programs were exactly testing. Most benchmarks for the ST come with 
screen accelerators like NVDI and Quick ST, while the results are not 
tweaked I felt that an independent benchmark was needed. The NVDI 
benchmark GEM_TEST tests the VDI text routines by displaying various font 
sizes and effects as well as a 20 point font. This is something NVDI is 
very good at (large fonts) but not necessarily used much. Warp9 and Turbo 
ST are not that good at large fonts and do not give a high score at the 
text test. Quick Index is another benchmark that almost totally ignores 
GEM, most tests are BIOS and GEMDOS related. It tends to produce very 
good results with Quick ST which do not represent reality in my opinion.

I am sure GEM Bench is not perfect either, but I wrote it without any 
particular bias, I truly wanted to see how effective the blitter chip was 
and which screen accelerator was the fastest. I also wanted to see how 
much faster the Falcon really is and how it compares with a TT. The 
subject was discussed on CIX and I took the advice of users and 
programmers while writing the program so hopefully we now have a 
definitive test for the Atari range of computers. I am open to 
suggestions so please write to me if you have any. I would also like to 
hear of any problems you may have running GEMBench.

Ofir Gal
3 Downs Road
Beckenham
Kent
BR3 2JY
United Kingdom

I can also be contacted via email - ogal@cix.compulink.co.uk

=============================================================================


User Manual
-----------

GEM Bench runs in any reolution with at least 640*200 pixels. This 
includes ST high, ST medium, TT high, TT medium, TT low. All Falcon modes 
are also supported except ST low and True Colour.

When first run, the program simply puts up a small menu bar. To start the 
test select Open from the File menu (or press Control+O).


The Main Window
---------------

The main dialogue box shows the test results on the left, these will 
initially be zero, and the various options on the right. To start the 
tests click on the Test button and leave the mouse. When the tests are 
completed the results will be displayed in the format:

Test      time took in seconds     ratio

If you run the test on a basic machine you should get 100%, this means 
your ST is running in its normal, terribly slow state. In addition you 
can run a single test by clicking on its name or the keyboard shortcut.

On the bottom right you will see the hardware reference box with three 
buttons. The first should show your computer model (ST, STE, MegaSTE, TT 
or Falcon). Clicking on this button pops up a menu where you can select 
which machine you want to compare your system to.
The second button is normally the Blitter button but on a TT 
it changes to FastRAM. This does NOT change the blitter state, it lets 
you compare your system with an ST with or without a blitter.
The third button lets you compare your setup to a system with a Floating 
Point Unit (FPU) if enabled. All TTs have an FPU so if you select a TT 
this button will be selected for you.
To compare your system to a MegaSTE with a Blitter and FPU for example, 
first select the MSTE from the popup menu, then select the Blitter and 
FPU buttons.

* Note that the old Mega ST is considered an ST. 

* All comparisons are to a machine running in 2 colour mode (monochrome).


Save and Print

The other buttons can be used to print or save the test results to disk. 
A small box will appear where you can type in details of the test. The 
program will automatically enter the machine type, blitter state and TOS 
version as well as screen resolution and other system info.


Info

The Info button displays a dialog with system information and also tells 
you which machine configuration you are comparing your system to.


Blitter

You can use this button to switch the blitter on and off, you will be 
surprised to see the difference it makes, especially on 8MHz STs and 
STEs. If your ST has no blitter this button will be disabled. On the 
Falcon it is not possible to switch the blitter off so the button will 
always be selected. If you have NVDI on the Falcon you can use this 
button to toggle the blitter state, otherwise it has no effect.


Priority

The Priority button only has effect when running under MultiTOS and lets 
you adjust the priority level MultiTOS allocates to GEM Bench.


Statistics

The statistics box is for a quick evaluation, the Display entry is simply 
an average of all graphics tests. The CPU entry is a simple average of 
the other tests.
The bottom result is an UNWEIGHTED average of all tests. It is important 
to note that these results do not necessarily reflect reality. It is much 
better to look at the specific tests and see which ones matter to you. 
For example you may get an excellent result with the VDI graphics test 
which will affect the statistics. If all you use your computer for is 
plain text this result is not relevant to you. Instead, you should look 
at tests like VDI text and scrolling.



The Menu Bar
------------


Desk

    About - This displays some info about GEM Bench.


File

    Open (Control+O) - Opens the main window.


    Quit (Control+Q) - Quit GEM Bench.


Test

You can use these menu items to quickly test several functions in one go. 
These items are active whether the main window is open or not.

    
    Display (Control+D) - Run all display oriented tests. This includes 
    all text, graphics, dialog and window tests.


    CPU (Control+C) - Run all CPU related tests - Integer division, 
    Floating point math and memory access.


    All Tests (Control+A) - Run all tests.


User Interface
--------------

GEMBench is the first program to include the xform_do toolbox routines 
included with the new version of HiSoft BASIC.

Each test name is also a button. Clicking on it runs that test. You will 
also notice that each button has one underlined character - this is the 
keyboard shortcut for that button. Press Alt+S to save or Alt+D to run 
the dialogue box test.

In addition, the cursor in the Save and Print dialogues (activated by 
pressing the corresponding button) has several enhancements:

1.     Pressing Shift+cursor key moves the cursor to the beginning or end of 
       a text field.
   
2.     Tab and backtab are supported. Backtab is achieved by pressing 
       Shift+Tab this moves the cursor in the opposite direction to Tab.

3.     Pressing the Undo key has the same effect as clicking the Cancel 
       button in any dialgue. In the main dialogue, this is the same as 
       pressing the Quit button.
   
Note that both left and right mouse buttons are active in GEM Bench.
   


Technical Info
--------------

This is a list of all the tests and how they are perfomed as well as
information for the non-programmer.

Dialogue Box - A complex dialogue box is drawn to screen. All form_dial
calls are used except FMD_FINISH which is only used to clear the 'mess' 
at the end.

VDI Text - This is the standard v_gtext call which is used by most 
programs to display text on screen.

Text Effects - This test displays text using v_gtext while changing text 
attributes using vst_effects and text colour with vst_color.

Small Text - This test displays the small system font. The size is 
changed
using vst_point, the text is displayed using v_gtext.

VDI Graphics - The test draws a rectangle and circle in replace mode, 
changing their position, fill pattern and colour before each draw. This 
is followed by v_pline in xor mode. The VDI primitives used are v_bar and 
v_ellipse and attributes changed are vsf_color and vsf_interior.

GEM Window - This test creates a window then displays it. Uses the AES 
calls wind_create and wind_open and opens a window 640*400 or 640*200 
pixels according to resolution. The window is then closed. This allows to 
compare an ST to a TT without having the TT open a larger window if a 
large monitor is used.

Integer Division - Simply divides integers. Something every program does 
at some point.

Float Math - Multiplies and divides and adds single and double precision 
numbers. Also calculates trigonometric functions and logarithms. Uses an 
FPU if one is installed.

RAM and ROM access - Simply reads from RAM and ROM. Useful to show
the benefits of FastRAM. ROM location is obtained via the BIOS so if you 
have TOS installed in RAM, the ROM test will be reading from RAM 
possibly affecting the speed.

Blitting - The test draws a black box on screen then moves it along by 
saving the screen area to memory then writing it back with a slight 
offset.

VDI Scroll - Uses the standard vro_cpyfm to scroll text in a window. This 
function is used by most text editors and word processors.

Justified Text - Uses v_justified while constantly changing justification 
parameters.

VDI Enquire - This runs through various system enquiries, again most GEM 
programs use this calls.

============================================================================

Thanks to Graeme Rutt, Roger Davies, Eric Northwood, Joe Connor, John 
Eason, Iain Laskey, Andrew J Lee, Don Maple, Alistair Bodin, Mark 
Webster, Andre Willey, Gunter Minnerup, Charles Smeton, HiSoft, John 
Cordes, Kevin Fason, Daron Brewood, Darek Mihocka and everyone else on 
CIX for their help.
