aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine')
-rw-r--r--OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/Common.cs168
-rw-r--r--OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/IL_common_functions.cs112
-rw-r--r--OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_Interface.cs732
-rw-r--r--OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_TestImplementation.cs754
-rw-r--r--OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_OPCODE_IL_processor.cs702
-rw-r--r--OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScript.cs66
-rw-r--r--OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScriptEngine.cs52
7 files changed, 1293 insertions, 1293 deletions
diff --git a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/Common.cs b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/Common.cs
index 790871b..554ba1a 100644
--- a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/Common.cs
+++ b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/Common.cs
@@ -1,84 +1,84 @@
1/* 1/*
2* Copyright (c) Contributors, http://www.openmetaverse.org/ 2* Copyright (c) Contributors, http://www.openmetaverse.org/
3* See CONTRIBUTORS.TXT for a full list of copyright holders. 3* See CONTRIBUTORS.TXT for a full list of copyright holders.
4* 4*
5* Redistribution and use in source and binary forms, with or without 5* Redistribution and use in source and binary forms, with or without
6* modification, are permitted provided that the following conditions are met: 6* modification, are permitted provided that the following conditions are met:
7* * Redistributions of source code must retain the above copyright 7* * Redistributions of source code must retain the above copyright
8* notice, this list of conditions and the following disclaimer. 8* notice, this list of conditions and the following disclaimer.
9* * Redistributions in binary form must reproduce the above copyright 9* * Redistributions in binary form must reproduce the above copyright
10* notice, this list of conditions and the following disclaimer in the 10* notice, this list of conditions and the following disclaimer in the
11* documentation and/or other materials provided with the distribution. 11* documentation and/or other materials provided with the distribution.
12* * Neither the name of the OpenSim Project nor the 12* * Neither the name of the OpenSim Project nor the
13* names of its contributors may be used to endorse or promote products 13* names of its contributors may be used to endorse or promote products
14* derived from this software without specific prior written permission. 14* derived from this software without specific prior written permission.
15* 15*
16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY 16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY
17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY 19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26* 26*
27*/ 27*/
28/* Original code: Tedd Hansen */ 28/* Original code: Tedd Hansen */
29using System; 29using System;
30using System.Collections.Generic; 30using System.Collections.Generic;
31using System.Text; 31using System.Text;
32 32
33namespace OpenSim.Region.Scripting.LSL 33namespace OpenSim.Region.Scripting.LSL
34{ 34{
35 public static class Common 35 public static class Common
36 { 36 {
37 static public bool Debug = true; 37 static public bool Debug = true;
38 static public bool IL_UseTryCatch = true; 38 static public bool IL_UseTryCatch = true;
39 static public bool IL_CreateConstructor = true; 39 static public bool IL_CreateConstructor = true;
40 static public bool IL_CreateFunctionList = true; 40 static public bool IL_CreateFunctionList = true;
41 static public bool IL_ProcessCodeChunks = true; 41 static public bool IL_ProcessCodeChunks = true;
42 42
43 public delegate void SendToDebugEventDelegate(string Message); 43 public delegate void SendToDebugEventDelegate(string Message);
44 public delegate void SendToLogEventDelegate(string Message); 44 public delegate void SendToLogEventDelegate(string Message);
45 static public event SendToDebugEventDelegate SendToDebugEvent; 45 static public event SendToDebugEventDelegate SendToDebugEvent;
46 static public event SendToLogEventDelegate SendToLogEvent; 46 static public event SendToLogEventDelegate SendToLogEvent;
47 47
48 static public void SendToDebug(string Message) 48 static public void SendToDebug(string Message)
49 { 49 {
50 //if (Debug == true) 50 //if (Debug == true)
51 Console.WriteLine("Debug: " + Message); 51 Console.WriteLine("Debug: " + Message);
52 SendToDebugEvent(DateTime.Now.ToString("[HH:mm:ss] ") + Message + "\r\n"); 52 SendToDebugEvent(DateTime.Now.ToString("[HH:mm:ss] ") + Message + "\r\n");
53 } 53 }
54 static public void SendToLog(string Message) 54 static public void SendToLog(string Message)
55 { 55 {
56 //if (Debug == true) 56 //if (Debug == true)
57 Console.WriteLine("LOG: " + Message); 57 Console.WriteLine("LOG: " + Message);
58 SendToLogEvent(DateTime.Now.ToString("[HH:mm:ss] ") + Message + "\r\n"); 58 SendToLogEvent(DateTime.Now.ToString("[HH:mm:ss] ") + Message + "\r\n");
59 } 59 }
60 } 60 }
61 61
62 // TEMPORARY TEST THINGIES 62 // TEMPORARY TEST THINGIES
63 public static class IL_Helper 63 public static class IL_Helper
64 { 64 {
65 public static string ReverseFormatString(string text1, string format) 65 public static string ReverseFormatString(string text1, string format)
66 { 66 {
67 Common.SendToDebug("ReverseFormatString text1: " + text1); 67 Common.SendToDebug("ReverseFormatString text1: " + text1);
68 Common.SendToDebug("ReverseFormatString format: " + format); 68 Common.SendToDebug("ReverseFormatString format: " + format);
69 return string.Format(format, text1); 69 return string.Format(format, text1);
70 } 70 }
71 public static string ReverseFormatString(string text1, UInt32 text2, string format) 71 public static string ReverseFormatString(string text1, UInt32 text2, string format)
72 { 72 {
73 Common.SendToDebug("ReverseFormatString text1: " + text1); 73 Common.SendToDebug("ReverseFormatString text1: " + text1);
74 Common.SendToDebug("ReverseFormatString text2: " + text2.ToString()); 74 Common.SendToDebug("ReverseFormatString text2: " + text2.ToString());
75 Common.SendToDebug("ReverseFormatString format: " + format); 75 Common.SendToDebug("ReverseFormatString format: " + format);
76 return string.Format(format, text1, text2.ToString()); 76 return string.Format(format, text1, text2.ToString());
77 } 77 }
78 public static string Cast_ToString(object obj) 78 public static string Cast_ToString(object obj)
79 { 79 {
80 Common.SendToDebug("OBJECT TO BE CASTED: " + obj.GetType().ToString()); 80 Common.SendToDebug("OBJECT TO BE CASTED: " + obj.GetType().ToString());
81 return "ABCDEFGIHJKLMNOPQ123"; 81 return "ABCDEFGIHJKLMNOPQ123";
82 } 82 }
83 } 83 }
84} 84}
diff --git a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/IL_common_functions.cs b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/IL_common_functions.cs
index cae78b7..2f23a91 100644
--- a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/IL_common_functions.cs
+++ b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/IL_common_functions.cs
@@ -1,56 +1,56 @@
1/* 1/*
2* Copyright (c) Contributors, http://www.openmetaverse.org/ 2* Copyright (c) Contributors, http://www.openmetaverse.org/
3* See CONTRIBUTORS.TXT for a full list of copyright holders. 3* See CONTRIBUTORS.TXT for a full list of copyright holders.
4* 4*
5* Redistribution and use in source and binary forms, with or without 5* Redistribution and use in source and binary forms, with or without
6* modification, are permitted provided that the following conditions are met: 6* modification, are permitted provided that the following conditions are met:
7* * Redistributions of source code must retain the above copyright 7* * Redistributions of source code must retain the above copyright
8* notice, this list of conditions and the following disclaimer. 8* notice, this list of conditions and the following disclaimer.
9* * Redistributions in binary form must reproduce the above copyright 9* * Redistributions in binary form must reproduce the above copyright
10* notice, this list of conditions and the following disclaimer in the 10* notice, this list of conditions and the following disclaimer in the
11* documentation and/or other materials provided with the distribution. 11* documentation and/or other materials provided with the distribution.
12* * Neither the name of the OpenSim Project nor the 12* * Neither the name of the OpenSim Project nor the
13* names of its contributors may be used to endorse or promote products 13* names of its contributors may be used to endorse or promote products
14* derived from this software without specific prior written permission. 14* derived from this software without specific prior written permission.
15* 15*
16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY 16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY
17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY 19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26* 26*
27*/ 27*/
28/* Original code: Tedd Hansen */ 28/* Original code: Tedd Hansen */
29using System; 29using System;
30using System.Collections.Generic; 30using System.Collections.Generic;
31using System.Text; 31using System.Text;
32using System.Reflection; 32using System.Reflection;
33using System.Reflection.Emit; 33using System.Reflection.Emit;
34 34
35namespace OpenSim.Region.Scripting.LSL 35namespace OpenSim.Region.Scripting.LSL
36{ 36{
37 partial class LSO_Parser 37 partial class LSO_Parser
38 { 38 {
39 private static TypeBuilder CreateType(ModuleBuilder modBuilder, string typeName) 39 private static TypeBuilder CreateType(ModuleBuilder modBuilder, string typeName)
40 { 40 {
41 TypeBuilder typeBuilder = modBuilder.DefineType(typeName, 41 TypeBuilder typeBuilder = modBuilder.DefineType(typeName,
42 TypeAttributes.Public | 42 TypeAttributes.Public |
43 TypeAttributes.Class | 43 TypeAttributes.Class |
44 TypeAttributes.AutoClass | 44 TypeAttributes.AutoClass |
45 TypeAttributes.AnsiClass | 45 TypeAttributes.AnsiClass |
46 TypeAttributes.BeforeFieldInit | 46 TypeAttributes.BeforeFieldInit |
47 TypeAttributes.AutoLayout, 47 TypeAttributes.AutoLayout,
48 typeof(object), 48 typeof(object),
49 new Type[] { typeof(object) }); 49 new Type[] { typeof(object) });
50 return typeBuilder; 50 return typeBuilder;
51 51
52 } 52 }
53 53
54 54
55 } 55 }
56} 56}
diff --git a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_Interface.cs b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_Interface.cs
index cf603b0..d8a0ce3 100644
--- a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_Interface.cs
+++ b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_Interface.cs
@@ -1,366 +1,366 @@
1/* 1/*
2* Copyright (c) Contributors, http://www.openmetaverse.org/ 2* Copyright (c) Contributors, http://www.openmetaverse.org/
3* See CONTRIBUTORS.TXT for a full list of copyright holders. 3* See CONTRIBUTORS.TXT for a full list of copyright holders.
4* 4*
5* Redistribution and use in source and binary forms, with or without 5* Redistribution and use in source and binary forms, with or without
6* modification, are permitted provided that the following conditions are met: 6* modification, are permitted provided that the following conditions are met:
7* * Redistributions of source code must retain the above copyright 7* * Redistributions of source code must retain the above copyright
8* notice, this list of conditions and the following disclaimer. 8* notice, this list of conditions and the following disclaimer.
9* * Redistributions in binary form must reproduce the above copyright 9* * Redistributions in binary form must reproduce the above copyright
10* notice, this list of conditions and the following disclaimer in the 10* notice, this list of conditions and the following disclaimer in the
11* documentation and/or other materials provided with the distribution. 11* documentation and/or other materials provided with the distribution.
12* * Neither the name of the OpenSim Project nor the 12* * Neither the name of the OpenSim Project nor the
13* names of its contributors may be used to endorse or promote products 13* names of its contributors may be used to endorse or promote products
14* derived from this software without specific prior written permission. 14* derived from this software without specific prior written permission.
15* 15*
16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY 16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY
17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY 19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26* 26*
27*/ 27*/
28/* Original code: Tedd Hansen */ 28/* Original code: Tedd Hansen */
29using System; 29using System;
30 using System.Collections.Generic; 30 using System.Collections.Generic;
31 using System.Text; 31 using System.Text;
32 32
33 namespace OpenSim.Region.Scripting.LSL 33 namespace OpenSim.Region.Scripting.LSL
34 { 34 {
35 public interface LSL_BuiltIn_Commands_Interface 35 public interface LSL_BuiltIn_Commands_Interface
36 { 36 {
37 void llSin(); 37 void llSin();
38 void llCos(); 38 void llCos();
39 void llTan(); 39 void llTan();
40 void llAtan2(); 40 void llAtan2();
41 void llSqrt(); 41 void llSqrt();
42 void llPow(); 42 void llPow();
43 void llAbs(); 43 void llAbs();
44 void llFabs(); 44 void llFabs();
45 void llFrand(); 45 void llFrand();
46 void llFloor(); 46 void llFloor();
47 void llCeil(); 47 void llCeil();
48 void llRound(); 48 void llRound();
49 void llVecMag(); 49 void llVecMag();
50 void llVecNorm(); 50 void llVecNorm();
51 void llVecDist(); 51 void llVecDist();
52 void llRot2Euler(); 52 void llRot2Euler();
53 void llEuler2Rot(); 53 void llEuler2Rot();
54 void llAxes2Rot(); 54 void llAxes2Rot();
55 void llRot2Fwd(); 55 void llRot2Fwd();
56 void llRot2Left(); 56 void llRot2Left();
57 void llRot2Up(); 57 void llRot2Up();
58 void llRotBetween(); 58 void llRotBetween();
59 void llWhisper(); 59 void llWhisper();
60 void llSay(UInt32 channelID, string text); 60 void llSay(UInt32 channelID, string text);
61 void llShout(); 61 void llShout();
62 void llListen(); 62 void llListen();
63 void llListenControl(); 63 void llListenControl();
64 void llListenRemove(); 64 void llListenRemove();
65 void llSensor(); 65 void llSensor();
66 void llSensorRepeat(); 66 void llSensorRepeat();
67 void llSensorRemove(); 67 void llSensorRemove();
68 void llDetectedName(); 68 void llDetectedName();
69 void llDetectedKey(); 69 void llDetectedKey();
70 void llDetectedOwner(); 70 void llDetectedOwner();
71 void llDetectedType(); 71 void llDetectedType();
72 void llDetectedPos(); 72 void llDetectedPos();
73 void llDetectedVel(); 73 void llDetectedVel();
74 void llDetectedGrab(); 74 void llDetectedGrab();
75 void llDetectedRot(); 75 void llDetectedRot();
76 void llDetectedGroup(); 76 void llDetectedGroup();
77 void llDetectedLinkNumber(); 77 void llDetectedLinkNumber();
78 void llDie(); 78 void llDie();
79 void llGround(); 79 void llGround();
80 void llCloud(); 80 void llCloud();
81 void llWind(); 81 void llWind();
82 void llSetStatus(); 82 void llSetStatus();
83 void llGetStatus(); 83 void llGetStatus();
84 void llSetScale(); 84 void llSetScale();
85 void llGetScale(); 85 void llGetScale();
86 void llSetColor(); 86 void llSetColor();
87 void llGetAlpha(); 87 void llGetAlpha();
88 void llSetAlpha(); 88 void llSetAlpha();
89 void llGetColor(); 89 void llGetColor();
90 void llSetTexture(); 90 void llSetTexture();
91 void llScaleTexture(); 91 void llScaleTexture();
92 void llOffsetTexture(); 92 void llOffsetTexture();
93 void llRotateTexture(); 93 void llRotateTexture();
94 void llGetTexture(); 94 void llGetTexture();
95 void llSetPos(); 95 void llSetPos();
96 void llGetPos(); 96 void llGetPos();
97 void llGetLocalPos(); 97 void llGetLocalPos();
98 void llSetRot(); 98 void llSetRot();
99 void llGetRot(); 99 void llGetRot();
100 void llGetLocalRot(); 100 void llGetLocalRot();
101 void llSetForce(); 101 void llSetForce();
102 void llGetForce(); 102 void llGetForce();
103 void llTarget(); 103 void llTarget();
104 void llTargetRemove(); 104 void llTargetRemove();
105 void llRotTarget(); 105 void llRotTarget();
106 void llRotTargetRemove(); 106 void llRotTargetRemove();
107 void llMoveToTarget(); 107 void llMoveToTarget();
108 void llStopMoveToTarget(); 108 void llStopMoveToTarget();
109 void llApplyImpulse(); 109 void llApplyImpulse();
110 void llApplyRotationalImpulse(); 110 void llApplyRotationalImpulse();
111 void llSetTorque(); 111 void llSetTorque();
112 void llGetTorque(); 112 void llGetTorque();
113 void llSetForceAndTorque(); 113 void llSetForceAndTorque();
114 void llGetVel(); 114 void llGetVel();
115 void llGetAccel(); 115 void llGetAccel();
116 void llGetOmega(); 116 void llGetOmega();
117 void llGetTimeOfDay(); 117 void llGetTimeOfDay();
118 void llGetWallclock(); 118 void llGetWallclock();
119 void llGetTime(); 119 void llGetTime();
120 void llResetTime(); 120 void llResetTime();
121 void llGetAndResetTime(); 121 void llGetAndResetTime();
122 void llSound(); 122 void llSound();
123 void llPlaySound(); 123 void llPlaySound();
124 void llLoopSound(); 124 void llLoopSound();
125 void llLoopSoundMaster(); 125 void llLoopSoundMaster();
126 void llLoopSoundSlave(); 126 void llLoopSoundSlave();
127 void llPlaySoundSlave(); 127 void llPlaySoundSlave();
128 void llTriggerSound(); 128 void llTriggerSound();
129 void llStopSound(); 129 void llStopSound();
130 void llPreloadSound(); 130 void llPreloadSound();
131 void llGetSubString(); 131 void llGetSubString();
132 void llDeleteSubString(); 132 void llDeleteSubString();
133 void llInsertString(); 133 void llInsertString();
134 void llToUpper(); 134 void llToUpper();
135 void llToLower(); 135 void llToLower();
136 void llGiveMoney(); 136 void llGiveMoney();
137 void llMakeExplosion(); 137 void llMakeExplosion();
138 void llMakeFountain(); 138 void llMakeFountain();
139 void llMakeSmoke(); 139 void llMakeSmoke();
140 void llMakeFire(); 140 void llMakeFire();
141 void llRezObject(); 141 void llRezObject();
142 void llLookAt(); 142 void llLookAt();
143 void llStopLookAt(); 143 void llStopLookAt();
144 void llSetTimerEvent(); 144 void llSetTimerEvent();
145 void llSleep(); 145 void llSleep();
146 void llGetMass(); 146 void llGetMass();
147 void llCollisionFilter(); 147 void llCollisionFilter();
148 void llTakeControls(); 148 void llTakeControls();
149 void llReleaseControls(); 149 void llReleaseControls();
150 void llAttachToAvatar(); 150 void llAttachToAvatar();
151 void llDetachFromAvatar(); 151 void llDetachFromAvatar();
152 void llTakeCamera(); 152 void llTakeCamera();
153 void llReleaseCamera(); 153 void llReleaseCamera();
154 void llGetOwner(); 154 void llGetOwner();
155 void llInstantMessage(); 155 void llInstantMessage();
156 void llEmail(); 156 void llEmail();
157 void llGetNextEmail(); 157 void llGetNextEmail();
158 void llGetKey(); 158 void llGetKey();
159 void llSetBuoyancy(); 159 void llSetBuoyancy();
160 void llSetHoverHeight(); 160 void llSetHoverHeight();
161 void llStopHover(); 161 void llStopHover();
162 void llMinEventDelay(); 162 void llMinEventDelay();
163 void llSoundPreload(); 163 void llSoundPreload();
164 void llRotLookAt(); 164 void llRotLookAt();
165 void llStringLength(); 165 void llStringLength();
166 void llStartAnimation(); 166 void llStartAnimation();
167 void llStopAnimation(); 167 void llStopAnimation();
168 void llPointAt(); 168 void llPointAt();
169 void llStopPointAt(); 169 void llStopPointAt();
170 void llTargetOmega(); 170 void llTargetOmega();
171 void llGetStartParameter(); 171 void llGetStartParameter();
172 void llGodLikeRezObject(); 172 void llGodLikeRezObject();
173 void llRequestPermissions(); 173 void llRequestPermissions();
174 void llGetPermissionsKey(); 174 void llGetPermissionsKey();
175 void llGetPermissions(); 175 void llGetPermissions();
176 void llGetLinkNumber(); 176 void llGetLinkNumber();
177 void llSetLinkColor(); 177 void llSetLinkColor();
178 void llCreateLink(); 178 void llCreateLink();
179 void llBreakLink(); 179 void llBreakLink();
180 void llBreakAllLinks(); 180 void llBreakAllLinks();
181 void llGetLinkKey(); 181 void llGetLinkKey();
182 void llGetLinkName(); 182 void llGetLinkName();
183 void llGetInventoryNumber(); 183 void llGetInventoryNumber();
184 void llGetInventoryName(); 184 void llGetInventoryName();
185 void llSetScriptState(); 185 void llSetScriptState();
186 void llGetEnergy(); 186 void llGetEnergy();
187 void llGiveInventory(); 187 void llGiveInventory();
188 void llRemoveInventory(); 188 void llRemoveInventory();
189 void llSetText(); 189 void llSetText();
190 void llWater(); 190 void llWater();
191 void llPassTouches(); 191 void llPassTouches();
192 void llRequestAgentData(); 192 void llRequestAgentData();
193 void llRequestInventoryData(); 193 void llRequestInventoryData();
194 void llSetDamage(); 194 void llSetDamage();
195 void llTeleportAgentHome(); 195 void llTeleportAgentHome();
196 void llModifyLand(); 196 void llModifyLand();
197 void llCollisionSound(); 197 void llCollisionSound();
198 void llCollisionSprite(); 198 void llCollisionSprite();
199 void llGetAnimation(); 199 void llGetAnimation();
200 void llResetScript(); 200 void llResetScript();
201 void llMessageLinked(); 201 void llMessageLinked();
202 void llPushObject(); 202 void llPushObject();
203 void llPassCollisions(); 203 void llPassCollisions();
204 void llGetScriptName(); 204 void llGetScriptName();
205 void llGetNumberOfSides(); 205 void llGetNumberOfSides();
206 void llAxisAngle2Rot(); 206 void llAxisAngle2Rot();
207 void llRot2Axis(); 207 void llRot2Axis();
208 void llRot2Angle(); 208 void llRot2Angle();
209 void llAcos(); 209 void llAcos();
210 void llAsin(); 210 void llAsin();
211 void llAngleBetween(); 211 void llAngleBetween();
212 void llGetInventoryKey(); 212 void llGetInventoryKey();
213 void llAllowInventoryDrop(); 213 void llAllowInventoryDrop();
214 void llGetSunDirection(); 214 void llGetSunDirection();
215 void llGetTextureOffset(); 215 void llGetTextureOffset();
216 void llGetTextureScale(); 216 void llGetTextureScale();
217 void llGetTextureRot(); 217 void llGetTextureRot();
218 void llSubStringIndex(); 218 void llSubStringIndex();
219 void llGetOwnerKey(); 219 void llGetOwnerKey();
220 void llGetCenterOfMass(); 220 void llGetCenterOfMass();
221 void llListSort(); 221 void llListSort();
222 void llGetListLength(); 222 void llGetListLength();
223 void llList2Integer(); 223 void llList2Integer();
224 void llList2Float(); 224 void llList2Float();
225 void llList2String(); 225 void llList2String();
226 void llList2Key(); 226 void llList2Key();
227 void llList2Vector(); 227 void llList2Vector();
228 void llList2Rot(); 228 void llList2Rot();
229 void llList2List(); 229 void llList2List();
230 void llDeleteSubList(); 230 void llDeleteSubList();
231 void llGetListEntryType(); 231 void llGetListEntryType();
232 void llList2CSV(); 232 void llList2CSV();
233 void llCSV2List(); 233 void llCSV2List();
234 void llListRandomize(); 234 void llListRandomize();
235 void llList2ListStrided(); 235 void llList2ListStrided();
236 void llGetRegionCorner(); 236 void llGetRegionCorner();
237 void llListInsertList(); 237 void llListInsertList();
238 void llListFindList(); 238 void llListFindList();
239 void llGetObjectName(); 239 void llGetObjectName();
240 void llSetObjectName(); 240 void llSetObjectName();
241 void llGetDate(); 241 void llGetDate();
242 void llEdgeOfWorld(); 242 void llEdgeOfWorld();
243 void llGetAgentInfo(); 243 void llGetAgentInfo();
244 void llAdjustSoundVolume(); 244 void llAdjustSoundVolume();
245 void llSetSoundQueueing(); 245 void llSetSoundQueueing();
246 void llSetSoundRadius(); 246 void llSetSoundRadius();
247 void llKey2Name(); 247 void llKey2Name();
248 void llSetTextureAnim(); 248 void llSetTextureAnim();
249 void llTriggerSoundLimited(); 249 void llTriggerSoundLimited();
250 void llEjectFromLand(); 250 void llEjectFromLand();
251 void llParseString2List(); 251 void llParseString2List();
252 void llOverMyLand(); 252 void llOverMyLand();
253 void llGetLandOwnerAt(); 253 void llGetLandOwnerAt();
254 void llGetNotecardLine(); 254 void llGetNotecardLine();
255 void llGetAgentSize(); 255 void llGetAgentSize();
256 void llSameGroup(); 256 void llSameGroup();
257 void llUnSit(); 257 void llUnSit();
258 void llGroundSlope(); 258 void llGroundSlope();
259 void llGroundNormal(); 259 void llGroundNormal();
260 void llGroundContour(); 260 void llGroundContour();
261 void llGetAttached(); 261 void llGetAttached();
262 void llGetFreeMemory(); 262 void llGetFreeMemory();
263 void llGetRegionName(); 263 void llGetRegionName();
264 void llGetRegionTimeDilation(); 264 void llGetRegionTimeDilation();
265 void llGetRegionFPS(); 265 void llGetRegionFPS();
266 void llParticleSystem(); 266 void llParticleSystem();
267 void llGroundRepel(); 267 void llGroundRepel();
268 void llGiveInventoryList(); 268 void llGiveInventoryList();
269 void llSetVehicleType(); 269 void llSetVehicleType();
270 void llSetVehicleFloatParam(); 270 void llSetVehicleFloatParam();
271 void llSetVehicleVectorParam(); 271 void llSetVehicleVectorParam();
272 void llSetVehicleRotationParam(); 272 void llSetVehicleRotationParam();
273 void llSetVehicleFlags(); 273 void llSetVehicleFlags();
274 void llRemoveVehicleFlags(); 274 void llRemoveVehicleFlags();
275 void llSitTarget(); 275 void llSitTarget();
276 void llAvatarOnSitTarget(); 276 void llAvatarOnSitTarget();
277 void llAddToLandPassList(); 277 void llAddToLandPassList();
278 void llSetTouchText(); 278 void llSetTouchText();
279 void llSetSitText(); 279 void llSetSitText();
280 void llSetCameraEyeOffset(); 280 void llSetCameraEyeOffset();
281 void llSetCameraAtOffset(); 281 void llSetCameraAtOffset();
282 void llDumpList2String(); 282 void llDumpList2String();
283 void llScriptDanger(); 283 void llScriptDanger();
284 void llDialog(); 284 void llDialog();
285 void llVolumeDetect(); 285 void llVolumeDetect();
286 void llResetOtherScript(); 286 void llResetOtherScript();
287 void llGetScriptState(); 287 void llGetScriptState();
288 void llRemoteLoadScript(); 288 void llRemoteLoadScript();
289 void llSetRemoteScriptAccessPin(); 289 void llSetRemoteScriptAccessPin();
290 void llRemoteLoadScriptPin(); 290 void llRemoteLoadScriptPin();
291 void llOpenRemoteDataChannel(); 291 void llOpenRemoteDataChannel();
292 void llSendRemoteData(); 292 void llSendRemoteData();
293 void llRemoteDataReply(); 293 void llRemoteDataReply();
294 void llCloseRemoteDataChannel(); 294 void llCloseRemoteDataChannel();
295 void llMD5String(); 295 void llMD5String();
296 void llSetPrimitiveParams(); 296 void llSetPrimitiveParams();
297 void llStringToBase64(); 297 void llStringToBase64();
298 void llBase64ToString(); 298 void llBase64ToString();
299 void llXorBase64Strings(); 299 void llXorBase64Strings();
300 void llRemoteDataSetRegion(); 300 void llRemoteDataSetRegion();
301 void llLog10(); 301 void llLog10();
302 void llLog(); 302 void llLog();
303 void llGetAnimationList(); 303 void llGetAnimationList();
304 void llSetParcelMusicURL(); 304 void llSetParcelMusicURL();
305 void llGetRootPosition(); 305 void llGetRootPosition();
306 void llGetRootRotation(); 306 void llGetRootRotation();
307 void llGetObjectDesc(); 307 void llGetObjectDesc();
308 void llSetObjectDesc(); 308 void llSetObjectDesc();
309 void llGetCreator(); 309 void llGetCreator();
310 void llGetTimestamp(); 310 void llGetTimestamp();
311 void llSetLinkAlpha(); 311 void llSetLinkAlpha();
312 void llGetNumberOfPrims(); 312 void llGetNumberOfPrims();
313 void llGetNumberOfNotecardLines(); 313 void llGetNumberOfNotecardLines();
314 void llGetBoundingBox(); 314 void llGetBoundingBox();
315 void llGetGeometricCenter(); 315 void llGetGeometricCenter();
316 void llGetPrimitiveParams(); 316 void llGetPrimitiveParams();
317 void llIntegerToBase64(); 317 void llIntegerToBase64();
318 void llBase64ToInteger(); 318 void llBase64ToInteger();
319 void llGetGMTclock(); 319 void llGetGMTclock();
320 void llGetSimulatorHostname(); 320 void llGetSimulatorHostname();
321 void llSetLocalRot(); 321 void llSetLocalRot();
322 void llParseStringKeepNulls(); 322 void llParseStringKeepNulls();
323 void llRezAtRoot(); 323 void llRezAtRoot();
324 void llGetObjectPermMask(); 324 void llGetObjectPermMask();
325 void llSetObjectPermMask(); 325 void llSetObjectPermMask();
326 void llGetInventoryPermMask(); 326 void llGetInventoryPermMask();
327 void llSetInventoryPermMask(); 327 void llSetInventoryPermMask();
328 void llGetInventoryCreator(); 328 void llGetInventoryCreator();
329 void llOwnerSay(); 329 void llOwnerSay();
330 void llRequestSimulatorData(); 330 void llRequestSimulatorData();
331 void llForceMouselook(); 331 void llForceMouselook();
332 void llGetObjectMass(); 332 void llGetObjectMass();
333 void llListReplaceList(); 333 void llListReplaceList();
334 void llLoadURL(); 334 void llLoadURL();
335 void llParcelMediaCommandList(); 335 void llParcelMediaCommandList();
336 void llParcelMediaQuery(); 336 void llParcelMediaQuery();
337 void llModPow(); 337 void llModPow();
338 void llGetInventoryType(); 338 void llGetInventoryType();
339 void llSetPayPrice(); 339 void llSetPayPrice();
340 void llGetCameraPos(); 340 void llGetCameraPos();
341 void llGetCameraRot(); 341 void llGetCameraRot();
342 void llSetPrimURL(); 342 void llSetPrimURL();
343 void llRefreshPrimURL(); 343 void llRefreshPrimURL();
344 void llEscapeURL(); 344 void llEscapeURL();
345 void llUnescapeURL(); 345 void llUnescapeURL();
346 void llMapDestination(); 346 void llMapDestination();
347 void llAddToLandBanList(); 347 void llAddToLandBanList();
348 void llRemoveFromLandPassList(); 348 void llRemoveFromLandPassList();
349 void llRemoveFromLandBanList(); 349 void llRemoveFromLandBanList();
350 void llSetCameraParams(); 350 void llSetCameraParams();
351 void llClearCameraParams(); 351 void llClearCameraParams();
352 void llListStatistics(); 352 void llListStatistics();
353 void llGetUnixTime(); 353 void llGetUnixTime();
354 void llGetParcelFlags(); 354 void llGetParcelFlags();
355 void llGetRegionFlags(); 355 void llGetRegionFlags();
356 void llXorBase64StringsCorrect(); 356 void llXorBase64StringsCorrect();
357 void llHTTPRequest(); 357 void llHTTPRequest();
358 void llResetLandBanList(); 358 void llResetLandBanList();
359 void llResetLandPassList(); 359 void llResetLandPassList();
360 void llGetParcelPrimCount(); 360 void llGetParcelPrimCount();
361 void llGetParcelPrimOwners(); 361 void llGetParcelPrimOwners();
362 void llGetObjectPrimCount(); 362 void llGetObjectPrimCount();
363 void llGetParcelMaxPrims(); 363 void llGetParcelMaxPrims();
364 void llGetParcelDetails(); 364 void llGetParcelDetails();
365 } 365 }
366 } 366 }
diff --git a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_TestImplementation.cs b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_TestImplementation.cs
index 08e7f95..4b0fa7e 100644
--- a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_TestImplementation.cs
+++ b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_BuiltIn_Commands_TestImplementation.cs
@@ -1,377 +1,377 @@
1/* 1/*
2* Copyright (c) Contributors, http://www.openmetaverse.org/ 2* Copyright (c) Contributors, http://www.openmetaverse.org/
3* See CONTRIBUTORS.TXT for a full list of copyright holders. 3* See CONTRIBUTORS.TXT for a full list of copyright holders.
4* 4*
5* Redistribution and use in source and binary forms, with or without 5* Redistribution and use in source and binary forms, with or without
6* modification, are permitted provided that the following conditions are met: 6* modification, are permitted provided that the following conditions are met:
7* * Redistributions of source code must retain the above copyright 7* * Redistributions of source code must retain the above copyright
8* notice, this list of conditions and the following disclaimer. 8* notice, this list of conditions and the following disclaimer.
9* * Redistributions in binary form must reproduce the above copyright 9* * Redistributions in binary form must reproduce the above copyright
10* notice, this list of conditions and the following disclaimer in the 10* notice, this list of conditions and the following disclaimer in the
11* documentation and/or other materials provided with the distribution. 11* documentation and/or other materials provided with the distribution.
12* * Neither the name of the OpenSim Project nor the 12* * Neither the name of the OpenSim Project nor the
13* names of its contributors may be used to endorse or promote products 13* names of its contributors may be used to endorse or promote products
14* derived from this software without specific prior written permission. 14* derived from this software without specific prior written permission.
15* 15*
16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY 16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY
17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY 19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26* 26*
27*/ 27*/
28/* Original code: Tedd Hansen */ 28/* Original code: Tedd Hansen */
29using System; 29using System;
30using System.Collections.Generic; 30using System.Collections.Generic;
31using System.Text; 31using System.Text;
32 32
33namespace OpenSim.Region.Scripting.LSL 33namespace OpenSim.Region.Scripting.LSL
34{ 34{
35 public class LSL_BuiltIn_Commands_TestImplementation: LSL_BuiltIn_Commands_Interface 35 public class LSL_BuiltIn_Commands_TestImplementation: LSL_BuiltIn_Commands_Interface
36 { 36 {
37 public LSL_BuiltIn_Commands_TestImplementation() 37 public LSL_BuiltIn_Commands_TestImplementation()
38 { 38 {
39 Common.SendToDebug("LSL_BuiltIn_Commands_TestImplementation: Creating object"); 39 Common.SendToDebug("LSL_BuiltIn_Commands_TestImplementation: Creating object");
40 } 40 }
41 41
42 public void llSin() { } 42 public void llSin() { }
43 public void llCos() { } 43 public void llCos() { }
44 public void llTan() { } 44 public void llTan() { }
45 public void llAtan2() { } 45 public void llAtan2() { }
46 public void llSqrt() { } 46 public void llSqrt() { }
47 public void llPow() { } 47 public void llPow() { }
48 public void llAbs() { } 48 public void llAbs() { }
49 public void llFabs() { } 49 public void llFabs() { }
50 public void llFrand() { } 50 public void llFrand() { }
51 public void llFloor() { } 51 public void llFloor() { }
52 public void llCeil() { } 52 public void llCeil() { }
53 public void llRound() { } 53 public void llRound() { }
54 public void llVecMag() { } 54 public void llVecMag() { }
55 public void llVecNorm() { } 55 public void llVecNorm() { }
56 public void llVecDist() { } 56 public void llVecDist() { }
57 public void llRot2Euler() { } 57 public void llRot2Euler() { }
58 public void llEuler2Rot() { } 58 public void llEuler2Rot() { }
59 public void llAxes2Rot() { } 59 public void llAxes2Rot() { }
60 public void llRot2Fwd() { } 60 public void llRot2Fwd() { }
61 public void llRot2Left() { } 61 public void llRot2Left() { }
62 public void llRot2Up() { } 62 public void llRot2Up() { }
63 public void llRotBetween() { } 63 public void llRotBetween() { }
64 public void llWhisper() { } 64 public void llWhisper() { }
65 public void llSay(UInt32 channelID, string text) 65 public void llSay(UInt32 channelID, string text)
66 { 66 {
67 Common.SendToDebug("INTERNAL FUNCTION llSay(" + channelID + ", \"" + text + "\");"); 67 Common.SendToDebug("INTERNAL FUNCTION llSay(" + channelID + ", \"" + text + "\");");
68 } 68 }
69 public void llShout() { } 69 public void llShout() { }
70 public void llListen() { } 70 public void llListen() { }
71 public void llListenControl() { } 71 public void llListenControl() { }
72 public void llListenRemove() { } 72 public void llListenRemove() { }
73 public void llSensor() { } 73 public void llSensor() { }
74 public void llSensorRepeat() { } 74 public void llSensorRepeat() { }
75 public void llSensorRemove() { } 75 public void llSensorRemove() { }
76 public void llDetectedName() { } 76 public void llDetectedName() { }
77 public void llDetectedKey() { } 77 public void llDetectedKey() { }
78 public void llDetectedOwner() { } 78 public void llDetectedOwner() { }
79 public void llDetectedType() { } 79 public void llDetectedType() { }
80 public void llDetectedPos() { } 80 public void llDetectedPos() { }
81 public void llDetectedVel() { } 81 public void llDetectedVel() { }
82 public void llDetectedGrab() { } 82 public void llDetectedGrab() { }
83 public void llDetectedRot() { } 83 public void llDetectedRot() { }
84 public void llDetectedGroup() { } 84 public void llDetectedGroup() { }
85 public void llDetectedLinkNumber() { } 85 public void llDetectedLinkNumber() { }
86 public void llDie() { } 86 public void llDie() { }
87 public void llGround() { } 87 public void llGround() { }
88 public void llCloud() { } 88 public void llCloud() { }
89 public void llWind() { } 89 public void llWind() { }
90 public void llSetStatus() { } 90 public void llSetStatus() { }
91 public void llGetStatus() { } 91 public void llGetStatus() { }
92 public void llSetScale() { } 92 public void llSetScale() { }
93 public void llGetScale() { } 93 public void llGetScale() { }
94 public void llSetColor() { } 94 public void llSetColor() { }
95 public void llGetAlpha() { } 95 public void llGetAlpha() { }
96 public void llSetAlpha() { } 96 public void llSetAlpha() { }
97 public void llGetColor() { } 97 public void llGetColor() { }
98 public void llSetTexture() { } 98 public void llSetTexture() { }
99 public void llScaleTexture() { } 99 public void llScaleTexture() { }
100 public void llOffsetTexture() { } 100 public void llOffsetTexture() { }
101 public void llRotateTexture() { } 101 public void llRotateTexture() { }
102 public void llGetTexture() { } 102 public void llGetTexture() { }
103 public void llSetPos() { } 103 public void llSetPos() { }
104 public void llGetPos() { } 104 public void llGetPos() { }
105 public void llGetLocalPos() { } 105 public void llGetLocalPos() { }
106 public void llSetRot() { } 106 public void llSetRot() { }
107 public void llGetRot() { } 107 public void llGetRot() { }
108 public void llGetLocalRot() { } 108 public void llGetLocalRot() { }
109 public void llSetForce() { } 109 public void llSetForce() { }
110 public void llGetForce() { } 110 public void llGetForce() { }
111 public void llTarget() { } 111 public void llTarget() { }
112 public void llTargetRemove() { } 112 public void llTargetRemove() { }
113 public void llRotTarget() { } 113 public void llRotTarget() { }
114 public void llRotTargetRemove() { } 114 public void llRotTargetRemove() { }
115 public void llMoveToTarget() { } 115 public void llMoveToTarget() { }
116 public void llStopMoveToTarget() { } 116 public void llStopMoveToTarget() { }
117 public void llApplyImpulse() { } 117 public void llApplyImpulse() { }
118 public void llApplyRotationalImpulse() { } 118 public void llApplyRotationalImpulse() { }
119 public void llSetTorque() { } 119 public void llSetTorque() { }
120 public void llGetTorque() { } 120 public void llGetTorque() { }
121 public void llSetForceAndTorque() { } 121 public void llSetForceAndTorque() { }
122 public void llGetVel() { } 122 public void llGetVel() { }
123 public void llGetAccel() { } 123 public void llGetAccel() { }
124 public void llGetOmega() { } 124 public void llGetOmega() { }
125 public void llGetTimeOfDay() { } 125 public void llGetTimeOfDay() { }
126 public void llGetWallclock() { } 126 public void llGetWallclock() { }
127 public void llGetTime() { } 127 public void llGetTime() { }
128 public void llResetTime() { } 128 public void llResetTime() { }
129 public void llGetAndResetTime() { } 129 public void llGetAndResetTime() { }
130 public void llSound() { } 130 public void llSound() { }
131 public void llPlaySound() { } 131 public void llPlaySound() { }
132 public void llLoopSound() { } 132 public void llLoopSound() { }
133 public void llLoopSoundMaster() { } 133 public void llLoopSoundMaster() { }
134 public void llLoopSoundSlave() { } 134 public void llLoopSoundSlave() { }
135 public void llPlaySoundSlave() { } 135 public void llPlaySoundSlave() { }
136 public void llTriggerSound() { } 136 public void llTriggerSound() { }
137 public void llStopSound() { } 137 public void llStopSound() { }
138 public void llPreloadSound() { } 138 public void llPreloadSound() { }
139 public void llGetSubString() { } 139 public void llGetSubString() { }
140 public void llDeleteSubString() { } 140 public void llDeleteSubString() { }
141 public void llInsertString() { } 141 public void llInsertString() { }
142 public void llToUpper() { } 142 public void llToUpper() { }
143 public void llToLower() { } 143 public void llToLower() { }
144 public void llGiveMoney() { } 144 public void llGiveMoney() { }
145 public void llMakeExplosion() { } 145 public void llMakeExplosion() { }
146 public void llMakeFountain() { } 146 public void llMakeFountain() { }
147 public void llMakeSmoke() { } 147 public void llMakeSmoke() { }
148 public void llMakeFire() { } 148 public void llMakeFire() { }
149 public void llRezObject() { } 149 public void llRezObject() { }
150 public void llLookAt() { } 150 public void llLookAt() { }
151 public void llStopLookAt() { } 151 public void llStopLookAt() { }
152 public void llSetTimerEvent() { } 152 public void llSetTimerEvent() { }
153 public void llSleep() { } 153 public void llSleep() { }
154 public void llGetMass() { } 154 public void llGetMass() { }
155 public void llCollisionFilter() { } 155 public void llCollisionFilter() { }
156 public void llTakeControls() { } 156 public void llTakeControls() { }
157 public void llReleaseControls() { } 157 public void llReleaseControls() { }
158 public void llAttachToAvatar() { } 158 public void llAttachToAvatar() { }
159 public void llDetachFromAvatar() { } 159 public void llDetachFromAvatar() { }
160 public void llTakeCamera() { } 160 public void llTakeCamera() { }
161 public void llReleaseCamera() { } 161 public void llReleaseCamera() { }
162 public void llGetOwner() { } 162 public void llGetOwner() { }
163 public void llInstantMessage() { } 163 public void llInstantMessage() { }
164 public void llEmail() { } 164 public void llEmail() { }
165 public void llGetNextEmail() { } 165 public void llGetNextEmail() { }
166 public void llGetKey() { } 166 public void llGetKey() { }
167 public void llSetBuoyancy() { } 167 public void llSetBuoyancy() { }
168 public void llSetHoverHeight() { } 168 public void llSetHoverHeight() { }
169 public void llStopHover() { } 169 public void llStopHover() { }
170 public void llMinEventDelay() { } 170 public void llMinEventDelay() { }
171 public void llSoundPreload() { } 171 public void llSoundPreload() { }
172 public void llRotLookAt() { } 172 public void llRotLookAt() { }
173 public void llStringLength() { } 173 public void llStringLength() { }
174 public void llStartAnimation() { } 174 public void llStartAnimation() { }
175 public void llStopAnimation() { } 175 public void llStopAnimation() { }
176 public void llPointAt() { } 176 public void llPointAt() { }
177 public void llStopPointAt() { } 177 public void llStopPointAt() { }
178 public void llTargetOmega() { } 178 public void llTargetOmega() { }
179 public void llGetStartParameter() { } 179 public void llGetStartParameter() { }
180 public void llGodLikeRezObject() { } 180 public void llGodLikeRezObject() { }
181 public void llRequestPermissions() { } 181 public void llRequestPermissions() { }
182 public void llGetPermissionsKey() { } 182 public void llGetPermissionsKey() { }
183 public void llGetPermissions() { } 183 public void llGetPermissions() { }
184 public void llGetLinkNumber() { } 184 public void llGetLinkNumber() { }
185 public void llSetLinkColor() { } 185 public void llSetLinkColor() { }
186 public void llCreateLink() { } 186 public void llCreateLink() { }
187 public void llBreakLink() { } 187 public void llBreakLink() { }
188 public void llBreakAllLinks() { } 188 public void llBreakAllLinks() { }
189 public void llGetLinkKey() { } 189 public void llGetLinkKey() { }
190 public void llGetLinkName() { } 190 public void llGetLinkName() { }
191 public void llGetInventoryNumber() { } 191 public void llGetInventoryNumber() { }
192 public void llGetInventoryName() { } 192 public void llGetInventoryName() { }
193 public void llSetScriptState() { } 193 public void llSetScriptState() { }
194 public void llGetEnergy() { } 194 public void llGetEnergy() { }
195 public void llGiveInventory() { } 195 public void llGiveInventory() { }
196 public void llRemoveInventory() { } 196 public void llRemoveInventory() { }
197 public void llSetText() { } 197 public void llSetText() { }
198 public void llWater() { } 198 public void llWater() { }
199 public void llPassTouches() { } 199 public void llPassTouches() { }
200 public void llRequestAgentData() { } 200 public void llRequestAgentData() { }
201 public void llRequestInventoryData() { } 201 public void llRequestInventoryData() { }
202 public void llSetDamage() { } 202 public void llSetDamage() { }
203 public void llTeleportAgentHome() { } 203 public void llTeleportAgentHome() { }
204 public void llModifyLand() { } 204 public void llModifyLand() { }
205 public void llCollisionSound() { } 205 public void llCollisionSound() { }
206 public void llCollisionSprite() { } 206 public void llCollisionSprite() { }
207 public void llGetAnimation() { } 207 public void llGetAnimation() { }
208 public void llResetScript() { } 208 public void llResetScript() { }
209 public void llMessageLinked() { } 209 public void llMessageLinked() { }
210 public void llPushObject() { } 210 public void llPushObject() { }
211 public void llPassCollisions() { } 211 public void llPassCollisions() { }
212 public void llGetScriptName() { } 212 public void llGetScriptName() { }
213 public void llGetNumberOfSides() { } 213 public void llGetNumberOfSides() { }
214 public void llAxisAngle2Rot() { } 214 public void llAxisAngle2Rot() { }
215 public void llRot2Axis() { } 215 public void llRot2Axis() { }
216 public void llRot2Angle() { } 216 public void llRot2Angle() { }
217 public void llAcos() { } 217 public void llAcos() { }
218 public void llAsin() { } 218 public void llAsin() { }
219 public void llAngleBetween() { } 219 public void llAngleBetween() { }
220 public void llGetInventoryKey() { } 220 public void llGetInventoryKey() { }
221 public void llAllowInventoryDrop() { } 221 public void llAllowInventoryDrop() { }
222 public void llGetSunDirection() { } 222 public void llGetSunDirection() { }
223 public void llGetTextureOffset() { } 223 public void llGetTextureOffset() { }
224 public void llGetTextureScale() { } 224 public void llGetTextureScale() { }
225 public void llGetTextureRot() { } 225 public void llGetTextureRot() { }
226 public void llSubStringIndex() { } 226 public void llSubStringIndex() { }
227 public void llGetOwnerKey() { } 227 public void llGetOwnerKey() { }
228 public void llGetCenterOfMass() { } 228 public void llGetCenterOfMass() { }
229 public void llListSort() { } 229 public void llListSort() { }
230 public void llGetListLength() { } 230 public void llGetListLength() { }
231 public void llList2Integer() { } 231 public void llList2Integer() { }
232 public void llList2Float() { } 232 public void llList2Float() { }
233 public void llList2String() { } 233 public void llList2String() { }
234 public void llList2Key() { } 234 public void llList2Key() { }
235 public void llList2Vector() { } 235 public void llList2Vector() { }
236 public void llList2Rot() { } 236 public void llList2Rot() { }
237 public void llList2List() { } 237 public void llList2List() { }
238 public void llDeleteSubList() { } 238 public void llDeleteSubList() { }
239 public void llGetListEntryType() { } 239 public void llGetListEntryType() { }
240 public void llList2CSV() { } 240 public void llList2CSV() { }
241 public void llCSV2List() { } 241 public void llCSV2List() { }
242 public void llListRandomize() { } 242 public void llListRandomize() { }
243 public void llList2ListStrided() { } 243 public void llList2ListStrided() { }
244 public void llGetRegionCorner() { } 244 public void llGetRegionCorner() { }
245 public void llListInsertList() { } 245 public void llListInsertList() { }
246 public void llListFindList() { } 246 public void llListFindList() { }
247 public void llGetObjectName() { } 247 public void llGetObjectName() { }
248 public void llSetObjectName() { } 248 public void llSetObjectName() { }
249 public void llGetDate() { } 249 public void llGetDate() { }
250 public void llEdgeOfWorld() { } 250 public void llEdgeOfWorld() { }
251 public void llGetAgentInfo() { } 251 public void llGetAgentInfo() { }
252 public void llAdjustSoundVolume() { } 252 public void llAdjustSoundVolume() { }
253 public void llSetSoundQueueing() { } 253 public void llSetSoundQueueing() { }
254 public void llSetSoundRadius() { } 254 public void llSetSoundRadius() { }
255 public void llKey2Name() { } 255 public void llKey2Name() { }
256 public void llSetTextureAnim() { } 256 public void llSetTextureAnim() { }
257 public void llTriggerSoundLimited() { } 257 public void llTriggerSoundLimited() { }
258 public void llEjectFromLand() { } 258 public void llEjectFromLand() { }
259 public void llParseString2List() { } 259 public void llParseString2List() { }
260 public void llOverMyLand() { } 260 public void llOverMyLand() { }
261 public void llGetLandOwnerAt() { } 261 public void llGetLandOwnerAt() { }
262 public void llGetNotecardLine() { } 262 public void llGetNotecardLine() { }
263 public void llGetAgentSize() { } 263 public void llGetAgentSize() { }
264 public void llSameGroup() { } 264 public void llSameGroup() { }
265 public void llUnSit() { } 265 public void llUnSit() { }
266 public void llGroundSlope() { } 266 public void llGroundSlope() { }
267 public void llGroundNormal() { } 267 public void llGroundNormal() { }
268 public void llGroundContour() { } 268 public void llGroundContour() { }
269 public void llGetAttached() { } 269 public void llGetAttached() { }
270 public void llGetFreeMemory() { } 270 public void llGetFreeMemory() { }
271 public void llGetRegionName() { } 271 public void llGetRegionName() { }
272 public void llGetRegionTimeDilation() { } 272 public void llGetRegionTimeDilation() { }
273 public void llGetRegionFPS() { } 273 public void llGetRegionFPS() { }
274 public void llParticleSystem() { } 274 public void llParticleSystem() { }
275 public void llGroundRepel() { } 275 public void llGroundRepel() { }
276 public void llGiveInventoryList() { } 276 public void llGiveInventoryList() { }
277 public void llSetVehicleType() { } 277 public void llSetVehicleType() { }
278 public void llSetVehicleFloatParam() { } 278 public void llSetVehicleFloatParam() { }
279 public void llSetVehicleVectorParam() { } 279 public void llSetVehicleVectorParam() { }
280 public void llSetVehicleRotationParam() { } 280 public void llSetVehicleRotationParam() { }
281 public void llSetVehicleFlags() { } 281 public void llSetVehicleFlags() { }
282 public void llRemoveVehicleFlags() { } 282 public void llRemoveVehicleFlags() { }
283 public void llSitTarget() { } 283 public void llSitTarget() { }
284 public void llAvatarOnSitTarget() { } 284 public void llAvatarOnSitTarget() { }
285 public void llAddToLandPassList() { } 285 public void llAddToLandPassList() { }
286 public void llSetTouchText() { } 286 public void llSetTouchText() { }
287 public void llSetSitText() { } 287 public void llSetSitText() { }
288 public void llSetCameraEyeOffset() { } 288 public void llSetCameraEyeOffset() { }
289 public void llSetCameraAtOffset() { } 289 public void llSetCameraAtOffset() { }
290 public void llDumpList2String() { } 290 public void llDumpList2String() { }
291 public void llScriptDanger() { } 291 public void llScriptDanger() { }
292 public void llDialog() { } 292 public void llDialog() { }
293 public void llVolumeDetect() { } 293 public void llVolumeDetect() { }
294 public void llResetOtherScript() { } 294 public void llResetOtherScript() { }
295 public void llGetScriptState() { } 295 public void llGetScriptState() { }
296 public void llRemoteLoadScript() { } 296 public void llRemoteLoadScript() { }
297 public void llSetRemoteScriptAccessPin() { } 297 public void llSetRemoteScriptAccessPin() { }
298 public void llRemoteLoadScriptPin() { } 298 public void llRemoteLoadScriptPin() { }
299 public void llOpenRemoteDataChannel() { } 299 public void llOpenRemoteDataChannel() { }
300 public void llSendRemoteData() { } 300 public void llSendRemoteData() { }
301 public void llRemoteDataReply() { } 301 public void llRemoteDataReply() { }
302 public void llCloseRemoteDataChannel() { } 302 public void llCloseRemoteDataChannel() { }
303 public void llMD5String() { } 303 public void llMD5String() { }
304 public void llSetPrimitiveParams() { } 304 public void llSetPrimitiveParams() { }
305 public void llStringToBase64() { } 305 public void llStringToBase64() { }
306 public void llBase64ToString() { } 306 public void llBase64ToString() { }
307 public void llXorBase64Strings() { } 307 public void llXorBase64Strings() { }
308 public void llRemoteDataSetRegion() { } 308 public void llRemoteDataSetRegion() { }
309 public void llLog10() { } 309 public void llLog10() { }
310 public void llLog() { } 310 public void llLog() { }
311 public void llGetAnimationList() { } 311 public void llGetAnimationList() { }
312 public void llSetParcelMusicURL() { } 312 public void llSetParcelMusicURL() { }
313 public void llGetRootPosition() { } 313 public void llGetRootPosition() { }
314 public void llGetRootRotation() { } 314 public void llGetRootRotation() { }
315 public void llGetObjectDesc() { } 315 public void llGetObjectDesc() { }
316 public void llSetObjectDesc() { } 316 public void llSetObjectDesc() { }
317 public void llGetCreator() { } 317 public void llGetCreator() { }
318 public void llGetTimestamp() { } 318 public void llGetTimestamp() { }
319 public void llSetLinkAlpha() { } 319 public void llSetLinkAlpha() { }
320 public void llGetNumberOfPrims() { } 320 public void llGetNumberOfPrims() { }
321 public void llGetNumberOfNotecardLines() { } 321 public void llGetNumberOfNotecardLines() { }
322 public void llGetBoundingBox() { } 322 public void llGetBoundingBox() { }
323 public void llGetGeometricCenter() { } 323 public void llGetGeometricCenter() { }
324 public void llGetPrimitiveParams() { } 324 public void llGetPrimitiveParams() { }
325 public void llIntegerToBase64() { } 325 public void llIntegerToBase64() { }
326 public void llBase64ToInteger() { } 326 public void llBase64ToInteger() { }
327 public void llGetGMTclock() { } 327 public void llGetGMTclock() { }
328 public void llGetSimulatorHostname() { } 328 public void llGetSimulatorHostname() { }
329 public void llSetLocalRot() { } 329 public void llSetLocalRot() { }
330 public void llParseStringKeepNulls() { } 330 public void llParseStringKeepNulls() { }
331 public void llRezAtRoot() { } 331 public void llRezAtRoot() { }
332 public void llGetObjectPermMask() { } 332 public void llGetObjectPermMask() { }
333 public void llSetObjectPermMask() { } 333 public void llSetObjectPermMask() { }
334 public void llGetInventoryPermMask() { } 334 public void llGetInventoryPermMask() { }
335 public void llSetInventoryPermMask() { } 335 public void llSetInventoryPermMask() { }
336 public void llGetInventoryCreator() { } 336 public void llGetInventoryCreator() { }
337 public void llOwnerSay() { } 337 public void llOwnerSay() { }
338 public void llRequestSimulatorData() { } 338 public void llRequestSimulatorData() { }
339 public void llForceMouselook() { } 339 public void llForceMouselook() { }
340 public void llGetObjectMass() { } 340 public void llGetObjectMass() { }
341 public void llListReplaceList() { } 341 public void llListReplaceList() { }
342 public void llLoadURL() { } 342 public void llLoadURL() { }
343 public void llParcelMediaCommandList() { } 343 public void llParcelMediaCommandList() { }
344 public void llParcelMediaQuery() { } 344 public void llParcelMediaQuery() { }
345 public void llModPow() { } 345 public void llModPow() { }
346 public void llGetInventoryType() { } 346 public void llGetInventoryType() { }
347 public void llSetPayPrice() { } 347 public void llSetPayPrice() { }
348 public void llGetCameraPos() { } 348 public void llGetCameraPos() { }
349 public void llGetCameraRot() { } 349 public void llGetCameraRot() { }
350 public void llSetPrimURL() { } 350 public void llSetPrimURL() { }
351 public void llRefreshPrimURL() { } 351 public void llRefreshPrimURL() { }
352 public void llEscapeURL() { } 352 public void llEscapeURL() { }
353 public void llUnescapeURL() { } 353 public void llUnescapeURL() { }
354 public void llMapDestination() { } 354 public void llMapDestination() { }
355 public void llAddToLandBanList() { } 355 public void llAddToLandBanList() { }
356 public void llRemoveFromLandPassList() { } 356 public void llRemoveFromLandPassList() { }
357 public void llRemoveFromLandBanList() { } 357 public void llRemoveFromLandBanList() { }
358 public void llSetCameraParams() { } 358 public void llSetCameraParams() { }
359 public void llClearCameraParams() { } 359 public void llClearCameraParams() { }
360 public void llListStatistics() { } 360 public void llListStatistics() { }
361 public void llGetUnixTime() { } 361 public void llGetUnixTime() { }
362 public void llGetParcelFlags() { } 362 public void llGetParcelFlags() { }
363 public void llGetRegionFlags() { } 363 public void llGetRegionFlags() { }
364 public void llXorBase64StringsCorrect() { } 364 public void llXorBase64StringsCorrect() { }
365 public void llHTTPRequest() { } 365 public void llHTTPRequest() { }
366 public void llResetLandBanList() { } 366 public void llResetLandBanList() { }
367 public void llResetLandPassList() { } 367 public void llResetLandPassList() { }
368 public void llGetParcelPrimCount() { } 368 public void llGetParcelPrimCount() { }
369 public void llGetParcelPrimOwners() { } 369 public void llGetParcelPrimOwners() { }
370 public void llGetObjectPrimCount() { } 370 public void llGetObjectPrimCount() { }
371 public void llGetParcelMaxPrims() { } 371 public void llGetParcelMaxPrims() { }
372 public void llGetParcelDetails() { } 372 public void llGetParcelDetails() { }
373 373
374 374
375 375
376 } 376 }
377} 377}
diff --git a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_OPCODE_IL_processor.cs b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_OPCODE_IL_processor.cs
index 4b8f8d7..46f6845 100644
--- a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_OPCODE_IL_processor.cs
+++ b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLHandler/LSL_OPCODE_IL_processor.cs
@@ -1,351 +1,351 @@
1/* 1/*
2* Copyright (c) Contributors, http://www.openmetaverse.org/ 2* Copyright (c) Contributors, http://www.openmetaverse.org/
3* See CONTRIBUTORS.TXT for a full list of copyright holders. 3* See CONTRIBUTORS.TXT for a full list of copyright holders.
4* 4*
5* Redistribution and use in source and binary forms, with or without 5* Redistribution and use in source and binary forms, with or without
6* modification, are permitted provided that the following conditions are met: 6* modification, are permitted provided that the following conditions are met:
7* * Redistributions of source code must retain the above copyright 7* * Redistributions of source code must retain the above copyright
8* notice, this list of conditions and the following disclaimer. 8* notice, this list of conditions and the following disclaimer.
9* * Redistributions in binary form must reproduce the above copyright 9* * Redistributions in binary form must reproduce the above copyright
10* notice, this list of conditions and the following disclaimer in the 10* notice, this list of conditions and the following disclaimer in the
11* documentation and/or other materials provided with the distribution. 11* documentation and/or other materials provided with the distribution.
12* * Neither the name of the OpenSim Project nor the 12* * Neither the name of the OpenSim Project nor the
13* names of its contributors may be used to endorse or promote products 13* names of its contributors may be used to endorse or promote products
14* derived from this software without specific prior written permission. 14* derived from this software without specific prior written permission.
15* 15*
16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY 16* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS AND ANY
17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 17* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 18* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY 19* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 20* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 21* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 22* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 24* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26* 26*
27*/ 27*/
28/* Original code: Tedd Hansen */ 28/* Original code: Tedd Hansen */
29using System; 29using System;
30 using System.Collections.Generic; 30 using System.Collections.Generic;
31 using System.Text; 31 using System.Text;
32 using System.Reflection; 32 using System.Reflection;
33 using System.Reflection.Emit; 33 using System.Reflection.Emit;
34 34
35 namespace OpenSim.Region.Scripting.LSL 35 namespace OpenSim.Region.Scripting.LSL
36 { 36 {
37 partial class LSO_Parser 37 partial class LSO_Parser
38 { 38 {
39 //LSO_Enums MyLSO_Enums = new LSO_Enums(); 39 //LSO_Enums MyLSO_Enums = new LSO_Enums();
40 40
41 internal bool LSL_PROCESS_OPCODE(ILGenerator il) 41 internal bool LSL_PROCESS_OPCODE(ILGenerator il)
42 { 42 {
43 43
44 byte bp1; 44 byte bp1;
45 UInt32 u32p1; 45 UInt32 u32p1;
46 UInt16 opcode = br_read(1)[0]; 46 UInt16 opcode = br_read(1)[0];
47 Common.SendToDebug("OPCODE: " + ((LSO_Enums.Operation_Table)opcode).ToString()); 47 Common.SendToDebug("OPCODE: " + ((LSO_Enums.Operation_Table)opcode).ToString());
48 string idesc = ((LSO_Enums.Operation_Table)opcode).ToString(); 48 string idesc = ((LSO_Enums.Operation_Table)opcode).ToString();
49 switch ((LSO_Enums.Operation_Table)opcode) 49 switch ((LSO_Enums.Operation_Table)opcode)
50 { 50 {
51 51
52 case LSO_Enums.Operation_Table.POP: 52 case LSO_Enums.Operation_Table.POP:
53 case LSO_Enums.Operation_Table.POPL: 53 case LSO_Enums.Operation_Table.POPL:
54 case LSO_Enums.Operation_Table.POPV: 54 case LSO_Enums.Operation_Table.POPV:
55 case LSO_Enums.Operation_Table.POPQ: 55 case LSO_Enums.Operation_Table.POPQ:
56 case LSO_Enums.Operation_Table.POPIP: 56 case LSO_Enums.Operation_Table.POPIP:
57 case LSO_Enums.Operation_Table.POPBP: 57 case LSO_Enums.Operation_Table.POPBP:
58 case LSO_Enums.Operation_Table.POPSP: 58 case LSO_Enums.Operation_Table.POPSP:
59 case LSO_Enums.Operation_Table.POPSLR: 59 case LSO_Enums.Operation_Table.POPSLR:
60 // ignore -- builds callframe 60 // ignore -- builds callframe
61 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Pop);"); 61 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Pop);");
62 il.Emit(OpCodes.Pop); 62 il.Emit(OpCodes.Pop);
63 break; 63 break;
64 case LSO_Enums.Operation_Table.POPARG: 64 case LSO_Enums.Operation_Table.POPARG:
65 Common.SendToDebug("Instruction " + idesc + ": Ignored"); 65 Common.SendToDebug("Instruction " + idesc + ": Ignored");
66 Common.SendToDebug("Instruction " + idesc + ": Description: Drop x bytes from the stack "); 66 Common.SendToDebug("Instruction " + idesc + ": Description: Drop x bytes from the stack ");
67 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0)); 67 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0));
68 break; 68 break;
69 69
70 // LONG 70 // LONG
71 case LSO_Enums.Operation_Table.STORE: 71 case LSO_Enums.Operation_Table.STORE:
72 case LSO_Enums.Operation_Table.STORES: 72 case LSO_Enums.Operation_Table.STORES:
73 case LSO_Enums.Operation_Table.STOREL: 73 case LSO_Enums.Operation_Table.STOREL:
74 case LSO_Enums.Operation_Table.STOREV: 74 case LSO_Enums.Operation_Table.STOREV:
75 case LSO_Enums.Operation_Table.STOREQ: 75 case LSO_Enums.Operation_Table.STOREQ:
76 case LSO_Enums.Operation_Table.STOREG: 76 case LSO_Enums.Operation_Table.STOREG:
77 case LSO_Enums.Operation_Table.STOREGS: 77 case LSO_Enums.Operation_Table.STOREGS:
78 case LSO_Enums.Operation_Table.STOREGL: 78 case LSO_Enums.Operation_Table.STOREGL:
79 case LSO_Enums.Operation_Table.STOREGV: 79 case LSO_Enums.Operation_Table.STOREGV:
80 case LSO_Enums.Operation_Table.STOREGQ: 80 case LSO_Enums.Operation_Table.STOREGQ:
81 case LSO_Enums.Operation_Table.LOADP: 81 case LSO_Enums.Operation_Table.LOADP:
82 case LSO_Enums.Operation_Table.LOADSP: 82 case LSO_Enums.Operation_Table.LOADSP:
83 case LSO_Enums.Operation_Table.LOADLP: 83 case LSO_Enums.Operation_Table.LOADLP:
84 case LSO_Enums.Operation_Table.LOADVP: 84 case LSO_Enums.Operation_Table.LOADVP:
85 case LSO_Enums.Operation_Table.LOADQP: 85 case LSO_Enums.Operation_Table.LOADQP:
86 case LSO_Enums.Operation_Table.PUSH: 86 case LSO_Enums.Operation_Table.PUSH:
87 case LSO_Enums.Operation_Table.PUSHS: 87 case LSO_Enums.Operation_Table.PUSHS:
88 case LSO_Enums.Operation_Table.PUSHL: 88 case LSO_Enums.Operation_Table.PUSHL:
89 case LSO_Enums.Operation_Table.PUSHV: 89 case LSO_Enums.Operation_Table.PUSHV:
90 case LSO_Enums.Operation_Table.PUSHQ: 90 case LSO_Enums.Operation_Table.PUSHQ:
91 case LSO_Enums.Operation_Table.PUSHG: 91 case LSO_Enums.Operation_Table.PUSHG:
92 case LSO_Enums.Operation_Table.PUSHGS: 92 case LSO_Enums.Operation_Table.PUSHGS:
93 case LSO_Enums.Operation_Table.PUSHGL: 93 case LSO_Enums.Operation_Table.PUSHGL:
94 case LSO_Enums.Operation_Table.PUSHGV: 94 case LSO_Enums.Operation_Table.PUSHGV:
95 case LSO_Enums.Operation_Table.PUSHGQ: 95 case LSO_Enums.Operation_Table.PUSHGQ:
96 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0)); 96 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0));
97 break; 97 break;
98 // None 98 // None
99 case LSO_Enums.Operation_Table.PUSHIP: 99 case LSO_Enums.Operation_Table.PUSHIP:
100 case LSO_Enums.Operation_Table.PUSHBP: 100 case LSO_Enums.Operation_Table.PUSHBP:
101 case LSO_Enums.Operation_Table.PUSHSP: 101 case LSO_Enums.Operation_Table.PUSHSP:
102 // Push Stack Top (Memory Address) to stack 102 // Push Stack Top (Memory Address) to stack
103 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ldc_I4, " + myHeader.SP + ");"); 103 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ldc_I4, " + myHeader.SP + ");");
104 Common.SendToDebug("Instruction " + idesc + ": Description: Pushing Stack Top (Memory Address from header) to stack"); 104 Common.SendToDebug("Instruction " + idesc + ": Description: Pushing Stack Top (Memory Address from header) to stack");
105 il.Emit(OpCodes.Ldc_I4, myHeader.SP); 105 il.Emit(OpCodes.Ldc_I4, myHeader.SP);
106 break; 106 break;
107 // BYTE 107 // BYTE
108 case LSO_Enums.Operation_Table.PUSHARGB: 108 case LSO_Enums.Operation_Table.PUSHARGB:
109 Common.SendToDebug("Param1: " + br_read(1)[0]); 109 Common.SendToDebug("Param1: " + br_read(1)[0]);
110 break; 110 break;
111 // INTEGER 111 // INTEGER
112 case LSO_Enums.Operation_Table.PUSHARGI: 112 case LSO_Enums.Operation_Table.PUSHARGI:
113 // TODO: What is size of integer? 113 // TODO: What is size of integer?
114 u32p1 = BitConverter.ToUInt32(br_read(4), 0); 114 u32p1 = BitConverter.ToUInt32(br_read(4), 0);
115 Common.SendToDebug("Instruction PUSHSP: il.Emit(OpCodes.Ldc_I4, " + u32p1 + ");"); 115 Common.SendToDebug("Instruction PUSHSP: il.Emit(OpCodes.Ldc_I4, " + u32p1 + ");");
116 Common.SendToDebug("Param1: " + u32p1); 116 Common.SendToDebug("Param1: " + u32p1);
117 il.Emit(OpCodes.Ldc_I4, u32p1); 117 il.Emit(OpCodes.Ldc_I4, u32p1);
118 break; 118 break;
119 // FLOAT 119 // FLOAT
120 case LSO_Enums.Operation_Table.PUSHARGF: 120 case LSO_Enums.Operation_Table.PUSHARGF:
121 // TODO: What is size of float? 121 // TODO: What is size of float?
122 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0)); 122 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0));
123 break; 123 break;
124 // STRING 124 // STRING
125 case LSO_Enums.Operation_Table.PUSHARGS: 125 case LSO_Enums.Operation_Table.PUSHARGS:
126 string s = Read_String(); 126 string s = Read_String();
127 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ldstr, \"" + s + "\");"); 127 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ldstr, \"" + s + "\");");
128 Common.SendToDebug("Param1: " + s); 128 Common.SendToDebug("Param1: " + s);
129 il.Emit(OpCodes.Ldstr, s); 129 il.Emit(OpCodes.Ldstr, s);
130 break; 130 break;
131 // VECTOR z,y,x 131 // VECTOR z,y,x
132 case LSO_Enums.Operation_Table.PUSHARGV: 132 case LSO_Enums.Operation_Table.PUSHARGV:
133 Common.SendToDebug("Param1 Z: " + BitConverter.ToUInt32(br_read(4), 0)); 133 Common.SendToDebug("Param1 Z: " + BitConverter.ToUInt32(br_read(4), 0));
134 Common.SendToDebug("Param1 Y: " + BitConverter.ToUInt32(br_read(4), 0)); 134 Common.SendToDebug("Param1 Y: " + BitConverter.ToUInt32(br_read(4), 0));
135 Common.SendToDebug("Param1 X: " + BitConverter.ToUInt32(br_read(4), 0)); 135 Common.SendToDebug("Param1 X: " + BitConverter.ToUInt32(br_read(4), 0));
136 break; 136 break;
137 // ROTATION s,z,y,x 137 // ROTATION s,z,y,x
138 case LSO_Enums.Operation_Table.PUSHARGQ: 138 case LSO_Enums.Operation_Table.PUSHARGQ:
139 Common.SendToDebug("Param1 S: " + BitConverter.ToUInt32(br_read(4), 0)); 139 Common.SendToDebug("Param1 S: " + BitConverter.ToUInt32(br_read(4), 0));
140 Common.SendToDebug("Param1 Z: " + BitConverter.ToUInt32(br_read(4), 0)); 140 Common.SendToDebug("Param1 Z: " + BitConverter.ToUInt32(br_read(4), 0));
141 Common.SendToDebug("Param1 Y: " + BitConverter.ToUInt32(br_read(4), 0)); 141 Common.SendToDebug("Param1 Y: " + BitConverter.ToUInt32(br_read(4), 0));
142 Common.SendToDebug("Param1 X: " + BitConverter.ToUInt32(br_read(4), 0)); 142 Common.SendToDebug("Param1 X: " + BitConverter.ToUInt32(br_read(4), 0));
143 break; 143 break;
144 // LONG 144 // LONG
145 case LSO_Enums.Operation_Table.PUSHARGE: 145 case LSO_Enums.Operation_Table.PUSHARGE:
146 u32p1 = BitConverter.ToUInt32(br_read(4), 0); 146 u32p1 = BitConverter.ToUInt32(br_read(4), 0);
147 //Common.SendToDebug("Instruction PUSHSP: il.Emit(OpCodes., " + u32p1 + ");"); 147 //Common.SendToDebug("Instruction PUSHSP: il.Emit(OpCodes., " + u32p1 + ");");
148 Common.SendToDebug("Instruction " + idesc + ": Ignoring (not in use according to doc)"); 148 Common.SendToDebug("Instruction " + idesc + ": Ignoring (not in use according to doc)");
149 //Common.SendToDebug("Instruction " + idesc + ": Description: Pushes X bytes of $00 onto the stack (used to put space for local variable memory for a call)"); 149 //Common.SendToDebug("Instruction " + idesc + ": Description: Pushes X bytes of $00 onto the stack (used to put space for local variable memory for a call)");
150 Common.SendToDebug("Param1: " + u32p1); 150 Common.SendToDebug("Param1: " + u32p1);
151 //il.Emit(OpCodes.ldc_i4, u32p1); 151 //il.Emit(OpCodes.ldc_i4, u32p1);
152 //if (u32p1 > 0) { 152 //if (u32p1 > 0) {
153 //for (int _ic=0; _ic < u32p1; _ic++) 153 //for (int _ic=0; _ic < u32p1; _ic++)
154 //{ 154 //{
155 // Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ldnull);"); 155 // Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ldnull);");
156 // il.Emit(OpCodes.Ldnull); 156 // il.Emit(OpCodes.Ldnull);
157 //} 157 //}
158 break; 158 break;
159 // BYTE 159 // BYTE
160 case LSO_Enums.Operation_Table.ADD: 160 case LSO_Enums.Operation_Table.ADD:
161 bp1 = br_read(1)[0]; 161 bp1 = br_read(1)[0];
162 Common.SendToDebug("Instruction " + idesc + ": Add type: " + ((LSO_Enums.OpCode_Add_TypeDefs)bp1).ToString()); 162 Common.SendToDebug("Instruction " + idesc + ": Add type: " + ((LSO_Enums.OpCode_Add_TypeDefs)bp1).ToString());
163 Common.SendToDebug("Param1: " + bp1); 163 Common.SendToDebug("Param1: " + bp1);
164 switch ((LSO_Enums.OpCode_Add_TypeDefs)bp1) 164 switch ((LSO_Enums.OpCode_Add_TypeDefs)bp1)
165 { 165 {
166 case LSO_Enums.OpCode_Add_TypeDefs.String: 166 case LSO_Enums.OpCode_Add_TypeDefs.String:
167 Common.SendToDebug("Instruction " + idesc 167 Common.SendToDebug("Instruction " + idesc
168 + ": il.Emit(OpCodes.Call, typeof(System.String).GetMethod(\"Concat\", new Type[] { typeof(object), typeof(object) }));"); 168 + ": il.Emit(OpCodes.Call, typeof(System.String).GetMethod(\"Concat\", new Type[] { typeof(object), typeof(object) }));");
169 il.Emit(OpCodes.Call, typeof(System.String).GetMethod 169 il.Emit(OpCodes.Call, typeof(System.String).GetMethod
170 ("Concat", new Type[] { typeof(object), typeof(object) })); 170 ("Concat", new Type[] { typeof(object), typeof(object) }));
171 171
172 break; 172 break;
173 case LSO_Enums.OpCode_Add_TypeDefs.UInt32: 173 case LSO_Enums.OpCode_Add_TypeDefs.UInt32:
174 default: 174 default:
175 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Add);"); 175 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Add);");
176 il.Emit(OpCodes.Add); 176 il.Emit(OpCodes.Add);
177 break; 177 break;
178 } 178 }
179 179
180 180
181 //il.Emit(OpCodes.Add, p1); 181 //il.Emit(OpCodes.Add, p1);
182 break; 182 break;
183 case LSO_Enums.Operation_Table.SUB: 183 case LSO_Enums.Operation_Table.SUB:
184 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Sub);"); 184 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Sub);");
185 bp1 = br_read(1)[0]; 185 bp1 = br_read(1)[0];
186 Common.SendToDebug("Param1: " + bp1); 186 Common.SendToDebug("Param1: " + bp1);
187 il.Emit(OpCodes.Sub); 187 il.Emit(OpCodes.Sub);
188 //il.Emit(OpCodes.Sub, p1); 188 //il.Emit(OpCodes.Sub, p1);
189 break; 189 break;
190 case LSO_Enums.Operation_Table.MUL: 190 case LSO_Enums.Operation_Table.MUL:
191 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Mul);"); 191 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Mul);");
192 bp1 = br_read(1)[0]; 192 bp1 = br_read(1)[0];
193 Common.SendToDebug("Param1: " + bp1); 193 Common.SendToDebug("Param1: " + bp1);
194 il.Emit(OpCodes.Mul); 194 il.Emit(OpCodes.Mul);
195 //il.Emit(OpCodes.Mul, p1); 195 //il.Emit(OpCodes.Mul, p1);
196 break; 196 break;
197 case LSO_Enums.Operation_Table.DIV: 197 case LSO_Enums.Operation_Table.DIV:
198 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Div);"); 198 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Div);");
199 bp1 = br_read(1)[0]; 199 bp1 = br_read(1)[0];
200 Common.SendToDebug("Param1: " + bp1); 200 Common.SendToDebug("Param1: " + bp1);
201 il.Emit(OpCodes.Div); 201 il.Emit(OpCodes.Div);
202 //il.Emit(OpCodes.Div, p1); 202 //il.Emit(OpCodes.Div, p1);
203 break; 203 break;
204 case LSO_Enums.Operation_Table.EQ: 204 case LSO_Enums.Operation_Table.EQ:
205 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ceq);"); 205 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ceq);");
206 bp1 = br_read(1)[0]; 206 bp1 = br_read(1)[0];
207 Common.SendToDebug("Param1: " + bp1); 207 Common.SendToDebug("Param1: " + bp1);
208 il.Emit(OpCodes.Ceq); 208 il.Emit(OpCodes.Ceq);
209 //il.Emit(OpCodes.Ceq, p1); 209 //il.Emit(OpCodes.Ceq, p1);
210 break; 210 break;
211 case LSO_Enums.Operation_Table.NEQ: 211 case LSO_Enums.Operation_Table.NEQ:
212 case LSO_Enums.Operation_Table.LEQ: 212 case LSO_Enums.Operation_Table.LEQ:
213 case LSO_Enums.Operation_Table.GEQ: 213 case LSO_Enums.Operation_Table.GEQ:
214 case LSO_Enums.Operation_Table.LESS: 214 case LSO_Enums.Operation_Table.LESS:
215 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Clt_Un);"); 215 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Clt_Un);");
216 bp1 = br_read(1)[0]; 216 bp1 = br_read(1)[0];
217 Common.SendToDebug("Param1: " + bp1); 217 Common.SendToDebug("Param1: " + bp1);
218 il.Emit(OpCodes.Clt_Un); 218 il.Emit(OpCodes.Clt_Un);
219 //il.Emit(OpCodes.Clt, p1); 219 //il.Emit(OpCodes.Clt, p1);
220 break; 220 break;
221 case LSO_Enums.Operation_Table.GREATER: 221 case LSO_Enums.Operation_Table.GREATER:
222 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Cgt_Un);"); 222 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Cgt_Un);");
223 bp1 = br_read(1)[0]; 223 bp1 = br_read(1)[0];
224 Common.SendToDebug("Param1: " + bp1); 224 Common.SendToDebug("Param1: " + bp1);
225 il.Emit(OpCodes.Cgt_Un); 225 il.Emit(OpCodes.Cgt_Un);
226 //il.Emit(OpCodes.Cgt, p1); 226 //il.Emit(OpCodes.Cgt, p1);
227 break; 227 break;
228 case LSO_Enums.Operation_Table.MOD: 228 case LSO_Enums.Operation_Table.MOD:
229 case LSO_Enums.Operation_Table.BOOLOR: 229 case LSO_Enums.Operation_Table.BOOLOR:
230 bp1 = br_read(1)[0]; 230 bp1 = br_read(1)[0];
231 Common.SendToDebug("Param1: " + bp1); 231 Common.SendToDebug("Param1: " + bp1);
232 break; 232 break;
233 // LONG 233 // LONG
234 case LSO_Enums.Operation_Table.JUMP: 234 case LSO_Enums.Operation_Table.JUMP:
235 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0)); 235 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0));
236 break; 236 break;
237 // BYTE, LONG 237 // BYTE, LONG
238 case LSO_Enums.Operation_Table.JUMPIF: 238 case LSO_Enums.Operation_Table.JUMPIF:
239 case LSO_Enums.Operation_Table.JUMPNIF: 239 case LSO_Enums.Operation_Table.JUMPNIF:
240 Common.SendToDebug("Param1: " + br_read(1)[0]); 240 Common.SendToDebug("Param1: " + br_read(1)[0]);
241 Common.SendToDebug("Param2: " + BitConverter.ToUInt32(br_read(4), 0)); 241 Common.SendToDebug("Param2: " + BitConverter.ToUInt32(br_read(4), 0));
242 break; 242 break;
243 // LONG 243 // LONG
244 case LSO_Enums.Operation_Table.STATE: 244 case LSO_Enums.Operation_Table.STATE:
245 bp1 = br_read(1)[0]; 245 bp1 = br_read(1)[0];
246 //il.Emit(OpCodes.Ld); // Load local variable 0 onto stack 246 //il.Emit(OpCodes.Ld); // Load local variable 0 onto stack
247 //il.Emit(OpCodes.Ldc_I4, 0); // Push index position 247 //il.Emit(OpCodes.Ldc_I4, 0); // Push index position
248 //il.Emit(OpCodes.Ldstr, EventList[p1]); // Push value 248 //il.Emit(OpCodes.Ldstr, EventList[p1]); // Push value
249 //il.Emit(OpCodes.Stelem_Ref); // Perform array[index] = value 249 //il.Emit(OpCodes.Stelem_Ref); // Perform array[index] = value
250 break; 250 break;
251 case LSO_Enums.Operation_Table.CALL: 251 case LSO_Enums.Operation_Table.CALL:
252 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0)); 252 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0));
253 break; 253 break;
254 // BYTE 254 // BYTE
255 case LSO_Enums.Operation_Table.CAST: 255 case LSO_Enums.Operation_Table.CAST:
256 bp1 = br_read(1)[0]; 256 bp1 = br_read(1)[0];
257 Common.SendToDebug("Instruction " + idesc + ": Cast to type: " + ((LSO_Enums.OpCode_Cast_TypeDefs)bp1)); 257 Common.SendToDebug("Instruction " + idesc + ": Cast to type: " + ((LSO_Enums.OpCode_Cast_TypeDefs)bp1));
258 Common.SendToDebug("Param1: " + bp1); 258 Common.SendToDebug("Param1: " + bp1);
259 switch ((LSO_Enums.OpCode_Cast_TypeDefs)bp1) 259 switch ((LSO_Enums.OpCode_Cast_TypeDefs)bp1)
260 { 260 {
261 case LSO_Enums.OpCode_Cast_TypeDefs.String: 261 case LSO_Enums.OpCode_Cast_TypeDefs.String:
262 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Calli, typeof(System.Convert).GetMethod(\"ToString\", new Type[] { typeof(object) }));"); 262 Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Calli, typeof(System.Convert).GetMethod(\"ToString\", new Type[] { typeof(object) }));");
263 //il.Emit(OpCodes.Box, typeof (UInt32)); 263 //il.Emit(OpCodes.Box, typeof (UInt32));
264 il.Emit(OpCodes.Calli, typeof(Common).GetMethod 264 il.Emit(OpCodes.Calli, typeof(Common).GetMethod
265 ("Cast_ToString", new Type[] { typeof(object) })); 265 ("Cast_ToString", new Type[] { typeof(object) }));
266 266
267 //il.Emit(OpCodes.Box, typeof(System.UInt32) ); 267 //il.Emit(OpCodes.Box, typeof(System.UInt32) );
268 //il.Emit(OpCodes.Box, typeof(string)); 268 //il.Emit(OpCodes.Box, typeof(string));
269 269
270 //il.Emit(OpCodes.Conv_R8); 270 //il.Emit(OpCodes.Conv_R8);
271 //il.Emit(OpCodes.Call, typeof(System.Convert).GetMethod 271 //il.Emit(OpCodes.Call, typeof(System.Convert).GetMethod
272 // ("ToString", new Type[] { typeof(float) })); 272 // ("ToString", new Type[] { typeof(float) }));
273 273
274 break; 274 break;
275 default: 275 default:
276 Common.SendToDebug("Instruction " + idesc + ": Unknown cast type!"); 276 Common.SendToDebug("Instruction " + idesc + ": Unknown cast type!");
277 break; 277 break;
278 } 278 }
279 break; 279 break;
280 // LONG 280 // LONG
281 case LSO_Enums.Operation_Table.STACKTOS: 281 case LSO_Enums.Operation_Table.STACKTOS:
282 case LSO_Enums.Operation_Table.STACKTOL: 282 case LSO_Enums.Operation_Table.STACKTOL:
283 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0)); 283 Common.SendToDebug("Param1: " + BitConverter.ToUInt32(br_read(4), 0));
284 break; 284 break;
285 // BYTE 285 // BYTE
286 case LSO_Enums.Operation_Table.PRINT: 286 case LSO_Enums.Operation_Table.PRINT:
287 case LSO_Enums.Operation_Table.CALLLIB: 287 case LSO_Enums.Operation_Table.CALLLIB:
288 Common.SendToDebug("Param1: " + br_read(1)[0]); 288 Common.SendToDebug("Param1: " + br_read(1)[0]);
289 break; 289 break;
290 // SHORT 290 // SHORT
291 case LSO_Enums.Operation_Table.CALLLIB_TWO_BYTE: 291 case LSO_Enums.Operation_Table.CALLLIB_TWO_BYTE:
292 // TODO: What is size of short? 292 // TODO: What is size of short?
293 UInt16 U16p1 = BitConverter.ToUInt16(br_read(2), 0); 293 UInt16 U16p1 = BitConverter.ToUInt16(br_read(2), 0);
294 Common.SendToDebug("Instruction " + idesc + ": Builtin Command: " + ((LSO_Enums.BuiltIn_Functions)U16p1).ToString()); 294 Common.SendToDebug("Instruction " + idesc + ": Builtin Command: " + ((LSO_Enums.BuiltIn_Functions)U16p1).ToString());
295 Common.SendToDebug("Param1: " + U16p1); 295 Common.SendToDebug("Param1: " + U16p1);
296 switch ((LSO_Enums.BuiltIn_Functions)U16p1) 296 switch ((LSO_Enums.BuiltIn_Functions)U16p1)
297 { 297 {
298 case LSO_Enums.BuiltIn_Functions.llSay: 298 case LSO_Enums.BuiltIn_Functions.llSay:
299 Common.SendToDebug("Instruction " + idesc + " " + ((LSO_Enums.BuiltIn_Functions)U16p1).ToString() 299 Common.SendToDebug("Instruction " + idesc + " " + ((LSO_Enums.BuiltIn_Functions)U16p1).ToString()
300 + ": Mapped to internal function"); 300 + ": Mapped to internal function");
301 301
302 //il.Emit(OpCodes.Ldstr, "INTERNAL COMMAND: llSay({0}, \"{1}\""); 302 //il.Emit(OpCodes.Ldstr, "INTERNAL COMMAND: llSay({0}, \"{1}\"");
303 //il.Emit(OpCodes.Call, typeof(IL_Helper).GetMethod("ReverseFormatString", 303 //il.Emit(OpCodes.Call, typeof(IL_Helper).GetMethod("ReverseFormatString",
304 // new Type[] { typeof(string), typeof(UInt32), typeof(string) } 304 // new Type[] { typeof(string), typeof(UInt32), typeof(string) }
305 //)); 305 //));
306 306
307 307
308 //il.Emit(OpCodes.Pop); 308 //il.Emit(OpCodes.Pop);
309 //il.Emit(OpCodes.Call, 309 //il.Emit(OpCodes.Call,
310 // typeof(Console).GetMethod("WriteLine", 310 // typeof(Console).GetMethod("WriteLine",
311 // new Type[] { typeof(string) } 311 // new Type[] { typeof(string) }
312 //)); 312 //));
313 313
314 314
315 il.Emit(OpCodes.Call, 315 il.Emit(OpCodes.Call,
316 typeof(Common).GetMethod("SendToLog", 316 typeof(Common).GetMethod("SendToLog",
317 new Type[] { typeof(string) } 317 new Type[] { typeof(string) }
318 )); 318 ));
319 319
320 320
321 321
322 //il.Emit(OpCodes.Pop); 322 //il.Emit(OpCodes.Pop);
323 323
324 //il.Emit(OpCodes.Ldind_I2, 0); 324 //il.Emit(OpCodes.Ldind_I2, 0);
325 325
326 //il.Emit(OpCodes.Call, typeof(string).GetMethod("Format", new Type[] { typeof(string), typeof(object) })); 326 //il.Emit(OpCodes.Call, typeof(string).GetMethod("Format", new Type[] { typeof(string), typeof(object) }));
327 //il.EmitCalli(OpCodes.Calli, 327 //il.EmitCalli(OpCodes.Calli,
328 //il.Emit(OpCodes.Call, typeof().GetMethod 328 //il.Emit(OpCodes.Call, typeof().GetMethod
329 // ("llSay", new Type[] { typeof(UInt32), typeof(string) })); 329 // ("llSay", new Type[] { typeof(UInt32), typeof(string) }));
330 break; 330 break;
331 default: 331 default:
332 Common.SendToDebug("Instruction " + idesc + ": " + ((LSO_Enums.BuiltIn_Functions)U16p1).ToString() + ": INTERNAL COMMAND NOT IMPLEMENTED"); 332 Common.SendToDebug("Instruction " + idesc + ": " + ((LSO_Enums.BuiltIn_Functions)U16p1).ToString() + ": INTERNAL COMMAND NOT IMPLEMENTED");
333 break; 333 break;
334 } 334 }
335 335
336 //Common.SendToDebug("Instruction " + idesc + ": DEBUG: Faking return code:"); 336 //Common.SendToDebug("Instruction " + idesc + ": DEBUG: Faking return code:");
337 //Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ldc_I4, 0);"); 337 //Common.SendToDebug("Instruction " + idesc + ": il.Emit(OpCodes.Ldc_I4, 0);");
338 //il.Emit(OpCodes.Ldc_I4, 0); 338 //il.Emit(OpCodes.Ldc_I4, 0);
339 break; 339 break;
340 340
341 // RETURN 341 // RETURN
342 case LSO_Enums.Operation_Table.RETURN: 342 case LSO_Enums.Operation_Table.RETURN:
343 343
344 Common.SendToDebug("Last OPCODE was return command. Code chunk execution complete."); 344 Common.SendToDebug("Last OPCODE was return command. Code chunk execution complete.");
345 return true; 345 return true;
346 } 346 }
347 return false; 347 return false;
348 } 348 }
349 349
350 } 350 }
351 } 351 }
diff --git a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScript.cs b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScript.cs
index 4ee4d37..49357f5 100644
--- a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScript.cs
+++ b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScript.cs
@@ -1,33 +1,33 @@
1using System; 1using System;
2using System.Collections.Generic; 2using System.Collections.Generic;
3using System.Text; 3using System.Text;
4 4
5using OpenSim.Region.Scripting; 5using OpenSim.Region.Scripting;
6using OpenSim.Region.Scripting.LSL; 6using OpenSim.Region.Scripting.LSL;
7 7
8namespace OpenSim.Region.Scripting.LSL 8namespace OpenSim.Region.Scripting.LSL
9{ 9{
10 class LSLScript : IScript 10 class LSLScript : IScript
11 { 11 {
12 ScriptInfo scriptInfo; 12 ScriptInfo scriptInfo;
13 LSL.Engine lindenScriptEngine; 13 LSL.Engine lindenScriptEngine;
14 14
15 public LSLScript(string filename, libsecondlife.LLUUID taskObject) 15 public LSLScript(string filename, libsecondlife.LLUUID taskObject)
16 { 16 {
17 scriptInfo.CreateTaskAPI(taskObject); 17 scriptInfo.CreateTaskAPI(taskObject);
18 18
19 lindenScriptEngine = new Engine(); 19 lindenScriptEngine = new Engine();
20 lindenScriptEngine.Start(filename); 20 lindenScriptEngine.Start(filename);
21 } 21 }
22 22
23 public void Initialise(ScriptInfo info) 23 public void Initialise(ScriptInfo info)
24 { 24 {
25 scriptInfo = info; 25 scriptInfo = info;
26 } 26 }
27 27
28 public string getName() 28 public string getName()
29 { 29 {
30 return "LSL Script"; 30 return "LSL Script";
31 } 31 }
32 } 32 }
33} 33}
diff --git a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScriptEngine.cs b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScriptEngine.cs
index 10706ad..c232c2f 100644
--- a/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScriptEngine.cs
+++ b/OpenSim/Region/Environment/Scenes/scripting/Engines/LSLEngine/LSLScriptEngine.cs
@@ -1,27 +1,27 @@
1using System; 1using System;
2using System.Collections.Generic; 2using System.Collections.Generic;
3using System.Text; 3using System.Text;
4 4
5using OpenSim.Region.Scripting; 5using OpenSim.Region.Scripting;
6using OpenSim.Region.Scripting.LSL; 6using OpenSim.Region.Scripting.LSL;
7 7
8namespace OpenSim.Region.Scripting 8namespace OpenSim.Region.Scripting
9{ 9{
10 public class LSLEngine : IScriptCompiler 10 public class LSLEngine : IScriptCompiler
11 { 11 {
12 public string FileExt() 12 public string FileExt()
13 { 13 {
14 return ".lso"; 14 return ".lso";
15 } 15 }
16 16
17 public Dictionary<string, IScript> compile(string filename) 17 public Dictionary<string, IScript> compile(string filename)
18 { 18 {
19 LSLScript script = new LSLScript(filename, libsecondlife.LLUUID.Zero); 19 LSLScript script = new LSLScript(filename, libsecondlife.LLUUID.Zero);
20 Dictionary<string, IScript> returns = new Dictionary<string, IScript>(); 20 Dictionary<string, IScript> returns = new Dictionary<string, IScript>();
21 21
22 returns.Add(filename, script); 22 returns.Add(filename, script);
23 23
24 return returns; 24 return returns;
25 } 25 }
26 } 26 }
27} \ No newline at end of file 27} \ No newline at end of file