If I would try to find the putc call myself, is the
most used calling
convention on the VAX putting the character on the stack or should I
put it in R0 or something?
Most used? That would probably be a CALLS/CALLG call, in which case
the arguments are in memory, on the stack for CALLS but potentially
anywhere for CALLG.
But, what little looking at the code I've done gives me the impression
it uses jsb/rsb style calls a lot more than many things do, in which
case the argument could be pretty much anywhere. For example, from
isa300-rom...
12b4: .byte 21
12b5: .ascii "\n\n\r%VAXELN system initializing\n\n\r"
1e29: movab 0x12b4,r1
1e2e: bsbw 0x3b07
...the code at 3b07 takes its argument in r1:
3b07: movzbl (r1)+,-(sp)
3b0a: beql 0x3b23
3b0c: brb 0x3b19
3b0e: movzwl (r1)+,-(sp)
3b11: beql 0x3b23
3b13: brb 0x3b19
3b15: movzbl $ff,-(sp)
3b19: movzbl (r1)+,r0
3b1c: beql 0x3b23
3b1e: bsbb 0x3ab7
3b20: sobgtr (sp),0x3b19
3b23: tstl (sp)+
3b25: rsb
Unfortunately, while this particular piece of code is clearly a string
print routine, it's not much help, because the code at 3ab7 ends up
calling through a run-time-set pointer:
3ab7: tstl (sp)
3ab9: blss 0x3ac6
3abb: pushl r0
3abd: pushl $3
3abf: calls $2,*04c8(r8)
(there's more, of course, but it's not much more helpful).
So the answer is a definite "maybe". :(
/~\ The ASCII Mouse
\ / Ribbon Campaign
X Against HTML mouse at
rodents-montreal.org
/ \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B