Amiga compared to other computers and what it lacks  by Bill Harper  ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[ I have been involved with computers, in one way or another, for almost ten years now. In that time I've used everything from micros boasting an incredible sixty-four kilobytes of memory through to mainframes which run programs requiring four megabytes just to get off the ground. And in almost every machine I have used over the years there has been a programming feature I like and wish I had on my Amiga. One for every dozen features I hate, it seems! Fortunately for us all, the developers of Amiga have already implemented a lot of the features I like. But there are still a few I would like to see in future machines. So this list is not only to show what a wonderful machine the Amiga is now, but to also show how, in my opinion, it could be better. Note: I am still running under 1.3, and while I have studied the features of the 2.04 OS (I hope to upgrade soon), I am not willing to say these features are not included. And as far as the 3.0 OS is concerned, I know precious little about it. Solving the generation gap. I am writing this article using ProWrite V3.2.1, and I am taking full advantage of the autosave feature so I don't lose any of my work. Unfortunately, it only keeps a single generation backup copy, so it's soon overwriting a previous version of my work. What's more, it usually does so about five seconds before I realise I want to revert to one three saves ago because it's a lot better than the version I'm working on now. There are a number of solutions to this problem. One is to write an AREXX script to perform the save, changing the name automatically so I don't overwrite anything I might need later on. Another version is to use the "Save As" option to save it, and type in a different name each time. But both will mean I can't use the autosave feature I've been waiting for since version two. And what about the programs which don't support AREXX, multiple generation backups and the like? When I was at University I spent many a day on their Digital VAX/VMS machine, trying to get my umpteen-thousand line COBOL program to run the way I wanted it to. You would run the program, find an error, change the source, re-compile the program, run the program, find another error, change the source, etc, etc. The process would be repeated until the program worked or the computer centre closed for the night, whichever came first. After sitting at a terminal for eight hours straight, your concentration begins to lapse and before you know it you're demolishing the wrong part of the program to fix a particular bug. But it wasn't a big problem (well, not as big as it could have been) because every version of your program was still on the system, waiting to be recalled. Every time you saved the program, a new version number would be generated and tacked onto the end of the filename. You could even tell the system to keep only the last five versions if that's what you wanted. I kept everything! This is one feature I would love to see on the Amiga. It would probably only be suitable for hard drive owners, (unless there is a lot of room left on your floppies), but I'm sure the Public Domain programmers out there would know how to patch the system with a piece of code to do it. [Ed: sounds like a candidate for "program ideas" as discussed in the Editorial this issue.] I've been main-framed! Believe it or not, I managed to graduate from University and now have a job in the Public Service as a DataBase Administrator. Better still, I've managed to get away from programming in COBOL! I am now programming a Fujitsu mainframe in everything from assembler through to Natural (a database interrogation language) and JCL, which you don't want to know about, believe me. You would think that such a machine would be a joy to use, but even a multi-million piece of technology such as this has a few quirks which make me eager to get back to my Amiga. For a start, it doesn't have directories. Instead the filename has the "." character scattered through it, where each one signifies a pseudo-directory. Perhaps an example would better illustrate this concept. If I had a file on my Amiga a few directories deep, it may look something like "devs/printers/EpsonX" if you're looking from the root directory. But the same file on the mainframe would be something like "devs.printers.EpsonX", without the quotes, of course. All files are accessed from the root directory, and to access each file you have to give the full name. You can't go to the "printers" directory, because there isn't one, so if I wanted to modify a few printer drivers, I would have to quote the full filename every time. And when you have a file which is four or five levels deep, you feel as if you're typing an essay rather than a filename. There are third party products available to make it look as if you have directories, but they're no substitute for the real thing. Something else I took for granted before I worked on mainframes was the ability to type in the next command while the computer was processing the current one - type ahead. Try it on my terminal at work and you lock up the keyboard, which must then be reset before you can type again. So much for planning ahead! But there is one concept available on the beast which I think is a great idea. There are a number of subroutines (their official names are User Exits), each of which is called at a specific time. One is called every time a command is sent to the database, another is called just before the result is returned to us. Now I know we aren't dealing with multi-user databases on the Amiga (in fact I don't think I have a database package - not even PD! [Ed: yes, you do, Bill - it's on MD31]), but there are times when I would like to execute a piece of code every time a program is started or has finished. Code which get me in the right directory, copies some stuff to the RAM disk, and reverses the procedure once the program has finished. I quite often run out of RAM and realise I still have ProWrite's dictionary and thesaurus in there! What's in a name? While I hate typing in those long filenames on the mainframe, I like the freedom of being able to use them on my Amiga. I like to be able to see a file in a directory and immediately know what it is, simply by the filename I've given it. At work we use IBM PCs for word processing and the like, and I seem to spend more trying to think of a filename than writing the actual document. How IBM users cope with their "eight-character-name-plus-three-character-extension" filenames is beyond me. Worse still, everything on the IBM is converted to upper-case. So not only are you limited by how many characters the filename can have, you also have them displayed in capital letters. And there is nothing uglier than reams of text all in capitals! Unix, it seems, has the opposite problem. All filenames used on the SUN we also have at work retain their case, making for much more readable filenames. Unfortunately they are case-sensitive, so if you try and read a file named "Readme", and it is stored as "readme" or "README", then you'll get an error message stating the file is not there. In an ideal computing environment, there would be no concept of filenames. We would simply ask for the information, and it would be given to us. But while we still have to use them, shouldn't the computer have to adapt to how we want them to be instead of the other way around? Taking the shortcut. When I first got my hard drive, I spent a good day or so working out how I was going to format it. Single partition? Two? Three? In the end I chose a single partition, and so I have a disk called DH0: which is about forty-nine megabytes in size. And on that disk I have programs, data files, a few games, utilities, as well as the usual workbench files. To keep all of these in some sort of order, I have made lots of directories and sub-directories to put everything. So from the root directory some of their paths can be pretty long. A problem? Maybe on other systems, but not on mine. After adding a few ASSIGN statements here and there, and I now have a series of logical partitions - DATA:, PROGRAM: and about a dozen others. Now if I want to run ProWrite I simply type "Program:ProWrite" and away she goes. No long pathnames to worry about. Better still, I can bring some of my games (and a lot of business software) onto my hard drive, make a couple of ASSIGNs, and the program thinks it is still running off the floppy it came from. I say some, because most games on the Amiga use custom bootblocks, on-disk copy protection and references to physical devices (DF0:) to make this task impossible. This is probably why so many Amiga users have "cracked" software, whichis usually in one large file and can be run from anywhere. But that's anot her story (and quite possibly another article). So near and yet so far. So there you have it. A comparison between the Amiga and other systems I have worked with over the years. As you can see, the Amiga has most of the features which make computers a pleasure to work with rather than a chore. But at the same time, the developers can't be content with what they've achieved so far. That isn't the way the computing industry works. As soon as you slap yourself on the back with the knowledge of a job well done, you're passed by better ideas and better technology. Maybe a few of these ideas could keep the Amiga in the overtaking lane.  ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[ ]] 32 [[