Tuesday, January 31, 2012

Programming on Amiga

  Programming on Amiga was just another great experience. I really enjoyed various demos that were so popular at those times (occasionally I also played games), some things were truly impressive. But I couldn't wait to try start programming on my own. It was obvious to me that since the computer was so capable it must be a great thing to write programs for it. The only problem in the beginning was lack of literature, I had the software I needed, because AmigaBasic came on one of the system disks and was complemented with some examples. First thing that caught my eye was the editor that worked in windowed mode and which was another huge leap in comparison to the little Atari.


  Another superb feature in AmigaBasic was its multitasking that it has inherited from the Amiga workbench itself. The same program could run in few windows simultaneously with other programs that were running on your computer.

 

  If you're interested in programming in this language follow the link below to download a manual:


  Great! - you say. Yeah. It was great, indeed, but speed wasn't the strongest point of AmigaBasic as it was simply an interpreter. But everyone got it bundled with their computer and operating system and if one had wanted to try programming that would've been the first language to try out.
  Fortunately, there was a better solution. Lots of different software was circulating amongst many friends and soon I became an owner of a copy of AMOS Basic. Although it didn't support the standard Amiga Workbench window system it was far more extended in comparison to AmigaBasic, and yet it was lot faster. Several people wrote many simple games in AMOS Basic in the 90s, and  communities which use it do exist even nowadays, like AMOS Factory, where you can find manuals, download software, or join a forum to get even more quotes. This website also links to other AMOS related website. I looked at it only briefly, but it looks like a very rich resource:


On Amiga Coding website you can look at and download other people's AMOS projects, download books, manuals, magazines (there's only one at the moment, though), access other references (some links might be dead) or read about history of the language or even news! Apart from that, there are also materials about different implementations of Basic (AmigaBASIC, BlitzBasic) and other languages, including C and Motorola 680x0 assembly language that I always would've loved to try.


  Let's look at some examples of clever creations in AMOS Basic. There are several screenshots on that website therefore I chose only those that I find most interesting. People have written games of nearly professional quality (for what AMOS and 16-bit Amiga have to offer):

Battle Space
Code Name Nano
DarkAngel
Prototype
Teeny Weenys
  Some utility programs also look quite good for software written in an interpreter language with limited resources:

Art School
GRAC 2 (Graphic Adventure Creator)
IFF Vector Ball Designer
Magic Paint Box
  Even quite a few disk magazines were written in AMOS Basic, MiggyByte was one of them:

MiggyByte diskmag
  Most people believe that demos on Amiga can be written only in assembly language. Well, this site largely disproves it. You can look at the videos that are linked to, or just see a few screenshots of Megademo 1 written by Daniel Bryde in 1995. It features even some 3D vector graphics.





  If you like AMOS Basic there's a link for you where you can download various development tools: AMOS The Creator, AMOS 3D, Easy AMOS, AMOS Professional, or if you need more speed in your programs there's also a compiler for you. Check this out:


  And get even more AMOS software here:


  Even the AMOS interpreter alone was much faster than AmigaBasic and to make things even faster AMOS offered a complied sprite scripting language called AMAL (AMOS Animation Language) which ran independently of the main program written in AMOS Basic. The language included several commands which allowed to use graphics and sound with a minimum effort in order to achieve quite interesting effects. The editor was also more advanced in comparison to AmigaBasic:

AMOS The Creator
AMOS Professional Version 2.0
Easy AMOS

  I got a chance to develop only in the regular AMOS Basic (AMOS The Creator) and as soon as I manage to recover some of my programs and get screenshots of them I'm going to post them here. I remember that I've built an electronic piano keyboard (all from logic gates and counters) and written a controller for it in AMOS. If I had had an opportunity to compile that program then the boosted speed would've let me add lot more functionality to it. The program was sending clock signals to a counter and them multiplexer selected one of the keys to read input from, and which then was sent back to the computer. Interpreter allowed to do that only with certain speed and didn't leave much time for any other tasks, like playing sound and controlling its envelope in real time.
  I wrote most of my programs in AMOS Basic in early 90s and then came back to it for a short time about a decade later. AmigaBasic was my programming language for only about two years, before I got a copy of AMOS and switched to this language for good.

16 comments:

  1. Please don't develop in AMOS. There are better other languages to use, whether you are a beginner or an experienced programmer.

    ReplyDelete
    Replies
    1. No worries. I'm currently a C# developer. But still have great sentiment towards Amos. I guess it's some kind of nostalgia for Amiga in general. After all that was my teenage.

      Delete
  2. I just felt like commenting that the Amiga was in fact a 32bit architecture. E.g. you can work with 32bit instructions without any extra tricks.

    Personally I started with C64 basic , Amiga basic, Amos, Amos Pro, AmigaE (a great language) and finally C

    ReplyDelete
    Replies
    1. Hi, Anonymous. Quite impressive range of languages. Personally, I started with Atari Basic. Then I touched Amiga Basic, too, but then the most programming time on Amiga I spent with Amos The Creator. I even wrote few simple programs in the early 2000s. I wish I had tried other languages, but back then I had no access to any. I would've also loved to try some assembly language on Amiga, the only thing that stopped me was lack of literature.

      Delete
    2. And by the way thanks for the lesson. I always thought Amiga was a 16-bit machine, and the early actually models were. But the software written for them was already 32-bit which worked thanks to multiplexing. Very interesting, indeed. Thanks again.

      Delete
    3. Actually, it was really a "24-bit", but could transparently manipulate 32-bit data in order to be forward-compatible with future 680x0 CPUs : see https://en.wikipedia.org/wiki/Motorola_68000#Address_bus

      Delete
    4. This comment has been removed by the author.

      Delete
    5. It is indeed. Thanks for info. I learned another interesting thing from my readers. 😃

      Delete
  3. Amos Pro and AmigaBasic for me is big sentiment like Amiga 500 !

    ReplyDelete
    Replies
    1. I didn't get to try out Amos Pro, or Amos compiler, which I wish I'd had a chance to play around with. Now I have an emulator which lets me run any Amiga I have ever dreamt of.
      Luckily I managed to copy some my files, programs I've written back in the 90s and I'll post them here if I only have some free time to do that.

      Delete
  4. This comment has been removed by the author.

    ReplyDelete
  5. Good thing there are still interested in AMOS, in Spanish community there are several programs Amitem TY youtube, Amigawave, etc .. with AMOS courses in Spanish, I myself am developing and giving masters courses

    ReplyDelete
    Replies
    1. Thank you very much for comment, Luis. It's very nice to hear people still have interest in AMOS Basic and that it's still alive. AMOS development courses. Wow! That sounds really cool.
      I look at your blog. Even though I can't understand much (my Spanish isn't very good) I can see we have similar interests. I just always was more into programming rather then games. All the best, mi amigo.

      Delete
    2. Thank you, we'll be in contact.
      In youtube you can use subtitles, we are trying to put 2 languages, English and Spanish, at least in writing in the sub titles

      Delete
    3. We also maintain contact with Francois Lionet the creator of AMOS

      Delete
    4. All that sounds very cool. You're far more active on your blog that I am. I'd like to know what Francios Lionet is doing now.

      Delete