www.digitalmars.com         C & C++   DMDScript  

digitalmars.empire - TOPS-10 Empire, "porting" notes

reply Martin Harriman <postmaster nothing.here.local> writes:
I'm happily running Empire under TOPS-10 on my laptop. The Github 
source packages is almost sufficient as is, but for the benefit 
of anyone wanting to repeat this, here's what had to change to 
get Empire up on TOPS-10 7.04.

As others have noted, there are a few subroutines and functions 
missing, most likely because they were part of Caltech's 
infrastructure (Caltech added a fair amount of secret sauce back 
when the mighty PDP-10 was the hot thing, and there was such a 
thing as the DSKE committee). These are all trivial to 
reimplement (most simply package a monitor call for Fortran's 
benefit). The sources, as is, have trailing blank lines and a . 
(TOPS-10 prompt), so the prompt at least must be trimmed to make 
the compiler happy. Since xterm/telnet/Terminal/thing-of-choice 
these days are ANSI (VT-100-ish), it's simplest to replace CURSOR 
with an ANSI equivalent. Similarly, it's simplest to intercept 
calls to OUTCHR with the non-ANSI clear-the-screen character and 
send the ANSI equivalent in its place.

Fortran V11 blows compiler-error chunks on Empire, but Fortran V6 
is perfectly happy with it.

For my own lazy benefit, I convert all input to upper case.
Oct 04 2015
next sibling parent Dan Olson <gorox comcast.net> writes:
Martin Harriman <postmaster nothing.here.local> writes:

 I'm happily running Empire under TOPS-10 on my laptop. The Github
 source packages is almost sufficient as is, but for the benefit of
 anyone wanting to repeat this, here's what had to change to get Empire
 up on TOPS-10 7.04.

 As others have noted, there are a few subroutines and functions
 missing, most likely because they were part of Caltech's
 infrastructure (Caltech added a fair amount of secret sauce back when
 the mighty PDP-10 was the hot thing, and there was such a thing as the
 DSKE committee). These are all trivial to reimplement (most simply
 package a monitor call for Fortran's benefit). The sources, as is,
 have trailing blank lines and a . (TOPS-10 prompt), so the prompt at
 least must be trimmed to make the compiler happy. Since
 xterm/telnet/Terminal/thing-of-choice these days are ANSI
 (VT-100-ish), it's simplest to replace CURSOR with an ANSI
 equivalent. Similarly, it's simplest to intercept calls to OUTCHR with
 the non-ANSI clear-the-screen character and send the ANSI equivalent
 in its place.

 Fortran V11 blows compiler-error chunks on Empire, but Fortran V6 is
 perfectly happy with it.

 For my own lazy benefit, I convert all input to upper case.
Cool. Did you also work on a TOPS-10 system in your past? I did something similar a couple years ago but instead updated some of the fortran sources to work with DEC's FORTRAN-10 and rewrote assembler MACRO routines, I think to use ANSI cursor movement like you did. The goal was to run it on a real DEC-10. I compiled and tested in a sim because the real machine had very little real disk space, then kermited the binaries to the real hardware. It ended having a different release of the FORTRAN-10 libraries in my sim, then I lost interest, or rather traded my interest to the D-language. The map files were missing I think? Did you generate those? Anyway, you have rekindled my desire to get empire running on the real h/w. -- Dan
Nov 08 2015
prev sibling parent Walter Bright <newshound2 digitalmars.com> writes:
On 10/4/2015 11:31 AM, Martin Harriman wrote:
 I'm happily running Empire under TOPS-10 on my laptop. The Github source
 packages is almost sufficient as is, but for the benefit of anyone wanting to
 repeat this, here's what had to change to get Empire up on TOPS-10 7.04.

 As others have noted, there are a few subroutines and functions missing, most
 likely because they were part of Caltech's infrastructure (Caltech added a fair
 amount of secret sauce back when the mighty PDP-10 was the hot thing, and there
 was such a thing as the DSKE committee). These are all trivial to reimplement
 (most simply package a monitor call for Fortran's benefit). The sources, as is,
 have trailing blank lines and a . (TOPS-10 prompt), so the prompt at least must
 be trimmed to make the compiler happy. Since
 xterm/telnet/Terminal/thing-of-choice these days are ANSI (VT-100-ish), it's
 simplest to replace CURSOR with an ANSI equivalent. Similarly, it's simplest to
 intercept calls to OUTCHR with the non-ANSI clear-the-screen character and send
 the ANSI equivalent in its place.

 Fortran V11 blows compiler-error chunks on Empire, but Fortran V6 is perfectly
 happy with it.

 For my own lazy benefit, I convert all input to upper case.
You can submit pull requests, ya know! The bit about the trailing blank lines and '.' surely comes about from the way I got the files off of the 10. I connected via the phone to the 10, running a program on an LSI-11 which captured the text of the 'type' command, and saved it to an 8" floppy. I later used the same technique to transfer it to an IBM PC and a 5.25" floppy, and thence to a CD, and finally to github. I suppose it is amazing it survived all that. I did have a listing of it as a backup. I also had everything archived to a magtape, but the Caltech tape drive was so out of spec that no other drive could read it. I threw the tape in the trash.
Nov 20 2015