🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.folklore.computers
Article #4308

PDP-10 folklore (was: Re: Just *how* hard is a GO playing program?)

#4308
From: m... Mark Crispin
Date: Thu, 06 Sep 1990 23:00
41 lines
3074 bytes
In article <59...@bbn.BBN.COM> le...@BBN.COM (Joel B Levin) writes:
>[PDP-10 assembly language] was a little tricky to learn to program with:
>(1) the available
>operations were so rich it was often hard to pick the right one and

Fortunately, it rarely mattered which one you picked.  You could have
your own religion on whether 'twas better to do MOVSI or HRLZI [two
instructions that do the exact same thing].

>(2) it's really surprising to learn that JUMP and SKIP are always
>no-ops.  :-)

Ah, a well-beloved feature.  The PDP-10 had gonzo symmetry; JUMP
(branch to memory location based on register comparison with zero) and
SKIP (load register if non-zero with contents of memory location, skip
next instruction based on memory location comparison with zero) were
logical operations which took suffixes indicating under what result of
a comparision with zero the action was to be taken.  Those suffixes
were <blank> (never), A (always), E (equal), LE, GE, L, G, and N (not
equal).

JUMP (jump never) was a true no-op; the later microcoded processors
didn't even do the register comparison.  SKIP, however, was *not* a
no-op.  If the register argument was non-zero, SKIP was equivalent to
a MOVE.  In any case, SKIP always referenced memory, even if the
register argument was zero (register zero was never loaded by an form
of SKIP).  It was therefore the preferred instruction to use to force
a page fault (and possible swap in) of a memory page prior to entering
critical (either time-critical or swap-disallowed) code.  Since the
normal response to a "no map for page" fault (what Unix people would
call "segmentation violation") was to create the page, SKIP could also
be used to create pages in memory and, if mapped to a non-existant
file page, file pages as well!

 _____   | ____ ___|___   /__ Mark ("Gaijin") Crispin  "Gaijin! Gaijin!"
 _|_|_  -|- ||   __|__   /  / R90/6 pilot, DoD #0105   "Gaijin ha doko?"
|_|_|_|  |\-++-  |===|  /  /  Atheist & Proud          "Niichan ha gaijin."
 --|--  /| ||||  |___|    /\  (206) 842-2385/543-5762  "Chigau.  Gaijin ja nai.
  /|\    | |/\| _______  /  \ M...@CAC.Washington.EDU    Omae ha gaijin darou"
 / | \   | |__|  /   \  /    \"Iie, boku ha nihonjin." "Souka. Yappari gaijin!"
Hee, dakedo UNIX nanka wo tsukatte, umaku ikanaku temo shiranai yo.
Technical Details
Message-ID: <7171@milton.u.washington.edu>
Path: mbox-mo1.pugleaf.net!gmdzi!unido!mcsun!uunet!bu.edu!rpi!dali.cs.montana.edu!milton!Tomobiki-Cho!mrc
References: <1990Aug30.123237.17904@nmt.edu> <1547@front.se> <1990Sep3.053502.18445@cbnewsh.att.com> <7041@milton.u.washington.edu> <59316@bbn.BBN.COM>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!gmdzi!unido!mcsun!uunet!bu.edu!rpi!dali.cs.montana.edu!milton!Tomobiki-Cho!mrc
From: m...@Tomobiki-Cho.CAC.Washington.EDU (Mark Crispin)
Newsgroups: alt.folklore.computers
Subject: PDP-10 folklore (was: Re: Just *how* hard is a GO playing program?)
Message-ID: <7171@milton.u.washington.edu>
Date: 6 Sep 90 23:00:55 GMT
References: <1990Aug30.123237.17904@nmt.edu> <1547@front.se> <1990Sep3.053502.18445@cbnewsh.att.com> <7041@milton.u.washington.edu> <59316@bbn.BBN.COM>
Sender: ne...@milton.u.washington.edu
Organization: Mendou Zaibatsu, Tomobiki-Cho, Butsumetsu-Shi
Lines: 41
Posted: Fri Sep  7 00:00:55 1990
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit