Subversion Repositories HomeAutomation

Rev

Rev 1889 | Rev 2083 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 1889 Rev 1968
Line 6... Line 6...
6
Node_ProgramClientId = null;
6
Node_ProgramClientId = null;
7
 
7
 
8
Node_WaitClientId = null;
8
Node_WaitClientId = null;
9
 
9
 
10
Node_HexData = "";
10
Node_HexData = "";
-
 
11
Node_HexNumLines = 0;
11
 
12
 
12
function Node_OnChange(node_id, available)
13
function Node_OnChange(node_id, available)
13
{
14
{
14
    if (node_id == Node_ResetNodeId && available)
15
    if (node_id == Node_ResetNodeId && available)
15
    {
16
    {
Line 145... Line 146...
145
   
146
   
146
    return true;
147
    return true;
147
}
148
}
148
Console_RegisterCommand(Node_Program, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Node_GetAvailableIds(), [0, 1]); });
149
Console_RegisterCommand(Node_Program, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Node_GetAvailableIds(), [0, 1]); });
149
 
150
 
150
function Node_ProgramHex(node_id, bios)
151
function Node_ProgramHex(node_id, bios, hexnumlines)
151
{
152
{
152
    if (arguments.length < 2)
153
    if (arguments.length < 2)
153
    {
154
    {
154
        Log("\033[31mNot enough parameters given.\033[0m\n");
155
        Log("\033[31mNot enough parameters given.\033[0m\n");
-
 
156
        return false;
-
 
157
    }
-
 
158
    if (Node_HexNumLines != hexnumlines)
-
 
159
    {
-
 
160
        Log("\033[31mNumber of hex lines does not match received (" + Node_HexNumLines + " received, should be " + hexnumlines + ").\033[0m\n");
155
        return false;
161
        return false;
156
    }
162
    }
157
   
163
   
158
    Log("Initiating programming of " + node_id + "...\n");
164
    Log("Initiating programming of " + node_id + "...\n");
159
   
165
   
160
    if (!NodeExport_ProgramNodeHex(node_id, bios > 0, Node_HexData))
166
    if (!NodeExport_ProgramNodeHex(node_id, bios > 0, Node_HexData))
161
    {
167
    {
162
        Log("\033[31mFailed to start programming.\033[0m\n");
168
        Log("\033[31mFailed to start programming.\033[0m\n");
163
        return false;
169
        return false;
164
    }
170
    }
165
   
171
   
166
    Node_ResetClientId = Console_GetClientId();
172
    Node_ResetClientId = Console_GetClientId();
167
    Node_ResetNodeId = node_id;
173
    Node_ResetNodeId = node_id;
168
    Console_PreventDefaultPrompt();
174
    Console_PreventDefaultPrompt();
169
 
175
 
170
    Node_HexData = "";
176
    Node_HexData = "";
-
 
177
    Node_HexNumLines = 0;
-
 
178
 
171
 
179
 
172
    return true;
180
    return true;
173
}
181
}
174
Console_RegisterCommand(Node_ProgramHex, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Node_GetAvailableIds(), [0, 1]); });
182
Console_RegisterCommand(Node_ProgramHex, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Node_GetAvailableIds(), [0, 1]); });
175
 
183
 
176
function Node_ClearHex()
184
function Node_ClearHex()
177
{
185
{
178
//    Log("Clearing hexdata...\n");
186
//    Log("Clearing hexdata...\n");
179
   
187
   
180
    Node_HexData = "";
188
    Node_HexData = "";
-
 
189
    Node_HexNumLines = 0;
181
 
190
 
182
    return true;
191
    return true;
183
}
192
}
184
Console_RegisterCommand(Node_ClearHex);
193
Console_RegisterCommand(Node_ClearHex);
185
 
194
 
Line 192... Line 201...
192
    }
201
    }
193
   
202
   
194
//    Log("Appending hexrow...\n");
203
//    Log("Appending hexrow...\n");
195
   
204
   
196
    Node_HexData = Node_HexData + hexrow + "\n";
205
    Node_HexData = Node_HexData + hexrow + "\n";
-
 
206
    Node_HexNumLines += 1;
197
 
207
 
198
    return true;
208
    return true;
199
}
209
}
200
Console_RegisterCommand(Node_AppendHex);
210
Console_RegisterCommand(Node_AppendHex);
201
 
211