Subject: REVIEW: AMOS 3D and Compiler
From: comp.sys.amiga.reviews Moderator <[email-masked]>
Newsgroups: comp.sys.amiga.reviews

--text follows this line--
[This was sent to me by Charles Hill of AMReport fame.  The last working
address I have for him is: Charles Hill/InfoTrak
<[email-masked]>. -JLT3]

========================
AMOS 3D and Compiler
Review by Andrew Farrell
========================

History
If you fancy yourself as a game designer but don't care to delve into C
manuals and or Assembly Language books, AMOS could be the answer.  AMOS
is a language, much like BASIC, with special support for many of Amiga's
special abilities, unlike AmigaBASIC which tends to leave the real meaty 
stuff to the likes of C programmers. 

However, AMOS won't write the game for you - there is still a lot of code 
to be bashed in.  If you have the patience to learn the language, you'll 
find yourself with a powerful tool capable of producing sophisticated 
programs - especially now Mandarin have released a fully fledged compiler 
and 3D module.

Amazingly enough, AMOS originated on the Atari platform, where it was a 
giant success.  It didn't take long for another publisher to realise an 
Amiga version had much more potential and development began immediately 
on a new version to take advantage of all those hidden powers imbedded in 
the Amiga's custom chips.  

From the day the Amiga version was announced, it was nearly a year before 
a finished version saw the light of day.  Since then Mandarin have updated 
the product several times.  Locally, AMOS is supported by Pactronics who 
produce a semi-regular newsletter filled with tips, example programs and 
useful information on the latest updates.

Version 1.3
New features added include better support for multitasking, support for
hard disk installation, interlace mode, a new REQUEST command, and much
faster graphics.

AMOS is a popular solution to that old desire all home computers owners 
once had of churning out home grown software.  The package seems to appeal 
to parents with a niggling desire to write programs that perfectly suit 
their childrens' needs.  This fact is attested to by the huge range if 
public domain education software floating around.  The biggest limitation 
with AMOS is your own imagination.

AMOS Compiler
The best part about AMOS was the fact you could create stand along program
which ran with a cut down version of the full program editor called RAMOS. 
Unfortunately many have had problems with this package and getting your 
hands on a copy hasn't always been easy.  The new compiler solves this 
problem.

It is now possible to write a full AMOS game, compile it, package and
commercially sell it and no one would ever know without carefully examining
the resulting machine code.  Mandarin have even promised they won't tell
anyone you wrote the game using AMOS until two months after the release.
Apparently some software companies have expressed disinterest in signing up
titles which have been developed using "Game Creators".  AMOS hardly fits
into this category, but compiled BASIC programs are treated similarly.  In
Australia Pactronics have distributed one titled written in AMOS called
Cricket.  It has been fairly popular, however we haven't seen any other
titles in production.

The AMOS compiler churns out code which runs at a very acceptable speed. 
The demos floating around for AMOS 3D are proof that even uncompiled code
moves at a very rapid pace, although none of the demos are really true 
examples of the sort of overhead game code has to deal with on top of 
handling the graphics.  Remember too that the demos are all executing 
predetermined animations without any on-the-fly calculations as to where 
objects should be headed.

There can be no doubt that the AMOS compiler is far more elegant solution 
to the problem of distributing your own programs than the previously 
available runtime AMOS called RAMOS.  It is also considerably more secure 
and a good deal smaller.  In the speed department you can expect an 
increase of two to five times - depending of course on the complexity of 
the code.

Operation
The compiler is launched from a CLI or from within AMOS in direct mode 
with the command COMPILE.  The AMOS launched version sports a smart 
graphics interface making it a cinch to use.

Once running, the next step is to decide whether to compile direct to 
disk or RAM.  This feature is a big help to Amiga owners with 512K of RAM. 
Once the job is complete, you have the option to compact the code.  This 
process seriously reduces the resulting files size and is as efficient as 
most of the best compactors available.  The down side of this is the 
program takes a little longer to run as it must first decompact.

Conclusions
Do you need the AMOS Compiler?  If you're already an AMOS owner who
writes a reasonable amount of software, the answer is yes. Even if you 
don't already own AMOS, it could be time to take another look at a product 
which may well stand up to commercial software production.

AMOS 3D
Generating high speed 3D animation in a game environment normally relies
on a set of standard routines for rendering objects. Ideally, this graphics
engine must be able to handle many calculations based on the camera
position.  Each object must be rendered by the blitter chip.  For best
rendering times, the engine would need to take into account objects which 
are in front of others. 

If you could create such an engine and make available an editor for 
creating shapes to be animated, you have AMOS 3D.  The whole package was 
created by Voodoo Software, the authors of the amazing 3D game Xiphos. 

What you have your hands on is one of the most impressive Amiga programs 
you're likely to see with the potential to build fantastic games of your 
own.  Combined with AMOS, it is possible to create an entire 3D universe 
with incredible fast animation frame rates, smooth camera paths and smart 
collision detection.

AMOS 3D is actually two modules.  AMOS itself receives a shot in the arm 
with an extension of some 30 commands to allow you to display objects and 
handle your 3D universe.  However, the most important add on is the object 
editor.

Creating Objects
The editor is called OM and it is a functional gadget driven interface for 
creating objects using simple base shapes which can be combined and modified.
It all looks very daunting to begin with, however patience with the interface 
and some time spent soaking up the tutorials will make all the difference. 
Once your up and running, OM is fairly straight forward although some careful 
planning is advantageous if you're planning anything complex.

Your designs must retain an angular sort of look as the shapes can only be 
modified in certain ways.  Points can be dragged and you can expand or shrink 
a face and rotate or scale an object all you like.

To further enhance these simple solid objects, AMOS 3D allows you to add 
surface detail or even create holes in objects. Using up to four colours, 
you can create an image that is mapped on an object surface.  OM auto-
matically distorts the image to fit the surface.

This simple facility enables more complex looking objects to be created 
without exceeding the limitations of the object editor or seriously slowing 
down animation speed.  Every image you create is given a rating which tells 
you exactly what impact it will have on the speed of 3D rendering.

Conclusions
Judging by the demonstrations included with the package and the brief play 
I managed to have with the package, AMOS 3D looks like a must have for any 
AMOS owner planning on playing with animation or creating good 3D games. 
I even had a few Videoscape fans drooling over the demo disk, so it looks 
like AMOS 3D will attract a few followers from the dedicated animators 
department. Overall, a very impressive, powerful add on to AMOS that opens 
up the potential for programmers beyond anything ever before.

Andrew Farrell is editor of two Australian magazines,
Australian Commodore and Amiga Review and
Professional Amiga User Magazine