TSS/8 FORTRAN-D

98 views
Skip to first unread message

Andrew Herbert

unread,
Oct 21, 2022, 4:49:21 AM10/21/22
to PiDP-8
Has anyone had success running a FORTRAN-D program under TSS/8.

I tried a simple program:

C A TRIVIAL FORTRAN D PROGRAM
        TYPE 10
        10      FORMAT ("HELLO WORLD")
        STOP
        END


and ran it thus:

.R FORT
 INPUT:SIMPLE
OUTPUT:
6204^BS


I can't find an explanation of the code 6204 in either the TSS/8 User Guide or the FORTRAN-D manual.

Advice and guidance welcome. 

If anyone has a working FORTRAN-D program they have run under TSS/8 I would welcome a copy to see if it works on my set up, which is the TSS/8 included in the current fossil trunk.

  -- Andrew


Warren Young

unread,
Oct 21, 2022, 9:11:53 AM10/21/22
to Andrew Herbert, PiDP-8
The biggie is that the label (“10”) needs to be in columns 1-5.

The rest shouldn’t be indented that deep. I don’t know TSS/8 FORTRAN, but I’d expect that it begins looking for statements in column 7, not 10. Whether this is a matter of efficient use of scarce resources or a flat-out requirement, I couldn’t say. 

--
You received this message because you are subscribed to the Google Groups "PiDP-8" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pidp-8+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pidp-8/8e5e2ed2-2813-40fe-b217-0e86fd7c13f6n%40googlegroups.com.

Hans Van Slooten

unread,
Oct 21, 2022, 9:39:44 AM10/21/22
to Warren Young, Andrew Herbert, PiDP-8
Looks like the statement field begins after the first space following the identification field:

Hans

Charley Jones

unread,
Oct 21, 2022, 12:52:45 PM10/21/22
to Hans Van Slooten, Warren Young, Andrew Herbert, PiDP-8
Great document.  Love the cut and paste of examples, sometimes skewed on the page. 

I just can’t imagine doing so much with so little memory.  An entire timeshare system running Basic, Fortran, Focal, in less than 48k of
Memory.  

Heck, 512k is a modern preamble to code.  Here we have an example of such amazing use of resources. 

In the first era there were tiny giants that shared meager resources with skill and adeptness.  Then the dumb terminal began smart and we had the pc era.  Then we had the rise of the server and eventual cloud.  Back to dumb terminals (chrome books). Now? The next move is your own local cloud server… linking up the cloud and down to the user….   Fascinating times in which we live…

Sent from my iPhone 12pm!
Charley Jones, PMP/MCDBA/MCSE

On Oct 21, 2022, at 6:39 AM, Hans Van Slooten <vans...@gmail.com> wrote:


Looks like the statement field begins after the first space following the identification field:

Mike Katz

unread,
Oct 21, 2022, 1:35:38 PM10/21/22
to Charley Jones, Hans Van Slooten, Warren Young, Andrew Herbert, PiDP-8
When I started my career as an embedded programmer I was using 6800, 6803 or 6809 microprocessors.

System Specs:
    Clock Speed:    1 MHz --> 3 MHz
    CPU:                  8 Bit 6800 or 6809 family
    RAM:                 128 Bytes to 2K Bytes
    EPROM:            1K Bytes to 8K Bytes

Most code was written in assembler or in C with hand optimization of the machine code output of the compiler.

Most programmers today (even embedded programmers) are used to Megahertz and Megabytes on 32 bit CPUs.

I cannot imagine them working on the Epson smart watch chip I worked on which was a 4 bit CPU running at 32,768Hz with 32 4-bit words of RAM and 2K of mask ROM.  And a 4 level subroutine stack.

Times sure have changed.  A 133MHz Dual Core Cortex M0+ with 2 PIO processors for less than $1  (Raspberry Pi Pico), amazing

Steve Tockey

unread,
Oct 21, 2022, 5:14:27 PM10/21/22
to PiDP-8
"When I started my career as an embedded programmer I was using 6800, 6803 or 6809 microprocessors."

My embedded career started on PDP-8/m, -8/f, and -8/a. We were doing real-time data acquisition (radiation monitoring at nuclear power plants!) and performance was critical. I remember having to count memory cycles on the interrupt service routine code to see if it could be made any faster. We had to play all kinds of interesting games with -8 code to make it fast enough and small enough. 4K!

Yes, times have changed. I often say, "Kids these days ..."


Cheers,

-- steve

Andrew Herbert

unread,
Oct 22, 2022, 12:39:04 PM10/22/22
to PiDP-8
Putting the statement numbers at the start of the line doesn't help.

I have copied the example from the TSS/8 user manuals and it also fails with the mystery 6204 error.

The Following is a cut and pastes from screen.

If anyone has successfully run a FORTRAN program on the pidp8i TSS/8 I would welcome a copy of their program so I can see if it works on my version.

Conversely if anyone wants to try the example on their TSS/8 and report back, please do.

Thanks

Andrew


.R EDIT

 INPUT:FACT
OUTPUT:
R

L
C       THIS PROGRAM CALCULATES FACTORIALS
5       TYPE 200
10      ACCEPT 300,N
        IFACT=1
30      IF (N-1) 5,32,33
32      TYPE 400,N,IFACT
        GO TO 10
33      DO 35 I=1,N
        IFACT=IFACT*I
35      CONTINUE
200     FORMAT (/,"PLESE TYPE A POSITIVE NUMBER",/)
300     FORMAT(I)
400     FORMAT (/,I/" FACTORIAL IS",I)
        END


^BS
.R FORT

 INPUT:FACT
OUTPUT:
6204^BS

.

Rick Murphy

unread,
Oct 22, 2022, 6:27:35 PM10/22/22
to Andrew Herbert, PiDP-8
I get the same error 6204.
The only suggestion I have is that the fortran runtime system file (FOSSIL) is missing. You need FORT (the compiler), FOSL (the loader) and FOSSIL (the runtime).
There's a different halt PC in the docs than what's being seen here, but at least this lets you know that you're not alone.
    -Rick




--
Rick Murphy, D. Sc., CISSP-ISSAP, K1MU/4, Annandale VA USA

Hans Van Slooten

unread,
Oct 22, 2022, 8:50:25 PM10/22/22
to Rick Murphy, Andrew Herbert, PiDP-8
Here’s what the manual says about that error. 

Rick Murphy

unread,
Oct 22, 2022, 9:54:58 PM10/22/22
to Hans Van Slooten, Andrew Herbert, PiDP-8
That's not in the manuals generally found on the web, but it seems likely to be the underlying problem.

From the system admin guide, you need to install FORT, FDCOMP, FOSL, and FOSSIL.

Seems like nobody's got the full set of files to allow this to work.
    -Rick

Hans Van Slooten

unread,
Oct 23, 2022, 12:07:19 AM10/23/22
to Rick Murphy, Andrew Herbert, PiDP-8

Ian Schofield

unread,
Oct 23, 2022, 12:19:25 PM10/23/22
to PiDP-8
Dear All,

 Sorry to nit pick!!! The program is valid for FORTRAN-D (TSS8 and 4K DMS).
However, the code is incorrect:

C       THIS PROGRAM CALCULATES FACTORIALS
5       TYPE 200
10      ACCEPT 300,N
        IFACT=1
30      IF (N-1) 5,32,33
        GO TO 5

33      DO 35 I=1,N
        IFACT=IFACT*I
35      CONTINUE
32      TYPE 400,N,IFACT    
200     FORMAT (/,"PLEASE TYPE A POSITIVE NUMBER",/)
300     FORMAT (I)
400     FORMAT (I,/" FACTORIAL IS"/,I)
        END

(4K DMS)
.FORT
*OUT-S:FTX
*
*IN-S:FT4
*
^                                   (NB Type ^P here!)
*READY
^                                   (And here)

PLEASE TYPE A POSITIVE NUMBER
4
 4
 FACTORIAL IS
 24   !
.
BW, Ian.

Andrew Herbert

unread,
Oct 23, 2022, 1:35:11 PM10/23/22
to PiDP-8
Thanks for the reference to this version of the TSS/8 User Guide.  It seems to be an expanded / later version of the one referenced by others which I was following.  I've updated my library!

Andrew

Andrew Herbert

unread,
Oct 23, 2022, 1:36:51 PM10/23/22
to PiDP-8

Thanks, I'll have a poke around the distributed TSS/8 file system and some of the online resources to see if I can find all the parts needed.

I guess other people have thus far only played with TSS/8 Basic and Focal.

Andrew
Reply all
Reply to author
Forward
0 new messages