|
From: <adr...@us...> - 2011-05-04 21:42:34
|
Revision: 4120
http://reprap.svn.sourceforge.net/reprap/?rev=4120&view=rev
Author: adrian-bowyer
Date: 2011-05-04 21:42:27 +0000 (Wed, 04 May 2011)
Log Message:
-----------
Bug whereby requests to re-send lines sometimes dropped into an infinite loop fixed.
Modified Paths:
--------------
trunk/software/host/lib/reprap.properties.dist
trunk/software/host/src/org/reprap/comms/GCodeReaderAndWriter.java
Modified: trunk/software/host/lib/reprap.properties.dist
===================================================================
--- trunk/software/host/lib/reprap.properties.dist 2011-05-04 15:44:33 UTC (rev 4119)
+++ trunk/software/host/lib/reprap.properties.dist 2011-05-04 21:42:27 UTC (rev 4120)
@@ -1,209 +1,205 @@
-#Mon Apr 04 11:22:07 BST 2011
#RepRap machine parameters. See http://objects.reprap.org/wiki/Java_Software_Preferences_File
-BaudRate=57600
-BedTemperature(C)=55
-CommsDebug=false
+#Fri Apr 29 10:43:50 BST 2011
+Extruder0_ExtrusionLastFoundationWidth(mm)=2
+Extruder2_InfillSpeed(0..1)=1
+Extruder1_FastXYFeedrate(mm/minute)=2500.0
+Extruder2_CoolingPeriod(s)=-1
+Extruder2_ExtrudeRatio(0..)=1
+Extruder0_OffsetX(mm)=0
+Extruder1_ColourB(0..1)=0.3
+Extruder3_OutlineSpeed(0..1)=0.9
+Extruder1_OffsetY(mm)=0
+Extruder2_MaterialType(name)=PLA-infill
+Extruder2_OffsetZ(mm)=0
+Extruder2_Reverse(ms)=1200
+Extruder3_SlowXYFeedrate(mm/minute)=1500.0
Debug=false
-DumpX(mm)=130
-DumpY(mm)=5
-Extruder0_Address=0
+Extruder0_ValveDelayForLayer(ms)=200
+Extruder3_CoolingPeriod(s)=0.1
+Extruder2_ArcCompensationFactor(0..)=8
+Extruder1_ExtrusionPWM(0..1)=-1
+Extruder0_ExtrusionBroadWidth(mm)=-1
+SlowZFeedrate(mm/minute)=50.0
+MaximumFeedrateX(mm/minute)=2500
+WorkingY(mm)=300
+Extruder3_ExtrusionOverRun(mm)=0
+Extruder0_InfillSpeed(0..1)=1
+Extruder2_MaxAcceleration(mm/minute/minute)=1200000.0
+Extruder3_ValvePulseTime(ms)=500
Extruder0_ArcCompensationFactor(0..)=8
-Extruder0_ArcShortSides(0..)=1
-Extruder0_ColourB(0..1)=0.6
-Extruder0_ColourG(0..1)=0.3
-Extruder0_ColourR(0..1)=0.3
-Extruder0_CoolingPeriod(s)=-1
-Extruder0_EvenHatchDirection(degrees)=45
+Extruder3_ValveDelayForLayer(ms)=200
+DumpX(mm)=143
+Extruder3_SupportMaterialType(name)=null
+Extruder1_ExtrusionLastFoundationWidth(mm)=1
+Extruder0_ExtrusionSpeed(mm/minute)=2500
+Extruder1_Address=0
+Extruder2_FastEFeedrate(mm/minute)=18000.0
+Extruder2_ExtrusionSize(mm)=0.5
+Extruder3_MiddleStart=true
+Extruder3_MaterialType(name)=PCB-pen
+Extruder3_ExtrusionHeight(mm)=0.25
+Extruder2_InFillMaterialType(name)=PLA-infill
+Extruder2_ColourG(0..1)=0.8
+Extruder2_ExtrusionDelayForLayer(ms)=500
Extruder0_ExtrudeRatio(0..)=1
-Extruder0_ExtrusionBroadWidth(mm)=-1
+Extruder2_ExtrusionOverRun(mm)=0
+Extruder2_OddHatchDirection(degrees)=-45
+Extruder1_SlowXYFeedrate(mm/minute)=1500.0
+Extruder2_ExtrusionPWM(0..1)=-1
+Extruder1_MaxAcceleration(mm/minute/minute)=1200000.0
+Extruder1_ExtrusionBroadWidth(mm)=2.5
+Extruder2_ExtrusionHeight(mm)=0.25
+Extruder1_ValveDelayForPolygon(ms)=200
+Extruder2_ExtrusionInfillWidth(mm)=1.5
+Extruder3_ExtrusionDelayForPolygon(ms)=500
Extruder0_ExtrusionDelayForLayer(ms)=500
-Extruder0_ExtrusionDelayForPolygon(ms)=0
-Extruder0_ExtrusionFoundationWidth(mm)=2
-Extruder0_ExtrusionHeight(mm)=0.3
-Extruder0_ExtrusionInfillWidth(mm)=0.7
-Extruder0_ExtrusionLastFoundationWidth(mm)=2
-Extruder0_ExtrusionOverRun(mm)=-1
-Extruder0_ExtrusionPercentInfill(0..1)=0.71
-Extruder0_ExtrusionPWM(0..1)=-1
+Extruder1_SupportMaterialType(name)=null
+Extruder0_OddHatchDirection(degrees)=-45
+Port(name)=/dev/ttyUSB0
+Extruder2_ExtrusionDelayForPolygon(ms)=50
+BaudRate=57600
+Extruder3_NumberOfShells(0..N)=1
+Extruder1_OffsetX(mm)=0
+Extruder0_ColourR(0..1)=0.3
+Extruder2_OffsetY(mm)=0
+Extruder1_ExtrusionDelayForPolygon(ms)=50
+Extruder2_ColourB(0..1)=0.3
+Extruder3_OffsetZ(mm)=0
+Extruder1_ExtrusionHeight(mm)=0.25
+Extruder3_ColourR(0..1)=0.3
+Extruder0_MiddleStart=true
+Extruder3_Reverse(ms)=400
+Extruder2_InfillOverlap(mm)=0.2
+Extruder0_ArcShortSides(0..)=1
Extruder0_ExtrusionSize(mm)=0.5
-Extruder0_ExtrusionSpeed(mm/minute)=3500
-Extruder0_ExtrusionTemp(C)=220
-Extruder0_FastEFeedrate(mm/minute)=18000.0
-Extruder0_FastXYFeedrate(mm/minute)=4000.0
-Extruder0_InFillMaterialType(name)=PLA-infill
-Extruder0_InfillOverlap(mm)=0.2
-Extruder0_InfillSpeed(0..1)=1
-Extruder0_Lift(mm)=0
-Extruder0_MaterialType(name)=PLA
+Extruder2_FastXYFeedrate(mm/minute)=2500.0
+Shield=false
+Extruder0_ExtrusionDelayForPolygon(ms)=50
+Extruder1_ExtrusionOverRun(mm)=3
+FoundationLayers=0
+Extruder2_ExtrusionLastFoundationWidth(mm)=2
+Extruder3_InfillSpeed(0..1)=0.9
+Extruder0_Reverse(ms)=1200
+WorkingX(mm)=300
+Extruder0_ExtrusionHeight(mm)=0.25
Extruder0_MaxAcceleration(mm/minute/minute)=1200000.0
-Extruder0_MiddleStart=true
-Extruder0_NumberOfShells(0..N)=2
-Extruder0_OddHatchDirection(degrees)=-45
-Extruder0_OffsetX(mm)=0
-Extruder0_OffsetY(mm)=0
+Extruder3_ExtrusionSpeed(mm/minute)=2500
+Extruder1_ValveDelayForLayer(ms)=200
+Extruder2_NumberOfShells(0..N)=1
+Extruder3_ExtrusionPWM(0..1)=-1
+Extruder2_ExtrusionBroadWidth(mm)=6
Extruder0_OffsetZ(mm)=0
+Extruder0_InfillOverlap(mm)=0.2
+Extruder0_ExtrusionTemp(C)=205
+Extruder0_ExtrusionOverRun(mm)=-1
+Extruder3_ExtrusionLastFoundationWidth(mm)=2
+Extruder3_ExtrudeRatio(0..)=1
+MaximumFeedrateY(mm/minute)=2500
Extruder0_OutlineSpeed(0..1)=0.9
-Extruder0_Purge(ms)=30000
-Extruder0_Reverse(ms)=1200
-Extruder0_SlowXYFeedrate(mm/minute)=1500.0
-Extruder0_SupportMaterialType(name)=null
-Extruder0_ValveDelayForLayer(ms)=200
-Extruder0_ValveDelayForPolygon(ms)=200
-Extruder0_ValveOverRun(mm)=-1
+Extruder1_InfillSpeed(0..1)=1
+NumberOfExtruders=4
+Extruder0_ColourG(0..1)=0.3
+Extruder2_Address=0
+MaxXYAcceleration(mm/mininute/minute)=1200000
+Extruder2_ValveDelayForPolygon(ms)=200
+Extruder0_FastEFeedrate(mm/minute)=18000.0
+Extruder3_ColourG(0..1)=0.3
+Extruder3_FastEFeedrate(mm/minute)=8000.0
+Extruder0_InFillMaterialType(name)=PLA-infill
+Extruder1_ExtrusionTemp(C)=205
+Extruder1_NumberOfShells(0..N)=0
+Extruder3_ArcCompensationFactor(0..)=8
+Extruder0_FastXYFeedrate(mm/minute)=2500.0
+Extruder3_InFillMaterialType(name)=null
+FiveD=true
+BedTemperature(C)=65
+FinishY(mm)=190
Extruder0_ValvePulseTime(ms)=-500
-Extruder1_Address=0
Extruder1_ArcCompensationFactor(0..)=8
+Extruder0_ExtrusionInfillWidth(mm)=0.5
Extruder1_ArcShortSides(0..)=1
-Extruder1_ColourB(0..1)=0.3
-Extruder1_ColourG(0..1)=0.6
-Extruder1_ColourR(0..1)=0.9
-Extruder1_CoolingPeriod(s)=-1
-Extruder1_EvenHatchDirection(degrees)=45
+Extruder2_OffsetX(mm)=0
+Extruder2_SlowXYFeedrate(mm/minute)=1500.0
+Extruder3_ExtrusionSize(mm)=0.3
+Extruder3_ExtrusionBroadWidth(mm)=6
+Extruder3_ExtrusionInfillWidth(mm)=1.5
+Extruder3_OffsetY(mm)=0
+Extruder1_ExtrusionSpeed(mm/minute)=2500
+Extruder0_ColourB(0..1)=0.6
Extruder1_ExtrudeRatio(0..)=1
-Extruder1_ExtrusionBroadWidth(mm)=2.5
-Extruder1_ExtrusionDelayForLayer(ms)=500
-Extruder1_ExtrusionDelayForPolygon(ms)=0
-Extruder1_ExtrusionFoundationWidth(mm)=2
-Extruder1_ExtrusionHeight(mm)=0.3
-Extruder1_ExtrusionInfillWidth(mm)=2.5
-Extruder1_ExtrusionLastFoundationWidth(mm)=1
-Extruder1_ExtrusionOverRun(mm)=3
-Extruder1_ExtrusionPWM(0..1)=-1
-Extruder1_ExtrusionSize(mm)=0.5
-Extruder1_ExtrusionSpeed(mm/minute)=3500
-Extruder1_ExtrusionTemp(C)=220
-Extruder1_FastEFeedrate(mm/minute)=18000.0
-Extruder1_FastXYFeedrate(mm/minute)=4000.0
-Extruder1_InFillMaterialType(name)=PLA-support
-Extruder1_InfillOverlap(mm)=0
-Extruder1_InfillSpeed(0..1)=1
-Extruder1_Lift(mm)=0
-Extruder1_MaterialType(name)=PLA-support
-Extruder1_MaxAcceleration(mm/minute/minute)=1200000.0
+Extruder1_ColourR(0..1)=0.9
Extruder1_MiddleStart=true
-Extruder1_NumberOfShells(0..N)=0
-Extruder1_OddHatchDirection(degrees)=45
-Extruder1_OffsetX(mm)=0
-Extruder1_OffsetY(mm)=0
-Extruder1_OffsetZ(mm)=0
+Extruder3_ColourB(0..1)=0.3
+Extruder0_ValveOverRun(mm)=-1
+Extruder0_Lift(mm)=0
+Extruder0_NumberOfShells(0..N)=2
+Extruder3_EvenHatchDirection(degrees)=45
Extruder1_OutlineSpeed(0..1)=0.9
-Extruder1_ExtrusionPercentInfill(0..1)=0.20
-Extruder1_Purge(ms)=30000
-Extruder1_Reverse(ms)=1200
-Extruder1_SlowXYFeedrate(mm/minute)=1500.0
-Extruder1_SupportMaterialType(name)=null
-Extruder1_ValveDelayForLayer(ms)=200
-Extruder1_ValveDelayForPolygon(ms)=200
+Extruder0_Purge(ms)=30000
+Extruder0_MaterialType(name)=PLA
+Extruder3_ExtrusionDelayForLayer(ms)=600
+Extruder2_ExtrusionTemp(C)=205
+Extruder3_OddHatchDirection(degrees)=-45
Extruder1_ValveOverRun(mm)=2
+Extruder2_SupportMaterialType(name)=null
+PathOptimise=true
+Extruder0_OffsetY(mm)=0
+Extruder1_OffsetZ(mm)=0
+Extruder1_Reverse(ms)=1200
+Extruder1_ExtrusionDelayForLayer(ms)=500
+Extruder1_Lift(mm)=0
+InterLayerCooling=true
+Extruder0_CoolingPeriod(s)=-1
Extruder1_ValvePulseTime(ms)=-500
-Extruder2_Address=0
-Extruder2_ArcCompensationFactor(0..)=8
-Extruder2_ArcShortSides(0..)=1
-Extruder2_ColourB(0..1)=0.3
-Extruder2_ColourG(0..1)=0.8
-Extruder2_ColourR(0..1)=0.3
-Extruder2_CoolingPeriod(s)=-1
+Extruder1_OddHatchDirection(degrees)=45
Extruder2_EvenHatchDirection(degrees)=45
-Extruder2_ExtrudeRatio(0..)=1
-Extruder2_ExtrusionBroadWidth(mm)=6
-Extruder2_ExtrusionDelayForLayer(ms)=500
-Extruder2_ExtrusionDelayForPolygon(ms)=0
-Extruder2_ExtrusionFoundationWidth(mm)=2
-Extruder2_ExtrusionHeight(mm)=0.3
-Extruder2_ExtrusionInfillWidth(mm)=1.5
-Extruder2_ExtrusionLastFoundationWidth(mm)=2
-Extruder2_ExtrusionOverRun(mm)=0
-Extruder2_ExtrusionPercentInfill(0..1)=0.33
-Extruder2_ExtrusionPWM(0..1)=-1
-Extruder2_ExtrusionSize(mm)=0.5
-Extruder2_ExtrusionSpeed(mm/minute)=3500
-Extruder2_ExtrusionTemp(C)=220
-Extruder2_FastEFeedrate(mm/minute)=18000.0
-Extruder2_FastXYFeedrate(mm/minute)=4000.0
-Extruder2_InFillMaterialType(name)=PLA-infill
-Extruder2_InfillOverlap(mm)=0.2
-Extruder2_InfillSpeed(0..1)=1
+SlowXYFeedrate(mm/minute)=1500.0
+Extruder1_Purge(ms)=30000
+Extruder1_EvenHatchDirection(degrees)=45
+Extruder3_Address=1
+Extruder3_ExtrusionTemp(C)=0
+Extruder2_ValveDelayForLayer(ms)=200
+Extruder0_EvenHatchDirection(degrees)=45
+Extruder2_ArcShortSides(0..)=1
+Extruder3_FastXYFeedrate(mm/minute)=2500.0
+Extruder2_ValveOverRun(mm)=2
+Extruder0_SlowXYFeedrate(mm/minute)=1500.0
+Extruder3_InfillOverlap(mm)=0.2
+WorkingZ(mm)=300
+Extruder1_ExtrusionSize(mm)=0.5
+CommsDebug=false
+Extruder1_CoolingPeriod(s)=-1
+Extruder0_Address=0
Extruder2_Lift(mm)=0
-Extruder2_MaterialType(name)=PLA-infill
-Extruder2_MaxAcceleration(mm/minute/minute)=1200000.0
-Extruder2_MiddleStart=true
-Extruder2_NumberOfShells(0..N)=1
-Extruder2_OddHatchDirection(degrees)=-45
-Extruder2_OffsetX(mm)=0
-Extruder2_OffsetY(mm)=0
-Extruder2_OffsetZ(mm)=0
Extruder2_OutlineSpeed(0..1)=0.9
+DumpY(mm)=5
+Extruder1_FastEFeedrate(mm/minute)=18000.0
+Extruder3_ValveDelayForPolygon(ms)=200
Extruder2_Purge(ms)=30000
-Extruder2_Reverse(ms)=1200
-Extruder2_SeparationOutlineSpeed(0..1)=1
-Extruder2_SlowXYFeedrate(mm/minute)=1500.0
-Extruder2_SupportMaterialType(name)=null
-Extruder2_ValveDelayForLayer(ms)=200
-Extruder2_ValveDelayForPolygon(ms)=200
-Extruder2_ValveOverRun(mm)=2
-Extruder2_ValvePulseTime(ms)=-500
-Extruder3_Address=1
-Extruder3_ArcCompensationFactor(0..)=8
-Extruder3_ArcShortSides(0..)=1
-Extruder3_ColourB(0..1)=0.3
-Extruder3_ColourG(0..1)=0.3
-Extruder3_ColourR(0..1)=0.3
-Extruder3_CoolingPeriod(s)=0.1
-Extruder3_EvenHatchDirection(degrees)=45
-Extruder3_ExtrudeRatio(0..)=1
-Extruder3_ExtrusionBroadWidth(mm)=6
-Extruder3_ExtrusionDelayForLayer(ms)=600
-Extruder3_ExtrusionDelayForPolygon(ms)=500
+Extruder1_MaterialType(name)=PLA-support
+FinishX(mm)=10
Extruder3_ExtrusionFoundationWidth(mm)=2
-Extruder3_ExtrusionHeight(mm)=0.3
-Extruder3_ExtrusionInfillWidth(mm)=1.5
-Extruder3_ExtrusionLastFoundationWidth(mm)=2
-Extruder3_ExtrusionOverRun(mm)=0
-Extruder3_ExtrusionPercentInfill(0..1)=0.20
-Extruder3_ExtrusionPWM(0..1)=-1
-Extruder3_ExtrusionSize(mm)=0.3
-Extruder3_ExtrusionSpeed(mm/minute)=3000
-Extruder3_ExtrusionTemp(C)=0
-Extruder3_FastEFeedrate(mm/minute)=8000.0
-Extruder3_FastXYFeedrate(mm/minute)=3000.0
-Extruder3_InFillMaterialType(name)=null
-Extruder3_InfillOverlap(mm)=0.2
-Extruder3_InfillSpeed(0..1)=0.9
-Extruder3_Lift(mm)=1
-Extruder3_MaterialType(name)=PCB-pen
-Extruder3_MaxAcceleration(mm/minute/minute)=1200000.0
-Extruder3_MiddleStart=true
-Extruder3_NumberOfShells(0..N)=1
-Extruder3_OddHatchDirection(degrees)=-45
+Extruder1_InFillMaterialType(name)=PLA-support
+Extruder2_ExtrusionFoundationWidth(mm)=2
Extruder3_OffsetX(mm)=0
-Extruder3_OffsetY(mm)=0
-Extruder3_OffsetZ(mm)=0
-Extruder3_OutlineSpeed(0..1)=0.9
-Extruder3_Purge(ms)=10000
-Extruder3_Reverse(ms)=400
+MaximumFeedrateZ(mm/minute)=50
+Extruder0_ExtrusionPWM(0..1)=-1
+Extruder1_ColourG(0..1)=0.6
+Extruder1_ExtrusionFoundationWidth(mm)=2
+Extruder2_MiddleStart=true
+MaxZAcceleration(mm/mininute/minute)=3000
+Extruder0_ValveDelayForPolygon(ms)=200
+Extruder0_SupportMaterialType(name)=null
+Extruder2_ColourR(0..1)=0.3
+Extruder1_ExtrusionInfillWidth(mm)=2
+Extruder0_ExtrusionFoundationWidth(mm)=2
+Extruder3_Lift(mm)=0
+Extruder2_ValvePulseTime(ms)=-500
+Extruder1_InfillOverlap(mm)=0
Extruder3_SeparationOutlineSpeed(0..1)=1
-Extruder3_SlowXYFeedrate(mm/minute)=1500.0
-Extruder3_SupportMaterialType(name)=null
-Extruder3_ValveDelayForLayer(ms)=200
-Extruder3_ValveDelayForPolygon(ms)=200
Extruder3_ValveOverRun(mm)=2
-Extruder3_ValvePulseTime(ms)=500
-FinishX(mm)=10
-FinishY(mm)=190
-FiveD=true
-FoundationLayers=0
-InterLayerCooling=true
-MaxXYAcceleration(mm/mininute/minute)=1200000
-MaxZAcceleration(mm/mininute/minute)=3000
-MaximumFeedrateX(mm/minute)=3500
-MaximumFeedrateY(mm/minute)=3500
-MaximumFeedrateZ(mm/minute)=50
-NumberOfExtruders=4
-PathOptimise=true
-Port(name)=/dev/ttyUSB0
-Shield=true
-SlowXYFeedrate(mm/minute)=1500.0
-SlowZFeedrate(mm/minute)=50.0
-WorkingX(mm)=200
-WorkingY(mm)=200
-WorkingZ(mm)=150
+Extruder3_ArcShortSides(0..)=1
+Extruder3_Purge(ms)=10000
+Extruder2_SeparationOutlineSpeed(0..1)=1
+Extruder2_ExtrusionSpeed(mm/minute)=2500
+Extruder3_MaxAcceleration(mm/minute/minute)=1200000.0
Modified: trunk/software/host/src/org/reprap/comms/GCodeReaderAndWriter.java
===================================================================
--- trunk/software/host/src/org/reprap/comms/GCodeReaderAndWriter.java 2011-05-04 15:44:33 UTC (rev 4119)
+++ trunk/software/host/src/org/reprap/comms/GCodeReaderAndWriter.java 2011-05-04 21:42:27 UTC (rev 4120)
@@ -325,7 +325,7 @@
{
while ((line = fileInStream.readLine()) != null)
{
- bufferQueue(line, 0);
+ bufferQueue(line);
bytes += line.length();
fractionDone = (double)bytes/(double)fileInStreamLength;
setFractionDone(fractionDone, -1, -1);
@@ -507,8 +507,8 @@
/**
* Queue a command.
*/
- private void bufferQueue(String cmd, int retries) throws Exception
- {
+ private void bufferQueue(String cmd) throws Exception
+ {
if(simulationPlot != null)
simulationPlot.add(cmd);
@@ -517,11 +517,8 @@
nonRunningWarning("queue: \"" + cmd + "\" to");
return;
}
- if(retries > 3)
- {
- Debug.e("bufferQueue(): too many retries (" + retries + ") sending " + cmd);
- return;
- }
+
+
if(sendLine(cmd))
{
long resp = waitForResponse();
@@ -531,6 +528,7 @@
} else if (resp == allSentOK)
{
lineNumber++;
+ return;
} else // Must be a re-send line number
{
long gotTo = lineNumber;
@@ -539,10 +537,18 @@
while(lineNumber <= gotTo && !rCmd.contentEquals(""))
{
rCmd = ringGet(lineNumber);
- bufferQueue(rCmd, retries+1); // Is recursion clever; or stupid?
+ if(sendLine(rCmd))
+ {
+ resp = waitForResponse();
+ if (resp == allSentOK)
+ return;
+ if(resp == shutDown)
+ throw new Exception("The RepRap machine has flagged a hard error!");
+ }
}
}
}
+ Debug.e("bufferQueue(): failed to send " + cmd);
}
private void resetReceived()
@@ -588,7 +594,7 @@
}
if(eTemp == Double.NEGATIVE_INFINITY)
{
- Debug.e("GCodeReaderAndWriter.getETemp() - no value stored!");
+ Debug.d("GCodeReaderAndWriter.getETemp() - no value stored!");
return 0;
}
return eTemp;
@@ -607,7 +613,7 @@
}
if(bTemp == Double.NEGATIVE_INFINITY)
{
- Debug.e("GCodeReaderAndWriter.getBTemp() - no value stored!");
+ Debug.d("GCodeReaderAndWriter.getBTemp() - no value stored!");
return 0;
}
return bTemp;
@@ -823,7 +829,7 @@
fileOutStream.println(cmd);
Debug.c("G-code: " + cmd + " written to file");
} else
- bufferQueue(cmd, 0);
+ bufferQueue(cmd);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|