[pups] Re: PDP11 - RQDX1 standalone format utility? --> XXDP

From: Jonathan Engdahl <j.r.engdahl_at_adelphia.net>
Date: Sun Feb 23 22:36:00 2003

Now that I think of it,

> 000137
> 145702

is wrong too. Assuming that the program is relocatable (which in this case
it probably is not), and you simply loaded the entire file into memory, it
would be offset by the 16 byte header, so you would want to jump to 145722.

I think I will remove that patch at 20 altogether.

Did you know that the output from PDPXASM can be loaded to a barely
twitching PDP-11 via VTserver? I used PDPXASM to write scope loops for an
RX02 (DSD 4140) board I resurrected.

--
Jonathan Engdahl
http://users.safeaccess.com/engdahl
"The things which are seen are temporary,
 but the things which are not seen are eternal."  II Cor. 4:18
----- Original Message -----
From: "Michael Davidson" <michael_davidson_at_pacbell.net>
To: "Jonathan Engdahl" <j.r.engdahl_at_adelphia.net>
Cc: <cctech_at_classiccmp.org>; <pups_at_minnie.tuhs.org>
Sent: Sunday, February 23, 2003 4:40 PM
Subject: Re: [pups] Re: PDP11 - RQDX1 standalone format utility? --> XXDP
> Jonathan Engdahl wrote:
>
> >I documented the procedure to extract a program from XXDP and put a
header
> >on it so that you can boot it from VTserver or a UNIX disk. It has been a
> >long time since I did this to ZRQCH0, so I practiced on the program that
I
> >think Christos needs (ZRQBC1) and sent it to him.
> >
> >There's a lot I don't know about the a.out header, so if someone can
improve
> >my method, let me know.
> >
> >http://users.safeaccess.com/engdahl/xxdp.htm#hackXXDP
> >
> There isn't very much to know about the a.out header,
> and what you are doing looks OK although I would probably
> have set a_text to 160000 and left a_data and a_bss as 0.
>
> While I am not really familiar with the BSD boot code that
> vtserver uses when loading a program I am almost certain that
> it will use the entrypoint address in the a.out header and
> not just jump to address 0. (remember it's an actual program
> loader that understands a.out format, not just something that
> only knows how to load a boot block and jump to it)
>
> This is confirmed by the fact that the code you are patching
> into the image at address 0 is wrong if you want it to get
> you to the restart address.
>
> In your example you have:
>
> 000020/ 000167
> 000022/ 145702
>
> If this was loaded at address 0 in memory and the boot code
> jumped to address 0, you would end up at 145706 *not* 145702
> (of course, you might very well get lucky and still land on
> an instruction boundary, but you would have skipped the first
> 2 words of the restart code).
>
> If this code were really necessary (and I'm 99.99% sure that
> it isn't) you would want either:
>
> 000137
> 145702
>
> or:
>
> 000167
> 145676
>
>
>
>
>
> _______________________________________________
> PUPS mailing list
> PUPS_at_minnie.tuhs.org
> http://minnie.tuhs.org/mailman/listinfo/pups
Received on Sun Feb 23 2003 - 22:36:00 GMT

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:35:56 BST