Blinking Light program for PDP-11

From: Tom Uban <uban_at_ubanproductions.com>
Date: Thu Dec 2 13:28:01 2004

At 01:32 PM 12/2/2004 -0500, you wrote:

> >Tom Uban wrote:
> >
> > Ashley,
> > Did you get a response on your question? One point
> > to keep in mind is that the various processor types
> > behave slightly differently. The typical method used
> > to do the "Cylon" lamp effect was to use the console
> > switch/display register (777570). A pseudo code program
> > would be something like this (translation left as an
> > exercise for you:-):
> >
> > Write '1' to console display register.
> > Lamp Loop:
> > Load spin count into register 2.
> > Spin Loop:
> > Decrement register 2.
> > Branch if non-zero to Spin Loop.
> >
> > Rotate the console display register value left.
> > Branch to Lamp Loop.
> >
> > This code will continually rotate one lamp from right to
> > left across the display. A more complex version would switch
> > directions when the lamp hits either end.
> >
> > Now for the problem. Only some processors (45, 70, perhaps
> > others, but I don't think the 35 or 40) support display of
> > the console switch/display register.
> >
> > There may be some other more generic method that works on
> > all processors, but I'm not sure what it might be...
>
>
>Hi Tom,
>
>I got a little "single rotating bit" program, coutesy of Guy Sotomayor,
>who's been a *BIG* help to me. I used this little program to do some
>basic testing on my PDP-11/40. It continually rotates one lamp across
>the display. This program was loaded as follows:
>
>Load address 001000
>Deposit 005000
>Deposit 005200
>Deposit 006100
>Deposit 000005
>Deposit 000775
>Load address 001000 and press Start.
>You should see a bit rotate around on the data LEDs.
>
>If anyone has any more interesting programs that can be toggled in
>for "blinking light" effects, I'd be interested in trying them out.
>
>After toggling in a couple of these types of things with the front
>panel last night, I decided to move on to bigger things. I hooked up
>an RL02 and was able to successfully boot RT11 v5.3, XXDP 2.5,
>and my Wofford Witch RSTS/E v7 system.
>
>Life is good!!!
>
>Ashley

Hi Ashley,

Good enough.

FWIW, Guy's program decodes to the following:

001000 005000 CLR R0
001002 005200 1: INC R0
001004 006100 ROL R0
001006 000005 RESET
001010 000775 JMP 1B

The instruction of interest is the RESET, which sends an INIT to
the UNIBUS for 10ms. It must also have the effect of displaying
the contents of R0 in the DATA display, or perhaps whatever register
was last referenced. I figured that there was an instruction which
would behave in this manor, but did not recall what it was...

--tom
Received on Thu Dec 02 2004 - 13:28:01 GMT

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:36:37 BST