
                  DOCs for NEW_WRK files.


This set of programs is designed to minimize the work 
involved, and the possibility of errors, in changing from 
working on one program to another.  The programs are only 
useful if you have HOTWIRE. After installation, you can 
leave one debug environment and enter another one by 
simply typing in a 'base' file name once.  I _define_ the 
base as the 8-character part of the file name. NEW_WRK has 
a graphical user interface.

Hotwire provides an excellent base for program development 
work.  The GUI interface is one of the best thought out 
interfaces I've seen; but still it is a fair amount of 
work to start a new programming job.  Also, the more 
typing and clicking one does, the more chance there is for 
error.  I usually have 15 to 20 projects in some stage of 
development at a time.  Some of them last for for many 
months and will undoubtedly never get done.  Many of them 
are efforts to try out some new facet of the language I'm 
using and last for only a few hours.  For these small 
studies, I tried the practice of having one menu devoted to 
a program called UNDRTEST and overlaying the current copy 
with each new short project that came up.  Unfortunately, I 
am well on the way to having a 100 or so files called 
UNDRTEST and they are all different!  What I decided a 
needed was a super low overhead way to kick off a new 
program design project.  The files included here  serve my 
needs very well indeed.


The program NEW_WRK will create a new WRK file compatible 
with HOTWIRE.  The entries in a WRK file consist of full 
drive\path\file\extender names identifying a specific 
file.  Now within a project, you will have several files 
with the same base  but different extenders.  I, for 
example,  work with assembly language and Pascal; but 
mostly Pascal.  I devote one HOTWIRE menu to a project and I 
follow the convention that HOTWIREn.HOT corresponds to 
HOTWIREn.WRK.  If I were to write a program named MYPRG ,I 
would have the following arrangement for the first 5 
entries in my WRK file: 

   File Name          Created by     Used by
   MYPRG.PAS           editor        editor, compiler
   MYPRG.O             compiler      linker
   MYPRG.PRG           linker        desktop, Hotwire, LAUNCH.PRG
   MYPRG.ERR           compiler      programmer
   MYPRG.DOC           WP            any human
     
Notice the entry, Launch.  This is the other program 
included in the .ARC.  In the normal course of events a new  
PRG would be executed by Hotwire and no command line would 
be involved.  But to do this would mean that to test a 
newly created program, you would have to use the 'set path' 
function in Hotwire.  More mouse clicking.  LAUNCH is a 
small program that accepts a command line as input and 
executes the program named on the command line.  By this 
expedient, ALL the operations involved in debugging can be 
command line, and thus WRK file, oriented.    

                  Configuring the program

Before NEW_WRK can be used it must be configured.  The 
ability to configure is intrinsic to the program. 
First, establish a set of WRK files and a menu that you 
like.  Use the tools provided by Hotwire, adding, zapping, 
and juggling at will.  Where you normally would execute a 
newly revised program, execute instead LAUNCH.PRG and set it to 
require a command line.  For my set up - the one listed 
earlier - the command line would have an entry of ~3, 
identifying the third file, the one with a PRG extension.

When you have an arrangement you like, click on NEW_WRK and 
take the 'configure' choice when it is presented.  You will 
be asked to identify a representative WRK file (the one you 
just saved from Hotwire).  NEW_WRK saves the entire WRK 
file as an archetype file. It also saves the path that 
leads to the directory containing the WRK files so the file 
chosen must be an _operational_ file.  NEW_WRK.PRG  will 
save the desired information in a file named NEW_WRK.CFG 
and then exit.   

You should reconfigure if you relocate he active Hotwire 
files, or if you juggle the entries in the WRK file 
somehow.  Other than that, this is a one-time operation.

                  Starting a new project

Simply execute NEW_WRK.  You will be asked to supply a 
final _digit_ for a file to be written; remember the 1:1 
correspondence I mentioned earlier between .HOT and .WRK 
files.  I mark each of the 10 Hotwire menus in a prominent 
way with its' number so I always remember where I am. I  
might mention that I have seven menus all devoted to 
program development.

You will also be asked for the 8-character part of a file 
name to identify your new project.  NEW_WRK will use the 
information in its' .CFG file to create a new WRK file,  
the paths and extenders come from .CFG and the basic file 
name comes from your input.  You can create up to 8 
different files, as allowed by Hotwire.  Some lucky people 
will have debuggers and resource file generators that they 
can add to the sample list shown earlier.  NEW_WRK then 
overwrites the existing WRK file with the same digit you 
just supplied.  Hotwire doesn't realize the environment 
has changed, so select another menu and then go to the 
target menu.  That's it!   About as painless as it could 
get, short of hooking some wires up to your head.  When you 
call your editor for the initial input, you will be 
reminded that you are creating a new file,  and in the normal 
development routine each program creates the needed files 
for its' successor.

There is no need to save the old WRK file first, because 
all you have to do to recreate the old environment is to 
type in the old file name.  

                     Problems and such

All eight files will be reproduced from the 'template', 
assuming of course that the archetype WRK file had eight 
paths selected.  This may be a problem for a few people - 
obviously it's not for me.  I would make all 8 and then 
zap any superfluous entries.

The NEW_WRK program uses two different resource files, one 
for color and one for monochrome.  It will automatically 
select the proper one; the other one can be discarded if 
you have only one monitor.  I don't like this approach; but I 
haven't mastered the ability to get one resource that 
satisfies me in both medium and high resolution.  I don't 
have a color monitor and use BIGCOLOR to emulate a color 
monitor.   Perhaps if I had a color monitor, I could do 
better. 

You will potentially have five files in the directory 
containing this archive, exclusive of documentation and 
source: NEW_WRK.PRG, NEW_WRK.RSCM, NEW_WRK_RSCC, 
NEW_WRK.CFG (produced by running the .PRG the first time), 
and perhaps LAUNCH.PRG.  I suspect that you will prefer to 
put LAUNCH in the directory containing the program under 
development, however.  Then there will be no confusion 
about what the current path is when your program executes.

The program was tested on an ST with level 1.00 TOS and 
Hotwire version 2.1.  It doesn't do anything clever that I 
can think of so it should be immune to just about anything 
short of a change in the format of the Hotwire WRK file. 

                      And Finally...

I assume that Hotwire is a registered trademark of CodeHead 
Software.

Permission to freely reproduce this archive is granted, 
provided that  the content is not altered in any way.

The program is written in Personal Pascal level 2, and the 
source code is included in the archive.

           Placed in public domain in July 1991.
                        Merlin L. Hanson

