home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #6 / amigamamagazinepolishissue1998.iso / www / cucug / amiga / amiinfo / reviews / amos.txt < prev    next >
Internet Message Format  |  1997-11-07  |  13KB

  1. From: comp.sys.amiga.reviews Moderator <amiga-reviews@math.uh.edu>
  2. Organization: The Amiga Online Review Column - ed. Jason L. Tibbitts III
  3. Subject: REVIEW: AMOS: The Creator
  4. Keywords: language, basic, amos, commercial
  5. Path: karazm.math.uh.edu!amiga-reviews
  6. Distribution: world
  7. Newsgroups: comp.sys.amiga.reviews
  8. Followup-To: comp.sys.amiga.programmer
  9. --text follows this line--
  10. [This was sent to me by Charles Hill of AMReport fame.  The last working
  11. address I have for him is: Charles Hill/InfoTrak
  12. <76370.3045@compuserve.com>. -JLT3]
  13.  
  14. AMOS: The Creator is a BASIC package published by Mandarin Software of
  15. the U.K. and written by Francois Lionet of France.  AMOS is considered
  16. the single best-selling non-game Amiga software to date with over 40,000
  17. copies sold worldwide.
  18.  
  19. AMOS itself was created using the DevPac II Assembler; DPaint III;
  20. Pix Mate; Cross-DOS and Mini Office Pro Communications.
  21.  
  22. AMOS is a rewrite of the best-selling Atari ST BASIC language, STOS:
  23. The Game Creator.  When AMOS was finished, the word "game" was removed
  24. because the resulting program was so powerful.  Or so the manual says.
  25.  
  26.  
  27.                                  B.A.S.I.C.
  28.  
  29. Beginner's All-purpose Symbolic Instruction Code (BASIC) was one of the
  30. first languages most people were introduced to programming on.  Versions
  31. of BASIC were included with the Commodore 64 and 128; the IBM PC and
  32. clones; the Atari ST and the early Amiga (until it was replaced by
  33. Amiga Vision).
  34.  
  35. BASIC is usually the language taught in high school programming classes
  36. as well as introductory computer classes for non-computer majors in
  37. college.  BASIC is simple to learn and simple to use.  It is estimated
  38. that there is more BASIC coded programs laying around on PCs than in
  39. any other language.  BASIC is estimated to rank number two in programming
  40. language of choice on all mainframe, mini and microcomputers -- after
  41. Cobol.  [Ed. -- Before anyone comes ranting & raving to me about how
  42. many 'C' and assembly programs there are, I just report 'em as I read
  43. 'em.  The study in question was done by the U.S. Gov't in 1989.  I don't
  44. have any further information.]
  45.  
  46. BASIC can be either interpreted, where the BASIC interpreter itself must
  47. be in memory; or compiled into executable code.  Compiled programs are
  48. usually much faster to execute than interpreted programs.
  49.  
  50. BASIC has not only garnered itself a reputation for simplicity, it has
  51. also gotten a reputation as a language suitable only for very small,
  52. very text-oriented programs that do not need to be speedy.  Now, however,
  53. a new breed of BASIC is stepping forth and shaking off the old image
  54. of sluggish reactions.  Borland's Turbo BASIC for MS/PC-DOS based machines
  55. can compile BASIC code which will execute at speeds comparable to Pascal,
  56. Modula or even C program.  AMOS is part of this breed.
  57.  
  58. Most people have relegated BASIC to the classroom because of this lack
  59. of speed and its simplicity in commands.  High-level languages (those
  60. most resembling English) usually have high overhead, which causes the
  61. slow execute speeds.  However, this is a fault of the complier or
  62. interpreter, not BASIC itself.  A good BASIC compiler can compile programs
  63. that will run head-to-head with compiled C programs.
  64.  
  65. This is the reason that Mandarin wanted the word "game" out of the program's
  66. name.  This is also something the user must get through his/her head so
  67. AMOS can be looked at as a serious programming language and not "oh, it's
  68. just another BASIC <yech!>".
  69.  
  70.  
  71.  
  72.                                  THE CREATOR
  73.  
  74. AMOS comes in three packages.  The first is The Creator, which contains
  75. AMOS itself (v1.2), the editors, interpreter, tools and a number of
  76. example programs.  AMOS: The Compiler is a compiler for AMOS programs
  77. and an update to the main program (v1.3).  AMOS-3D is another update
  78. to the main program (v1.3+) and a 3D modeler and manipulator.  The Compiler
  79. and 3D will be dealt with in separate articles.  It should be noted that
  80. while The Creator will run without the other two packages, the Compiler
  81. and AMOS-3D require The Creator to run.
  82.  
  83.  
  84.  
  85.                                  THE MANUAL
  86.  
  87. The AMOS manual is for version 1.0 and was written using WriteNow on a
  88. Macintosh and set up with Pagemaker.
  89.  
  90. The manual contains twenty-two chapters ranging from an introduction
  91. to using machine language with AMOS.  
  92.  
  93. The manual is chock full of examples and the longer examples are included
  94. on one of the three disks.  Examples are numerous and as far as I can
  95. tell, they all work like they should.
  96.  
  97. The manual is written the The Queen's English, so some of the terms
  98. will be foreign to Americans.  The manual is thoroughly understandable
  99. and if you know BASIC from somewhere else, you will breeze through it.
  100. (It took me less than four hours to read the entire 290+ pages -- most
  101. of it was a refresher course.  That time includes trying a few examples.)
  102.  
  103. Americans/Canadians be prepared for a small shock.  AMOS was originally
  104. written for PAL systems (okay, so you Canadians get off there!) and for
  105. a European audience.  Nowhere will you find a reference to a "monitor",
  106. though there are numerous points on hooking your Amiga up to a T.V.
  107. The entire manual was written with the following configuration in mind:
  108.  
  109.         Amiga 500 w/512k; one floppy drive and an RF hookup.
  110.  
  111. Actually, the entire *program* was written with that configuration in
  112. mind, so if you have a hard drive or extra RAM you're going to have to
  113. jump through hoops to get a setup you like.
  114.  
  115. The manual is good.  It is complete and has useful and fun examples.
  116. There is a companion pamphlet that brings the manual up to date with
  117. version 1.2 and all the accessories.
  118.  
  119. Oh, the manual makes many references of things being done 50 times a
  120. second.  I assume that this is derived from the 50 cycle clock used
  121. in Europe and that it is 60 times a second for U.S. systems, but I
  122. have not confirmed this.
  123.  
  124.  
  125.  
  126.                                  THE EDITOR
  127.  
  128. The editor is a full screen editor that bears most resemblance to the
  129. Commodore 64 interface.  It is not Intuition-based and while it is
  130. nice, it take a LOT of getting used to.  AMOS, however, can import ASCII
  131. code so you can use whatever editor you wish.
  132.  
  133. Everything is in 320x200 lores to save RAM and on my system, just a tad
  134. off-center.  (Remember, this is not an Intuition screen -- fiddling with
  135. Preferences doesn't do a thing.)
  136.  
  137. Most commands are mapped to function keys and work smoothly.  AMOS uses
  138. the ALT, SHIFT, CTRL, Left-AMIGA and Right-Amiga to delimit function
  139. keys.  That makes for 60 function keys!
  140.  
  141. The editor has two modes.  Direct and edit.  In edit, you are in a text
  142. editor designed to support AMOS.  The concept is similar to LSE with
  143. Lattice/SAS C and seems to work fine.  Direct mode is where you enter
  144. a command, hit <CR> and it does it.
  145.  
  146. AMOS itself is wierd in multi-tasking.  Want to switch back to the
  147. Workbench?  Hit Left-AMIGA-A.  You read that right.  After that, you
  148. are in Workbench and whatever else you had.  From there, the normal
  149. LA-N and LA-M will switch between non-AMOS tasks like normal.  Want to
  150. get back to AMOS?  Left-AMIGA-A again.  Strange.
  151.  
  152.  
  153.  
  154.                                 THE LANGUAGE
  155.  
  156. AMOS is BASIC all right.  Most of the commands are very familiar and
  157. those that are not are very similar to what you would expect a BASIC 
  158. command to look like.
  159.  
  160. AMOS has over 500 commands.  That's a lot.  More than a few of those
  161. are specialized in dealing with graphics, sound, animation and effects.
  162. Commands for manipulating sprites, bobs, SMUS files, NT files, screens
  163. and windows abound.  Want a screen opened?  Type:
  164.  
  165.  SCREEN OPEN 0,320,200,32,Lowres
  166.  
  167. and damned if a lores 32-color screen doesn't open!
  168.  
  169. There are commands for handling split screens; super-bitmap screens;
  170. extra half-brite, HAM, scrolling screens; double buffered screens, 
  171. sprites, bobs; loading and saving portions or entire screens, bobs,
  172. sprites; dual playfields; animation; music; sound effects; menus;
  173. windows; file requesters; file access and more.
  174.  
  175. There are a few things missing in v1.2.  For instance, there is no
  176. provision for opening an interlaced screen!  How this was overlooked
  177. I'll never know, but all screens are only 200 lines high (255 in PAL)
  178. and a larger number makes them super-bitmap.  This has been corrected
  179. in v1.3, though.
  180.  
  181. There are also a number of commands for compressing data and graphics
  182. on the fly to save RAM space.  Proper timing in your program and the
  183. decompression (usually less than 1 second) will never be noticed.
  184.  
  185. AMOS also contains AMAL, and animation language that is interrupt
  186. driven.  AMAL updates items at a rate of 60 times a second and it makes
  187. it very easy to have two-dozen bobs and half-a-dozen sprites on screen
  188. at the same time moving in complex patterns.  Things may flicker a bit,
  189. but use the DOUBLE BUFFER option and it is all as smooth as silk.
  190.  
  191.  
  192.                                   THE TOOLS
  193.  
  194. AMOS comes with a number of tools, including a map editor (to make
  195. those fancy scrolling backgrounds); a sprite editor; grabbers; and
  196. more.
  197.  
  198. All the tools are described fully in the pamphlet and are quite
  199. useful.  The map editor will take an IFF screen and cut it up to use
  200. the sections as tiles for creating those ever-so-popular smooth
  201. scrolling backgrounds.  It makes games like Ultima so damn simple to
  202. program it is a joke (the basics of Ultima, anyway).
  203.  
  204. AMOS has a tool for converting ST/NT, Sonix and SMUS files to it's own
  205. format.  It works nicely on what I've tested (ST/NT & SMUS files).
  206.  
  207.  
  208.  
  209.                                 THE PROGRAMS
  210.  
  211. AMOS includes a number of example programs which are quite well done
  212. and the source code is very instructional.  The games are cute and
  213. the graphics good.  These are very good examples of what can be done
  214. with AMOS.
  215.  
  216.  
  217.  
  218.                                 THE PROBLEMS
  219.  
  220. Here we go.
  221.  
  222. AMOS is written with PAL systems in mind.  It is a pain in the rear
  223. end to get it looking right on NTSC.
  224.  
  225. The hard-drive install program is a joke.  It doesn't work worth a
  226. damn and is a waste of disk space.  The instructions in the manual on
  227. installing AMOS on a hard drive are no better.  There were written
  228. by someone who obviously didn't have a hard drive.
  229.  
  230. AMOS refuses to work from a sub-directory and demands that it be in
  231. the root directory of my hard drive.
  232.  
  233. When starting AMOS from the CLI you must first CD to the directory where
  234. AMOS is *then* start it.  Forget path names, etc.
  235.  
  236. The editor is designed for PAL and even with the AMOS prefs set to NTSC
  237. is doesn't look right.  
  238.  
  239. Personally, I cannot go from working on my Amiga to booting up AMOS and
  240. programming.  I have to go away and let my mind forget the Amiga interface
  241. and *then* go back and boot AMOS.  If I don't, the wierdness of AMOS will
  242. make me put a (#*$*@# fist through the monitor in no time flat.
  243.  
  244. The file-save requester doesn't work.  It refuses to save if a file doesn't
  245. already exist.  I get a "file not found" error when trying to SAVE AS...
  246. so I have to swap back to Workbench (NO!  Not Left-Amiga-N!  Left-Amiga-A!
  247. Ugh!) then create a dummy file, then switch back and save the beast.  [I
  248. could redo the file requester in AMOS, but I'm too lazy so far.]
  249.  
  250. The list goes on.
  251.  
  252.  
  253.                                  THE SUPPORT
  254.  
  255. AMOS has more support than any language I've ever seen.  There is an
  256. AMOS PD disk collection (over 300 disks!) in Europe and a separate one
  257. in Australia.  There is an AMOS newsletter out of England and contests
  258. paying cash for good AMOS programs.  Mandarin has a standing offer for
  259. publishing good AMOS programs.
  260.  
  261. AMOS has its own dedicated section in a number of European magazines
  262. and there is even a series of AMOS quick-reference cards included in
  263. Amiga Format now-and-then.
  264.  
  265. Heck, there is even telephone technical support to help you when you
  266. get stuck!  (The phone number is in England, though.)
  267.  
  268. AMOS is *popular* is Europe and Australia.  It is gaining in popularity
  269. in North America, too.
  270.  
  271.  
  272.  
  273.                                  CONCLUSION
  274.  
  275. AMOS is by far the most powerful BASIC I've encountered.  It is highly
  276. optimized for the Amiga, though it's Atari ST roots show in the editor
  277. and the interface.
  278.  
  279. The interface can take a lot of getting used to.  Still, AMOS supports
  280. ASCII so you can bypass the interface for the majority of the time.
  281.  
  282. AMOS can program just about anything.  Granted, I might not use it to
  283. do a top-of-the-line word processor or spread sheet, but that just 
  284. might be my bias against BASIC as a "power" language.  If any BASIC
  285. could do it, AMOS could.
  286.  
  287. AMOS, along with the compiler, can generate commercial-quality software
  288. as long as the author has it in him.  AMOS takes out all the tedium of
  289. programming "boiler plate" code like menu coding; sprite animation
  290. routines, etc.
  291.  
  292. If you always wanted to program games, demos or anything with graphics
  293. and sound on the Amiga, but never could master C, AMOS is for you.  If
  294. you liked BASIC and want a decent BASIC with some power on your Amiga,
  295. AMOS is for you.
  296.  
  297. AMOS has hooks to support assembly code and external routines, so if
  298. you want you can mix C and AMOS smoothly.  AMOS is fantastic for handling
  299. animation, graphics and sound on the Amiga.
  300.  
  301. On a scale of 1 to 10, I would give AMOS a 7+.  From what I've heard
  302. about the Compiler and v1.3 update, they would pull that to an 8+; and
  303. from what I've seen of AMOS-3D, it would rate a 9.
  304.