by i-Bot » Sun Aug 27, 2006 8:23 pm
by i-Bot
Sun Aug 27, 2006 8:23 pm
1)To extract the existing code is fairly easy.
Use hexedit to display the Robobasic .exe
select the C3024 code ( 0024290c to 0024ED1B) to a file and run Bin2hex to make a hex file.
This can be loaded to AVR studio to down loan to a virgin ATMega, also to view the dissassembled code.
I used disavr2 to disassemble too, but this does seem to wrap addresses. However it is better since addresses are not relative.
I have commented the initalisation, serial command decode, and the Intermediate code interpretter, though not fixed all the addresses.
I still have problems with the serial interface over bluetooth, even at constant 115K. It is slow. I need to figure this out.
2) The existing code is pretty clever in the servo and timer level. the group moves, gyro support etc is accessible through data memory, as well as the serial commands. Hence why we want to reuse it through serial control.
If you can offer a replacement this is good, but do not underestimate the current capability (group moves, gyro support)
3) The weakness of the current protocol is that it is byte by byte ping pong. not very efficient over wireless ! Also the C3024 spend a lot of time waiting on serial replies.
1)To extract the existing code is fairly easy.
Use hexedit to display the Robobasic .exe
select the C3024 code ( 0024290c to 0024ED1B) to a file and run Bin2hex to make a hex file.
This can be loaded to AVR studio to down loan to a virgin ATMega, also to view the dissassembled code.
I used disavr2 to disassemble too, but this does seem to wrap addresses. However it is better since addresses are not relative.
I have commented the initalisation, serial command decode, and the Intermediate code interpretter, though not fixed all the addresses.
I still have problems with the serial interface over bluetooth, even at constant 115K. It is slow. I need to figure this out.
2) The existing code is pretty clever in the servo and timer level. the group moves, gyro support etc is accessible through data memory, as well as the serial commands. Hence why we want to reuse it through serial control.
If you can offer a replacement this is good, but do not underestimate the current capability (group moves, gyro support)
3) The weakness of the current protocol is that it is byte by byte ping pong. not very efficient over wireless ! Also the C3024 spend a lot of time waiting on serial replies.