VCF West | Aug 01 - 02 2025, | CHM, Mountain View, CA |
VCF Midwest | Sep 13 - 14 2025, | Schaumburg, IL |
VCF Montreal | Jan 24 - 25, 2026, | RMC Saint Jean, Montreal, Canada |
VCF SoCal | Feb 14 - 15, 2026, | Hotel Fera, Orange CA |
VCF Southwest | May 29 - 31, 2026, | Westin Dallas Fort Worth Airport |
VCF Southeast | June, 2026 | Atlanta, GA |
Edited: While waiting for a multi-hour disk rebuild...
Short description of DECUS C Installation
1. First all files from the distribution disks are copied to a RL02 volume
http://www.kpxx.ru/DEC/PDP-11/Software/Langs/C/Decus/11sp68
11sp68.dsk is a disk image of diskimages that make the distribution
501.DSK
502.DSK
503.DSK
504.DSK
505.DSK
506.DSK
507.DSK
601.DSK
602.DSK
603.DSK
604.DSK
606.DSK
2. All T*.COM RT-11 Build files are copied to the host directory TBUILDORG and
then a copy of them is made in TBUILD where I made changes to them according to
the disk assignements of my emulated PDP-11 and then copy them back to
a dedicated RL02 image (DL3:) from which I invoke them
3. As written in TBUILD.COM we do not use TBUILD.COM but call the command files
individually, but first we edit them to reflect the correct disk assignements
ASSIGN DL1: SR:
ASSIGN DL2: OB:
ASSIGN DL2: LS:
ASSIGN DL2: MP:
ASSIGN DL2: OU:
4. They are copied to a dedicated RL02 image in order not to touch the DECUS C
distribution
5. Build C
@DL3:TMAKCC
6. Build AS
@DL3:TMAKAS
7. Build LB, as I have some issues with this command file, inline data of nested
command files terminate the command file, I call the sections individually,
assuming the disk assignements have been made we just call the two command files
@SR:TCLBAS.COM
@SR:TILBAS.COM
Note we build the libraries without EIS but SXT and SOB support as the goal is to
compile the RQDX3 sources which uses a DCT11 as the processor, we use the original
command files from the distribution, they are agnostic to our environment
and then we execute the rest from TMAKLB manually
8. We do not build the tools and other stuff that follows in TBUILD.COM as we do
not need it
9. Now we can change the environment to rqdx3 and compile the sources
@DL3:RQDX3
10. Currently this will produce some error messages we can ignore for the moment
?LINK-W-Multiple definition of MAIN
?LINK-W-Multiple definition of START
?LINK-W-Undefined globals:
$$MAIN
FORMAT
T$POWE
Let me know if you want the rest of the documentation in .txt form (cc.txt is in my reply above). None of the converters I found (after converting from RUNOFF to TeX) could do a decent job. The PDF I posted was the best I could get, but the online TeX to PDF converter didn't understand the blocks of code / command line examples. Other online converters either have worse output or hung. pdfTeX run locally just spewed loads of error messages and didn't generate any PDF output.Here a short update. With great support from Ian I managed to build and install DECUS C as in 11sp68 on RT-11 and I'm able to compile and assemble the RQDX3 sources. In fact, once you now how to do it it is not as complicated as thought at start. And with simh and fast computers nowadays the whole process takes minutes rather than hours. I have been using RT-11 V5.7 and the CPU set in simh was a PDP-11/93. The reason for the latter is simple, when booting RT5.7 it takes date and time from the host here a short list of bullet points
Yes I would love to have documents in txt format. Actually preferring txt over pdf, for me it's much easier to read and the code blocks are preserved, which in this case is very important. And it gives it a nostalgic touch.Let me know if you want the rest of the documentation in .txt form (cc.txt is in my reply above). None of the converters I found (after converting from RUNOFF to TeX) could do a decent job. The PDF I posted was the best I could get, but the online TeX to PDF converter didn't understand the blocks of code / command line examples. Other online converters either have worse output or hung. pdfTeX run locally just spewed loads of error messages and didn't generate any PDF output.
The text files are on-line at https://github.com/rust11/decusc - cc.txt, as.txt, lib1.txt, lib2.txt and runtim.txt.Yes I would love to have documents in txt format. Actually preferring txt over pdf, for me it's much easier to read and the code blocks are preserved, which in this case is very important. And it gives it a nostalgic touch.
Thanks for those as well--I'll put them up on the GitHub site as well, adding dates to each version.Thanks for those - here are two later but different versions as well for comparison:
Well... Maybe - here it is. - http://www.kpxx.ru/DEC/PDP-11/Software/Langs/C/DECI don't think the DEC RT-11 C compiler has survived.
Yes but it is slower than a slow thing that's basically stopped and gone for lunch... Hello World takes about a minute to compile - not even joking...Well... Maybe - here it is. - http://www.kpxx.ru/DEC/PDP-11/Software/Langs/C/DEC
Well, maybe, hardly, but not quite "Digital C".Well... Maybe - here it is. - http://www.kpxx.ru/DEC/PDP-11/Software/Langs/C/DEC
============================
Section 4.2: Command Line
============================
Command line syntax:
[-CEFJKLMNPRSTXZ] [-IDEV] [-DSYM[=VAL]] [-USYM] [-O OUTFILE] INFILE
-C Suppresses the compiler stage (only preprocessing + assembling).
-E Sets file length for temp/output to [-1] if not specified.
-F Includes FPU emulator even if not needed.
-J Disables FPU emulator even if floating point is used.
-K Suppresses processor initialization code.
-L Prints stage-completion messages (CPP, C0, C1, C2, AS).
-M Skips preprocessing.
-N Keeps temporary files.
-P Embeds diagnostics in code.
-R Enables preprocessor recursion.
-S Skips assembling.
-T Enables optimization statistics (requires -X).
-X Enables optimizer (C2).
-Z Omits floating-point formatting functions.
-IDEV Adds device to include search path (no colon).
-D Defines macro symbol: -DSYM or -DSYM=VAL (VAL defaults to 1).
-U Undefines macro symbol (overrides -D if both given).
-O Specifies output filename (can omit parts, defaults provided).
INFILE Required input file (.C or .S guessed based on flags).
Examples:
MYPROG → translates MYPROG.C to MYPROG.OBJ
-LXTO RK3: BBB → translates BBB.C to RK3:BBB.OBJ with optimization.
-LX BBB -O RK3: -T → same as above, flags rearranged.
============================
Appendix 3: Supplied Files
============================
File Size Date Description
------------ ------ ----------- -----------------------------------------------
CC.SAV 226 15-Jun-89 C Compiler
CCNHD.SAV 227 15-Jun-89 Compiler for CPUs without EIS
AS.SAV 65 15-Jun-89 Assembler
STDIO.H 4 15-Jun-89 I/O definitions
ERRNO.H 2 15-Jun-89 Error code definitions
CTYPE.H 5 15-Jun-89 Character classification functions
TIME.H 1 15-Jun-89 Time functions
SETJMP.H 1 15-Jun-89 Setjmp/longjmp
MATH.H 1 15-Jun-89 Math functions
RDIR.H 1 15-Jun-89 RDIR module
RT11.H 6 15-Jun-89 CRLIB definitions
TS41.H 5 15-Jun-89 CTLIB definitions
CURSES.H 7 15-Jun-89 Screen handling
SPEIS.OBJ 2 15-Jun-89 Main module (with EIS)
SPNHD.OBJ 2 15-Jun-89 Main module (no EIS)
INITNF.OBJ 1 15-Jun-89 Init module (no UNIX start seq)
NFTIO.OBJ 1 15-Jun-89 Terminal I/O
ASPEIS.OBJ 3 15-Jun-89 Standalone main (with EIS)
ASPNHD.OBJ 3 15-Jun-89 Standalone main (no EIS)
ANTIO.OBJ 1 15-Jun-89 Terminal I/O shutdown
CXLIB.OBJ 103 15-Jun-89 Standard C library
CRLIB.OBJ 21 15-Jun-89 System call library (RAFOS)
CTLIB.OBJ 2 15-Jun-89 TS monitor support library
CALIB.OBJ 71 15-Jun-89 Standalone support
CDIO.OBJ 5 15-Jun-89 Direct file access
CMLIB.OBJ 29 15-Jun-89 Math library
CSLIB.OBJ 44 15-Jun-89 Screen function library
FORSUP.OBJ 1 15-Jun-89 FORTRAN IV support
Assembly Sources:
SPNHD.MAC 1 15-Jun-89 Main (no EIS)
HEAD.MAC 1 15-Jun-89 Local macros
ANTIO.MAC 1 15-Jun-89 Terminal I/O shutdown
NOSYS.MAC 1 15-Jun-89 Standalone definitions
INIT.MAC 10 15-Jun-89 System initialization
TRAPS.MAC 6 15-Jun-89 Interrupt handling
NFTIO.MAC 4 15-Jun-89 Terminal I/O
CSV.MAC 5 15-Jun-89 Register save/restore
ATIMER.MAC 3 15-Jun-89 Hardware timer support
SUPORT.MAC 14 15-Jun-89 Init (with EIS)
NOFL.MAC 1 15-Jun-89 Init (no UNIX sequence)
Sorry - my mistake - wrong files. Now here are the correct files:Well, maybe, hardly, but not quite "Digital C".
Fixed!I get a 404