Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.sys.dec > #226 > unrolled thread
| Started by | koehler@eisner.nospam.encompasserve.org (Bob Koehler) |
|---|---|
| First post | 2011-04-18 07:56 -0500 |
| Last post | 2011-04-18 20:36 -0700 |
| Articles | 9 — 3 participants |
Back to article view | Back to comp.sys.dec
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: QBUS Prototyping koehler@eisner.nospam.encompasserve.org (Bob Koehler) - 2011-04-18 07:56 -0500
Re: QBUS Prototyping Johnny Billquist <bqt@softjar.se> - 2011-04-18 08:07 -0700
Re: QBUS Prototyping moroney@world.std.spaamtrap.com (Michael Moroney) - 2011-04-18 17:26 +0000
Re: QBUS Prototyping koehler@eisner.nospam.encompasserve.org (Bob Koehler) - 2011-04-18 12:53 -0500
Re: QBUS Prototyping Johnny Billquist <bqt@softjar.se> - 2011-04-18 20:35 -0700
Re: QBUS Prototyping moroney@world.std.spaamtrap.com (Michael Moroney) - 2011-04-19 15:34 +0000
Re: QBUS Prototyping Johnny Billquist <bqt@softjar.se> - 2011-04-19 09:47 -0700
Re: QBUS Prototyping koehler@eisner.nospam.encompasserve.org (Bob Koehler) - 2011-04-18 12:49 -0500
Re: QBUS Prototyping Johnny Billquist <bqt@softjar.se> - 2011-04-18 20:36 -0700
| From | koehler@eisner.nospam.encompasserve.org (Bob Koehler) |
|---|---|
| Date | 2011-04-18 07:56 -0500 |
| Subject | Re: QBUS Prototyping |
| Message-ID | <WgK6B$GCJWnT@eisner.encompasserve.org> |
In article <hr19ad$m2m$1@Iltempo.Update.UU.SE>, Johnny Billquist <bqt@softjar.se> writes: > > (Oh, and a VAX is not a PDP... :-) That's right. No VAX ever implemented the MARK instruction. Now can you find a PDP-11 programmer who actually used it?
[toc] | [next] | [standalone]
| From | Johnny Billquist <bqt@softjar.se> |
|---|---|
| Date | 2011-04-18 08:07 -0700 |
| Message-ID | <iohk2q$kmg$2@Iltempo.Update.UU.SE> |
| In reply to | #226 |
On 2011-04-18 05:56, Bob Koehler wrote:
> In article<hr19ad$m2m$1@Iltempo.Update.UU.SE>, Johnny Billquist<bqt@softjar.se> writes:
>>
>> (Oh, and a VAX is not a PDP... :-)
>
> That's right. No VAX ever implemented the MARK instruction. Now
> can you find a PDP-11 programmer who actually used it?
I used it.
But only to test how to, and then decided "never more". :-)
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt@softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
[toc] | [prev] | [next] | [standalone]
| From | moroney@world.std.spaamtrap.com (Michael Moroney) |
|---|---|
| Date | 2011-04-18 17:26 +0000 |
| Message-ID | <iohs8j$ha6$1@pcls6.std.com> |
| In reply to | #229 |
Johnny Billquist <bqt@softjar.se> writes: >On 2011-04-18 05:56, Bob Koehler wrote: >> In article<hr19ad$m2m$1@Iltempo.Update.UU.SE>, Johnny Billquist<bqt@softjar.se> writes: >>> >>> (Oh, and a VAX is not a PDP... :-) >> >> That's right. No VAX ever implemented the MARK instruction. Now >> can you find a PDP-11 programmer who actually used it? >I used it. >But only to test how to, and then decided "never more". :-) I'm guessing that instruction was developed for some compiler(s) which had some bizarre linkages for subroutines, and very few, if any, assembly language programmers ever used it, beyond trying to figure out what to do with it. (next question, which compiler(s) used it?)
[toc] | [prev] | [next] | [standalone]
| From | koehler@eisner.nospam.encompasserve.org (Bob Koehler) |
|---|---|
| Date | 2011-04-18 12:53 -0500 |
| Message-ID | <i04h6QgHCxQo@eisner.encompasserve.org> |
| In reply to | #231 |
In article <iohs8j$ha6$1@pcls6.std.com>, moroney@world.std.spaamtrap.com (Michael Moroney) writes: > > I'm guessing that instruction was developed for some compiler(s) which had > some bizarre linkages for subroutines, and very few, if any, assembly > language programmers ever used it, beyond trying to figure out what to do > with it. I've worked with non-stack oriented systems that passed their arguments via memory resident linkages. MARK looked to me like an attempt to do something like that, but in a way that it actually had to use a stack.
[toc] | [prev] | [next] | [standalone]
| From | Johnny Billquist <bqt@softjar.se> |
|---|---|
| Date | 2011-04-18 20:35 -0700 |
| Message-ID | <ioivtk$4ss$1@Iltempo.Update.UU.SE> |
| In reply to | #231 |
On 2011-04-18 10:26, Michael Moroney wrote:
> Johnny Billquist<bqt@softjar.se> writes:
>
>> On 2011-04-18 05:56, Bob Koehler wrote:
>>> In article<hr19ad$m2m$1@Iltempo.Update.UU.SE>, Johnny Billquist<bqt@softjar.se> writes:
>>>>
>>>> (Oh, and a VAX is not a PDP... :-)
>>>
>>> That's right. No VAX ever implemented the MARK instruction. Now
>>> can you find a PDP-11 programmer who actually used it?
>
>> I used it.
>> But only to test how to, and then decided "never more". :-)
>
> I'm guessing that instruction was developed for some compiler(s) which had
> some bizarre linkages for subroutines, and very few, if any, assembly
> language programmers ever used it, beyond trying to figure out what to do
> with it.
One rumour has it that it was developed in order to extend some patent
or something.
Another would be that they were just crazy.
I've not seen a single compiler use the subroutine linkage that
explicitly makes the MARK instruction meaningful, and besides. It is not
usable if you have split I/D space.
> (next question, which compiler(s) used it?)
I have no idea.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt@softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
[toc] | [prev] | [next] | [standalone]
| From | moroney@world.std.spaamtrap.com (Michael Moroney) |
|---|---|
| Date | 2011-04-19 15:34 +0000 |
| Message-ID | <ioka2m$bee$1@pcls6.std.com> |
| In reply to | #236 |
Johnny Billquist <bqt@softjar.se> writes: >One rumour has it that it was developed in order to extend some patent >or something. I heard the same little birdie, and it certainly makes sense, to make the instruction set unique. Someone could probably find another processor or processors that essentially implement each of the other PDP-11 instructions. Kind of like deliberate errors added to copyrighted maps. >Another would be that they were just crazy. That certainly would have helped! >I've not seen a single compiler use the subroutine linkage that >explicitly makes the MARK instruction meaningful, and besides. It is not >usable if you have split I/D space. I won't claim there is one, esp. if it doesn't work with split I/D space. >> (next question, which compiler(s) used it?) >I have no idea.
[toc] | [prev] | [next] | [standalone]
| From | Johnny Billquist <bqt@softjar.se> |
|---|---|
| Date | 2011-04-19 09:47 -0700 |
| Message-ID | <iokeab$ja3$1@Iltempo.Update.UU.SE> |
| In reply to | #243 |
On 2011-04-19 08:34, Michael Moroney wrote:
> Johnny Billquist<bqt@softjar.se> writes:
>
>> One rumour has it that it was developed in order to extend some patent
>> or something.
>
> I heard the same little birdie, and it certainly makes sense, to make the
> instruction set unique. Someone could probably find another processor or
> processors that essentially implement each of the other PDP-11
> instructions. Kind of like deliberate errors added to copyrighted maps.
Yeah.
>> Another would be that they were just crazy.
>
> That certainly would have helped!
:-)
>> I've not seen a single compiler use the subroutine linkage that
>> explicitly makes the MARK instruction meaningful, and besides. It is not
>> usable if you have split I/D space.
>
> I won't claim there is one, esp. if it doesn't work with split I/D space.
And it won't. The idea with the MARK instruction is that it is pushed on
the stack. At subroutine return, you are then supposed to jump to where
the stack pointer points, and execute there, which is on the stack. This
will clean up the stack, and restore PC.
So stack needs to be in I-space. But for all other purposes stack is in
D-space. So in short, stack needs to be in both I-space and D-space for
the MARK instruction to work.
So it can't be split. Pretty useless, if you ask me.
And all just for making the cleaning of the stack from arguments to the
function a little more streamlined. Having just an ADD #n,SP works just
as fine, and do work with split I/D-space. :-)
The difference being that the caller needs to clean the stack explicitly
after a call, while with MARK, the caller push the MARK before calling,
and the stack is cleaned as a part of the return.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt@softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
[toc] | [prev] | [next] | [standalone]
| From | koehler@eisner.nospam.encompasserve.org (Bob Koehler) |
|---|---|
| Date | 2011-04-18 12:49 -0500 |
| Message-ID | <ozUAgxVPcJz7@eisner.encompasserve.org> |
| In reply to | #229 |
In article <iohk2q$kmg$2@Iltempo.Update.UU.SE>, Johnny Billquist <bqt@softjar.se> writes: > > I used it. > But only to test how to, and then decided "never more". :-) Yes, I did that once. It was quite painfull. It looked to me like whoever designed it didn't actually get what he intended.
[toc] | [prev] | [next] | [standalone]
| From | Johnny Billquist <bqt@softjar.se> |
|---|---|
| Date | 2011-04-18 20:36 -0700 |
| Message-ID | <ioivvr$4ss$2@Iltempo.Update.UU.SE> |
| In reply to | #232 |
On 2011-04-18 10:49, Bob Koehler wrote:
> In article<iohk2q$kmg$2@Iltempo.Update.UU.SE>, Johnny Billquist<bqt@softjar.se> writes:
>>
>> I used it.
>> But only to test how to, and then decided "never more". :-)
>
> Yes, I did that once. It was quite painfull. It looked to me
> like whoever designed it didn't actually get what he intended.
Yes. That sounds like a reasonable guess.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt@softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
[toc] | [prev] | [standalone]
Back to top | Article view | comp.sys.dec
csiph-web