[Simh] Macro-11 Macro library question (RT11 running in SimH PDP11)
Will Senn
will.senn at gmail.com
Fri Feb 5 10:48:14 EST 2016
All,
A couple of questions:
1. Do any of y'all know where there is a working example of an assembly
language program that includes a user defined macro in a library file?
2. Can you tell me what I'm doing wrong with this simple macro example?
Here's what I tried (that didn't work) after reading the manuals:
edit et2.mac
.TITLE ETTYIN
.MCALL .TTYOUT,.TIN
START: MOV #BUFFER,R1
CLR R2
INLOOP: .TIN (R1)+
INC R2
CMPB #12,R0
BNE INLOOP
MOV #BUFFER,R1
OUTLOOP:.TTYOUT (R1)+
DEC R2
BEQ START
BR OUTLOOP
BUFFER: .BLKW 64.
.END START
edit tin.mac
.MACRO TIN CHAR
EMT ^O340
BCS .-2.
.IF NB <CHAR>
.IF DIF <CHAR>,R0
MOVB R0,CHAR
.ENDC
.ENDC
.ENDM
.END
lib/mac/c tin tin
macro et2/list/cross+tin.mlb/lib
?MACRO-E-Errors detected: 2
DK:ET2,DK:ET2/C=DK:ET2,DK:TIN.SML
The errors are due to the fact that .TIN/TIN (tried it both ways) is not
found:
1 .TITLE ETTYIN
U 2 .MCALL .TTYOUT,.TIN
3
4 000000 012701 000036' START: MOV #BUFFER,R1
5 000004 005002 CLR R2
OQ 6 000006 INLOOP: .TIN (R1)+
7 000006 005202 INC R2
8 000010 122700 000012 CMPB #12,R0
9 000014 001374 BNE INLOOP
10 000016 012701 000036' MOV #BUFFER,R1
11 000022 OUTLOOP:.TTYOUT (R1)+
12 000030 005302 DEC R2
13 000032 001762 BEQ START
14 000034 000772 BR OUTLOOP
15 000036 BUFFER: .BLKW 64.
16 000000' .END START
However, if I include the macro in the file, edit et1.mac:
.TITLE ETTYIN
.MCALL .TTYOUT
.MACRO TIN CHAR
EMT ^O340
BCS .-2.
.IF NB <CHAR>
.IF DIF <CHAR>,R0
MOVB R0,CHAR
.ENDC
.ENDC
.ENDM
START: MOV #BUFFER,R1
CLR R2
INLOOP: TIN (R1)+
INC R2
CMPB #12,R0
BNE INLOOP
MOV #BUFFER,R1
OUTLOOP:.TTYOUT (R1)+
DEC R2
BEQ START
BR OUTLOOP
BUFFER: .BLKW 64.
.END START
The program compiles/links/and runs fine and whatever strings I enter
are copied to output as expected. TIN is just the library macro .TTYIN
copied verbatim. I expect that my macro file is not proper or that it is
not being found by macro, although it complains if I supply a
non-existent file.
Insights appreciated.
More information about the Simh
mailing list