On 24 Feb 2007, at 15:52, Rich Mellor wrote:

>
>>
>> On 23 Feb 2007, at 18:44, Daniele Terdina wrote:
>>
>>>
>>> What would prevent GWASS to be augmented to 'understand' Qmac
>>> macros? (In
>>> general terms... I'm not familiar with either assembler having only
>>> used
>>> Metacomco's assembler myself).
>>
>>
>> GWASS macros, like HISOFT assemblers and others (in fact all others
>> that I have seen  except Qmac) use \1, \2 etc to signal parameter 1,
>> parameter 2 etc. Qmac uses names on the first line of the macro after
>> the word MACRO. So
>>
>> fiddle_de_dee        MACRO par1,par2
>>
>> would start a Qmac macro.
>>
>> Later you might have inside this macro
>>
>>      DC.L par1
>>
>> GWASS would have
>>
>> fiddle_de_dee        MACRO
>>
>>                              DC.L    \1
>>
>> I will most certainly not myself  alter GWASS to define macros in the
>> non standard Qmac form.
>>
>> To alter GWASS would be possible, because almost anything is possible
>> in computing, but I do not think it worth it. After all I have
>> already altered ALL the macros used in SMSQE so that the altered
>> versions can be used instead of the Qmac ones, so there almost
>> nothing to  be gained by altering GWASS to read Qmac macros.
>>
>> It would be more to the point for someone to alter Qmac so that it
>> could read the standardish format of GWASS macros. But that would be
>> (a) impossible and (b) lead to a more expensive Qmac I imagine.
>>
>> These are just my opinions and anyone is free to look at the source
>> code of GWASS and make suggestions as to how the change might be  
>> made.
>
> The problem is that currently, you need two versions of the source  
> files
> presumably, dependant upon whether GWASS or QMAC is to be used to  
> assemble
> the sources.
>

I have produced SMSQE source which allows the use of either GWASS  
macros or Qmac macros by the choice of one of two directories within  
the source code. One directory contains all the macros in Qmac form  
and the other all the macros in GWASS form. The rest of the source  
code remains the same for both GWASS and Qmac.

>
> This means that non 68020+ users cannot currently compile the source
> unless they purchase QMAC (Oh dear it costs £15 for Quanta members  
> - that
> is such a huge outlay).
>

Yes

>
> However, one option would be to write a basic program which could  
> search
> through the source files and replace the parameters with \1, \2 etc
>
> This should not be too difficult to achieve, but it does mean that  
> only
> one set of sources needs to be maintained and it would be easier to
> assemble them with other macro assemblers.
>
> I have the QMAC manual here - it looks as though you can have:
>
> fiddle_de_dee MACRO par1,par2,par3.... etc
> fiddle_de_dee MACRO par1 par2 par3.... etc
>
> The main problem is if the sources use the alternative method of  
> accessing
> the parameters, as
>
> DC.L par1                     and
> DC.L .PARM(1)
>
> are both the same.  .NPARMS is another function which returns the  
> number
> of parameters passed, therefore you could presumably create this in  
> a loop
> to read all of the parameters one by one.  Do the sources contain  
> these
> variants?
>


I'm afraid the problem is far more complicated than just the naming  
of parameters. The only way GWASS or Qmac could deal with both forms  
of macro would be by writing a separate parser for each. There would  
of course have to be a switch somewhere to tell the assembler which  
macro type to expect.

George


_______________________________________________
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm

Reply via email to