# TASM: Probleme mit Makro-Parametern



## asmfreak (12. Juni 2008)

Hallo,

ich habe Probleme mit dem Ersetzen von Parametern bei der Makroexpansion durch TASM.

Ich habe folgendes Makro geschrieben:

```
Partitions MACRO PartNames
  PartCount = 0
  IRP PartName, <PartNames>
    PartDef&PartName& EQU %PartCount
    PartCount = PartCount + 1
  ENDM
ENDM
```
Das Makro soll, wenn es folgendermaßen aufgerufen wird

```
Partitions <Dos622, Win98, WinXP>
```
folgende Anweisungen ersetzen:

```
PartDefDos622 EQU 0
PartDefWin98  EQU 1
PartDefWinXP  EQU 2
 
PartCount = 3
```
Wenn ich das generierte Listing anschaue, erkenne ich zwei Probleme:

1. &PartName& wird nicht ersetzt, d.h. es wird einfach dreimal hintereinander ein Bezeichner mit dem Namen PartDefPartName definiert, was ja nicht Sinn der Sache ist.

2. %PartCount wird ebenfalls nicht ausgewertet (d.h. durch die entsprechende Zahl ersetzt).

Habe ich die Operatoren & und % irgendwie falsch verwendet ? Ich habe leider noch nicht viel Erfahrung mit Makros.

Gibt es eigentlich irgendwo im Internet eine Referenz zu TASM ? Das meiste, was ich bisher gefunden habe, bezieht sich nur auf MASM.


----------

