I have been working with Bob recently to bring the fix
up on VENTI:: to
prevent the imminent COM911 BUGHLT. We've both been hampered by some domestic
duties and what I refuse to call "forgetfulness" in the particulars of
generating a Tops-10 monitor.? Neither one of us has done it in ...'awhile'...
Some years ago I wrote a "recipe" to do this kind of thing. I do not remember
if I posted it here or on another mailing list, so here it is just in case. I
wrote it to document how to update CLOCK1.MAC to enable the idling mechanism
of KLH10, but I guess that it would work the same for DECnet fixes.
Hope this helps, :)
G.
-----
1. First of all make sure you have a complete set of monitor sources in
[10,7,MON]. If you followed either the Software Installation Guide or some
online tutorial you should be okay. In particular make sure that you have
the following:
[10,7,MON]S.MAC
[10,7,MON]DEVPRM.MAC
[10,7,MON]DTEPRM.MAC
[10,7,MON]NETPRM.MAC
[10,7,MON]D36PAR.MAC
[10,7,MON]COMMON.MAC
[10,7,MON]COMDEV.MAC
[10,7,MON]COMMOD.MAC
[10,7,MON]CLOCK1.MAC
2. Also make sure you have REL:TOPS10.REL and [10,7,MON]MONGEN.EXE
3. Make a backup copy of the original TOPS10.REL. I like to preserve the
timestamp of original files, therefore I do a rename followed by a copy of
the renamed file (I have adopted .DEC as the extension for original files)
.RENAME REL:TOPS10.DEC=REL:TOPS10.REL
.COPY REL:TOPS10.REL=REL:TOPS10.DEC (destination=source)
4. Change your default to [10,7,MON]
.R SETSRC
*CP [10,7,MON]
*^Z
5. Make a backup copy of CLOCK1.MAC as you did for TOPS10.REL
6. Open CLOCK1.MAC with any editor of your choice (SOS, EDIT, etc.) and
modify it as follows:
Before: SOJG 6,1 ;AC1 - DON'T CAUSE EXCESSIVE MEMORY INTERFERENCE
After: CONO 740,1 ;AC1 - DON'T CAUSE EXCESSIVE MEMORY INTERFERENCE
(I have removed some white space to fit either line in 78 characters)
The address in the above CONO instruction must match the address of the
idler in the emulator configuration. Several online tutorials suggest 700
but for some reason 740 should be a safer choice (I forgot the specifics,
nonetheless some post in alt.sys.pdp10 may have some explanation)
7. Compile CLOCK1.MAC (it will create CLOCK1.REL)
.COMPIL/COMPIL CLOCK1
8. Replace the CLOCK1 module from CLOCK1.REL in TOPS10.REL
.R MAKLIB
*REL:TOPS10.REL=REL:TOPS10.REL/MASTER:CLOCK1,DSK:CLOCK1.REL/REPLACE:CLOCK1
*REL:TOPS10.REL=REL:TOPS10.REL/INDEX
*^Z
(Indexing is optional but will speed up relinks)
9. Run the monitor configuration utility. It will ask lots of questions,
note that most defaults will be okay. I have attached to this message a
sample record of a generation of mine. Obviously some parameters such as the
system name and address will have to be customized. Values in the decimal
and octal "symbol,value" sections are specific for my installation and could
be safely skipped. If you answer YES to the first question the utility will
generate a MONGEN.MIC file with a record of your input for later reference:
.R MONGEN
Write MONGEN.MIC (YES,NO) : YES
[...]
The latest Software installation Guide contains a guide of the whole
procedure (chapter 9). You can find it at the following address:
http://pdp-10.trailing-edge.com/tops10v704_docc/01/10,7/docupd/sig.mem.html
10. With any editor of your choice create a MONBLD.MIC procedure file
containing the following lines:
.DAYTIME
.COMPILE/COMPILE F,S
.COMPILE/COMPILE DEVPRM,DTEPRM,NETPRM,D36PAR
.COMPILE/COMPILE SYSCNF+<COMMON,COMDEV,COMMOD>
.R LINK
*SYSTEM/SAVE/NOINITIAL/HASH:13K = /LOCALS -
*COMMON,COMDEV,COMMOD,REL:TOPS10/SEARCH-
*/PATCH:200/COUNTERS/GO
.DIRECT/DETAIL SYSTEM.EXE
.DAYTIME
Initial dots and asterisks are required. It's important that a space be
present between /LOCALS and the following hyphen or it will not work.
11. Execute the relink procedure you created in the previous step:
.DO MONBLD
It will take from a few seconds to a few minutes and will create a new
SYSTEM.EXE monitor file in the current directory.
12. Copy the new monitor to the system directory giving it some unique name:
.COPY SYS:MYMON.EXE=DSK:SYSTEM.EXE
13. Reboot your system and type the name of your new monitor at the BOOT>
prompt. Unless you have some strange configuration it should be enough for
it to find it, otherwise type its full path:
BOOT>MYMON
14. If everything works as intended you could either copy or rename your new
monitor as SYS:SYSTEM.EXE so that it would be loaded by default during boot
by just pressing the return key.
Whenever you will need a new monitor it will be enough to just change your
default to [10,7,MON] and then run MONGEN.MIC and MONBLD.MIC. In fact the
output of MONGEN.EXE is a runnable MIC file, therefore for minor tweaks it
will be enough to edit MONGEN.MIC and then run it with DO instead of going
through a whole new interactive MONGEN.EXE dialogue.