Subversion Repositories HomeAutomation

Rev

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

Rev 877 Rev 878
Line 98... Line 98...
98
        ulong currentAddress = 0;
98
        ulong currentAddress = 0;
99
        bool done = false;
99
        bool done = false;
100
        bool errorOccured = false;
100
        bool errorOccured = false;
101
       
101
       
102
        //int rotstate=0;
102
        //int rotstate=0;
103
        int dldisplaystate=0;
103
        //int dldisplaystate=0;
-
 
104
        double lastpercent=0;
-
 
105
        double lasttenpercent=0;
-
 
106
        int nrOfTicks=0;
104
       
107
       
105
        try {
108
        try {
106
            if (isBiosUpdate) {
109
            if (isBiosUpdate) {
107
                dlOffset = hf.getAddrLower();
110
                dlOffset = hf.getAddrLower();
108
                //Console.WriteLine(dlOffset);
111
                //Console.WriteLine(dlOffset);
Line 138... Line 141...
138
                        t = Environment.TickCount;
141
                        t = Environment.TickCount;
139
                        t2 = Environment.TickCount;
142
                        t2 = Environment.TickCount;
140
                        pgs = dState.WAIT_ACK_PRG;
143
                        pgs = dState.WAIT_ACK_PRG;
141
                        timeStart = Environment.TickCount;
144
                        timeStart = Environment.TickCount;
142
                        Console.WriteLine("Downloading...");
145
                        Console.WriteLine("Downloading...");
-
 
146
                        Console.Write("  0% [                                        ]\r");
143
                        Console.Write("  0%");
147
                        Console.Write("  0% [");
144
                        break;
148
                        break;
145
                   
149
                   
146
                   
150
                   
147
                    case dState.WAIT_ACK_PRG:
151
                    case dState.WAIT_ACK_PRG:
148
                        // Check for timeout, resend start packet in that case..
152
                        // Check for timeout, resend start packet in that case..
Line 173... Line 177...
173
                            }
177
                            }
174
                        }
178
                        }
175
                        break;
179
                        break;
176
                       
180
                       
177
                    case dState.SEND_PGM_DATA:
181
                    case dState.SEND_PGM_DATA:
178
                        //Console.WriteLine("byteSent = "+byteSent);
-
 
179
//disable                       Console.Write(".");
-
 
180
//Console.Write("\b");
-
 
181
//int curleft = Console.CursorLeft;
-
 
182
//int curtop = Console.CursorTop;
-
 
183
//Console.SetCursorPosition(curleft, curtop-1);
-
 
184
 
182
 
185
//if (rotstate==0) {
-
 
186
//   Console.Write("-");
183
                        double percent = (double)byteSent*100/((double)hf.getAddrUpper()-(double)currentAddress);
187
//   rotstate=1;
-
 
188
//} else if (rotstate==1) {
-
 
189
//   Console.Write("\\");
-
 
190
//   rotstate=2;
-
 
191
//} else if (rotstate==2) {
-
 
192
//   Console.Write("|");
-
 
193
//   rotstate=3;
-
 
194
//} else if (rotstate==3) {
-
 
195
//   Console.Write("/");
-
 
196
//   rotstate=0;
-
 
197
//}
-
 
198
//Console.Write("\r");
184
                        //Console.Write("  0% [                                        ]");
199
//dldisplaystate
-
 
200
 
185
 
-
 
186
                        if (percent >= lastpercent+2.5) {
-
 
187
                        //Console.WriteLine(percent);
-
 
188
                           Console.Write("=");
201
//FULHACK deulx
189
                           nrOfTicks++;
-
 
190
                           lastpercent = lastpercent+2.5;
-
 
191
                        }
-
 
192
                        if (percent > lasttenpercent+10) {
-
 
193
                           Console.Write("\r");
202
                        ulong percent = byteSent*100/(hf.getAddrUpper()-currentAddress);
194
                           Console.Write(" "+Math.Round(percent,0)+"% [");
203
                       
195
                           
204
                        if (percent>9 && dldisplaystate==0) {
-
 
205
                           Console.Write("\r");
-
 
206
                           Console.Write(" "+percent+"%");
196
                           lasttenpercent = percent;
207
                           dldisplaystate=1;
-
 
208
                        } else if (percent>19 && dldisplaystate==1) {
-
 
209
                           Console.Write("\r");
-
 
210
                           Console.Write(" "+percent+"%");
-
 
211
                           dldisplaystate=2;
-
 
212
                        } else if (percent>29 && dldisplaystate==2) {
-
 
213
                           Console.Write("\r");
-
 
214
                           Console.Write(" "+percent+"%");
-
 
215
                           dldisplaystate=3;
-
 
216
                        } else if (percent>39 && dldisplaystate==3) {
-
 
217
                           Console.Write("\r");
-
 
218
                           Console.Write(" "+percent+"%");
-
 
219
                           dldisplaystate=4;
-
 
220
                        } else if (percent>49 && dldisplaystate==4) {
-
 
221
                           Console.Write("\r");
-
 
222
                           Console.Write(" "+percent+"%");
-
 
223
                           dldisplaystate=5;
-
 
224
                        } else if (percent>59 && dldisplaystate==5) {
-
 
225
                           Console.Write("\r");
-
 
226
                           Console.Write(" "+percent+"%");
-
 
227
                           dldisplaystate=6;
-
 
228
                        } else if (percent>69 && dldisplaystate==6) {
-
 
229
                           Console.Write("\r");
-
 
230
                           Console.Write(" "+percent+"%");
-
 
231
                           dldisplaystate=7;
-
 
232
                        } else if (percent>79 && dldisplaystate==7) {
-
 
233
                           Console.Write("\r");
-
 
234
                           Console.Write(" "+percent+"%");
-
 
235
                           dldisplaystate=8;
-
 
236
                        } else if (percent>89 && dldisplaystate==8) {
-
 
237
                           Console.Write("\r");
-
 
238
                           Console.Write(" "+percent+"%");
197
                           for (int i=0; i<nrOfTicks; i++) {
239
                           dldisplaystate=9;
-
 
240
                        } else if (percent>99 && dldisplaystate==9) {
-
 
241
                           Console.Write("\r");
-
 
242
                           Console.Write(" "+percent+"%");
198
                              Console.Write("=");
243
                           dldisplaystate=10;
-
 
244
                        }
199
                           }
245
                        Console.Write(".");
200
                        }
-
 
201
 
246
 
202
 
247
                        // Send program data.
203
                        // Send program data.
248
                        byte datalength = 2;
204
                        byte datalength = 2;
249
                        for (ulong i = 0; i < 6; i++) {
205
                        for (ulong i = 0; i < 6; i++) {
250
                            // Populate data.
206
                            // Populate data.
Line 313... Line 269...
313
                        }
269
                        }
314
                        break;
270
                        break;
315
                       
271
                       
316
                    case dState.SEND_DONE:
272
                    case dState.SEND_DONE:
317
                       Console.Write("\r");
273
                       Console.Write("\r");
318
                       Console.Write("100%");
274
                       Console.Write("100% [========================================]  ");
319
                        // Send done
275
                        // Send done
320
                        outCm = cpn.getPgmEndPacket();
276
                        outCm = cpn.getPgmEndPacket();
321
                        dc.sendCanPacket(outCm);
277
                        dc.sendCanPacket(outCm);
322
 
278
 
323
                        t = Environment.TickCount;
279
                        t = Environment.TickCount;