The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: milov@cs.uwlax.edu (Milo Velimirović)
Subject: [TUHS] PDP-11/70 SPL
Date: Mon, 28 Mar 2016 11:52:06 -0500	[thread overview]
Message-ID: <C8DE6606-7E41-4D80-901C-1416D0A01B61@cs.uwlax.edu> (raw)
In-Reply-To: <56F95DAD.4050105@update.uu.se>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1810 bytes --]


> On Mar 28, 2016, at 11:37 AM, Johnny Billquist <bqt at update.uu.se> wrote:
> 
> Thanks for some additional information.
> 
> On 2016-03-28 18:16, Milo Velimirović wrote:
>> 
>>> On Mar 28, 2016, at 9:44 AM, Johnny Billquist <bqt at update.uu.se> wrote:
>>> 
>>> On 2016-03-28 16:18, Noel Chiappa wrote:
>>>>     > From: Dave Horsfall <dave at horsfall.org>
>>>> 
>> 
>> [ Wait & RK discussion snipped.]
>> 
>>> 
>>> 
>>>>     > I know that Kevin Dawson (I think) tried it on my /40 as well
>>>> 
>>>> The 11/40 does not have the SPL instruction; see the '75-'76 PDP-11 Processor
>>>> Handbook, pg. 4-5. (Again, sorry, just want to be accurate.)
>>> 
>>> This is also a pretty important point. But one which also begs the question how the splxxx() functions in Unix worked back then. Or did Unix not use this pattern and these functions back when the 11/40 was relevant?
>> 
>> These functions existed in V6 and can be found in the file, m40.s, that was assembled with the rest of the kernel to generate a unix that would run on a /40 class machine.
> 
> Aha. Great. Thanks. Yes, BIS and BIC on the PSW obviously works, but this would definitely not block interrupts for the next instruction. So at least in that case, a WAIT could result in the kernel sitting around waiting for the next interrupt. I don't really think DEC intend WAIT to be used in the way Unix uses it, and it don't really have the properties that would be ideas for Unix. Also somewhat indicated by the fact that DEC did not use WAIT this way themselves.

I don’t have access to the RT11 or RSX source to see how DEC used the WAIT instruction, but here’s how UNIX did it on the 11/40. It’s ridiculously simple as there’s no display register to manage.

_idle:
	mov	PS,-(sp)
	bic	$340,PS
	wait
	mov	(sp)+,PS
	rts	pc


 - Milo



  reply	other threads:[~2016-03-28 16:52 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-28 14:18 Noel Chiappa
2016-03-28 14:44 ` Johnny Billquist
     [not found]   ` <0BAE4C73-C72B-453E-BEBD-EA34CEEA9853@uwlax.edu>
2016-03-28 16:37     ` Johnny Billquist
2016-03-28 16:52       ` Milo Velimirović [this message]
  -- strict thread matches above, loose matches on Subject: below --
2016-03-28 13:43 Noel Chiappa
     [not found] <mailman.171.1459115387.15972.tuhs@minnie.tuhs.org>
2016-03-27 23:07 ` Johnny Billquist
2016-03-28 13:37   ` Dave Horsfall
2016-03-28 15:18     ` John Cowan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=C8DE6606-7E41-4D80-901C-1416D0A01B61@cs.uwlax.edu \
    --to=milov@cs.uwlax.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).