Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!husc6!uwvax!rutgers!rochester!cornell!batcomputer!braner
From: braner@batcomputer.tn.cornell.edu (braner)
Newsgroups: comp.sys.atari.st
Subject: Re: Information about the linea routines.
Message-ID: <3025@batcomputer.tn.cornell.edu>
Date: Fri, 27-Nov-87 15:12:59 EST
Article-I.D.: batcompu.3025
Posted: Fri Nov 27 15:12:59 1987
Date-Received: Sun, 29-Nov-87 22:37:42 EST
References: <392@picuxa.UUCP>
Reply-To: braner@tcgould.tn.cornell.edu (braner)
Organization: Cornell Theory Center, Cornell University, Ithaca NY
Lines: 25
Keywords: Megamax, linea routines, AL
Summary: How to use AL in Megamax C

[]

I havn't used the linea stuff but use Megamax AL often.
You can access C variables 3 ways:

int extint;
func()
{
	register int regint;
	int intint;
asm {
	MOVE regint,...		/* access registers by name */
	MOVE intint(A6),...	/* local vars: name is offset from A6 */
	MOVE extint(A4),...	/* external vars: name is offset from A4 */
	DC.W 0xA001		/* this is how you would stick A_codes in */
	MOVE stuff,D0		/* returning a value from a function */
    }
}

Remember not to change A2-A7/D4-D7 in your asm{} code.  A0/A1/D0-D3
are free, A2/A3/D4-D7 are the register variables, A4-A7 are reserved.

Some of that will change in the new version (2.0) of the Megamax compiler.

- Moshe Braner