• Please review our updated Terms and Rules here

FIG FORTH for PDP-11?

smp

Veteran Member
Joined
Oct 4, 2011
Messages
1,727
Location
Bedford, NH, USA
Hello again, all,

Does anyone have the source or executable for FIG Forth for the PDP-11, specifically RT-11?
With the source file, I know you can always assemble the code for your own system.

Anyway, I have the FIG Forth for PDP-11 assembly output listing as distributed by FORTH, Inc. and I came across a clean assembly source file here:

http://jcomeau.freeshell.org/www/do...omeau/ftparea/hacking/mystuff/pdp11/forth.bld

And, of course, I pulled it into my system, deleted the make file stuff at the top since there was nothing there for RT-11, changed the definition to be for RT-11, and gave it a try. I got 1071 errors...

Then, as I was scanning the listing to see if there was anything simple to fix that cascaded into >1000 errors, I saw that the file I got from that web site was not matching up with the FIG Forth document that I have. And then I found this comment up near the beginning:

;
; This version hacked extensively by:
; John Comeau <jcomeau@world.std.com>
; P. O. Box 100632
; Fort Lauderdale, FL 33310-0632
;

Evidently there are things in there that Mr. Comeau's system understand, but my system does not. In hind sight, since he had added the make file stuff for RSX-11, and never got to fill in the part for RT-11, I guess that should have been a hint. Oh, well...

Does anyone have a clean assembly source code file for FIG Forth that matches the document put out by FORTH, Inc.?

I'm a real sucker for Forth, and I am always trying to get a version running on any system that I am currently playing around with. I have seen comments floating around that some folks really enjoyed working with FIG Forth on PDP-11 back in the day, and I'd like to achieve that for myself here.

Any comments, observations, pointers, or lessons learned would be greatly appreciated.

smp
 
Last edited:
OK!

I found a copy of the clean source here:

https://groups.google.com/forum/#!msg/comp.lang.forth/NzzcRaZmOYI/e8p5TlgLpPcJ

where someone was kind enough to post the entire assembly source, and Google (so far) has kept a copy of the message thread alive.

I copied the source file and uploaded it into my system. It assembled with no errors. It linked with no errors. And, it runs!

The interesting thing is that it is supposed to have a companion file called forth.dat, that holds all the screens of Forth code utilities and programs that were originally distributed with FIG Forth as a virtual file system. I think that is where one would store his own created programs for later recall. Without this file, I think I'm limited to immediate mode only.

Does anyone out there have the complete setup for FIG Forth, with the forth.dat file?

smp
 
Glad to be of help.
Lord know I've scoured enough web sites trying to find something or another!
Will have to try this on SIMH one of these days.
Alex
 
Nice!

I've been on a FORTH kick, trying it on various platforms. Will have to add PDP-11 with RT-11 to the list. Was looking at a full OS/language combo called SOL-11, but I don't think it'll support a SCSI drive. It will support an RL02.

- Earl
 
Nice!

I've been on a FORTH kick, trying it on various platforms. Will have to add PDP-11 with RT-11 to the list. Was looking at a full OS/language combo called SOL-11, but I don't think it'll support a SCSI drive. It will support an RL02.

- Earl

Hi Earl,

Thanks.

Here's a note for you: The FORTH.DAT file I downloaded from the Forth Interest Group website, was a bit funny. screens 1, 2 & 3 are all the same, with commands for loading the editor, assembler and string functions. Screen 4 is empty, screens 5 & 6 have the error messages - and that is where things are off. By looking at the first screen and the load commands, the error messages are expected to be on screen 4 & 5, not screen 5 & 6. And the editor is expected to start on screen 6, not screen 7, etc. The FORTH.DAT file has 71 screens in it, although it is described as having 70 screens. The file size on the system bears that out, also.

Sure enough, when I issued the 1 LOAD command, it started off, and then threw an error when the editor did not appear at screen 6.

Since the first 3 screens are the same, I edited a copy of the FORTH.DAT file to remove the first screen. This new file is now 2 blocks smaller, as it should be.

I copied that file onto my system as FORTH.dat, and now things are working fine.

So, when you decide to try FIG-Forth on the PDP-11, remember this and you will not get tripped up by it as I did. Anyway, it's a trivial fix.

Good luck!

smp
 
So if I'm following you correctly, the "new" FORTH.DAT thus now starts with _two_ identical screens rather than three? I don't even claim to be a forth newbie but it's definitely on my "one of these days" lists.
 
So if I'm following you correctly, the "new" FORTH.DAT thus now starts with _two_ identical screens rather than three? I don't even claim to be a forth newbie but it's definitely on my "one of these days" lists.

Yes. You have it correct.

I figured there is no obvious reason that three screens have to be the same (or even two screens, for that matter), and taking off the first 1024 bytes (16 lines of 64 characters each) was the easiest way to get the job done.

smp
 
Hi, late to the conversation. If you had run `@forth.bld` (assuming RT-11 has IND---can't remember) it would/should have removed all the duplicate single-quotes that likely caused a lot of the errors. Glad you found the clean sources meanwhile -- jc
 
Back
Top