Boot Sequence I would need some help
Anubisbot
Posts: 112
Hi All...
I know a lot of you will say, look around in the forum.
I did and found a lot of information, but it seams , i am to dump to understand them.
Ok first of all here is what i am planing to do.( Have to do!!!)
I need to write in VB express 2008 a class, what does the loading of a program file to the Prop eerom.
So like the VB Loader here in the forum. But i need it as a class so i can use it in later projects and in Dark Basic Pro.
I got the Boot Sequence here in front of me, what i have found here on the net.
PC: set 115200-8-N-1
DTR low
wait at least 10ms
DTR high
wait 100ms (+-10% tolerance)
send $F9 (%0100111111 timing calibration)
LFSR: taps = $B2, initialy = "P"
send bitwise LFSR[noparse][[/noparse]250] ($FF/$FE)
send $F9[noparse][[/noparse]250+8] for bitwise responses ($FE/$FF)
receive bitwise LFSR[noparse][[/noparse]250] + version[noparse][[/noparse]8] within 50ms
if timeout or mismatch, done (hardware not found error)
send encoded command long (up to 3 bits sent per serial byte):
0 = shutdown
1 = load ram, then run
2 = load ram+eeprom+verify, then shutdown
3 = load ram+eeprom+verify, then run
if command 0, done (okay)
send encoded length long
send encoded data longs
send $F9 every 10ms for bitwise response(s):
if command 1-3, receive bitwise checksum pass/fail within 10(?) seconds
if timeout, done (connection error)
if checksum fail, done (checksum error)
if command 1, done (okay)
if command 2-3, receive bitwise program pass/fail within 5 seconds
if timeout, done (connection error)
if program fail, done (program error)
receive bitwise verify pass/fail within 2 seconds
if timeout, done (connection error)
if verify fail, done (verify error)
done (okay)
Right now i dont understand the parts in bold. Can some one explain the processes a bit more simple or other words.
Ok what i undestand is that i load the file in an array in this case LFSR [noparse][[/noparse]250] and i have to send it bitwise but what is ($FF/$FE).
If some one could help that would be great. Since my brain is already burning...
I know a lot of you will say, look around in the forum.
I did and found a lot of information, but it seams , i am to dump to understand them.
Ok first of all here is what i am planing to do.( Have to do!!!)
I need to write in VB express 2008 a class, what does the loading of a program file to the Prop eerom.
So like the VB Loader here in the forum. But i need it as a class so i can use it in later projects and in Dark Basic Pro.
I got the Boot Sequence here in front of me, what i have found here on the net.
PC: set 115200-8-N-1
DTR low
wait at least 10ms
DTR high
wait 100ms (+-10% tolerance)
send $F9 (%0100111111 timing calibration)
LFSR: taps = $B2, initialy = "P"
send bitwise LFSR[noparse][[/noparse]250] ($FF/$FE)
send $F9[noparse][[/noparse]250+8] for bitwise responses ($FE/$FF)
receive bitwise LFSR[noparse][[/noparse]250] + version[noparse][[/noparse]8] within 50ms
if timeout or mismatch, done (hardware not found error)
send encoded command long (up to 3 bits sent per serial byte):
0 = shutdown
1 = load ram, then run
2 = load ram+eeprom+verify, then shutdown
3 = load ram+eeprom+verify, then run
if command 0, done (okay)
send encoded length long
send encoded data longs
send $F9 every 10ms for bitwise response(s):
if command 1-3, receive bitwise checksum pass/fail within 10(?) seconds
if timeout, done (connection error)
if checksum fail, done (checksum error)
if command 1, done (okay)
if command 2-3, receive bitwise program pass/fail within 5 seconds
if timeout, done (connection error)
if program fail, done (program error)
receive bitwise verify pass/fail within 2 seconds
if timeout, done (connection error)
if verify fail, done (verify error)
done (okay)
Right now i dont understand the parts in bold. Can some one explain the processes a bit more simple or other words.
Ok what i undestand is that i load the file in an array in this case LFSR [noparse][[/noparse]250] and i have to send it bitwise but what is ($FF/$FE).
If some one could help that would be great. Since my brain is already burning...
Comments
Look through one of the bootloaders ... either the one in Spin or in Python and you'll see how this works.
Look under "Propeller loader" in Graham Stabler's thread index (http://forums.parallax.com/showthread.php?p=609066)
http://forums.parallax.com/showthread.php?p=670593
Its a discussion about this F9 FE FF thing, and I have posted a picture there that shows what's going on.
Andy