[Avida-cvs] [avida-svn] r437 - in development: Avida.xcodeproj source source/main source/script source/targets source/targets/avida source/targets/avida-s source/targets/avida-viewer
brysonda@myxo.css.msu.edu
brysonda at myxo.css.msu.edu
Sun Jan 15 14:19:57 PST 2006
Author: brysonda
Date: 2006-01-15 16:54:54 -0500 (Sun, 15 Jan 2006)
New Revision: 437
Added:
development/source/platform/
development/source/script/
development/source/script/AvidaScript.h
development/source/script/FlexLexer.h
development/source/script/cLexer.h
development/source/script/cLexer.l
development/source/targets/
development/source/targets/CMakeLists.txt
development/source/targets/avida-s/
development/source/targets/avida-s/main.cc
development/source/targets/avida-viewer/
development/source/targets/avida-viewer/CMakeLists.txt
development/source/targets/avida-viewer/cTextViewerDriver.cc
development/source/targets/avida-viewer/cTextViewerDriver.h
development/source/targets/avida-viewer/cZoomScreen.cc
development/source/targets/avida-viewer/viewer.cc
development/source/targets/avida/
development/source/targets/avida/CMakeLists.txt
development/source/targets/avida/primitive.cc
Removed:
development/source/main/primitive.cc
development/source/targets/avida-viewer/CMakeLists.txt
development/source/targets/avida-viewer/cAvidaDriver_TextPopViewer.cc
development/source/targets/avida-viewer/cAvidaDriver_TextPopViewer.h
development/source/targets/avida-viewer/cZoomScreen.cc
development/source/targets/avida-viewer/viewer.cc
development/source/viewer/
development/source/vista/
Modified:
development/Avida.xcodeproj/project.pbxproj
development/source/CMakeLists.txt
development/source/main/CMakeLists.txt
Log:
Reorganize target structure. Add initial AvidaScript lexer.
Modified: development/Avida.xcodeproj/project.pbxproj
===================================================================
--- development/Avida.xcodeproj/project.pbxproj 2006-01-13 20:24:42 UTC (rev 436)
+++ development/Avida.xcodeproj/project.pbxproj 2006-01-15 21:54:54 UTC (rev 437)
@@ -53,20 +53,6 @@
70422A34091B141000A5E67F /* cAnalyze.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70422A1C091B141000A5E67F /* cAnalyze.cc */; };
70422A3C091B141000A5E67F /* cAnalyzeGenotype.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70422A24091B141000A5E67F /* cAnalyzeGenotype.cc */; };
70422A3E091B141000A5E67F /* cAnalyzeUtil.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70422A26091B141000A5E67F /* cAnalyzeUtil.cc */; };
- 704866D5090B51310048600A /* cBarScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866B5090B51310048600A /* cBarScreen.cc */; };
- 704866D8090B51310048600A /* cEnvironmentScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866B8090B51310048600A /* cEnvironmentScreen.cc */; };
- 704866DA090B51310048600A /* cHistScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866BA090B51310048600A /* cHistScreen.cc */; };
- 704866DD090B51310048600A /* cMapScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866BD090B51310048600A /* cMapScreen.cc */; };
- 704866DF090B51310048600A /* cMenuWindow.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866BF090B51310048600A /* cMenuWindow.cc */; };
- 704866E1090B51310048600A /* cOptionsScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866C1090B51310048600A /* cOptionsScreen.cc */; };
- 704866E3090B51310048600A /* cScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866C3090B51310048600A /* cScreen.cc */; };
- 704866E5090B51310048600A /* cStatsScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866C5090B51310048600A /* cStatsScreen.cc */; };
- 704866E7090B51310048600A /* cSymbolUtil.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866C7090B51310048600A /* cSymbolUtil.cc */; };
- 704866E9090B51310048600A /* cTextWindow.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866C9090B51310048600A /* cTextWindow.cc */; };
- 704866EB090B51310048600A /* cView.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866CB090B51310048600A /* cView.cc */; };
- 704866ED090B51310048600A /* cViewInfo.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866CD090B51310048600A /* cViewInfo.cc */; };
- 704866EF090B51310048600A /* cZoomScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866CF090B51310048600A /* cZoomScreen.cc */; };
- 704866F2090B51310048600A /* viewer.cc in Sources */ = {isa = PBXBuildFile; fileRef = 704866D2090B51310048600A /* viewer.cc */; };
70486BA00826722F009328F0 /* analyze.cfg in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC3114B0762539E008F7A48 /* analyze.cfg */; };
70486BA10826722F009328F0 /* environment.cfg in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311800762539F008F7A48 /* environment.cfg */; };
70486BA20826722F009328F0 /* events.cfg in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311810762539F008F7A48 /* events.cfg */; };
@@ -88,14 +74,12 @@
70533482092A4F5D006BD186 /* cSpecies.cc in Sources */ = {isa = PBXBuildFile; fileRef = 705332480929764A006BD186 /* cSpecies.cc */; };
70533483092A4F5F006BD186 /* cSpeciesControl.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70F7DE6A09296613009E311D /* cSpeciesControl.cc */; };
70533484092A4F60006BD186 /* cSpeciesQueue.cc in Sources */ = {isa = PBXBuildFile; fileRef = 7053324A0929764A006BD186 /* cSpeciesQueue.cc */; };
- 70658C44085DE5FF00486BED /* primitive.cc in Sources */ = {isa = PBXBuildFile; fileRef = DCC311090762539E008F7A48 /* primitive.cc */; };
70658C5A085DF67D00486BED /* libncurses.5.4.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 70658C59085DF67D00486BED /* libncurses.5.4.dylib */; };
706D32E90854A39800D7DC8F /* dummy in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311950762539F008F7A48 /* dummy */; };
706D32EA0854A39900D7DC8F /* organism.4stack in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311970762539F008F7A48 /* organism.4stack */; };
706D32EB0854A39900D7DC8F /* organism.parasite in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311980762539F008F7A48 /* organism.parasite */; };
706D330F0854A7B900D7DC8F /* organism.smt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 706D330E0854A7B900D7DC8F /* organism.smt */; };
706D33280854A90D00D7DC8F /* inst_set.smt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 706D33270854A90D00D7DC8F /* inst_set.smt */; };
- 709D4B83095A2EFA00EC9358 /* cTextViewerDriver.cc in Sources */ = {isa = PBXBuildFile; fileRef = 709D4B81095A2EFA00EC9358 /* cTextViewerDriver.cc */; };
70B0865908F4974300FC65FE /* cLandscape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0865108F4974300FC65FE /* cLandscape.cc */; };
70B0865C08F4974300FC65FE /* cLocalMutations.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0865408F4974300FC65FE /* cLocalMutations.cc */; };
70B0865E08F4974300FC65FE /* cMutationLib.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0865608F4974300FC65FE /* cMutationLib.cc */; };
@@ -247,6 +231,142 @@
70D46934085F61DA004C8409 /* trio.c in Sources */ = {isa = PBXBuildFile; fileRef = DCC3146D076253A1008F7A48 /* trio.c */; };
70D46935085F61DD004C8409 /* trionan.c in Sources */ = {isa = PBXBuildFile; fileRef = DCC31471076253A1008F7A48 /* trionan.c */; };
70D46936085F61DF004C8409 /* triostr.c in Sources */ = {isa = PBXBuildFile; fileRef = DCC31474076253A1008F7A48 /* triostr.c */; };
+ 70DCAC7A097AF731002F8733 /* cBarScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC59097AF730002F8733 /* cBarScreen.cc */; };
+ 70DCAC7D097AF731002F8733 /* cEnvironmentScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC5C097AF730002F8733 /* cEnvironmentScreen.cc */; };
+ 70DCAC7F097AF731002F8733 /* cHistScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC5E097AF730002F8733 /* cHistScreen.cc */; };
+ 70DCAC82097AF731002F8733 /* cMapScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC61097AF730002F8733 /* cMapScreen.cc */; };
+ 70DCAC84097AF731002F8733 /* cMenuWindow.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC63097AF730002F8733 /* cMenuWindow.cc */; };
+ 70DCAC86097AF731002F8733 /* cOptionsScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC65097AF730002F8733 /* cOptionsScreen.cc */; };
+ 70DCAC88097AF731002F8733 /* cScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC67097AF730002F8733 /* cScreen.cc */; };
+ 70DCAC8A097AF731002F8733 /* cStatsScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC69097AF730002F8733 /* cStatsScreen.cc */; };
+ 70DCAC8C097AF731002F8733 /* cSymbolUtil.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC6B097AF730002F8733 /* cSymbolUtil.cc */; };
+ 70DCAC90097AF731002F8733 /* cTextWindow.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC6F097AF730002F8733 /* cTextWindow.cc */; };
+ 70DCAC92097AF731002F8733 /* cView.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC71097AF730002F8733 /* cView.cc */; };
+ 70DCAC94097AF731002F8733 /* cViewInfo.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC73097AF730002F8733 /* cViewInfo.cc */; };
+ 70DCAC96097AF731002F8733 /* cZoomScreen.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC75097AF730002F8733 /* cZoomScreen.cc */; };
+ 70DCAC99097AF731002F8733 /* viewer.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC78097AF730002F8733 /* viewer.cc */; };
+ 70DCAC9A097AF754002F8733 /* cTextViewerDriver.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC6D097AF730002F8733 /* cTextViewerDriver.cc */; };
+ 70DCAC9C097AF7C0002F8733 /* primitive.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC9B097AF7C0002F8733 /* primitive.cc */; };
+ 70DCACA0097AF7CC002F8733 /* avida.cc in Sources */ = {isa = PBXBuildFile; fileRef = DCC3109C0762539E008F7A48 /* avida.cc */; };
+ 70DCACA1097AF7CC002F8733 /* trio.c in Sources */ = {isa = PBXBuildFile; fileRef = DCC3146D076253A1008F7A48 /* trio.c */; };
+ 70DCACA2097AF7CC002F8733 /* trionan.c in Sources */ = {isa = PBXBuildFile; fileRef = DCC31471076253A1008F7A48 /* trionan.c */; };
+ 70DCACA3097AF7CC002F8733 /* triostr.c in Sources */ = {isa = PBXBuildFile; fileRef = DCC31474076253A1008F7A48 /* triostr.c */; };
+ 70DCACA4097AF7CC002F8733 /* cCodeLabel.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1EF4608C393BA00F50912 /* cCodeLabel.cc */; };
+ 70DCACA5097AF7CC002F8733 /* cCPUMemory.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1EF5808C3948C00F50912 /* cCPUMemory.cc */; };
+ 70DCACA6097AF7CC002F8733 /* cCPUStack.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1EF6108C3954700F50912 /* cCPUStack.cc */; };
+ 70DCACA7097AF7CC002F8733 /* cCPUTestInfo.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1EF7108C3968700F50912 /* cCPUTestInfo.cc */; };
+ 70DCACA8097AF7CC002F8733 /* cHardware4Stack.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1EF8B08C39BC500F50912 /* cHardware4Stack.cc */; };
+ 70DCACA9097AF7CC002F8733 /* cHardware4Stack_Thread.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1EFA208C39F2100F50912 /* cHardware4Stack_Thread.cc */; };
+ 70DCACAA097AF7CC002F8733 /* cHardwareBase.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1EFA308C39F2100F50912 /* cHardwareBase.cc */; };
+ 70DCACAB097AF7CC002F8733 /* cHardwareCPU_Thread.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1EFA408C39F2100F50912 /* cHardwareCPU_Thread.cc */; };
+ 70DCACAC097AF7CC002F8733 /* cHardwareCPU.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1EFA508C39F2100F50912 /* cHardwareCPU.cc */; };
+ 70DCACAD097AF7CC002F8733 /* cHardwareSMT_Thread.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1F02208C3C71300F50912 /* cHardwareSMT_Thread.cc */; };
+ 70DCACAE097AF7CC002F8733 /* cHardwareSMT.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1F02308C3C71300F50912 /* cHardwareSMT.cc */; };
+ 70DCACAF097AF7CC002F8733 /* cHardwareStatusPrinter.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1F02408C3C71300F50912 /* cHardwareStatusPrinter.cc */; };
+ 70DCACB0097AF7CC002F8733 /* cHeadCPU.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1F02608C3C71300F50912 /* cHeadCPU.cc */; };
+ 70DCACB1097AF7CC002F8733 /* cHeadMultiMem.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1F02708C3C71300F50912 /* cHeadMultiMem.cc */; };
+ 70DCACB2097AF7CC002F8733 /* cTestCPU.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1F02808C3C71300F50912 /* cTestCPU.cc */; };
+ 70DCACB3097AF7CC002F8733 /* cTestUtil.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1F02908C3C71300F50912 /* cTestUtil.cc */; };
+ 70DCACB4097AF7CC002F8733 /* cEventList.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1F18F08C6A11100F50912 /* cEventList.cc */; };
+ 70DCACB5097AF7CC002F8733 /* cEventTriggers.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C1F19108C6A11100F50912 /* cEventTriggers.cc */; };
+ 70DCACB6097AF7CC002F8733 /* cEnvironment.cc in Sources */ = {isa = PBXBuildFile; fileRef = 702D4EFC08DA5341007BA469 /* cEnvironment.cc */; };
+ 70DCACB7097AF7CC002F8733 /* cPopulationInterface.cc in Sources */ = {isa = PBXBuildFile; fileRef = 702D4EFD08DA5341007BA469 /* cPopulationInterface.cc */; };
+ 70DCACB8097AF7CC002F8733 /* cBirthChamber.cc in Sources */ = {isa = PBXBuildFile; fileRef = 702D4F3F08DA61FE007BA469 /* cBirthChamber.cc */; };
+ 70DCACB9097AF7CC002F8733 /* cGenome.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70CA6EB408DB7F8200068AC2 /* cGenome.cc */; };
+ 70DCACBA097AF7CC002F8733 /* cGenomeUtil.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70CA6EB508DB7F8200068AC2 /* cGenomeUtil.cc */; };
+ 70DCACBB097AF7CC002F8733 /* cInstruction.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70CA6EBF08DB7F8200068AC2 /* cInstruction.cc */; };
+ 70DCACBC097AF7CC002F8733 /* cInstSet.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70CA6EC008DB7F8200068AC2 /* cInstSet.cc */; };
+ 70DCACBD097AF7CC002F8733 /* cInstUtil.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70CA6EC108DB7F8200068AC2 /* cInstUtil.cc */; };
+ 70DCACBE097AF7CC002F8733 /* cLandscape.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0865108F4974300FC65FE /* cLandscape.cc */; };
+ 70DCACBF097AF7CC002F8733 /* cLocalMutations.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0865408F4974300FC65FE /* cLocalMutations.cc */; };
+ 70DCACC0097AF7CC002F8733 /* cMutationLib.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0865608F4974300FC65FE /* cMutationLib.cc */; };
+ 70DCACC1097AF7CC002F8733 /* cMutationRates.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0865708F4974300FC65FE /* cMutationRates.cc */; };
+ 70DCACC2097AF7CC002F8733 /* cOrganism.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0868708F49EA800FC65FE /* cOrganism.cc */; };
+ 70DCACC3097AF7CC002F8733 /* cOrgMessage.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0868808F49EA800FC65FE /* cOrgMessage.cc */; };
+ 70DCACC4097AF7CC002F8733 /* cPopulation.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0868908F49EA800FC65FE /* cPopulation.cc */; };
+ 70DCACC5097AF7CC002F8733 /* cPopulationCell.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0868A08F49EA800FC65FE /* cPopulationCell.cc */; };
+ 70DCACC6097AF7CC002F8733 /* cPhenotype.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0869C08F49F4800FC65FE /* cPhenotype.cc */; };
+ 70DCACC7097AF7CC002F8733 /* cReaction.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0871E08F5E82D00FC65FE /* cReaction.cc */; };
+ 70DCACC8097AF7CC002F8733 /* cReactionLib.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0871F08F5E82D00FC65FE /* cReactionLib.cc */; };
+ 70DCACC9097AF7CC002F8733 /* cReactionResult.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0872208F5E82D00FC65FE /* cReactionResult.cc */; };
+ 70DCACCA097AF7CC002F8733 /* cResource.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0872308F5E82D00FC65FE /* cResource.cc */; };
+ 70DCACCB097AF7CC002F8733 /* cResourceCount.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0872408F5E82D00FC65FE /* cResourceCount.cc */; };
+ 70DCACCC097AF7CC002F8733 /* cResourceLib.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0872508F5E82D00FC65FE /* cResourceLib.cc */; };
+ 70DCACCD097AF7CC002F8733 /* cSpatialCountElem.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0872608F5E82D00FC65FE /* cSpatialCountElem.cc */; };
+ 70DCACCE097AF7CC002F8733 /* cSpatialResCount.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0872708F5E82D00FC65FE /* cSpatialResCount.cc */; };
+ 70DCACCF097AF7CC002F8733 /* cStats.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0872B08F5E82D00FC65FE /* cStats.cc */; };
+ 70DCACD0097AF7CC002F8733 /* cTaskLib.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0872D08F5E82D00FC65FE /* cTaskLib.cc */; };
+ 70DCACD1097AF7CC002F8733 /* cChangeList.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B087DF08F5F4BA00FC65FE /* cChangeList.cc */; };
+ 70DCACD2097AF7CC002F8733 /* cConstSchedule.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B087E008F5F4BA00FC65FE /* cConstSchedule.cc */; };
+ 70DCACD3097AF7CC002F8733 /* cCountTracker.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B087E108F5F4BA00FC65FE /* cCountTracker.cc */; };
+ 70DCACD4097AF7CC002F8733 /* cDataFile.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0884F08F5FE5800FC65FE /* cDataFile.cc */; };
+ 70DCACD5097AF7CC002F8733 /* cDataFileManager.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0885008F5FE5800FC65FE /* cDataFileManager.cc */; };
+ 70DCACD6097AF7CC002F8733 /* cDataManager_Base.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0885108F5FE5800FC65FE /* cDataManager_Base.cc */; };
+ 70DCACD7097AF7CC002F8733 /* cDefaultMessageDisplay.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0885208F5FE5800FC65FE /* cDefaultMessageDisplay.cc */; };
+ 70DCACD8097AF7CC002F8733 /* cDoubleSum.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0885308F5FE5800FC65FE /* cDoubleSum.cc */; };
+ 70DCACD9097AF7CC002F8733 /* cFile.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0888308F603D400FC65FE /* cFile.cc */; };
+ 70DCACDA097AF7CC002F8733 /* cGenesis.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0888408F603D400FC65FE /* cGenesis.cc */; };
+ 70DCACDB097AF7CC002F8733 /* cHelpAlias.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891608F7630100FC65FE /* cHelpAlias.cc */; };
+ 70DCACDC097AF7CC002F8733 /* cHelpManager.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891708F7630100FC65FE /* cHelpManager.cc */; };
+ 70DCACDD097AF7CC002F8733 /* cHelpType.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891808F7630100FC65FE /* cHelpType.cc */; };
+ 70DCACDE097AF7CC002F8733 /* cHistogram.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891908F7630100FC65FE /* cHistogram.cc */; };
+ 70DCACDF097AF7CC002F8733 /* cInitFile.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891A08F7630100FC65FE /* cInitFile.cc */; };
+ 70DCACE0097AF7CC002F8733 /* cIntegratedSchedule.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891B08F7630100FC65FE /* cIntegratedSchedule.cc */; };
+ 70DCACE1097AF7CC002F8733 /* cIntegratedScheduleNode.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891C08F7630100FC65FE /* cIntegratedScheduleNode.cc */; };
+ 70DCACE2097AF7CC002F8733 /* cIntSum.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891D08F7630100FC65FE /* cIntSum.cc */; };
+ 70DCACE3097AF7CC002F8733 /* cMerit.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891E08F7630100FC65FE /* cMerit.cc */; };
+ 70DCACE4097AF7CC002F8733 /* cProbSchedule.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0891F08F7630100FC65FE /* cProbSchedule.cc */; };
+ 70DCACE5097AF7CC002F8733 /* cRandom.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0892008F7630100FC65FE /* cRandom.cc */; };
+ 70DCACE6097AF7CC002F8733 /* cRunningAverage.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0892108F7630100FC65FE /* cRunningAverage.cc */; };
+ 70DCACE7097AF7CC002F8733 /* cSchedule.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0892208F7630100FC65FE /* cSchedule.cc */; };
+ 70DCACE8097AF7CC002F8733 /* cString.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0892308F7630100FC65FE /* cString.cc */; };
+ 70DCACE9097AF7CC002F8733 /* cStringIterator.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0892408F7630100FC65FE /* cStringIterator.cc */; };
+ 70DCACEA097AF7CC002F8733 /* cStringList.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0892508F7630100FC65FE /* cStringList.cc */; };
+ 70DCACEB097AF7CC002F8733 /* cStringUtil.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0892608F7630100FC65FE /* cStringUtil.cc */; };
+ 70DCACEC097AF7CC002F8733 /* cTools.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B08B9008FB2E6B00FC65FE /* cTools.cc */; };
+ 70DCACED097AF7CC002F8733 /* cWeightedIndex.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B08B9108FB2E6B00FC65FE /* cWeightedIndex.cc */; };
+ 70DCACEE097AF7CC002F8733 /* cAvidaConfig.cc in Sources */ = {isa = PBXBuildFile; fileRef = 7013846009028B3E0087ED2E /* cAvidaConfig.cc */; };
+ 70DCACEF097AF7CC002F8733 /* cWorld.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C5BC6309059A970028A785 /* cWorld.cc */; };
+ 70DCACF0097AF7CC002F8733 /* cHardwareManager.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70C5BD690905CE5F0028A785 /* cHardwareManager.cc */; };
+ 70DCACF1097AF7CC002F8733 /* cEventManager.cc in Sources */ = {isa = PBXBuildFile; fileRef = 7040CF1A0906A52E00AA820F /* cEventManager.cc */; };
+ 70DCACF2097AF7CC002F8733 /* cMxCodeArray.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70B0865808F4974300FC65FE /* cMxCodeArray.cc */; };
+ 70DCACF3097AF7CC002F8733 /* cAnalyze.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70422A1C091B141000A5E67F /* cAnalyze.cc */; };
+ 70DCACF4097AF7CC002F8733 /* cAnalyzeGenotype.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70422A24091B141000A5E67F /* cAnalyzeGenotype.cc */; };
+ 70DCACF5097AF7CC002F8733 /* cAnalyzeUtil.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70422A26091B141000A5E67F /* cAnalyzeUtil.cc */; };
+ 70DCACF6097AF7CC002F8733 /* cFitnessMatrix.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70CA6EB208DB7F8200068AC2 /* cFitnessMatrix.cc */; };
+ 70DCACF7097AF7CC002F8733 /* cClassificationManager.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70F7DAF009290468009E311D /* cClassificationManager.cc */; };
+ 70DCACF8097AF7CC002F8733 /* cGenotype.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70F7DC9E09293E6F009E311D /* cGenotype.cc */; };
+ 70DCACF9097AF7CC002F8733 /* cGenotypeControl.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70F7DE6809296613009E311D /* cGenotypeControl.cc */; };
+ 70DCACFA097AF7CC002F8733 /* cSpeciesControl.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70F7DE6A09296613009E311D /* cSpeciesControl.cc */; };
+ 70DCACFB097AF7CC002F8733 /* cGenotype_BirthData.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70F7DE700929678E009E311D /* cGenotype_BirthData.cc */; };
+ 70DCACFC097AF7CC002F8733 /* cSpecies.cc in Sources */ = {isa = PBXBuildFile; fileRef = 705332480929764A006BD186 /* cSpecies.cc */; };
+ 70DCACFD097AF7CC002F8733 /* cSpeciesQueue.cc in Sources */ = {isa = PBXBuildFile; fileRef = 7053324A0929764A006BD186 /* cSpeciesQueue.cc */; };
+ 70DCACFE097AF7CC002F8733 /* cInjectGenotype.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70533364092A3DF4006BD186 /* cInjectGenotype.cc */; };
+ 70DCACFF097AF7CC002F8733 /* cInjectGenotypeControl.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70533366092A3DF4006BD186 /* cInjectGenotypeControl.cc */; };
+ 70DCAD00097AF7CC002F8733 /* cInjectGenotypeQueue.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70533369092A3DF4006BD186 /* cInjectGenotypeQueue.cc */; };
+ 70DCAD01097AF7CC002F8733 /* cLineage.cc in Sources */ = {isa = PBXBuildFile; fileRef = 705333E5092A4B7C006BD186 /* cLineage.cc */; };
+ 70DCAD02097AF7CC002F8733 /* cFallbackWorldDriver.cc in Sources */ = {isa = PBXBuildFile; fileRef = 701D915C094B864A008B845F /* cFallbackWorldDriver.cc */; };
+ 70DCAD03097AF7CC002F8733 /* cDefaultRunDriver.cc in Sources */ = {isa = PBXBuildFile; fileRef = 701D930C094CAD6B008B845F /* cDefaultRunDriver.cc */; };
+ 70DCAD04097AF7CC002F8733 /* cDriverManager.cc in Sources */ = {isa = PBXBuildFile; fileRef = 701D9382094CBA69008B845F /* cDriverManager.cc */; };
+ 70DCAD05097AF7CC002F8733 /* cDefaultAnalyzeDriver.cc in Sources */ = {isa = PBXBuildFile; fileRef = 701D93E7094CBF71008B845F /* cDefaultAnalyzeDriver.cc */; };
+ 70DCAD06097AF7CC002F8733 /* primitive.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC9B097AF7C0002F8733 /* primitive.cc */; };
+ 70DCAD09097AF7CC002F8733 /* primitive in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC3164D07626CF3008F7A48 /* primitive */; };
+ 70DCAD0A097AF7CC002F8733 /* analyze.cfg in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC3114B0762539E008F7A48 /* analyze.cfg */; };
+ 70DCAD0B097AF7CC002F8733 /* environment.cfg in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311800762539F008F7A48 /* environment.cfg */; };
+ 70DCAD0C097AF7CC002F8733 /* events.cfg in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311810762539F008F7A48 /* events.cfg */; };
+ 70DCAD0D097AF7CC002F8733 /* inst_set.4stack in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311840762539F008F7A48 /* inst_set.4stack */; };
+ 70DCAD0E097AF7CC002F8733 /* inst_set.default in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311850762539F008F7A48 /* inst_set.default */; };
+ 70DCAD0F097AF7CC002F8733 /* organism.default in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311890762539F008F7A48 /* organism.default */; };
+ 70DCAD10097AF7CC002F8733 /* dummy in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311950762539F008F7A48 /* dummy */; };
+ 70DCAD11097AF7CC002F8733 /* organism.4stack in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311970762539F008F7A48 /* organism.4stack */; };
+ 70DCAD12097AF7CC002F8733 /* organism.parasite in CopyFiles */ = {isa = PBXBuildFile; fileRef = DCC311980762539F008F7A48 /* organism.parasite */; };
+ 70DCAD13097AF7CC002F8733 /* organism.smt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 706D330E0854A7B900D7DC8F /* organism.smt */; };
+ 70DCAD14097AF7CC002F8733 /* inst_set.smt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 706D33270854A90D00D7DC8F /* inst_set.smt */; };
+ 70DCAD15097AF7CC002F8733 /* organism.smtx in CopyFiles */ = {isa = PBXBuildFile; fileRef = 701384330900A45B0087ED2E /* organism.smtx */; };
+ 70DCAD16097AF7CC002F8733 /* avida.cfg in CopyFiles */ = {isa = PBXBuildFile; fileRef = 7013852C0902E36B0087ED2E /* avida.cfg */; };
+ 70DCAD25097AF81A002F8733 /* cLexer.l in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAD21097AF81A002F8733 /* cLexer.l */; };
+ 70DCAD2F097AF8BC002F8733 /* main.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70DCAC57097AF730002F8733 /* main.cc */; };
+ 70DCAD38097AF972002F8733 /* CMakeLists.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 70DCAD37097AF972002F8733 /* CMakeLists.txt */; };
70F7D8CE09254787009E311D /* cFitnessMatrix.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70CA6EB208DB7F8200068AC2 /* cFitnessMatrix.cc */; };
70F7DAF409290468009E311D /* cClassificationManager.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70F7DAF009290468009E311D /* cClassificationManager.cc */; };
70F7DCA009293E76009E311D /* cClassificationManager.cc in Sources */ = {isa = PBXBuildFile; fileRef = 70F7DAF009290468009E311D /* cClassificationManager.cc */; };
@@ -258,6 +378,19 @@
DCC3166107628531008F7A48 /* avida.cc in Sources */ = {isa = PBXBuildFile; fileRef = DCC3109C0762539E008F7A48 /* avida.cc */; };
/* End PBXBuildFile section */
+/* Begin PBXBuildRule section */
+ 70DCAD2A097AF865002F8733 /* PBXBuildRule */ = {
+ isa = PBXBuildRule;
+ compilerSpec = com.apple.compilers.proxy.script;
+ fileType = sourcecode.lex;
+ isEditable = 1;
+ outputFiles = (
+ "$(DERIVED_FILES_DIR)/$(INPUT_FILE_BASE).cc",
+ );
+ script = "flex -+ -o${DERIVED_FILES_DIR}/${INPUT_FILE_BASE}.cc ${INPUT_FILE_PATH}";
+ };
+/* End PBXBuildRule section */
+
/* Begin PBXBuildStyle section */
70486B8C08266CA2009328F0 /* Profile */ = {
isa = PBXBuildStyle;
@@ -335,6 +468,30 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
+ 70DCAD08097AF7CC002F8733 /* CopyFiles */ = {
+ isa = PBXCopyFilesBuildPhase;
+ buildActionMask = 2147483647;
+ dstPath = Avida.work;
+ dstSubfolderSpec = 16;
+ files = (
+ 70DCAD09097AF7CC002F8733 /* primitive in CopyFiles */,
+ 70DCAD0A097AF7CC002F8733 /* analyze.cfg in CopyFiles */,
+ 70DCAD0B097AF7CC002F8733 /* environment.cfg in CopyFiles */,
+ 70DCAD0C097AF7CC002F8733 /* events.cfg in CopyFiles */,
+ 70DCAD0D097AF7CC002F8733 /* inst_set.4stack in CopyFiles */,
+ 70DCAD0E097AF7CC002F8733 /* inst_set.default in CopyFiles */,
+ 70DCAD0F097AF7CC002F8733 /* organism.default in CopyFiles */,
+ 70DCAD10097AF7CC002F8733 /* dummy in CopyFiles */,
+ 70DCAD11097AF7CC002F8733 /* organism.4stack in CopyFiles */,
+ 70DCAD12097AF7CC002F8733 /* organism.parasite in CopyFiles */,
+ 70DCAD13097AF7CC002F8733 /* organism.smt in CopyFiles */,
+ 70DCAD14097AF7CC002F8733 /* inst_set.smt in CopyFiles */,
+ 70DCAD15097AF7CC002F8733 /* organism.smtx in CopyFiles */,
+ 70DCAD16097AF7CC002F8733 /* avida.cfg in CopyFiles */,
+ 70DCAD38097AF972002F8733 /* CMakeLists.txt in CopyFiles */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
@@ -379,36 +536,6 @@
70422A26091B141000A5E67F /* cAnalyzeUtil.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cAnalyzeUtil.cc; sourceTree = "<group>"; };
70422A27091B141000A5E67F /* cAnalyzeUtil.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cAnalyzeUtil.h; sourceTree = "<group>"; };
70422A44091B1B8500A5E67F /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
- 704866B5090B51310048600A /* cBarScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cBarScreen.cc; sourceTree = "<group>"; };
- 704866B6090B51310048600A /* cBarScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cBarScreen.h; sourceTree = "<group>"; };
- 704866B7090B51310048600A /* cBaseTextWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cBaseTextWindow.h; sourceTree = "<group>"; };
- 704866B8090B51310048600A /* cEnvironmentScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cEnvironmentScreen.cc; sourceTree = "<group>"; };
- 704866B9090B51310048600A /* cEnvironmentScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cEnvironmentScreen.h; sourceTree = "<group>"; };
- 704866BA090B51310048600A /* cHistScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cHistScreen.cc; sourceTree = "<group>"; };
- 704866BB090B51310048600A /* cHistScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cHistScreen.h; sourceTree = "<group>"; };
- 704866BC090B51310048600A /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
- 704866BD090B51310048600A /* cMapScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cMapScreen.cc; sourceTree = "<group>"; };
- 704866BE090B51310048600A /* cMapScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cMapScreen.h; sourceTree = "<group>"; };
- 704866BF090B51310048600A /* cMenuWindow.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cMenuWindow.cc; sourceTree = "<group>"; };
- 704866C0090B51310048600A /* cMenuWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cMenuWindow.h; sourceTree = "<group>"; };
- 704866C1090B51310048600A /* cOptionsScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cOptionsScreen.cc; sourceTree = "<group>"; };
- 704866C2090B51310048600A /* cOptionsScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cOptionsScreen.h; sourceTree = "<group>"; };
- 704866C3090B51310048600A /* cScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cScreen.cc; sourceTree = "<group>"; };
- 704866C4090B51310048600A /* cScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cScreen.h; sourceTree = "<group>"; };
- 704866C5090B51310048600A /* cStatsScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cStatsScreen.cc; sourceTree = "<group>"; };
- 704866C6090B51310048600A /* cStatsScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cStatsScreen.h; sourceTree = "<group>"; };
- 704866C7090B51310048600A /* cSymbolUtil.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cSymbolUtil.cc; sourceTree = "<group>"; };
- 704866C8090B51310048600A /* cSymbolUtil.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cSymbolUtil.h; sourceTree = "<group>"; };
- 704866C9090B51310048600A /* cTextWindow.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cTextWindow.cc; sourceTree = "<group>"; };
- 704866CA090B51310048600A /* cTextWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cTextWindow.h; sourceTree = "<group>"; };
- 704866CB090B51310048600A /* cView.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cView.cc; sourceTree = "<group>"; };
- 704866CC090B51310048600A /* cView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cView.h; sourceTree = "<group>"; };
- 704866CD090B51310048600A /* cViewInfo.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cViewInfo.cc; sourceTree = "<group>"; };
- 704866CE090B51310048600A /* cViewInfo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cViewInfo.h; sourceTree = "<group>"; };
- 704866CF090B51310048600A /* cZoomScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cZoomScreen.cc; sourceTree = "<group>"; };
- 704866D0090B51310048600A /* cZoomScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cZoomScreen.h; sourceTree = "<group>"; };
- 704866D1090B51310048600A /* key_chart */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = key_chart; sourceTree = "<group>"; };
- 704866D2090B51310048600A /* viewer.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = viewer.cc; sourceTree = "<group>"; };
705332480929764A006BD186 /* cSpecies.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cSpecies.cc; sourceTree = "<group>"; };
705332490929764A006BD186 /* cSpecies.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cSpecies.h; sourceTree = "<group>"; };
7053324A0929764A006BD186 /* cSpeciesQueue.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cSpeciesQueue.cc; sourceTree = "<group>"; };
@@ -432,8 +559,6 @@
706D330E0854A7B900D7DC8F /* organism.smt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = organism.smt; sourceTree = "<group>"; };
706D33270854A90D00D7DC8F /* inst_set.smt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = inst_set.smt; sourceTree = "<group>"; };
707A687408E3750300576968 /* cHardwareTracer_SMT.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cHardwareTracer_SMT.h; sourceTree = "<group>"; };
- 709D4B81095A2EFA00EC9358 /* cTextViewerDriver.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cTextViewerDriver.cc; sourceTree = "<group>"; };
- 709D4B82095A2EFA00EC9358 /* cTextViewerDriver.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cTextViewerDriver.h; sourceTree = "<group>"; };
70B0864808F4972600FC65FE /* cLandscape.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cLandscape.h; sourceTree = "<group>"; };
70B0864B08F4972600FC65FE /* cLocalMutations.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cLocalMutations.h; sourceTree = "<group>"; };
70B0864C08F4972600FC65FE /* cMutation.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cMutation.h; sourceTree = "<group>"; };
@@ -643,6 +768,47 @@
70CA6EF208DB7F9E00068AC2 /* cInstruction.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cInstruction.h; sourceTree = "<group>"; };
70CA6EF308DB7F9E00068AC2 /* cInstSet.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cInstSet.h; sourceTree = "<group>"; };
70CA6EF408DB7F9E00068AC2 /* cInstUtil.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cInstUtil.h; sourceTree = "<group>"; };
+ 70DCAC57097AF730002F8733 /* main.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = main.cc; sourceTree = "<group>"; };
+ 70DCAC59097AF730002F8733 /* cBarScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cBarScreen.cc; sourceTree = "<group>"; };
+ 70DCAC5A097AF730002F8733 /* cBarScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cBarScreen.h; sourceTree = "<group>"; };
+ 70DCAC5B097AF730002F8733 /* cBaseTextWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cBaseTextWindow.h; sourceTree = "<group>"; };
+ 70DCAC5C097AF730002F8733 /* cEnvironmentScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cEnvironmentScreen.cc; sourceTree = "<group>"; };
+ 70DCAC5D097AF730002F8733 /* cEnvironmentScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cEnvironmentScreen.h; sourceTree = "<group>"; };
+ 70DCAC5E097AF730002F8733 /* cHistScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cHistScreen.cc; sourceTree = "<group>"; };
+ 70DCAC5F097AF730002F8733 /* cHistScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cHistScreen.h; sourceTree = "<group>"; };
+ 70DCAC60097AF730002F8733 /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
+ 70DCAC61097AF730002F8733 /* cMapScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cMapScreen.cc; sourceTree = "<group>"; };
+ 70DCAC62097AF730002F8733 /* cMapScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cMapScreen.h; sourceTree = "<group>"; };
+ 70DCAC63097AF730002F8733 /* cMenuWindow.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cMenuWindow.cc; sourceTree = "<group>"; };
+ 70DCAC64097AF730002F8733 /* cMenuWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cMenuWindow.h; sourceTree = "<group>"; };
+ 70DCAC65097AF730002F8733 /* cOptionsScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cOptionsScreen.cc; sourceTree = "<group>"; };
+ 70DCAC66097AF730002F8733 /* cOptionsScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cOptionsScreen.h; sourceTree = "<group>"; };
+ 70DCAC67097AF730002F8733 /* cScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cScreen.cc; sourceTree = "<group>"; };
+ 70DCAC68097AF730002F8733 /* cScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cScreen.h; sourceTree = "<group>"; };
+ 70DCAC69097AF730002F8733 /* cStatsScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cStatsScreen.cc; sourceTree = "<group>"; };
+ 70DCAC6A097AF730002F8733 /* cStatsScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cStatsScreen.h; sourceTree = "<group>"; };
+ 70DCAC6B097AF730002F8733 /* cSymbolUtil.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cSymbolUtil.cc; sourceTree = "<group>"; };
+ 70DCAC6C097AF730002F8733 /* cSymbolUtil.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cSymbolUtil.h; sourceTree = "<group>"; };
+ 70DCAC6D097AF730002F8733 /* cTextViewerDriver.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cTextViewerDriver.cc; sourceTree = "<group>"; };
+ 70DCAC6E097AF730002F8733 /* cTextViewerDriver.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cTextViewerDriver.h; sourceTree = "<group>"; };
+ 70DCAC6F097AF730002F8733 /* cTextWindow.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cTextWindow.cc; sourceTree = "<group>"; };
+ 70DCAC70097AF730002F8733 /* cTextWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cTextWindow.h; sourceTree = "<group>"; };
+ 70DCAC71097AF730002F8733 /* cView.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cView.cc; sourceTree = "<group>"; };
+ 70DCAC72097AF730002F8733 /* cView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cView.h; sourceTree = "<group>"; };
+ 70DCAC73097AF730002F8733 /* cViewInfo.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cViewInfo.cc; sourceTree = "<group>"; };
+ 70DCAC74097AF730002F8733 /* cViewInfo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cViewInfo.h; sourceTree = "<group>"; };
+ 70DCAC75097AF730002F8733 /* cZoomScreen.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cZoomScreen.cc; sourceTree = "<group>"; };
+ 70DCAC76097AF730002F8733 /* cZoomScreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cZoomScreen.h; sourceTree = "<group>"; };
+ 70DCAC77097AF730002F8733 /* key_chart */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = key_chart; sourceTree = "<group>"; };
+ 70DCAC78097AF730002F8733 /* viewer.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = viewer.cc; sourceTree = "<group>"; };
+ 70DCAC9B097AF7C0002F8733 /* primitive.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = primitive.cc; sourceTree = "<group>"; };
+ 70DCAD1C097AF7CC002F8733 /* primitive */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = primitive; sourceTree = BUILT_PRODUCTS_DIR; };
+ 70DCAD1F097AF81A002F8733 /* AvidaScript.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AvidaScript.h; sourceTree = "<group>"; };
+ 70DCAD20097AF81A002F8733 /* cLexer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = cLexer.h; sourceTree = "<group>"; };
+ 70DCAD21097AF81A002F8733 /* cLexer.l */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.lex; path = cLexer.l; sourceTree = "<group>"; };
+ 70DCAD22097AF81A002F8733 /* FlexLexer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FlexLexer.h; sourceTree = "<group>"; };
+ 70DCAD37097AF972002F8733 /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
+ 70DCAD39097AF985002F8733 /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
70F7DAEF09290468009E311D /* cClassificationManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cClassificationManager.h; sourceTree = "<group>"; };
70F7DAF009290468009E311D /* cClassificationManager.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cClassificationManager.cc; sourceTree = "<group>"; };
70F7DC9E09293E6F009E311D /* cGenotype.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = cGenotype.cc; sourceTree = "<group>"; };
@@ -662,7 +828,6 @@
DCC30FEB0762539D008F7A48 /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
DCC3109C0762539E008F7A48 /* avida.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = avida.cc; sourceTree = "<group>"; };
DCC310A90762539E008F7A48 /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
- DCC311090762539E008F7A48 /* primitive.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = primitive.cc; sourceTree = "<group>"; };
DCC3114B0762539E008F7A48 /* analyze.cfg */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = analyze.cfg; sourceTree = "<group>"; };
DCC3114C0762539E008F7A48 /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = "<group>"; };
DCC311680762539E008F7A48 /* environment.2paths */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = environment.2paths; sourceTree = "<group>"; };
@@ -769,6 +934,13 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
+ 70DCAD07097AF7CC002F8733 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
DCC3164B07626CF3008F7A48 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -818,45 +990,84 @@
path = analyze;
sourceTree = "<group>";
};
- 704866B2090B51310048600A /* viewer */ = {
+ 70DCAC54097AF730002F8733 /* targets */ = {
isa = PBXGroup;
children = (
- 709D4B81095A2EFA00EC9358 /* cTextViewerDriver.cc */,
- 709D4B82095A2EFA00EC9358 /* cTextViewerDriver.h */,
- 704866B5090B51310048600A /* cBarScreen.cc */,
- 704866B6090B51310048600A /* cBarScreen.h */,
- 704866B7090B51310048600A /* cBaseTextWindow.h */,
- 704866B8090B51310048600A /* cEnvironmentScreen.cc */,
- 704866B9090B51310048600A /* cEnvironmentScreen.h */,
- 704866BA090B51310048600A /* cHistScreen.cc */,
- 704866BB090B51310048600A /* cHistScreen.h */,
- 704866BC090B51310048600A /* CMakeLists.txt */,
- 704866BD090B51310048600A /* cMapScreen.cc */,
- 704866BE090B51310048600A /* cMapScreen.h */,
- 704866BF090B51310048600A /* cMenuWindow.cc */,
- 704866C0090B51310048600A /* cMenuWindow.h */,
- 704866C1090B51310048600A /* cOptionsScreen.cc */,
- 704866C2090B51310048600A /* cOptionsScreen.h */,
- 704866C3090B51310048600A /* cScreen.cc */,
- 704866C4090B51310048600A /* cScreen.h */,
- 704866C5090B51310048600A /* cStatsScreen.cc */,
- 704866C6090B51310048600A /* cStatsScreen.h */,
- 704866C7090B51310048600A /* cSymbolUtil.cc */,
- 704866C8090B51310048600A /* cSymbolUtil.h */,
- 704866C9090B51310048600A /* cTextWindow.cc */,
- 704866CA090B51310048600A /* cTextWindow.h */,
- 704866CB090B51310048600A /* cView.cc */,
- 704866CC090B51310048600A /* cView.h */,
- 704866CD090B51310048600A /* cViewInfo.cc */,
- 704866CE090B51310048600A /* cViewInfo.h */,
- 704866CF090B51310048600A /* cZoomScreen.cc */,
- 704866D0090B51310048600A /* cZoomScreen.h */,
- 704866D1090B51310048600A /* key_chart */,
- 704866D2090B51310048600A /* viewer.cc */,
+ 70DCAC55097AF730002F8733 /* avida */,
+ 70DCAC56097AF730002F8733 /* avida-s */,
+ 70DCAC58097AF730002F8733 /* avida-viewer */,
+ 70DCAD37097AF972002F8733 /* CMakeLists.txt */,
);
- path = viewer;
+ path = targets;
sourceTree = "<group>";
};
+ 70DCAC55097AF730002F8733 /* avida */ = {
+ isa = PBXGroup;
+ children = (
+ 70DCAC9B097AF7C0002F8733 /* primitive.cc */,
+ 70DCAD39097AF985002F8733 /* CMakeLists.txt */,
+ );
+ path = avida;
+ sourceTree = "<group>";
+ };
+ 70DCAC56097AF730002F8733 /* avida-s */ = {
+ isa = PBXGroup;
+ children = (
+ 70DCAC57097AF730002F8733 /* main.cc */,
+ );
+ path = "avida-s";
+ sourceTree = "<group>";
+ };
+ 70DCAC58097AF730002F8733 /* avida-viewer */ = {
+ isa = PBXGroup;
+ children = (
+ 70DCAC59097AF730002F8733 /* cBarScreen.cc */,
+ 70DCAC5A097AF730002F8733 /* cBarScreen.h */,
+ 70DCAC5B097AF730002F8733 /* cBaseTextWindow.h */,
+ 70DCAC5C097AF730002F8733 /* cEnvironmentScreen.cc */,
+ 70DCAC5D097AF730002F8733 /* cEnvironmentScreen.h */,
+ 70DCAC5E097AF730002F8733 /* cHistScreen.cc */,
+ 70DCAC5F097AF730002F8733 /* cHistScreen.h */,
+ 70DCAC60097AF730002F8733 /* CMakeLists.txt */,
+ 70DCAC61097AF730002F8733 /* cMapScreen.cc */,
+ 70DCAC62097AF730002F8733 /* cMapScreen.h */,
+ 70DCAC63097AF730002F8733 /* cMenuWindow.cc */,
+ 70DCAC64097AF730002F8733 /* cMenuWindow.h */,
+ 70DCAC65097AF730002F8733 /* cOptionsScreen.cc */,
+ 70DCAC66097AF730002F8733 /* cOptionsScreen.h */,
+ 70DCAC67097AF730002F8733 /* cScreen.cc */,
+ 70DCAC68097AF730002F8733 /* cScreen.h */,
+ 70DCAC69097AF730002F8733 /* cStatsScreen.cc */,
+ 70DCAC6A097AF730002F8733 /* cStatsScreen.h */,
+ 70DCAC6B097AF730002F8733 /* cSymbolUtil.cc */,
+ 70DCAC6C097AF730002F8733 /* cSymbolUtil.h */,
+ 70DCAC6D097AF730002F8733 /* cTextViewerDriver.cc */,
+ 70DCAC6E097AF730002F8733 /* cTextViewerDriver.h */,
+ 70DCAC6F097AF730002F8733 /* cTextWindow.cc */,
+ 70DCAC70097AF730002F8733 /* cTextWindow.h */,
+ 70DCAC71097AF730002F8733 /* cView.cc */,
+ 70DCAC72097AF730002F8733 /* cView.h */,
+ 70DCAC73097AF730002F8733 /* cViewInfo.cc */,
+ 70DCAC74097AF730002F8733 /* cViewInfo.h */,
+ 70DCAC75097AF730002F8733 /* cZoomScreen.cc */,
+ 70DCAC76097AF730002F8733 /* cZoomScreen.h */,
+ 70DCAC77097AF730002F8733 /* key_chart */,
+ 70DCAC78097AF730002F8733 /* viewer.cc */,
+ );
+ path = "avida-viewer";
+ sourceTree = "<group>";
+ };
+ 70DCAD1E097AF81A002F8733 /* script */ = {
+ isa = PBXGroup;
+ children = (
+ 70DCAD1F097AF81A002F8733 /* AvidaScript.h */,
+ 70DCAD20097AF81A002F8733 /* cLexer.h */,
+ 70DCAD21097AF81A002F8733 /* cLexer.l */,
+ 70DCAD22097AF81A002F8733 /* FlexLexer.h */,
+ );
+ path = script;
+ sourceTree = "<group>";
+ };
70F7D8C8092546DC009E311D /* classification */ = {
isa = PBXGroup;
children = (
@@ -915,9 +1126,10 @@
701D9115094B770B008B845F /* drivers */,
DCC30FD00762539D008F7A48 /* event */,
DCC310040762539D008F7A48 /* main */,
+ 70DCAD1E097AF81A002F8733 /* script */,
+ 70DCAC54097AF730002F8733 /* targets */,
DCC31340076253A0008F7A48 /* third-party */,
DCC314D8076253A2008F7A48 /* tools */,
- 704866B2090B51310048600A /* viewer */,
DCC30F7B0762539D008F7A48 /* CMakeLists.txt */,
701384A10902A16F0087ED2E /* defs.h */,
DCC30FCF0762539D008F7A48 /* Doxyfile */,
@@ -1074,7 +1286,6 @@
70B0875A08F5EC8900FC65FE /* nGeometry.h */,
70B0867208F499C100FC65FE /* nMutation.h */,
70B0875C08F5ECBC00FC65FE /* nReaction.h */,
- DCC311090762539E008F7A48 /* primitive.cc */,
DCC310A90762539E008F7A48 /* CMakeLists.txt */,
);
path = main;
@@ -1372,6 +1583,7 @@
children = (
DCC3164D07626CF3008F7A48 /* primitive */,
700E2B83085DE50C00CF158A /* viewer */,
+ 70DCAD1C097AF7CC002F8733 /* primitive */,
);
name = Products;
sourceTree = "<group>";
@@ -1379,9 +1591,9 @@
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
- 700E2AF3085DE50C00CF158A /* viewer */ = {
+ 700E2AF3085DE50C00CF158A /* avida-viewer */ = {
isa = PBXNativeTarget;
- buildConfigurationList = 700E2B7E085DE50C00CF158A /* Build configuration list for PBXNativeTarget "viewer" */;
+ buildConfigurationList = 700E2B7E085DE50C00CF158A /* Build configuration list for PBXNativeTarget "avida-viewer" */;
buildPhases = (
704EAD9808FF3C1F005D5C24 /* ShellScript */,
700E2AF4085DE50C00CF158A /* Sources */,
@@ -1413,15 +1625,55 @@
};
dependencies = (
);
- name = viewer;
+ name = "avida-viewer";
productName = primitive;
productReference = 700E2B83085DE50C00CF158A /* viewer */;
productType = "com.apple.product-type.tool";
};
- DCC3164C07626CF3008F7A48 /* primitive */ = {
+ 70DCAC9D097AF7CC002F8733 /* avida-s */ = {
isa = PBXNativeTarget;
- buildConfigurationList = 702442D20859E0B00059BD9B /* Build configuration list for PBXNativeTarget "primitive" */;
+ buildConfigurationList = 70DCAD17097AF7CC002F8733 /* Build configuration list for PBXNativeTarget "avida-s" */;
buildPhases = (
+ 70DCAC9E097AF7CC002F8733 /* ShellScript */,
+ 70DCAC9F097AF7CC002F8733 /* Sources */,
+ 70DCAD07097AF7CC002F8733 /* Frameworks */,
+ 70DCAD08097AF7CC002F8733 /* CopyFiles */,
+ );
+ buildRules = (
+ 70DCAD2A097AF865002F8733 /* PBXBuildRule */,
+ );
+ buildSettings = {
+ GCC_ALTIVEC_EXTENSIONS = YES;
+ GCC_AUTO_VECTORIZATION = YES;
+ GCC_DEBUGGING_SYMBOLS = full;
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ GCC_FAST_MATH = YES;
+ GCC_MODEL_CPU = G4;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = "";
+ GCC_UNROLL_LOOPS = YES;
+ HEADER_SEARCH_PATHS = source/event/;
+ INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)/work";
+ PRODUCT_NAME = primitive;
+ SKIP_INSTALL = YES;
+ WARNING_CFLAGS = (
+ "-Wmost",
+ "-Wno-four-char-constants",
+ "-Wno-unknown-pragmas",
+ );
+ ZERO_LINK = YES;
+ };
+ dependencies = (
+ );
+ name = "avida-s";
+ productName = primitive;
+ productReference = 70DCAD1C097AF7CC002F8733 /* primitive */;
+ productType = "com.apple.product-type.tool";
+ };
+ DCC3164C07626CF3008F7A48 /* avida */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 702442D20859E0B00059BD9B /* Build configuration list for PBXNativeTarget "avida" */;
+ buildPhases = (
704EAD8208FF2C0B005D5C24 /* ShellScript */,
DCC3164A07626CF3008F7A48 /* Sources */,
DCC3164B07626CF3008F7A48 /* Frameworks */,
@@ -1452,7 +1704,7 @@
};
dependencies = (
);
- name = primitive;
+ name = avida;
productName = primitive;
productReference = DCC3164D07626CF3008F7A48 /* primitive */;
productType = "com.apple.product-type.tool";
@@ -1475,8 +1727,9 @@
productRefGroup = DCC3164E07626CF3008F7A48 /* Products */;
projectDirPath = "";
targets = (
- DCC3164C07626CF3008F7A48 /* primitive */,
- 700E2AF3085DE50C00CF158A /* viewer */,
+ DCC3164C07626CF3008F7A48 /* avida */,
+ 70DCAC9D097AF7CC002F8733 /* avida-s */,
+ 700E2AF3085DE50C00CF158A /* avida-viewer */,
);
};
/* End PBXProject section */
@@ -1508,6 +1761,19 @@
shellPath = /bin/bash;
shellScript = "mkdir -p $DERIVED_FILE_DIR\nif (test -x /usr/bin/svn)\nthen svncmd=/usr/bin/svn\nelif (test -x /usr/local/bin/svn)\nthen svncmd=/usr/local/bin/svn\nelif (test -x /usr/local/svn/bin/svn)\nthen svncmd=/usr/local/svn/bin/svn\nelse\n echo \"Warning: 'svn' not found, please install subversion\"\n if [[ ! -f $DERIVED_FILE_DIR/revision.h ]]\n then\n echo \"#ifndef revision_h\" > $DERIVED_FILE_DIR/revision.h\n echo \"#define revision_h\" >> $DERIVED_FILE_DIR/revision.h\n echo \"#define REVISION \\\"???\\\"\" >> $DERIVED_FILE_DIR/revision.h\n echo \"#endif\" >> $DERIVED_FILE_DIR/revision.h\n fi\nfi\n\necho \"#ifndef revision_h\" > /tmp/newrev.tmp\necho \"#define revision_h\" >> /tmp/newrev.tmp\n$svncmd status -v Avida.xcodeproj/project.pbxproj | sed '1!d' | sed 's/[^ ]* *\\([0-9]*\\).*/#define REVISION \"\\1\"/' >> /tmp/newrev.tmp\necho \"#endif\" >> /tmp/newrev.tmp\n\nif [[ -f $DERIVED_FILE_DIR/revision.h ]]\nthen\n revdiff=`diff $DERIVED_FILE_DIR!
/revision.h /tmp/newrev.tmp`\nelse\n revdiff=\"yes\"\nfi\n\nif [[ -n \"$revdiff\" ]]\nthen\n echo \"New revision.h Generated\"\n cp /tmp/newrev.tmp $DERIVED_FILE_DIR/revision.h\n touch $SRCROOT/source/main/avida.cc\nfi\n\nrm /tmp/newrev.tmp\n";
};
+ 70DCAC9E097AF7CC002F8733 /* ShellScript */ = {
+ isa = PBXShellScriptBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputPaths = (
+ );
+ outputPaths = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/bash;
+ shellScript = "mkdir -p $DERIVED_FILE_DIR\nif (test -x /usr/bin/svn)\nthen svncmd=/usr/bin/svn\nelif (test -x /usr/local/bin/svn)\nthen svncmd=/usr/local/bin/svn\nelif (test -x /usr/local/svn/bin/svn)\nthen svncmd=/usr/local/svn/bin/svn\nelse\n echo \"Warning: 'svn' not found, please install subversion\"\n if [[ ! -f $DERIVED_FILE_DIR/revision.h ]]\n then\n echo \"#ifndef revision_h\" > $DERIVED_FILE_DIR/revision.h\n echo \"#define revision_h\" >> $DERIVED_FILE_DIR/revision.h\n echo \"#define REVISION \\\"???\\\"\" >> $DERIVED_FILE_DIR/revision.h\n echo \"#endif\" >> $DERIVED_FILE_DIR/revision.h\n fi\nfi\n\necho \"#ifndef revision_h\" > /tmp/newrev.tmp\necho \"#define revision_h\" >> /tmp/newrev.tmp\n$svncmd status -v Avida.xcodeproj/project.pbxproj | sed '1!d' | sed 's/[^ ]* *\\([0-9]*\\).*/#define REVISION \"\\1\"/' >> /tmp/newrev.tmp\necho \"#endif\" >> /tmp/newrev.tmp\n\nif [[ -f $DERIVED_FILE_DIR/revision.h ]]\nthen\n revdiff=`diff $DERIVED_FILE_DIR!
/revision.h /tmp/newrev.tmp`\nelse\n revdiff=\"yes\"\nfi\n\nif [[ -n \"$revdiff\" ]]\nthen\n echo \"New revision.h Generated\"\n cp /tmp/newrev.tmp $DERIVED_FILE_DIR/revision.h\n touch $SRCROOT/source/main/avida.cc\nfi\n\nrm /tmp/newrev.tmp\n";
+ };
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
@@ -1596,20 +1862,6 @@
70C5BC6709059A970028A785 /* cWorld.cc in Sources */,
70C5BD6D0905CE5F0028A785 /* cHardwareManager.cc in Sources */,
7040CF1E0906A52E00AA820F /* cEventManager.cc in Sources */,
- 704866D5090B51310048600A /* cBarScreen.cc in Sources */,
- 704866D8090B51310048600A /* cEnvironmentScreen.cc in Sources */,
- 704866DA090B51310048600A /* cHistScreen.cc in Sources */,
- 704866DD090B51310048600A /* cMapScreen.cc in Sources */,
- 704866DF090B51310048600A /* cMenuWindow.cc in Sources */,
- 704866E1090B51310048600A /* cOptionsScreen.cc in Sources */,
- 704866E3090B51310048600A /* cScreen.cc in Sources */,
- 704866E5090B51310048600A /* cStatsScreen.cc in Sources */,
- 704866E7090B51310048600A /* cSymbolUtil.cc in Sources */,
- 704866E9090B51310048600A /* cTextWindow.cc in Sources */,
- 704866EB090B51310048600A /* cView.cc in Sources */,
- 704866ED090B51310048600A /* cViewInfo.cc in Sources */,
- 704866EF090B51310048600A /* cZoomScreen.cc in Sources */,
- 704866F2090B51310048600A /* viewer.cc in Sources */,
70422A28091B141000A5E67F /* cAnalyze.cc in Sources */,
70422A30091B141000A5E67F /* cAnalyzeGenotype.cc in Sources */,
70422A32091B141000A5E67F /* cAnalyzeUtil.cc in Sources */,
@@ -1628,16 +1880,141 @@
701D9310094CAD6B008B845F /* cDefaultRunDriver.cc in Sources */,
701D9384094CBA69008B845F /* cDriverManager.cc in Sources */,
701D93EB094CBF71008B845F /* cDefaultAnalyzeDriver.cc in Sources */,
- 709D4B83095A2EFA00EC9358 /* cTextViewerDriver.cc in Sources */,
+ 70DCAC7A097AF731002F8733 /* cBarScreen.cc in Sources */,
+ 70DCAC7D097AF731002F8733 /* cEnvironmentScreen.cc in Sources */,
+ 70DCAC7F097AF731002F8733 /* cHistScreen.cc in Sources */,
+ 70DCAC82097AF731002F8733 /* cMapScreen.cc in Sources */,
+ 70DCAC84097AF731002F8733 /* cMenuWindow.cc in Sources */,
+ 70DCAC86097AF731002F8733 /* cOptionsScreen.cc in Sources */,
+ 70DCAC88097AF731002F8733 /* cScreen.cc in Sources */,
+ 70DCAC8A097AF731002F8733 /* cStatsScreen.cc in Sources */,
+ 70DCAC8C097AF731002F8733 /* cSymbolUtil.cc in Sources */,
+ 70DCAC90097AF731002F8733 /* cTextWindow.cc in Sources */,
+ 70DCAC92097AF731002F8733 /* cView.cc in Sources */,
+ 70DCAC94097AF731002F8733 /* cViewInfo.cc in Sources */,
+ 70DCAC96097AF731002F8733 /* cZoomScreen.cc in Sources */,
+ 70DCAC99097AF731002F8733 /* viewer.cc in Sources */,
+ 70DCAC9A097AF754002F8733 /* cTextViewerDriver.cc in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
+ 70DCAC9F097AF7CC002F8733 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 70DCACA0097AF7CC002F8733 /* avida.cc in Sources */,
+ 70DCACA1097AF7CC002F8733 /* trio.c in Sources */,
+ 70DCACA2097AF7CC002F8733 /* trionan.c in Sources */,
+ 70DCACA3097AF7CC002F8733 /* triostr.c in Sources */,
+ 70DCACA4097AF7CC002F8733 /* cCodeLabel.cc in Sources */,
+ 70DCACA5097AF7CC002F8733 /* cCPUMemory.cc in Sources */,
+ 70DCACA6097AF7CC002F8733 /* cCPUStack.cc in Sources */,
+ 70DCACA7097AF7CC002F8733 /* cCPUTestInfo.cc in Sources */,
+ 70DCACA8097AF7CC002F8733 /* cHardware4Stack.cc in Sources */,
+ 70DCACA9097AF7CC002F8733 /* cHardware4Stack_Thread.cc in Sources */,
+ 70DCACAA097AF7CC002F8733 /* cHardwareBase.cc in Sources */,
+ 70DCACAB097AF7CC002F8733 /* cHardwareCPU_Thread.cc in Sources */,
+ 70DCACAC097AF7CC002F8733 /* cHardwareCPU.cc in Sources */,
+ 70DCACAD097AF7CC002F8733 /* cHardwareSMT_Thread.cc in Sources */,
+ 70DCACAE097AF7CC002F8733 /* cHardwareSMT.cc in Sources */,
+ 70DCACAF097AF7CC002F8733 /* cHardwareStatusPrinter.cc in Sources */,
+ 70DCACB0097AF7CC002F8733 /* cHeadCPU.cc in Sources */,
+ 70DCACB1097AF7CC002F8733 /* cHeadMultiMem.cc in Sources */,
+ 70DCACB2097AF7CC002F8733 /* cTestCPU.cc in Sources */,
+ 70DCACB3097AF7CC002F8733 /* cTestUtil.cc in Sources */,
+ 70DCACB4097AF7CC002F8733 /* cEventList.cc in Sources */,
+ 70DCACB5097AF7CC002F8733 /* cEventTriggers.cc in Sources */,
+ 70DCACB6097AF7CC002F8733 /* cEnvironment.cc in Sources */,
+ 70DCACB7097AF7CC002F8733 /* cPopulationInterface.cc in Sources */,
+ 70DCACB8097AF7CC002F8733 /* cBirthChamber.cc in Sources */,
+ 70DCACB9097AF7CC002F8733 /* cGenome.cc in Sources */,
+ 70DCACBA097AF7CC002F8733 /* cGenomeUtil.cc in Sources */,
+ 70DCACBB097AF7CC002F8733 /* cInstruction.cc in Sources */,
+ 70DCACBC097AF7CC002F8733 /* cInstSet.cc in Sources */,
+ 70DCACBD097AF7CC002F8733 /* cInstUtil.cc in Sources */,
+ 70DCACBE097AF7CC002F8733 /* cLandscape.cc in Sources */,
+ 70DCACBF097AF7CC002F8733 /* cLocalMutations.cc in Sources */,
+ 70DCACC0097AF7CC002F8733 /* cMutationLib.cc in Sources */,
+ 70DCACC1097AF7CC002F8733 /* cMutationRates.cc in Sources */,
+ 70DCACC2097AF7CC002F8733 /* cOrganism.cc in Sources */,
+ 70DCACC3097AF7CC002F8733 /* cOrgMessage.cc in Sources */,
+ 70DCACC4097AF7CC002F8733 /* cPopulation.cc in Sources */,
+ 70DCACC5097AF7CC002F8733 /* cPopulationCell.cc in Sources */,
+ 70DCACC6097AF7CC002F8733 /* cPhenotype.cc in Sources */,
+ 70DCACC7097AF7CC002F8733 /* cReaction.cc in Sources */,
+ 70DCACC8097AF7CC002F8733 /* cReactionLib.cc in Sources */,
+ 70DCACC9097AF7CC002F8733 /* cReactionResult.cc in Sources */,
+ 70DCACCA097AF7CC002F8733 /* cResource.cc in Sources */,
+ 70DCACCB097AF7CC002F8733 /* cResourceCount.cc in Sources */,
+ 70DCACCC097AF7CC002F8733 /* cResourceLib.cc in Sources */,
+ 70DCACCD097AF7CC002F8733 /* cSpatialCountElem.cc in Sources */,
+ 70DCACCE097AF7CC002F8733 /* cSpatialResCount.cc in Sources */,
+ 70DCACCF097AF7CC002F8733 /* cStats.cc in Sources */,
+ 70DCACD0097AF7CC002F8733 /* cTaskLib.cc in Sources */,
+ 70DCACD1097AF7CC002F8733 /* cChangeList.cc in Sources */,
+ 70DCACD2097AF7CC002F8733 /* cConstSchedule.cc in Sources */,
+ 70DCACD3097AF7CC002F8733 /* cCountTracker.cc in Sources */,
+ 70DCACD4097AF7CC002F8733 /* cDataFile.cc in Sources */,
+ 70DCACD5097AF7CC002F8733 /* cDataFileManager.cc in Sources */,
+ 70DCACD6097AF7CC002F8733 /* cDataManager_Base.cc in Sources */,
+ 70DCACD7097AF7CC002F8733 /* cDefaultMessageDisplay.cc in Sources */,
+ 70DCACD8097AF7CC002F8733 /* cDoubleSum.cc in Sources */,
+ 70DCACD9097AF7CC002F8733 /* cFile.cc in Sources */,
+ 70DCACDA097AF7CC002F8733 /* cGenesis.cc in Sources */,
+ 70DCACDB097AF7CC002F8733 /* cHelpAlias.cc in Sources */,
+ 70DCACDC097AF7CC002F8733 /* cHelpManager.cc in Sources */,
+ 70DCACDD097AF7CC002F8733 /* cHelpType.cc in Sources */,
+ 70DCACDE097AF7CC002F8733 /* cHistogram.cc in Sources */,
+ 70DCACDF097AF7CC002F8733 /* cInitFile.cc in Sources */,
+ 70DCACE0097AF7CC002F8733 /* cIntegratedSchedule.cc in Sources */,
+ 70DCACE1097AF7CC002F8733 /* cIntegratedScheduleNode.cc in Sources */,
+ 70DCACE2097AF7CC002F8733 /* cIntSum.cc in Sources */,
+ 70DCACE3097AF7CC002F8733 /* cMerit.cc in Sources */,
+ 70DCACE4097AF7CC002F8733 /* cProbSchedule.cc in Sources */,
+ 70DCACE5097AF7CC002F8733 /* cRandom.cc in Sources */,
+ 70DCACE6097AF7CC002F8733 /* cRunningAverage.cc in Sources */,
+ 70DCACE7097AF7CC002F8733 /* cSchedule.cc in Sources */,
+ 70DCACE8097AF7CC002F8733 /* cString.cc in Sources */,
+ 70DCACE9097AF7CC002F8733 /* cStringIterator.cc in Sources */,
+ 70DCACEA097AF7CC002F8733 /* cStringList.cc in Sources */,
+ 70DCACEB097AF7CC002F8733 /* cStringUtil.cc in Sources */,
+ 70DCACEC097AF7CC002F8733 /* cTools.cc in Sources */,
+ 70DCACED097AF7CC002F8733 /* cWeightedIndex.cc in Sources */,
+ 70DCACEE097AF7CC002F8733 /* cAvidaConfig.cc in Sources */,
+ 70DCACEF097AF7CC002F8733 /* cWorld.cc in Sources */,
+ 70DCACF0097AF7CC002F8733 /* cHardwareManager.cc in Sources */,
+ 70DCACF1097AF7CC002F8733 /* cEventManager.cc in Sources */,
+ 70DCACF2097AF7CC002F8733 /* cMxCodeArray.cc in Sources */,
+ 70DCACF3097AF7CC002F8733 /* cAnalyze.cc in Sources */,
+ 70DCACF4097AF7CC002F8733 /* cAnalyzeGenotype.cc in Sources */,
+ 70DCACF5097AF7CC002F8733 /* cAnalyzeUtil.cc in Sources */,
+ 70DCACF6097AF7CC002F8733 /* cFitnessMatrix.cc in Sources */,
+ 70DCACF7097AF7CC002F8733 /* cClassificationManager.cc in Sources */,
+ 70DCACF8097AF7CC002F8733 /* cGenotype.cc in Sources */,
+ 70DCACF9097AF7CC002F8733 /* cGenotypeControl.cc in Sources */,
+ 70DCACFA097AF7CC002F8733 /* cSpeciesControl.cc in Sources */,
+ 70DCACFB097AF7CC002F8733 /* cGenotype_BirthData.cc in Sources */,
+ 70DCACFC097AF7CC002F8733 /* cSpecies.cc in Sources */,
+ 70DCACFD097AF7CC002F8733 /* cSpeciesQueue.cc in Sources */,
+ 70DCACFE097AF7CC002F8733 /* cInjectGenotype.cc in Sources */,
+ 70DCACFF097AF7CC002F8733 /* cInjectGenotypeControl.cc in Sources */,
+ 70DCAD00097AF7CC002F8733 /* cInjectGenotypeQueue.cc in Sources */,
+ 70DCAD01097AF7CC002F8733 /* cLineage.cc in Sources */,
+ 70DCAD02097AF7CC002F8733 /* cFallbackWorldDriver.cc in Sources */,
+ 70DCAD03097AF7CC002F8733 /* cDefaultRunDriver.cc in Sources */,
+ 70DCAD04097AF7CC002F8733 /* cDriverManager.cc in Sources */,
+ 70DCAD05097AF7CC002F8733 /* cDefaultAnalyzeDriver.cc in Sources */,
+ 70DCAD06097AF7CC002F8733 /* primitive.cc in Sources */,
+ 70DCAD25097AF81A002F8733 /* cLexer.l in Sources */,
+ 70DCAD2F097AF8BC002F8733 /* main.cc in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
DCC3164A07626CF3008F7A48 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
DCC3166107628531008F7A48 /* avida.cc in Sources */,
- 70658C44085DE5FF00486BED /* primitive.cc in Sources */,
70D46934085F61DA004C8409 /* trio.c in Sources */,
70D46935085F61DD004C8409 /* trionan.c in Sources */,
70D46936085F61DF004C8409 /* triostr.c in Sources */,
@@ -1739,6 +2116,7 @@
701D930E094CAD6B008B845F /* cDefaultRunDriver.cc in Sources */,
701D9383094CBA69008B845F /* cDriverManager.cc in Sources */,
701D93E9094CBF71008B845F /* cDefaultAnalyzeDriver.cc in Sources */,
+ 70DCAC9C097AF7C0002F8733 /* primitive.cc in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1989,10 +2367,42 @@
};
name = Profile;
};
+ 70DCAD18097AF7CC002F8733 /* Development */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_MODEL_CPU = G4;
+ PRODUCT_NAME = primitive;
+ };
+ name = Development;
+ };
+ 70DCAD19097AF7CC002F8733 /* Deployment-G4 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_MODEL_CPU = G4;
+ PRODUCT_NAME = primitive;
+ };
+ name = "Deployment-G4";
+ };
+ 70DCAD1A097AF7CC002F8733 /* Deployment-G5 */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_MODEL_CPU = G4;
+ PRODUCT_NAME = primitive;
+ };
+ name = "Deployment-G5";
+ };
+ 70DCAD1B097AF7CC002F8733 /* Profile */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ GCC_MODEL_CPU = G4;
+ PRODUCT_NAME = primitive;
+ };
+ name = Profile;
+ };
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
- 700E2B7E085DE50C00CF158A /* Build configuration list for PBXNativeTarget "viewer" */ = {
+ 700E2B7E085DE50C00CF158A /* Build configuration list for PBXNativeTarget "avida-viewer" */ = {
isa = XCConfigurationList;
buildConfigurations = (
700E2B7F085DE50C00CF158A /* Development */,
@@ -2003,7 +2413,7 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Deployment-G4";
};
- 702442D20859E0B00059BD9B /* Build configuration list for PBXNativeTarget "primitive" */ = {
+ 702442D20859E0B00059BD9B /* Build configuration list for PBXNativeTarget "avida" */ = {
isa = XCConfigurationList;
buildConfigurations = (
702442D30859E0B00059BD9B /* Development */,
@@ -2025,6 +2435,17 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Deployment-G4";
};
+ 70DCAD17097AF7CC002F8733 /* Build configuration list for PBXNativeTarget "avida-s" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 70DCAD18097AF7CC002F8733 /* Development */,
+ 70DCAD19097AF7CC002F8733 /* Deployment-G4 */,
+ 70DCAD1A097AF7CC002F8733 /* Deployment-G5 */,
+ 70DCAD1B097AF7CC002F8733 /* Profile */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = "Deployment-G4";
+ };
/* End XCConfigurationList section */
};
rootObject = DCC30C4D0762532C008F7A48 /* Project object */;
Modified: development/source/CMakeLists.txt
===================================================================
--- development/source/CMakeLists.txt 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/CMakeLists.txt 2006-01-15 21:54:54 UTC (rev 437)
@@ -1,8 +1,5 @@
-SUBDIRS(analyze classification cpu drivers event main third-party tools support utils/task_events)
-IF(AVD_GUI_NCURSES)
- SUBDIRS(viewer)
-ENDIF(AVD_GUI_NCURSES)
+SUBDIRS(analyze classification cpu drivers event main targets third-party tools support utils/task_events)
IF(AVD_PY_BINDINGS)
SUBDIRS(bindings python)
ENDIF(AVD_PY_BINDINGS)
Modified: development/source/main/CMakeLists.txt
===================================================================
--- development/source/main/CMakeLists.txt 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/main/CMakeLists.txt 2006-01-15 21:54:54 UTC (rev 437)
@@ -36,10 +36,3 @@
)
ADD_LIBRARY(main ${libmain_a_SOURCES})
-
-IF(AVD_PRIMITIVE)
- ADD_EXECUTABLE(primitive primitive.cc)
- TARGET_LINK_LIBRARIES(primitive main classification cpu event analyze drivers analyze cpu main tools)
- LINK_DIRECTORIES(${ALL_LIB_DIRS})
- INSTALL_TARGETS(/work primitive)
-ENDIF(AVD_PRIMITIVE)
Deleted: development/source/main/primitive.cc
===================================================================
--- development/source/main/primitive.cc 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/main/primitive.cc 2006-01-15 21:54:54 UTC (rev 437)
@@ -1,45 +0,0 @@
-/*
- * primitive.cc
- * Avida
- *
- * Copyright 2005-2006 Michigan State University. All rights reserved.
- *
- */
-
-#include <signal.h>
-
-#include "avida.h"
-#include "cAvidaConfig.h"
-#include "cDefaultAnalyzeDriver.h"
-#include "cDefaultRunDriver.h"
-#include "cDriverManager.h"
-#include "cWorld.h"
-
-using namespace std;
-
-int main(int argc, char * argv[])
-{
- // Catch Interrupt making sure to close appropriately
- signal(SIGINT, ExitAvida);
-
- printVersionBanner();
-
- cDriverManager::Initialize();
-
- // Initialize the configuration data...
- cWorld* world = new cWorld(cAvidaConfig::LoadWithCmdLineArgs(argc, argv));
- cAvidaDriver* driver = NULL;
-
- if (world->GetConfig().ANALYZE_MODE.Get() > 0) {
- driver = new cDefaultAnalyzeDriver(world, (world->GetConfig().ANALYZE_MODE.Get() == 2));
- } else {
- driver = new cDefaultRunDriver(world);
- }
-
- cout << endl;
-
- driver->Run();
-
- // Exit Nicely
- ExitAvida(0);
-}
Added: development/source/script/AvidaScript.h
===================================================================
--- development/source/script/AvidaScript.h 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/script/AvidaScript.h 2006-01-15 21:54:54 UTC (rev 437)
@@ -0,0 +1,78 @@
+/*
+ * AvidaScript.h
+ * avida_test_language
+ *
+ * Created by David on 1/14/06.
+ * Copyright 2006 Michigan State University. All rights reserved.
+ *
+ */
+
+#ifndef AvidaScript_h
+#define AvidaScript_h
+
+enum eASTokens {
+ SUPRESS = 1,
+ ENDL,
+
+ OP_BIT_NOT,
+ OP_BIT_AND,
+ OP_BIT_OR,
+
+ OP_LOGIC_NOT,
+ OP_LOGIC_AND,
+ OP_LOGIC_OR,
+
+ OP_ADD,
+ OP_SUB,
+ OP_MUL,
+ OP_DIV,
+ OP_MOD,
+
+ DOT,
+ ASSIGN,
+
+ OP_EQ,
+ OP_LE,
+ OP_GE,
+ OP_LT,
+ OP_GT,
+ OP_NEQ,
+
+ PREC_OPEN,
+ PREC_CLOSE,
+
+ IDX_OPEN,
+ IDX_CLOSE,
+
+ ARR_OPEN,
+ ARR_CLOSE,
+ ARR_RANGE,
+ ARR_EXPAN,
+
+ TYPE_BOOL,
+ TYPE_CHAR,
+ TYPE_FLOAT,
+ TYPE_INT,
+ TYPE_VOID,
+
+ CMD_IF,
+ CMD_ELSE,
+ CMD_ENDIF,
+
+ CMD_WHILE,
+ CMD_ENDWHILE,
+
+ CMD_FOREACH,
+ CMD_ENDFOREACH,
+
+ ID,
+
+ FLOAT,
+ INT,
+ STRING,
+ CHAR,
+
+ ERR
+};
+
+#endif
Property changes on: development/source/script/AvidaScript.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: development/source/script/FlexLexer.h
===================================================================
--- development/source/script/FlexLexer.h 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/script/FlexLexer.h 2006-01-15 21:54:54 UTC (rev 437)
@@ -0,0 +1,189 @@
+// $Header: /cvs/root/flex/flex/FlexLexer.h,v 1.2 2003/07/29 23:09:28 landonf Exp $
+
+// FlexLexer.h -- define interfaces for lexical analyzer classes generated
+// by flex
+
+// Copyright (c) 1993 The Regents of the University of California.
+// All rights reserved.
+//
+// This code is derived from software contributed to Berkeley by
+// Kent Williams and Tom Epperly.
+//
+// Redistribution and use in source and binary forms with or without
+// modification are permitted provided that: (1) source distributions retain
+// this entire copyright notice and comment, and (2) distributions including
+// binaries display the following acknowledgement: ``This product includes
+// software developed by the University of California, Berkeley and its
+// contributors'' in the documentation or other materials provided with the
+// distribution and in all advertising materials mentioning features or use
+// of this software. Neither the name of the University nor the names of
+// its contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+
+// THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
+// WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+
+// This file defines FlexLexer, an abstract class which specifies the
+// external interface provided to flex C++ lexer objects, and yyFlexLexer,
+// which defines a particular lexer class.
+//
+// If you want to create multiple lexer classes, you use the -P flag
+// to rename each yyFlexLexer to some other xxFlexLexer. You then
+// include <FlexLexer.h> in your other sources once per lexer class:
+//
+// #undef yyFlexLexer
+// #define yyFlexLexer xxFlexLexer
+// #include <FlexLexer.h>
+//
+// #undef yyFlexLexer
+// #define yyFlexLexer zzFlexLexer
+// #include <FlexLexer.h>
+// ...
+
+#ifndef __FLEX_LEXER_H
+// Never included before - need to define base class.
+#define __FLEX_LEXER_H
+
+extern "C++" {
+
+#include <iostream>
+
+ using namespace std;
+
+struct yy_buffer_state;
+typedef int yy_state_type;
+
+class FlexLexer {
+public:
+ virtual ~FlexLexer() { }
+
+ const char* YYText() { return yytext; }
+ int YYLeng() { return yyleng; }
+
+ virtual void
+ yy_switch_to_buffer( struct yy_buffer_state* new_buffer ) = 0;
+ virtual struct yy_buffer_state*
+ yy_create_buffer( istream* s, int size ) = 0;
+ virtual void yy_delete_buffer( struct yy_buffer_state* b ) = 0;
+ virtual void yyrestart( istream* s ) = 0;
+
+ virtual int yylex() = 0;
+
+ // Call yylex with new input/output sources.
+ int yylex( istream* new_in, ostream* new_out = 0 )
+ {
+ switch_streams( new_in, new_out );
+ return yylex();
+ }
+
+ // Switch to new input/output streams. A nil stream pointer
+ // indicates "keep the current one".
+ virtual void switch_streams( istream* new_in = 0,
+ ostream* new_out = 0 ) = 0;
+
+ int lineno() const { return yylineno; }
+
+ int debug() const { return yy_flex_debug; }
+ void set_debug( int flag ) { yy_flex_debug = flag; }
+
+protected:
+ char* yytext;
+ int yyleng;
+ int yylineno; // only maintained if you use %option yylineno
+ int yy_flex_debug; // only has effect with -d or "%option debug"
+};
+
+}
+#endif
+
+#if defined(yyFlexLexer) || ! defined(yyFlexLexerOnce)
+// Either this is the first time through (yyFlexLexerOnce not defined),
+// or this is a repeated include to define a different flavor of
+// yyFlexLexer, as discussed in the flex man page.
+#define yyFlexLexerOnce
+
+class yyFlexLexer : public FlexLexer {
+public:
+ // arg_yyin and arg_yyout default to the cin and cout, but we
+ // only make that assignment when initializing in yylex().
+ yyFlexLexer( istream* arg_yyin = 0, ostream* arg_yyout = 0 );
+
+ virtual ~yyFlexLexer();
+
+ void yy_switch_to_buffer( struct yy_buffer_state* new_buffer );
+ struct yy_buffer_state* yy_create_buffer( istream* s, int size );
+ void yy_delete_buffer( struct yy_buffer_state* b );
+ void yyrestart( istream* s );
+
+ virtual int yylex();
+ virtual void switch_streams( istream* new_in, ostream* new_out );
+
+protected:
+ virtual int LexerInput( char* buf, int max_size );
+ virtual void LexerOutput( const char* buf, int size );
+ virtual void LexerError( const char* msg );
+
+ void yyunput( int c, char* buf_ptr );
+ int yyinput();
+
+ void yy_load_buffer_state();
+ void yy_init_buffer( struct yy_buffer_state* b, istream* s );
+ void yy_flush_buffer( struct yy_buffer_state* b );
+
+ int yy_start_stack_ptr;
+ int yy_start_stack_depth;
+ int* yy_start_stack;
+
+ void yy_push_state( int new_state );
+ void yy_pop_state();
+ int yy_top_state();
+
+ yy_state_type yy_get_previous_state();
+ yy_state_type yy_try_NUL_trans( yy_state_type current_state );
+ int yy_get_next_buffer();
+
+ istream* yyin; // input source for default LexerInput
+ ostream* yyout; // output sink for default LexerOutput
+
+ struct yy_buffer_state* yy_current_buffer;
+
+ // yy_hold_char holds the character lost when yytext is formed.
+ char yy_hold_char;
+
+ // Number of characters read into yy_ch_buf.
+ int yy_n_chars;
+
+ // Points to current character in buffer.
+ char* yy_c_buf_p;
+
+ int yy_init; // whether we need to initialize
+ int yy_start; // start state number
+
+ // Flag which is used to allow yywrap()'s to do buffer switches
+ // instead of setting up a fresh yyin. A bit of a hack ...
+ int yy_did_buffer_switch_on_eof;
+
+ // The following are not always needed, but may be depending
+ // on use of certain flex features (like REJECT or yymore()).
+
+ yy_state_type yy_last_accepting_state;
+ char* yy_last_accepting_cpos;
+
+ yy_state_type* yy_state_buf;
+ yy_state_type* yy_state_ptr;
+
+ char* yy_full_match;
+ int* yy_full_state;
+ int yy_full_lp;
+
+ int yy_lp;
+ int yy_looking_for_trail_begin;
+
+ int yy_more_flag;
+ int yy_more_len;
+ int yy_more_offset;
+ int yy_prev_more_offset;
+};
+
+#endif
Property changes on: development/source/script/FlexLexer.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: development/source/script/cLexer.h
===================================================================
--- development/source/script/cLexer.h 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/script/cLexer.h 2006-01-15 21:54:54 UTC (rev 437)
@@ -0,0 +1,16 @@
+/*
+ * cLexer.h
+ * avida_test_language
+ *
+ * Created by David on 1/13/06.
+ * Copyright 2006 Michigan State University. All rights reserved.
+ *
+ */
+
+#ifndef cLexer_h
+
+#undef yyFlexLexer
+#define yyFlexLexer cLexer
+#include "FlexLexer.h"
+
+#endif
Property changes on: development/source/script/cLexer.h
___________________________________________________________________
Name: svn:eol-style
+ native
Added: development/source/script/cLexer.l
===================================================================
--- development/source/script/cLexer.l 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/script/cLexer.l 2006-01-15 21:54:54 UTC (rev 437)
@@ -0,0 +1,94 @@
+%{
+/*
+ * cLexer.l
+ * avida_test_language
+ *
+ * Created by David on 1/13/06.
+ * Copyright 2006 Michigan State University. All rights reserved.
+ *
+ */
+
+#include "cLexer.h"
+
+#include "AvidaScript.h"
+
+#include <iostream>
+
+%}
+
+%option c++
+%option noyywrap
+
+%%
+
+#.*\n /* ignore comments */
+\/\/ /* ignore comments */
+[ \t]+ /* ignore whitespace */
+
+
+; return SUPRESS; // End-of-line
+\n return ENDL;
+
+~ return OP_BIT_NOT; // Bitwise Operators
+& return OP_BIT_AND;
+\| return OP_BIT_OR;
+
+! return OP_LOGIC_NOT; // Logic Operators
+&& return OP_LOGIC_AND;
+\|\| return OP_LOGIC_OR;
+
+\+ return OP_ADD; // Arithmetic Operators
+- return OP_SUB;
+\* return OP_MUL;
+\/ return OP_DIV;
+% return OP_MOD;
+
+\. return DOT;
+= return ASSIGN; // Assignment
+
+== return OP_EQ; // Relational Operators
+\<= return OP_LE;
+\>= return OP_GE;
+\< return OP_LT;
+\> return OP_GT;
+!= return OP_NEQ;
+
+\( return PREC_OPEN; // Precedence Grouping
+\) return PREC_CLOSE;
+
+\[ return IDX_OPEN; // Index Grouping
+\] return IDX_CLOSE;
+
+\{ return ARR_OPEN; // Array Definition Grouping
+\} return ARR_CLOSE;
+: return ARR_RANGE;
+\^ return ARR_EXPAN;
+
+bool return TYPE_BOOL; // Built-in Types
+char return TYPE_CHAR;
+float return TYPE_FLOAT;
+int return TYPE_INT;
+void return TYPE_VOID;
+
+if return CMD_IF; // If Blocks
+else return CMD_ELSE;
+endif return CMD_ENDIF;
+
+while return CMD_WHILE; // While Blocks
+endwhile return CMD_ENDWHILE;
+
+foreach return CMD_FOREACH; // Foreach Blocks
+endforeach return CMD_ENDFOREACH;
+
+([a-zA-Z]|_+[a-zA-Z])[a-zA-Z0-9_]* return ID; // Identifiers
+
+[0-9]*\.[0-9]+([eE][-+]?[0-9]+)? return FLOAT; // Literal Values
+[0-9]+ return INT;
+\"\" return STRING;
+\"([^"\\\n]|\\\"|\\\\|\\.)*\" return STRING;
+\'([^'\\\n]|\\\'|\\\\)\' return CHAR;
+
+. return ERR; // Unrecognized Tokens
+
+
+
Property changes on: development/source/script/cLexer.l
___________________________________________________________________
Name: svn:eol-style
+ native
Added: development/source/targets/CMakeLists.txt
===================================================================
--- development/source/targets/CMakeLists.txt 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/targets/CMakeLists.txt 2006-01-15 21:54:54 UTC (rev 437)
@@ -0,0 +1,6 @@
+IF(AVD_PRIMITIVE)
+ SUBDIRS(avida)
+ENDIF(AVD_PRIMITIVE)
+IF(AVD_GUI_NCURSES)
+ SUBDIRS(avida-viewer)
+ENDIF(AVD_GUI_NCURSES)
Property changes on: development/source/targets/CMakeLists.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: development/source/targets/avida/CMakeLists.txt
===================================================================
--- development/source/targets/avida/CMakeLists.txt 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/targets/avida/CMakeLists.txt 2006-01-15 21:54:54 UTC (rev 437)
@@ -0,0 +1,6 @@
+INCLUDE_DIRECTORIES(${ALL_INC_DIRS})
+
+ADD_EXECUTABLE(avida primitive.cc)
+TARGET_LINK_LIBRARIES(avida main classification cpu event analyze drivers analyze cpu main tools)
+LINK_DIRECTORIES(${ALL_LIB_DIRS})
+INSTALL_TARGETS(/work avida)
Property changes on: development/source/targets/avida/CMakeLists.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Copied: development/source/targets/avida/primitive.cc (from rev 436, development/source/main/primitive.cc)
Added: development/source/targets/avida-s/main.cc
===================================================================
--- development/source/targets/avida-s/main.cc 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/targets/avida-s/main.cc 2006-01-15 21:54:54 UTC (rev 437)
@@ -0,0 +1,23 @@
+/*
+ * main.cc
+ * avida_test_language
+ *
+ * Created by David on 1/13/06.
+ * Copyright 2006 Michigan State University. All rights reserved.
+ *
+ */
+
+#include "cLexer.h"
+#include <iostream>
+
+int main (int argc, char * const argv[])
+{
+ cLexer* lexer = new cLexer;
+
+ int tok = lexer->yylex();
+ while (tok) {
+ std::cout << "Token(" << tok << "): '" << lexer->YYText() << "'" << endl;
+ tok = lexer->yylex();
+ }
+ return 0;
+}
Property changes on: development/source/targets/avida-s/main.cc
___________________________________________________________________
Name: svn:eol-style
+ native
Copied: development/source/targets/avida-viewer (from rev 425, development/source/viewer)
Deleted: development/source/targets/avida-viewer/CMakeLists.txt
===================================================================
--- development/source/viewer/CMakeLists.txt 2005-12-20 18:54:00 UTC (rev 425)
+++ development/source/targets/avida-viewer/CMakeLists.txt 2006-01-15 21:54:54 UTC (rev 437)
@@ -1,44 +0,0 @@
-INCLUDE(${PROJECT_SOURCE_DIR}/CMakeModules/FindNcurses.cmake)
-
-IF(AVD_GUI_NCURSES)
- INCLUDE_DIRECTORIES(
- ${ALL_INC_DIRS}
- ${NCURSES_INCLUDE_PATH}
- )
-
- SET(libviewer_SOURCES
- cAvidaDriver_TextPopViewer.cc
- cBarScreen.cc
- cEnvironmentScreen.cc
- cHistScreen.cc
- cMapScreen.cc
- cMenuWindow.cc
- cOptionsScreen.cc
- cScreen.cc
- cStatsScreen.cc
- cSymbolUtil.cc
- cTextWindow.cc
- cView.cc
- cViewInfo.cc
- cZoomScreen.cc
- )
- ADD_LIBRARY(cursesviewer ${libviewer_SOURCES})
-
- ADD_EXECUTABLE(viewer viewer.cc)
- TARGET_LINK_LIBRARIES(viewer
- cursesviewer
- main
- classification
- cpu
- event
- analyze
- cpu
- main
- tools
- trio
- ${NCURSES_LIBRARY}
- )
- LINK_DIRECTORIES(${ALL_LIB_DIRS} ${THIRDPARTY_BLD_DIR}/trio)
-
- INSTALL_TARGETS(/work viewer)
-ENDIF(AVD_GUI_NCURSES)
Copied: development/source/targets/avida-viewer/CMakeLists.txt (from rev 436, development/source/viewer/CMakeLists.txt)
===================================================================
--- development/source/viewer/CMakeLists.txt 2006-01-13 20:24:42 UTC (rev 436)
+++ development/source/targets/avida-viewer/CMakeLists.txt 2006-01-15 21:54:54 UTC (rev 437)
@@ -0,0 +1,44 @@
+INCLUDE(${PROJECT_SOURCE_DIR}/CMakeModules/FindNcurses.cmake)
+
+INCLUDE_DIRECTORIES(
+ ${ALL_INC_DIRS}
+ ${NCURSES_INCLUDE_PATH}
+)
+
+SET(libviewer_SOURCES
+ cBarScreen.cc
+ cEnvironmentScreen.cc
+ cHistScreen.cc
+ cMapScreen.cc
+ cMenuWindow.cc
+ cOptionsScreen.cc
+ cScreen.cc
+ cStatsScreen.cc
+ cSymbolUtil.cc
+ cTextViewerDriver.cc
+ cTextWindow.cc
+ cView.cc
+ cViewInfo.cc
+ cZoomScreen.cc
+)
+ADD_LIBRARY(cursesviewer ${libviewer_SOURCES})
+
+ADD_EXECUTABLE(avida-viewer viewer.cc)
+TARGET_LINK_LIBRARIES(avida-viewer
+ cursesviewer
+ main
+ classification
+ cpu
+ event
+ analyze
+ drivers
+ analyze
+ cpu
+ main
+ tools
+ trio
+ ${NCURSES_LIBRARY}
+)
+LINK_DIRECTORIES(${ALL_LIB_DIRS} ${THIRDPARTY_BLD_DIR}/trio)
+
+INSTALL_TARGETS(/work avida-viewer)
Deleted: development/source/targets/avida-viewer/cAvidaDriver_TextPopViewer.cc
===================================================================
--- development/source/viewer/cAvidaDriver_TextPopViewer.cc 2005-12-20 18:54:00 UTC (rev 425)
+++ development/source/targets/avida-viewer/cAvidaDriver_TextPopViewer.cc 2006-01-15 21:54:54 UTC (rev 437)
@@ -1,96 +0,0 @@
-//////////////////////////////////////////////////////////////////////////////
-// Copyright (C) 1993 - 2001 California Institute of Technology //
-// //
-// Read the COPYING and README files, or contact 'avida at alife.org', //
-// before continuing. SOME RESTRICTIONS MAY APPLY TO USE OF THIS FILE. //
-//////////////////////////////////////////////////////////////////////////////
-
-#include "cAvidaDriver_TextPopViewer.h"
-
-#include "cPopulation.h"
-#include "cView.h"
-#include "cWorld.h"
-
-#include <iostream>
-
-using namespace std;
-
-cAvidaDriver_TextPopViewer::
-cAvidaDriver_TextPopViewer(cWorld* world)
- : cAvidaDriver_Population(world)
- , viewer(NULL)
-{
- cout << "Initializing Text Viewer... " << flush;
-
- viewer = new cView(world);
- viewer->SetViewMode(world->GetConfig().VIEW_MODE.Get());
-
- cout << " ...done" << endl;
-}
-
-cAvidaDriver_TextPopViewer::~cAvidaDriver_TextPopViewer()
-{
- if (viewer != NULL) EndProg(0);
-}
-
-void cAvidaDriver_TextPopViewer::ProcessOrganisms()
-{
- // Process the update.
- const int UD_size = m_world->GetConfig().AVE_TIME_SLICE.Get() * m_world->GetPopulation().GetNumOrganisms();
- const double step_size = 1.0 / (double) UD_size;
-
- // Are we stepping through an organism?
- if (viewer->GetStepOrganism() != -1) { // Yes we are!
- // Keep the viewer informed about the organism we are stepping through...
- for (int i = 0; i < UD_size; i++) {
- const int next_id = m_world->GetPopulation().ScheduleOrganism();
- if (next_id == viewer->GetStepOrganism()) viewer->NotifyUpdate();
- m_world->GetPopulation().ProcessStep(step_size, next_id);
- }
- }
- else {
- for (int i = 0; i < UD_size; i++) m_world->GetPopulation().ProcessStep(step_size);
- }
-
- // end of update stats...
- m_world->GetPopulation().CalcUpdateStats();
-
- // Setup the viewer for the new update.
- if (viewer->GetStepOrganism() == -1) NotifyUpdate();
-}
-
-void cAvidaDriver_TextPopViewer::NotifyComment(const cString & in_string)
-{
- // Send a commment to the user.
- viewer->NotifyComment(in_string);
-}
-
-void cAvidaDriver_TextPopViewer::NotifyWarning(const cString & in_string)
-{
- // Send a warning to the user.
- viewer->NotifyWarning(in_string);
-}
-
-void cAvidaDriver_TextPopViewer::NotifyError(const cString & in_string)
-{
- // Send an error to the user.
- viewer->NotifyError(in_string);
-}
-
-void cAvidaDriver_TextPopViewer::NotifyUpdate()
-{
- viewer->NotifyUpdate();
- viewer->NewUpdate();
-
- // This is needed to have the top bar drawn properly; I'm not sure why...
- static bool first_update = true;
- if (first_update) {
- viewer->Refresh();
- first_update = false;
- }
-}
-
-void cAvidaDriver_TextPopViewer::SignalBreakpoint()
-{
- viewer->DoBreakpoint();
-}
Deleted: development/source/targets/avida-viewer/cAvidaDriver_TextPopViewer.h
===================================================================
--- development/source/viewer/cAvidaDriver_TextPopViewer.h 2005-12-20 18:54:00 UTC (rev 425)
+++ development/source/targets/avida-viewer/cAvidaDriver_TextPopViewer.h 2006-01-15 21:54:54 UTC (rev 437)
@@ -1,34 +0,0 @@
-//////////////////////////////////////////////////////////////////////////////
-// Copyright (C) 1993 - 2001 California Institute of Technology //
-// //
-// Read the COPYING and README files, or contact 'avida at alife.org', //
-// before continuing. SOME RESTRICTIONS MAY APPLY TO USE OF THIS FILE. //
-//////////////////////////////////////////////////////////////////////////////
-
-#ifndef cAvidaDriver_TextPopViewer_h
-#define cAvidaDriver_TextPopViewer_h
-
-#ifndef cAvidaDriver_Population_h
-#include "cAvidaDriver_Population.h"
-#endif
-
-class cView;
-
-class cAvidaDriver_TextPopViewer : public cAvidaDriver_Population {
-protected:
- cView* viewer;
-public:
- cAvidaDriver_TextPopViewer(cWorld* world);
- ~cAvidaDriver_TextPopViewer();
-
- virtual void ProcessOrganisms();
-
- virtual void NotifyComment(const cString & in_string);
- virtual void NotifyWarning(const cString & in_string);
- virtual void NotifyError(const cString & in_string);
- virtual void NotifyUpdate();
-
- virtual void SignalBreakpoint();
-};
-
-#endif
Copied: development/source/targets/avida-viewer/cTextViewerDriver.cc (from rev 436, development/source/viewer/cTextViewerDriver.cc)
Copied: development/source/targets/avida-viewer/cTextViewerDriver.h (from rev 436, development/source/viewer/cTextViewerDriver.h)
Deleted: development/source/targets/avida-viewer/cZoomScreen.cc
===================================================================
--- development/source/viewer/cZoomScreen.cc 2005-12-20 18:54:00 UTC (rev 425)
+++ development/source/targets/avida-viewer/cZoomScreen.cc 2006-01-15 21:54:54 UTC (rev 437)
@@ -1,2162 +0,0 @@
-//////////////////////////////////////////////////////////////////////////////
-// Copyright (C) 1993 - 2001 California Institute of Technology //
-// //
-// Read the COPYING and README files, or contact 'avida at alife.org', //
-// before continuing. SOME RESTRICTIONS MAY APPLY TO USE OF THIS FILE. //
-//////////////////////////////////////////////////////////////////////////////
-
-#include "cZoomScreen.h"
-
-#include "cEnvironment.h"
-#include "functions.h"
-
-#include "cGenotype.h"
-#include "cOrganism.h"
-#include "cPhenotype.h"
-#include "cPopulation.h"
-#include "cPopulationCell.h"
-#include "cStringUtil.h"
-#include "cTaskEntry.h"
-
-#include "cHardwareCPU.h"
-#include "cHardware4Stack.h"
-#include "cHardwareSMT.h"
-
-#include "cView.h"
-#include "cMenuWindow.h"
-
-
-using namespace std;
-
-
-/////////////////////
-// The Zoom Screen
-/////////////////////
-
-cZoomScreen::cZoomScreen(int y_size, int x_size, int y_start, int x_start,
- cViewInfo & in_info, cPopulation & in_pop)
-: cScreen(y_size, x_size, y_start, x_start, in_info), population(in_pop)
-{
- memory_offset = 0;
- parasite_zoom = false;
- mode = ZOOM_MODE_STATS;
- //map_mode = MAP_BASIC;
- inst_view_mode = true;
- active_section = ZOOM_SECTION_MEMORY;
- task_offset = 0;
- //hardware_type = info.GetActiveCell()->GetOrganism()->GetHardware().GetType();
- cur_stack=0;
- cur_mem_space=0;
- cur_view_thread=0;
-
- //map_mode = MAP_BASIC;
- mini_center_id = 0;
- map_x_size = population.GetWorldX();
- map_y_size = population.GetWorldY();
-}
-
-
-
-
-void cZoomScreen::Draw()
-{
- // Draw the options block which is on all screens.
-
- SetBoldColor(COLOR_WHITE);
- Print(OPTIONS_Y, OPTIONS_X, "[<] [>]");
- if (info.GetPauseLevel()) {
- Print(OPTIONS_Y+2, OPTIONS_X+2, "Un-[P]ause");
- Print(OPTIONS_Y+3, OPTIONS_X+2, "[N]ext Update");
- Print(OPTIONS_Y+4, OPTIONS_X+2, "[Space] Next Inst");
- } else {
- Print(OPTIONS_Y+2, OPTIONS_X+2, "[P]ause ");
- Print(OPTIONS_Y+3, OPTIONS_X+2, " ");
- Print(OPTIONS_Y+4, OPTIONS_X+2, " ");
- }
-
- SetBoldColor(COLOR_CYAN);
- Print(OPTIONS_Y, OPTIONS_X+1, "<");
- Print(OPTIONS_Y, OPTIONS_X+20, ">");
- if (info.GetPauseLevel()) {
- Print(OPTIONS_Y+2, OPTIONS_X+6, "P");
- Print(OPTIONS_Y+3, OPTIONS_X+3, "N");
- //Print(OPTIONS_Y+4, OPTIONS_X+3, "Space");
- } else {
- Print(OPTIONS_Y+2, OPTIONS_X+3, "P");
- }
-
- // Redirect to the proper Draw() method.
-
- if (mode == ZOOM_MODE_CPU)
- {
- if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_ORIGINAL)
- DrawCPU_Original();
- if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_4STACK)
- DrawCPU_4Stack();
- if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_SMT)
- DrawCPU_SMT();
- }
- else if (mode == ZOOM_MODE_STATS) DrawStats();
- else if (mode == ZOOM_MODE_GENOTYPE) DrawGenotype();
-
- Update();
- Refresh();
-}
-
-void cZoomScreen::DrawStats()
-{
- // Creature Status
-
- SetBoldColor(COLOR_WHITE);
-
- Print(1, 0, "GenotypeID:");
- Print(2, 0, "Geno Name.:");
- Print(3, 0, "Species.ID:");
-
- Print(5, 0, "Fitness...:");
- Print(6, 0, "Gestation.:");
- Print(7, 0, "CPU Speed.:");
- Print(8, 0, "Cur Merit.:");
- Print(9, 0, "GenomeSize:");
- Print(10, 0, "Mem Size..:");
- Print(11, 0, "Faults....:");
-
- Print(1, 27, "Location..:");
-
- Print(4, 27, "Generation:");
- Print(5, 27, "Age.......:");
- Print(6, 27, "Executed..:");
- Print(7, 27, "LastDivide:");
- Print(8, 27, "Offspring.:");
-
- Print(10, 27, "Thread:");
- Print(11, 27, "IP....:");
-
- if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_ORIGINAL)
- {
- Print(12, 27, "AX....:");
- Print(13, 27, "BX....:");
- Print(14, 27, "CX....:");
- Print(15, 27, "Stack.:");
- Print(16, 27, "---- Memory ----");
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_4STACK)
- {
- Print(12, 27, "Stack AX:");
- Print(13, 27, "Stack BX:");
- Print(14, 27, "Stack CX:");
- Print(15, 27, "Stack DX:");
- Print(16, 27, "---- Memory ----");
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_SMT)
- {
- Print(12, 27, "Stack AX:");
- Print(13, 27, "Stack BX:");
- Print(14, 27, "Stack CX:");
- Print(15, 27, "Stack DX:");
- Print(16, 27, "---- Memory ----");
- }
-
- Print(CPU_FLAGS_Y, CPU_FLAGS_X, "---- Flags ----");
-
- // --== Options ==--
- SetBoldColor(COLOR_YELLOW);
- Print(OPTIONS_Y, OPTIONS_X+4, "CPU Stats Zoom");
-
- // --== Tasks ==--
- SetColor(COLOR_WHITE);
- Box(TASK_X, TASK_Y, 30, Height()-TASK_Y);
-
-
- int task_num = task_offset;
- int col_num = 0;
- const cTaskLib & task_lib = population.GetEnvironment().GetTaskLib();
- for (int cur_col = TASK_X + 2;
- task_num < info.GetWorld().GetNumTasks();
- cur_col += 14) {
- for (int cur_row = TASK_Y + 1;
- cur_row < Height() - 1 && task_num < info.GetWorld().GetNumTasks();
- cur_row++) {
- Print(cur_row, cur_col, "........:");
- Print(cur_row, cur_col, "%s", task_lib.GetTask(task_num).GetName()());
- task_num++;
- }
- col_num++;
- if (col_num == 2) break;
- }
-
- if (task_num < info.GetWorld().GetNumTasks() || task_offset != 0) {
- SetBoldColor(COLOR_WHITE);
- Print(Height()-1, Width() - 23, " [<-] More [->] ");
- SetBoldColor(COLOR_CYAN);
- Print(Height()-1, Width() - 21, "<-");
- Print(Height()-1, Width() - 11, "->");
- }
-}
-
-void cZoomScreen::DrawCPU_Original()
-{
- SetColor(COLOR_WHITE);
-
- // --== Registers ==--
- Box(REG_X, REG_Y, 19, 7);
- Print(REG_Y + 1, REG_X + 2, "Registers");
- HLine(REG_Y + 2, REG_X, 19);
-
- SetBoldColor(COLOR_WHITE);
- Print(REG_Y + 3, REG_X + 2, "AX:");
- Print(REG_Y + 4, REG_X + 2, "BX:");
- Print(REG_Y + 5, REG_X + 2, "CX:");
- SetColor(COLOR_WHITE);
-
- // --== Inputs ==--
- Box(INPUT_X, INPUT_Y, 16, 7);
- Print(INPUT_Y + 1, INPUT_X + 2, "Inputs");
- HLine(INPUT_Y + 2, INPUT_X, 16);
-
- // --== Mini-Map ==--
- Box(MINI_MAP_X, MINI_MAP_Y, 17, 3);
- Print(MINI_MAP_Y + 1, MINI_MAP_X + 2, "Mini-Map");
- // HLine(MINI_MAP_Y + 2, MINI_MAP_X, 19);
-
- SetBoldColor(COLOR_WHITE);
- Print(MINI_MAP_Y + 11, MINI_MAP_X, "[-] [+]");
- SetBoldColor(COLOR_CYAN);
- Print(MINI_MAP_Y + 11, MINI_MAP_X + 1, '-');
- Print(MINI_MAP_Y + 11, MINI_MAP_X + 15, '+');
- SetColor(COLOR_WHITE);
-
- // --== Memory ==--
- Box(MEMORY_X, MEMORY_Y, 36, 5 + MEMORY_PRE_SIZE + MEMORY_POST_SIZE);
- Print(MEMORY_Y + 1, MEMORY_X + 2, "Memory:");
- HLine(MEMORY_Y + 2, MEMORY_X, 36);
-
- // --== Stack ==--
- Box(STACK_X, STACK_Y, 15, 7);
- HLine(STACK_Y + 2, STACK_X, 15);
-
- // --== Options ==--
- SetBoldColor(COLOR_YELLOW);
- Print(OPTIONS_Y, OPTIONS_X+4, "Component Zoom");
- SetBoldColor(COLOR_WHITE);
-
- Print(OPTIONS_Y+6, OPTIONS_X+2, "[E]dit Component");
- Print(OPTIONS_Y+7, OPTIONS_X+2, "[V]iew Component");
- if(info.GetConfig().MAX_CPU_THREADS.Get() >1)
- Print(OPTIONS_Y+8, OPTIONS_X+2, "Next [T]hread");
- Print(OPTIONS_Y+9, OPTIONS_X+2, "[TAB] Shift Active");
-
- if (info.GetPauseLevel()) {
- Print(OPTIONS_Y+10, OPTIONS_X+2, "[Arrows] Scroll");
- } else {
- Print(OPTIONS_Y+10, OPTIONS_X+2, " ");
- }
-
-
- SetBoldColor(COLOR_CYAN);
- Print(OPTIONS_Y+6, OPTIONS_X+3, "E");
- Print(OPTIONS_Y+7, OPTIONS_X+3, "V");
- if(info.GetConfig().MAX_CPU_THREADS.Get() >1)
- Print(OPTIONS_Y+8, OPTIONS_X+8, "T");
- Print(OPTIONS_Y+9, OPTIONS_X+3, "TAB");
-
- if (info.GetPauseLevel()) {
- Print(OPTIONS_Y+10, OPTIONS_X+3, "Arrows");
- }
-
- // Highlight the active section...
- SetActiveSection(active_section);
-
- // Add on a bunch of special characters to smooth the view out...
- Print(INPUT_Y, INPUT_X, CHAR_TTEE);
- Print(INPUT_Y + 2, INPUT_X, CHAR_PLUS);
- Print(INPUT_Y + 6, INPUT_X, CHAR_BTEE);
-
- Print(STACK_Y, STACK_X, CHAR_TTEE);
- Print(STACK_Y + 2, STACK_X, CHAR_PLUS);
- Print(STACK_Y + 6, STACK_X, CHAR_BTEE);
-
-
- // A few stats on this screen...
-
- SetBoldColor(COLOR_WHITE);
-
- Print(13, 52, "Location.....:");
- Print(14, 52, "Genotype ID..:");
- Print(15, 52, "Genotype Name:");
-
- Print(17, 52, "Faults.......:");
- Print(18, 52, "Offspring....:");
- Print(19, 52, "Thread.......:");
-}
-
-void cZoomScreen::DrawCPU_4Stack()
-{
- SetColor(COLOR_WHITE);
-
- // --== Registers ==--
- Box(REG_X, REG_Y-1, 19, 8);
- Print(REG_Y, REG_X + 2, "Stacks:");
- HLine(REG_Y + 1, REG_X, 19);
-
- SetBoldColor(COLOR_WHITE);
- Print(REG_Y + 2, REG_X + 2, "AX:");
- Print(REG_Y + 3, REG_X + 2, "BX:");
- Print(REG_Y + 4, REG_X + 2, "CX:");
- Print(REG_Y + 5, REG_X + 2, "DX:");
- SetColor(COLOR_WHITE);
-
- // --== Inputs ==--
- Box(INPUT_X, INPUT_Y-1, 16, 8);
- Print(INPUT_Y, INPUT_X + 2, "Inputs:");
- HLine(INPUT_Y+1, INPUT_X, 16);
-
- // --== Mini-Map ==--
- Box(MINI_MAP_X, MINI_MAP_Y, 17, 3);
- Print(MINI_MAP_Y + 1, MINI_MAP_X + 2, "Mini-Map");
- //HLine(MINI_MAP_Y + 2, MINI_MAP_X, 19);
-
- SetBoldColor(COLOR_WHITE);
- Print(MINI_MAP_Y + 11, MINI_MAP_X, "[ ] [ ]");
- SetBoldColor(COLOR_CYAN);
- Print(MINI_MAP_Y + 11, MINI_MAP_X + 1, '-');
- Print(MINI_MAP_Y + 11, MINI_MAP_X + 15, '+');
- SetColor(COLOR_WHITE);
-
- // --== Memory ==--
- Box(MEMORY_X, MEMORY_Y, 36, 5 + MEMORY_PRE_SIZE + MEMORY_POST_SIZE);
- Print(MEMORY_Y + 1, MEMORY_X + 2, "Memory Space");
- HLine(MEMORY_Y + 2, MEMORY_X, 36);
-
- // --== Stack ==--
- Box(STACK_X, STACK_Y-1, 15, 8);
- HLine(STACK_Y + 1, STACK_X, 15);
-
- // --== Options ==--
- SetBoldColor(COLOR_YELLOW);
- Print(OPTIONS_Y, OPTIONS_X+4, "Component Zoom");
- SetBoldColor(COLOR_WHITE);
-
- //Print(OPTIONS_Y+6, OPTIONS_X+2, "[E]dit Component");
- //Print(OPTIONS_Y+7, OPTIONS_X+2, "[V]iew Component");
- Print(OPTIONS_Y+5, OPTIONS_X+2, "Next Stac[K]");
- if(info.GetConfig().MAX_CPU_THREADS.Get() >1)
- Print(OPTIONS_Y+6, OPTIONS_X+2, "Next [T]hread");
- //Print(OPTIONS_Y+9, OPTIONS_X+2, "[TAB] Shift Active");
-
- if (info.GetPauseLevel()) {
- Print(OPTIONS_Y+7, OPTIONS_X+2, "[UP, DOWN]");
- Print(OPTIONS_Y+8, OPTIONS_X+2, "Scroll Instruction");
- Print(OPTIONS_Y+9, OPTIONS_X+2, "[LEFT, RIGHT]");
- Print(OPTIONS_Y+10, OPTIONS_X+2, "Change Mem Space");
- } else {
- Print(OPTIONS_Y+7, OPTIONS_X+2, " ");
- Print(OPTIONS_Y+8, OPTIONS_X+2, " ");
- Print(OPTIONS_Y+9, OPTIONS_X+2, " ");
- Print(OPTIONS_Y+10, OPTIONS_X+2, " ");
- }
-
-
- SetBoldColor(COLOR_CYAN);
- Print(OPTIONS_Y+5, OPTIONS_X+12, "K");
- if(info.GetConfig().MAX_CPU_THREADS.Get() >1)
- Print(OPTIONS_Y+6, OPTIONS_X+8, "T");
-
- if (info.GetPauseLevel()) {
- Print(OPTIONS_Y+7, OPTIONS_X+3, "UP, DOWN");
- Print(OPTIONS_Y+9, OPTIONS_X+3, "LEFT, RIGHT");
- }
-
- // Highlight the active section...
- SetActiveSection(active_section);
-
- // Add on a bunch of special characters to smooth the view out...
- Print(INPUT_Y - 1, INPUT_X, CHAR_TTEE);
- Print(INPUT_Y + 1, INPUT_X, CHAR_PLUS);
- Print(INPUT_Y + 6, INPUT_X, CHAR_BTEE);
-
- Print(STACK_Y - 1, STACK_X, CHAR_TTEE);
- Print(STACK_Y + 1, STACK_X, CHAR_PLUS);
- Print(STACK_Y + 6, STACK_X, CHAR_BTEE);
-
-
- // A few stats on this screen...
-
- SetBoldColor(COLOR_WHITE);
-
- Print(13, 52, "Location.....:");
- Print(14, 52, "Genotype ID..:");
- Print(15, 52, "Genotype Name:");
-
- Print(17, 52, "Faults.......:");
- Print(18, 52, "Offspring....:");
- Print(19, 52, "Thread.......:");
-}
-
-void cZoomScreen::DrawCPU_SMT()
-{
- SetColor(COLOR_WHITE);
-
- // --== Registers ==--
- Box(REG_X, REG_Y-1, 19, 8);
- Print(REG_Y, REG_X + 2, "Stacks:");
- HLine(REG_Y + 1, REG_X, 19);
-
- SetBoldColor(COLOR_WHITE);
- Print(REG_Y + 2, REG_X + 2, "AX:");
- Print(REG_Y + 3, REG_X + 2, "BX:");
- Print(REG_Y + 4, REG_X + 2, "CX:");
- Print(REG_Y + 5, REG_X + 2, "DX:");
- SetColor(COLOR_WHITE);
-
- // --== Inputs ==--
- Box(INPUT_X, INPUT_Y-1, 16, 8);
- Print(INPUT_Y, INPUT_X + 2, "Inputs:");
- HLine(INPUT_Y+1, INPUT_X, 16);
-
- // --== Mini-Map ==--
- Box(MINI_MAP_X, MINI_MAP_Y, 17, 3);
- Print(MINI_MAP_Y + 1, MINI_MAP_X + 2, "Mini-Map");
- //HLine(MINI_MAP_Y + 2, MINI_MAP_X, 19);
-
- SetBoldColor(COLOR_WHITE);
- Print(MINI_MAP_Y + 11, MINI_MAP_X, "[ ] [ ]");
- SetBoldColor(COLOR_CYAN);
- Print(MINI_MAP_Y + 11, MINI_MAP_X + 1, '-');
- Print(MINI_MAP_Y + 11, MINI_MAP_X + 15, '+');
- SetColor(COLOR_WHITE);
-
- // --== Memory ==--
- Box(MEMORY_X, MEMORY_Y, 36, 5 + MEMORY_PRE_SIZE + MEMORY_POST_SIZE);
- Print(MEMORY_Y + 1, MEMORY_X + 2, "Memory Space");
- HLine(MEMORY_Y + 2, MEMORY_X, 36);
-
- // --== Stack ==--
- Box(STACK_X, STACK_Y-1, 15, 8);
- HLine(STACK_Y + 1, STACK_X, 15);
-
- // --== Options ==--
- SetBoldColor(COLOR_YELLOW);
- Print(OPTIONS_Y, OPTIONS_X+4, "Component Zoom");
- SetBoldColor(COLOR_WHITE);
-
- //Print(OPTIONS_Y+6, OPTIONS_X+2, "[E]dit Component");
- //Print(OPTIONS_Y+7, OPTIONS_X+2, "[V]iew Component");
- Print(OPTIONS_Y+5, OPTIONS_X+2, "Next Stac[K]");
- if(info.GetConfig().MAX_CPU_THREADS.Get() >1)
- Print(OPTIONS_Y+6, OPTIONS_X+2, "Next [T]hread");
- //Print(OPTIONS_Y+9, OPTIONS_X+2, "[TAB] Shift Active");
-
- if (info.GetPauseLevel()) {
- Print(OPTIONS_Y+7, OPTIONS_X+2, "[UP, DOWN]");
- Print(OPTIONS_Y+8, OPTIONS_X+2, "Scroll Instruction");
- Print(OPTIONS_Y+9, OPTIONS_X+2, "[LEFT, RIGHT]");
- Print(OPTIONS_Y+10, OPTIONS_X+2, "Change Mem Space");
- } else {
- Print(OPTIONS_Y+7, OPTIONS_X+2, " ");
- Print(OPTIONS_Y+8, OPTIONS_X+2, " ");
- Print(OPTIONS_Y+9, OPTIONS_X+2, " ");
- Print(OPTIONS_Y+10, OPTIONS_X+2, " ");
- }
-
-
- SetBoldColor(COLOR_CYAN);
- Print(OPTIONS_Y+5, OPTIONS_X+12, "K");
- if(info.GetConfig().MAX_CPU_THREADS.Get() >1)
- Print(OPTIONS_Y+6, OPTIONS_X+8, "T");
-
- if (info.GetPauseLevel()) {
- Print(OPTIONS_Y+7, OPTIONS_X+3, "UP, DOWN");
- Print(OPTIONS_Y+9, OPTIONS_X+3, "LEFT, RIGHT");
- }
-
- // Highlight the active section...
- SetActiveSection(active_section);
-
- // Add on a bunch of special characters to smooth the view out...
- Print(INPUT_Y - 1, INPUT_X, CHAR_TTEE);
- Print(INPUT_Y + 1, INPUT_X, CHAR_PLUS);
- Print(INPUT_Y + 6, INPUT_X, CHAR_BTEE);
-
- Print(STACK_Y - 1, STACK_X, CHAR_TTEE);
- Print(STACK_Y + 1, STACK_X, CHAR_PLUS);
- Print(STACK_Y + 6, STACK_X, CHAR_BTEE);
-
-
- // A few stats on this screen...
-
- SetBoldColor(COLOR_WHITE);
-
- Print(13, 52, "Location.....:");
- Print(14, 52, "Genotype ID..:");
- Print(15, 52, "Genotype Name:");
-
- Print(17, 52, "Faults.......:");
- Print(18, 52, "Offspring....:");
- Print(19, 52, "Thread.......:");
-}
-
-void cZoomScreen::DrawGenotype()
-{
- SetBoldColor(COLOR_YELLOW);
- Print(OPTIONS_Y, OPTIONS_X + 4, "Genotype Zoom");
-
- // Genotype status.
-
- SetBoldColor(COLOR_WHITE);
-
- Print(1, 0, "GenotypeID:");
- Print(2, 0, "Geno Name.:");
- Print(3, 0, "Species ID:");
-
- Print(5, 0, "Abundance.:");
- Print(6, 0, "Length....:");
- Print(7, 0, "CopyLength:");
- Print(8, 0, "Exe Length:");
-
- Print(10, 0, "Fitness...:");
- Print(11, 0, "Gestation.:");
- Print(12, 0, "Merit.....:");
- Print(13, 0, "ReproRate.:");
-
- Print(1, 27, "Update Born:");
- Print(2, 27, "Parent ID..:");
- Print(3, 27, "Parent Dist:");
- Print(4, 27, "Gene Depth.:");
-
- Print(6, 27, "-- This Update --");
- Print(7, 27, "Deaths.....:");
- Print(8, 27, "Divides....:");
- Print(9, 27, "Breed True.:");
- Print(10, 27, "Breed In...:");
- Print(11, 27, "Breed Out..:");
-
- Print(13, 27, "-- Totals --");
- Print(14, 27, "Abundance..:");
- Print(15, 27, "Divides....:");
- Print(16, 27, "Breed True.:");
- Print(17, 27, "Breed In...:");
- Print(18, 27, "Breed Out..:");
-}
-
-void cZoomScreen::Update()
-{
- if (info.GetActiveCell() == NULL ||
- info.GetActiveCell()->IsOccupied() == false) return;
-
- cHardwareBase & hardware = info.GetActiveCell()->GetOrganism()->GetHardware();
- if(mode == ZOOM_MODE_CPU) UpdateCPU(hardware);
- else if (mode == ZOOM_MODE_STATS) UpdateStats(hardware);
- else if (mode == ZOOM_MODE_GENOTYPE) UpdateGenotype();
-
- Refresh();
-}
-
-void cZoomScreen::UpdateStats(cHardwareBase & hardware)
-{
- if (info.GetActiveCell() == NULL ||
- info.GetActiveCell()->IsOccupied() == false) return;
-
- cGenotype * genotype = info.GetActiveGenotype();
- cPhenotype & phenotype = info.GetActiveCell()->GetOrganism()->GetPhenotype();
-
- //cHardwareBase & hardware =
- // info.GetActiveCell()->GetOrganism()->GetHardware();
-
- SetBoldColor(COLOR_CYAN);
-
- // if there is an Active Genotype name AND it is not empty, show it
- Print(1, 12, "%9d", info.GetActiveGenotypeID());
- Print(2, 12, "%s", info.GetActiveName()());
-
- if (info.GetActiveSpecies())
- Print(3, 12, "%9d", info.GetActiveSpeciesID());
- else
- Print(3, 15, "(none) ");
-
- const cMerit cur_merit(phenotype.GetCurBonus());
-
- PrintFitness(5, 14, phenotype.GetFitness());
- Print(6, 15, "%6d ", phenotype.GetGestationTime());
- PrintMerit(7, 14, phenotype.GetMerit());
- PrintMerit(8, 14, cur_merit);
- Print(9, 15, "%6d ", genotype ? genotype->GetLength() : 0);
- Print(10, 15, "%6d ", hardware.GetMemory().GetSize());
-
- Print(11, 15, "%6d ", phenotype.GetCurNumErrors());
-
- Print(4, 39, "%9d ", phenotype.GetGeneration());
- Print(5, 39, "%9d ", phenotype.GetAge());
- Print(6, 39, "%9d ", phenotype.GetTimeUsed());
- Print(7, 39, "%9d ", phenotype.GetGestationStart());
- Print(8, 39, "%9d ", phenotype.GetNumDivides());
-
- if (info.GetThreadLock() != -1) Print(10, 36, "LOCKED");
- else Print(10, 36, " ");
-
- if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_ORIGINAL)
- UpdateStats_CPU(hardware);
- else if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_4STACK)
- UpdateStats_4Stack(hardware);
- else if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_SMT)
- UpdateStats_SMT(hardware);
-
- if (phenotype.ParentTrue()) SetBoldColor(COLOR_CYAN);
- else SetColor(COLOR_CYAN);
- Print(CPU_FLAGS_Y + 2, CPU_FLAGS_X + 1, "Parent True");
-
- if (phenotype.IsInjected()) SetBoldColor(COLOR_CYAN);
- else SetColor(COLOR_CYAN);
- Print(CPU_FLAGS_Y + 3, CPU_FLAGS_X + 1, "Injected");
-
- if (phenotype.IsParasite()) SetBoldColor(COLOR_CYAN);
- else SetColor(COLOR_CYAN);
- Print(CPU_FLAGS_Y + 4, CPU_FLAGS_X + 1, "Parasite");
-
- if (phenotype.IsMutated()) SetBoldColor(COLOR_CYAN);
- else SetColor(COLOR_CYAN);
- Print(CPU_FLAGS_Y + 5, CPU_FLAGS_X + 1, "Mutated");
-
- if (phenotype.IsModified()) SetBoldColor(COLOR_CYAN);
- else SetColor(COLOR_CYAN);
- Print(CPU_FLAGS_Y + 6, CPU_FLAGS_X + 1, "Modified");
-
- SetColor(COLOR_WHITE);
-
- if (info.GetPauseLevel() && info.GetActiveCell() && phenotype.IsParasite()) {
- if (parasite_zoom == true) Print(17, 12, "[X] Host Code ");
- else Print(17, 12, "[X] Parasite Code");
- }
-
- // Place the task information onto the screen.
- SetColor(COLOR_CYAN);
-
- int task_num = task_offset;
- int col_num = 0;
- for (int cur_col = TASK_X + 12;
- task_num < info.GetWorld().GetNumTasks();
- cur_col += 14) {
- for (int cur_row = TASK_Y + 1;
- cur_row <= Height() - 2 && task_num < info.GetWorld().GetNumTasks();
- cur_row++) {
- if (col_num < 2) {
- Print(cur_row, cur_col, "%2d", phenotype.GetCurTaskCount()[task_num]);
- }
- task_num++;
- }
- col_num++;
- }
-
-
-
- if (info.GetActiveCell() == NULL) {
- info.SetActiveCell( &(population.GetCell(0)) );
- }
- SetBoldColor(COLOR_WHITE);
-
- // Figure out which CPU we're pointing at (useful for watching parasites)
- Print(2, 27, "Facing....:");
-
- // Show the location of the CPU we are looking at.
- SetBoldColor(COLOR_CYAN);
- Print(1, 40, "[%2d, %2d] ",
- info.GetActiveID() % population.GetWorldX(),
- info.GetActiveID() / population.GetWorldY());
-
- // Now show the location of the CPU we are facing.
- int id = info.GetActiveCell()->ConnectionList().GetFirst()->GetID();
- Print(2, 40, "[%2d, %2d] ",
- id % population.GetWorldX(), id / population.GetWorldY());
-
-
-
-}
-
-void cZoomScreen::UpdateStats_CPU(cHardwareBase & hardware)
-{
- cHardwareCPU & hardwareCPU = (cHardwareCPU &) hardware;
-
- Print(10, 43, "%2d/%2d", hardwareCPU.GetCurThread() + 1,
- hardwareCPU.GetNumThreads());
-
- Print(12, 34, "%14d", hardwareCPU.GetRegister(0));
- Print(13, 34, "%14d", hardwareCPU.GetRegister(1));
- Print(14, 34, "%14d", hardwareCPU.GetRegister(2));
- Print(15, 34, "%14d", hardwareCPU.GetStack(0));
-
- cHeadCPU inst_ptr(hardwareCPU.IP());
- const cInstSet & inst_set = hardwareCPU.GetInstSet();
-
- for (int pos = 0; pos < 3; pos++) {
- // Clear the line
- Print(17+pos, 29, " ");
- if (inst_ptr.InMemory() == false) continue;
- if (pos == 1) SetColor(COLOR_CYAN);
-
- // Draw the current instruction.
- Print(17+pos, 29, "%s", inst_set.GetName(inst_ptr.GetInst())());
- inst_ptr.Advance();
- }
-
- // Flags...
- if (hardwareCPU.GetMalActive()) SetBoldColor(COLOR_CYAN);
- else SetColor(COLOR_CYAN);
- Print(CPU_FLAGS_Y + 1, CPU_FLAGS_X + 1, "Mem Allocated");
-
- // And print the IP.
- const cHeadCPU & active_inst_ptr = hardwareCPU.IP();
- // @CAO assume no parasites for now.
- int cur_id = info.GetActiveCell()->GetID();
- //active_inst_ptr.GetCurHardware()->GetOrganism()->GetEnvironment()->GetID();
- Print(11, 36, "%12s", cStringUtil::Stringf("[%2d,%2d] : %2d",
- cur_id % population.GetWorldX(), cur_id / population.GetWorldX(),
- active_inst_ptr.GetPosition())() );
-}
-
-void cZoomScreen::UpdateStats_4Stack(cHardwareBase & hardware)
-{
- cHardware4Stack & hardware4Stack = (cHardware4Stack &) hardware;
-
- Print(10, 43, "%2d/%2d", hardware4Stack.GetCurThread() + 1,
- hardware4Stack.GetNumThreads());
-
- Print(12, 34, "%14d", hardware4Stack.GetStack(0, 0));
- Print(13, 34, "%14d", hardware4Stack.GetStack(0, 1));
- Print(14, 34, "%14d", hardware4Stack.GetStack(0, 2));
- Print(15, 34, "%14d", hardware4Stack.GetStack(0, 3));
-
- cHeadMultiMem inst_ptr(hardware4Stack.IP());
- const cInstSet & inst_set = hardware4Stack.GetInstSet();
-
- for (int pos = 0; pos < 3; pos++) {
- // Clear the line
- Print(17+pos, 29, " ");
- if (inst_ptr.InMemory() == false) continue;
- if (pos == 1) SetColor(COLOR_CYAN);
-
- // Draw the current instruction.
- Print(17+pos, 29, "%s", inst_set.GetName(inst_ptr.GetInst())());
- inst_ptr.Advance();
- }
-
- // And print the IP.
- const cHeadMultiMem & active_inst_ptr = hardware4Stack.IP();
- // @CAO assume no parasites for now.
- //int cur_id = info.GetActiveCell()->GetID();
- //active_inst_ptr.GetCurHardware()->GetOrganism()->GetEnvironment()->GetID();
- Print(11, 36, "%12s", cStringUtil::Stringf("(%2d, %2d)",
- active_inst_ptr.GetMemSpace(),
- active_inst_ptr.GetPosition())() );
-}
-
-void cZoomScreen::UpdateStats_SMT(cHardwareBase & hardware)
-{
- cHardwareSMT& hardware4Stack = (cHardwareSMT&) hardware;
-
- Print(10, 43, "%2d/%2d", hardware4Stack.GetCurThread() + 1,
- hardware4Stack.GetNumThreads());
-
- Print(12, 34, "%14d", hardware4Stack.GetStack(0, 0));
- Print(13, 34, "%14d", hardware4Stack.GetStack(0, 1));
- Print(14, 34, "%14d", hardware4Stack.GetStack(0, 2));
- Print(15, 34, "%14d", hardware4Stack.GetStack(0, 3));
-
- cHeadMultiMem inst_ptr(hardware4Stack.IP());
- const cInstSet & inst_set = hardware4Stack.GetInstSet();
-
- for (int pos = 0; pos < 3; pos++) {
- // Clear the line
- Print(17+pos, 29, " ");
- if (inst_ptr.InMemory() == false) continue;
- if (pos == 1) SetColor(COLOR_CYAN);
-
- // Draw the current instruction.
- Print(17+pos, 29, "%s", inst_set.GetName(inst_ptr.GetInst())());
- inst_ptr.Advance();
- }
-
- // And print the IP.
- const cHeadMultiMem & active_inst_ptr = hardware4Stack.IP();
- // @CAO assume no parasites for now.
- //int cur_id = info.GetActiveCell()->GetID();
- //active_inst_ptr.GetCurHardware()->GetOrganism()->GetEnvironment()->GetID();
- Print(11, 36, "%12s", cStringUtil::Stringf("(%2d, %2d)",
- active_inst_ptr.GetMemSpace(),
- active_inst_ptr.GetPosition())() );
-}
-
-void cZoomScreen::UpdateCPU(cHardwareBase & hardware)
-{
- // Place the visible section of the current memory onto the screen.
-
- SetBoldColor(COLOR_WHITE);
- if (info.GetPauseLevel() == PAUSE_OFF) {
- // If not paused, then set user desired offset to zero AND always show
- // the code that is executing (ie. do not show original Parasite code if
- // host is executing)
- memory_offset = 0;
- parasite_zoom = false;
- }
-
- Print(14, 69, "%10d", info.GetActiveGenotypeID());
- Print(15, 69, "%10s", info.GetActiveName()());
-
- cPhenotype & phenotype = info.GetActiveCell()->GetOrganism()->GetPhenotype();
- Print(17, 69, "%10d", phenotype.GetCurNumErrors());
- Print(18, 69, "%10d", phenotype.GetNumDivides());
- if (info.GetThreadLock() != -1) Print(19, 67, "LOCKED");
- else Print(19, 67, " ");
-
- if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_ORIGINAL)
- UpdateCPU_Original(hardware);
- else if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_4STACK)
- UpdateCPU_4Stack(hardware);
- else if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_SMT)
- UpdateCPU_SMT(hardware);
-
- // Place the input buffer on the screen.
-
- SetBoldColor(COLOR_CYAN);
- Print(INPUT_Y+3, INPUT_X+2, "%12d", info.GetActiveCell()->GetInput(0));
-
- SetColor(COLOR_CYAN);
- for (int i = 1; i < nHardware::IO_SIZE; i++) {
- Print(INPUT_Y+3+i, INPUT_X+2, "%12d", info.GetActiveCell()->GetInput(i));
- }
-
- const cString & cur_fault = phenotype.GetFault();
- if (cur_fault.GetSize() > 0) {
- SetBoldColor(COLOR_RED);
- Print(FAULT_Y, FAULT_X, "Fault:");
- SetBoldColor(COLOR_CYAN);
- Print(FAULT_Y, FAULT_X + 7, cur_fault());
- } else {
- Print(FAULT_Y, FAULT_X, " ");
- }
-
- SetBoldColor(COLOR_WHITE);
-
- Print(13, 70, "[%3d,%3d] ",
- info.GetActiveID() % population.GetWorldX(),
- info.GetActiveID() / population.GetWorldY());
-
- SetBoldColor(COLOR_CYAN);
- Refresh();
-}
-
-void cZoomScreen::UpdateCPU_Original(cHardwareBase & hardware)
-{
- cHardwareCPU & hardwareCPU = (cHardwareCPU &) hardware;
- //hardwareCPU.SetThread(cur_view_thread);
-
- // Place the registers onto the screen.
- SetBoldColor(COLOR_CYAN);
- for (int i = 0; i < nHardwareCPU::NUM_REGISTERS; i++) {
- Print(REG_Y+3 + i, REG_X+6, "%11d", hardwareCPU.GetRegister(i));
- }
-
- // Place the active stack onto the screen.
-
- // Stack A
- // SetBoldColor(COLOR_CYAN); // -Redundant
- SetColor(COLOR_WHITE);
- Print(STACK_Y + 1, STACK_X + 2, "Stack %s", 'A' + hardwareCPU.GetActiveStack());
-
- SetBoldColor(COLOR_CYAN);
- Print(STACK_Y+3, STACK_X + 2, "%11d", hardwareCPU.GetStack(0));
- SetColor(COLOR_CYAN);
- for (int i = 1; i <= 2; i++) {
- Print(STACK_Y+3 + i, STACK_X+2, "%11d", hardwareCPU.GetStack(i));
- }
-
- // Place the input buffer on the screen.
-
- SetBoldColor(COLOR_CYAN);
- Print(INPUT_Y+3, INPUT_X+2, "%12d", info.GetActiveCell()->GetInput(0));
-
- SetColor(COLOR_CYAN);
- for (int i = 1; i < nHardware::IO_SIZE; i++) {
- Print(INPUT_Y+3+i, INPUT_X+2, "%12d", info.GetActiveCell()->GetInput(i));
- }
-
- Print(19, 74, "%2d/%2d", hardwareCPU.GetCurThread() + 1,
- hardwareCPU.GetNumThreads());
-
- // This line gets the creature that is currently executing. Usually the
- // creature we are viewing, but can also be a different one (if this is a
- // parasite).
-
- const cCPUMemory & memory = (parasite_zoom) ?
- hardware.GetMemory() : hardwareCPU.IP().GetMemory();
- SetColor(COLOR_WHITE);
- Print(MEMORY_Y + 1, MEMORY_X + 9, "%4d", memory.GetSize());
-
-
-
- // Nothing past this point gets executed for empty creatures....
- if (memory.GetSize() == 0) {
- for (int i = -MEMORY_PRE_SIZE; i <= MEMORY_POST_SIZE; i++) {
- HLine(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X, 36);
- }
- return;
- }
-
- int adj_inst_ptr = 0;
- int base_inst_ptr = hardwareCPU.IP().GetPosition();
- if (base_inst_ptr < 0 || parasite_zoom == true) base_inst_ptr = 0;
-
- const cInstSet & inst_set = hardwareCPU.GetInstSet();
-
- // Determine the center (must be between 0 and size - 1)
- int center_pos = (base_inst_ptr + memory_offset) % memory.GetSize();
- if (center_pos < 0) center_pos += memory.GetSize();
-
- for (int i = -MEMORY_PRE_SIZE; i <= MEMORY_POST_SIZE; i++) {
- adj_inst_ptr = (center_pos + i) % (memory.GetSize() + 1);
- if (adj_inst_ptr < 0) adj_inst_ptr += memory.GetSize() + 1;
-
- if (adj_inst_ptr == memory.GetSize()) {
- HLine(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X, 36);
- } else {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X, CHAR_VLINE);
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 35, CHAR_VLINE);
-
- // If we are on the instruction about to be executed by the CPU,
- // hilight it...
- if (adj_inst_ptr == base_inst_ptr) {
- SetBoldColor(COLOR_WHITE);
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 1, "%3d: ",
- adj_inst_ptr);
- SetBoldColor(COLOR_CYAN);
- } else {
- if (i == 0) SetBoldColor(COLOR_YELLOW);
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 1, "%3d: ",
- adj_inst_ptr);
- // If we are scrolling through memory, make the current position
- // yellow.
- if (i == 0) SetColor(COLOR_YELLOW);
- else SetColor(COLOR_CYAN);
- }
-
- // Print the instruction...
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 6, "%8s ",
- inst_set.GetName( memory[adj_inst_ptr] )());
-
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 15,
- " ");
-
- // Only list the "Cpy" flag or the "Inj" flag...
- if (memory.FlagCopied(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 15, "Cpy");
- }
- if (memory.FlagInjected(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 15, "Inj");
- }
-
- // Other flags we're interested in...
- if (memory.FlagMutated(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 19, "Mut");
- }
- if (memory.FlagExecuted(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 23, "Exe");
- }
- if (memory.FlagBreakpoint(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 27, "Bp");
- }
-
- if (adj_inst_ptr == hardwareCPU.GetHead(nHardware::HEAD_READ).GetPosition()) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 30, "R");
- }
- if (adj_inst_ptr == hardwareCPU.GetHead(nHardware::HEAD_WRITE).GetPosition()) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 31, "W");
- }
- if (adj_inst_ptr == hardwareCPU.GetHead(nHardware::HEAD_FLOW).GetPosition()) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 32, "F");
- }
- }
- SetColor(COLOR_WHITE);
- }
-
- DrawMiniMap();
-}
-
-void cZoomScreen::UpdateCPU_4Stack(cHardwareBase & hardware)
-{
- cHardware4Stack & hardware4Stack = (cHardware4Stack &) hardware;
-
- if(cur_view_thread>=hardware4Stack.GetNumThreads())
- {
- cur_view_thread=0;
- cur_mem_space = hardware4Stack.IP(cur_view_thread).GetMemSpace();
- }
- //hardware4Stack.SetThread(cur_view_thread);
- cHeadMultiMem & cur_ip = hardware4Stack.IP(cur_view_thread);
-
- // Place the stacks onto the screen.
- SetBoldColor(COLOR_CYAN);
- for (int i = 0; i < 4; i++) {
- Print(REG_Y+2 + i, REG_X+6, "%11d", hardware4Stack.GetStack(0, i, cur_view_thread));
- }
-
- // Place the active stack onto the screen.
-
- // Stack AX
- //SetBoldColor(COLOR_CYAN); // -Redundant
- SetColor(COLOR_WHITE);
-
- Print(STACK_Y, STACK_X + 2, "Stack :");
- Print(STACK_Y, STACK_X + 8, "%cX" , 'A' + cur_stack);
-
- //SetBoldColor(COLOR_CYAN);
- //Print(STACK_Y+2, STACK_X + 2, "%11d", hardware4Stack.GetStack(0, cur_stack));
- SetColor(COLOR_CYAN);
- for (int i = 0; i <= 3; i++) {
- Print(STACK_Y+2 + i, STACK_X+2, "%11d", hardware4Stack.GetStack(i, cur_stack, cur_view_thread));
- }
-
- Print(19, 74, "%2d/%2d", cur_view_thread + 1,
- hardware4Stack.GetNumThreads());
-
- // This line gets the creature that is currently executing. Usually the
- // creature we are viewing, but can also be a different one (if this is a
- // parasite).
-
- const cCPUMemory & memory = hardware4Stack.GetMemory(cur_mem_space);
- SetBoldColor(COLOR_BLUE);
- Print(MEMORY_Y + 1, MEMORY_X + 8, " Space ");
- SetColor(COLOR_WHITE);
- Print(MEMORY_Y + 1, MEMORY_X + 15, "%2d", cur_mem_space);
-
- Print(MEMORY_Y + 1, MEMORY_X + 17, ":");
- Print(MEMORY_Y + 1, MEMORY_X + 18, "%4d", memory.GetSize());
-
-
-
- // Nothing past this point gets executed for empty creatures....
- if (memory.GetSize() == 0) {
- for (int i = -MEMORY_PRE_SIZE; i <= MEMORY_POST_SIZE; i++) {
- HLine(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X, 36);
- }
- return;
- }
-
- int adj_inst_ptr = 0;
- int base_inst_ptr = cur_ip.GetPosition();
- if (base_inst_ptr < 0 || parasite_zoom == true) base_inst_ptr = 0;
-
- const cInstSet & inst_set = hardware4Stack.GetInstSet();
-
- // Determine the center (must be between 0 and size - 1)
- int center_pos = (base_inst_ptr + memory_offset) % memory.GetSize();
- if (center_pos < 0) center_pos += memory.GetSize();
-
- for (int i = -MEMORY_PRE_SIZE; i <= MEMORY_POST_SIZE; i++) {
- adj_inst_ptr = (center_pos + i) % (memory.GetSize() + 1);
- if (adj_inst_ptr < 0) adj_inst_ptr += memory.GetSize() + 1;
-
- if (adj_inst_ptr == memory.GetSize()) {
- HLine(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X, 36);
- } else {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X, CHAR_VLINE);
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 35, CHAR_VLINE);
-
- // If we are on the instruction about to be executed by the CPU,
- // hilight it...
- if (adj_inst_ptr == base_inst_ptr &&
- hardware4Stack.IP(cur_view_thread).GetMemSpace() == cur_mem_space) {
- SetBoldColor(COLOR_WHITE);
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 1, "%3d: ",
- adj_inst_ptr);
- SetBoldColor(COLOR_CYAN);
- } else {
- if (i == 0) SetBoldColor(COLOR_YELLOW);
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 1, "%3d: ",
- adj_inst_ptr);
- // If we are scrolling through memory, make the current position
- // yellow.
- if (i == 0) SetColor(COLOR_YELLOW);
- else SetColor(COLOR_CYAN);
- }
-
- // Print the instruction...
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 6, "%8s ",
- inst_set.GetName( memory[adj_inst_ptr] )());
-
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 15,
- " ");
-
- // Only list the "Cpy" flag or the "Inj" flag...
- if (memory.FlagCopied(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 16, "Cpy");
- }
- if (memory.FlagInjected(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 16, "Inj");
- }
-
- // Other flags we're interested in...
- if (memory.FlagMutated(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 20, "Mut");
- }
- if (memory.FlagExecuted(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 24, "Exe");
- }
- if (memory.FlagBreakpoint(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 28, "Bp");
- }
-
- if (adj_inst_ptr == hardware4Stack.GetHead(nHardware::HEAD_READ, cur_view_thread).GetPosition() &&
- cur_mem_space == hardware4Stack.GetHead(nHardware::HEAD_READ, cur_view_thread).GetMemSpace()) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 31, "R");
- }
- if (adj_inst_ptr == hardware4Stack.GetHead(nHardware::HEAD_WRITE, cur_view_thread).GetPosition() &&
- cur_mem_space == hardware4Stack.GetHead(nHardware::HEAD_WRITE, cur_view_thread).GetMemSpace()) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 32, "W");
- }
- if (adj_inst_ptr == hardware4Stack.GetHead(nHardware::HEAD_FLOW, cur_view_thread).GetPosition() &&
- cur_mem_space == hardware4Stack.GetHead(nHardware::HEAD_FLOW, cur_view_thread).GetMemSpace()) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 33, "F");
- }
- }
- SetColor(COLOR_WHITE);
- }
-
- DrawMiniMap();
-}
-
-void cZoomScreen::UpdateCPU_SMT(cHardwareBase & hardware)
-{
- cHardwareSMT& hardware4Stack = (cHardwareSMT&) hardware;
-
- if(cur_view_thread>=hardware4Stack.GetNumThreads())
- {
- cur_view_thread=0;
- cur_mem_space = hardware4Stack.IP(cur_view_thread).GetMemSpace();
- }
- //hardware4Stack.SetThread(cur_view_thread);
- cHeadMultiMem & cur_ip = hardware4Stack.IP(cur_view_thread);
-
- // Place the stacks onto the screen.
- SetBoldColor(COLOR_CYAN);
- for (int i = 0; i < 4; i++) {
- Print(REG_Y+2 + i, REG_X+6, "%11d", hardware4Stack.GetStack(0, i, cur_view_thread));
- }
-
- // Place the active stack onto the screen.
-
- // Stack AX
- //SetBoldColor(COLOR_CYAN); // -Redundant
- SetColor(COLOR_WHITE);
-
- Print(STACK_Y, STACK_X + 2, "Stack :");
- Print(STACK_Y, STACK_X + 8, "%cX" , 'A' + cur_stack);
-
- //SetBoldColor(COLOR_CYAN);
- //Print(STACK_Y+2, STACK_X + 2, "%11d", hardware4Stack.GetStack(0, cur_stack));
- SetColor(COLOR_CYAN);
- for (int i = 0; i <= 3; i++) {
- Print(STACK_Y+2 + i, STACK_X+2, "%11d", hardware4Stack.GetStack(i, cur_stack, cur_view_thread));
- }
-
- Print(19, 74, "%2d/%2d", cur_view_thread + 1,
- hardware4Stack.GetNumThreads());
-
- // This line gets the creature that is currently executing. Usually the
- // creature we are viewing, but can also be a different one (if this is a
- // parasite).
-
- const cCPUMemory & memory = hardware4Stack.GetMemory(cur_mem_space);
- SetBoldColor(COLOR_BLUE);
- Print(MEMORY_Y + 1, MEMORY_X + 8, " Space ");
- SetColor(COLOR_WHITE);
- Print(MEMORY_Y + 1, MEMORY_X + 15, "%2d", cur_mem_space);
-
- Print(MEMORY_Y + 1, MEMORY_X + 17, ":");
- Print(MEMORY_Y + 1, MEMORY_X + 18, "%4d", memory.GetSize());
-
-
-
- // Nothing past this point gets executed for empty creatures....
- if (memory.GetSize() == 0) {
- for (int i = -MEMORY_PRE_SIZE; i <= MEMORY_POST_SIZE; i++) {
- HLine(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X, 36);
- }
- return;
- }
-
- int adj_inst_ptr = 0;
- int base_inst_ptr = cur_ip.GetPosition();
- if (base_inst_ptr < 0 || parasite_zoom == true) base_inst_ptr = 0;
-
- const cInstSet & inst_set = hardware4Stack.GetInstSet();
-
- // Determine the center (must be between 0 and size - 1)
- int center_pos = (base_inst_ptr + memory_offset) % memory.GetSize();
- if (center_pos < 0) center_pos += memory.GetSize();
-
- for (int i = -MEMORY_PRE_SIZE; i <= MEMORY_POST_SIZE; i++) {
- adj_inst_ptr = (center_pos + i) % (memory.GetSize() + 1);
- if (adj_inst_ptr < 0) adj_inst_ptr += memory.GetSize() + 1;
-
- if (adj_inst_ptr == memory.GetSize()) {
- HLine(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X, 36);
- } else {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X, CHAR_VLINE);
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 35, CHAR_VLINE);
-
- // If we are on the instruction about to be executed by the CPU,
- // hilight it...
- if (adj_inst_ptr == base_inst_ptr &&
- hardware4Stack.IP(cur_view_thread).GetMemSpace() == cur_mem_space) {
- SetBoldColor(COLOR_WHITE);
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 1, "%3d: ",
- adj_inst_ptr);
- SetBoldColor(COLOR_CYAN);
- } else {
- if (i == 0) SetBoldColor(COLOR_YELLOW);
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 1, "%3d: ",
- adj_inst_ptr);
- // If we are scrolling through memory, make the current position
- // yellow.
- if (i == 0) SetColor(COLOR_YELLOW);
- else SetColor(COLOR_CYAN);
- }
-
- // Print the instruction...
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 6, "%8s ",
- inst_set.GetName( memory[adj_inst_ptr] )());
-
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 15,
- " ");
-
- // Only list the "Cpy" flag or the "Inj" flag...
- if (memory.FlagCopied(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 16, "Cpy");
- }
- if (memory.FlagInjected(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 16, "Inj");
- }
-
- // Other flags we're interested in...
- if (memory.FlagMutated(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 20, "Mut");
- }
- if (memory.FlagExecuted(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 24, "Exe");
- }
- if (memory.FlagBreakpoint(adj_inst_ptr) == true) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 28, "Bp");
- }
-
- if (adj_inst_ptr == hardware4Stack.GetHead(nHardware::HEAD_READ, cur_view_thread).GetPosition() &&
- cur_mem_space == hardware4Stack.GetHead(nHardware::HEAD_READ, cur_view_thread).GetMemSpace()) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 31, "R");
- }
- if (adj_inst_ptr == hardware4Stack.GetHead(nHardware::HEAD_WRITE, cur_view_thread).GetPosition() &&
- cur_mem_space == hardware4Stack.GetHead(nHardware::HEAD_WRITE, cur_view_thread).GetMemSpace()) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 32, "W");
- }
- if (adj_inst_ptr == hardware4Stack.GetHead(nHardware::HEAD_FLOW, cur_view_thread).GetPosition() &&
- cur_mem_space == hardware4Stack.GetHead(nHardware::HEAD_FLOW, cur_view_thread).GetMemSpace()) {
- Print(MEMORY_Y + MEMORY_PRE_SIZE + 3 + i, MEMORY_X + 33, "F");
- }
- }
- SetColor(COLOR_WHITE);
- }
-
- DrawMiniMap();
-}
-
-void cZoomScreen::UpdateGenotype()
-{
- SetBoldColor(COLOR_CYAN);
-
- Print(1, 12, "%9d", info.GetActiveGenotypeID());
- Print(2, 12, "%9s", info.GetActiveName()());
- Print(3, 12, "%9d", info.GetActiveSpeciesID());
-
- if (info.GetActiveGenotype() != NULL) {
- cGenotype & genotype = *(info.GetActiveGenotype());
- Print(5, 12, "%9d", genotype.GetNumOrganisms());
- Print(6, 12, "%9d", genotype.GetLength());
- Print(7, 12, "%9d", genotype.GetCopiedSize());
- Print(8, 12, "%9d", genotype.GetExecutedSize());
-
- PrintFitness(10, 14, genotype.GetFitness());
- Print(11, 12, "%9f", genotype.GetGestationTime());
- Print(12, 14, "%9f", genotype.GetMerit());
- Print(13, 12, "%9f", genotype.GetReproRate());
-
- // Column 2
- Print(1, 40, "%9d", genotype.GetUpdateBorn());
- Print(2, 40, "%9d", genotype.GetParentID());
- Print(3, 40, "%9d", genotype.GetParentDistance());
- Print(4, 40, "%9d", genotype.GetDepth());
-
- Print(7, 40, "%9d", genotype.GetThisDeaths());
- Print(8, 40, "%9d", genotype.GetThisBirths());
- Print(9, 40, "%9d", genotype.GetThisBreedTrue());
- Print(10, 40, "%9d", genotype.GetThisBreedIn());
- Print(11, 40, "%9d", genotype.GetThisBirths() - genotype.GetThisBreedTrue());
-
- Print(14, 40, "%9d", genotype.GetTotalOrganisms());
- Print(15, 40, "%9d", genotype.GetBirths());
- Print(16, 40, "%9d", genotype.GetBreedTrue());
- Print(17, 40, "%9d", genotype.GetBreedIn());
- Print(18, 40, "%9d", genotype.GetBirths() - genotype.GetBreedTrue());
- }
- else {
- Print(5, 12, " -------");
- Print(6, 12, " -------");
- Print(7, 12, " -------");
- Print(8, 12, " -------");
-
- Print(10, 12, " -------");
- Print(11, 12, " -------");
- Print(12, 12, " -------");
- Print(13, 12, " -------");
-
- // Column 2
- Print(1, 40, " -------");
- Print(2, 40, " -------");
- Print(3, 40, " -------");
- Print(4, 40, " -------");
-
- Print(7, 40, " -------");
- Print(8, 40, " -------");
- Print(9, 40, " -------");
- Print(10, 40, " -------");
- Print(11, 40, " -------");
-
- Print(14, 40, " -------");
- Print(15, 40, " -------");
- Print(16, 40, " -------");
- Print(17, 40, " -------");
- Print(18, 40, " -------");
- }
-}
-
-void cZoomScreen::EditMemory()
-{
- // Collect all of the needed variables.
- cHardwareCPU & hardware =
- (cHardwareCPU &) info.GetActiveCell()->GetOrganism()->GetHardware();
- const cInstSet & inst_set = hardware.GetInstSet();
- cHeadCPU edit_head( hardware.IP() );
- if (parasite_zoom == true) {
- edit_head.Set(0, &(info.GetActiveCell()->GetOrganism()->GetHardware()) );
- }
- edit_head.LoopJump(memory_offset);
-
- // Assemble first choice window.
- cMenuWindow menu1(NUM_INST_EDITS);
- menu1.SetTitle("Choose Edit method:");
- menu1.AddOption(INST_EDIT_BREAKPOINT, "Toggle [B]reakpoint");
- menu1.AddOption(INST_EDIT_JUMP_IP, "[J]ump IP");
- menu1.AddOption(INST_EDIT_CHANGE, "[E]dit Instruction");
- menu1.AddOption(INST_EDIT_INSERT, "[I]nsert Instruction");
- menu1.AddOption(INST_EDIT_REMOVE, "[D]elete Instruction");
- menu1.SetActive(INST_EDIT_CHANGE);
- int edit_method = menu1.Activate();
- cView::Redraw();
-
- // If we need to choose a new instruction, bring up a window for it.
-
- int new_inst = 0;
- if (edit_method == INST_EDIT_CHANGE || edit_method == INST_EDIT_INSERT) {
- cMenuWindow inst_menu(inst_set.GetSize());
- inst_menu.SetTitle("Choose new instruction: ");
- for (int j = 0; j < inst_set.GetSize(); j++) {
- inst_menu.AddOption(j, inst_set.GetName(j)());
- }
- inst_menu.SetActive(edit_head.GetInst().GetOp());
- new_inst = inst_menu.Activate();
-
- cView::Redraw();
- if (new_inst == -1) {
- // cView::Notify("Aborted!");
- return;
- }
- }
-
- // Finally, act on the edit method!
- switch (edit_method) {
- case INST_EDIT_BREAKPOINT:
- ToggleBool( edit_head.FlagBreakpoint() );
- break;
- case INST_EDIT_JUMP_IP:
- hardware.IP() = edit_head;
- memory_offset = 0;
- break;
- case INST_EDIT_CHANGE:
- edit_head.SetInst(cInstruction(new_inst));
- break;
- case INST_EDIT_INSERT:
- edit_head.InsertInst(cInstruction(new_inst));
- break;
- case INST_EDIT_REMOVE:
- edit_head.RemoveInst();
- break;
- default:
- // cView::Notify("Aborted!");
- break;
- }
-
- Update();
-}
-
-void cZoomScreen::ViewMemory()
-{
- // Collect all of the needed variables.
- cHardwareCPU& hardware = (cHardwareCPU&) info.GetActiveCell()->GetOrganism()->GetHardware();
- cHeadCPU view_head( hardware.IP() );
- if (parasite_zoom == true) {
- view_head.Set(0, &(info.GetActiveCell()->GetOrganism()->GetHardware()) );
- }
- view_head.LoopJump(memory_offset);
-
- // Act on the view method!
- if (inst_view_mode == true) inst_view_mode = false;
- else inst_view_mode = true;
-
- Update();
-}
-
-void cZoomScreen::ThreadOptions()
-{
- int thread_method = THREAD_OPTIONS_VIEW;
-
- // Assemble first choice window.
- cMenuWindow menu1(NUM_THREAD_OPTIONS);
- menu1.SetTitle("Choose threading option:");
- menu1.AddOption(THREAD_OPTIONS_VIEW, "[V]iew Thread Info");
- menu1.AddOption(THREAD_OPTIONS_LOCK, "[T]oggle Thread Lock");
- menu1.SetActive(THREAD_OPTIONS_VIEW);
- thread_method = menu1.Activate();
- cView::Redraw();
-
- // Act on the view method!
- switch (thread_method) {
- case THREAD_OPTIONS_VIEW:
- ViewThreads();
- break;
- case THREAD_OPTIONS_LOCK:
- if (info.GetThreadLock() != -1) info.SetThreadLock(-1);
- else {
- cHardwareCPU & hardware =
- (cHardwareCPU &) info.GetActiveCell()->GetOrganism()->GetHardware();
- info.SetThreadLock( hardware.GetCurThread() );
- }
-
- break;
- default:
- break;
- }
-
- Update();
-}
-
-void cZoomScreen::ViewInstruction()
-{
- cTextWindow * window = new cTextWindow(10, 40, 7, 20);
- window->SetBoldColor(COLOR_WHITE);
- window->Box();
-
- // Place the data.
-
- cHardwareCPU & hardware =
- (cHardwareCPU &) info.GetActiveCell()->GetOrganism()->GetHardware();
- cHeadCPU inst_ptr( hardware.IP() );
- if (parasite_zoom == true) {
- inst_ptr.Set(0, &(info.GetActiveCell()->GetOrganism()->GetHardware()) );
- }
- inst_ptr.LoopJump(memory_offset);
-
- const cInstSet & inst_set = hardware.GetInstSet();
-
- window->SetBoldColor(COLOR_YELLOW);
- window->Print(2, 16, "%s", inst_set.GetName(inst_ptr.GetInst())());
-
- window->SetBoldColor(COLOR_WHITE);
-
- window->Print(2, 2, "Instruction: ");
- window->Print(4, 2, "Line Num...: ");
- window->Print(6, 2, "Redundancy.: ");
- window->Print(7, 2, "Cost.......: ");
-
- window->SetBoldColor(COLOR_CYAN);
-
- const int inst_id = inst_ptr.GetInst().GetOp();
-
- window->Print(4, 14, "%3d", inst_ptr.GetPosition());
- window->Print(6, 14, "%3d", inst_set.GetRedundancy(cInstruction(inst_id)) );
- window->Print(7, 14, "%3d", inst_set.GetCost(cInstruction(inst_id)) );
-
- if (inst_ptr.FlagCopied() == true) window->SetBoldColor(COLOR_CYAN);
- else window->SetColor(COLOR_CYAN);
- window->Print(4, 25, "Copied");
-
- if (inst_ptr.FlagMutated() == true) window->SetBoldColor(COLOR_CYAN);
- else window->SetColor(COLOR_CYAN);
- window->Print(5, 25, "Mutated");
-
- if (inst_ptr.FlagExecuted() == true) window->SetBoldColor(COLOR_CYAN);
- else window->SetColor(COLOR_CYAN);
- window->Print(6, 25, "Executed");
-
- if (inst_ptr.FlagBreakpoint() == true) window->SetBoldColor(COLOR_CYAN);
- else window->SetColor(COLOR_CYAN);
- window->Print(7, 25, "Breakpoint");
-
-
- // Print it!
- window->Refresh();
-
- // Wait for the results.
- bool finished = false;
- int cur_char;
-
- while (finished == false) {
- cur_char = GetInput();
- switch (cur_char) {
- case 'q':
- case 'Q':
- case ' ':
- case '\n':
- case '\r':
- finished = true;
- break;
- }
- }
-
- delete window;
- cView::Redraw();
-}
-
-void cZoomScreen::ViewRegisters()
-{
- cTextWindow * window = new cTextWindow(9, 54, 4, 13);
- cHardwareCPU & hardware =
- (cHardwareCPU &) info.GetActiveCell()->GetOrganism()->GetHardware();
-
- window->SetBoldColor(COLOR_WHITE);
- window->Box();
-
- window->Print(2, 2, "Registers");
-
- for (int i = 0; i < 3; i++) {
- const char reg_letter = 'A' + i;
- const int reg_value = hardware.GetRegister(i);
- window->SetBoldColor(COLOR_WHITE);
- window->Print(4+i, 2, "%cX:", reg_letter);
- window->Print(4+i, 17, '[');
- window->Print(4+i, 50, ']');
- window->SetBoldColor(COLOR_CYAN);
- window->Print(4+i, 6, "%10d", reg_value);
- window->PrintBinary(4+i, 18, reg_value);
- }
-
- // Print it!
- window->Refresh();
-
- // Wait for the results.
- bool finished = false;
- while (!finished) {
- int cur_char = GetInput();
- switch (cur_char) {
- case 'q':
- case 'Q':
- case ' ':
- case '\n':
- case '\r':
- finished = true;
- break;
- }
- }
-
- delete window;
- cView::Redraw();
-}
-
-
-void cZoomScreen::ViewStack()
-{
- cTextWindow * window = new cTextWindow(16, 50, 4, 15);
- cHardwareCPU & hardware =
- (cHardwareCPU &) info.GetActiveCell()->GetOrganism()->GetHardware();
-
- bool finished = false;
- int active_stack = hardware.GetActiveStack();
-
-
- while (finished == false) {
- window->SetBoldColor(COLOR_WHITE);
- window->Box();
-
- char stack_letter = 'A' + active_stack;
- window->Print(2, 5, "[<] Stack %c [>]", stack_letter);
- window->SetBoldColor(COLOR_CYAN);
- window->Print(2, 6, '<');
- window->Print(2, 18, '>');
-
- window->SetBoldColor(COLOR_WHITE);
- for (int i = 0; i < 10; i++) {
- const int stack_value = hardware.GetStack(i,active_stack);
- window->Print(4+i, 2, "%10d : ", stack_value);
- window->PrintBinary(4+i, 15, stack_value);
- }
-
- // Print it!
- window->Refresh();
-
- // Wait for the results.
- bool legal_keypress = false;
- while (!legal_keypress) {
- int cur_char = GetInput();
- switch (cur_char) {
- case ',':
- case '<':
- case '.':
- case '>':
- active_stack = 1 - active_stack;
- legal_keypress = true;
- break;
- case 'q':
- case 'Q':
- case ' ':
- case '\n':
- case '\r':
- finished = true;
- legal_keypress = true;
- break;
- }
- }
-
- }
-
- delete window;
- cView::Redraw();
-}
-
-
-void cZoomScreen::ViewInputs()
-{
- cTextWindow * window = new cTextWindow(9, 54, 4, 13);
-
- window->SetBoldColor(COLOR_WHITE);
- window->Box();
-
- window->Print(2, 2, "Inputs");
-
- for (int i = 0; i < 3; i++) {
- const int input_value = info.GetActiveCell()->GetInput(i);
- window->SetBoldColor(COLOR_WHITE);
- window->Print(4+i, 2, "%d:", i);
- window->Print(4+i, 17, '[');
- window->Print(4+i, 50, ']');
- window->SetBoldColor(COLOR_CYAN);
- window->Print(4+i, 6, "%10d", input_value);
- window->PrintBinary(4+i, 18, input_value);
- }
-
- // Print it!
- window->Refresh();
-
- // Wait for the results.
- bool finished = false;
- while (finished == false) {
- int cur_char = GetInput();
- switch (cur_char) {
- case 'q':
- case 'Q':
- case ' ':
- case '\n':
- case '\r':
- finished = true;
- break;
- }
- }
-
- delete window;
- cView::Redraw();
-}
-
-
-void cZoomScreen::ViewThreads()
-{
-}
-
-cCoords cZoomScreen::GetSectionCoords(int in_section)
-{
- switch (in_section) {
- case ZOOM_SECTION_MEMORY:
- return cCoords(MEMORY_X, MEMORY_Y);
- break;
-
- case ZOOM_SECTION_REGISTERS:
- if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_ORIGINAL)
- {
- return cCoords(REG_X, REG_Y);
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_4STACK)
- {
- return cCoords(REG_X, REG_Y-1);
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_SMT)
- {
- return cCoords(REG_X, REG_Y-1);
- }
- break;
-
- case ZOOM_SECTION_STACK:
- if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_ORIGINAL)
- {
- return cCoords(STACK_X, STACK_Y);
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_4STACK)
- {
- return cCoords(STACK_X, STACK_Y-1);
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_SMT)
- {
- return cCoords(STACK_X, STACK_Y-1);
- }
- break;
-
- case ZOOM_SECTION_INPUTS:
- if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_ORIGINAL)
- {
- return cCoords(INPUT_X, INPUT_Y);
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_4STACK)
- {
- return cCoords(INPUT_X, INPUT_Y-1);
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_SMT)
- {
- return cCoords(INPUT_X, INPUT_Y-1);
- }
- break;
-
- case ZOOM_SECTION_MAP:
- return cCoords(MINI_MAP_X, MINI_MAP_Y);
- break;
- }
-
- return cCoords(0,0);
-}
-
-/*
- cString cZoomScreen::GetSectionName(int in_section)
- {
- switch (in_section) {
- case ZOOM_SECTION_MEMORY:
- if(cConfig::GetHardwareType()==HARDWARE_TYPE_CPU_ORIGINAL)
- {
- return cString("Memory");
- }
- else if(cConfig::GetHardwareType()==HARDWARE_TYPE_CPU_4STACK)
- {
- return cString("Memory Space");
- }
- break;
-
- case ZOOM_SECTION_REGISTERS:
- if(cConfig::GetHardwareType()==HARDWARE_TYPE_CPU_ORIGINAL)
- {
- return cString("Registers:");
- }
- else if(cConfig::GetHardwareType()==HARDWARE_TYPE_CPU_4STACK)
- {
- return cString("Stacks:");
- }
- break;
-
- case ZOOM_SECTION_STACK:
- return cString("Stack ");
- break;
-
- case ZOOM_SECTION_INPUTS:
- return cString("Inputs:");
- break;
-
- case ZOOM_SECTION_MAP:
- return cString("Mini-Map");
- break;
- }
-
- return cString("Unknown!");
- }*/
-
-char* cZoomScreen::GetSectionName(int in_section)
-{
- switch (in_section) {
- case ZOOM_SECTION_MEMORY:
- if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_ORIGINAL)
- {
- return "Memory";
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_4STACK)
- {
- return "Memory Space";
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_SMT)
- {
- return "Memory Space";
- }
- break;
-
- case ZOOM_SECTION_REGISTERS:
- if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_ORIGINAL)
- {
- return "Registers:";
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_4STACK)
- {
- return "Stacks:";
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_SMT)
- {
- return "Stacks:";
- }
- break;
-
- case ZOOM_SECTION_STACK:
- return "Stack ";
- break;
-
- case ZOOM_SECTION_INPUTS:
- return "Inputs:";
- break;
-
- case ZOOM_SECTION_MAP:
- return "Mini-Map";
- break;
- }
-
- return "Unknown!";
-}
-
-void cZoomScreen::SetActiveSection(int in_section)
-{
- if (in_section != active_section) {
- // Set the old section to be normal white
- cCoords sect_coords(GetSectionCoords(active_section));
- sect_coords.Translate(2, 1);
- SetColor(COLOR_WHITE);
- Print(sect_coords.GetY(), sect_coords.GetX(), "%s",
- GetSectionName(active_section));
- active_section = in_section;
- }
-
- cCoords sect_coords(GetSectionCoords(active_section));
- sect_coords.Translate(2, 1);
- SetBoldColor(COLOR_BLUE);
- Print(sect_coords.GetY(), sect_coords.GetX(), "%s",
- GetSectionName(active_section));
- SetColor(COLOR_WHITE);
-}
-
-void cZoomScreen::DoInput(int in_char)
-{
- // First do the Mode specific io...
-
- if (mode == ZOOM_MODE_CPU && DoInputCPU(in_char)) return;
- if (mode == ZOOM_MODE_STATS && DoInputStats(in_char)) return;
- if (mode == ZOOM_MODE_GENOTYPE && DoInputGenotype(in_char)) return;
-
- int num_threads = 0;
- if (info.GetActiveCell()->GetOrganism() != NULL) {
- num_threads = info.GetActiveCell()->GetOrganism()->GetHardware().GetNumThreads();
- }
- switch(in_char) {
- case 't':
- case 'T':
- if(num_threads>1)
- {
- memory_offset=0;
- ++cur_view_thread%=num_threads;
- if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_4STACK)
- {
- cHardware4Stack & hardware4Stack =
- (cHardware4Stack &) info.GetActiveCell()->GetOrganism()->GetHardware();
- cur_mem_space=hardware4Stack.IP(cur_view_thread).GetMemSpace();
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_SMT)
- {
- cHardwareSMT & hardwareSMT =
- (cHardwareSMT&) info.GetActiveCell()->GetOrganism()->GetHardware();
- cur_mem_space=hardwareSMT.IP(cur_view_thread).GetMemSpace();
- }
- Update();
- }
- break;
- case ' ':
- memory_offset = 0;
- parasite_zoom = false;
- info.GetActiveCell()->GetOrganism()->GetPhenotype().SetFault("");
- info.EngageStepMode();
- break;
- case '>':
- case '.':
- mode++;
- if (mode == NUM_ZOOM_MODES) mode = 0;
- Clear();
- Draw();
- break;
- case '<':
- case ',':
- mode--;
- if (mode == -1) mode = NUM_ZOOM_MODES - 1;
-
- Clear();
- Draw();
- break;
-
- default:
- cerr << "Unknown Command (#"
- << (int) in_char << "): [" << in_char << "]" << endl;
- break;
- }
-}
-
-
-bool cZoomScreen::DoInputCPU(int in_char)
-{
- switch(in_char) {
- case '2':
- case KEY_DOWN:
- if (active_section == ZOOM_SECTION_MAP) {
- mini_center_id += map_x_size;
- mini_center_id %= population.GetSize();
- cur_view_thread=0;
- if (population.GetCell(mini_center_id).IsOccupied()) {
- memory_offset = 0;
- info.SetActiveCell( &(population.GetCell(mini_center_id)));
- }
- Update();
- } else if (active_section == ZOOM_SECTION_MEMORY) {
- memory_offset++;
- Update();
- }
- break;
- case '8':
- case KEY_UP:
- if (active_section == ZOOM_SECTION_MAP) {
- mini_center_id -= map_x_size;
- cur_view_thread=0;
- if (mini_center_id < 0) mini_center_id += population.GetSize();
- if (population.GetCell(mini_center_id).IsOccupied()) {
- memory_offset = 0;
- info.SetActiveCell( &(population.GetCell(mini_center_id)));
- }
- Update();
- } else if (active_section == ZOOM_SECTION_MEMORY) {
- memory_offset--;
- Update();
- }
- break;
- case '6':
- case KEY_RIGHT:
- if (active_section == ZOOM_SECTION_MAP) {
- mini_center_id++;
- if (mini_center_id == population.GetSize()) mini_center_id = 0;
- if (population.GetCell(mini_center_id).IsOccupied()) {
- memory_offset = 0;
- info.SetActiveCell( &(population.GetCell(mini_center_id)));
- }
- }
- else if (active_section == ZOOM_SECTION_MEMORY) {
- if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_4STACK)
- {
- cur_mem_space++;
- cur_mem_space %= nHardware4Stack::NUM_MEMORY_SPACES;
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get() == HARDWARE_TYPE_CPU_SMT)
- {
- cur_mem_space++;
- // @DMB - Should handle the extensibility of SMT Memory Spaces
- cur_mem_space %= 1;
- }
- }
- Update();
- break;
- case '4':
- case KEY_LEFT:
- if (active_section == ZOOM_SECTION_MAP) {
- mini_center_id--;
- if (mini_center_id < 0) mini_center_id += population.GetSize();
- if (population.GetCell(mini_center_id).IsOccupied()) {
- memory_offset = 0;
- info.SetActiveCell( &(population.GetCell(mini_center_id)));
- }
- }
- else if (active_section == ZOOM_SECTION_MEMORY) {
- if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_4STACK) {
- cur_mem_space--;
- if (cur_mem_space < 0) cur_mem_space = nHardware4Stack::NUM_MEMORY_SPACES - 1;
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_SMT) {
- cur_mem_space--;
- // @DMB - Should handle the extensibility of SMT Memory Spaces
- if (cur_mem_space < 0) cur_mem_space = 0;
- }
- }
- Update();
- break;
- case 'K':
- case 'k':
- if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_4STACK) {
- ++cur_stack%=4;
- }
- else if(info.GetConfig().HARDWARE_TYPE.Get()==HARDWARE_TYPE_CPU_SMT) {
- ++cur_stack%=4;
- }
- Update();
- break;
- case '+':
- case '=':
- info.IncMapMode();
- Update();
- break;
- case '-':
- case '_':
- info.DecMapMode();
- Update();
- break;
- case '\n':
- case '\r':
- if (active_section == ZOOM_SECTION_MAP) {
- memory_offset = 0;
- info.SetActiveCell( &(population.GetCell(mini_center_id)));
- }
- Update();
- break;
- case '\t':
- {
- int next_section = active_section + 1;
- if (next_section == NUM_ZOOM_SECTIONS) next_section = 0;
- SetActiveSection(next_section);
- }
- Refresh();
- break;
-
- case 'e':
- case 'E':
- if( active_section == ZOOM_SECTION_MEMORY) {
- EditMemory();
- }
- break;
-
- case 'v':
- case 'V':
- switch (active_section) {
- case ZOOM_SECTION_MEMORY:
- ViewMemory();
- break;
- case ZOOM_SECTION_REGISTERS:
- ViewRegisters();
- break;
- case ZOOM_SECTION_STACK:
- ViewStack();
- break;
- case ZOOM_SECTION_INPUTS:
- ViewInputs();
- break;
- }
- break;
-
-
- default:
- return false;
- };
-
-return true;
-}
-
-bool cZoomScreen::DoInputStats(int in_char)
-{
- switch(in_char) {
- case '6':
- case KEY_RIGHT:
- {
- const int new_task_offset = task_offset + Height() - TASK_Y - 2;
- if (new_task_offset < info.GetWorld().GetNumTasks()) {
- task_offset = new_task_offset;
- Draw();
- }
- }
- break;
- case '4':
- case KEY_LEFT:
- {
- const int new_task_offset = task_offset - Height() + TASK_Y + 2;
- if (new_task_offset >= 0) {
- task_offset = new_task_offset;
- Draw();
- }
- }
- break;
-
- default:
- return false;
- }
-
- return true;
-}
-
-bool cZoomScreen::DoInputGenotype(int in_char)
-{
- return false;
-}
-
-void cZoomScreen::DrawMiniMap()
-{
- // if (GetSubWindow(0) == NULL) AddSubWindow(map_screen, 0);
- // map_screen->Update();
-
- // Setup the start color for the map...
- SetColor(COLOR_WHITE);
- mini_center_id = info.GetActiveCell()->GetID();
-
- const int name_x = MINI_MAP_X + 4;
- const int name_y = MINI_MAP_Y + 11;
- if (info.GetMapMode() == MAP_BASIC) Print(name_y, name_x, "Genotypes");
- else if (info.GetMapMode() == MAP_SPECIES) Print(name_y, name_x, " Species ");
- else if (info.GetMapMode() == MAP_COMBO) Print(name_y, name_x, " Combo ");
- else if (info.GetMapMode() == MAP_INJECT) Print(name_y, name_x, "Modified ");
- else if (info.GetMapMode() == MAP_RESOURCE) Print(name_y, name_x, "Resources");
- else if (info.GetMapMode() == MAP_AGE) Print(name_y, name_x, " Age ");
- else if (info.GetMapMode() == MAP_BREED_TRUE) Print(name_y, name_x, "BreedTrue");
- else if (info.GetMapMode() == MAP_PARASITE) Print(name_y, name_x, "Parasites");
- else if (info.GetMapMode() == MAP_MUTATIONS) Print(name_y, name_x, "Mutations");
- else if (info.GetMapMode() == MAP_THREAD) Print(name_y, name_x, " Threads ");
- else if (info.GetMapMode() == MAP_LINEAGE) Print(name_y, name_x, " Lineage ");
-
-
- int virtual_x = (mini_center_id % map_x_size) + map_x_size;
- int virtual_y = (mini_center_id / map_x_size) + map_y_size;
-
- info.SetupSymbolMaps(info.GetMapMode(), HasColors());
-
- for (int y = -3; y <= 3 && y < map_y_size - 3; y++) {
- Move(MINI_MAP_Y + 6 + y, MINI_MAP_X + 2);
- int cur_y = (y + virtual_y) % map_y_size;
- for (int x = -3; x <= 3 && x < map_x_size - 3; x++) {
- int cur_x = (x + virtual_x) % map_x_size;
- int index = cur_y * map_x_size + cur_x;
-
- SetSymbolColor(info.ColorSymbol(index));
- if (info.MapSymbol(index) > 0) Print(info.MapSymbol(index));
- else Print(CHAR_BULLET);
-
- // Space between columns
- for (int i = 0; i < AVIDA_MAP_X_SPACING - 1; i++) Print(' ');
- }
- }
- SetColor(COLOR_WHITE);
- Print(MINI_MAP_Y + 6, MINI_MAP_X + 7, '[');
- Print(MINI_MAP_Y + 6, MINI_MAP_X + 9, ']');
-
- Refresh();
-}
-
Copied: development/source/targets/avida-viewer/cZoomScreen.cc (from rev 436, development/source/viewer/cZoomScreen.cc)
Deleted: development/source/targets/avida-viewer/viewer.cc
===================================================================
--- development/source/viewer/viewer.cc 2005-12-20 18:54:00 UTC (rev 425)
+++ development/source/targets/avida-viewer/viewer.cc 2006-01-15 21:54:54 UTC (rev 437)
@@ -1,41 +0,0 @@
-/*
- * viewer.cc
- * Avida
- *
- * Copyright 2005 Michigan State University. All rights reserved.
- *
- */
-
-#include <signal.h>
-
-#include "avida.h"
-#include "cAvidaConfig.h"
-#include "cAvidaDriver_Analyze.h"
-#include "cAvidaDriver_TextPopViewer.h"
-#include "cWorld.h"
-
-using namespace std;
-
-int main(int argc, char * argv[])
-{
- // Catch Interrupt making sure to close appropriately
- signal(SIGINT, ExitAvida);
-
- printVersionBanner();
-
- // Initialize the configuration data...
- cWorld* world = new cWorld(cAvidaConfig::LoadWithCmdLineArgs(argc, argv));
-
- if (world->GetConfig().ANALYZE_MODE.Get() > 0) {
- cAvidaDriver_Base::main_driver = new cAvidaDriver_Analyze(world, (world->GetConfig().ANALYZE_MODE.Get() == 2));
- } else {
- cAvidaDriver_Base::main_driver = new cAvidaDriver_TextPopViewer(world);
- }
-
- cout << endl;
-
- cAvidaDriver_Base::main_driver->Run();
-
- // Exit Nicely
- ExitAvida(0);
-}
Copied: development/source/targets/avida-viewer/viewer.cc (from rev 436, development/source/viewer/viewer.cc)
More information about the Avida-cvs
mailing list