APPLICATIONSPROGRAMMATION ★ MAXAM 2 ★

Maxam II (CPC Revue)MAXAM II (Computing with the Amstrad)MAXAM II (Amstrad Computer User)MAXAM II (Amstrad Action)MAXAM II (Aktueller Software Markt)MAXAM 2 (CPC Amstrad International)
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

EARLY in 1985 Arnor introduced Maxam, an assembler, text editor and monitor for the CPC which was available as a plug-in ROM cartridge as well as the normal tape and disc formats.

Not only was it the first software to appear on ROM but it quickly won a reputation as the best assembler available, only rivalled in power by Hisoft's Devpac but certainly not matched in general ease of use.

Since then other assemblers have appeared, some with features that are noticeably lacking in Maxam. Despite that, I've stuck with Amor's assembler because it's convenient having it in ROM and so quick and easy to use.

For some time there have been rumours of a Maxam II that would use Protext as its text editor, leaving room for macros and enhanced debugging facilities. The rumours were nearly right, but Maxam II but isn't intended as a replacement for the original. It's a separate product for the CPC6128 running CP/M Plus and the PCWs.

Like the original, Maxam II comes in three main parts - text editor, assembler and monitor. Each has been expanded and is at least as big as the original 16k package. There are also disc utilities and extensive help files.

The assembler, text editor and monitor are integrated so although they are individual programs it is possible to go from one to another without exiting to CP/M.

The text editor shown in Figure I is an implementation of Protext's program mode. I've used word processors and text editors on various machines and haven't seen anything that is both as powerful and as friendly as Protext. It's a delight to use and is excellent for entering text quickly.

It can work with two files in memory and it's possible to copy text from one to the other. Files larger than available memory can be handled, though I prefer to split a file into sections to avoid the reduction in speed caused by disc accesses.

Blocks of text can be loaded, saved, moved, copied and deleted. One thing I particularly like is the undelete function which allows recovery from those awkward situations which tend to arise when you haven't made a back up for a few hours.

There's also a facility to add or remove line numbers if you want to edit a Basic program saved as Ascii.

The assembler takes its source code from disc or a file in memory. Object code is written back to disc, the default being a .com file. Amor intend to supply a utility to convert files to a format readable by Amsdos though the monitor won't be any use for non-CP/M programs.

A number of commands can be embedded in the source code which instruct the assembler to perform certain actions. These are known as pseudo-op codes or directives. All assemblers have these to some extent - ORG and DEFB being two examples.

Maxam ll's extensive list of directives is almost d mini language. Conditional assembly and REPEAT . . . UNTIL loops let you produce different versions of a program from a single source file, and others give full control over the listing output.

Large files may be Heveloped in sections and either assembled separately and linked together or the assembler can read multiple source files with the READ directive.

Macros are a welcome addition because they can shorten the time it takes to write a program and make your code a lot more legible.

A macro is a sequence of instructions referred to by name. For example, if you wanted more flexibility in adding 16 bit register pairs you could define a macro to add the contents of BC to DE and leave the result in BC.

MACRO add_bcde
push hl
ld l,c
ld h,b
add hl,de
ld c,l
ld b,h
pop hl
MEND

With this macro defined at the start of your program add_bcde can be used just like another mnemonic. Whenever the assembler meets it the list of instructions corresponding to the definition is inserted.

It's also possible to put your macros in a separate file so you can build up a library of useful routines. Another feature of macros is that the actual sequence of instructions can be varied according to a set of parameters.

For instance, to add together any pair of eight bit registers leaving the result in the first register a general purpose macro could be written like this:

MACRO add_r1r2 &reg1 &reg2
ld a,&reg1
add &reg2
ld &reg1,a
MEND

So in one place you "might use:

add r1r2 b c

which would add B to C and leave the result in B. Somewhere else in the program you could use:

add_r1r2 l d

which would do the same for the L and D registers using the same macro definition. Parameters are only used during assembly and shouldn't be confused with those passed to functions and procedures in high level languages.

Another powerful feature is the ability to link machine code with files produced by Arnor C. The problem with putting in-line machine code in a C program is that C does not incorporate an assembler. You can write the code with an assembler and either incorporate the hex values in your C function or leave an area of memory free and load the code as a separate binary file. Alternatively, you can give all the op-codes definitions such as:

#define ld_a 0x3E

and write pseudo-assembler using the labels.

None of these methods are very satisfactory, particularly when it comes to writing and de-bugging more than a few lines of code. The Arnor method is to use Maxam to write machine code and store it on disc as a link file.

In the file will also be a list of labels that you have declared with the assembler directive PUBLIC, along with their offset from the start of the code. The linker supplied with Arnor C can then access the labels and incorporate your machine code in a C program.

There are one or two constraints when writing assembly language for use with C. It has to be relocateable and can't be longer than 32k, though you can get round this by linking multiple files.

Arnor products seem to score again and again when it comes to combining powerful facilities with ease of use and they've excelled themselves with the monitor. The old monitor was rudimentary but the new one is in a different league.

In fact two monitors are supplied, small and large. The small monitor lacks the less commonly used features of the large model to make room for larger object files which obviously have to be in memory at the same time.

Like the text editor, there is a separate command mode and dozens of commands too numérous to list here.

Several debugging tools are available such as conditional breakpoints and single stepping. These make it possible to execute a program slowly or quickly with the monitor retaining control so you can stop the program with a key press or at a breakpoint.

This may be a particular address in the program or when a predefined condition arises, such as a register reaching or exceeding a certain value. You can examine and alter registers or memory and then continue execution.

There's a disassembler which can output to screen, printer or disc and a single pass assembler which lets you edit memory by typing in assembler mnemonics rather than hex codes. Figure II shows you the idea.

CP/M plus operates with banked memory allowing it to use more than the normal 64k available with the Z80 microprocessor. The monitor will let you investigate all the memory map by switching in banks of RAM as required, and that includes the PCW's RAM disc.

To round things off, several utilities can be accessed from the editor or monitor, including a disc copier and formatters. The latter will format a disc for either drive A or B on the PCWs and in CPC data format on any model.

Files can erased, copied or set to read only or read and write status. You can view the contents of a file with the TYPE command without erasing the file in memory and you can spool all screen output to disc or printer.

There's even a command to redefine a character matrix and you can construct exec files which contain commands that are executed as if they were being typed in at the keyboard. In fact the automated installation procedure is done with an exec file.

Maxam II is accompanied by a clearly written 157 page manual. It contains a tutorial session based on a worked example, which involves writing and debugging a short program, and is a great help in becoming familiar with the package.

At £79.95 Maxam II is going to appeal to professional programmers and very serious amateurs. Cheerful it is, but cheap it certainly is not.

The thing that struck me when reviewing it was the amount of thought and effort that has gone into this product. Amor have developed what was already considered to be the best available and deserves every success.

CWTA

★ PUBLISHER: ARNOR
★ DISTRIBUTION: PR8-Soft (GERMANY)
★ YEAR: 1986
★ CONFIG: 128K + CP/M+ (CP/M+ and disk only : CPC 6128 or PCWs only)
★ LANGUAGE:
★ LiCENCE: COMMERCIALE
★ AUTHOR: Robin Nixon
★ PRICES: £79.95 (UK) , 350 DM (GERMANY)
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Files:
» ARNOR-Maxam  2    ENGLISHDATE: 2011-04-03
DL: 857
TYPE: ZIP
SiZE: 204Ko
NOTE: Extended DSK/42 Cyls
.HFE: Χ

» Maxam  2  v2.0DATE: 2009-08-20
DL: 887
TYPE: ZIP
SiZE: 206Ko
NOTE: Extended DSK/41 Cyls
.HFE: Χ

Adverts/Publicités:
» Arnor-C-Maxam  2-BCPLDATE: 2015-01-08
DL: 859
TYPE: image
SiZE: 331Ko
NOTE: w940*h1354

» Arnor-C-Maxam  2-BCPL    ENGLISHDATE: 2018-01-19
DL: 427
TYPE: image
SiZE: 398Ko
NOTE: Uploaded by hERMOL ; w1220*h1747
 
» Arnor-MAXAM  2-C-BCPL-Utopia    ENGLISHDATE: 2017-06-19
DL: 717
TYPE: image
SiZE: 226Ko
NOTE: Uploaded by hERMOL ; w789*h1153

» PR8-Soft    (Katalog  1987)    GERMANDATE: 2023-08-08
DL: 151
TYPE: PDF
SiZE: 10094Ko
NOTE: Supplied by www.acpc.me ; 24 pages/PDFlib v1.6

Covers/Packages:
» ARNOR-Maxam  2    (Release  DISC)    ENGLISHDATE: 2023-04-07
DL: 20
TYPE: image
SiZE: 250Ko
NOTE: w1600*h1066

» ARNOR-Maxam  2    (Rerelease  DISC)    ENGLISHDATE: 2014-05-05
DL: 493
TYPE: image
SiZE: 543Ko
NOTE: w1604*h848
 

Media/Support:
» Arnor-Maxam  2    (Rerelease  DISC)    ENGLISHDATE: 2015-11-11
DL: 320
TYPE: image
SiZE: 152Ko
NOTE: Scan by Loic DANEELS ; w928*h584

Manuel d'utilisation & doc:
» Arnor-Maxam  2    (Release  DISC)    ENGLISHDATE: 2024-04-06
DL: 11
TYPE: PDF
SiZE: 9700Ko
NOTE: Uploaded by CPCLOV ; 172 pages/PDFlib v1.6

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Arnor - Protext - Making the Most of Protext (Amstrad Computer User)
» Applications » Mona -> Maxam Converter (CPC Amstrad International)
» Applications » Maxam Monobloc
» Applications » Arnor - Prospell Rom (Amslive fanzine)
» Applications » Arnor - Model Universe
» Applications » Model Universe (Arnor)
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 281 millisecondes et consultée 8886 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.