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 |
|
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 |
|
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(" |
184 | //Console.Write(" 0% [ ]"); |
| 199 | //dldisplaystate |
- | |
| 200 | 185 | ||
| - | 186 | if (percent >= lastpercent+2.5) { |
|
| - | 187 | //Console.WriteLine(percent); |
|
| - | 188 | Console.Write("="); |
|
| 201 |
|
189 | nrOfTicks++; |
| - | 190 | lastpercent = lastpercent+2.5; |
|
| - | 191 | } |
|
| - | 192 | if (percent > lasttenpercent+10) { |
|
| - | 193 | Console.Write("\r"); |
|
| 202 |
|
194 | Console.Write(" "+Math.Round(percent,0)+"% ["); |
| 203 | 195 | ||
| 204 | if (percent>9 && dldisplaystate==0) { |
- | |
| 205 | Console.Write("\r"); |
- | |
| 206 |
|
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 |
|
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 |
198 | Console.Write("="); |
| 243 | dldisplaystate=10; |
- | |
| 244 | } |
199 | } |
| 245 |
|
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; |