Personal Computer Games
1st February 1984
Categories: Preview: Software
Author: David Janda
Publisher: Memotech
Machine: European Machines
Published in Personal Computer Games #3
David Janda checks out the potential of the smart new MTX computers
Memotech
If you want to buy a newly released computer primarily to play games on, the overriding consideration should be: how many high quality games programs are likely to be produced for that machine?
This is an extremely difficult question to answer, since it depends on how many other people decide to buy it and on whether the program writers think it will be a big seller. There are no clear indications yet that Memotech's new computer will 'take off'. Bearing this in mind, I've reviewed the Mernotech thinking of both the straight games player and the program writer.
The Memotech MTX 500 and 512 micros incorporate some sophisticated graphic commands, as well as an assembler and 'front panel' machine code monitor. Both should provide the games programmer with powerful tools to write and test his own software.
The machine comes in a large box which contains not only the machine with separate power supply, the manual, and leads, but also a demonstration tape, cassette head cleaner (tape), blank cassette, and two games from Continental Software to get you going.
The MTX micro itself, is a very robust, professional-styled machine which looks, and is, larger than most. Housed in a black anodized aluminium case, it has three sets of keys: the main keyboard, a 12-key numeric pad, and eight function keys.
On the back of the MTX, there are a number of sockets for the TV lead, cassette recorder and power supply. Also, sockets are provided for external audio, composite video, printer port, cartridge port, and two joystick ports which will accept the Atari type of joystick.
For further expansion, there is space for the two RS232 ports which require a communications board.
Features
The MTX 500/512 uses a Z80A processor running at 4MHz - a fair old speed. In the 24K ROM fitted inside the machine, Memotech have managed to cram in a lot. The Basic has a whole host of graphics commands, which will no doubt facilitate games design.
Indeed, Memotech have made a big deal about the graphics in their adverts, saying they are of the Logo type. But the fact is that they are not like the MIT (standard) Logo commands, and I can't help but wonder why REAL Logo commands were not included.
The machine itself supports two display modes, text and graphics. In the text mode you have 40 columns by 25 lines and 16 colours can be set for the INK and PAPER. NODDY - the text based language which is also incorporated into the machine - can be used to define 'pages' of text which can then be accessed by MTX Basic.
The graphics mode allows you to display both graphics and text, although the text is limited to 32 columns by 24 lines.
A graphics resolution of up to 256 by 192 pixels is possible, and as with text mode, 16 colours may be used which are: white, grey, black, light green, medium green, dark green, light yellow, dark yellow, light red, medium red, dark red, magenta, cyan, light blue, dark blue and transparent.
If you take away the shades of colour you are left with nine 'different' colours.
For animation, up to 32 sprites may be defined. Basically, a sprite is a character which can be moved about the screen without too much fuss.
The character set can be redefined as well as 25 others. Of the 25, seven may have each line of the character a different colour. The defining of user-definable characters and sprites is made quite easy with the use of the GENPAT command.
No game nowadays is worth a hoot if it doesn't use zaps and pings. The MTX series has a sound command which can be used in what Memotech call direct or continuous operation. Direct operation plays a note until stopped and continuous operation allows a sequence of notes to be played.
The continuous sound creates the notes from a buffer which is an area of memory set up by the SBUF command.
Finally, for the machine code programmer, an assembler is incorporated which supports the use of labels. Also, to debug your programs, a 'front panel' machine code monitor is included, which will enable the user to debug machine code programs.
Built-in features are hex/ASCII dump, register display, disassembly, trace and so on.
Documentation
To get an idea of how to use all the features the machine has to offer, you need a good manual, Unfortunately, the manual that comes with the MTX can't be considered adequate.
Split into two main parts, it attempts to teach Basic in the first, and then goes on to give details about the graphics, sound, and so on,
The author has managed to write a very boring text which does not give enough detail, and instead, waffles on about the most trivial things. In its present state, I would recommend that anyone gives the manual a thorough reading three or four times before embarking on any projects.
In Use
My general opinion of the MTX is that 90 per cent of it is great, but the remaining 10 per cent is rotten.
While entering programs, the screen shows a blue background with white letters. If you don't like this combination, then tough, it can't be changed. This also applies to the front panel which is bright red (on my telly).
Entering programs is easy enough. The MTX does some syntax checking when a line is entered and if something is wrong, then a cursor points to the offending piece of code, which can then be amended.
As I've mentioned, the good points of the machine include the graphics commands. After a short while, I was drawing arcs and circles and moving sprites about without too much trouble. I was impressed with the speed of the sprites, and I can imagine some good games being written in MTX Basic.
The sound command is also quite easy to master, and interesting effects can be produced with a little practice. A point worth noting about the sound is that once a note or sequence of notes is started, your program continues. It would be possible to have a little man moving about the screen to a tune, unlike the Spectrum where program execution stops when a tone is sounded.
On the minus side, the MTX Basic lacks the good old DEF FN statement, which allows you to define functions. In many areas such as games this is essential because it allows you to do some calculations, say in between moving an object. As it is, the lack of DEF FN means that calculations will have to be performed in sub-routines instead, which is not so good.
The machine has some other oddities such as not being able to define local colours within text mode, not supporting cassette files and so on. Even though the machine is very professional, Memotech could have used a 32K ROM for the Basic, this would have allowed them to do a really professional job - as Acorn did with the Beeb.
Software
Continental Software has been set up to produce software for the MTX series and they are going to be releasing quite a lot of games in the near future. The two games - Toado and Draughts - which come with the MTX were produced by them, and although hard to judge, were quite good compared to other versions available on other machines.
Titles will no doubt be some of the old favourites such as chess, galaxians and so on. And I understand that several software houses were given earlier models of the MTX 500 so that they could develop programs.
MTX Basic Commands
ABS | GOSUB | NEW | RIGHT$ |
ASC | GOTO | NEXT | RND |
ATN | IF/THEN/ELSE | ON/GOSUB | RUN |
AUTO | INKEY$ | ON/GOTO | SAVE |
CHR$ | INPUT | OUT | SGN |
CLEAR | INT | PAUSE | SIN |
CLS | LEFT$ | PEEK | SQR |
CONT | LEN | POKE | STOP |
COS | LET | STR$ | |
DATA | LIST | RANDOMIZE | TAB |
DIM | LLIST | READ | TAN |
EDIT | LOAD | REM | USR |
EXP | LOG | RESTORE | VAL |
FOR | MID$ | RETURN | VERIFY |
MTX Graphic Commands
ADJSPR p,n,v
Alters previously defined sprite
ANGLE(x)
Sets absolute angle in radians
PHI(x)
Adjusts angle by x
ARC(x, theta)
Draws arc of a circle
ATTR p,state
Adjusts attributes
CIRCLE x,y,r
Draws circle with radius r and centre x,y
COLOUR p,n
Sets colour for graphics screen
CRVS n,t,x,y,w,h,s
Creates virtual screen
CSR x,y
Move cursor to x,y
CTLSPR p,x
Control sprite parameters
DRAW x
Draws line of length x
DSI
Enables direct screen input
GENPAT p,n,8 bytes
Generates character pattern
CR$ x,y,b
Reads a bit pattern from graphics screen
INK x
Sets foreground colour
MVSPR p,n,d
Moves sprite
PAPER x
Sets paper colour to x
PLOT x,y
Plots a point in graphics screen at x,y
SPKS
Peeks character at current cursor location
SPRITE n,pat,xp,yp,xs,ys,col
Creates sprite
VIEW dir,dis
Moves graphic screen relative to sprite plane
VS n
Selects virtual screen
MTX Sound Commands
SOUND channel,frequency,volume
SOUND chan,freq,vol,freq gardient,vol gradient,time,action
SBUF n sets the number of blocks of memory for extended sound command
Verdict
In terms of value for money, I think the MTX series is overpriced by about £40 on each model. But, I can also see the micro enthusiast forking out the cash for a very powerful machine to use as a development system.
On the other hand, I would suggest that the average buyer looks at this machine not only for games playing, but as a general purpose micro.