Subject: FOCAL and MUCAL

From: [email-masked] (Henry Lowengard)
Date: 23 Oct 1993 11:36:07 -0400

Because FOCAL was available as source through DECUS, we
obtained a copy at my high school (Loomis Chaffee in 
Windsor, CT) around '72 or so. We has a PDP/8e with
2 fields of memory... 
 Some time previously, a few of us students had discovered
the phenomenon later known as 'the kludge harp' where
noise picked up over a radio could be pitched and used
as a sine wave oscillator. 
The trick was to run freely through core and then jump
somewhere. As a matter of fact, it made for the shortest
(or longest) possible 'useful' PDP8 program: fill all
of core (ah - at last I can refer correctly to core as core)
with 0's (AKA AND instructions) and way up at 7777 put
   JMP I Z 10
Stick a radio near the machine and this makes a siren noise!
  but back to FOCAL.... I hacked in an instruction which 
would let you set up the second field as a giant kludge harp
running oscillator , so with the added programmable underwear
of FOCAL, I could do some crude algorithmic music compositions!
This new version of FOCAL I dubbed MUCAL. Sorry - I have no tapes
(paper or magnetic) . These same principals were useful when
programming a 8008 home-grown machine (with 1 1/4 K) for similar
purposes!
      jhhl
-- 
+---------------------------------------------------------------------------+
| jhhl   @panix.com    Henry Lowengard     43 W16 #2D NYC 10011-6320 USA    |
+---------------------------------------------------------------------------+

---

From: [email-masked] (Frank - Hardware Hacker - Borger)
Date: Sat, 23 Oct 1993 19:01:00 GMT

In article <[email-masked]>, [email-masked] (Henry Lowengard) writes...
>Stick a radio near the machine and this makes a siren noise!

	There was a DECUS program we obtained which let you play music,
	(up to 4 part harmony,) by twanging on core and sticking a radio near
	the CPU. (A later improvement was to hang an amp and a speaker on
	one output line.)

	The program came with several examples, including "The Entertainer"

Frank R. Borger - Physicist     ___      It's 9:00 am. Do you know where your
Michael Reese - U of Chicago   |___      children are? Well, it depends on
Center for Radiation Therapy   | |_) _   whether or not the Judge opened
net: [email-masked]    | \|_)  the schools today.
ph: 312-791-8075 fa: 791-2517       |_)

---

From: [email-masked]
Date: Tue, 26 Oct 1993 14:29:13 GMT

>From article <[email-masked]>, by [email-masked] (Henry Lowengard):

>   The best we high school students came up with was 2 part, but we made
> an 'autobooting' tape which played Bach's prelude #2 ....

If anyone has any of these old paper tapes, I'd dearly love to try to
run them!  Please, hunt them up if you have them!

					Doug Jones
					[email-masked]

---

From: [email-masked]
Date: Tue, 26 Oct 1993 14:31:18 GMT

>   Now, I used to be able to do the RIM loader sight unseen in a few seconds,,
> but I'm surprised it hasn't shown up in signatures here.
> (that's a subtle request for an addition to the FAQ)

   1            /	RIM LOADERS FOR PAPER TAPE INPUT
   2            
   3            /UNCOMMENT FOLLOWING FOR TTY INPUT
   4            /KSFIOT= KSF
   5            /KRBIOT= KRB
   6            /KCCIOT= KCC
   7            /KRSIOT= KRS
   8            /HSR=    0
   9            
  10            /UNCOMMENT FOLLOWING FOR HIGH SPEED READER INPUT
  11            KSFIOT= RSF
  12            KRBIOT= RRB RFC
  13            KCCIOT= RFC
  14            KRSIOT= RRB RFC
  15            HSR=    1
  16            
  17            / FIXUP TO CHANGE BRANCH TARGET FROM TTYC TO HSRC
  18            HSRF=	HSRC-TTYC^HSR
  19            
  20            *7756
  21 07756 6014 BEG,	KCCIOT		/ INITIALIZE READER
  22 07757 6011 TTYC,	KSFIOT		/ AWAIT INPUT
  23 07760 5357 	JMP	TTYC
  24 07761 6016 	KRBIOT		/ GET A CHARACTER
  25 07762 7106 	CLL RTL
  26 07763 7006 	RTL
  27 07764 7510 	SPA		/ SKIP IF HIGH BIT OF 8 BIT CHAR RESET
  28 07765 5374 	JMP	TTYC+HSRF	/ ELSE LOOP (SKIPPING LEADER)
  29 07766 7006 	RTL		/ 6 BIT CHAR IN AC[0-5], LINK=BIT 7
  30 07767 6011 	KSFIOT		/ AWAIT INPUT
  31 07770 5367 	JMP	.-1	
  32 07771 6016 	KRSIOT		/ OR 6 BIT CHAR INTO AC[6-12]
  33 07772 7420 	SNL		/ SKIP NEXT IF BIT 7 OF CHAR 1 WAS SET
  34 07773 3776 	DCA I	TEMP	/ STORE DATA
  35 07774 3376 HSRC,	DCA	TEMP	/ SET ADDRESS OF NEXT DATA WORD
  36 07775 5357 	JMP	BEG+HSR	/ GO GET NEXT DATA WORD
  37 07776 0000 TEMP,	.-.		/ ADDRESS OF NEXT DATA WORD
  38            $

---

From: [email-masked] (Henry Lowengard)
Date: 25 Oct 1993 19:58:13 -0400

>	The program came with several examples, including "The Entertainer"
  The best we high school students came up with was 2 part , but we made
an 'autobooting' tape which played Bach's prelude #2 (I think) from Preludes
 and fugues. The technique was worked out by friends of mine who wouldn't
tell me how they did it. (I figured it out eventually). 
A particularly beautiful piece could be played by aiming the data pointer
at the RIM loader code. 
  Now, I used to be able to do the RIM loader sight unseen in a few seconds,,
but I'm surprised it hasn't shown up in signatures here.
(that's a subtle request for an addition to the FAQ)
Somewhere around here I have the tape with my diasassembly package on it..
it did an analysis of how the locations were used and assigned mnemonics
based on that usage! (i.e. if a location was only ANDed, it would be called
MASK01 or something like that). 
  Not only did I have the PDP/8 in highschool, but at college (Trinity College
 Hartford CT) they had a venerable PDP/8 running TSS8 which was by legend
the oldest running PDP8 at the time (74-75), it having a serial number
in the low 30's. We found a mate for it to replace old failing core, 
but eventually replaced it with a PDP 11/45, and now, I suppose, a VAX of
some sort. 
The last  working PDP8 I ever saw was in '79 at the Rockefeller Institute
     jhhl
-- 
+---------------------------------------------------------------------------+
| jhhl   @panix.com    Henry Lowengard     43 W16 #2D NYC 10011-6320 USA    |
+---------------------------------------------------------------------------+

---

From: [email-masked] (gordon hlavenka)
Date: Tue, 26 Oct 1993 20:50:34 GMT

>as a sine wave oscillator. 

While I was in the U.S. Navy, I had the luxury of being allowed to
have my pdp8/e onboard the ship (!)  There was an unused office space
that I set it up in.  Strapped an ASR-33 stand to the bulkhead and
started in to having fun.

Of course everyone who has hacked an 8e (or probably anything else) in
an *.edu environment has discovered the musical possibilities.  My
favorite little ditty was a FOCAL program which played the classic
4-note "Twilight Zone" theme over and over.  Now, a couple years out
of high school, I broke out that old paper tape again.

One evening, as I was reading a magazine in my little computer room
(with TZ in the background) I decided to drop in on one of my pals who
was standing watch in CIC.  (CIC stands for "Combat Information
Center", and is where most of the weapons control consoles and
navigational consoles are located.)

When I walked in, there was a minor commotion going on over bu the
SLQ-32 console.  SLQ-32 was (at the time) the absolute super-duperest
"passive radar" system in the fleet.  Using SLQ-32, you could identify
and track other ships by examining their RF emissions.  Some versions
of the SLQ-32 included active jamming capabilities as well.

When a new RF signal ("emitter") was spotted, the SLQ-32's computer
(If the operator wasn't playing Pong :-) would try to classify it
based on a dictionary of past experience.

Anyway, the SLQ-32 had just picked up a new emitter.  It seemed to be
pretty close to the ship, since it covered a pretty wide bearing range.
And the PRF didn't match anything in the catalog.  The EW2 running the
console was suspecting that he had some kind of equipment failure.  He
decided to manually time the PRF, so he turned on the...  SPEAKER!!!

CIC was filled with everyone's favorite four notes.

I went back and turned off the 8e, which was on a table 4 feet below
the SLQ-32's port antenna.

-- 
----------------------------------------------------
Gordon S. Hlavenka           [email-masked]
Proud father of Daniel Scott     born August 9, 1993