From: eyvind@Lise.Unit.NO (Eyvind Bernhardsen)
Subject: Re: Programming
Followup-To: comp.sys.amiga.programmer
Keywords:  AMOS, beginners, programming
Organization: Norwegian Institute of Technology
Date: Mon, 16 Nov 92 10:18:23 GMT

In article <Bxs1D7.A3o@undergrad.math.waterloo.edu>, sjjohnst@undergrad.math.waterloo.edu (Stephen Johnston) writes:
 > In article <1e5rq2INNa7e@ub.d.umn.edu> rfentima@ub.d.umn.edu (Robert Fentiman) writes:
 > >In article <mwm.2ndl@contessa.palo-alto.ca.us> mwm@contessa.palo-alto.ca.us (Mike Meyer) writes:
 > >Neither you or I have proven our points.  I *may* have seen something
 > >somewhere that can open a window on WB.  But, as I said before, that is
 > >NO reason to discount the language.  BTW, nothing wrong wiht my
 > >eyesight, just yours again. you said Amos has to work in that SCREEN. 
 > >Thsi is singualr, and from it can be derrived that you don't understand
 > >that AMOS can use MULTIPLE SCREENS.
 > 
 > So AMOS cacn work on one screen or many.  So?  Can it open windows? Will you
 > check for us?  I have never seen an AMOS program open on a window.  Maybe
 > because it takes over system resources, it wouldn't be able to handle IDCMP
 > window events...  And then what use is the program for input and output?

Sure.  AMOS WILL open windows (yes, Intuition windows).  OK?

 > >... but it allows me to to have, say, more sprites on the screen
 > >than you can (and other little tricks).  Anyway, as I keep saying, this
 > >is NO reason to discount the language (even if if *may* be true).
 > 
 > Gee, I have a C tutorial manual in fron of me ythat describes how to use
 > more than 8 sprites at once.  It also describes how to use 16 colour sprites,
 > and double width sprites.  A simple matter of setting a single flag in the
 > sprite structure.  So AMOS doesn't have any advantage here.

fine.  Compare these:

[Meant to be illustrative only.  Not guaranteed to work]
[What the hell is the C-symbol for binary, anyway...?  0b?]

struct Sprite spr1 {
   32,32,1,0,1,
   %0000010010010000,
   %0100010010001000,
   %0100100100100100,
   %1100110010101001,
   %0111010011010101,
... (249 lines of binary go here)
   %0010100100100101
}

...

Object Load 'sprite'

Sprite 1,sprite
sprite on

NOW do you see why AMOS is good?

 > >I'm still waiting for that list you know...   I bring up a point about
 > >many Euro-Demos, a LOT of people like them, they are imporessive, and
 > >many are NOT AmigaDOS programs (and there are many examples in this in
 > >other languages such as assembler, C , others).
 > 
 > These Euro-Demos usually don't work on multiple machines - those that work
 > on an A500 usually dont work on an A3000, those that work on DOS 2.04 won't
 > work on DOS 3.0  You're limiting yourself to using one machine.  Ever want to
 > upgrade?  Can you ever upgrade your AMOS program, without re-compiling under
 > a new version of AMOS?  A system-friendly routine written in C or PASCAL, etc

Re-compiling an interpreted program.  I love it.

B'sides, you can't upgrade to a new Unix system w/o recompiling your programs...

 > probably doesn't need to be re-compiled under different versions of DOS.  I
 > regularily use HiSpeed Pascal under DOS 1.3 and 2.04.  As long as my routine
 > doesn't use DOS 2.04 specific function calls, it doesn't matter where I
 > compile it or run it.
 > 
 > >Throw out the you new compilers, everyone!  They were upgraded so they
 > >work better, making the language useless!  GREAT POINT!  NOTE: Amos Pro,
 > >improvements: much better editor, Arexx support, better supports for
 > >graphics, sound, et.
 > >
 > >NOTE: To my knowlege, Mandarin software has NEVER released a version of
 > >AMOS just for a new OS.  The new version I speak of is Amos Pro, adding
 > >200 new commands to make it more versatile.  It has NOTHING to do with a
 > >new OS.
 > 
 > Note 2:  SAS C, Hisoft Corporation, etc, don't release new versions of their
 > compilers for specifically for new operating systems either.  I have SAS C
 > v5.0 under DOS 2.04.  Do I really need to upgrade to version 6?  Not really.
 > I can do everything I want, and use DOS 2.04 to its full advantage now that I
 > have the 2.04 includes.  Does AMOS have 'includes' or something similar for
 > new versions of DOS?  Or do you have to wait for the upgrade to come out?

Naah.  That's why AMOS doesn't use Intuition by default...  Read the thread...
If you use libcalls from AMOS, you use the offsets directly, so no includes are
needed.

 > Especially when the program is not system compliant - ie - doesn't use DOS.
 > Have you read threads about Commodore not releasing the Hardware Reference
 > Guide to AGA?  Commodore doesn't want programmers playing with the system
 > directly.  They want people to use DOS.  They strongly hint thtat things will

No.  they want people to use LIBRARIES.  Are you a programmer?  DOS is just the
disk operating system...  I think AMOS uses *that*...

 > change DRASTICALLY with whatever comes after AGA (and this is already under
 > development).  And if programs DON'T use DOS, they won't work.  Simple.
 > 
 > >beginers don't make such utilities that need to be system compliant.
 > 
 > I disagree.  A programmer should learn from the start to program modularly.
 > That means that each module complies with the rules of every other module
 > on your program.  One of those 'modules' is the user/dos interface.  If you
 > don't comply with these rules, you're not programming well.
 > 
 > Using Amiga-A to switch screens is NOT system compliant (can you change this
 > in your AMOS program?)  Capturing your input stream, so that my screen-blanker
 > blanks my AMOS program after 5 minutes is NOT system compliant.

I've had no such problems with *my* screen-blanker...  Of course, I'm using the 
C= supplied one...  It may be expected to be system-compliant.

 > \|  Stephen J. Johnston     |      sjjohnst@descartes.uwaterloo.ca      /// |/

-Eyvind

-- 
     //|                             | DISCLAIMER: I don't HAVE opinions.
    // |                             | I just repeat what everyone else says!
\\ //--|miga: There can be only one. |
 \X/   |         eyvind@lise.unit.no | Aaaaaaaaaaaaaaaaaaaaaaaaargh!  Ackpth!
Newsgroups: comp.sys.amiga.programmer