[avida-cvs] avida CVS commits: /current README /current/aclocal emptyfile /current/source defs.hh /current/source/cpu hardware_4stack.cc hardware_cpu.cc hardware_util.cc hardware_util.hh /current/source/main analyze.cc avida.cc inst_set.cc inst_set.hh primitive.ncb primitive.pch primitive.pdb primitive.sln primitive.suo primitive.vcproj /current/source/qt-viewer qt-viewer.pch qt-viewer.pdb qt_viewer.ncb qt_viewer.sln qt_viewer.suo qt_viewer.vcproj setup_avida.cc /current/source/viewers ncurses-viewer.ilk ncurses-viewer.pch ncurses-viewer.pdb ncurses_viewer.ncb ncurses_viewer.sln ncurses_viewer.suo ncurses_viewer.vcproj

kaben avida-cvs at alife.org
Fri May 23 12:43:51 PDT 2003


kaben		Fri May 23 04:43:51 2003 EDT

  Modified files:              
    /avida/current	README 
    /avida/current/aclocal	emptyfile 
    /avida/current/source	defs.hh 
    /avida/current/source/cpu	hardware_4stack.cc hardware_cpu.cc 
                             	hardware_util.cc hardware_util.hh 
    /avida/current/source/main	primitive.ncb primitive.pch 
                              	primitive.pdb primitive.sln 
                              	primitive.suo primitive.vcproj 
                              	analyze.cc avida.cc inst_set.cc 
                              	inst_set.hh 
    /avida/current/source/qt-viewer	qt-viewer.pch qt-viewer.pdb 
                                   	qt_viewer.ncb qt_viewer.sln 
                                   	qt_viewer.suo qt_viewer.vcproj 
                                   	setup_avida.cc 
    /avida/current/source/viewers	ncurses-viewer.ilk ncurses-viewer.pch 
                                 	ncurses-viewer.pdb ncurses_viewer.ncb 
                                 	ncurses_viewer.sln ncurses_viewer.suo 
                                 	ncurses_viewer.vcproj 
  Log:
  
  Merge of instruction set code cleanup from branch kaben.
  In defs.hh, #define USE_INST_SET_CODE to enable use of new instruction
  set code.  If not defined, original code is used.  We'll remove this
  macro and references to it, as well as old code, after successful test
  of code.
  
  
  
-------------- next part --------------
Index: avida/current/README
diff -u avida/current/README:1.2 avida/current/README:1.3
--- avida/current/README:1.2	Fri Oct 27 15:05:37 2000
+++ avida/current/README	Fri May 23 04:43:21 2003
@@ -1,3 +1,4 @@
+
 To compile and install Avida, you have to do
   ./configure; make; make install
 
Index: avida/current/aclocal/emptyfile
diff -u /dev/null avida/current/aclocal/emptyfile:1.2
--- /dev/null	Fri May 23 04:43:49 2003
+++ avida/current/aclocal/emptyfile	Fri May 23 04:43:21 2003
@@ -0,0 +1 @@
+(this file is deliberately empty, to force cvs co of aclocal/.)
Index: avida/current/source/defs.hh
diff -u avida/current/source/defs.hh:1.27 avida/current/source/defs.hh:1.28
--- avida/current/source/defs.hh:1.27	Sun May 18 21:15:21 2003
+++ avida/current/source/defs.hh	Fri May 23 04:43:22 2003
@@ -18,6 +18,15 @@
 #define HTMLDIR "../work/doc_html/"
 #endif
 
+/*
+When defined, instruction sets, instruction libraries, hardware use new
+instruction set code.  The old code remains, and will be used if the
+following is not defined.
+*/
+/* XXX remove after regression tests */
+#define USE_INST_SET_CODE
+/**/
+
 // -= Various view modes =-
 #define VIEW_NEWVIEWER
 // #define VIEW_VISTA
Index: avida/current/source/cpu/hardware_4stack.cc
diff -u avida/current/source/cpu/hardware_4stack.cc:1.3 avida/current/source/cpu/hardware_4stack.cc:1.4
--- avida/current/source/cpu/hardware_4stack.cc:1.3	Wed May 21 20:05:57 2003
+++ avida/current/source/cpu/hardware_4stack.cc	Fri May 23 04:43:22 2003
@@ -145,12 +145,18 @@
 
   char marker; fp>>marker; assert( marker == '|' );
   /* YIKES!  data loss below: */
+#ifdef USE_INST_SET_CODE
   char the_cur_stack = cur_stack;
   char the_cur_head = cur_head;
   char the_input_pointer = input_pointer;
   fp.get(the_cur_stack);
   fp.get(the_cur_head);
   fp.get(the_input_pointer);
+#else /* USE_INST_SET_CODE */
+  fp.get((char)cur_stack);
+  fp.get((char)cur_head);
+  fp.get((char)input_pointer);
+#endif /* USE_INST_SET_CODE */
 
   // IO buffers
   input_buf.LoadState(fp);
@@ -162,6 +168,7 @@
 }
 
 
+#ifdef USE_INST_SET_CODE
 ///////////////
 //  cInstLib4Stack
 ///////////////
@@ -217,12 +224,13 @@
   const cInstruction & GetInstDefault(){ return inst_default; }
   const cInstruction & GetInstError(){ return inst_error; }
 };
-
+#endif /* USE_INST_SET_CODE */
 
 ///////////////
 //  cHardware4Stack
 ///////////////
 
+#ifdef USE_INST_SET_CODE
 const cInstruction cInstLib4Stack::inst_error(255);
 const cInstruction cInstLib4Stack::inst_default(0);
 cInstLibBase *cHardware4Stack::GetInstLib(){ return s_inst_slib; }
@@ -246,9 +254,17 @@
     tHardware4StackMethod function;
   };
   static const cInstEntry4Stack s_f_array[] = {
+    /*
+    Note: all entries of cNOPEntryCPU s_n_array must have corresponding
+    in the same order in cInstEntryCPU s_f_array, and these entries must
+    be the first elements of s_f_array.
+    */
     cInstEntry4Stack("nop-A",     &cHardware4Stack::Inst_Nop),
     cInstEntry4Stack("nop-B",     &cHardware4Stack::Inst_Nop),
     cInstEntry4Stack("nop-C",     &cHardware4Stack::Inst_Nop),
+
+    // Added "map-null" for use in analyze mode. -- kgn
+    cInstEntry4Stack("map-null",  &cHardware4Stack::Inst_Nop),
     cInstEntry4Stack("nop-X",     &cHardware4Stack::Inst_Nop),
     cInstEntry4Stack("if-equ-0",  &cHardware4Stack::Inst_If0),
     cInstEntry4Stack("if-not-0",  &cHardware4Stack::Inst_IfNot0),
@@ -365,7 +381,7 @@
   );
 
   cout <<
-  "<cHardware4Stack::initInstLib> test of ick" <<endl<<
+  "<cHardware4Stack::initInstLib> debug: important post-init values:" <<endl<<
   " --- GetSize(): " << inst_lib->GetSize() <<endl<<
   " --- GetNumNops(): " << inst_lib->GetNumNops() <<endl<<
   " --- GetName(last): " <<
@@ -374,13 +390,16 @@
 
   return inst_lib;
 }
+#endif /* USE_INST_SET_CODE */
 
 cHardware4Stack::cHardware4Stack(cOrganism * in_organism, cInstSet * in_inst_set)
   : cHardwareBase(in_organism, in_inst_set)
 {
+#ifdef USE_INST_SET_CODE
   /* FIXME:  reorganize storage of m_functions.  -- kgn */
   m_functions = s_inst_slib->GetFunctions();
   /**/
+#endif /* USE_INST_SET_CODE */
   memory = in_organism->GetGenome();  // Initialize memory...
   Reset();                            // Setup the rest of the hardware...
 }
@@ -520,18 +539,25 @@
 bool cHardware4Stack::SingleProcess_ExecuteInst(const cInstruction & cur_inst) 
 {
   // Get a pointer to the corrisponding method...
+#ifdef USE_INST_SET_CODE
   /* XXX start -- kgn */
-  //tHardwareMethod inst_ptr = GetInstSet().GetFunction(cur_inst);
   int inst_idx = GetInstSet().GetLibFunctionIndex(cur_inst);
   /* XXX end */
+#else /* USE_INST_SET_CODE */
+  tHardwareMethod inst_ptr = GetInstSet().GetFunction(cur_inst);
+#endif /* USE_INST_SET_CODE */
       
   // Mark the instruction as executed
   IP().FlagExecuted() = true;
 	
 #ifdef EXECUTION_ERRORS
   // If there is an execution error, execute a random instruction.
+#ifdef USE_INST_SET_CODE
+  if (organism->TestExeErr()) inst_idx = GetInstSet().GetRandFunctionIndex();
+#else /* USE_INST_SET_CODE */
   if (organism->TestExeErr()) inst_ptr = GetInstSet().GetRandFunction();
-#endif
+#endif /* USE_INST_SET_CODE */
+#endif /* EXECUTION_ERRORS */
 	
 #ifdef INSTRUCTION_COUNT
   // instruction execution count incremeneted
@@ -539,12 +565,15 @@
 #endif
 	
   // And execute it.
+#ifdef USE_INST_SET_CODE
   /* XXX start -- kgn */
-  //const bool exec_success = (this->*inst_ptr)();
   const bool exec_success
   //= (this->*(s_inst_slib->GetFunctions()[inst_idx]))();
   = (this->*(m_functions[inst_idx]))();
   /* XXX end */
+#else /* USE_INST_SET_CODE */
+  const bool exec_success = (this->*inst_ptr)();
+#endif /* USE_INST_SET_CODE */
 	
 #ifdef INSTRUCTION_COUNT
   // decremenet if the instruction was not executed successfully
Index: avida/current/source/cpu/hardware_cpu.cc
diff -u avida/current/source/cpu/hardware_cpu.cc:1.46 avida/current/source/cpu/hardware_cpu.cc:1.47
--- avida/current/source/cpu/hardware_cpu.cc:1.46	Wed May 21 20:05:57 2003
+++ avida/current/source/cpu/hardware_cpu.cc	Fri May 23 04:43:22 2003
@@ -13,7 +13,9 @@
 #include "../tools/string_util.hh"
 
 #include "../main/config.hh"
-#include "../main/inst_set.hh"
+#ifdef USE_INST_SET_CODE
+  #include "../main/inst_set.hh"
+#endif /* USE_INST_SET_CODE */
 #include "../main/inst_lib.hh"
 #include "../main/genome_util.hh"
 #include "../main/organism.hh"
@@ -22,8 +24,6 @@
 #include "test_cpu.hh"
 #include <limits.h>
 
-using namespace std;
-
 
 using namespace std;
 
@@ -147,6 +147,7 @@
   stack.LoadState(fp);
 
   char marker; fp>>marker; assert( marker == '|' );
+#ifdef USE_INST_SET_CODE
   /* YIKES!  data loss below: */
   char the_cur_stack = cur_stack;
   char the_cur_head = cur_head;
@@ -154,6 +155,11 @@
   fp.get(the_cur_stack);
   fp.get(the_cur_head);
   fp.get(the_input_pointer);
+#else /* USE_INST_SET_CODE */
+  fp.get((char)cur_stack);
+  fp.get((char)cur_head);
+  fp.get((char)input_pointer);
+#endif /* USE_INST_SET_CODE */
 
   // IO buffers
   input_buf.LoadState(fp);
@@ -165,6 +171,7 @@
 }
 
 
+#ifdef USE_INST_SET_CODE
 ///////////////
 //  cInstLibCPU
 ///////////////
@@ -220,12 +227,13 @@
   const cInstruction & GetInstDefault(){ return inst_default; }
   const cInstruction & GetInstError(){ return inst_error; }
 };
-
+#endif /* USE_INST_SET_CODE */
 
 ///////////////
 //  cHardwareCPU
 ///////////////
 
+#ifdef USE_INST_SET_CODE
 const cInstruction cInstLibCPU::inst_error(255);
 const cInstruction cInstLibCPU::inst_default(0);
 cInstLibBase *cHardwareCPU::GetInstLib(){ return s_inst_slib; }
@@ -249,9 +257,17 @@
     tHardwareCPUMethod function;
   };
   static const cInstEntryCPU s_f_array[] = {
+    /*
+    Note: all entries of cNOPEntryCPU s_n_array must have corresponding
+    in the same order in cInstEntryCPU s_f_array, and these entries must
+    be the first elements of s_f_array.
+    */
     cInstEntryCPU("nop-A",     &cHardwareCPU::Inst_Nop),
     cInstEntryCPU("nop-B",     &cHardwareCPU::Inst_Nop),
     cInstEntryCPU("nop-C",     &cHardwareCPU::Inst_Nop),
+
+    // Added "map-null" for use in analyze mode. -- kgn
+    cInstEntryCPU("map-null",     &cHardwareCPU::Inst_Nop),
     cInstEntryCPU("nop-X",     &cHardwareCPU::Inst_Nop),
     cInstEntryCPU("if-equ-0",  &cHardwareCPU::Inst_If0),
     cInstEntryCPU("if-not-0",  &cHardwareCPU::Inst_IfNot0),
@@ -446,6 +462,11 @@
   };
 
   const int n_size = sizeof(s_n_array)/sizeof(cNOPEntryCPU);
+
+  cout << "<cHardwareCPU::initInstLib> Instruction Library has "
+  << n_size << " instructions." << endl;
+
+
   static cString n_names[n_size];
   static int nop_mods[n_size];
   for (int i = 0; i < n_size; i++){
@@ -471,7 +492,7 @@
   );
 
   cout <<
-  "<cHardwareCPU::initInstLib> test of ick" <<endl<<
+  "<cHardwareCPU::initInstLib> debug: important post-init values:" <<endl<<
   " --- GetSize(): " << inst_lib->GetSize() <<endl<<
   " --- GetNumNops(): " << inst_lib->GetNumNops() <<endl<<
   " --- GetName(last): " <<
@@ -480,13 +501,16 @@
 
   return inst_lib;
 }
+#endif /* USE_INST_SET_CODE */
 
 cHardwareCPU::cHardwareCPU(cOrganism * in_organism, cInstSet * in_inst_set)
   : cHardwareBase(in_organism, in_inst_set)
 {
+#ifdef USE_INST_SET_CODE
   /* FIXME:  reorganize storage of m_functions.  -- kgn */
   m_functions = s_inst_slib->GetFunctions();
   /**/
+#endif /* USE_INST_SET_CODE */
   memory = in_organism->GetGenome();  // Initialize memory...
   Reset();                            // Setup the rest of the hardware...
 }
@@ -626,18 +650,25 @@
 bool cHardwareCPU::SingleProcess_ExecuteInst(const cInstruction & cur_inst) 
 {
   // Get a pointer to the corrisponding method...
+#ifdef USE_INST_SET_CODE
   /* XXX start -- kgn */
-  //tHardwareMethod inst_ptr = GetInstSet().GetFunction(cur_inst);
   int inst_idx = GetInstSet().GetLibFunctionIndex(cur_inst);
   /* XXX end */
+#else /* USE_INST_SET_CODE */
+  tHardwareMethod inst_ptr = GetInstSet().GetFunction(cur_inst);
+#endif /* USE_INST_SET_CODE */
       
   // Mark the instruction as executed
   IP().FlagExecuted() = true;
 	
 #ifdef EXECUTION_ERRORS
   // If there is an execution error, execute a random instruction.
+#ifdef USE_INST_SET_CODE
+  if (organism->TestExeErr()) inst_idx = GetInstSet().GetRandFunctionIndex();
+#else /* USE_INST_SET_CODE */
   if (organism->TestExeErr()) inst_ptr = GetInstSet().GetRandFunction();
-#endif
+#endif /* USE_INST_SET_CODE */
+#endif /* EXECUTION_ERRORS */
 	
 #ifdef INSTRUCTION_COUNT
   // instruction execution count incremeneted
@@ -645,12 +676,15 @@
 #endif
 	
   // And execute it.
+#ifdef USE_INST_SET_CODE
   /* XXX start -- kgn */
-  //const bool exec_success = (this->*inst_ptr)();
   const bool exec_success
   //= (this->*(s_inst_slib->GetFunctions()[inst_idx]))();
   = (this->*(m_functions[inst_idx]))();
   /* XXX end */
+#else /* USE_INST_SET_CODE */
+  const bool exec_success = (this->*inst_ptr)();
+#endif /* USE_INST_SET_CODE */
 	
 #ifdef INSTRUCTION_COUNT
   // decremenet if the instruction was not executed successfully
Index: avida/current/source/cpu/hardware_util.cc
diff -u avida/current/source/cpu/hardware_util.cc:1.24 avida/current/source/cpu/hardware_util.cc:1.25
--- avida/current/source/cpu/hardware_util.cc:1.24	Wed May 21 20:05:57 2003
+++ avida/current/source/cpu/hardware_util.cc	Fri May 23 04:43:22 2003
@@ -5,9 +5,6 @@
 // before continuing.  SOME RESTRICTIONS MAY APPLY TO USE OF THIS FILE.     //
 //////////////////////////////////////////////////////////////////////////////
 
-#include "hardware_method.hh"
-#include "hardware_util.hh"
-
 #include "../tools/string.hh"
 #include "../tools/file.hh"
 
@@ -15,6 +12,9 @@
 #include "../main/inst_util.hh"
 #include "../main/config.hh"
 
+#include "hardware_method.hh"
+#include "hardware_util.hh"
+
 #include "hardware_base.hh"
 #include "hardware_cpu.hh"
 #include "hardware_4stack.hh"
@@ -22,14 +22,17 @@
 using namespace std;
 
 
+#ifdef USE_INST_SET_CODE
 void cHardwareUtil::LoadInstSet(const cString & filename, cInstSet & inst_set, 
 				tDictionary<int> & nop_dict,
-				tDictionary<tHardwareMethod> & inst_dict,
-                                /* XXX start -- kgn */
-				tDictionary<int> & nop_dict_2,
-				tDictionary<int> & inst_dict_2)
-                                /* XXX end */
-{
+				tDictionary<int> & inst_dict
+){
+#else /* USE_INST_SET_CODE */
+void cHardwareUtil::LoadInstSet(const cString & filename, cInstSet & inst_set, 
+				tDictionary<int> & nop_dict,
+				tDictionary<tHardwareMethod> & inst_dict
+){
+#endif /* USE_INST_SET_CODE */
   cInitFile file(filename);
   file.Load();
   file.Compress();
@@ -52,39 +55,45 @@
     
     // Otherwise, this instruction will be in the set.
     // First, determine if it is a nop...
+#ifdef USE_INST_SET_CODE
+    /* XXX start -- kgn */
+    int nop_mod = -1;
+    if(nop_dict.Find(inst_name, nop_mod) == true) {
+      inst_set.AddNop2(nop_mod, redundancy, ft_cost, cost, prob_fail);
+      continue;
+    }
+    /* XXX end */
+#else /* USE_INST_SET_CODE */
     int nop_mod = -1;
     /* XXX start -- kgn */
     int nop_mod_2 = -1;
     /* XXX end */
     if (nop_dict.Find(inst_name, nop_mod) == true) {
       inst_set.AddNop(inst_name, &cHardwareBase::Inst_Nop, nop_mod,
-		 redundancy, ft_cost, cost, prob_fail);
-      /* XXX start -- kgn */
-      if(nop_dict_2.Find(inst_name, nop_mod_2) == true) {
-        inst_set.AddNop2(nop_mod_2, redundancy, ft_cost, cost, prob_fail);
-      } else { /* dicts mismatch! die horribly. */
-	cerr << "Warning: instruction set mismatch!" << endl;
-      }
-      /* XXX end */
+		      redundancy, ft_cost, cost, prob_fail);
       continue;
     }
+#endif /* USE_INST_SET_CODE */
 
     // Otherwise, it had better be in the main dictionary...
+#ifdef USE_INST_SET_CODE
+    /* XXX start -- kgn */
+    int fun_id = -1;
+    if(inst_dict.Find(inst_name, fun_id) == true){
+      inst_set.Add2(fun_id, redundancy, ft_cost, cost, prob_fail);
+      continue;
+    }
+    /* XXX end */
+#else /* USE_INST_SET_CODE */
     tHardwareMethod cpu_method = NULL;
     /* XXX start -- kgn */
     int fun_id = -1;
     /* XXX end */
     if (inst_dict.Find(inst_name, cpu_method) == true) {
       inst_set.Add(inst_name, cpu_method, redundancy, ft_cost, cost, prob_fail);
-      /* XXX start -- kgn */
-      if(inst_dict_2.Find(inst_name, fun_id) == true){
-        inst_set.Add2(fun_id, redundancy, ft_cost, cost, prob_fail);
-      } else { /* dicts mismatch! die horribly. */
-	cerr << "Warning: instruction set mismatch!" << endl;
-      }
-      /* XXX end */
       continue;
     }
+#endif /* USE_INST_SET_CODE */
 
     // Oh oh!  Didn't find an instruction!
     cerr << endl
@@ -102,12 +111,15 @@
 {
   // Nops (or other modifying-instructions...)  Note: Nops must be the
   //  first instructions added to the set.
+#ifndef USE_INST_SET_CODE
   tDictionary< int > nop_dict;
   nop_dict.Add("nop-A", REG_AX);
   nop_dict.Add("nop-B", REG_BX);
   nop_dict.Add("nop-C", REG_CX);
+#endif /* !USE_INST_SET_CODE */
 
   // Build a dictionary of instructions and their corresponding methods...
+#ifndef USE_INST_SET_CODE
   tDictionary< tHardwareMethod > inst_dict;
 
   // Remaining instructions.
@@ -310,31 +322,37 @@
   // Placebo instructions
   // nop-x (included with nops)
   inst_dict.Add("skip", (tHardwareMethod) &cHardwareCPU::Inst_Skip);
+#endif /* !USE_INST_SET_CODE */
   
+#ifdef USE_INST_SET_CODE
   /* XXX start -- kgn */
-  tDictionary<int> nop_dict_2;
+  tDictionary<int> nop_dict;
   for(int i=0; i<inst_set.GetInstLib()->GetNumNops(); i++)
-    nop_dict_2.Add(inst_set.GetInstLib()->GetNopName(i), i);
+    nop_dict.Add(inst_set.GetInstLib()->GetNopName(i), i);
 
-  tDictionary<int> inst_dict_2;
+  tDictionary<int> inst_dict;
   for(int i=0; i<inst_set.GetInstLib()->GetSize(); i++)
-    inst_dict_2.Add(inst_set.GetInstLib()->GetName(i), i);
+    inst_dict.Add(inst_set.GetInstLib()->GetName(i), i);
   /* XXX end */
+#endif /* USE_INST_SET_CODE */
 
   // And load it on up!
-  LoadInstSet(filename, inst_set, nop_dict, inst_dict, nop_dict_2, inst_dict_2);
+  LoadInstSet(filename, inst_set, nop_dict, inst_dict);
 }
 
 void cHardwareUtil::LoadInstSet_CPU4Stack(const cString & filename, cInstSet & inst_set)
 {
   // Nops (or other modifying-instructions...)  Note: Nops must be the
   //  first instructions added to the set.
+#ifndef USE_INST_SET_CODE
   tDictionary< int > nop_dict;
   nop_dict.Add("nop-A", REG_AX);
   nop_dict.Add("nop-B", REG_BX);
   nop_dict.Add("nop-C", REG_CX);
+#endif /* !USE_INST_SET_CODE */
 
   // Build a dictionary of instructions and their corresponding methods...
+#ifndef USE_INST_SET_CODE
   tDictionary< tHardwareMethod > inst_dict;
 
   // Remaining instructions.
@@ -537,22 +555,26 @@
   // Placebo instructions
   // nop-x (included with nops)
   inst_dict.Add("skip", (tHardwareMethod) &cHardware4Stack::Inst_Skip);
+#endif /* !USE_INST_SET_CODE */
   
-  cout << "Instruction Library in util has " << inst_dict.GetSize()
-       << " instructions." << endl;
-
+#ifdef USE_INST_SET_CODE
   /* XXX start -- kgn */
-  tDictionary<int> nop_dict_2;
+  tDictionary<int> nop_dict;
   for(int i=0; i<inst_set.GetInstLib()->GetNumNops(); i++)
-    nop_dict_2.Add(inst_set.GetInstLib()->GetNopName(i), i);
+    nop_dict.Add(inst_set.GetInstLib()->GetNopName(i), i);
 
-  tDictionary<int> inst_dict_2;
+  tDictionary<int> inst_dict;
   for(int i=0; i<inst_set.GetInstLib()->GetSize(); i++)
-    inst_dict_2.Add(inst_set.GetInstLib()->GetName(i), i);
+    inst_dict.Add(inst_set.GetInstLib()->GetName(i), i);
   /* XXX end */
+#endif /* USE_INST_SET_CODE */
+
+  cout << "Instruction Library in util has " << inst_dict.GetSize()
+       << " instructions." << endl;
+
 
   // And load it on up!
-  LoadInstSet(filename, inst_set, nop_dict, inst_dict, nop_dict_2, inst_dict_2);
+  LoadInstSet(filename, inst_set, nop_dict, inst_dict);
 }
 
 cInstSet & cHardwareUtil::DefaultInstSet(const cString & inst_filename)
@@ -563,11 +585,15 @@
   // set it up.
   if (inst_filename != "" && inst_set.GetSize() == 0) {
     if (cConfig::GetHardwareType() == HARDWARE_TYPE_CPU_ORIGINAL) {
+#ifdef USE_INST_SET_CODE
       inst_set.SetInstLib(cHardwareCPU::GetInstLib());
+#endif /* USE_INST_SET_CODE */
       LoadInstSet_CPUOriginal(inst_filename, inst_set);
     }
     else if (cConfig::GetHardwareType() == HARDWARE_TYPE_CPU_4STACK) {
+#ifdef USE_INST_SET_CODE
       inst_set.SetInstLib(cHardware4Stack::GetInstLib());
+#endif /* USE_INST_SET_CODE */
       LoadInstSet_CPU4Stack(inst_filename, inst_set);
     }
   }
Index: avida/current/source/cpu/hardware_util.hh
diff -u avida/current/source/cpu/hardware_util.hh:1.6 avida/current/source/cpu/hardware_util.hh:1.7
--- avida/current/source/cpu/hardware_util.hh:1.6	Mon May 19 12:30:07 2003
+++ avida/current/source/cpu/hardware_util.hh	Fri May 23 04:43:22 2003
@@ -19,14 +19,21 @@
 
 class cHardwareUtil {
 public:
+#ifdef USE_INST_SET_CODE
   static void LoadInstSet(
     const cString & filename,
     cInstSet & inst_set, 
 		tDictionary<int> & nop_dict,
-		tDictionary<tHardwareMethod> & inst_dict,
-		tDictionary<int> & nop_dict_2,
-		tDictionary<int> & inst_dict_2
+		tDictionary<int> & inst_dict
   );
+#else /* USE_INST_SET_CODE */
+  static void LoadInstSet(
+    const cString & filename,
+    cInstSet & inst_set, 
+		tDictionary<int> & nop_dict,
+		tDictionary<tHardwareMethod> & inst_dict
+  );
+#endif /* USE_INST_SET_CODE */
   static void LoadInstSet_CPUOriginal(const cString & filename,
 				      cInstSet & inst_set);
   static void LoadInstSet_CPU4Stack(const cString & filename,
Index: avida/current/source/main/primitive.ncb
Index: avida/current/source/main/primitive.pch
Index: avida/current/source/main/primitive.pdb
Index: avida/current/source/main/primitive.sln
diff -u /dev/null avida/current/source/main/primitive.sln:1.4
--- /dev/null	Fri May 23 04:43:50 2003
+++ avida/current/source/main/primitive.sln	Fri May 23 04:43:32 2003
@@ -0,0 +1,21 @@
+Microsoft Visual Studio Solution File, Format Version 7.00
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "primitive", "primitive.vcproj", "{D090D0B7-F4CE-4998-9447-665551EC2287}"
+EndProject
+Global
+	GlobalSection(SolutionConfiguration) = preSolution
+		ConfigName.0 = primitive-debug
+		ConfigName.1 = Release
+	EndGlobalSection
+	GlobalSection(ProjectDependencies) = postSolution
+	EndGlobalSection
+	GlobalSection(ProjectConfiguration) = postSolution
+		{D090D0B7-F4CE-4998-9447-665551EC2287}.primitive-debug.ActiveCfg = Debug|Win32
+		{D090D0B7-F4CE-4998-9447-665551EC2287}.primitive-debug.Build.0 = Debug|Win32
+		{D090D0B7-F4CE-4998-9447-665551EC2287}.Release.ActiveCfg = Release|Win32
+		{D090D0B7-F4CE-4998-9447-665551EC2287}.Release.Build.0 = Release|Win32
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+	EndGlobalSection
+	GlobalSection(ExtensibilityAddIns) = postSolution
+	EndGlobalSection
+EndGlobal
Index: avida/current/source/main/primitive.suo
Index: avida/current/source/main/primitive.vcproj
diff -u /dev/null avida/current/source/main/primitive.vcproj:1.4
--- /dev/null	Fri May 23 04:43:50 2003
+++ avida/current/source/main/primitive.vcproj	Fri May 23 04:43:32 2003
@@ -0,0 +1,533 @@
+<?xml version="1.0" encoding = "Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="7.00"
+	Name="primitive"
+	ProjectGUID="{461e7351-c13c-48ef-8c3b-d2f22cb33935}">
+	<Platforms>
+		<Platform
+			Name="Win32"/>
+	</Platforms>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory="."
+			IntermediateDirectory="Debug"
+			ConfigurationType="1"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="FALSE">
+			<Tool
+				Name="VCCLCompilerTool"
+				AdditionalOptions="-Zm200 -w34100 -w34189"
+				Optimization="0"
+				InlineFunctionExpansion="1"
+				AdditionalIncludeDirectories="..,..\cpu,..\event,..\main,..\third-party\trio-1.9,..\tools,$(QTDIR)\include,C:\cygwin\home\Kaben\CygwinExperiment\current\source\main,$(QTDIR)\mkspecs\win32-msvc.net"
+				PreprocessorDefinitions="_CONSOLE,UNICODE,WIN32,QT_DLL,QT_THREAD_SUPPORT"
+				GeneratePreprocessedFile="0"
+				RuntimeLibrary="2"
+				UsePrecompiledHeader="2"
+				PrecompiledHeaderFile=".\primitive.pch"
+				AssemblerListingLocation=".\"
+				ObjectFile=".\"
+				ProgramDataBaseFileName=".\"
+				WarningLevel="3"
+				SuppressStartupBanner="TRUE"
+				DebugInformationFormat="3"/>
+			<Tool
+				Name="VCCustomBuildTool"/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="qt-mteval312.lib qtmain.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib imm32.lib winmm.lib wsock32.lib winspool.lib delayimp.lib"
+				OutputFile=".\primitive.exe"
+				LinkIncremental="2"
+				SuppressStartupBanner="TRUE"
+				AdditionalLibraryDirectories="$(QTDIR)\lib"
+				GenerateDebugInformation="TRUE"
+				ProgramDatabaseFile="primitive.pdb"
+				SubSystem="1"/>
+			<Tool
+				Name="VCMIDLTool"
+				WarningLevel="0"
+				DefaultCharType="0"
+				EnableErrorChecks="1"/>
+			<Tool
+				Name="VCPostBuildEventTool"/>
+			<Tool
+				Name="VCPreBuildEventTool"/>
+			<Tool
+				Name="VCPreLinkEventTool"/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"/>
+			<Tool
+				Name="VCWebDeploymentTool"/>
+		</Configuration>
+	</Configurations>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
+			<File
+				RelativePath="..\main\analyze.cc">
+			</File>
+			<File
+				RelativePath="..\main\analyze_util.cc">
+			</File>
+			<File
+				RelativePath="..\main\avida.cc">
+			</File>
+			<File
+				RelativePath="..\tools\b_struct2.cc">
+			</File>
+			<File
+				RelativePath="..\main\birth_chamber.cc">
+			</File>
+			<File
+				RelativePath="..\tools\block_struct.cc">
+			</File>
+			<File
+				RelativePath="..\main\callback_util.cc">
+			</File>
+			<File
+				RelativePath="..\main\config.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_memory.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_stack.cc">
+			</File>
+			<File
+				RelativePath="..\tools\data_entry.cc">
+			</File>
+			<File
+				RelativePath="..\tools\data_manager.cc">
+			</File>
+			<File
+				RelativePath="..\tools\datafile.cc">
+			</File>
+			<File
+				RelativePath="..\main\environment.cc">
+			</File>
+			<File
+				RelativePath="..\event\event.cc">
+			</File>
+			<File
+				RelativePath="..\event\event_factory.cc">
+			</File>
+			<File
+				RelativePath="..\event\event_factory_manager.cc">
+			</File>
+			<File
+				RelativePath="..\event\event_list.cc">
+			</File>
+			<File
+				RelativePath="..\tools\file.cc">
+			</File>
+			<File
+				RelativePath="..\main\fitness_matrix.cc">
+			</File>
+			<File
+				RelativePath="..\main\genebank.cc">
+			</File>
+			<File
+				RelativePath="..\main\genome.cc">
+			</File>
+			<File
+				RelativePath="..\main\genome_util.cc">
+			</File>
+			<File
+				RelativePath="..\main\genotype.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_base.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_cpu.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_factory.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_util.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\head.cc">
+			</File>
+			<File
+				RelativePath="..\tools\help.cc">
+			</File>
+			<File
+				RelativePath="..\main\inst.cc">
+			</File>
+			<File
+				RelativePath="..\main\inst_util.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\label.cc">
+			</File>
+			<File
+				RelativePath="..\main\landscape.cc">
+			</File>
+			<File
+				RelativePath="..\main\lineage.cc">
+			</File>
+			<File
+				RelativePath="..\main\lineage_control.cc">
+			</File>
+			<File
+				RelativePath="..\tools\merit.cc">
+			</File>
+			<File
+				RelativePath="..\tools\message_display.cc">
+			</File>
+			<File
+				RelativePath="..\main\mutations.cc">
+			</File>
+			<File
+				RelativePath="..\main\organism.cc">
+			</File>
+			<File
+				RelativePath="..\main\phenotype.cc">
+			</File>
+			<File
+				RelativePath="..\main\pop_interface.cc">
+			</File>
+			<File
+				RelativePath="..\main\population.cc">
+			</File>
+			<File
+				RelativePath="..\main\population_cell.cc">
+			</File>
+			<File
+				RelativePath="..\event\population_event_factory.cc">
+			</File>
+			<File
+				RelativePath="primitive.cc">
+			</File>
+			<File
+				RelativePath="..\tools\random.cc">
+			</File>
+			<File
+				RelativePath="..\main\reaction.cc">
+			</File>
+			<File
+				RelativePath="..\main\reaction_result.cc">
+			</File>
+			<File
+				RelativePath="..\main\resource.cc">
+			</File>
+			<File
+				RelativePath="..\main\resource_count.cc">
+			</File>
+			<File
+				RelativePath="..\tools\slice.cc">
+			</File>
+			<File
+				RelativePath="..\main\species.cc">
+			</File>
+			<File
+				RelativePath="..\tools\stat.cc">
+			</File>
+			<File
+				RelativePath="..\main\stats.cc">
+			</File>
+			<File
+				RelativePath="..\tools\string.cc">
+			</File>
+			<File
+				RelativePath="..\tools\string_list.cc">
+			</File>
+			<File
+				RelativePath="..\tools\string_util.cc">
+			</File>
+			<File
+				RelativePath="..\main\tasks.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\test_cpu.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\test_util.cc">
+			</File>
+			<File
+				RelativePath="..\tools\tools.cc">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trio.c">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trionan.c">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triostr.c">
+			</File>
+			<File
+				RelativePath="..\tools\weighted_index.cc">
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl">
+			<File
+				RelativePath="..\main\analyze.hh">
+			</File>
+			<File
+				RelativePath="..\main\analyze_util.hh">
+			</File>
+			<File
+				RelativePath="..\main\avida.hh">
+			</File>
+			<File
+				RelativePath="..\tools\b_struct2.hh">
+			</File>
+			<File
+				RelativePath="..\main\birth_chamber.hh">
+			</File>
+			<File
+				RelativePath="..\tools\block_struct.hh">
+			</File>
+			<File
+				RelativePath="..\main\callback_util.hh">
+			</File>
+			<File
+				RelativePath="..\main\config.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_defs.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_memory.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_stack.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_stats.hh">
+			</File>
+			<File
+				RelativePath="..\tools\data_entry.hh">
+			</File>
+			<File
+				RelativePath="..\tools\data_manager.hh">
+			</File>
+			<File
+				RelativePath="..\tools\datafile.hh">
+			</File>
+			<File
+				RelativePath="..\main\environment.hh">
+			</File>
+			<File
+				RelativePath="..\event\event.hh">
+			</File>
+			<File
+				RelativePath="..\event\event_factory.hh">
+			</File>
+			<File
+				RelativePath="..\event\event_factory_manager.hh">
+			</File>
+			<File
+				RelativePath="..\event\event_list.hh">
+			</File>
+			<File
+				RelativePath="..\tools\file.hh">
+			</File>
+			<File
+				RelativePath="..\main\fitness_matrix.hh">
+			</File>
+			<File
+				RelativePath="..\tools\functions.hh">
+			</File>
+			<File
+				RelativePath="..\main\genebank.hh">
+			</File>
+			<File
+				RelativePath="..\main\genome.hh">
+			</File>
+			<File
+				RelativePath="..\main\genome_util.hh">
+			</File>
+			<File
+				RelativePath="..\main\genotype.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_base.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_cpu.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_factory.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_method.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_util.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\head.hh">
+			</File>
+			<File
+				RelativePath="..\tools\help.hh">
+			</File>
+			<File
+				RelativePath="..\main\inst.hh">
+			</File>
+			<File
+				RelativePath="..\main\inst_lib.hh">
+			</File>
+			<File
+				RelativePath="..\main\inst_util.hh">
+			</File>
+			<File
+				RelativePath="..\tools\int.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\label.hh">
+			</File>
+			<File
+				RelativePath="..\main\landscape.hh">
+			</File>
+			<File
+				RelativePath="..\main\lineage.hh">
+			</File>
+			<File
+				RelativePath="..\main\lineage_control.hh">
+			</File>
+			<File
+				RelativePath="..\tools\merit.hh">
+			</File>
+			<File
+				RelativePath="..\tools\message_display.hh">
+			</File>
+			<File
+				RelativePath="..\tools\message_display_hdrs.hh">
+			</File>
+			<File
+				RelativePath="..\main\mutations.hh">
+			</File>
+			<File
+				RelativePath="..\main\organism.hh">
+			</File>
+			<File
+				RelativePath="..\main\phenotype.hh">
+			</File>
+			<File
+				RelativePath="..\main\pop_interface.hh">
+			</File>
+			<File
+				RelativePath="..\main\population.hh">
+			</File>
+			<File
+				RelativePath="..\main\population_cell.hh">
+			</File>
+			<File
+				RelativePath="..\event\population_event_factory.hh">
+			</File>
+			<File
+				RelativePath="..\tools\random.hh">
+			</File>
+			<File
+				RelativePath="..\main\reaction.hh">
+			</File>
+			<File
+				RelativePath="..\main\reaction_result.hh">
+			</File>
+			<File
+				RelativePath="..\main\resource.hh">
+			</File>
+			<File
+				RelativePath="..\main\resource_count.hh">
+			</File>
+			<File
+				RelativePath="..\tools\slice.hh">
+			</File>
+			<File
+				RelativePath="..\main\species.hh">
+			</File>
+			<File
+				RelativePath="..\tools\stat.hh">
+			</File>
+			<File
+				RelativePath="..\main\stats.hh">
+			</File>
+			<File
+				RelativePath="..\tools\string.hh">
+			</File>
+			<File
+				RelativePath="..\tools\string_list.hh">
+			</File>
+			<File
+				RelativePath="..\tools\string_util.hh">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\strio.h">
+			</File>
+			<File
+				RelativePath="..\tools\tArray.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tBuffer.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tDictionary.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tList.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tMatrix.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tVector.hh">
+			</File>
+			<File
+				RelativePath="..\main\tasks.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\test_cpu.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\test_util.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tools.hh">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trio.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triodef.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trionan.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triop.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triostr.h">
+			</File>
+			<File
+				RelativePath="..\tools\weighted_index.hh">
+			</File>
+			<File
+				RelativePath="..\tools\win32_mkdir_hack.hh">
+			</File>
+		</Filter>
+		<File
+			RelativePath="..\cpu\hardware_4stack.cc">
+		</File>
+		<File
+			RelativePath="..\cpu\hardware_4stack.hh">
+		</File>
+		<File
+			RelativePath="inst_set.cc">
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>
Index: avida/current/source/main/analyze.cc
diff -u avida/current/source/main/analyze.cc:1.70 avida/current/source/main/analyze.cc:1.71
--- avida/current/source/main/analyze.cc:1.70	Mon May 19 21:07:33 2003
+++ avida/current/source/main/analyze.cc	Fri May 23 04:43:22 2003
@@ -1805,10 +1805,31 @@
       col_fail_count[i] = 0;
     }
 
-    // Build an empty instruction into the an instruction library.
     cInstSet map_inst_set(inst_set);
+#ifdef USE_INST_SET_CODE
+    /* XXX start -- kgn */
+    // Locate instruction corresponding to "map-null" in the instruction library.
+    {
+      const cInstruction inst_lib_null_inst = map_inst_set.GetInstLib()->GetInst("map-null");
+      if(inst_lib_null_inst == map_inst_set.GetInstLib()->GetInstError()){
+        cout << "<cAnalyze::CommandMapTasks> got error:" << endl;
+        cout << " --- instruction \"map-null\" isn't in the instruction library;" << endl;
+        cout << " --- get somebody to map a function to \"map-null\" in the library." << endl;
+        cout << " --- (probably to class method \"cHardware-of-some-type::initInstLib\"" << endl;
+        cout << " --- in file named \"cpu/hardware-of-some-type.cc\".)" << endl;
+        cout << " --- bailing-out." << endl;
+        exit(1);
+      }
+      // Add mapping to located instruction. 
+      map_inst_set.Add2(inst_lib_null_inst.GetOp());
+    }
+    const cInstruction null_inst = map_inst_set.GetInst("map-null");
+    /* XXX end */
+#else /* USE_INST_SET_CODE */
+    // Build an empty instruction into the instruction set.
     map_inst_set.Add("map-null", &cHardwareBase::Inst_Nop);
     const cInstruction null_inst = map_inst_set.GetInst("map-null");
+#endif /* USE_INST_SET_CODE */
 
     // Loop through all the lines of code, testing the removal of each.
     for (int line_num = 0; line_num < max_line; line_num++) {
@@ -1995,8 +2016,30 @@
 
     // Build an empty instruction into the an instruction library.
     cInstSet map_inst_set(inst_set);
+#ifdef USE_INST_SET_CODE
+    /* XXX start -- kgn */
+    // Locate instruction corresponding to "map-null" in the instruction library.
+    {
+      const cInstruction inst_lib_null_inst = map_inst_set.GetInstLib()->GetInst("map-null");
+      if(inst_lib_null_inst == map_inst_set.GetInstLib()->GetInstError()){
+        cout << "<cAnalyze::CommandMapMutations> got error:" << endl;
+        cout << " --- instruction \"map-null\" isn't in the instruction library;" << endl;
+        cout << " --- get somebody to map a function to \"map-null\" in the library." << endl;
+        cout << " --- (probably to class method \"cHardware-of-some-type::initInstLib\"" << endl;
+        cout << " --- in file named \"cpu/hardware-of-some-type.cc\".)" << endl;
+        cout << " --- bailing-out." << endl;
+        exit(1);
+      }
+      // Add mapping to located instruction. 
+      map_inst_set.Add2(inst_lib_null_inst.GetOp());
+    }
+    const cInstruction null_inst = map_inst_set.GetInst("map-null");
+    /* XXX end */
+#else /* USE_INST_SET_CODE */
+    // Build an empty instruction into the instruction set.
     map_inst_set.Add("map-null", &cHardwareBase::Inst_Nop);
     const cInstruction null_inst = map_inst_set.GetInst("map-null");
+#endif /* USE_INST_SET_CODE */
 
     cString color_string;  // For coloring cells...
 
Index: avida/current/source/main/avida.cc
diff -u avida/current/source/main/avida.cc:1.41 avida/current/source/main/avida.cc:1.42
--- avida/current/source/main/avida.cc:1.41	Mon May 19 12:30:07 2003
+++ avida/current/source/main/avida.cc	Fri May 23 04:43:22 2003
@@ -79,14 +79,19 @@
     cerr << "Unable to load environment... aborting!" << endl;
     ExitAvida(-1);
   }
+
   
   if (cConfig::GetHardwareType() == HARDWARE_TYPE_CPU_ORIGINAL) {
+#ifdef USE_INST_SET_CODE
     environment.GetInstSet().SetInstLib(cHardwareCPU::GetInstLib());
+#endif /* USE_INST_SET_CODE */
     cHardwareUtil::LoadInstSet_CPUOriginal(cConfig::GetInstFilename(),
 					   environment.GetInstSet());
   }
   else if (cConfig::GetHardwareType() == HARDWARE_TYPE_CPU_4STACK) {
+#ifdef USE_INST_SET_CODE
     environment.GetInstSet().SetInstLib(cHardware4Stack::GetInstLib());
+#endif /* USE_INST_SET_CODE */
     cHardwareUtil::LoadInstSet_CPU4Stack(cConfig::GetInstFilename(),
 					   environment.GetInstSet());
   }
Index: avida/current/source/main/inst_set.cc
diff -u avida/current/source/main/inst_set.cc:1.1 avida/current/source/main/inst_set.cc:1.2
--- avida/current/source/main/inst_set.cc:1.1	Sat May 17 14:54:54 2003
+++ avida/current/source/main/inst_set.cc	Fri May 23 04:43:22 2003
@@ -19,22 +19,34 @@
 
 // Initialize static variables
 /* XXX start -- kgn */
+#ifdef USE_INST_SET_CODE
 cInstruction cInstSet::inst_default2(   0 );
 cInstruction cInstSet::inst_error2  ( 255 );
+#else /* USE_INST_SET_CODE */
 /* XXX end */
 const cInstruction cInstSet::inst_default(   0 );
 const cInstruction cInstSet::inst_error  ( 255 );
+#endif /* USE_INST_SET_CODE */
 
 cInstSet::cInstSet()
 {
 }
 
+#ifdef USE_INST_SET_CODE
+cInstSet::cInstSet(const cInstSet & in_inst_set)
+  : m_lib_name_map(in_inst_set.m_lib_name_map)
+  , m_lib_nopmod_map(in_inst_set.m_lib_nopmod_map)
+  , mutation_chart2(in_inst_set.mutation_chart2)
+{
+}
+#else /* USE_INST_SET_CODE */
 cInstSet::cInstSet(const cInstSet & in_inst_set)
   : inst_array(in_inst_set.inst_array)
   , nop_mods(in_inst_set.nop_mods)
   , mutation_chart(in_inst_set.mutation_chart)
 {
 }
+#endif /* USE_INST_SET_CODE */
 
 cInstSet::~cInstSet()
 {
@@ -43,36 +55,23 @@
 cInstSet & cInstSet::operator=(const cInstSet & _in)
 {
   /* XXX start -- kgn */
+#ifdef USE_INST_SET_CODE
   m_inst_lib = _in.m_inst_lib;
   m_lib_name_map = _in.m_lib_name_map;
   m_lib_nopmod_map = _in.m_lib_nopmod_map;
   mutation_chart2 = _in.mutation_chart2;
+#else /* USE_INST_SET_CODE */
   /* XXX end */
   inst_array = _in.inst_array;
   nop_mods = _in.nop_mods;
   mutation_chart = _in.mutation_chart;
+#endif /* USE_INST_SET_CODE */
   return *this;
 }
 
 bool cInstSet::OK() const
 {
-  //// assert(inst_array.OK());
-  //// assert(nop_mods.OK());
-  //assert(inst_array.GetSize() < 256);
-  //assert(nop_mods.GetSize() < inst_array.GetSize());
-
-  //// Make sure that all of the redundancies are represented the appropriate
-  //// number of times.
-  //tArray<int> test_redundancy(inst_array.GetSize());
-  //test_redundancy.SetAll(0);
-  //for (int i = 0; i < mutation_chart.GetSize(); i++) {
-  //  int test_id = mutation_chart[i];
-  //  test_redundancy[test_id]++;
-  //}
-  //for (int i = 0; i < inst_array.GetSize(); i++) {
-  //  assert(inst_array[i].redundancy == test_redundancy[i]);
-  //}
-
+#ifdef USE_INST_SET_CODE
   /* XXX start -- kgn */
   assert(m_lib_name_map.GetSize() < 256);
   assert(m_lib_nopmod_map.GetSize() < m_lib_name_map.GetSize());
@@ -82,81 +81,48 @@
   tArray<int> test_redundancy2(m_lib_name_map.GetSize());
   test_redundancy2.SetAll(0);
   for (int i = 0; i < mutation_chart2.GetSize(); i++) {
-    int test_id = mutation_chart[i];
+    int test_id = mutation_chart2[i];
     test_redundancy2[test_id]++;
   }
   for (int i = 0; i < m_lib_name_map.GetSize(); i++) {
     assert(m_lib_name_map[i].redundancy == test_redundancy2[i]);
   }
   /* XXX end */
+#else /* USE_INST_SET_CODE */
+
+  // assert(inst_array.OK());
+  // assert(nop_mods.OK());
+  assert(inst_array.GetSize() < 256);
+  assert(nop_mods.GetSize() < inst_array.GetSize());
+
+  // Make sure that all of the redundancies are represented the appropriate
+  // number of times.
+  tArray<int> test_redundancy(inst_array.GetSize());
+  test_redundancy.SetAll(0);
+  for (int i = 0; i < mutation_chart.GetSize(); i++) {
+    int test_id = mutation_chart[i];
+    test_redundancy[test_id]++;
+  }
+  for (int i = 0; i < inst_array.GetSize(); i++) {
+    assert(inst_array[i].redundancy == test_redundancy[i]);
+  }
+#endif /* USE_INST_SET_CODE */
 
   return true;
 }
 
 cInstruction cInstSet::GetRandomInst() const
 {
-  ///* XXX start -- kgn */
-  //if(mutation_chart.GetSize() != mutation_chart2.GetSize()){
-  //  cout << "<cInstSet::GetRandomInst> mutation_charts'.GetSize()es mismatch!" << endl;
-  //}
-  //unsigned int rand = g_random.GetUInt(mutation_chart.GetSize());
-  //int inst_op = mutation_chart[rand];
-  //int inst_op2 = mutation_chart2[rand];
-  //if(inst_op != inst_op2){
-  //  cout << "<cInstSet::GetRandomInst> inst_op, inst_op2 mismatch!" << endl;
-  //}
-  ///* XXX end */
-
-  ////int inst_op = mutation_chart[g_random.GetUInt(mutation_chart.GetSize())];
-
+#ifdef USE_INST_SET_CODE
   int inst_op = mutation_chart2[g_random.GetUInt(mutation_chart2.GetSize())];
+#else /* USE_INST_SET_CODE */
+  int inst_op = mutation_chart[g_random.GetUInt(mutation_chart.GetSize())];
+#endif /* USE_INST_SET_CODE */
   return cInstruction(inst_op);
 }
 
-int cInstSet::Add(const cString & _name, tHardwareMethod _fun,
-		  const int redundancy, const int ft_cost, const int cost,
-		  const double prob_fail)
-{
-  const int inst_id = inst_array.GetSize();
-
-  assert(inst_id < 255);
-
-  // Increase the size of the array...
-  inst_array.Resize(inst_id + 1);
-
-  // Setup the new function...
-  inst_array[inst_id].name = _name;
-  inst_array[inst_id].function = _fun;
-  inst_array[inst_id].redundancy = redundancy;
-  inst_array[inst_id].cost = cost;
-  inst_array[inst_id].ft_cost = ft_cost;
-  inst_array[inst_id].prob_fail = prob_fail;
-
-  const int total_redundancy = mutation_chart.GetSize();
-  mutation_chart.Resize(total_redundancy + redundancy);
-  for (int i = 0; i < redundancy; i++) {
-    mutation_chart[total_redundancy + i] = inst_id;
-  }
-
-  return inst_id;
-}
-
-int cInstSet::AddNop(const cString & _name, tHardwareMethod _fun,
-		     const int reg, const int redundancy, const int ft_cost,
-		     const int cost, const double prob_fail)
-{ 
-  // Assert nops are at the _beginning_ of an inst_set.
-  assert(inst_array.GetSize() == nop_mods.GetSize());
-
-  const int inst_id = Add(_name, _fun, redundancy, ft_cost, cost, prob_fail);
-
-  nop_mods.Resize(inst_id + 1);
-  nop_mods[inst_id] = reg;
-
-  return inst_id;
-}
-
 /**/
+#ifdef USE_INST_SET_CODE
 int cInstSet::Add2(
   const int lib_fun_id,
   const int redundancy,
@@ -206,15 +172,65 @@
 
   return inst_id;
 }
+#else /* USE_INST_SET_CODE */
 /**/
 
+int cInstSet::Add(const cString & _name, tHardwareMethod _fun,
+		  const int redundancy, const int ft_cost, const int cost,
+		  const double prob_fail)
+{
+  const int inst_id = inst_array.GetSize();
+
+  assert(inst_id < 255);
+
+  // Increase the size of the array...
+  inst_array.Resize(inst_id + 1);
+
+  // Setup the new function...
+  inst_array[inst_id].name = _name;
+  inst_array[inst_id].function = _fun;
+  inst_array[inst_id].redundancy = redundancy;
+  inst_array[inst_id].cost = cost;
+  inst_array[inst_id].ft_cost = ft_cost;
+  inst_array[inst_id].prob_fail = prob_fail;
+
+  const int total_redundancy = mutation_chart.GetSize();
+  mutation_chart.Resize(total_redundancy + redundancy);
+  for (int i = 0; i < redundancy; i++) {
+    mutation_chart[total_redundancy + i] = inst_id;
+  }
+
+  return inst_id;
+}
+
+int cInstSet::AddNop(const cString & _name, tHardwareMethod _fun,
+		     const int reg, const int redundancy, const int ft_cost,
+		     const int cost, const double prob_fail)
+{ 
+  // Assert nops are at the _beginning_ of an inst_set.
+  assert(inst_array.GetSize() == nop_mods.GetSize());
+
+  const int inst_id = Add(_name, _fun, redundancy, ft_cost, cost, prob_fail);
+
+  nop_mods.Resize(inst_id + 1);
+  nop_mods[inst_id] = reg;
+
+  return inst_id;
+}
+#endif /* USE_INST_SET_CODE */
+
 cString cInstSet::FindBestMatch(const cString & in_name) const
 {
   int best_dist = 1024;
   cString best_name("");
   
+#ifdef USE_INST_SET_CODE
+  for (int i = 0; i < m_lib_name_map.GetSize(); i++) {
+    const cString & cur_name = m_inst_lib->GetName(m_lib_name_map[i].lib_fun_id);
+#else /* USE_INST_SET_CODE */
   for (int i = 0; i < inst_array.GetSize(); i++) {
     const cString & cur_name = inst_array[i].name;
+#endif /* USE_INST_SET_CODE */
     const int cur_dist = cStringUtil::EditDistance(cur_name, in_name);
     if (cur_dist < best_dist) {
       best_dist = cur_dist;
Index: avida/current/source/main/inst_set.hh
diff -u avida/current/source/main/inst_set.hh:1.1 avida/current/source/main/inst_set.hh:1.2
--- avida/current/source/main/inst_set.hh:1.1	Sat May 17 14:54:54 2003
+++ avida/current/source/main/inst_set.hh	Fri May 23 04:43:22 2003
@@ -35,6 +35,7 @@
  **/
 
 class cInstSet {
+#ifdef USE_INST_SET_CODE
 public:
   cInstLibBase *m_inst_lib;
   class cInstEntry2 {
@@ -52,6 +53,7 @@
   static cInstruction inst_error2;
   // static const cInstruction inst_none;
   static cInstruction inst_default2;
+#else /* USE_INST_SET_CODE */
 private:
   // This class gives full info about a single instruction in the library.
   class cInstEntry {
@@ -67,13 +69,13 @@
   tArray<cInstEntry> inst_array;  // The instructions indexed by ID
   tArray<int> nop_mods;           // Modification table for nops
   tArray<int> mutation_chart;     // ID's represented by redundancy values.
+#endif /* USE_INST_SET_CODE */
 
   // Static components...
   static const cInstruction inst_error;
   // static const cInstruction inst_none;
   static const cInstruction inst_default;
 
-
 public:
   cInstSet();
   cInstSet(const cInstSet & in_inst_set);
@@ -86,14 +88,13 @@
   // Accessors
   const cString & GetName(int id) const
   { 
+#ifdef USE_INST_SET_CODE
     ///* XXX start -- kgn */
-    //if( inst_array[id].name
-    //  !=m_inst_lib->GetName(m_lib_name_map[id].lib_fun_id)
-    //){ std::cout << "<cInstSet::GetName> mismatch!" << std::endl; }
-    ///* XXX end */
-    //return inst_array[id].name;
-
     return m_inst_lib->GetName(m_lib_name_map[id].lib_fun_id);
+    ///* XXX end */
+#else /* USE_INST_SET_CODE */
+    return inst_array[id].name;
+#endif /* USE_INST_SET_CODE */
   }
   const cString & GetName(const cInstruction & inst) const
   {
@@ -101,117 +102,116 @@
   }
   int GetCost(const cInstruction & inst) const
   {
+#ifdef USE_INST_SET_CODE
     ///* XXX start -- kgn */
-    //if( inst_array[inst.GetOp()].cost
-    //  !=m_lib_name_map[inst.GetOp()].cost
-    //){ std::cout << "<cInstSet::GetCost> mismatch!" << std::endl; }
-    ///* XXX end */
-    //return inst_array[inst.GetOp()].cost;
-
     return m_lib_name_map[inst.GetOp()].cost;
+    ///* XXX end */
+#else /* USE_INST_SET_CODE */
+    return inst_array[inst.GetOp()].cost;
+#endif /* USE_INST_SET_CODE */
   }
   int GetFTCost(const cInstruction & inst) const
   {
+#ifdef USE_INST_SET_CODE
     ///* XXX start -- kgn */
-    //if( inst_array[inst.GetOp()].ft_cost
-    //  !=m_lib_name_map[inst.GetOp()].ft_cost
-    //){ std::cout << "<cInstSet::GetFTCost> mismatch!" << std::endl; }
-    ///* XXX end */
-    //return inst_array[inst.GetOp()].ft_cost;
-
     return m_lib_name_map[inst.GetOp()].ft_cost;
+    ///* XXX end */
+#else /* USE_INST_SET_CODE */
+    return inst_array[inst.GetOp()].ft_cost;
+#endif /* USE_INST_SET_CODE */
   }
   double GetProbFail(const cInstruction & inst) const
   {
+#ifdef USE_INST_SET_CODE
     ///* XXX start -- kgn */
-    //if( inst_array[inst.GetOp()].prob_fail
-    //  !=m_lib_name_map[inst.GetOp()].prob_fail
-    //){ std::cout << "<cInstSet::GetProbFail> mismatch!" << std::endl; }
-    ///* XXX end */
-    //return inst_array[inst.GetOp()].prob_fail;
-
     return m_lib_name_map[inst.GetOp()].prob_fail;
+    ///* XXX end */
+#else /* USE_INST_SET_CODE */
+    return inst_array[inst.GetOp()].prob_fail;
+#endif /* USE_INST_SET_CODE */
   }
   int GetRedundancy(const cInstruction & inst) const
   {
+#ifdef USE_INST_SET_CODE
     ///* XXX start -- kgn */
-    //if( inst_array[inst.GetOp()].redundancy
-    //  !=m_lib_name_map[inst.GetOp()].redundancy
-    //){ std::cout << "<cInstSet::GetRedundancy> mismatch!" << std::endl; }
-    ///* XXX end */
-    //return inst_array[inst.GetOp()].redundancy;
-
     return m_lib_name_map[inst.GetOp()].redundancy;
+#else /* USE_INST_SET_CODE */
+    ///* XXX end */
+    return inst_array[inst.GetOp()].redundancy;
+#endif /* USE_INST_SET_CODE */
   }
 
-  tHardwareMethod GetFunction(const cInstruction & inst) const
-  {
-    return inst_array[inst.GetOp()].function;
-  }
-
+#ifdef USE_INST_SET_CODE
   /* XXX start -- kgn */
   int GetLibFunctionIndex(const cInstruction & inst) const
   {
     return m_lib_name_map[inst.GetOp()].lib_fun_id;
   }
   /* XXX end */
+#else /* USE_INST_SET_CODE */
+  tHardwareMethod GetFunction(const cInstruction & inst) const
+  {
+    return inst_array[inst.GetOp()].function;
+  }
+#endif /* USE_INST_SET_CODE */
 
   int GetNopMod(const cInstruction & inst) const
   {
+#ifdef USE_INST_SET_CODE
     ///* XXX start -- kgn */
-    //if( nop_mods[inst.GetOp()]
-    //  !=m_inst_lib->GetNopMod(m_lib_nopmod_map[inst.GetOp()])
-    //){ std::cout << "<cInstSet::GetNopMod> mismatch!" << std::endl; }
-    ///* XXX end */
-    //return nop_mods[inst.GetOp()];
-
     return m_inst_lib->GetNopMod(m_lib_nopmod_map[inst.GetOp()]);
+    ///* XXX end */
+#else /* USE_INST_SET_CODE */
+    return nop_mods[inst.GetOp()];
+#endif /* USE_INST_SET_CODE */
   }
 
   cInstruction GetRandomInst() const;
+#ifdef USE_INST_SET_CODE
+  int GetRandFunctionIndex() const
+  {
+    return m_lib_name_map[ GetRandomInst().GetOp() ].lib_fun_id;
+  }
+#else /* USE_INST_SET_CODE */
   tHardwareMethod GetRandFunction() const
   {
     return inst_array[ GetRandomInst().GetOp() ].function;
   }
+#endif /* USE_INST_SET_CODE */
 
   int GetSize() const {
+#ifdef USE_INST_SET_CODE
     ///* XXX start -- kgn */
-    //if( inst_array.GetSize() != m_lib_name_map.GetSize() )
-    //{ std::cout << "<cInstSet::GetSize> mismatch!" << std::endl; }
-    ///* XXX end */
-    //return inst_array.GetSize();
-
     return m_lib_name_map.GetSize();
+    ///* XXX end */
+#else /* USE_INST_SET_CODE */
+    return inst_array.GetSize();
+#endif /* USE_INST_SET_CODE */
   }
   int GetNumNops() const {
+#ifdef USE_INST_SET_CODE
     ///* XXX start -- kgn */
-    //if( nop_mods.GetSize() != m_lib_nopmod_map.GetSize() )
-    //{ std::cout << "<cInstSet::GetNumNops> mismatch!" << std::endl; }
-    ///* XXX end */
-    //return nop_mods.GetSize();
-
     return m_lib_nopmod_map.GetSize();
+#else /* USE_INST_SET_CODE */
+    ///* XXX end */
+    return nop_mods.GetSize();
+#endif /* USE_INST_SET_CODE */
   }
 
   // Instruction Analysis.
   int IsNop(const cInstruction & inst) const
   {
+#ifdef USE_INST_SET_CODE
     ///* XXX start -- kgn */
-    //if( nop_mods.GetSize() != m_lib_nopmod_map.GetSize() )
-    //{ std::cout << "<cInstSet::IsNop> mismatch!" << std::endl; }
-    ///* XXX end */
-    //return (inst.GetOp() < nop_mods.GetSize());
-
     return (inst.GetOp() < m_lib_nopmod_map.GetSize());
+    ///* XXX end */
+#else /* USE_INST_SET_CODE */
+    return (inst.GetOp() < nop_mods.GetSize());
+#endif /* USE_INST_SET_CODE */
   }
 
   // Insertion of new instructions...
-  int Add(const cString & _name, tHardwareMethod _fun, const int redundancy=1,
-	  const int ft_cost=0, const int cost=0, const double prob_fail=0.0);
-  int AddNop(const cString & _name, tHardwareMethod _fun, const int reg,
-	     const int redundancy=1, const int ft_cost=0, const int cost=0,
-	     const double prob_fail=0.0);
-
+#ifdef USE_INST_SET_CODE
   int Add2(
     const int lib_fun_id,
     const int redundancy=1,
@@ -226,7 +226,15 @@
     const int cost=0,
     const double prob_fail=0.0
   );
+#else /* USE_INST_SET_CODE */
+  int Add(const cString & _name, tHardwareMethod _fun, const int redundancy=1,
+	  const int ft_cost=0, const int cost=0, const double prob_fail=0.0);
+  int AddNop(const cString & _name, tHardwareMethod _fun, const int reg,
+	     const int redundancy=1, const int ft_cost=0, const int cost=0,
+	     const double prob_fail=0.0);
+#endif /* USE_INST_SET_CODE */
 
+#ifdef USE_INST_SET_CODE
   /* XXX start -- kgn */
   // accessors for instruction library
   cInstLibBase *GetInstLib(){ return m_inst_lib; }
@@ -236,24 +244,33 @@
     inst_default2 = inst_lib->GetInstDefault();
   }
   /* XXX end */
+#endif /* USE_INST_SET_CODE */
 
   inline cInstruction GetInst(const cString & in_name) const;
   cString FindBestMatch(const cString & in_name) const;
 
   // Static methods..
   static const cInstruction & GetInstDefault() {
+#ifdef USE_INST_SET_CODE
     /* XXX start --- kgn */
-    if(inst_default != inst_default2)
-    { std::cout << "<cInstSet::GetInstDefault> mismatch!" << std::endl; }
+    //if(inst_default != inst_default2)
+    //{ std::cout << "<cInstSet::GetInstDefault> mismatch!" << std::endl; }
+    return inst_default2;
     /* XXX end */
+#else /* USE_INST_SET_CODE */
     return inst_default;
+#endif /* USE_INST_SET_CODE */
   }
   static const cInstruction & GetInstError()   {
     /* XXX start --- kgn */
-    if(inst_error != inst_error2)
-    { std::cout << "<cInstSet::GetInstError> mismatch!" << std::endl; }
+    //if(inst_error != inst_error2)
+    //{ std::cout << "<cInstSet::GetInstError> mismatch!" << std::endl; }
+#ifdef USE_INST_SET_CODE
+    return inst_error2;
+#else /* USE_INST_SET_CODE */
     /* XXX end */
     return inst_error;
+#endif /* USE_INST_SET_CODE */
   }
   // static const cInstruction & GetInstNone()    { return inst_none; }
 };
@@ -261,54 +278,28 @@
 
 inline cInstruction cInstSet::GetInst(const cString & in_name) const
 {
-
-  ///* XXX start --- kgn */
-  //int i, i1=-1, i2=-1;
-  //std::cout <<
-  //  "<cInstSet::GetInst> inst_array.GetSize():" <<
-  //  inst_array.GetSize() <<
-  //  std::endl;
-  //for (i = 0; i < inst_array.GetSize(); i++) {
-  //  if (inst_array[i].name == in_name){
-  //    i1 = i;
-  //  }
-  ////if (inst_array[i].name == in_name) return cInstruction(i);
-  //}
-  //std::cout <<
-  //  "<cInstSet::GetInst> i:" <<
-  //  i <<
-  //  std::endl;
-  //std::cout <<
-  //  "<cInstSet::GetInst> inst_array.GetSize():" <<
-  //  inst_array.GetSize() <<
-  //  std::endl;
-  //for (i = 0; i < m_lib_name_map.GetSize(); i++) {
-  //  if (m_inst_lib->GetName(m_lib_name_map[i].lib_fun_id) == in_name){
-  //    i2 = i;
-  //  }
-  //}
-  //std::cout <<
-  //  "<cInstSet::GetInst> i:" <<
-  //  i <<
-  //  std::endl;
-  //if(i1 != i2){
-  //  std::cout << "<cInstSet::GetInst> mismatch!" << std::endl;
-  //}
-  //if(i1>-1){ return cInstruction(i1); }
-  ///* XXX end */
-
-  //// assert(false); // Requesting ID for unknown inst.
-  //return cInstSet::GetInstError();
-
+#ifdef USE_INST_SET_CODE
   for (int i = 0; i < m_lib_name_map.GetSize(); i++) {
-    if (m_inst_lib->
-	GetName(m_lib_name_map[i].lib_fun_id) == in_name) {
+    if (m_inst_lib->GetName(m_lib_name_map[i].lib_fun_id) == in_name) {
       return cInstruction(i);
     }
   }
-
   // Adding default answer if nothing is found...
+  /*
+  FIXME:  this return value is supposed to be cInstSet::GetInstError
+  which should be the same as m_inst_lib->GetInstError().
+  -- kgn
+  */
   return cInstruction(0);
+#else /* USE_INST_SET_CODE */
+  /* XXX start --- kgn */
+  for (int i = 0; i < inst_array.GetSize(); i++) {
+    if (inst_array[i].name == in_name) return cInstruction(i);
+  }
+  // assert(false); // Requesting ID for unknown inst.
+  return cInstSet::GetInstError();
+  /* XXX end */
+#endif /* USE_INST_SET_CODE */
 }
 
 
Index: avida/current/source/qt-viewer/qt-viewer.pch
Index: avida/current/source/qt-viewer/qt-viewer.pdb
Index: avida/current/source/qt-viewer/qt_viewer.ncb
Index: avida/current/source/qt-viewer/qt_viewer.sln
diff -u /dev/null avida/current/source/qt-viewer/qt_viewer.sln:1.4
--- /dev/null	Fri May 23 04:43:50 2003
+++ avida/current/source/qt-viewer/qt_viewer.sln	Fri May 23 04:43:40 2003
@@ -0,0 +1,21 @@
+Microsoft Visual Studio Solution File, Format Version 7.00
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "qt-viewer", "qt_viewer.vcproj", "{341F7ED6-63EA-4C06-92D4-9F1F02A15288}"
+EndProject
+Global
+	GlobalSection(SolutionConfiguration) = preSolution
+		ConfigName.0 = Debug
+		ConfigName.1 = Release
+	EndGlobalSection
+	GlobalSection(ProjectDependencies) = postSolution
+	EndGlobalSection
+	GlobalSection(ProjectConfiguration) = postSolution
+		{341F7ED6-63EA-4C06-92D4-9F1F02A15288}.Debug.ActiveCfg = Release|Win32
+		{341F7ED6-63EA-4C06-92D4-9F1F02A15288}.Debug.Build.0 = Release|Win32
+		{341F7ED6-63EA-4C06-92D4-9F1F02A15288}.Release.ActiveCfg = Release|Win32
+		{341F7ED6-63EA-4C06-92D4-9F1F02A15288}.Release.Build.0 = Release|Win32
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+	EndGlobalSection
+	GlobalSection(ExtensibilityAddIns) = postSolution
+	EndGlobalSection
+EndGlobal
Index: avida/current/source/qt-viewer/qt_viewer.suo
Index: avida/current/source/qt-viewer/qt_viewer.vcproj
diff -u /dev/null avida/current/source/qt-viewer/qt_viewer.vcproj:1.4
--- /dev/null	Fri May 23 04:43:50 2003
+++ avida/current/source/qt-viewer/qt_viewer.vcproj	Fri May 23 04:43:40 2003
@@ -0,0 +1,1460 @@
+<?xml version="1.0" encoding = "Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="7.00"
+	Name="qt-viewer"
+	ProjectGUID="{564914ad-b4de-46d0-9d7f-6b777aa3ffcc}">
+	<Platforms>
+		<Platform
+			Name="Win32"/>
+	</Platforms>
+	<Configurations>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory="."
+			IntermediateDirectory="Release"
+			ConfigurationType="1"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="FALSE">
+			<Tool
+				Name="VCCLCompilerTool"
+				AdditionalOptions="-Zm200 -w34100 -w34189"
+				Optimization="1"
+				InlineFunctionExpansion="1"
+				AdditionalIncludeDirectories="..,..\cpu,..\event,..\main,..\third-party\trio-1.9,..\tools,$(QTDIR)\include,,c:\cygwin\home\Kaben\local\exp\current\source\qt-viewer,$(QTDIR)\mkspecs\win32-msvc.net"
+				PreprocessorDefinitions="QT_NO_DEBUG,NDEBUG,_CONSOLE,UNICODE,WIN32,QT_DLL,QT_THREAD_SUPPORT"
+				GeneratePreprocessedFile="0"
+				RuntimeLibrary="2"
+				UsePrecompiledHeader="2"
+				PrecompiledHeaderFile=".\qt-viewer.pch"
+				AssemblerListingLocation=".\"
+				ObjectFile=".\"
+				ProgramDataBaseFileName=".\"
+				WarningLevel="3"
+				SuppressStartupBanner="TRUE"
+				DebugInformationFormat="0"/>
+			<Tool
+				Name="VCCustomBuildTool"/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalOptions="/FORCE:MULTIPLE"
+				AdditionalDependencies="qt-mteval312.lib qtmain.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib imm32.lib winmm.lib wsock32.lib winspool.lib delayimp.lib"
+				OutputFile=".\qt-viewer.exe"
+				LinkIncremental="2"
+				SuppressStartupBanner="TRUE"
+				AdditionalLibraryDirectories="$(QTDIR)\lib"
+				DelayLoadDLLs="comdlg32.dll,oleaut32.dll,winmm.dll,wsock32.dll,winspool.dll"
+				ProgramDatabaseFile="qt-viewer.pdb"
+				SubSystem="1"/>
+			<Tool
+				Name="VCMIDLTool"
+				WarningLevel="0"
+				DefaultCharType="0"
+				EnableErrorChecks="1"/>
+			<Tool
+				Name="VCPostBuildEventTool"/>
+			<Tool
+				Name="VCPreBuildEventTool"/>
+			<Tool
+				Name="VCPreLinkEventTool"/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"/>
+			<Tool
+				Name="VCWebDeploymentTool"/>
+		</Configuration>
+	</Configurations>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
+			<File
+				RelativePath="..\main\analyze.cc">
+			</File>
+			<File
+				RelativePath="..\main\analyze_util.cc">
+			</File>
+			<File
+				RelativePath="apocalypse_widget.cc">
+			</File>
+			<File
+				RelativePath="avd_avida_driver.cc">
+			</File>
+			<File
+				RelativePath="avd_driver_controller.cc">
+			</File>
+			<File
+				RelativePath="avd_event_viewer_controller.cc">
+			</File>
+			<File
+				RelativePath="avd_godbox_controller.cc">
+			</File>
+			<File
+				RelativePath="avd_help_controller.cc">
+			</File>
+			<File
+				RelativePath="avd_help_viewer.cc">
+			</File>
+			<File
+				RelativePath="avd_instruction_viewer_controller.cc">
+			</File>
+			<File
+				RelativePath="avd_lograte_widget.cc">
+			</File>
+			<File
+				RelativePath="avd_main_window.cc">
+			</File>
+			<File
+				RelativePath="avd_main_window_controller.cc">
+			</File>
+			<File
+				RelativePath="avd_mission_control.cc">
+			</File>
+			<File
+				RelativePath="avd_plot_viewer_controller.cc">
+			</File>
+			<File
+				RelativePath="avd_rate_slider2.cc">
+			</File>
+			<File
+				RelativePath="avd_rate_validator2.cc">
+			</File>
+			<File
+				RelativePath="..\main\avida.cc">
+			</File>
+			<File
+				RelativePath="avida_data.cc">
+			</File>
+			<File
+				RelativePath="avida_plot_widget.cc">
+			</File>
+			<File
+				RelativePath="..\tools\b_struct2.cc">
+			</File>
+			<File
+				RelativePath="..\main\birth_chamber.cc">
+			</File>
+			<File
+				RelativePath="..\tools\block_struct.cc">
+			</File>
+			<File
+				RelativePath="..\main\callback_util.cc">
+			</File>
+			<File
+				RelativePath="color_scale_widget.cc">
+			</File>
+			<File
+				RelativePath="..\main\config.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_memory.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_stack.cc">
+			</File>
+			<File
+				RelativePath="..\tools\data_entry.cc">
+			</File>
+			<File
+				RelativePath="..\tools\data_manager.cc">
+			</File>
+			<File
+				RelativePath="..\tools\datafile.cc">
+			</File>
+			<File
+				RelativePath="double_slider.cc">
+			</File>
+			<File
+				RelativePath="..\main\environment.cc">
+			</File>
+			<File
+				RelativePath="..\event\event.cc">
+			</File>
+			<File
+				RelativePath="..\event\event_factory.cc">
+			</File>
+			<File
+				RelativePath="..\event\event_factory_manager.cc">
+			</File>
+			<File
+				RelativePath="..\event\event_list.cc">
+			</File>
+			<File
+				RelativePath="event_view_widget.cc">
+			</File>
+			<File
+				RelativePath="..\tools\file.cc">
+			</File>
+			<File
+				RelativePath="..\main\fitness_matrix.cc">
+			</File>
+			<File
+				RelativePath="..\main\genebank.cc">
+			</File>
+			<File
+				RelativePath="..\main\genome.cc">
+			</File>
+			<File
+				RelativePath="..\main\genome_util.cc">
+			</File>
+			<File
+				RelativePath="..\main\genotype.cc">
+			</File>
+			<File
+				RelativePath="godbox_widget2.cc">
+			</File>
+			<File
+				RelativePath="gui_message_display.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_base.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_cpu.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_factory.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_util.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\head.cc">
+			</File>
+			<File
+				RelativePath="..\tools\help.cc">
+			</File>
+			<File
+				RelativePath="..\main\inst.cc">
+			</File>
+			<File
+				RelativePath="..\main\inst_util.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\label.cc">
+			</File>
+			<File
+				RelativePath="..\main\landscape.cc">
+			</File>
+			<File
+				RelativePath="..\main\lineage.cc">
+			</File>
+			<File
+				RelativePath="..\main\lineage_control.cc">
+			</File>
+			<File
+				RelativePath="main.cc">
+			</File>
+			<File
+				RelativePath="map_view.cc">
+			</File>
+			<File
+				RelativePath="map_view_cell_entry.cc">
+			</File>
+			<File
+				RelativePath="map_view_widget.cc">
+			</File>
+			<File
+				RelativePath="..\tools\merit.cc">
+			</File>
+			<File
+				RelativePath="..\tools\message_display.cc">
+			</File>
+			<File
+				RelativePath="messaging_population_wrapper.cc">
+			</File>
+			<File
+				RelativePath="..\main\mutations.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_buttons_widget.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_cpu_widget.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_field_widget.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_line_pixmap_pair.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_line_widget.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_pixmapstructs.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_scrollview.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_scrollview_config.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_view_widget.cc">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_viewer.cc">
+			</File>
+			<File
+				RelativePath="..\main\organism.cc">
+			</File>
+			<File
+				RelativePath="..\main\phenotype.cc">
+			</File>
+			<File
+				RelativePath="plot_select_dia_impl.cc">
+			</File>
+			<File
+				RelativePath="plot_widget.cc">
+			</File>
+			<File
+				RelativePath="..\main\pop_interface.cc">
+			</File>
+			<File
+				RelativePath="..\main\population.cc">
+			</File>
+			<File
+				RelativePath="..\main\population_cell.cc">
+			</File>
+			<File
+				RelativePath="population_cell_wrapped_accessors.cc">
+			</File>
+			<File
+				RelativePath="population_cell_wrapper.cc">
+			</File>
+			<File
+				RelativePath="..\event\population_event_factory.cc">
+			</File>
+			<File
+				RelativePath="..\tools\random.cc">
+			</File>
+			<File
+				RelativePath="..\main\reaction.cc">
+			</File>
+			<File
+				RelativePath="..\main\reaction_result.cc">
+			</File>
+			<File
+				RelativePath="repopulate_widget.cc">
+			</File>
+			<File
+				RelativePath="..\main\resource.cc">
+			</File>
+			<File
+				RelativePath="..\main\resource_count.cc">
+			</File>
+			<File
+				RelativePath="setup_avida.cc">
+			</File>
+			<File
+				RelativePath="setup_file.cc">
+			</File>
+			<File
+				RelativePath="setup_genesis.cc">
+			</File>
+			<File
+				RelativePath="setup_wizard.cc">
+			</File>
+			<File
+				RelativePath="setup_wizard2.cc">
+			</File>
+			<File
+				RelativePath="setup_wizard_config.cc">
+			</File>
+			<File
+				RelativePath="setup_wizard_constants.cc">
+			</File>
+			<File
+				RelativePath="setup_wizard_page.cc">
+			</File>
+			<File
+				RelativePath="setup_wizard_page2.cc">
+			</File>
+			<File
+				RelativePath="..\tools\slice.cc">
+			</File>
+			<File
+				RelativePath="..\main\species.cc">
+			</File>
+			<File
+				RelativePath="..\tools\stat.cc">
+			</File>
+			<File
+				RelativePath="..\main\stats.cc">
+			</File>
+			<File
+				RelativePath="..\tools\string.cc">
+			</File>
+			<File
+				RelativePath="..\tools\string_list.cc">
+			</File>
+			<File
+				RelativePath="..\tools\string_util.cc">
+			</File>
+			<File
+				RelativePath="..\main\tasks.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\test_cpu.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\test_util.cc">
+			</File>
+			<File
+				RelativePath="testwizard.cc">
+			</File>
+			<File
+				RelativePath="testwizard_loadgen.cc">
+			</File>
+			<File
+				RelativePath="testwizard_validators.cc">
+			</File>
+			<File
+				RelativePath="..\tools\tools.cc">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trio.c">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trionan.c">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triostr.c">
+			</File>
+			<File
+				RelativePath="..\tools\weighted_index.cc">
+			</File>
+			<File
+				RelativePath="wizard.ui.h">
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl">
+			<File
+				RelativePath="..\main\analyze.hh">
+			</File>
+			<File
+				RelativePath="..\main\analyze_util.hh">
+			</File>
+			<File
+				RelativePath="apocalypse_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing apocalypse_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe apocalypse_widget.hh -o moc_apocalypse_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_apocalypse_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_avida_driver.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_avida_driver.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_avida_driver.hh -o moc_avd_avida_driver.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_avida_driver.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_driver_controller.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_driver_controller.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_driver_controller.hh -o moc_avd_driver_controller.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_driver_controller.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_event_viewer_controller.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_event_viewer_controller.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_event_viewer_controller.hh -o moc_avd_event_viewer_controller.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_event_viewer_controller.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_godbox_controller.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_godbox_controller.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_godbox_controller.hh -o moc_avd_godbox_controller.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_godbox_controller.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_gui_msg_event.hh">
+			</File>
+			<File
+				RelativePath="avd_help_controller.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_help_controller.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_help_controller.hh -o moc_avd_help_controller.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_help_controller.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_help_viewer.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_help_viewer.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_help_viewer.hh -o moc_avd_help_viewer.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_help_viewer.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_instruction_viewer_controller.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_instruction_viewer_controller.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_instruction_viewer_controller.hh -o moc_avd_instruction_viewer_controller.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_instruction_viewer_controller.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_lograte_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_lograte_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_lograte_widget.hh -o moc_avd_lograte_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_lograte_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_main_window.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_main_window.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_main_window.hh -o moc_avd_main_window.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_main_window.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_main_window_controller.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_main_window_controller.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_main_window_controller.hh -o moc_avd_main_window_controller.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_main_window_controller.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_message_queue.hh">
+			</File>
+			<File
+				RelativePath="avd_mission_control.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_mission_control.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_mission_control.hh -o moc_avd_mission_control.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_mission_control.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_plot_viewer_controller.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_plot_viewer_controller.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_plot_viewer_controller.hh -o moc_avd_plot_viewer_controller.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_plot_viewer_controller.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_rate_slider2.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avd_rate_slider2.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avd_rate_slider2.hh -o moc_avd_rate_slider2.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avd_rate_slider2.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="avd_rate_validator2.hh">
+			</File>
+			<File
+				RelativePath="..\main\avida.hh">
+			</File>
+			<File
+				RelativePath="avida_data.hh">
+			</File>
+			<File
+				RelativePath="avida_plot_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing avida_plot_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe avida_plot_widget.hh -o moc_avida_plot_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_avida_plot_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\tools\b_struct2.hh">
+			</File>
+			<File
+				RelativePath="..\main\birth_chamber.hh">
+			</File>
+			<File
+				RelativePath="..\tools\block_struct.hh">
+			</File>
+			<File
+				RelativePath="..\main\callback_util.hh">
+			</File>
+			<File
+				RelativePath="color_scale_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing color_scale_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe color_scale_widget.hh -o moc_color_scale_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_color_scale_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\main\config.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_defs.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_memory.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_stack.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_stats.hh">
+			</File>
+			<File
+				RelativePath="..\tools\data_entry.hh">
+			</File>
+			<File
+				RelativePath="..\tools\data_manager.hh">
+			</File>
+			<File
+				RelativePath="..\tools\datafile.hh">
+			</File>
+			<File
+				RelativePath="double_slider.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing double_slider.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe double_slider.hh -o moc_double_slider.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_double_slider.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\main\environment.hh">
+			</File>
+			<File
+				RelativePath="..\event\event.hh">
+			</File>
+			<File
+				RelativePath="..\event\event_factory.hh">
+			</File>
+			<File
+				RelativePath="..\event\event_factory_manager.hh">
+			</File>
+			<File
+				RelativePath="..\event\event_list.hh">
+			</File>
+			<File
+				RelativePath="event_view_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing event_view_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe event_view_widget.hh -o moc_event_view_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_event_view_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\tools\file.hh">
+			</File>
+			<File
+				RelativePath="..\main\fitness_matrix.hh">
+			</File>
+			<File
+				RelativePath="..\tools\functions.hh">
+			</File>
+			<File
+				RelativePath="..\main\genebank.hh">
+			</File>
+			<File
+				RelativePath="..\main\genome.hh">
+			</File>
+			<File
+				RelativePath="..\main\genome_util.hh">
+			</File>
+			<File
+				RelativePath="..\main\genotype.hh">
+			</File>
+			<File
+				RelativePath="godbox_widget2.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing godbox_widget2.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe godbox_widget2.hh -o moc_godbox_widget2.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_godbox_widget2.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_base.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_cpu.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_factory.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_method.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_util.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\head.hh">
+			</File>
+			<File
+				RelativePath="..\tools\help.hh">
+			</File>
+			<File
+				RelativePath="..\main\inst.hh">
+			</File>
+			<File
+				RelativePath="..\main\inst_lib.hh">
+			</File>
+			<File
+				RelativePath="..\main\inst_util.hh">
+			</File>
+			<File
+				RelativePath="..\tools\int.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\label.hh">
+			</File>
+			<File
+				RelativePath="..\main\landscape.hh">
+			</File>
+			<File
+				RelativePath="..\main\lineage.hh">
+			</File>
+			<File
+				RelativePath="..\main\lineage_control.hh">
+			</File>
+			<File
+				RelativePath="map_view.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing map_view.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe map_view.hh -o moc_map_view.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_map_view.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="map_view_cell_entry.hh">
+			</File>
+			<File
+				RelativePath="map_view_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing map_view_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe map_view_widget.hh -o moc_map_view_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_map_view_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\tools\merit.hh">
+			</File>
+			<File
+				RelativePath="..\tools\message_display.hh">
+			</File>
+			<File
+				RelativePath="..\tools\message_display_hdrs.hh">
+			</File>
+			<File
+				RelativePath="messaging_population_wrapper.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing messaging_population_wrapper.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe messaging_population_wrapper.hh -o moc_messaging_population_wrapper.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_messaging_population_wrapper.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\main\mutations.hh">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_buttons_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing n_orig_instruction_buttons_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe n_orig_instruction_buttons_widget.hh -o moc_n_orig_instruction_buttons_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_n_orig_instruction_buttons_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="n_orig_instruction_cpu_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing n_orig_instruction_cpu_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe n_orig_instruction_cpu_widget.hh -o moc_n_orig_instruction_cpu_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_n_orig_instruction_cpu_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="n_orig_instruction_field_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing n_orig_instruction_field_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe n_orig_instruction_field_widget.hh -o moc_n_orig_instruction_field_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_n_orig_instruction_field_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="n_orig_instruction_line_pixmap_pair.hh">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_line_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing n_orig_instruction_line_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe n_orig_instruction_line_widget.hh -o moc_n_orig_instruction_line_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_n_orig_instruction_line_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="n_orig_instruction_pixmapstructs.hh">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_scrollview.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing n_orig_instruction_scrollview.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe n_orig_instruction_scrollview.hh -o moc_n_orig_instruction_scrollview.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_n_orig_instruction_scrollview.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="n_orig_instruction_scrollview_config.hh">
+			</File>
+			<File
+				RelativePath="n_orig_instruction_view_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing n_orig_instruction_view_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe n_orig_instruction_view_widget.hh -o moc_n_orig_instruction_view_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_n_orig_instruction_view_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="n_orig_instruction_viewer.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing n_orig_instruction_viewer.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe n_orig_instruction_viewer.hh -o moc_n_orig_instruction_viewer.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_n_orig_instruction_viewer.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\main\organism.hh">
+			</File>
+			<File
+				RelativePath="..\main\phenotype.hh">
+			</File>
+			<File
+				RelativePath="plot_select_dia_impl.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing plot_select_dia_impl.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe plot_select_dia_impl.hh -o moc_plot_select_dia_impl.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_plot_select_dia_impl.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="plot_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing plot_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe plot_widget.hh -o moc_plot_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_plot_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\main\pop_interface.hh">
+			</File>
+			<File
+				RelativePath="..\main\population.hh">
+			</File>
+			<File
+				RelativePath="..\main\population_cell.hh">
+			</File>
+			<File
+				RelativePath="population_cell_wrapped_accessors.hh">
+			</File>
+			<File
+				RelativePath="population_cell_wrapper.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing population_cell_wrapper.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe population_cell_wrapper.hh -o moc_population_cell_wrapper.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_population_cell_wrapper.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\event\population_event_factory.hh">
+			</File>
+			<File
+				RelativePath="population_wrapper.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing population_wrapper.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe population_wrapper.hh -o moc_population_wrapper.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_population_wrapper.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\tools\random.hh">
+			</File>
+			<File
+				RelativePath="..\main\reaction.hh">
+			</File>
+			<File
+				RelativePath="..\main\reaction_result.hh">
+			</File>
+			<File
+				RelativePath="repopulate_widget.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing repopulate_widget.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe repopulate_widget.hh -o moc_repopulate_widget.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_repopulate_widget.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\main\resource.hh">
+			</File>
+			<File
+				RelativePath="..\main\resource_count.hh">
+			</File>
+			<File
+				RelativePath="setup_file.hh">
+			</File>
+			<File
+				RelativePath="setup_genesis.hh">
+			</File>
+			<File
+				RelativePath="setup_wizard.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing setup_wizard.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe setup_wizard.hh -o moc_setup_wizard.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_setup_wizard.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="setup_wizard2.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing setup_wizard2.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe setup_wizard2.hh -o moc_setup_wizard2.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_setup_wizard2.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="setup_wizard_config.hh">
+			</File>
+			<File
+				RelativePath="setup_wizard_constants.hh">
+			</File>
+			<File
+				RelativePath="setup_wizard_page.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing setup_wizard_page.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe setup_wizard_page.hh -o moc_setup_wizard_page.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_setup_wizard_page.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="setup_wizard_page2.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing setup_wizard_page2.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe setup_wizard_page2.hh -o moc_setup_wizard_page2.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_setup_wizard_page2.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\tools\slice.hh">
+			</File>
+			<File
+				RelativePath="..\main\species.hh">
+			</File>
+			<File
+				RelativePath="..\tools\stat.hh">
+			</File>
+			<File
+				RelativePath="..\main\stats.hh">
+			</File>
+			<File
+				RelativePath="..\tools\string.hh">
+			</File>
+			<File
+				RelativePath="..\tools\string_list.hh">
+			</File>
+			<File
+				RelativePath="..\tools\string_util.hh">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\strio.h">
+			</File>
+			<File
+				RelativePath="..\tools\tArray.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tBuffer.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tDictionary.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tList.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tMatrix.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tVector.hh">
+			</File>
+			<File
+				RelativePath="..\main\tasks.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\test_cpu.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\test_util.hh">
+			</File>
+			<File
+				RelativePath="testwizard.hh">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Moc&apos;ing testwizard.hh..."
+						CommandLine="$(QTDIR)\bin\moc.exe testwizard.hh -o moc_testwizard.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe"
+						Outputs="moc_testwizard.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="..\tools\tools.hh">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trio.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triodef.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trionan.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triop.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triostr.h">
+			</File>
+			<File
+				RelativePath="..\tools\weighted_index.hh">
+			</File>
+			<File
+				RelativePath="..\tools\win32_mkdir_hack.hh">
+			</File>
+		</Filter>
+		<Filter
+			Name="Generated MOC Files"
+			Filter="cpp;c;cxx;moc">
+			<File
+				RelativePath="moc_apocalypse_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_avida_driver.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_driver_controller.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_event_viewer_controller.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_godbox_controller.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_help_controller.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_help_viewer.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_instruction_viewer_controller.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_lograte_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_main_window.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_main_window_controller.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_mission_control.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_plot_viewer_controller.cpp">
+			</File>
+			<File
+				RelativePath="moc_avd_rate_slider2.cpp">
+			</File>
+			<File
+				RelativePath="moc_avida_plot_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_color_scale_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_double_slider.cpp">
+			</File>
+			<File
+				RelativePath="moc_event_chooser.cpp">
+			</File>
+			<File
+				RelativePath="moc_event_list_editor.cpp">
+			</File>
+			<File
+				RelativePath="moc_event_view_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_godbox_widget2.cpp">
+			</File>
+			<File
+				RelativePath="moc_map_view.cpp">
+			</File>
+			<File
+				RelativePath="moc_map_view_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_messaging_population_wrapper.cpp">
+			</File>
+			<File
+				RelativePath="moc_n_orig_instruction_buttons_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_n_orig_instruction_cpu_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_n_orig_instruction_field_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_n_orig_instruction_line_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_n_orig_instruction_scrollview.cpp">
+			</File>
+			<File
+				RelativePath="moc_n_orig_instruction_view_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_n_orig_instruction_viewer.cpp">
+			</File>
+			<File
+				RelativePath="moc_plot_select_dia.cpp">
+			</File>
+			<File
+				RelativePath="moc_plot_select_dia_impl.cpp">
+			</File>
+			<File
+				RelativePath="moc_plot_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_population_cell_wrapper.cpp">
+			</File>
+			<File
+				RelativePath="moc_population_wrapper.cpp">
+			</File>
+			<File
+				RelativePath="moc_repopulate_widget.cpp">
+			</File>
+			<File
+				RelativePath="moc_setup_wizard.cpp">
+			</File>
+			<File
+				RelativePath="moc_setup_wizard2.cpp">
+			</File>
+			<File
+				RelativePath="moc_setup_wizard_page.cpp">
+			</File>
+			<File
+				RelativePath="moc_setup_wizard_page2.cpp">
+			</File>
+			<File
+				RelativePath="moc_testwizard.cpp">
+			</File>
+			<File
+				RelativePath="moc_wizard.cpp">
+			</File>
+		</Filter>
+		<Filter
+			Name="Generated UI Files"
+			Filter="cpp;c;cxx;h;hpp;hxx;">
+			<File
+				RelativePath="event_chooser.cpp">
+			</File>
+			<File
+				RelativePath="event_chooser.h">
+			</File>
+			<File
+				RelativePath="event_list_editor.cpp">
+			</File>
+			<File
+				RelativePath="event_list_editor.h">
+			</File>
+			<File
+				RelativePath="plot_select_dia.cpp">
+			</File>
+			<File
+				RelativePath="plot_select_dia.h">
+			</File>
+			<File
+				RelativePath="wizard.cpp">
+			</File>
+			<File
+				RelativePath="wizard.h">
+			</File>
+		</Filter>
+		<Filter
+			Name="Forms"
+			Filter="ui"
+			ParseFiles="FALSE">
+			<File
+				RelativePath="event_chooser.ui">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Uic&apos;ing event_chooser.ui..."
+						CommandLine="$(QTDIR)\bin\uic.exe event_chooser.ui -o .\event_chooser.h &amp;&amp; $(QTDIR)\bin\uic.exe event_chooser.ui -i event_chooser.h -o .\event_chooser.cpp &amp;&amp; $(QTDIR)\bin\moc.exe .\event_chooser.h -o moc_event_chooser.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe;$(QTDIR)\bin\uic.exe"
+						Outputs=".\event_chooser.h;.\event_chooser.cpp;moc_event_chooser.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="event_list_editor.ui">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Uic&apos;ing event_list_editor.ui..."
+						CommandLine="$(QTDIR)\bin\uic.exe event_list_editor.ui -o .\event_list_editor.h &amp;&amp; $(QTDIR)\bin\uic.exe event_list_editor.ui -i event_list_editor.h -o .\event_list_editor.cpp &amp;&amp; $(QTDIR)\bin\moc.exe .\event_list_editor.h -o moc_event_list_editor.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe;$(QTDIR)\bin\uic.exe"
+						Outputs=".\event_list_editor.h;.\event_list_editor.cpp;moc_event_list_editor.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="plot_select_dia.ui">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Uic&apos;ing plot_select_dia.ui..."
+						CommandLine="$(QTDIR)\bin\uic.exe plot_select_dia.ui -o .\plot_select_dia.h &amp;&amp; $(QTDIR)\bin\uic.exe plot_select_dia.ui -i plot_select_dia.h -o .\plot_select_dia.cpp &amp;&amp; $(QTDIR)\bin\moc.exe .\plot_select_dia.h -o moc_plot_select_dia.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe;$(QTDIR)\bin\uic.exe"
+						Outputs=".\plot_select_dia.h;.\plot_select_dia.cpp;moc_plot_select_dia.cpp"/>
+				</FileConfiguration>
+			</File>
+			<File
+				RelativePath="wizard.ui">
+				<FileConfiguration
+					Name="Release|Win32">
+					<Tool
+						Name="VCCustomBuildTool"
+						Description="Uic&apos;ing wizard.ui..."
+						CommandLine="$(QTDIR)\bin\uic.exe wizard.ui -o .\wizard.h &amp;&amp; $(QTDIR)\bin\uic.exe wizard.ui -i wizard.h -o .\wizard.cpp &amp;&amp; $(QTDIR)\bin\moc.exe .\wizard.h -o moc_wizard.cpp
+"
+						AdditionalDependencies="$(QTDIR)\bin\moc.exe;$(QTDIR)\bin\uic.exe"
+						Outputs=".\wizard.h;.\wizard.cpp;moc_wizard.cpp"/>
+				</FileConfiguration>
+			</File>
+		</Filter>
+		<File
+			RelativePath="..\cpu\hardware_4stack.cc">
+		</File>
+		<File
+			RelativePath="..\cpu\hardware_4stack.hh">
+		</File>
+		<File
+			RelativePath="..\main\inst_set.cc">
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>
Index: avida/current/source/qt-viewer/setup_avida.cc
diff -u avida/current/source/qt-viewer/setup_avida.cc:1.21 avida/current/source/qt-viewer/setup_avida.cc:1.22
--- avida/current/source/qt-viewer/setup_avida.cc:1.21	Mon May 19 13:35:49 2003
+++ avida/current/source/qt-viewer/setup_avida.cc	Fri May 23 04:43:40 2003
@@ -80,12 +80,16 @@
   }
 
   if (cConfig::GetHardwareType() == HARDWARE_TYPE_CPU_ORIGINAL) {
+#ifdef USE_INST_SET_CODE
     environment.GetInstSet().SetInstLib(cHardwareCPU::GetInstLib());
+#endif /* USE_INST_SET_CODE */
     cHardwareUtil::LoadInstSet_CPUOriginal(cConfig::GetInstFilename(),
 					   environment.GetInstSet());
   }
   else if (cConfig::GetHardwareType() == HARDWARE_TYPE_CPU_4STACK) {
+#ifdef USE_INST_SET_CODE
     environment.GetInstSet().SetInstLib(cHardware4Stack::GetInstLib());
+#endif /* USE_INST_SET_CODE */
     cHardwareUtil::LoadInstSet_CPU4Stack(cConfig::GetInstFilename(),
 					   environment.GetInstSet());
   }
Index: avida/current/source/viewers/ncurses-viewer.ilk
Index: avida/current/source/viewers/ncurses-viewer.pch
Index: avida/current/source/viewers/ncurses-viewer.pdb
Index: avida/current/source/viewers/ncurses_viewer.ncb
Index: avida/current/source/viewers/ncurses_viewer.sln
diff -u /dev/null avida/current/source/viewers/ncurses_viewer.sln:1.4
--- /dev/null	Fri May 23 04:43:51 2003
+++ avida/current/source/viewers/ncurses_viewer.sln	Fri May 23 04:43:49 2003
@@ -0,0 +1,18 @@
+Microsoft Visual Studio Solution File, Format Version 7.00
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ncurses-viewer", "ncurses_viewer.vcproj", "{B6625AC4-47F4-4480-BCCA-82FC8F2EF859}"
+EndProject
+Global
+	GlobalSection(SolutionConfiguration) = preSolution
+		ConfigName.0 = Debug
+	EndGlobalSection
+	GlobalSection(ProjectDependencies) = postSolution
+	EndGlobalSection
+	GlobalSection(ProjectConfiguration) = postSolution
+		{B6625AC4-47F4-4480-BCCA-82FC8F2EF859}.Debug.ActiveCfg = Debug|Win32
+		{B6625AC4-47F4-4480-BCCA-82FC8F2EF859}.Debug.Build.0 = Debug|Win32
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+	EndGlobalSection
+	GlobalSection(ExtensibilityAddIns) = postSolution
+	EndGlobalSection
+EndGlobal
Index: avida/current/source/viewers/ncurses_viewer.suo
Index: avida/current/source/viewers/ncurses_viewer.vcproj
diff -u /dev/null avida/current/source/viewers/ncurses_viewer.vcproj:1.4
--- /dev/null	Fri May 23 04:43:51 2003
+++ avida/current/source/viewers/ncurses_viewer.vcproj	Fri May 23 04:43:49 2003
@@ -0,0 +1,611 @@
+<?xml version="1.0" encoding = "Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="7.00"
+	Name="ncurses-viewer"
+	ProjectGUID="{B6625AC4-47F4-4480-BCCA-82FC8F2EF859}">
+	<Platforms>
+		<Platform
+			Name="Win32"/>
+	</Platforms>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory="."
+			IntermediateDirectory="Debug"
+			ConfigurationType="1"
+			UseOfMFC="0"
+			ATLMinimizesCRunTimeLibraryUsage="FALSE">
+			<Tool
+				Name="VCCLCompilerTool"
+				AdditionalOptions="-Zm200 -w34100 -w34189"
+				Optimization="0"
+				InlineFunctionExpansion="1"
+				AdditionalIncludeDirectories="..;..\cpu;..\event;..\main;&quot;..\third-party\trio-1.9&quot;;..\tools;&quot;$(QTDIR)\include&quot;;C:\cygwin\home\Kaben\CygwinExperiment\current\source\viewers;&quot;$(QTDIR)\mkspecs\win32-msvc.net&quot;;c:\cygwin\home\kaben\CygwinExperiment\pdcurs26"
+				PreprocessorDefinitions="_CONSOLE,UNICODE,WIN32,QT_DLL,QT_THREAD_SUPPORT"
+				GeneratePreprocessedFile="0"
+				RuntimeLibrary="2"
+				UsePrecompiledHeader="2"
+				PrecompiledHeaderFile=".\ncurses-viewer.pch"
+				AssemblerListingLocation=".\"
+				ObjectFile=".\"
+				ProgramDataBaseFileName=".\"
+				WarningLevel="3"
+				SuppressStartupBanner="TRUE"
+				DebugInformationFormat="1"/>
+			<Tool
+				Name="VCCustomBuildTool"/>
+			<Tool
+				Name="VCLinkerTool"
+				AdditionalDependencies="qt-mteval312.lib qtmain.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib imm32.lib winmm.lib wsock32.lib winspool.lib delayimp.lib c:/cygwin/home/kaben/CygwinExperiment/pdcurs/pdcurses.lib"
+				OutputFile=".\ncurses-viewer.exe"
+				LinkIncremental="2"
+				SuppressStartupBanner="TRUE"
+				AdditionalLibraryDirectories="$(QTDIR)\lib"
+				GenerateDebugInformation="TRUE"
+				ProgramDatabaseFile="ncurses-viewer.pdb"
+				SubSystem="1"/>
+			<Tool
+				Name="VCMIDLTool"
+				WarningLevel="0"
+				DefaultCharType="0"
+				EnableErrorChecks="1"/>
+			<Tool
+				Name="VCPostBuildEventTool"/>
+			<Tool
+				Name="VCPreBuildEventTool"/>
+			<Tool
+				Name="VCPreLinkEventTool"/>
+			<Tool
+				Name="VCResourceCompilerTool"
+				PreprocessorDefinitions="NDEBUG"/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"/>
+			<Tool
+				Name="VCWebDeploymentTool"/>
+		</Configuration>
+	</Configurations>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
+			<File
+				RelativePath="..\main\analyze.cc">
+			</File>
+			<File
+				RelativePath="..\main\analyze_util.cc">
+			</File>
+			<File
+				RelativePath="ansi.cc">
+			</File>
+			<File
+				RelativePath="..\main\avida.cc">
+			</File>
+			<File
+				RelativePath="..\tools\b_struct2.cc">
+			</File>
+			<File
+				RelativePath="bar_screen.cc">
+			</File>
+			<File
+				RelativePath="..\main\birth_chamber.cc">
+			</File>
+			<File
+				RelativePath="..\tools\block_struct.cc">
+			</File>
+			<File
+				RelativePath="..\main\callback_util.cc">
+			</File>
+			<File
+				RelativePath="..\main\config.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_memory.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_stack.cc">
+			</File>
+			<File
+				RelativePath="..\tools\data_entry.cc">
+			</File>
+			<File
+				RelativePath="..\tools\data_manager.cc">
+			</File>
+			<File
+				RelativePath="..\tools\datafile.cc">
+			</File>
+			<File
+				RelativePath="..\main\environment.cc">
+			</File>
+			<File
+				RelativePath="..\event\event.cc">
+			</File>
+			<File
+				RelativePath="..\event\event_factory.cc">
+			</File>
+			<File
+				RelativePath="..\event\event_factory_manager.cc">
+			</File>
+			<File
+				RelativePath="..\event\event_list.cc">
+			</File>
+			<File
+				RelativePath="..\tools\file.cc">
+			</File>
+			<File
+				RelativePath="..\main\fitness_matrix.cc">
+			</File>
+			<File
+				RelativePath="..\main\genebank.cc">
+			</File>
+			<File
+				RelativePath="..\main\genome.cc">
+			</File>
+			<File
+				RelativePath="..\main\genome_util.cc">
+			</File>
+			<File
+				RelativePath="..\main\genotype.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_base.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_cpu.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_factory.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_util.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\head.cc">
+			</File>
+			<File
+				RelativePath="..\tools\help.cc">
+			</File>
+			<File
+				RelativePath="hist_screen.cc">
+			</File>
+			<File
+				RelativePath="..\main\inst.cc">
+			</File>
+			<File
+				RelativePath="..\main\inst_util.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\label.cc">
+			</File>
+			<File
+				RelativePath="..\main\landscape.cc">
+			</File>
+			<File
+				RelativePath="..\main\lineage.cc">
+			</File>
+			<File
+				RelativePath="..\main\lineage_control.cc">
+			</File>
+			<File
+				RelativePath="map_screen.cc">
+			</File>
+			<File
+				RelativePath="menu.cc">
+			</File>
+			<File
+				RelativePath="..\tools\merit.cc">
+			</File>
+			<File
+				RelativePath="..\tools\message_display.cc">
+			</File>
+			<File
+				RelativePath="..\main\mutations.cc">
+			</File>
+			<File
+				RelativePath="ncurses.cc">
+			</File>
+			<File
+				RelativePath="options_screen.cc">
+			</File>
+			<File
+				RelativePath="..\main\organism.cc">
+			</File>
+			<File
+				RelativePath="..\main\phenotype.cc">
+			</File>
+			<File
+				RelativePath="..\main\pop_interface.cc">
+			</File>
+			<File
+				RelativePath="..\main\population.cc">
+			</File>
+			<File
+				RelativePath="..\main\population_cell.cc">
+			</File>
+			<File
+				RelativePath="..\event\population_event_factory.cc">
+			</File>
+			<File
+				RelativePath="..\tools\random.cc">
+			</File>
+			<File
+				RelativePath="..\main\reaction.cc">
+			</File>
+			<File
+				RelativePath="..\main\reaction_result.cc">
+			</File>
+			<File
+				RelativePath="..\main\resource.cc">
+			</File>
+			<File
+				RelativePath="..\main\resource_count.cc">
+			</File>
+			<File
+				RelativePath="..\tools\slice.cc">
+			</File>
+			<File
+				RelativePath="..\main\species.cc">
+			</File>
+			<File
+				RelativePath="..\tools\stat.cc">
+			</File>
+			<File
+				RelativePath="..\main\stats.cc">
+			</File>
+			<File
+				RelativePath="stats_screen.cc">
+			</File>
+			<File
+				RelativePath="..\tools\string.cc">
+			</File>
+			<File
+				RelativePath="..\tools\string_list.cc">
+			</File>
+			<File
+				RelativePath="..\tools\string_util.cc">
+			</File>
+			<File
+				RelativePath="symbol_util.cc">
+			</File>
+			<File
+				RelativePath="..\main\tasks.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\test_cpu.cc">
+			</File>
+			<File
+				RelativePath="..\cpu\test_util.cc">
+			</File>
+			<File
+				RelativePath="text_screen.cc">
+			</File>
+			<File
+				RelativePath="..\tools\tools.cc">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trio.c">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trionan.c">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triostr.c">
+			</File>
+			<File
+				RelativePath="view.cc">
+			</File>
+			<File
+				RelativePath="viewer.cc">
+			</File>
+			<File
+				RelativePath="..\tools\weighted_index.cc">
+			</File>
+			<File
+				RelativePath="zoom_screen.cc">
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl">
+			<File
+				RelativePath="..\main\analyze.hh">
+			</File>
+			<File
+				RelativePath="..\main\analyze_util.hh">
+			</File>
+			<File
+				RelativePath="ansi.hh">
+			</File>
+			<File
+				RelativePath="..\main\avida.hh">
+			</File>
+			<File
+				RelativePath="..\tools\b_struct2.hh">
+			</File>
+			<File
+				RelativePath="bar_screen.hh">
+			</File>
+			<File
+				RelativePath="..\main\birth_chamber.hh">
+			</File>
+			<File
+				RelativePath="..\tools\block_struct.hh">
+			</File>
+			<File
+				RelativePath="..\main\callback_util.hh">
+			</File>
+			<File
+				RelativePath="..\main\config.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_defs.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_memory.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_stack.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\cpu_stats.hh">
+			</File>
+			<File
+				RelativePath="..\tools\data_entry.hh">
+			</File>
+			<File
+				RelativePath="..\tools\data_manager.hh">
+			</File>
+			<File
+				RelativePath="..\tools\datafile.hh">
+			</File>
+			<File
+				RelativePath="..\main\environment.hh">
+			</File>
+			<File
+				RelativePath="..\event\event.hh">
+			</File>
+			<File
+				RelativePath="..\event\event_factory.hh">
+			</File>
+			<File
+				RelativePath="..\event\event_factory_manager.hh">
+			</File>
+			<File
+				RelativePath="..\event\event_list.hh">
+			</File>
+			<File
+				RelativePath="..\tools\file.hh">
+			</File>
+			<File
+				RelativePath="..\main\fitness_matrix.hh">
+			</File>
+			<File
+				RelativePath="..\tools\functions.hh">
+			</File>
+			<File
+				RelativePath="..\main\genebank.hh">
+			</File>
+			<File
+				RelativePath="..\main\genome.hh">
+			</File>
+			<File
+				RelativePath="..\main\genome_util.hh">
+			</File>
+			<File
+				RelativePath="..\main\genotype.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_base.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_cpu.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_factory.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_method.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\hardware_util.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\head.hh">
+			</File>
+			<File
+				RelativePath="..\tools\help.hh">
+			</File>
+			<File
+				RelativePath="hist_screen.hh">
+			</File>
+			<File
+				RelativePath="..\main\inst.hh">
+			</File>
+			<File
+				RelativePath="..\main\inst_lib.hh">
+			</File>
+			<File
+				RelativePath="..\main\inst_util.hh">
+			</File>
+			<File
+				RelativePath="..\tools\int.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\label.hh">
+			</File>
+			<File
+				RelativePath="..\main\landscape.hh">
+			</File>
+			<File
+				RelativePath="..\main\lineage.hh">
+			</File>
+			<File
+				RelativePath="..\main\lineage_control.hh">
+			</File>
+			<File
+				RelativePath="map_screen.hh">
+			</File>
+			<File
+				RelativePath="menu.hh">
+			</File>
+			<File
+				RelativePath="..\tools\merit.hh">
+			</File>
+			<File
+				RelativePath="..\tools\message_display.hh">
+			</File>
+			<File
+				RelativePath="..\tools\message_display_hdrs.hh">
+			</File>
+			<File
+				RelativePath="..\main\mutations.hh">
+			</File>
+			<File
+				RelativePath="ncurses.hh">
+			</File>
+			<File
+				RelativePath="options_screen.hh">
+			</File>
+			<File
+				RelativePath="..\main\organism.hh">
+			</File>
+			<File
+				RelativePath="..\main\phenotype.hh">
+			</File>
+			<File
+				RelativePath="..\main\pop_interface.hh">
+			</File>
+			<File
+				RelativePath="..\main\population.hh">
+			</File>
+			<File
+				RelativePath="..\main\population_cell.hh">
+			</File>
+			<File
+				RelativePath="..\event\population_event_factory.hh">
+			</File>
+			<File
+				RelativePath="..\tools\random.hh">
+			</File>
+			<File
+				RelativePath="..\main\reaction.hh">
+			</File>
+			<File
+				RelativePath="..\main\reaction_result.hh">
+			</File>
+			<File
+				RelativePath="..\main\resource.hh">
+			</File>
+			<File
+				RelativePath="..\main\resource_count.hh">
+			</File>
+			<File
+				RelativePath="..\tools\slice.hh">
+			</File>
+			<File
+				RelativePath="..\main\species.hh">
+			</File>
+			<File
+				RelativePath="..\tools\stat.hh">
+			</File>
+			<File
+				RelativePath="..\main\stats.hh">
+			</File>
+			<File
+				RelativePath="stats_screen.hh">
+			</File>
+			<File
+				RelativePath="..\tools\string.hh">
+			</File>
+			<File
+				RelativePath="..\tools\string_list.hh">
+			</File>
+			<File
+				RelativePath="..\tools\string_util.hh">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\strio.h">
+			</File>
+			<File
+				RelativePath="symbol_util.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tArray.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tBuffer.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tDictionary.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tList.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tMatrix.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tVector.hh">
+			</File>
+			<File
+				RelativePath="..\main\tasks.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\test_cpu.hh">
+			</File>
+			<File
+				RelativePath="..\cpu\test_util.hh">
+			</File>
+			<File
+				RelativePath="text_screen.hh">
+			</File>
+			<File
+				RelativePath="text_window.hh">
+			</File>
+			<File
+				RelativePath="..\tools\tools.hh">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trio.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triodef.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\trionan.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triop.h">
+			</File>
+			<File
+				RelativePath="..\third-party\trio-1.9\triostr.h">
+			</File>
+			<File
+				RelativePath="view.hh">
+			</File>
+			<File
+				RelativePath="viewer.hh">
+			</File>
+			<File
+				RelativePath="..\tools\weighted_index.hh">
+			</File>
+			<File
+				RelativePath="..\tools\win32_mkdir_hack.hh">
+			</File>
+			<File
+				RelativePath="zoom_screen.hh">
+			</File>
+		</Filter>
+		<File
+			RelativePath="..\cpu\hardware_4stack.cc">
+		</File>
+		<File
+			RelativePath="..\cpu\hardware_4stack.hh">
+		</File>
+		<File
+			RelativePath="..\main\inst_set.cc">
+		</File>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>


More information about the Avida-cvs mailing list