Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

8080 FOCAL Language ?

348 views
Skip to first unread message

Richard C. Secrist

unread,
May 26, 1989, 3:25:50 PM5/26/89
to

A friend is looking for a version of 8080 FOCAL that he known to
exist for CP/M. I have a Z-80 version of the language, if anyone
is interested, but he only runs an 8080. It is not on Royal Oak
or the CompuServe CPMFORUM. Guess I better get around to subscribing
to GEnie...

An alternative could be to pop a Z-80 in his DEC Robin (aka VT-180),
but I never heard of anybody trying it.

Thanks,
rcs.

Joe Smith

unread,
May 30, 1989, 5:54:35 PM5/30/89
to
In article <890526192...@decwrl.dec.com> sec...@msdsws.DEC.COM (Richard C. Secrist) writes:
>A friend is looking for a version of 8080 FOCAL that he known to exist for
>CP/M. I have a Z-80 version of the language, if anyone is interested, but he
>only runs an 8080. An alternative could be to pop a Z-80 in his DEC Robin

>(aka VT-180), but I never heard of anybody trying it.

Is the Z80 version the one that I sent to Bernie Eiben back when the MARKET
system was supporting KERMIT? I did the conversion to CP/M on my VT180, which
uses a Z80. (The "Robin" uses a Z80 instead of an 8080; Bernie also had ZCPR
running on it.) I was about to add the Library Open functions so that FOCAL
could read CP/M disk files when I left the Colorado School of Mines and lost
access to a real TOPS-10 system.

--
Joe Smith (408)922-6220 | SMTP: J...@F74.TYMNET.COM or j...@tymix.tymnet.com
McDonnell Douglas FSCO | UUCP: ...!{ames,pyramid}!oliveb!tymix!tardis!jms
PO Box 49019, MS-D21 | PDP-10 support: My car's license plate is "POPJ P,"
San Jose, CA 95161-9019 | narrator.device: "I didn't say that, my Amiga did!"

Bill Pechter

unread,
Jun 2, 1989, 12:29:37 PM6/2/89
to
In article <890526192...@decwrl.dec.com> sec...@msdsws.DEC.COM (Richard C. Secrist) writes:
>
>An alternative could be to pop a Z-80 in his DEC Robin (aka VT-180),
>but I never heard of anybody trying it.
>
Ah come on Richard. The Robin comes with a Z80 (as did the Rainbow).
Sure, it has a DEC 21-class part number on it, but it's a Z80. The
Z80 version should run just fine. It's interesting how soon the Robin
is forgotten at DEC. (They were referring users to me a year ago!)

By the way, anyone have an 8088 Focal?

Bill Pechter
--
Bill Pechter -- Home - 103 Governors Road, Lakewood, NJ 08701 (201)370-0709
Work -- Concurrent Computer Corp., 2 Crescent Pl, MS 172, Oceanport,NJ 07757
Phone -- (201)870-4780 Usenet . . . rutgers!pedsga!tsdiag!scr1!pechter
** MS-DOS is CP/M on steroids, bigger bulkier and not much better **

c.peter...@gmail.com

unread,
Aug 5, 2013, 9:00:40 AM8/5/13
to
I have a Focal version for 8080 on paper tape. Reply to peter at d5e (use a dot)net

rzh_...@yahoo.com

unread,
Aug 5, 2013, 12:09:39 PM8/5/13
to
On Friday, May 26, 1989 12:25:50 PM UTC-7, Richard C. Secrist wrote:
> A friend is looking for a version of 8080 FOCAL that he known to
> exist for CP/M. I have a Z-80 version of the language, if anyone
> is interested, but he only runs an 8080. It is not on Royal Oak
> or the CompuServe CPMFORUM. Guess I better get around to subscribing
> to GEnie...
.....<snip>....

Wasn't there an article in Dr. Dobbs (way back when) that included a listing of FOCAL? I have no idea about the 8080/Z80 deal.

Roger


Mr. Emmanuel Roche, France

unread,
Aug 5, 2013, 12:15:55 PM8/5/13
to
C. Peter Laidlaw wrote:

> I have a Focal version for 8080 on paper tape. Reply to peter
> at d5e (use a dot) net

1) Which one?

2) Why ask a private answer to a public question?

Me, I worked on (at least) 2 FOCAL (FORmula CALculator)
interpreters, both running under CP/M: one in 8080, the other in
Z-80, so I used the Z80.LIB with MAC to port its source code.

Unfortunately, I worked on them during my Epson QX-10 days, that
is to say: more than 15 years ago, and all this stuff is
somewhere on a QX-10 floppy disk and was never transfered on an
IBM PC.

At the moment, there appears to be only one source of
information about FOCAL, but the SOL-20 version: the Web site of
Jim Battle, which has everything about "Cassette FOCAL 1.0,
1978".

http://www.sol20.org/programs.html

So, the first thing to do would be to compare this ENT file with
your file (I explained the format of the ENT file many years ago
in the comp.os.cpm Newsgroup, and even wrote an ENT-to-COM File
Converter).

To finish, here is how LUNAR look likes, coded in FOCAL:

01.03 T " "!!!!!!!!!!!!!!!!!!
01.04 T "McMaster Space Centre calling lunar module. Our
computers here"!
01.05 T "indicate that your DEC processor has malfunctioned, as
was"!
01.06 T "feared.You must land on your own.You may reset fuel
rate to"!
01.07 T "any value between 8 & 200 lbs/sec. You have an
estimated 16000 lbs."!
01.08 T "of fuel.------------RADAR CHECK FOLLOWS-----------"!!;E
01.20 T " "!!!!
01.30 T "COMMENCE LANDING PROCEDURE"!!
01.35 D 20
01.40 F J=0,10; T "*** ",10-J," ***",#; F P=1,100; S PP=1
01.50 S L=0;S A=120;S V=1;S M=32500;S N=16500;S G=.001;S Z=1.8
01.55 S H=20; S KH=0; S SS=0
01.57 GOTO 10.1
01.60 T "TIME(SEC) =",%3,L," ALT.(Km) =",%7.3,A,"
FUEL(Kg) ="
01.62 IF ((M-N)-100) 1.63,1.63,1.64
01.63 D 21
01.64 T M-N,!
01.65 T "VEL.(Km/H): VERT. =",V*3600," HOR. = ",H,!!!
01.68 IF (SS) 1.7,1.7,1.72
01.70 A "DESCENT > (Deg.) = "TH," FUEL RATE = ",RF," TIME
",T,!
01.71 GOTO 1.8
01.72 D 21; T "FUEL OUT "; D 22; F J=1,100; S X=X
01.80 S QQ=TH*(3.14/180); S K=FSIN(1.57-QQ)*RF
01.85 S H=FSIN(QQ)*RF*T*1.5+H
01.87 S KK=Y(KH)
01.90 S KH=KH+H*T*.01
01.92 S A=A+(KK-Y(KH))
01.95 IF (A-.0001) 5.1,5.1,2.7
02.70 T %7.02;I (K)2.72;I (200-K)2.72;I (K-0)2.71,3.1,3.1
02.71 I (K-0)2.72,3.1,2.72
02.72 T "NOT POSSIBLE";F X=1,40;T "."
02.73 A K;T " ";A T,!;G 2.7
03.10 I ((M-N)-.001)4.1;I (T-.001)1.57; S S=T
03.40 I ((N+S*K)-M)3.5,3.5;S S=(M-N)/K
03.50 D 9;I (I)7.1,7.1;I (V)3.8,3.8;I (J)8.1
03.80 D 6;G 3.1
04.10 D 21; T "FUEL OUT AT ",L-SS," secs.";D 22
04.40 S A=A-[V*SS+.5*G*SS^2]
04.50 S L=L+5
04.60 S SS=SS+5
04.63 S V=V+G*SS
04.65 F JJ=1,200; S Y=1
04.70 GOTO 1.57
05.10 T "ON THE MOON AT ",L," SECS"!;S W=3600*V
05.20 T "IMPACT VELOCITY OF ",W," M.P.H."!,"FUEL LEFT:"
05.30 T M-N," LBS."!;I (-W+1)5.5,5.5
05.40 T "PERFECT LANDING !-(LUCKY)"!;G 5.9
05.50 I (-W+10)5.6,5.6;T "GOOD LANDING-(COULD BE BETTER)"!;G 5.9
05.60 I (-W+25)5.7,5.7;T "CONGRATULATIONS ON A POOR LANDING"!;G
5.9
05.70 I (-W+60)5.8,5.8;T "CRAFT DAMAGED. GOOD LUCK"!;G 5.9
05.80 T "SORRY,BUT THERE WERE NO SURVIVORS-YOU BLEW IT!"!"IN "
05.81 T "FACT YOU BLASTED A NEW LUNAR CRATER ",W*.277777," FT.
DEEP"!
05.90 GOTO 1.2
05.92 A "(ANS. YES OR NO)"P;I (P-0NO)5.94,5.98
05.94 I (P-0YES)5.92,1.2,5.92
05.98 T "CONTROL OUT";Q
06.10 S L=L+S;S T=T-S;S M=M-S*K;S A=I;S V=J
07.10 I (S-.005)5.1;S S=2*A/(V+FSQT(V*V+2*A*(G-Z*K/M)))
07.30 D 9;D 6;G 7.1
08.10 S W=(1-M*G/(Z*K))/2;S S=M*V/(Z*K*(W+FSQT(W*W+V/Z)))+.05;D
9
08.30 I (I)7.1,7.1;D 6;I (-J)3.1,3.1;I (V)3.1,3.1,8.1
09.10 S Q=S*K/M;S J=V+G*S+Z*(-Q-Q^2/2-Q^3/3-Q^4/4-Q^5/5)
09.40 S I=A-G*S*S/2-V*S+Z*S*(Q/2+Q^2/6+Q^3/12+Q^4/20+Q^5/30)
10.10 S X=FINT(2); S X=FCLS(2)
10.15 F J=1,10,180-A; T !
10.20 F J=1,KH; T " "
10.30 T "X",!,""
10.50 GOTO 1.6
20.10 F J=1,80; S Y(J)=FABS(FSIN(J/9)*FRAN(0)*20)
20.20 S X=FINT(3)
20.30 F J=1,508; S X=FPLT(Y(J*80/508),4)
20.40 S X=FCLS(0)
20.50 RETURN
21.10 T ""
21.20 RETURN
22.10 T ""
22.20 RETURN

Good Landing! (or Mooning?)

Yours Sincerely,
Mr. Emmanuel Roche, France



David Schmidt

unread,
Aug 5, 2013, 12:48:59 PM8/5/13
to
On 8/5/2013 12:15 PM, Mr. Emmanuel Roche, France wrote:
> Unfortunately, I worked on them during my Epson QX-10 days, that
> is to say: more than 15 years ago, and all this stuff is
> somewhere on a QX-10 floppy disk and was never transfered on an
> IBM PC.

I can help with QX-10 (even Valdocs) disks if you wouldn't mind shipping
them to the US.

Roger Ivie

unread,
Aug 5, 2013, 3:23:18 PM8/5/13
to
On Friday, May 26, 1989 3:25:50 PM UTC-4, Richard C. Secrist wrote:
> An alternative could be to pop a Z-80 in his DEC Robin (aka VT-180),
> but I never heard of anybody trying it.

The Robin is already a Z-80. Yes, there's an 8080 in there, but it's
in the VT-100. The bit that runs CP/M is a Z-80.
--
roger ivie
ri...@ridgenet.net

Roger Ivie

unread,
Aug 5, 2013, 3:24:21 PM8/5/13
to
On 2013-08-05, c.peter...@gmail.com <c.peter...@gmail.com> wrote:
> On Friday, May 26, 1989 3:25:50 PM UTC-4, Richard C. Secrist wrote:
^^^^

No wonder I missed the original message...
--
roger ivie
ri...@ridgenet.net

glen herrmannsfeldt

unread,
Aug 5, 2013, 5:26:10 PM8/5/13
to
I also have a QX-10. It worked fine when I first got it, a few years
ago, but now the floppy drives usually don't read well enough to boot.
I suspect dirty heads, but I haven't gotten to cleaning them.

I also have a hard disk for it, but haven't tried it yet.

-- glen

Mr. Emmanuel Roche, France

unread,
Aug 6, 2013, 2:07:32 AM8/6/13
to
Roger Ivie wrote:

>> On Friday, May 26, 1989 3:25:50 PM UTC-4, Richard C. Secrist
>> wrote:
> ^^^^
>
> No wonder I missed the original message...

Yes, we are seeing more andmore Newbies arriving at the
comp.os.cpm Newsgroup following a Google search where they found
an old message published in a Usenet group.

Normally, "Google Groups" kills threads after 2 months.

But those Newbies don't know it, so we see some threads
re-appear after 30 years...

Conclusion: On the Internet, nothing is lost. It will be
interesting to see the effects that this fact will have on
societies.

Mr. Emmanuel Roche, France

unread,
Aug 7, 2013, 8:12:43 AM8/7/13
to
David Schmidt wrote:

> I can help with QX-10 (even Valdocs) disks
> if you wouldn't mind shipping them to the US.

David, I wrote you privately 2 times: for the second time, I am
receiving the following error message:

> This is the mail system at host mwinf8511-out.laposte.net.
> I'm sorry to have to inform you that your message could not
> be delivered to one or more recipients.

So, many thanks for your help, but I cannot write you privately.

(Me, when I thought that I was receiving too much spam on my
private e-mail address (that some persons published without
removing if from the header), I got a second, public e-mail
address at the former post monopoly. I am very pleased with it,
because it has excellent spam filter.)

David Schmidt

unread,
Aug 7, 2013, 12:24:30 PM8/7/13
to
On 8/7/2013 8:12 AM, Mr. Emmanuel Roche, France wrote:
> David Schmidt wrote:
>
>> I can help with QX-10 (even Valdocs) disks
>> if you wouldn't mind shipping them to the US.
>
> David, I wrote you privately 2 times: for the second time, I am
> receiving the following error message:
>
>> This is the mail system at host mwinf8511-out.laposte.net.
>> I'm sorry to have to inform you that your message could not
>> be delivered to one or more recipients.
>
> So, many thanks for your help, but I cannot write you privately.

Sorry, I forgot I'm unknown to my newsreader. I've responded to your
laposte address privately. You can also get in touch with me through
SourceForge:
http://sourceforge.net/users/david__schmidt

Holger Petersen

unread,
Aug 8, 2013, 5:12:52 AM8/8/13
to

------>

Extract form CPM-UG Disk 016

57472 10. Feb 1985 focal.asm


FOCAL.ASM -- THIS IS THE FOCAL THAT PROCESSOR TECHNOLOGY WAS
DISTRIBUTING IN 1976 ON BLUE XEROX-PROOF PAPER.
IT HAS SOME KNOWN BUGS: EXPONENTIATION DOESN'T WORK AND IT HAS NO
OPERATOR PRECEDENCE. I HAVE ADDED A FEW THINGS: I/O FOR CP/M (JUST
CONSOLE I/O) AND A ROUTINE TO LIST THE ERROR MESSAGES. LOAD
FOCAL WITH DDT AND JUMP TO 103H; A LIST OF THE ERROR MESSAGES
WILL BE PRINTED. A NOTE OF INTEREST-THE FLOATING POINT PACKAGE
IN FOCAL IS FROM THE INTEL USERS LIBRARY AND WAS ORIGINALLY
WRITTEN FOR THE 8008 CPU.

[A.R.G. I understand that the exponentiation error only
occurs (symptom x^y results in y^y) with the 100H origin.
May give a clue to finding page-dependant routine]

<---

Greetings, Holger

PS: My version of the CD has this file. I do remember some
Copyright-Rumor.

dott.Piergiorgio

unread,
Aug 8, 2013, 5:45:04 AM8/8/13
to
Il 08/08/2013 11:12, Holger Petersen ha scritto:

> PS: My version of the CD has this file. I do remember some
> Copyright-Rumor.

It's the first time I have issues with "Englische"; Copyright-rumor is
clear enough (rumours of copyright) but generally I notice the "reverse
& barreled" order with technical or engineering words (e.g.
module-serial for serial module) and I'm not exactly sure of having get
the meaning....

Best regards from Italy,
dott. Piergiorgio.

Holger Petersen

unread,
Aug 8, 2013, 10:21:08 AM8/8/13
to
"dott.Piergiorgio" <chied...@ask.me> schrieb:

>Il 08/08/2013 11:12, Holger Petersen ha scritto:

>> PS: My version of the CD has this file. I do remember some
>> Copyright-Rumor.

> and I'm not exactly sure of having get the meaning....

I am not a native english-speaking person as well :-)

I do remember a diskussion on _one_ entry in the CP/M-UG disks.
But I do not remember which files were objected.
They were excluded from some 8-inch distribution, IIRC.

That _may_ have been some programming language.

I positively remember a diskussion on UCSD-Pascal. The
people of southern california (tried to) withdraw one
arrangement on the 8-inch version.

It may have been about some version of FORTH, but i doubt.



>Best regards from Italy,
>dott. Piergiorgio.


greetings from germany, Holger

dott.Piergiorgio

unread,
Aug 8, 2013, 10:48:54 AM8/8/13
to
Il 08/08/2013 16:21, Holger Petersen ha scritto:

> I am not a native english-speaking person as well :-)
>
> I do remember a diskussion on _one_ entry in the CP/M-UG disks.
> But I do not remember which files were objected.
> They were excluded from some 8-inch distribution, IIRC.

IIRC, I remember reading in some indexes and readmes of preserved disk
archives notices about that some files was withdrawn from some cpmug
and/or sig/m disks.. and by the way, I like diskussion, is the perfect
name for a diskmag :)

Mr. Emmanuel Roche, France

unread,
Aug 8, 2013, 1:16:58 PM8/8/13
to
Hello, Holger!

> Extract form CPM-UG Software Library Disk 016
>
> FOCAL.ASM -- THIS IS THE FOCAL THAT PROCESSOR TECHNOLOGY WAS
> DISTRIBUTING IN 1976 ON BLUE XEROX-PROOF PAPER.

Yes! This is the 8080 version that I did. It would be
interesting to see if it is just a copy of the SOL-20 FOCAL,
whose source code contains a switch to assemble it to run either
on a Processor Technology, or an Intellec/80.

After doing it, I found a Z-80 FOCAL in the DEC Software
Library. FOCAL was the standard interpreter for the DEC PDP-8.

Me, I found them very similar to BASIC. I encountered only 2
major differences: FOCAL used DISPLAY instead of PRINT (BASIC
uses PRINT because it printed its output on ASR-33
Teletypewriters while, apparently, DEC PDP-8 users of FOCAL used
a screen to DISPLAY their outputs).

Many persons find the use of numbers for GOSUB difficult to use.
FOCAL solved this problem in another way: the word is divided
into 2 bytes. The first byte contains the number of the
subroutine, the second byte contains the number of the line of
this subroutine. This implies, of course, that a subroutine
cannot be more than 256 lines long. This seems to be a
reasonable assumption, if you think about it.

My only problem with FOCAL is that the ones I used had no
RENUMber facility.

To separate my subroutines in BASIC, I just use a : or a '
(REMark). I never care what the line numbers will be.
Nevertheless, I found FOCAL interesting. Ha! I was forgetting:
like Tiny BASIC, it was shortening its commands to the first
character, instead of using "crunch codes". I have no idea why
it disappeared. After 30 years of programming, I am always
fascinated by the rise and fall of Programming Languages.

Peter Dassow

unread,
Aug 9, 2013, 7:53:36 AM8/9/13
to
On 08.08.2013 19:16, Mr. Emmanuel Roche wrote:

>
> After doing it, I found a Z-80 FOCAL in the DEC Software
> Library. FOCAL was the standard interpreter for the DEC PDP-8.
>

I've found a FOCAL version for PDP-11 but I guess, this was not what
you've found...
http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rsx/decus/rsx85a/240001/focal.m80

Regards Peter

Mr. Emmanuel Roche, France

unread,
Aug 9, 2013, 2:40:50 PM8/9/13
to
Peter Dassow wrote:

> I've found a FOCAL version for PDP-11 but I guess,
> this was not what you've found...

Hum, let us see...

> FOCAL.HLP 26-Dec-84
>
> FOCAL.COM is an implementation of DEC's FOCAL language that
> runs on a Z80
> CPU with CP/M. It has all the functionality of PDP-8 FOCAL
> with the exception
> of the Library functions - it cannot access files on the disk.
>
> This version was written from scratch by Dawn Banks while she
> was employed at
> the Colorado School of Mines Computing Center was maintained
> by Joe Smith.
>
> I am releasing this version of FOCAL.COM and FOCAL.M80 to the
> public domain.
> It is not complete, released "as is" until I get a chance to
> work on it again.
>
> Joe Smith, formerly of the CSM Computing Center, Golden, CO
> 80401 (303)273-3448
> Temporary home address: 12221 W 2nd Place #12-104, Lakewood CO
> 80228
> Original author: Dawn Banks, DEC TOPS-10 Development Group
> (617)467-4366

http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rsx/decus/rsx85a/240001/focal.hlp

Ho, boy! CSM! The Colorado School of Mines Computing Center!
Yes, I remember! This is the M80 source code file that I ported
under MAC, using Z80.LIB, almost 20 years ago!

This directory contains 3 files dealing with FOCAL:

focal.com 1985-Jan-04 10:58:44 5.6K
focal.hlp 1985-Jan-04 10:58:54 0.9K
focal.m80 1985-Jan-04 10:58:55 91.8K

(I remember that I used the original COM file to check that MAC
was producing the same binary.)

At the beginning of the M80 file, I also recognized:

; This version of FOCAL was written from scratch for the Z80 CPU
; and therefore does not infringe on DEC's copyright. This
version
; has been released by the authors into the public domain.

; Version 1E converted to run under CP/M, March 1984 /JMS

; Copyright (c) D R Banks, CSM, 1976, 1977, 1978
; Copyright (c) Wayne Wall, CSM, 1979
; Copyright (c) Joe Smith, CSM, 1984

and, at the bottom, the sign-on message:

.ASCII \ C FOCAL-Z80 version 1E for CP/M, 17-May-84\

So, Peter, you found it (well, the source of my work): It is a
Z-80 FOCAL for CP/M, not for the DEC PDP-11. Try it: I am sure
that it will work under a CP/M emulator. For the doc, find any
DEC PDP-8 FOCAL manual.

So, this code will soon be 40 years old... Any volunteer to
maintain it? (Me, I would start by finding and retyping a PDP-8
FOCAL manual, then check each command.)

(If you prefer 8080 code, have a look to the CP/M User Group
Software Library Volume 16. I think that this is the one also
found on the SOL-20 Web site of Jim Battle)

dott.Piergiorgio

unread,
Aug 10, 2013, 8:15:38 AM8/10/13
to
Il 09/08/2013 20:40, Mr. Emmanuel Roche, France ha scritto:
> ; This version of FOCAL was written from scratch for the Z80 CPU
> ; and therefore does not infringe on DEC's copyright. This
> version
> ; has been released by the authors into the public domain.
>
> ; Version 1E converted to run under CP/M, March 1984 /JMS
>
> ; Copyright (c) D R Banks, CSM, 1976, 1977, 1978
> ; Copyright (c) Wayne Wall, CSM, 1979
> ; Copyright (c) Joe Smith, CSM, 1984
>
> and, at the bottom, the sign-on message:
>
> .ASCII \ C FOCAL-Z80 version 1E for CP/M, 17-May-84\

the wording and apparent version numbering scheme seems to imply that
versions 1A to 1D wasn't for CP/M (makes sense for the days of paper
tapes and Byte-standard audio cassettes) but I noticed that the apparent
number versioning scheme scheme starts from 1A and not 1...

> So, Peter, you found it (well, the source of my work): It is a
> Z-80 FOCAL for CP/M, not for the DEC PDP-11. Try it: I am sure
> that it will work under a CP/M emulator. For the doc, find any
> DEC PDP-8 FOCAL manual.
>
> So, this code will soon be 40 years old... Any volunteer to
> maintain it? (Me, I would start by finding and retyping a PDP-8
> FOCAL manual, then check each command.)

I think there's no need of taking this burden, the good ol' Al has five
manuals in his huge doc archive...

Peter Dassow

unread,
Aug 11, 2013, 6:31:18 PM8/11/13
to
On 10.08.2013 14:15, dott.Piergiorgio wrote:
> Il 09/08/2013 20:40, Mr. Emmanuel Roche, France ha scritto:
>> ; This version of FOCAL was written from scratch for the Z80 CPU
>> ; and therefore does not infringe on DEC's copyright.
>> [...]
>> For the doc, find any DEC PDP-8 FOCAL manual.
>>
>> So, this code will soon be 40 years old... Any volunteer to
>> maintain it? (Me, I would start by finding and retyping a PDP-8
>> FOCAL manual, then check each command.)
>
> I think there's no need of taking this burden, the good ol' Al has five
> manuals in his huge doc archive...

May be this one will do it alone:
http://bitsavers.trailing-edge.com/www.computer.museum.uq.edu.au/pdf/DEC-11-LFOCA-F-D%20FOCAL-11%20User%27s%20Manual.pdf

It's a bigger PDF (226 scanned pages). If you're curious about other DEC
Manuals/Documentation, try
http://bitsavers.informatik.uni-stuttgart.de/www.computer.museum.uq.edu.au/pdf/

(if the URL is broken into 2 lines, re-assemble it plz)

Regards
Peter

Mr. Emmanuel Roche, France

unread,
Aug 12, 2013, 2:18:59 AM8/12/13
to
Mr. Emmanuel Roche wrote:

>>> For the doc, find any DEC PDP-8 FOCAL manual.

Peter Dassow wrote:

> May be this one will do it alone:
>
> http://bitsavers.trailing-edge.com/www.computer.museum.uq.edu.au/pdf/DEC-11-LFOCA-F-D%20FOCAL-11%20User%27s%20Manual.pdf
>
> It's a bigger PDF (226 scanned pages).

I had a look. Unfortunately, it contains pages after pages of
stuff that I did not recognize. For example, there is a full
chapter devoted to the LIBRARY functions, while the first
comment in the FOCAL interpreter source file says that they were
not implemented... (Bigger is not always better. See those fat
Americans.)

Personally, I would use the PDP-8 FOCAL manual:

http://bitsavers.trailing-edge.com/www.computer.museum.uq.edu.au/pdf/DEC-08-AJAB-D%20PDP-8-I%20FOCAL%20Programming%20Manual.pdf

Once it would be working correctly under CP/M, I would have a
look to the PDP-11 manual, to see if I could add some commands
of the later version. (There is also an interesting discussion
about how variables are stored in memory.)

It also has the advantage of being smaller (64 pages versus
226), simpler, and probably faster.

Even if I prefer 8080 code, I think that the Z-80 version is
better since, as it was coming from DEC, it should be a better
implementation of FOCAL.

So, binary + source code + doc: everything is now available to
ressurrect FOCAL under CP/M.

dott.Piergiorgio

unread,
Aug 12, 2013, 5:04:30 AM8/12/13
to
Il 12/08/2013 08:18, Mr. Emmanuel Roche, France ha scritto:
> Mr. Emmanuel Roche wrote:
>
>>>> For the doc, find any DEC PDP-8 FOCAL manual.
>
> Peter Dassow wrote:
>
>> May be this one will do it alone:
>>
>> http://bitsavers.trailing-edge.com/www.computer.museum.uq.edu.au/pdf/DEC-11-LFOCA-F-D%20FOCAL-11%20User%27s%20Manual.pdf
>>
>> It's a bigger PDF (226 scanned pages).
>
> I had a look. Unfortunately, it contains pages after pages of
> stuff that I did not recognize. For example, there is a full
> chapter devoted to the LIBRARY functions, while the first
> comment in the FOCAL interpreter source file says that they were
> not implemented... (Bigger is not always better. See those fat
> Americans.)

what is fat wasn't the software, but the hardware, esp. the RAM together
with the phenomena known as "creepy featurism"; I'm pretty sure that
with 28 16-bit KW and a notoriously well-thought instruction set one can
do much more than with 64 KB and 4 or 8 12-bit KW...

> Personally, I would use the PDP-8 FOCAL manual:
>
> http://bitsavers.trailing-edge.com/www.computer.museum.uq.edu.au/pdf/DEC-08-AJAB-D%20PDP-8-I%20FOCAL%20Programming%20Manual.pdf
>
> Once it would be working correctly under CP/M, I would have a
> look to the PDP-11 manual, to see if I could add some commands
> of the later version. (There is also an interesting discussion
> about how variables are stored in memory.)
>
> It also has the advantage of being smaller (64 pages versus
> 226), simpler, and probably faster.
>
> Even if I prefer 8080 code, I think that the Z-80 version is
> better since, as it was coming from DEC, it should be a better
> implementation of FOCAL.

and, as pointed above, perhaps the TPA available for user programs
(remember, it's an interpreted language) in a Z80 was more...

> So, binary + source code + doc: everything is now available to
> ressurrect FOCAL under CP/M.

well, because you already restituited MINOL and VTL, you can surely work
on this (and hopefully solve that exponentiation bug)

Mr. Emmanuel Roche, France

unread,
Aug 12, 2013, 12:49:57 PM8/12/13
to
> Mr. Emmanuel Roche wrote:
>
> So, binary + source code + doc: everything is now available
> to ressurrect FOCAL under CP/M.

Indeed, I found 2 other manuals that complement themselves
nicely:

1) One elementary manual, apparently written by DEC when they
introduced "FOCAL 1969"

2) One UW-FOCAL (University of Washington), clearly written for
Laboratories using computers.

Both are available at the same place:

http://homepage.cs.uiowa.edu/~jones/pdp8/focal/

Mr. Emmanuel Roche, France

unread,
Aug 12, 2013, 1:52:42 PM8/12/13
to
There is an incredibly long message about FOCAL in another
Usenet group, alt.sys.pdp8, published (the thread: "FOCAL - some
more questions") the 31 October 1993 (so, 20 years ago), by one
Charles Lasner who knew, obviously, quite a lot about FOCAL...

https://groups.google.com/forum/#!msg/alt.sys.pdp8/So3VUQ4Jr48/QGviYVCiCz8J

Among all his information, I noticed:

> The starting point for FOCAL-12 was FOCAL, 1969, so,
> putting aside the PDP-12 and DIAL-MS specific
> augmentations, the language is pretty much the same.
> FOCAL-12 also corrects a minor bug in the "ASK"
> command of FOCAL, 1969.
>
> A dubious project later at DEC produced FOCAL-8. FOCAL-8,
> in spite of what might be thought about it, consists merely of
> FOCAL,1969 with the following changes/additions:
>
> 1) A reprinted manual, using the then current new cover
> style.
>
> 2) Patches to the portions of FOCAL concerned with
> configuring it for various computers.
>
> 3) The afore-mentioned fix to the "ASK" command code
> taken from FOCAL-12.
>
> (Of the three areas, #1 is clearly the most useful :-).

So, what we have been calling "FOCAL" is, in fact, precisely
"FOCAL-1969". (There is at last one named "FOCAL-1971". Also,
the PDP model was important, hence all those references to
"pdp-8" and "pdp-11", "pdp-12", etc.

Our CP/M version(s) are clearly based on "pdp-8 FOCAL-1969". The
advantage is that it is clearly defined, with at least 2
official DEC manuals.

("Improve" it only after making sure that your version conforms
exactly with the standard.)

Mr. Emmanuel Roche, France

unread,
Aug 12, 2013, 2:08:59 PM8/12/13
to
Wahoo! A 6-page article explaining how to create his "Laboratory
FOCAL"...

http://psy2.ucsd.edu/~link/4K%20Laboratory%20FOCAL.pdf

Don't miss it! (Must be included in any CP/M distribution!)

Mr. Emmanuel Roche, France

unread,
Aug 12, 2013, 4:10:32 PM8/12/13
to
Mr. Emmanuel Roche, France wrote:

> I found one UW-FOCAL (University of Washington),
> clearly written for Laboratories using computers.

As far as I understand it, I think that I have found its source
code, in DEC PDP-8 assembly language, if you are tired of the
Z-80:

http://www.dbit.com/pub/pdp8/nickel/langs/focal/

dott.Piergiorgio

unread,
Aug 13, 2013, 7:13:57 AM8/13/13
to
Il 12/08/2013 22:10, Mr. Emmanuel Roche, France ha scritto:
> Mr. Emmanuel Roche, France wrote:
>
>> I found one UW-FOCAL (University of Washington),
>> clearly written for Laboratories using computers.
>
> As far as I understand it, I think that I have found its source
> code, in DEC PDP-8 assembly language, if you are tired of the
> Z-80:
>
> http://www.dbit.com/pub/pdp8/nickel/langs/focal/

merci !

Dr. Piergiorgio.

peter....@acm.org

unread,
Aug 17, 2013, 4:14:41 AM8/17/13
to
For all who want to try out FOCAL on the AltairZ80, I have created a
disk for the AltairZ80 which you can download from here
http://www.schorn.ch/altair_6.php

It contains the FOCAL implementation based on the FOCAL.ASM mentioned
above (including a couple of small changes to make it work on the
AltairZ80) and the version from Processor Technology for the SOL-20
(also with some tweaks to make it run under AltairZ80).

Best regards
Peter
---
peter....@acm.org


Willard Frank Goosey III

unread,
Aug 25, 2013, 10:37:05 PM8/25/13
to
Peter Dassow <z8...@arcor.de> writes:

>http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rsx/decus/rsx85a/240001/focal.m80

Does anybody have any hints about unarchiving the .LBR files in that
directory? LU.COM (version 3.10) says "Old Library: foo.LBR has no
directory...ABORTED" and delbr just exits. :-(

Thanks,
Willard
--
goo...@sdf.lonestar.org
SDF Public Access UNIX System - http://sdf.lonestar.org

John Elliott

unread,
Aug 26, 2013, 6:30:21 AM8/26/13
to
Willard Frank Goosey III <goo...@sdf.lonestar.org> wrote:
> Peter Dassow <z8...@arcor.de> writes:
>
>>http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rsx/decus/rsx85a/240001/focal.m80
>
> Does anybody have any hints about unarchiving the .LBR files in that
> directory? LU.COM (version 3.10) says "Old Library: foo.LBR has no
> directory...ABORTED" and delbr just exits. :-(
>
> Thanks,
> Willard

On a cursory examination, it looks as if the file has been archived by
some utility that split it into 512-byte blocks, and prepended the block
length to each block.

DW 512
DB ... first 512 bytes of LBR ...
DW 512
DB ... next 512 bytes of LBR ...
etc.

On the assumption that this was the only thing done to the files, here are
versions where that process has been reversed:

http://www.seasip.info/tmp/f83v2ms.lbr.fix
http://www.seasip.info/tmp/form5.lbr.fix
http://www.seasip.info/tmp/smcm80.lbr.fix
http://www.seasip.info/tmp/smcsrc.lbr.fix

--
John Elliott

Thinks: This is what a nice clean life leads to. Hmm, why did I ever lead one?
-- Bluebottle, in the Goon Show

Willard Frank Goosey III

unread,
Aug 26, 2013, 9:59:03 PM8/26/13
to
John Elliott <j...@seasip.demon.co.uk> writes:

>Willard Frank Goosey III <goo...@sdf.lonestar.org> wrote:
>> Peter Dassow <z8...@arcor.de> writes:
>>
>>>http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rsx/decus/rsx85a/240001/focal.m80
>>
>> Does anybody have any hints about unarchiving the .LBR files in that
>> directory? LU.COM (version 3.10) says "Old Library: foo.LBR has no
>> directory...ABORTED" and delbr just exits. :-(

> On the assumption that this was the only thing done to the files, here are
>versions where that process has been reversed:
>
>http://www.seasip.info/tmp/f83v2ms.lbr.fix
>http://www.seasip.info/tmp/form5.lbr.fix
>http://www.seasip.info/tmp/smcm80.lbr.fix
>http://www.seasip.info/tmp/smcsrc.lbr.fix

That did it! Thanks, I'm not familiar with the insides of the .LBR file
format.

Thanks again,

Willard Frank Goosey III

unread,
Aug 27, 2013, 1:48:55 AM8/27/13
to
John Elliott <j...@seasip.demon.co.uk> writes:

>http://www.seasip.info/tmp/f83v2ms.lbr.fix

A FORTH-83 for MS-DOS...
0 new messages