Chapter 11 Writing Macro Control Statements
214 Local Symbol Declaration (local)
Usage example
An example using the local directive is shown below.The assembled list file is shown next. You can see that each time the local symbol is expanded, it ischanged to ??00001, ??00002, ...
loc macro p1
local lab1, lab2
mov p1, D0
lab1 cmp 0, D0
jmp lab2
mov 1, A1
lab2 mov 0, A0
endm
;
_TEXT section CODE, PUBLIC, 1
loc 0
loc 1
local.lst Page 1
*** Panax Series MN1030 Cross Assembler ***
Loc Object Line Source
M1 loc macro p1
2 local lab1, lab2
3 mov p1, D0
4 lab1 cmp 0, D0
5 jmp lab2
6 mov 1, A1
7 lab2 mov 0, A0
8 endm
9;
10 _TEXT section CODE, PUBLIC, 1
M11 loc 0
M11+ local lab1, lab2
00000000 8000 11+ mov 0, D0
00000002 A000 11+ ??00001 cmp 0, D0
00000004 DC00000000 +11+ jmp ??00002
00000009 9501 11+ mov 1, A1
0000000b 9000 11+ ??00002 mov 0, A0
M12 loc 1
M12+ local lab1, lab2
0000000d 8001 12+ mov 1, D0
0000000f A000 12+ ??00003 cmp 0, D0
00000011 DC00000000 +12+ jmp ??00004
00000016 9501 12+ mov 1, A1
00000018 9000 12+ ??00004 mov 0, A0