[Simh] A tutorial introduction to programming PDP-11 Macro-11 Assembly in RT-11 v5.3

Will Senn will.senn at gmail.com
Wed Jan 20 21:28:30 EST 2016



On 1/20/16 7:37 PM, Johnny Billquist wrote:
>
> I see you are having fun. :-)
>
> A couple of comments:
>
> ODT actually stands for On-line Debugging Tool, not Online Debugging 
> Technique.
>
> You display the map file after linking with /debug, but the actual map 
> file included was not from linking with /debug. :-)
>
> I might be wrong, but I thought ODT works the same under RT-11 as 
> under RSX, in which case you have several errors when listing and 
> explaining commands.
>
> ;B will not remove breakpoints. It will actually set a breakpoint at 
> the current location, using the first "free" breakpoint register.
> B will remove all breakpoints, and nB will remove an explicit breakpoint.
> ;nB will set a breakpoint using breakpoing register n.
>
> G will run the program. The semicolon is not needed. An argument 
> before G becomes the address where it starts. If no argument is given, 
> it will start at the beginning of the program.
> The same with P, you can give an argument, which means it will pass 
> that many breakpoints before actually stopping.
>
> S will singlestep, and if you give an argument, it will singlestep 
> that many instructions.
>
> Now, this is how it works in RSX, so it *might* be that RT-11 works 
> differently, but I would not have thought so. Maybe recheck this? (It 
> might also just be that you are using an older version of ODT than was 
> is "current".)
>
> Your illustrations for words and bytes are inconsistent.
> For words, you say that the boundaries are bit 0 and 15, while for 
> bytes they are 0, 7 and 15. As you are describing the values giving 
> the low and high bits, the correct thing would be to sat that a word 
> have the boundaries at bit 0 and 15, and when dealing with bytes, the 
> low byte is boundaries at bit 0 and 7, while the high byte have 
> boundaries at bit 8 and 15.
>
> "Current directory". RT-11 do not have a concept of a current 
> directory, since there is only one directory on any device. However, 
> unless I remember wrong, RT-11 do have the concept of the current 
> device. This is given by the logical name DSK: You can assign DSK: to 
> any device, and that will then be your default device.
> The system has a logical name SYS:. And in additional you have the 
> physical names for the different devices. And you can, of course, 
> create your own names as well, if you want. Such as SRC: where you 
> have source, if you want.
>
> Now, I'm not an RT-11 expert, so you probably should search around and 
> read some more documentation. But this might be some useful hints 
> anyway. :-)
>
>     Johnny
>
Johnny,

Good points all. I'll work on incorporating the changes tomorrow. The 
MAP thing was because I did multiple runs and when I "fixed" the format, 
I used the wrong source. Thanks for taking the time to read the tutorial!

Regards,

Will


More information about the Simh mailing list