Google
 

Trailing-Edge - PDP-10 Archives - bb-x130a-sb - micimg.rnd
There are 3 other files named micimg.rnd in the archive. Click here to see a list.
.ps 60,75
#######
.s6
.c ;UNIVERSITY OF YORK
.s2
.c ;DEPARTMENT OF COMPUTER SCIENCE
.s3
.c ;^&MIC\&
.s2
.c ;Installation and Maintenance Guide
.s2
.c ;Edition 1.4
.s
.c;(Version 11C(1223) of MIC)
.s2
.c;April 1983
.s4
.c ;Author: J D Service
.s4.lm 15.rm 60
This document is an attempt to describe how a systems programmer may
maintain the MIC program and tailor it to local requirements.
.lm 0.rm 75
.ch Introduction

MIC the Macro Interpreted Command system for the DECsystem-10
was written at the Hatfield Polytechnic from 1972 onwards by Pete
Henry, Fred Brown and latterly myself.
.s
The MIC package was originally distributed by the Hatfield Polytechnic
but with the 6.03 release of TOPS-10 the monitor support for MIC was
included in the standard monitor and the current version of MIC and its
documentation was included on the monitor tape.  Though the monitor code
was now supported by DEC the MIC program was not.  It was given 
Category C support and has been supported in an ad hoc fashion by me.
.s
With the 7.01 release of TOPS-10 MIC and the MIC documentation was
released with the monitor and both these and the monitor code were
roughly correct.  Some errors existed in the monitor code and corrections to these have now been published in SPR's.
.ch Tailoring MIC to your requirements
MIC is a very complex piece of software which has gone through many
iterations and can now exist in several forms.  In order that some
maintenance is possible all the relevant code is defined in feature
tests and an installation is required to set these to their own
requirements.
.s
.lm 8.i -8
Note:-##Anyone adding enhancements to MIC is advised to include the
enhancements in a new feature test as it makes updating the source so
much easier, and if the enhancement is a good one why not tell me.
.lm 0
.HL 1 MIC feature tests
This section describes all the MIC feature tests and
options that may be used to tailor MIC.  As all of these feature tests
are defined using IFNDEF conditionals, a simple way to redefine them
is to create yourself a MICPRM.MAC file which simply contains your
settings of these feature tests.  Then simply assemble the MICPRM.MAC
file immediately before MIC.MAC.
.s2
The following sections are titled as
.s.nf
Feature name - short description - default value
.f
.HL2 FTMBCH    -    MIC BATCH    -    OFF
This feature test controls the code to allow MIC to support the MIC
BATCH system.  This system, which was written at Hatfield, uses MIC
as its BATCON equivalent and supports such features as user definable
dollar cards in SPRINT MIC BATCH which is described in the Proceedings of the 1976
DECUS Europe Symposium.
.HL2 FTCOSMIC    -    COSMIC-10 BATCH    -    OFF
The later version of MIC BATCH.
.HL 2  FTCJOB    -    COJOBS    -    ON
Include support for COJOBS, the MIC concurrent job facility.
.HL 2 FTGALA    -    GALAXY MODS    -    ON
Include support for COJOBS under GALAXY as opposed to MPB.
.HL2  FTSUPR    -    supervision libraries    -    ON
When MIC cannot find a MACRO file on your disk area, it searches your
supervisory area [Your Project,1] for the Macro before searching
ersatz device MIC.
.HL 2 FTMSFD - MIC SFD - ON
When MIC cannot find a MACRO file on your disk area it searches your MIC
SFD [Your PPN,MIC] before searching your supervisory area or ersatz 
device MIC.
.HL 2 FTOPR - MIC OPR command - OFF
Use MIC to send messages to the system operator, never used.
.HL2 FTPSI - Software interrupts - ON
Use the software interrupt system to trap errors, clean up, and restart
MIC.
.HL2 FTPATH - Path support - ON
Support for SFD's.
.HL2 FTDDT - Debugging support - OFF
Enables the user to build a debugging version of MIC, see next chapter.
.HL2 FTHATF - Hatfield features - OFF
Include options peculiar to Hatfield.
.HL2 FTBHIV - Beehive terminal - OFF
Include support for flashy Beehive VDU used as CTY at Hatfield - gives
fancy STATUS output.
.HL 2 FTCASE - Inverted case - OFF
Change the default of MIC SET LC to be MIC SET NO LC, and include the
MIC SET CASE command.
.HL 2 SFDLVL - Sub file nesting - 6
This parameter controls the maximum level of nesting of Sub File
Directories.  This requires FTPATH to be on.
.HL 2 IMXLVL - Nesting \of Processes - 25
This parameter controls the maximum level of nesting of MIC processes.
The value may be changed dynamically by the operators using a
"MIC SET MAXLVL n" command.
.HL 2 ICJREQ - Cojobs required - 4
This parameter defines the maximum number of COJOBS available when MIC
starts running.  This value may be changed dynamically by the operators
using a "MIC SET CJREQ n" command.
.HL2 FTOALT - Old Style Altmodes - OFF
MIC used to recognise the three altmodes 31 octal, 175 octal and 176
octal, which was annoying as the Scandinavian character set used 175 and 176 as
special characters.  This code has now been turned off by this feature test.
.HL2 FTCLASS - Class Schedular Stuff - OFF
Include the code that allows a switch to the COJOB command to select
which class the COJOB will run in.  
.HL2FTCHARGE - Charge Accounting Stuff - OFF
Include code for charge accounting just for DEC-ISG.
.HL2 FTTASK - More Account Stuff - OFF
As FTCHARGE.
.HL2 FTTSG - TSG Hacks - OFF
Include some DEC-ISG special features.
.HL2 FTNIH - NIH features - OFF
This feature test is used to define some special bits and pieces
from the use of the US National Institutes of Health.
.ch Debugging MIC with DDT
This chapter describes how to build a single user version of MIC which
has DDT loaded and which can be used under timesharing without affecting
the system version of MIC.
.HL 1 Assembling single user MIC
MIC must be re-assembled if it is intended to load it with DDT, and the
feature test FTDDT must be turned on.  There is no need to edit MIC to
do this as FTDDT is set to zero using an IFNDEF.  Therefore a way to assemble MIC is:-
.s.nf
&.R MACRO
&*MIC, MIC/CRF = TTY:, DSK:MIC.MAC
FTDDT == -1
_^Z
_^Z
.s.f
Obviously the FTDDT could be put in a file or possibly a MIC macro
could be used.
.HL 1 Loading MIC with DDT
As both the high and low segments of MIC are dynamic we must link MIC
with DDT in such a way that DDT and the SYMBOL table are loaded before
MIC, and that both are in the high segment.
.s
The way to do this is:-
.s.nf
&.R LINK
&*/SYMSEG:HIGH
&*/DEBUG
&*/PATCHSIZE:7000
&*MIC.REL
&*/GO
_^Z
&.SSAVE MIC        ;   (NB Name must be MIC!!)
.tp 15
.tp 10
.HL 1 Running MIC with DDT
The MIC you have now created may be run for a single PPN by the following technique
.s.nf
&.R SETSRC
&*SYS
&*_^Z
&.ASSIGN DSK SYS
&.R MIC            ;    this will run your MIC
.s.f
This procedure defines your disk area as SYS and adds real SYS as an
area to be searched if it cannot find any programs on your disk area.
.s
The copy of MIC that you have now started will remain attached to your
TTY and any operator messages which this MIC may need to output will be
directed to your TTY.
.HL 1 Testing MIC files
To run MIC files under your single user version of MIC, log in on
another terminal and:-
.s.nf
_.R SETSRC
&*SYS
*_^Z
_.ASSIGN DSK SYS
.s.f
Any MIC files you now run will use the special MIC, not the system
version and as your terminals are, hopefully, side-by-side you may
debug MIC.
.s
.lm 8.i -8
Note:-##It is very easy to get confused which MIC you are running under
so it is always as well to change the version number of MIC and check 
it by
.s.nf
&.MIC        ; no argument necessary
&.VERSION
.s.f
Another useful check is to use the "MIC STATUS" command to type out the
status of the MIC that you are associated with - this types out a helpful text to indicate that it is running with DDT.  I always make sure that a file
MIC:MIC.MIC exists which contains simply:-
.s.nf
_.VERSION
_.MIC STATUS
.s.f
It has proved to be useful on many occasions.
.lm 0