- improved openblt_net.dll implementation by adding configurable feature for automatic socket connection retry.

git-svn-id: https://svn.code.sf.net/p/openblt/code/trunk@94 5dc33758-31d5-4daf-9ae8-b24bf3d40d73
This commit is contained in:
Frank Voorburg 2014-07-18 10:55:23 +00:00
parent 523961a7de
commit 1483e686bb
35 changed files with 5276 additions and 3693 deletions

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -81,6 +81,7 @@ type
edtPort: TEdit;
edtTconnect: TEdit;
lblTconnect: TLabel;
chbSocketRetry: TCheckBox;
procedure btnOKClick(Sender: TObject);
procedure btnCancelClick(Sender: TObject);
procedure btnBrowseClick(Sender: TObject);
@ -207,6 +208,7 @@ begin
// NET related elements
FSettingsForm.edtHostname.Text := settingsIni.ReadString('net', 'hostname', '169.254.19.63');
FSettingsForm.edtPort.Text := settingsIni.ReadString('net', 'port', '1000');
FSettingsForm.chbSocketRetry.Checked := settingsIni.ReadBool('net', 'retry', false);
// XCP related elements
FSettingsForm.edtSeedKey.Text := settingsIni.ReadString('xcp', 'seedkey', ExtractFilePath(ParamStr(0))+'');
@ -226,6 +228,7 @@ begin
// NET related elements
FSettingsForm.edtHostname.Text := '169.254.19.63';
FSettingsForm.edtPort.Text := '1000';
FSettingsForm.chbSocketRetry.Checked := false;
// XCP related elements
FSettingsForm.edtSeedKey.Text := ExtractFilePath(ParamStr(0))+'';
@ -248,6 +251,7 @@ begin
// NET related elements
settingsIni.WriteString('net', 'hostname', FSettingsForm.edtHostname.Text);
settingsIni.WriteString('net', 'port', FSettingsForm.edtPort.Text);
settingsIni.WriteBool('net', 'retry', FSettingsForm.chbSocketRetry.Checked);
// XCP related elements
settingsIni.WriteString('xcp', 'seedkey', FSettingsForm.edtSeedKey.Text);

View File

@ -1,6 +1,6 @@
unit XcpTransport;
//***************************************************************************************
// Description: XCP transport layer for SCI.
// Description: XCP transport layer for NET.
// File Name: XcpTransport.pas
//
//---------------------------------------------------------------------------------------
@ -41,7 +41,7 @@ interface
// Includes
//***************************************************************************************
uses
Windows, Messages, SysUtils, Classes, Forms, IniFiles, Winsock, WSocket;
Windows, Messages, SysUtils, Classes, Forms, IniFiles, WinSock, WSockets;
//***************************************************************************************
@ -55,7 +55,7 @@ const kTcpConnectedTimeoutMs = 1000; // timeout for connecting the socket
// Type Definitions
//***************************************************************************************
type
TXcpTransportInfo = (kNone, kConnected, kResponse, kError);
TXcpTransportInfo = (kNone, kResponse, kError);
type
@ -63,12 +63,12 @@ type
private
comEventInfo : TXcpTransportInfo;
comEvent : THandle;
socket : TWSocket;
socket : TTCPClient;
hostname : string;
port : string;
connectRetry : Boolean;
croCounter : LongWord;
procedure OnSocketSessionConnected(Sender: TObject; Error: Word);
procedure OnSocketDataAvailable(Sender: TObject; ErrCode: Word);
procedure OnSocketDataAvailable(Sender: TObject; WinSocket: TSocket);
function MsgWaitForSingleObject(hHandle: THandle; dwMilliseconds: DWORD): DWORD;
public
packetData : array[0..kMaxPacketSize-1] of Byte;
@ -107,11 +107,10 @@ begin
'Error', MB_OK or MB_ICONERROR );
// create a socket instance
socket := TWSocket.Create(nil);
socket := TTCPClient.Create(nil);
// set the socket event handlers
socket.OnSessionConnected := OnSocketSessionConnected;
socket.OnDataAvailable := OnSocketDataAvailable;
socket.OnData := OnSocketDataAvailable;
// init CRO counter value
croCounter := 1;
@ -161,18 +160,23 @@ begin
// configure port
port := settingsIni.ReadString('net', 'port', '1000');
// configure the connection retry feature
connectRetry := settingsIni.ReadBool('net', 'retry', false);
// release ini file object
settingsIni.Free;
end
else
begin
// configure defeault hostname
// configure default hostname
hostname := '169.254.19.63';
// configure default port
port := '1000';
end;
// configure default connection retry feature setting
connectRetry := false;
end;
end; //*** end of Configure ***
@ -185,46 +189,44 @@ end; //*** end of Configure ***
//***************************************************************************************
function TXcpTransport.Connect: Boolean;
var
waitResult: Integer;
connectTimeout : DWord;
begin
// make sure the event is reset
ResetEvent(comEvent);
comEventInfo := kNone;
// init CRO counter value
croCounter := 1;
// make sure the socket is closed
if socket.State <> wsClosed then
if socket.SocketState <> ssClosed then
begin
socket.Close;
socket.WaitForClose;
Disconnect;
end;
// set the hostname, port and protocol
socket.Addr := hostname;
// set the hostname and port
socket.Host := hostname;
socket.Port := port;
socket.Proto := 'tcp';
// submit the connect request
socket.Connect;
// set timeout time
connectTimeout := GetTickCount + 1000;
// connection is being established. Now wait for the connected event
waitResult := MsgWaitForSingleObject(comEvent, kTcpConnectedTimeoutMs);
if waitResult <> WAIT_OBJECT_0 then
// submit request to open the socket
socket.Open;
// wait for the connection to be established
while socket.SocketState <> ssConnected do
begin
// no com event triggered so either a timeout or internal error occurred
result := false;
Exit;
// check timeout if connection retry feature is enabled
if connectRetry then
begin
// check for timeout
if GetTickCount > connectTimeout then
begin
result := false;
Exit;
end;
end;
Application.ProcessMessages;
Sleep(1);
end;
// com event was triggered. now check that it is actually not an error
if comEventInfo <> kConnected then
begin
result := false;
Exit;
end;
// successfully connected
result := true;
end; //*** end of Connect ***
@ -271,7 +273,7 @@ begin
end;
// submit the packet transmission request
if socket.Send(@msgData[0], packetLen+4) = -1 then
if socket.WriteBuffer(@msgData[0], packetLen+4) = -1 then
begin
// unable to submit tx request
Exit;
@ -310,46 +312,24 @@ procedure TXcpTransport.Disconnect;
begin
// close the socket
socket.Close;
socket.WaitForClose;
end; //*** end of Disconnect ***
//***************************************************************************************
// NAME: OnSocketSessionConnected
// PARAMETER: Sender is the source that triggered the event.
// Error contains possible connection error information.
// RETURN VALUE: none
// DESCRIPTION: Socket connected event handler
//
//***************************************************************************************
procedure TXcpTransport.OnSocketSessionConnected(Sender: TObject; Error: Word);
begin
// set event flag
if Error <> 0 then
comEventInfo := kError
else
comEventInfo := kConnected;
// trigger the event
SetEvent(comEvent);
end; //*** end of OnSocketSessionConnected ***
//***************************************************************************************
// NAME: OnSocketDataAvailable
// PARAMETER: Sender is the source that triggered the event.
// Error contains possible data reception error information.
// Socket is the socket on which the event occurred.
// RETURN VALUE: none
// DESCRIPTION: Socket data reception event handler
//
//***************************************************************************************
procedure TXcpTransport.OnSocketDataAvailable(Sender: TObject; ErrCode: Word);
procedure TXcpTransport.OnSocketDataAvailable(Sender: TObject; WinSocket: TSocket);
var
tempBuffer : array[0..kMaxPacketSize-1] of Byte;
count : Integer;
idx : Integer;
begin
count := socket.Receive(@tempBuffer[0], kMaxPacketSize);
count := socket.ReadBuffer(@tempBuffer[0], kMaxPacketSize);
// the first 4 bytes contains the dto counter in which we are not really interested
packetLen := count - 4;
// store the response data
@ -394,7 +374,6 @@ begin
begin
// process these messages
Application.ProcessMessages;
socket.MessagePump;
// check for timeout manually because if a message in the queue occurred, the
// MsgWaitForMultipleObjects will be called again and the timer will start from

View File

@ -1,6 +1,6 @@
unit XcpTransport;
//***************************************************************************************
// Description: XCP transport layer for SCI.
// Description: XCP transport layer for NET.
// File Name: XcpTransport.pas
//
//---------------------------------------------------------------------------------------
@ -41,7 +41,7 @@ interface
// Includes
//***************************************************************************************
uses
Windows, Messages, SysUtils, Classes, Forms, IniFiles, Winsock, WSocket;
Windows, Messages, SysUtils, Classes, Forms, IniFiles, WinSock, WSockets;
//***************************************************************************************
@ -49,14 +49,13 @@ uses
//***************************************************************************************
const kMaxPacketSize = 256 + 4; // 4 extra for TCP/IP counter overhead
const kTcpConnectedTimeoutMs = 1000; // timeout for connecting the socket
const kTcpMinReceptionTimeoutMs = 1000; // minimal timeout for data reception
//***************************************************************************************
// Type Definitions
//***************************************************************************************
type
TXcpTransportInfo = (kNone, kConnected, kResponse, kError);
TXcpTransportInfo = (kNone, kResponse, kError);
type
@ -64,12 +63,11 @@ type
private
comEventInfo : TXcpTransportInfo;
comEvent : THandle;
socket : TWSocket;
socket : TTCPClient;
hostname : string;
port : string;
croCounter : LongWord;
procedure OnSocketSessionConnected(Sender: TObject; Error: Word);
procedure OnSocketDataAvailable(Sender: TObject; ErrCode: Word);
procedure OnSocketDataAvailable(Sender: TObject; WinSocket: TSocket);
function MsgWaitForSingleObject(hHandle: THandle; dwMilliseconds: DWORD): DWORD;
public
packetData : array[0..kMaxPacketSize-1] of Byte;
@ -108,11 +106,10 @@ begin
'Error', MB_OK or MB_ICONERROR );
// create a socket instance
socket := TWSocket.Create(nil);
socket := TTCPClient.Create(nil);
// set the socket event handlers
socket.OnSessionConnected := OnSocketSessionConnected;
socket.OnDataAvailable := OnSocketDataAvailable;
socket.OnData := OnSocketDataAvailable;
// init CRO counter value
croCounter := 1;
@ -167,13 +164,12 @@ begin
end
else
begin
// configure defeault hostname
// configure default hostname
hostname := '169.254.19.63';
// configure default port
port := '1000';
end;
end; //*** end of Configure ***
@ -186,46 +182,40 @@ end; //*** end of Configure ***
//***************************************************************************************
function TXcpTransport.Connect: Boolean;
var
waitResult: Integer;
connectTimeout : DWord;
begin
// make sure the event is reset
ResetEvent(comEvent);
comEventInfo := kNone;
// init CRO counter value
croCounter := 1;
// make sure the socket is closed
if socket.State <> wsClosed then
if socket.SocketState <> ssClosed then
begin
socket.Close;
socket.WaitForClose;
Disconnect;
end;
// set the hostname, port and protocol
socket.Addr := hostname;
// set the hostname and port
socket.Host := hostname;
socket.Port := port;
socket.Proto := 'tcp';
// submit the connect request
socket.Connect;
// set timeout time
connectTimeout := GetTickCount + 1000;
// connection is being established. Now wait for the connected event
waitResult := MsgWaitForSingleObject(comEvent, kTcpConnectedTimeoutMs);
if waitResult <> WAIT_OBJECT_0 then
// submit request to open the socket
socket.Open;
// wait for the connection to be established
while socket.SocketState <> ssConnected do
begin
// no com event triggered so either a timeout or internal error occurred
result := false;
Exit;
// check for timeout
if GetTickCount > connectTimeout then
begin
result := false;
Exit;
end;
Application.ProcessMessages;
Sleep(1);
end;
// com event was triggered. now check that it is actually not an error
if comEventInfo <> kConnected then
begin
result := false;
Exit;
end;
// successfully connected
result := true;
end; //*** end of Connect ***
@ -244,7 +234,6 @@ var
msgData : array of Byte;
cnt : byte;
waitResult: Integer;
adjustedTimeoutMs: LongWord;
begin
// make sure the event is reset
ResetEvent(comEvent);
@ -273,22 +262,14 @@ begin
end;
// submit the packet transmission request
if socket.Send(@msgData[0], packetLen+4) = -1 then
if socket.WriteBuffer(@msgData[0], packetLen+4) = -1 then
begin
// unable to submit tx request
Exit;
end;
// realistically, on TCP/IP due to network latency the reception of a packet can take
// a little while. if a really short timeout time is specified, this should be over-
// ruled.
if timeOutms < kTcpMinReceptionTimeoutMs then
adjustedTimeoutMs := kTcpMinReceptionTimeoutMs
else
adjustedTimeoutMs := timeOutms;
// packet is being transmitted. Now wait for the response to come in
waitResult := MsgWaitForSingleObject(comEvent, adjustedTimeoutMs);
waitResult := MsgWaitForSingleObject(comEvent, timeOutms);
if waitResult <> WAIT_OBJECT_0 then
begin
@ -320,46 +301,24 @@ procedure TXcpTransport.Disconnect;
begin
// close the socket
socket.Close;
socket.WaitForClose;
end; //*** end of Disconnect ***
//***************************************************************************************
// NAME: OnSocketSessionConnected
// PARAMETER: Sender is the source that triggered the event.
// Error contains possible connection error information.
// RETURN VALUE: none
// DESCRIPTION: Socket connected event handler
//
//***************************************************************************************
procedure TXcpTransport.OnSocketSessionConnected(Sender: TObject; Error: Word);
begin
// set event flag
if Error <> 0 then
comEventInfo := kError
else
comEventInfo := kConnected;
// trigger the event
SetEvent(comEvent);
end; //*** end of OnSocketSessionConnected ***
//***************************************************************************************
// NAME: OnSocketDataAvailable
// PARAMETER: Sender is the source that triggered the event.
// Error contains possible data reception error information.
// Socket is the socket on which the event occurred.
// RETURN VALUE: none
// DESCRIPTION: Socket data reception event handler
//
//***************************************************************************************
procedure TXcpTransport.OnSocketDataAvailable(Sender: TObject; ErrCode: Word);
procedure TXcpTransport.OnSocketDataAvailable(Sender: TObject; WinSocket: TSocket);
var
tempBuffer : array[0..kMaxPacketSize-1] of Byte;
count : Integer;
idx : Integer;
begin
count := socket.Receive(@tempBuffer[0], kMaxPacketSize);
count := socket.ReadBuffer(@tempBuffer[0], kMaxPacketSize);
// the first 4 bytes contains the dto counter in which we are not really interested
packetLen := count - 4;
// store the response data
@ -404,7 +363,6 @@ begin
begin
// process these messages
Application.ProcessMessages;
socket.MessagePump;
// check for timeout manually because if a message in the queue occurred, the
// MsgWaitForMultipleObjects will be called again and the timer will start from

View File

@ -55,7 +55,8 @@ uses
XcpDataFile in '..\XcpDataFile.pas',
XcpLoader in '..\XcpLoader.pas',
XcpTransport in 'XcpTransport.pas',
XcpSettings in 'XcpSettings.pas' {XcpSettingsForm};
XcpSettings in 'XcpSettings.pas' {XcpSettingsForm},
WSockets in 'WSockets.pas';
//***************************************************************************************
@ -260,7 +261,7 @@ begin
timer.Enabled := False;
// connect the transport layer
MbiCallbackOnInfo('Connecting to target via TCP/IP.');
MbiCallbackOnInfo('Connecting to target via TCP/IP. Reset your target if this takes a long time.');
MbiCallbackOnLog('Connecting to target via TCP/IP. t='+TimeToStr(Time));
Application.ProcessMessages;
if not loader.Connect then
@ -296,7 +297,7 @@ begin
MbiCallbackOnLog('No response from target. Disconnecting TCP/IP socket. t='+TimeToStr(Time));
loader.Disconnect;
// connect the transport layer
MbiCallbackOnInfo('Connecting to target via TCP/IP.');
MbiCallbackOnInfo('Connecting to target via TCP/IP. Reset your target if this takes a long time.');
MbiCallbackOnLog('Connecting to target via TCP/IP. t='+TimeToStr(Time));
Application.ProcessMessages;
if not loader.Connect then

View File

@ -260,7 +260,7 @@ begin
timer.Enabled := False;
// connect the transport layer
MbiCallbackOnInfo('Connecting to target via TCP/IP.');
MbiCallbackOnInfo('Connecting to target via TCP/IP. Reset your target if this takes a long time.');
MbiCallbackOnLog('Connecting to target via TCP/IP. t='+TimeToStr(Time));
Application.ProcessMessages;
if not loader.Connect then
@ -283,25 +283,60 @@ begin
end;
end;
//---------------- start the programming session --------------------------------------
// we now have a socket connected to the target. next attempt to connect to the target
// via XCP.
MbiCallbackOnLog('Starting the programming session. t='+TimeToStr(Time));
// try initial connect via XCP
if not loader.StartProgrammingSession then
begin
// update the user info
MbiCallbackOnInfo('Could not connect. Please reset your target...');
MbiCallbackOnLog('Connect failed. Switching to backdoor entry mode. t='+TimeToStr(Time));
// note that a running user program might have received the connect command and
// performed a software reset to activate the bootloader. this causes a reconfigu-
// ration of the ethernet controller so we need to disconnect the socket here and
// wait for it to reconnect.
MbiCallbackOnInfo('No response from target. Disconnecting TCP/IP socket.');
MbiCallbackOnLog('No response from target. Disconnecting TCP/IP socket. t='+TimeToStr(Time));
loader.Disconnect;
// connect the transport layer
MbiCallbackOnInfo('Connecting to target via TCP/IP. Reset your target if this takes a long time.');
MbiCallbackOnLog('Connecting to target via TCP/IP. t='+TimeToStr(Time));
Application.ProcessMessages;
// continuously try to connect via XCP true the backdoor
while not loader.StartProgrammingSession do
if not loader.Connect then
begin
// update the user info
MbiCallbackOnInfo('Could not connect via TCP/IP. Retrying. Reset your target if this takes a long time.');
MbiCallbackOnLog('Transport layer connection failed. Check the configured IP address and port. t='+TimeToStr(Time));
MbiCallbackOnLog('Retrying transport layer connection. Reset your target if this takes a long time. t='+TimeToStr(Time));
Application.ProcessMessages;
Sleep(5);
if stopRequest then
// continuously try to connect the transport layer
while not loader.Connect do
begin
MbiCallbackOnError('Programming session cancelled by user.');
Exit;
Application.ProcessMessages;
Sleep(5);
if stopRequest then
begin
MbiCallbackOnError('Transport layer connection cancelled by user.');
Exit;
end;
end;
end;
//---------------- start the programming session --------------------------------------
MbiCallbackOnLog('Starting the programming session. t='+TimeToStr(Time));
// try initial connect via XCP
if not loader.StartProgrammingSession then
begin
// update the user info
MbiCallbackOnInfo('Could not connect. Please reset your target...');
MbiCallbackOnLog('Connect failed. Switching to backdoor entry mode. t='+TimeToStr(Time));
Application.ProcessMessages;
// continuously try to connect via XCP true the backdoor
while not loader.StartProgrammingSession do
begin
Application.ProcessMessages;
Sleep(5);
if stopRequest then
begin
MbiCallbackOnError('Programming session cancelled by user.');
Exit;
end;
end;
end;
end;

View File

@ -1,5 +0,0 @@
To build this interface in Delphi, the freeware Internet Component Suite (ICT) from F. Piette
should be installed in Delphi. It is located in the "OverbyteIcsV5.zip" archive.
For more information about ICS, visit: http://www.overbyte.be/frame_index.html

Binary file not shown.

View File

@ -1,6 +1,7 @@
[net]
hostname=169.254.19.63
port=1000
retry=1
[xcp]
seedkey=
t1=1000

View File

@ -1283,7 +1283,7 @@ Linker script and memory map
0x00000001 . = ASSERT (((__init_end__ >= __FLASH_segment_start__) && (__init_end__ <= __FLASH_segment_end__)), error: .init is too large to fit in FLASH memory segment)
0x00000290 __text_load_start__ = ALIGN (__init_end__, 0x4)
.text 0x00000290 0x55c4
.text 0x00000290 0x55c8
0x00000290 __text_start__ = .
*(.text .text.* .glue_7t .glue_7 .gnu.linkonce.t.* .gcc_except_table .ARM.extab* .gnu.linkonce.armextab.*)
.glue_7 0x00000000 0x0 linker stubs
@ -1558,228 +1558,228 @@ Linker script and memory map
0x000023d0 0x18 THUMB Debug/../../obj/assert.o
0x000023d0 AssertFailure
.text.BackDoorCheck
0x000023e8 0x44 THUMB Debug/../../obj/backdoor.o
0x000023e8 0x48 THUMB Debug/../../obj/backdoor.o
0x000023e8 BackDoorCheck
.text.BackDoorInit
0x0000242c 0x20 THUMB Debug/../../obj/backdoor.o
0x0000242c BackDoorInit
0x00002430 0x20 THUMB Debug/../../obj/backdoor.o
0x00002430 BackDoorInit
.text.BootInit
0x0000244c 0x1e THUMB Debug/../../obj/boot.o
0x0000244c BootInit
0x00002450 0x1e THUMB Debug/../../obj/boot.o
0x00002450 BootInit
.text.BootTask
0x0000246a 0x1a THUMB Debug/../../obj/boot.o
0x0000246a BootTask
.text.ComInit 0x00002484 0x3c THUMB Debug/../../obj/com.o
0x00002484 ComInit
.text.ComTask 0x000024c0 0x3c THUMB Debug/../../obj/com.o
0x000024c0 ComTask
.text.ComFree 0x000024fc 0x2 THUMB Debug/../../obj/com.o
0x000024fc ComFree
*fill* 0x000024fe 0x2 00
0x0000246e 0x1a THUMB Debug/../../obj/boot.o
0x0000246e BootTask
.text.ComInit 0x00002488 0x3c THUMB Debug/../../obj/com.o
0x00002488 ComInit
.text.ComTask 0x000024c4 0x3c THUMB Debug/../../obj/com.o
0x000024c4 ComTask
.text.ComFree 0x00002500 0x2 THUMB Debug/../../obj/com.o
0x00002500 ComFree
*fill* 0x00002502 0x2 00
.text.ComTransmitPacket
0x00002500 0x30 THUMB Debug/../../obj/com.o
0x00002500 ComTransmitPacket
0x00002504 0x30 THUMB Debug/../../obj/com.o
0x00002504 ComTransmitPacket
.text.ComGetActiveInterfaceMaxRxLen
0x00002530 0x14 THUMB Debug/../../obj/com.o
0x00002530 ComGetActiveInterfaceMaxRxLen
0x00002534 0x14 THUMB Debug/../../obj/com.o
0x00002534 ComGetActiveInterfaceMaxRxLen
.text.ComGetActiveInterfaceMaxTxLen
0x00002544 0x14 THUMB Debug/../../obj/com.o
0x00002544 ComGetActiveInterfaceMaxTxLen
0x00002548 0x14 THUMB Debug/../../obj/com.o
0x00002548 ComGetActiveInterfaceMaxTxLen
.text.ComSetConnectEntryState
0x00002558 0xc THUMB Debug/../../obj/com.o
0x00002558 ComSetConnectEntryState
0x0000255c 0xc THUMB Debug/../../obj/com.o
0x0000255c ComSetConnectEntryState
.text.ComIsConnected
0x00002564 0x4 THUMB Debug/../../obj/com.o
0x00002564 ComIsConnected
.text.CopInit 0x00002568 0x2 THUMB Debug/../../obj/cop.o
0x00002568 CopInit
0x00002568 0x4 THUMB Debug/../../obj/com.o
0x00002568 ComIsConnected
.text.CopInit 0x0000256c 0x2 THUMB Debug/../../obj/cop.o
0x0000256c CopInit
.text.CopService
0x0000256a 0x2 THUMB Debug/../../obj/cop.o
0x0000256a CopService
0x0000256e 0x2 THUMB Debug/../../obj/cop.o
0x0000256e CopService
.text.XcpSetCtoError
0x0000256c 0x14 THUMB Debug/../../obj/xcp.o
.text.XcpInit 0x00002580 0x1c THUMB Debug/../../obj/xcp.o
0x00002580 XcpInit
0x00002570 0x14 THUMB Debug/../../obj/xcp.o
.text.XcpInit 0x00002584 0x1c THUMB Debug/../../obj/xcp.o
0x00002584 XcpInit
.text.XcpIsConnected
0x0000259c 0x10 THUMB Debug/../../obj/xcp.o
0x0000259c XcpIsConnected
0x000025a0 0x10 THUMB Debug/../../obj/xcp.o
0x000025a0 XcpIsConnected
.text.XcpPacketTransmitted
0x000025ac 0x10 THUMB Debug/../../obj/xcp.o
0x000025ac XcpPacketTransmitted
0x000025b0 0x10 THUMB Debug/../../obj/xcp.o
0x000025b0 XcpPacketTransmitted
.text.XcpPacketReceived
0x000025bc 0x21c THUMB Debug/../../obj/xcp.o
0x000025bc XcpPacketReceived
0x000025c0 0x21c THUMB Debug/../../obj/xcp.o
0x000025c0 XcpPacketReceived
.text.FileLibHexStringToByte
0x000027d8 0x42 THUMB Debug/../../obj/file.o
*fill* 0x0000281a 0x2 00
0x000027dc 0x42 THUMB Debug/../../obj/file.o
*fill* 0x0000281e 0x2 00
.text.FileLibLongToIntString.constprop.0
0x0000281c 0x38 THUMB Debug/../../obj/file.o
0x00002820 0x38 THUMB Debug/../../obj/file.o
.text.FileLibByteToHexString
0x00002854 0x3a THUMB Debug/../../obj/file.o
*fill* 0x0000288e 0x2 00
0x00002858 0x3a THUMB Debug/../../obj/file.o
*fill* 0x00002892 0x2 00
.text.FileInit
0x00002890 0x2c THUMB Debug/../../obj/file.o
0x00002890 FileInit
0x00002894 0x2c THUMB Debug/../../obj/file.o
0x00002894 FileInit
.text.FileIsIdle
0x000028bc 0x14 THUMB Debug/../../obj/file.o
0x000028bc FileIsIdle
0x000028c0 0x14 THUMB Debug/../../obj/file.o
0x000028c0 FileIsIdle
.text.FileHandleFirmwareUpdateRequest
0x000028d0 0x28 THUMB Debug/../../obj/file.o
0x000028d0 FileHandleFirmwareUpdateRequest
0x000028d4 0x28 THUMB Debug/../../obj/file.o
0x000028d4 FileHandleFirmwareUpdateRequest
.text.FileSrecGetLineType
0x000028f8 0x38 THUMB Debug/../../obj/file.o
0x000028f8 FileSrecGetLineType
0x000028fc 0x38 THUMB Debug/../../obj/file.o
0x000028fc FileSrecGetLineType
.text.FileSrecVerifyChecksum
0x00002930 0x3c THUMB Debug/../../obj/file.o
0x00002930 FileSrecVerifyChecksum
0x00002934 0x3c THUMB Debug/../../obj/file.o
0x00002934 FileSrecVerifyChecksum
.text.FileSrecParseLine
0x0000296c 0x138 THUMB Debug/../../obj/file.o
0x0000296c FileSrecParseLine
0x00002970 0x138 THUMB Debug/../../obj/file.o
0x00002970 FileSrecParseLine
.text.FileTask
0x00002aa4 0x344 THUMB Debug/../../obj/file.o
0x00002aa4 FileTask
.text.mem_cpy 0x00002de8 0x12 THUMB Debug/../../obj/ff.o
.text.sum_sfn 0x00002dfa 0x1e THUMB Debug/../../obj/ff.o
0x00002aa8 0x344 THUMB Debug/../../obj/file.o
0x00002aa8 FileTask
.text.mem_cpy 0x00002dec 0x12 THUMB Debug/../../obj/ff.o
.text.sum_sfn 0x00002dfe 0x1e THUMB Debug/../../obj/ff.o
.text.validate
0x00002e18 0x2a THUMB Debug/../../obj/ff.o
0x00002e1c 0x2a THUMB Debug/../../obj/ff.o
.text.get_fileinfo
0x00002e42 0xee THUMB Debug/../../obj/ff.o
0x00002e46 0xee THUMB Debug/../../obj/ff.o
.text.ld_clust.isra.0
0x00002f30 0x1c THUMB Debug/../../obj/ff.o
0x00002f34 0x1c THUMB Debug/../../obj/ff.o
.text.check_fs
0x00002f4c 0x88 THUMB Debug/../../obj/ff.o
0x00002f50 0x88 THUMB Debug/../../obj/ff.o
.text.chk_mounted
0x00002fd4 0x314 THUMB Debug/../../obj/ff.o
0x00002fd8 0x314 THUMB Debug/../../obj/ff.o
.text.sync_window
0x000032e8 0x4e THUMB Debug/../../obj/ff.o
.text.sync_fs 0x00003336 0xb2 THUMB Debug/../../obj/ff.o
0x000032ec 0x4e THUMB Debug/../../obj/ff.o
.text.sync_fs 0x0000333a 0xb2 THUMB Debug/../../obj/ff.o
.text.move_window
0x000033e8 0x2e THUMB Debug/../../obj/ff.o
0x000033ec 0x2e THUMB Debug/../../obj/ff.o
.text.clust2sect
0x00003416 0x18 THUMB Debug/../../obj/ff.o
0x00003416 clust2sect
.text.get_fat 0x0000342e 0xca THUMB Debug/../../obj/ff.o
0x0000342e get_fat
.text.dir_sdi 0x000034f8 0x84 THUMB Debug/../../obj/ff.o
.text.put_fat 0x0000357c 0xf6 THUMB Debug/../../obj/ff.o
0x0000357c put_fat
0x0000341a 0x18 THUMB Debug/../../obj/ff.o
0x0000341a clust2sect
.text.get_fat 0x00003432 0xca THUMB Debug/../../obj/ff.o
0x00003432 get_fat
.text.dir_sdi 0x000034fc 0x84 THUMB Debug/../../obj/ff.o
.text.put_fat 0x00003580 0xf6 THUMB Debug/../../obj/ff.o
0x00003580 put_fat
.text.create_chain
0x00003672 0x9a THUMB Debug/../../obj/ff.o
0x00003676 0x9a THUMB Debug/../../obj/ff.o
.text.dir_next
0x0000370c 0xf0 THUMB Debug/../../obj/ff.o
0x00003710 0xf0 THUMB Debug/../../obj/ff.o
.text.dir_find.part.6
0x000037fc 0x12c THUMB Debug/../../obj/ff.o
0x00003800 0x12c THUMB Debug/../../obj/ff.o
.text.follow_path
0x00003928 0x280 THUMB Debug/../../obj/ff.o
0x0000392c 0x280 THUMB Debug/../../obj/ff.o
.text.dir_remove
0x00003ba8 0x4e THUMB Debug/../../obj/ff.o
*fill* 0x00003bf6 0x2 00
0x00003bac 0x4e THUMB Debug/../../obj/ff.o
*fill* 0x00003bfa 0x2 00
.text.dir_read.constprop.8
0x00003bf8 0x100 THUMB Debug/../../obj/ff.o
0x00003bfc 0x100 THUMB Debug/../../obj/ff.o
.text.remove_chain
0x00003cf8 0x54 THUMB Debug/../../obj/ff.o
0x00003cfc 0x54 THUMB Debug/../../obj/ff.o
.text.gen_numname
0x00003d4c 0x78 THUMB Debug/../../obj/ff.o
0x00003d4c gen_numname
0x00003d50 0x78 THUMB Debug/../../obj/ff.o
0x00003d50 gen_numname
.text.dir_register
0x00003dc4 0x1c8 THUMB Debug/../../obj/ff.o
.text.f_mount 0x00003f8c 0x20 THUMB Debug/../../obj/ff.o
0x00003f8c f_mount
.text.f_open 0x00003fac 0x160 THUMB Debug/../../obj/ff.o
0x00003fac f_open
.text.f_read 0x0000410c 0x164 THUMB Debug/../../obj/ff.o
0x0000410c f_read
.text.f_write 0x00004270 0x192 THUMB Debug/../../obj/ff.o
0x00004270 f_write
.text.f_sync 0x00004402 0xac THUMB Debug/../../obj/ff.o
0x00004402 f_sync
.text.f_close 0x000044ae 0xe THUMB Debug/../../obj/ff.o
0x000044ae f_close
.text.f_lseek 0x000044bc 0x13c THUMB Debug/../../obj/ff.o
0x000044bc f_lseek
.text.f_stat 0x000045f8 0x48 THUMB Debug/../../obj/ff.o
0x000045f8 f_stat
0x00003dc8 0x1c8 THUMB Debug/../../obj/ff.o
.text.f_mount 0x00003f90 0x20 THUMB Debug/../../obj/ff.o
0x00003f90 f_mount
.text.f_open 0x00003fb0 0x160 THUMB Debug/../../obj/ff.o
0x00003fb0 f_open
.text.f_read 0x00004110 0x164 THUMB Debug/../../obj/ff.o
0x00004110 f_read
.text.f_write 0x00004274 0x192 THUMB Debug/../../obj/ff.o
0x00004274 f_write
.text.f_sync 0x00004406 0xac THUMB Debug/../../obj/ff.o
0x00004406 f_sync
.text.f_close 0x000044b2 0xe THUMB Debug/../../obj/ff.o
0x000044b2 f_close
.text.f_lseek 0x000044c0 0x13c THUMB Debug/../../obj/ff.o
0x000044c0 f_lseek
.text.f_stat 0x000045fc 0x48 THUMB Debug/../../obj/ff.o
0x000045fc f_stat
.text.f_unlink
0x00004640 0xc0 THUMB Debug/../../obj/ff.o
0x00004640 f_unlink
.text.f_gets 0x00004700 0x48 THUMB Debug/../../obj/ff.o
0x00004700 f_gets
.text.f_putc 0x00004748 0x30 THUMB Debug/../../obj/ff.o
0x00004748 f_putc
.text.f_puts 0x00004778 0x20 THUMB Debug/../../obj/ff.o
0x00004778 f_puts
0x00004644 0xc0 THUMB Debug/../../obj/ff.o
0x00004644 f_unlink
.text.f_gets 0x00004704 0x48 THUMB Debug/../../obj/ff.o
0x00004704 f_gets
.text.f_putc 0x0000474c 0x30 THUMB Debug/../../obj/ff.o
0x0000474c f_putc
.text.f_puts 0x0000477c 0x20 THUMB Debug/../../obj/ff.o
0x0000477c f_puts
.text.ff_convert
0x00004798 0x38 THUMB Debug/../../obj/unicode.o
0x00004798 ff_convert
0x0000479c 0x38 THUMB Debug/../../obj/unicode.o
0x0000479c ff_convert
.text.ff_wtoupper
0x000047d0 0x24 THUMB Debug/../../obj/unicode.o
0x000047d0 ff_wtoupper
.text.chksum 0x000047f4 0x38 THUMB Debug/../../obj/uip.o
0x000047d4 0x24 THUMB Debug/../../obj/unicode.o
0x000047d4 ff_wtoupper
.text.chksum 0x000047f8 0x38 THUMB Debug/../../obj/uip.o
.text.upper_layer_chksum
0x0000482c 0x40 THUMB Debug/../../obj/uip.o
0x00004830 0x40 THUMB Debug/../../obj/uip.o
.text.uip_add32
0x0000486c 0x54 THUMB Debug/../../obj/uip.o
0x0000486c uip_add32
0x00004870 0x54 THUMB Debug/../../obj/uip.o
0x00004870 uip_add32
.text.unlikely.uip_add_rcv_nxt
0x000048c0 0x2c THUMB Debug/../../obj/uip.o
0x000048c4 0x2c THUMB Debug/../../obj/uip.o
.text.uip_ipchksum
0x000048ec 0x24 THUMB Debug/../../obj/uip.o
0x000048ec uip_ipchksum
0x000048f0 0x24 THUMB Debug/../../obj/uip.o
0x000048f0 uip_ipchksum
.text.uip_tcpchksum
0x00004910 0x6 THUMB Debug/../../obj/uip.o
0x00004910 uip_tcpchksum
*fill* 0x00004916 0x2 00
0x00004914 0x6 THUMB Debug/../../obj/uip.o
0x00004914 uip_tcpchksum
*fill* 0x0000491a 0x2 00
.text.uip_init
0x00004918 0x2c THUMB Debug/../../obj/uip.o
0x00004918 uip_init
0x0000491c 0x2c THUMB Debug/../../obj/uip.o
0x0000491c uip_init
.text.uip_listen
0x00004944 0x1c THUMB Debug/../../obj/uip.o
0x00004944 uip_listen
0x00004948 0x1c THUMB Debug/../../obj/uip.o
0x00004948 uip_listen
.text.uip_process
0x00004960 0x9b8 THUMB Debug/../../obj/uip.o
0x00004960 uip_process
0x00004964 0x9b8 THUMB Debug/../../obj/uip.o
0x00004964 uip_process
.text.uip_send
0x00005318 0x24 THUMB Debug/../../obj/uip.o
0x00005318 uip_send
0x0000531c 0x24 THUMB Debug/../../obj/uip.o
0x0000531c uip_send
.text.uip_arp_update.constprop.0
0x0000533c 0xd4 THUMB Debug/../../obj/uip_arp.o
0x00005340 0xd4 THUMB Debug/../../obj/uip_arp.o
.text.uip_arp_timer
0x00005410 0x58 THUMB Debug/../../obj/uip_arp.o
0x00005410 uip_arp_timer
0x00005414 0x58 THUMB Debug/../../obj/uip_arp.o
0x00005414 uip_arp_timer
.text.uip_arp_arpin
0x00005468 0xbc THUMB Debug/../../obj/uip_arp.o
0x00005468 uip_arp_arpin
0x0000546c 0xbc THUMB Debug/../../obj/uip_arp.o
0x0000546c uip_arp_arpin
.text.uip_arp_out
0x00005524 0x140 THUMB Debug/../../obj/uip_arp.o
0x00005524 uip_arp_out
.text.NetInit 0x00005664 0x60 THUMB Debug/../../obj/net.o
0x00005664 NetInit
0x00005528 0x140 THUMB Debug/../../obj/uip_arp.o
0x00005528 uip_arp_out
.text.NetInit 0x00005668 0x60 THUMB Debug/../../obj/net.o
0x00005668 NetInit
.text.NetTransmitPacket
0x000056c4 0x38 THUMB Debug/../../obj/net.o
0x000056c4 NetTransmitPacket
0x000056c8 0x38 THUMB Debug/../../obj/net.o
0x000056c8 NetTransmitPacket
.text.NetReceivePacket
0x000056fc 0xa0 THUMB Debug/../../obj/net.o
0x000056fc NetReceivePacket
.text.NetApp 0x0000579c 0x6c THUMB Debug/../../obj/net.o
0x0000579c NetApp
0x00005700 0xa0 THUMB Debug/../../obj/net.o
0x00005700 NetReceivePacket
.text.NetApp 0x000057a0 0x6c THUMB Debug/../../obj/net.o
0x000057a0 NetApp
.text.libc.isdigit
0x00005808 0xc C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_v7m_t_le_eabi_small.a(libc2.o)
0x00005808 isdigit
0x0000580c 0xc C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_v7m_t_le_eabi_small.a(libc2.o)
0x0000580c isdigit
.text.libc.toupper
0x00005814 0xe C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_v7m_t_le_eabi_small.a(libc2.o)
0x00005814 toupper
*fill* 0x00005822 0x2 00
0x00005818 0xe C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_v7m_t_le_eabi_small.a(libc2.o)
0x00005818 toupper
*fill* 0x00005826 0x2 00
.text.libc.memcpy
0x00005824 0x1c C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_v7m_t_le_eabi_small.a(libc2_asm.o)
0x00005824 __aeabi_memcpy
0x00005824 __aeabi_memcpy4
0x00005824 __aeabi_memcpy8
0x00005824 memcpy
0x00005828 0x1c C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_v7m_t_le_eabi_small.a(libc2_asm.o)
0x00005828 __aeabi_memcpy
0x00005828 __aeabi_memcpy4
0x00005828 __aeabi_memcpy8
0x00005828 memcpy
.text.libc.memset
0x00005840 0x14 C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_v7m_t_le_eabi_small.a(libc2_asm.o)
0x00005840 memset
0x00005854 __text_end__ = (__text_start__ + SIZEOF (.text))
0x00005854 __text_load_end__ = __text_end__
0x00005844 0x14 C:/Program Files (x86)/Rowley Associates Limited/CrossWorks for ARM 2.3/lib/libc_v7m_t_le_eabi_small.a(libc2_asm.o)
0x00005844 memset
0x00005858 __text_end__ = (__text_start__ + SIZEOF (.text))
0x00005858 __text_load_end__ = __text_end__
.vfp11_veneer 0x00000000 0x0
.vfp11_veneer 0x00000000 0x0 linker stubs
@ -1790,101 +1790,101 @@ Linker script and memory map
.iplt 0x00000000 0x0
.iplt 0x00000000 0x0 THUMB Debug/../../obj/sysctl.o
0x00000001 . = ASSERT (((__text_end__ >= __FLASH_segment_start__) && (__text_end__ <= __FLASH_segment_end__)), error: .text is too large to fit in FLASH memory segment)
0x00005854 __dtors_load_start__ = ALIGN (__text_end__, 0x4)
0x00005858 __dtors_load_start__ = ALIGN (__text_end__, 0x4)
.dtors 0x00005854 0x0
0x00005854 __dtors_start__ = .
.dtors 0x00005858 0x0
0x00005858 __dtors_start__ = .
*(SORT(.dtors.*))
*(.dtors)
*(.fini_array .fini_array.*)
0x00005854 __dtors_end__ = (__dtors_start__ + SIZEOF (.dtors))
0x00005854 __dtors_load_end__ = __dtors_end__
0x00005858 __dtors_end__ = (__dtors_start__ + SIZEOF (.dtors))
0x00005858 __dtors_load_end__ = __dtors_end__
0x00000001 . = ASSERT (((__dtors_end__ >= __FLASH_segment_start__) && (__dtors_end__ <= __FLASH_segment_end__)), error: .dtors is too large to fit in FLASH memory segment)
0x00005854 __ctors_load_start__ = ALIGN (__dtors_end__, 0x4)
0x00005858 __ctors_load_start__ = ALIGN (__dtors_end__, 0x4)
.ctors 0x00005854 0x0
0x00005854 __ctors_start__ = .
.ctors 0x00005858 0x0
0x00005858 __ctors_start__ = .
*(SORT(.ctors.*))
*(.ctors)
*(.init_array .init_array.*)
0x00005854 __ctors_end__ = (__ctors_start__ + SIZEOF (.ctors))
0x00005854 __ctors_load_end__ = __ctors_end__
0x00005858 __ctors_end__ = (__ctors_start__ + SIZEOF (.ctors))
0x00005858 __ctors_load_end__ = __ctors_end__
0x00000001 . = ASSERT (((__ctors_end__ >= __FLASH_segment_start__) && (__ctors_end__ <= __FLASH_segment_end__)), error: .ctors is too large to fit in FLASH memory segment)
0x00005854 __rodata_load_start__ = ALIGN (__ctors_end__, 0x4)
0x00005858 __rodata_load_start__ = ALIGN (__ctors_end__, 0x4)
.rodata 0x00005854 0xc46
0x00005854 __rodata_start__ = .
.rodata 0x00005858 0xc46
0x00005858 __rodata_start__ = .
*(.rodata .rodata.* .gnu.linkonce.r.*)
.rodata.g_pulXtals
0x00005854 0x6c THUMB Debug/../../obj/sysctl.o
0x00005858 0x6c THUMB Debug/../../obj/sysctl.o
.rodata.str1.1
0x000058c0 0x6b THUMB Debug/../../obj/sysctl.o
*fill* 0x0000592b 0x1 00
0x000058c4 0x6b THUMB Debug/../../obj/sysctl.o
*fill* 0x0000592f 0x1 00
.rodata.g_pulRCGCRegs
0x0000592c 0xc THUMB Debug/../../obj/sysctl.o
0x00005930 0xc THUMB Debug/../../obj/sysctl.o
.rodata.g_pulSRCRRegs
0x00005938 0xc THUMB Debug/../../obj/sysctl.o
0x0000593c 0xc THUMB Debug/../../obj/sysctl.o
.rodata.str1.1
0x00005944 0x69 THUMB Debug/../../obj/gpio.o
0x00005948 0x69 THUMB Debug/../../obj/gpio.o
.rodata.str1.1
0x000059ad 0x6d THUMB Debug/../../obj/flashlib.o
0x000059b1 0x6d THUMB Debug/../../obj/flashlib.o
.rodata.str1.1
0x00005a1a 0x6c THUMB Debug/../../obj/uartlib.o
0x00005a1e 0x6c THUMB Debug/../../obj/uartlib.o
.rodata.str1.1
0x00005a86 0x68 THUMB Debug/../../obj/ssi.o
0x00005a8a 0x68 THUMB Debug/../../obj/ssi.o
.rodata.str1.1
0x00005aee 0x6d THUMB Debug/../../obj/ethernet.o
0x00005af2 0x6d THUMB Debug/../../obj/ethernet.o
.rodata.firmwareFilename
0x00005b5b 0x1b THUMB Debug/../../obj/hooks.o
0x00005b5f 0x1b THUMB Debug/../../obj/hooks.o
.rodata.str1.1
0x00005b76 0xd THUMB Debug/../../obj/hooks.o
0x00005b7a 0xd THUMB Debug/../../obj/hooks.o
.rodata.str1.1
0x00005b83 0x85 THUMB Debug/../../obj/vectors.o
0x00005b87 0x85 THUMB Debug/../../obj/vectors.o
.rodata.flashLayout
0x00005c08 0xc0 THUMB Debug/../../obj/flash.o
0x00005c0c 0xc0 THUMB Debug/../../obj/flash.o
.rodata.str1.1
0x00005cc8 0x77 THUMB Debug/../../obj/uart.o
0x00005ccc 0x77 THUMB Debug/../../obj/uart.o
.rodata.xcpStationId
0x00005d3f 0x8 THUMB Debug/../../obj/xcp.o
0x00005d43 0x8 THUMB Debug/../../obj/xcp.o
.rodata.str1.1
0x00005d47 0x1ef THUMB Debug/../../obj/file.o
0x00005d4b 0x1ef THUMB Debug/../../obj/file.o
0x1fb (size before relaxing)
.rodata.str1.1
0x00005f36 0x10 THUMB Debug/../../obj/ff.o
.rodata.ExCvt 0x00005f46 0x80 THUMB Debug/../../obj/ff.o
0x00005f3a 0x10 THUMB Debug/../../obj/ff.o
.rodata.ExCvt 0x00005f4a 0x80 THUMB Debug/../../obj/ff.o
.rodata.LfnOfs
0x00005fc6 0xd THUMB Debug/../../obj/ff.o
*fill* 0x00005fd3 0x1 00
0x00005fca 0xd THUMB Debug/../../obj/ff.o
*fill* 0x00005fd7 0x1 00
.rodata.tbl_lower.3809
0x00005fd4 0x1e0 THUMB Debug/../../obj/unicode.o
.rodata.Tbl 0x000061b4 0x100 THUMB Debug/../../obj/unicode.o
0x00005fd8 0x1e0 THUMB Debug/../../obj/unicode.o
.rodata.Tbl 0x000061b8 0x100 THUMB Debug/../../obj/unicode.o
.rodata.tbl_upper.3810
0x000062b4 0x1e0 THUMB Debug/../../obj/unicode.o
0x000062b8 0x1e0 THUMB Debug/../../obj/unicode.o
.rodata.broadcast_ethaddr
0x00006494 0x6 THUMB Debug/../../obj/uip_arp.o
0x0000649a __rodata_end__ = (__rodata_start__ + SIZEOF (.rodata))
0x0000649a __rodata_load_end__ = __rodata_end__
0x00006498 0x6 THUMB Debug/../../obj/uip_arp.o
0x0000649e __rodata_end__ = (__rodata_start__ + SIZEOF (.rodata))
0x0000649e __rodata_load_end__ = __rodata_end__
.rel.dyn 0x00000000 0x0
.rel.iplt 0x00000000 0x0 THUMB Debug/../../obj/sysctl.o
0x00000001 . = ASSERT (((__rodata_end__ >= __FLASH_segment_start__) && (__rodata_end__ <= __FLASH_segment_end__)), error: .rodata is too large to fit in FLASH memory segment)
0x0000649c __ARM.exidx_load_start__ = ALIGN (__rodata_end__, 0x4)
0x000064a0 __ARM.exidx_load_start__ = ALIGN (__rodata_end__, 0x4)
.ARM.exidx 0x0000649c 0x0
0x0000649c __ARM.exidx_start__ = .
0x0000649c __exidx_start = __ARM.exidx_start__
.ARM.exidx 0x000064a0 0x0
0x000064a0 __ARM.exidx_start__ = .
0x000064a0 __exidx_start = __ARM.exidx_start__
*(.ARM.exidx .ARM.exidx.*)
0x0000649c __ARM.exidx_end__ = (__ARM.exidx_start__ + SIZEOF (.ARM.exidx))
0x0000649c __exidx_end = __ARM.exidx_end__
0x0000649c __ARM.exidx_load_end__ = __ARM.exidx_end__
0x000064a0 __ARM.exidx_end__ = (__ARM.exidx_start__ + SIZEOF (.ARM.exidx))
0x000064a0 __exidx_end = __ARM.exidx_end__
0x000064a0 __ARM.exidx_load_end__ = __ARM.exidx_end__
0x00000001 . = ASSERT (((__ARM.exidx_end__ >= __FLASH_segment_start__) && (__ARM.exidx_end__ <= __FLASH_segment_end__)), error: .ARM.exidx is too large to fit in FLASH memory segment)
0x0000649c __fast_load_start__ = ALIGN (__ARM.exidx_end__, 0x4)
0x000064a0 __fast_load_start__ = ALIGN (__ARM.exidx_end__, 0x4)
.fast 0x20000000 0x0 load address 0x0000649c
.fast 0x20000000 0x0 load address 0x000064a0
0x20000000 __fast_start__ = .
*(.fast .fast.*)
0x20000000 __fast_end__ = (__fast_start__ + SIZEOF (.fast))
0x0000649c __fast_load_end__ = (__fast_load_start__ + SIZEOF (.fast))
0x000064a0 __fast_load_end__ = (__fast_load_start__ + SIZEOF (.fast))
0x00000001 . = ASSERT (((__fast_load_end__ >= __FLASH_segment_start__) && (__fast_load_end__ <= __FLASH_segment_end__)), error: .fast is too large to fit in FLASH memory segment)
.fast_run 0x20000000 0x0
@ -1893,22 +1893,22 @@ Linker script and memory map
0x20000000 __fast_run_end__ = (__fast_run_start__ + SIZEOF (.fast_run))
0x20000000 __fast_run_load_end__ = __fast_run_end__
0x00000001 . = ASSERT (((__fast_run_end__ >= __SRAM_segment_start__) && (__fast_run_end__ <= __SRAM_segment_end__)), error: .fast_run is too large to fit in SRAM memory segment)
0x0000649c __data_load_start__ = ALIGN ((__fast_load_start__ + SIZEOF (.fast)), 0x4)
0x000064a0 __data_load_start__ = ALIGN ((__fast_load_start__ + SIZEOF (.fast)), 0x4)
.data 0x20000000 0x2 load address 0x0000649c
.data 0x20000000 0x2 load address 0x000064a0
0x20000000 __data_start__ = .
*(.data .data.* .gnu.linkonce.d.*)
.data.Stat 0x20000000 0x1 THUMB Debug/../../obj/mmc.o
.data.comActiveInterface
0x20000001 0x1 THUMB Debug/../../obj/com.o
0x20000002 __data_end__ = (__data_start__ + SIZEOF (.data))
0x0000649e __data_load_end__ = (__data_load_start__ + SIZEOF (.data))
0x000064a2 __data_load_end__ = (__data_load_start__ + SIZEOF (.data))
.igot.plt 0x00000000 0x0
.igot.plt 0x00000000 0x0 THUMB Debug/../../obj/sysctl.o
0x00000001 . = ASSERT (((__data_load_end__ >= __FLASH_segment_start__) && (__data_load_end__ <= __FLASH_segment_end__)), error: .data is too large to fit in FLASH memory segment)
.data_run 0x20000000 0x2 load address 0x0000649c
.data_run 0x20000000 0x2 load address 0x000064a0
0x20000000 __data_run_start__ = .
0x20000002 . = MAX ((__data_run_start__ + SIZEOF (.data)), .)
*fill* 0x20000000 0x2 00
@ -2073,14 +2073,14 @@ Linker script and memory map
0x20001924 __tbss_end__ = (__tbss_start__ + SIZEOF (.tbss))
0x20001924 __tbss_load_end__ = __tbss_end__
0x00000001 . = ASSERT (((__tbss_end__ >= __SRAM_segment_start__) && (__tbss_end__ <= __SRAM_segment_end__)), error: .tbss is too large to fit in SRAM memory segment)
0x000064a0 __tdata_load_start__ = ALIGN ((__data_load_start__ + SIZEOF (.data)), 0x4)
0x000064a4 __tdata_load_start__ = ALIGN ((__data_load_start__ + SIZEOF (.data)), 0x4)
.tdata 0x20001924 0x0 load address 0x000064a0
.tdata 0x20001924 0x0 load address 0x000064a4
0x20001924 __tdata_start__ = .
*(.tdata .tdata.*)
0x20001924 __tdata_end__ = (__tdata_start__ + SIZEOF (.tdata))
0x000064a0 __tdata_load_end__ = (__tdata_load_start__ + SIZEOF (.tdata))
0x000064a0 __FLASH_segment_used_end__ = (ALIGN ((__data_load_start__ + SIZEOF (.data)), 0x4) + SIZEOF (.tdata))
0x000064a4 __tdata_load_end__ = (__tdata_load_start__ + SIZEOF (.tdata))
0x000064a4 __FLASH_segment_used_end__ = (ALIGN ((__data_load_start__ + SIZEOF (.data)), 0x4) + SIZEOF (.tdata))
0x00000001 . = ASSERT (((__tdata_load_end__ >= __FLASH_segment_start__) && (__tdata_load_end__ <= __FLASH_segment_end__)), error: .tdata is too large to fit in FLASH memory segment)
.tdata_run 0x20001924 0x0

View File

@ -123,6 +123,26 @@
#define BOOT_COM_NET_NETMASK_HOOK_ENABLE (0)
/****************************************************************************************
* B A C K D O O R C O N F I G U R A T I O N
****************************************************************************************/
#if (BOOT_COM_NET_ENABLE > 0)
/* Override the default time that the backdoor is open if firmware updates via TCP/IP
* are supported. in this case a reactivation of the bootloader results in a re-
* initialization of the ethernet MAC. when directly connected to the ethernet port of
* a PC this will go relatively fast (depending on what MS Windows is being used), but
* when connected to the network via a router this can take several seconds. feel free to
* shorten/lengthen this time for finetuning. the only downside of a long backdoor open
* time is that the starting of the user program will also be delayed for this time.
*
* Also note that when the target is directly connected to the ethernet port of a PC,
* the checkbox "Automatically retry socket connection" should be checked in the
* Microboot settings. if connection via a router the uncheck this checkbox.
*/
#define BACKDOOR_ENTRY_TIMEOUT_MS (10000)
#endif
/****************************************************************************************
* F I L E S Y S T E M I N T E R F A C E C O N F I G U R A T I O N
****************************************************************************************/

View File

@ -51,7 +51,7 @@
<Watches active="0" update="Never" />
</Watch4>
<Files>
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Boot\main.c" y="82" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Boot\main.c" left="0" selected="1" name="unnamed" top="82" />
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Boot\main.c" y="82" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Boot\main.c" left="18" selected="1" name="unnamed" top="82" />
</Files>
<ARMCrossStudioWindow activeProject="openbtl_ek_lm3s6965" autoConnectTarget="Luminary USB Debug" debugSearchFileMap="" fileDialogInitialDirectory="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Boot\lib\uip" fileDialogDefaultFilter="*.c" autoConnectCapabilities="388991" debugSearchPath="" buildConfiguration="THUMB Debug" />
</session>

View File

@ -51,10 +51,10 @@
<Watches active="0" update="Never" />
</Watch4>
<Files>
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\main.c" y="0" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\main.c" left="18" selected="0" name="unnamed" top="0" />
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\led.c" y="1" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\led.c" left="18" selected="0" name="unnamed" top="1" />
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\net.c" y="8" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\net.c" left="18" selected="0" name="unnamed" top="8" />
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\net.h" y="8" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\net.h" left="18" selected="1" name="unnamed" top="8" />
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\main.c" y="0" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\main.c" left="0" selected="0" name="unnamed" top="0" />
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\led.c" y="1" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\led.c" left="0" selected="0" name="unnamed" top="1" />
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\net.c" y="8" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\net.c" left="0" selected="0" name="unnamed" top="8" />
<SessionOpenFile useTextEdit="1" useBinaryEdit="0" codecName="Latin1" x="0" debugPath="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\net.h" y="8" path="C:\Work\software\OpenBLT\Target\Demo\ARMCM3_LM3S_EK_LM3S6965_Crossworks\Prog\net.h" left="0" selected="1" name="unnamed" top="8" />
</Files>
<ARMCrossStudioWindow activeProject="demoprog_ek_lm3s6965" autoConnectTarget="Texas Instruments ICDI" debugSearchFileMap="" fileDialogInitialDirectory="C:\Work\software\OpenBLT\Target\Source\third_party\uip\uip" fileDialogDefaultFilter="*.c" autoConnectCapabilities="388991" debugSearchPath="" buildConfiguration="THUMB Debug" />
</session>

View File

@ -7,18 +7,18 @@ start address 0x00000000
Program Header:
LOAD off 0x00008000 vaddr 0x00000000 paddr 0x00000000 align 2**15
filesz 0x00006058 memsz 0x00006058 flags r-x
LOAD off 0x00010000 vaddr 0x20000000 paddr 0x00006058 align 2**15
filesz 0x0000605c memsz 0x0000605c flags r-x
LOAD off 0x00010000 vaddr 0x20000000 paddr 0x0000605c align 2**15
filesz 0x00000008 memsz 0x000018ac flags rw-
private flags = 5000200: [Version5 EABI] [soft-float ABI]
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 00006058 00000000 00000000 00008000 2**2
0 .text 0000605c 00000000 00000000 00008000 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .data 00000008 20000000 00006058 00010000 2**2
1 .data 00000008 20000000 0000605c 00010000 2**2
CONTENTS, ALLOC, LOAD, DATA
2 .bss 000018a4 20000008 00006060 00010008 2**2
2 .bss 000018a4 20000008 00006064 00010008 2**2
ALLOC
3 .debug_info 0000f8d4 00000000 00000000 00010008 2**0
CONTENTS, READONLY, DEBUGGING
@ -57,9 +57,9 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 vectors.c
00000000 l df *ABS* 00000000 cstart.c
0000011c l F .text 00000000 zero_loop2
00005486 l F .text 00000000 zero_loop
0000548a l F .text 00000000 zero_loop
00000000 l df *ABS* 00000000 hooks.c
000055f4 l O .text 0000001b firmwareFilename
000055f8 l O .text 0000001b firmwareFilename
20000008 l O .bss 00000228 logfile
00000000 l df *ABS* 00000000 main.c
00000000 l df *ABS* 00000000 ethernet.c
@ -68,9 +68,9 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 flashlib.c
00000000 l df *ABS* 00000000 sysctl.c
0000079c l F .text 00000154 SysCtlPeripheralValid
00005654 l O .text 0000006c g_pulXtals
000056dc l O .text 0000000c g_pulRCGCRegs
000056e8 l O .text 0000000c g_pulSRCRRegs
00005658 l O .text 0000006c g_pulXtals
000056e0 l O .text 0000000c g_pulRCGCRegs
000056ec l O .text 0000000c g_pulSRCRRegs
00000000 l df *ABS* 00000000 gpio.c
00000ce8 l F .text 00000054 GPIOBaseValid
00000000 l df *ABS* 00000000 uartlib.c
@ -95,17 +95,17 @@ SYMBOL TABLE:
20000235 l O .bss 00000040 xcpCtoReqPacket.4412
00000000 l df *ABS* 00000000 xcp.c
00001c98 l F .text 00000014 XcpSetCtoError
0000573b l O .text 00000008 xcpStationId
0000573f l O .text 00000008 xcpStationId
20000278 l O .bss 0000004c xcpInfo
00000000 l df *ABS* 00000000 backdoor.c
200002c4 l O .bss 00000001 backdoorOpen
200002c8 l O .bss 00000004 backdoorOpenTime
00000000 l df *ABS* 00000000 cop.c
00000000 l df *ABS* 00000000 file.c
00001f64 l F .text 0000002c FileLibByteNibbleToChar
00001f90 l F .text 0000001e FileLibByteToHexString
00001fb0 l F .text 00000058 FileLibHexStringToByte
00002008 l F .text 00000038 FileLibLongToIntString.constprop.0
00001f68 l F .text 0000002c FileLibByteNibbleToChar
00001f94 l F .text 0000001e FileLibByteToHexString
00001fb4 l F .text 00000058 FileLibHexStringToByte
0000200c l F .text 00000038 FileLibLongToIntString.constprop.0
200002cc l O .bss 00000040 loggingStr
2000030c l O .bss 00000001 firmwareUpdateState
20000310 l O .bss 00000008 eraseInfo
@ -118,39 +118,39 @@ SYMBOL TABLE:
200008fc l O .bss 00000004 assert_failure_file
20000900 l O .bss 00000004 assert_failure_line
00000000 l df *ABS* 00000000 ff.c
00002744 l F .text 00000012 mem_cpy
00002756 l F .text 0000001e sum_sfn
00002774 l F .text 0000002a validate
0000279e l F .text 000000ea get_fileinfo
00002888 l F .text 0000001c ld_clust.isra.0
000028a4 l F .text 00000088 check_fs
0000292c l F .text 0000030c chk_mounted
00002c38 l F .text 0000004a sync_window.part.2
00002c82 l F .text 0000000c sync_window
00002c8e l F .text 0000002e move_window
00002cbc l F .text 000000b6 sync_fs
00002e56 l F .text 00000084 dir_sdi
00002fcc l F .text 0000009a create_chain
00003066 l F .text 000000f2 dir_next
00003158 l F .text 0000012c dir_find.part.6
00003284 l F .text 0000026c follow_path
000034f0 l F .text 0000004e dir_remove
00003540 l F .text 000000fc dir_read.constprop.8
0000363c l F .text 00000054 remove_chain
00003710 l F .text 000001b0 dir_register
00002748 l F .text 00000012 mem_cpy
0000275a l F .text 0000001e sum_sfn
00002778 l F .text 0000002a validate
000027a2 l F .text 000000ea get_fileinfo
0000288c l F .text 0000001c ld_clust.isra.0
000028a8 l F .text 00000088 check_fs
00002930 l F .text 0000030c chk_mounted
00002c3c l F .text 0000004a sync_window.part.2
00002c86 l F .text 0000000c sync_window
00002c92 l F .text 0000002e move_window
00002cc0 l F .text 000000b6 sync_fs
00002e5a l F .text 00000084 dir_sdi
00002fd0 l F .text 0000009a create_chain
0000306a l F .text 000000f2 dir_next
0000315c l F .text 0000012c dir_find.part.6
00003288 l F .text 0000026c follow_path
000034f4 l F .text 0000004e dir_remove
00003544 l F .text 000000fc dir_read.constprop.8
00003640 l F .text 00000054 remove_chain
00003714 l F .text 000001b0 dir_register
20000904 l O .bss 00000200 LfnBuf
20000b04 l O .bss 00000002 Fsid
000058ee l O .text 00000080 ExCvt
0000596e l O .text 0000000d LfnOfs
000058f2 l O .text 00000080 ExCvt
00005972 l O .text 0000000d LfnOfs
20000b08 l O .bss 00000004 FatFs
00000000 l df *ABS* 00000000 unicode.c
0000597c l O .text 000001e0 tbl_lower.4259
00005b5c l O .text 00000100 Tbl
00005c5c l O .text 000001e0 tbl_upper.4260
00005980 l O .text 000001e0 tbl_lower.4259
00005b60 l O .text 00000100 Tbl
00005c60 l O .text 000001e0 tbl_upper.4260
00000000 l df *ABS* 00000000 uip.c
00004108 l F .text 00000038 chksum
00004140 l F .text 0000003c upper_layer_chksum
000041d0 l F .text 0000002c uip_add_rcv_nxt
0000410c l F .text 00000038 chksum
00004144 l F .text 0000003c upper_layer_chksum
000041d4 l F .text 0000002c uip_add_rcv_nxt
20000b0c l O .bss 00000002 tmp16
20000b0e l O .bss 00000002 ipid
20000b10 l O .bss 00000004 iss
@ -158,11 +158,11 @@ SYMBOL TABLE:
20000b1c l O .bss 00000001 c
20000b1d l O .bss 00000001 opt
00000000 l df *ABS* 00000000 uip_arp.c
00004c10 l F .text 000000e4 uip_arp_update.constprop.0
00004c14 l F .text 000000e4 uip_arp_update.constprop.0
20000b1e l O .bss 00000001 i
20000b1f l O .bss 00000001 tmpage
20000b20 l O .bss 00000060 arp_table
00005e3c l O .text 00000006 broadcast_ethaddr
00005e40 l O .text 00000006 broadcast_ethaddr
20000b80 l O .bss 00000001 c
20000b81 l O .bss 00000001 arptime
20000b82 l O .bss 00000004 ipaddr
@ -175,11 +175,11 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 timer.c
20000bcc l O .bss 00000004 millisecond_counter
00000000 l df *ABS* 00000000 flash.c
00005110 l F .text 00000034 FlashGetSector
00005144 l F .text 0000004c FlashWriteBlock
00005190 l F .text 00000050 FlashSwitchBlock
000051e0 l F .text 00000080 FlashAddToBlock
00005e68 l O .text 000000c0 flashLayout
00005114 l F .text 00000034 FlashGetSector
00005148 l F .text 0000004c FlashWriteBlock
00005194 l F .text 00000050 FlashSwitchBlock
000051e4 l F .text 00000080 FlashAddToBlock
00005e6c l O .text 000000c0 flashLayout
20000bd0 l O .bss 00000204 bootBlockInfo
20000dd4 l O .bss 00000204 blockInfo
00000000 l df *ABS* 00000000 memcpy-stub.c
@ -188,14 +188,14 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000
00000200 l *ABS* 00000000 __STACKSIZE__
00001bb4 g F .text 0000003c ComInit
00005278 g F .text 00000048 FlashWrite
00004008 g F .text 0000004e f_gets
0000272c g F .text 00000018 AssertFailure
00002d8a g F .text 000000cc get_fat
0000527c g F .text 00000048 FlashWrite
0000400c g F .text 0000004e f_gets
00002730 g F .text 00000018 AssertFailure
00002d8e g F .text 000000cc get_fat
00000f24 g F .text 00000034 GPIOPinTypeSSI
00005464 g F .text 00000040 reset_handler
00005468 g F .text 00000040 reset_handler
000012dc g F .text 00000028 SSIDataGet
000050e4 g F .text 0000001c TimerUpdate
000050e8 g F .text 0000001c TimerUpdate
00001cd8 g F .text 00000010 XcpPacketTransmitted
00001bf0 g F .text 0000003c ComTask
00001254 g F .text 00000024 SSIEnable
@ -203,66 +203,66 @@ SYMBOL TABLE:
00001c88 g F .text 0000000c ComSetConnectEntryState
20000fd8 g O .bss 00000002 uip_len
20000b16 g O .bss 00000006 uip_ethaddr
0000417c g F .text 00000054 uip_add32
00004180 g F .text 00000054 uip_add32
00001b7c g F .text 0000001e BootInit
000020ec g F .text 0000003e FileSrecVerifyChecksum
00001f40 g F .text 00000020 BackDoorInit
000020f0 g F .text 0000003e FileSrecVerifyChecksum
00001f44 g F .text 00000020 BackDoorInit
0000118c g F .text 000000c8 SSIConfigSetExpClk
00001f62 g F .text 00000002 CopService
00006058 g .text 00000000 _etext
00001f66 g F .text 00000002 CopService
0000605c g .text 00000000 _etext
000008f0 g F .text 00000090 SysCtlPeripheralReset
000040e4 g F .text 00000024 ff_wtoupper
000040e8 g F .text 00000024 ff_wtoupper
00000e98 g F .text 00000024 GPIOPinWrite
00001b30 g F .text 00000034 netdev_read
0000426c g F .text 00000980 uip_process
00005450 g F .text 00000006 FlashGetUserProgBaseAddress
000054ac g F .text 000000a6 memcpy
00002268 g F .text 00000324 FileTask
00004270 g F .text 00000980 uip_process
00005454 g F .text 00000006 FlashGetUserProgBaseAddress
000054b0 g F .text 000000a6 memcpy
0000226c g F .text 00000324 FileTask
000010e0 g F .text 00000024 UARTSpaceAvail
000050d8 g F .text 0000000c TimerReset
000050dc g F .text 0000000c TimerReset
000014a4 g F .text 00000228 disk_initialize
20000fdc g O .bss 00000004 uip_sappdata
00001a0c g F .text 00000018 netdev_init
20000fe0 g O .bss 00000004 uip_acc32
000041fc g F .text 00000020 uip_ipchksum
00004200 g F .text 00000020 uip_ipchksum
0000112c g F .text 0000002c UARTCharPutNonBlocking
00001b9a g F .text 0000001a BootTask
00005390 g F .text 00000044 FlashWriteChecksum
00005394 g F .text 00000044 FlashWriteChecksum
00001c30 g F .text 00000030 ComTransmitPacket
00000360 g F .text 0000002c EthernetInitExpClk
000016cc g F .text 00000014 disk_status
0000212c g F .text 0000013c FileSrecParseLine
00004250 g F .text 0000001c uip_listen
00002130 g F .text 0000013c FileSrecParseLine
00004254 g F .text 0000001c uip_listen
00001b64 g F .text 00000018 netdev_send
00001824 g F .text 000001e0 disk_ioctl
00002080 g F .text 00000028 FileHandleFirmwareUpdateRequest
00002084 g F .text 00000028 FileHandleFirmwareUpdateRequest
000004d8 g F .text 0000005c EthernetPacketPut
00000980 g F .text 00000064 SysCtlPeripheralEnable
00003690 g F .text 0000007e gen_numname
00003694 g F .text 0000007e gen_numname
20000fe4 g O .bss 00000001 uip_flags
000001bc g F .text 00000030 FileFirmwareUpdateCompletedHook
00001cc8 g F .text 00000010 XcpIsConnected
00003f4c g F .text 000000bc f_unlink
00005094 g F .text 00000004 NvmInit
00005260 g F .text 00000018 FlashInit
00003f50 g F .text 000000bc f_unlink
00005098 g F .text 00000004 NvmInit
00005264 g F .text 00000018 FlashInit
200016aa g .bss 00000000 _ebss
00004056 g F .text 00000032 f_putc
00004088 g F .text 0000001e f_puts
00005458 g F .text 0000000c UnusedISR
0000405a g F .text 00000032 f_putc
0000408c g F .text 0000001e f_puts
0000545c g F .text 0000000c UnusedISR
00000484 g F .text 00000054 EthernetPacketGetNonBlocking
00001c2c g F .text 00000002 ComFree
00000ebc g F .text 00000034 GPIOPinTypeEthernetLED
00004f94 g F .text 00000028 UartInit
0000509c g F .text 00000004 NvmErase
00004f98 g F .text 00000028 UartInit
000050a0 g F .text 00000004 NvmErase
00001a24 g F .text 0000010c netdev_init_mac
00001104 g F .text 00000028 UARTCharGetNonBlocking
0000129c g F .text 00000040 SSIDataPut
20000008 g .bss 00000000 _bss
00003dbc g F .text 0000000e f_close
00003dc0 g F .text 0000000e f_close
00001ce8 g F .text 00000214 XcpPacketReceived
0000421c g F .text 00000006 uip_tcpchksum
00003a20 g F .text 00000160 f_read
0000541c g F .text 00000034 FlashDone
00004220 g F .text 00000006 uip_tcpchksum
00003a24 g F .text 00000160 f_read
00005420 g F .text 00000034 FlashDone
000000f0 g F .text 00000050 EntryFromProg
20000fe8 g O .bss 00000004 uip_appdata
20000fec g O .bss 00000004 uip_conn
@ -270,83 +270,83 @@ SYMBOL TABLE:
00000658 g F .text 000000e4 FlashProgram
00001a04 g F .text 00000008 get_fattime
00001cac g F .text 0000001c XcpInit
00002040 g F .text 0000002c FileInit
00002044 g F .text 0000002c FileInit
0000056c g F .text 00000028 EthernetIntStatus
00004dfc g F .text 00000144 uip_arp_out
000052c0 g F .text 000000d0 FlashErase
00005554 g F .text 0000009e memset
00004e00 g F .text 00000144 uip_arp_out
000052c4 g F .text 000000d0 FlashErase
00005558 g F .text 0000009e memset
000001ec g F .text 00000014 FileFirmwareUpdateErrorHook
00000248 g F .text 0000002c main
00003d12 g F .text 000000aa f_sync
00003d16 g F .text 000000aa f_sync
00000b3c g F .text 000001ac SysCtlClockGet
000020a8 g F .text 00000044 FileSrecGetLineType
000020ac g F .text 00000044 FileSrecGetLineType
00000fdc g F .text 00000034 UARTDisable
000050a4 g F .text 00000012 NvmDone
000050a8 g F .text 00000012 NvmDone
00000444 g F .text 00000040 EthernetEnable
000038c0 g F .text 00000020 f_mount
00004fbc g F .text 0000006c UartTransmitPacket
000050a0 g F .text 00000004 NvmVerifyChecksum
00004f70 g F .text 0000001e CpuMemCopy
00002eda g F .text 000000f2 put_fat
00003dca g F .text 00000138 f_lseek
00004d4c g F .text 000000b0 uip_arp_arpin
000038c4 g F .text 00000020 f_mount
00004fc0 g F .text 0000006c UartTransmitPacket
000050a4 g F .text 00000004 NvmVerifyChecksum
00004f74 g F .text 0000001e CpuMemCopy
00002ede g F .text 000000f2 put_fat
00003dce g F .text 00000138 f_lseek
00004d50 g F .text 000000b0 uip_arp_arpin
00001c74 g F .text 00000014 ComGetActiveInterfaceMaxTxLen
00005028 g F .text 0000006c UartReceivePacket
0000502c g F .text 0000006c UartReceivePacket
0000018c g F .text 00000008 FileGetFirmwareFilenameHook
000003e4 g F .text 00000060 EthernetMACAddrSet
00004cf4 g F .text 00000058 uip_arp_timer
00004cf8 g F .text 00000058 uip_arp_timer
20001058 g O .bss 00000002 uip_listenports
2000105a g O .bss 00000004 uip_draddr
20000000 g .data 00000000 _data
000005c8 g F .text 00000040 EthernetPHYRead
00003f04 g F .text 00000048 f_stat
00001f60 g F .text 00000002 CopInit
00004f8e g F .text 00000004 CpuReset
00003f08 g F .text 00000048 f_stat
00001f64 g F .text 00000002 CopInit
00004f92 g F .text 00000004 CpuReset
00001278 g F .text 00000024 SSIDisable
00005098 g F .text 00000004 NvmWrite
00004f40 g F .text 00000030 CpuStartUserProgram
00002d72 g F .text 00000018 clust2sect
0000509c g F .text 00000004 NvmWrite
00004f44 g F .text 00000030 CpuStartUserProgram
00002d76 g F .text 00000018 clust2sect
200018ac g .bss 00000000 _estack
0000038c g F .text 00000058 EthernetConfigSet
000053d4 g F .text 00000048 FlashVerifyChecksum
000025ec g F .text 0000003c NetTransmitPacket
000053d8 g F .text 00000048 FlashVerifyChecksum
000025f0 g F .text 0000003c NetTransmitPacket
20000008 g .data 00000000 _edata
0000206c g F .text 00000014 FileIsIdle
00003b80 g F .text 00000192 f_write
00002070 g F .text 00000014 FileIsIdle
00003b84 g F .text 00000192 f_write
00000000 g O .text 000000f0 _vectab
0000073c g F .text 00000060 FlashUserGet
00000f58 g F .text 00000034 GPIOPinTypeUART
000038e0 g F .text 00000140 f_open
000038e4 g F .text 00000140 f_open
00001764 g F .text 000000c0 disk_write
00000ef0 g F .text 00000034 GPIOPinTypeGPIOOutput
00000200 g F .text 00000048 FileFirmwareUpdateLogHook
20000004 g O .data 00000004 __ctype_ptr__
00001c94 g F .text 00000004 ComIsConnected
00000534 g F .text 00000038 EthernetIntDisable
00005f54 g O .text 00000101 _ctype_
00005f58 g O .text 00000101 _ctype_
00000594 g F .text 00000034 EthernetIntClear
00000154 g F .text 00000038 FileIsFirmwareUpdateRequestedHook
00001158 g F .text 00000020 UARTBusy
00004224 g F .text 0000002c uip_init
00004228 g F .text 0000002c uip_init
00001c60 g F .text 00000014 ComGetActiveInterfaceMaxRxLen
00002628 g F .text 000000a0 NetReceivePacket
0000262c g F .text 000000a0 NetReceivePacket
00000d3c g F .text 00000058 GPIODirModeSet
000016e0 g F .text 00000084 disk_read
00001efc g F .text 00000044 BackDoorCheck
00001efc g F .text 00000048 BackDoorCheck
200016aa g .bss 00000000 _stack
2000105e g O .bss 00000004 uip_netmask
20001062 g O .bss 00000004 uip_hostaddr
000040a8 g F .text 0000003c ff_convert
00005100 g F .text 00000010 TimerGet
000026c8 g F .text 00000064 NetApp
000040ac g F .text 0000003c ff_convert
00005104 g F .text 00000010 TimerGet
000026cc g F .text 00000064 NetApp
00001010 g F .text 000000d0 UARTConfigSetExpClk
0000258c g F .text 00000060 NetInit
00002590 g F .text 00000060 NetInit
000009ec g F .text 00000150 SysCtlClockSet
00000d94 g F .text 00000104 GPIOPadConfigSet
000050b8 g F .text 00000020 TimerInit
000050bc g F .text 00000020 TimerInit
20001066 g O .bss 00000642 uip_buf
00000608 g F .text 00000050 FlashClear
00004bec g F .text 00000024 uip_send
00004bf0 g F .text 00000024 uip_send
200016a8 g O .bss 00000002 uip_slen
00000194 g F .text 00000028 FileFirmwareUpdateStartedHook
00000fac g F .text 00000030 UARTEnable

View File

@ -123,6 +123,26 @@
#define BOOT_COM_NET_NETMASK_HOOK_ENABLE (0)
/****************************************************************************************
* B A C K D O O R C O N F I G U R A T I O N
****************************************************************************************/
#if (BOOT_COM_NET_ENABLE > 0)
/* Override the default time that the backdoor is open if firmware updates via TCP/IP
* are supported. in this case a reactivation of the bootloader results in a re-
* initialization of the ethernet MAC. when directly connected to the ethernet port of
* a PC this will go relatively fast (depending on what MS Windows is being used), but
* when connected to the network via a router this can take several seconds. feel free to
* shorten/lengthen this time for finetuning. the only downside of a long backdoor open
* time is that the starting of the user program will also be delayed for this time.
*
* Also note that when the target is directly connected to the ethernet port of a PC,
* the checkbox "Automatically retry socket connection" should be checked in the
* Microboot settings. if connection via a router the uncheck this checkbox.
*/
#define BACKDOOR_ENTRY_TIMEOUT_MS (10000)
#endif
/****************************************************************************************
* F I L E S Y S T E M I N T E R F A C E C O N F I G U R A T I O N
****************************************************************************************/

View File

@ -1,19 +1,19 @@
S01B00006F70656E62746C5F656B5F6C6D3373363936352E737265632E
S1130000A0180020156C0000D97B0000D97B0000EB
S1130010D97B0000D97B0000D97B0000D97B00008C
S1130020D97B0000D97B0000D97B0000D97B00007C
S1130030D97B0000D97B0000D97B0000D97B00006C
S1130040D97B0000D97B0000D97B0000D97B00005C
S1130050D97B0000D97B0000D97B0000D97B00004C
S1130060D97B0000D97B0000D97B0000D97B00003C
S1130070D97B0000D97B0000D97B0000D97B00002C
S1130080D97B0000D97B0000D97B0000D97B00001C
S1130090D97B0000D97B0000D97B0000D97B00000C
S11300A0D97B0000D97B0000D97B0000D97B0000FC
S11300B0D97B0000D97B0000D97B0000D97B0000EC
S11300C0D97B0000D97B0000D97B0000D97B0000DC
S11300D0D97B0000D97B0000D97B0000D97B0000CC
S11300E0D97B0000D97B0000D97B0000D97B0000BC
S1130000A0180020156C0000DD7B0000DD7B0000E3
S1130010DD7B0000DD7B0000DD7B0000DD7B00007C
S1130020DD7B0000DD7B0000DD7B0000DD7B00006C
S1130030DD7B0000DD7B0000DD7B0000DD7B00005C
S1130040DD7B0000DD7B0000DD7B0000DD7B00004C
S1130050DD7B0000DD7B0000DD7B0000DD7B00003C
S1130060DD7B0000DD7B0000DD7B0000DD7B00002C
S1130070DD7B0000DD7B0000DD7B0000DD7B00001C
S1130080DD7B0000DD7B0000DD7B0000DD7B00000C
S1130090DD7B0000DD7B0000DD7B0000DD7B0000FC
S11300A0DD7B0000DD7B0000DD7B0000DD7B0000EC
S11300B0DD7B0000DD7B0000DD7B0000DD7B0000DC
S11300C0DD7B0000DD7B0000DD7B0000DD7B0000CC
S11300D0DD7B0000DD7B0000DD7B0000DD7B0000BC
S11300E0DD7B0000DD7B0000DD7B0000DD7B0000AC
S11300F0044B9D46C046C046C046C04605F014FEAB
S113010006F012FFA018002003E00B780370491CCE
S1130110401C13005A1E002BF7D1704701E00170F8
@ -345,7 +345,7 @@ S113156020120843E06094F81F0294F81E12090444
S113157051EA006094F81D1250EA012094F81C12FC
S1131580084320612670DFF8D8090088401CDFF882
S1131590D0190880E0800020206300202071002002
S11315A0F2BD0000A87B000080B500280BD00168C4
S11315A0F2BD0000AC7B000080B500280BD00168C0
S11315B0002908D001680978002904D00168C98885
S11315C08288914201D0092008E00068407800F048
S11315D061FFC00701D5032000E0002002BDC0B2B6
@ -376,7 +376,7 @@ S113175019D1A57139000098FFF76BF82061F87F63
S1131760B97F090451EA0060797F50EA0120397F8A
S11317700843E0600020A0600020A0610098206081
S11317800098C088A0803000C0B20DB0BDE8F083DE
S1131790E87B000018760000247C00002DE9F04767
S1131790EC7B00001C760000287C00002DE9F0475B
S11317A0050016001F000C00002038602800FFF719
S11317B0FBFEC0B2002801D0C0B2E7E0A879000661
S11317C001D50220E2E0A879C00701D40720DDE0BA
@ -654,8 +654,8 @@ S11328B032F8112080B29042F4D111F18000C1B2FB
S11328C0080080B27047002100E0491C0B4A32F82E
S11328D01120002A05D0094A32F8112080B2904212
S11328E0F3D1064A32F81120002A03D0044830F804
S11328F01100FFE780B27047587400009870000020
S113290078720000B0F1402F5BD0DFF838138842B2
S11328F01100FFE780B270475C7400009C70000018
S11329007C720000B0F1402F5BD0DFF838138842AE
S113291057D0DFF83413884253D0DFF8301388429D
S11329204FD0DFF82C1388424BD0DFF828138842AD
S113293047D0DFF82413884243D0DFF820138842BD
@ -720,7 +720,7 @@ S1132CD00F4800F0A3FD02222900C9B22000FFF72B
S1132CE075FE082301222900C9B22000FFF7AAFEBD
S1132CF031BD0000000006400010064000200640E0
S1132D000030064000400640005006400060064087
S1132D1084780000DFF8C01188420BD0DFF8BC11C2
S1132D1088780000DFF8C01188420BD0DFF8BC11BE
S1132D20884207D0DFF8B811884203D0DFF8B41125
S1132D30884201D1012000E00020C0B270472DE993
S1132D40F84304000F00150099462000FFF7E2FF46
@ -749,7 +749,7 @@ S1132EA02521114800F0BAFCE0688007FCD5A56034
S1132EB031BD38B504000D002000FFF72BFF0028BA
S1132EC004D140F27F21084800F0A8FCE0684007E4
S1132ED0FCD5A068286031BD00800040009000400F
S1132EE000A0004000B00040E0780000DFF8DC13F0
S1132EE000A0004000B00040E4780000DFF8DC13EC
S1132EF0884200F04A81DFF8D813884200F0458107
S1132F00DFF8D013884200F04081DFF8CC13884208
S1132F1000F03B81DFF8C413884200F03681DFF80B
@ -884,11 +884,11 @@ S113371010D5DFF88430134013F1004F03D0002A92
S113372008D4090506D44000C2F38651491CB0FBF5
S1133730F1F00AE0C2F3C551491CB0FBF1F004E01A
S1133740C1F3C351491CB0FBF1F030BC7047000019
S1133750C4770000055C00F000E50F4000E60F4070
S1133760007C00000C7C000060E00F4058E00F403B
S1133750C8770000055C00F000E50F4000E60F406C
S1133760047C0000107C000060E00F4058E00F4033
S113377050E00F4000E00F400000FF7070E00F4089
S11337808FFFFF7F30000080FCFF3FF80300C0077D
S113379000004040987600000008008064E00F407C
S1133790000040409C7600000008008064E00F4078
S11337A0C0E1E4000000011000000310001BB7009A
S11337B00024F40070383900C0C62D0000093D0013
S11337C080B500F00EF811484CF24F3101601048FA
@ -1181,7 +1181,7 @@ S11349A00021C1730020264948752549087525480A
S11349B00088401C2349088021482249098889B27B
S11349C0090A81741E481F490988C1741C480021C2
S11349D00183FEF79FFFC04319490883164800214D
S11349E00170FFF772B800005C1600204C7C0000D8
S11349E00170FFF772B800005C160020507C0000D4
S11349F080B2010A51EA002080B2704780B50129D3
S1134A000CDB114A118011490968884206D00E490D
S1134A100A8801000D48006800F01CF901BD00007F
@ -1318,7 +1318,7 @@ S1135230886410BD80B541680E48806C01F08FF918
S1135240002803D13120FFF792FE06E00948FF2130
S1135250C17008480121A0F8441001BD10B5040034
S113526001F071F90348FF21C17002480121A0F83F
S1135270441010BD1C1500201F150020447C0000A4
S1135270441010BD1C1500201F150020487C0000A0
S1135280201500202315002080B53120FFF76FFE84
S113529001BDFF0080B5DFF8C8030078401CDFF8CB
S11352A0C0130870DFF8B003002101701EE0DFF8BE
@ -1383,8 +1383,8 @@ S1135640FFF708FB0A4808218181084800880E30CA
S11356500649088001BD000095160020BC140020F6
S11356609716002098160020961600208216002017
S1135670040000205C1600201A00002020000020F6
S113568024000020341600200A000020507C000072
S11356903C7C0000641600207C160020601600206C
S113568024000020341600200A000020547C00006E
S1135690407C0000641600207C1600206016002068
S11356A0681600203A00002062B38B0708D0521E0F
S11356B011F8013B00F8013B00F024808B07F6D180
S11356C0830740F0208000BF103A07D330B4B1E81C
@ -1447,7 +1447,7 @@ S1135A40A2411148FDF7EAFE256031BD38B50400D6
S1135A500D000C48844204D040F212510A48FDF76C
S1135A60DDFE206AC007FCD4EDB2E80010F0F800B7
S1135A7050F001002062206AC007FCD4206B80B281
S1135A8032BD00000080044004770000A0252600F9
S1135A8032BD00000080044008770000A0252600F5
S1135A90E9F1FEFF10B50400A00504D09C21DFF855
S1135AA06001FDF7BBFEDFF85C0140F601210160F7
S1135AB0DFF854010460DFF85401DFF85411016089
@ -1471,7 +1471,7 @@ S1135BC02DFE002C04D140F285210D48FDF726FE60
S1135BD01748006810F0E04F06D0154800681549D2
S1135BE00840B0F1805F02D15FF0FF3006E0124858
S1135BF000682860114800682060002032BD000061
S1135C006477000014D00F4000D00F4008D00F403C
S1135C006877000014D00F4000D00F4008D00F4038
S1135C10020042A40CD00F40A0E10F4000D10F407D
S1135C2030D00F4020D00F40010042A404D00F40D8
S1135C3000E00F400000FF70E0E10F40E4E10F409E
@ -1596,13 +1596,13 @@ S113639000F08BF810EB08003060AD1CB7F1050875
S11363A0002C0DD0002606E0280000F07EF8B6B2DE
S11363B03055AD1C761CB6B20FFA88F84645F3DBAF
S11363C0FFE7404600B2BDE8F08100008F160020D0
S11363D048060020BC790000707A0000487A00006A
S11363E07C0800202C7C0000347C0000947A00009F
S11363F0EC7900002C160020D0120020501400204C
S1136400F47B0000EC150020247B0000EE15002036
S1136410F0150020F2150020B87A0000D0130020F7
S1136420DC7A0000B87B0000787B0000407B000031
S1136430907B00001C7A000080B5010011F00F0071
S11363D048060020C0790000747A00004C7A00005E
S11363E07C080020307C0000387C0000987A000093
S11363F0F07900002C160020D01200205014002048
S1136400F87B0000EC150020287B0000EE1500202E
S1136410F0150020F2150020BC7A0000D0130020F3
S1136420E07A0000BC7B00007C7B0000447B000021
S1136430947B0000207A000080B5010011F00F0069
S11364403030C9B20A2901DBC01D02E0C0B200F03D
S1136450B1F9C0B202BD38B504000D00E4B22009A0
S1136460FFF7EAFF287014F00F00FFF7E5FF6870EC
@ -1642,7 +1642,7 @@ S1136670DEE710B50400104800F0EFFB10F1010F45
S113668002D02070012000E0002010BD80B5010080
S1136690C9B2094800F0F6FB002803D1002007E046
S11366A0FDF7C9F8044800F0C2FB0028F8D0012027
S11366B002BD00000100001000C00040807900000D
S11366B002BD00000100001000C000408479000009
S11366C091160020681500209016002069150020FE
S11366D000B589B000A8202100F018FC00A93148B9
S11366E0FBF7AAFB002808D10098002805D09DF8E4
@ -1657,7 +1657,7 @@ S11367600400114890F82402012817D10E49200092
S1136770FBF73DFC002811D50B48002180F82412BA
S11367800948FBF770FA09E02178094800F07AFB20
S1136790074800F04CFB0028FAD0641C207800283D
S11367A0F2D110BD5C7B0000A00A0020C87B000071
S11367A0F2D110BD607B0000A00A0020CC7B000069
S11367B000C0004080B500F0ACFB02BD30380A28B0
S11367C001D2012000E00020C0B27047DFF8380495
S11367D05FF0FF310160DFF834045FF0FF310160E6
@ -1728,7 +1728,7 @@ S1136BD00400002500E06D1CEDB2102D11D2FCF76D
S1136BE02AFEEDB20C200A4900FB0510007AE4B23B
S1136BF0A042F0D1EDB20C20054900FB051040681D
S1136C0000E0002032BD0000C80C0020CC0E0020A3
S1136C1058750000044B9D46C046C046C046C04659
S1136C105C750000044B9D46C046C046C046C04655
S1136C20FFF786F800F080F9A018002062F30F2225
S1136C3062F31F42401810F0030308D0C91A1FD38F
S1136C40DB0748BF00F8012D28BF20F8022D1300F0
@ -1774,7 +1774,7 @@ S1136EB010B504002000FFF7EDFE002804D140F2D5
S1136EC03B510C48FCF7AAFCA069C0F3C00010F0C9
S1136ED0010010BD00C0004000D0004000E00040B0
S1136EE000F000400000014000100140002001407B
S1136EF0003001402478000000E00F400000FF70E3
S1136EF0003001402878000000E00F400000FF70DF
S1136F000000011000000310FEFCFFFF002200F04F
S1136F1017B810B50400200000F02BF8002801D0A9
S1136F20203CFFE7200010BD00F02BF8002801D022
@ -1785,7 +1785,7 @@ S1136F60042BC90728BF20F8022B48BF00F8012BC7
S1136F7000BD61381A2801D2012000E00020C0B20F
S1136F80704701207047000010B507497944183153
S1136F90064C7C44163404E00A68081D51188847DE
S1136FA00146A142F8D110BD580B0000780B000037
S1136FA00146A142F8D110BD5C0B00007C0B00002F
S1136FB080B500F005F800F017F800F023F8FCE7BE
S1136FC080B50648FCF7C4F90548FCF748F90321E5
S1136FD05FF04020FBF772FE01BD00008003C0019A
@ -1793,200 +1793,200 @@ S1136FE00100002000F01AB880B5FCF723FCFCF780
S1136FF0E7FBFFF7ACFAFEF7ABFEFEF721FE00F06D
S113700013F801BD80B5FCF716FCFCF7EEFBFEF7A8
S1137010D5FEFEF72EFE00F012F801BD07463846F5
S113702000F030F8FBE7000080B51448012101703E
S1137030FCF7E5FB1249086000F001F801BD80B5DA
S1137040FEF782FE012818D0FEF795FE002814D022
S11370500A480078012810D1FCF7D1FB08490968D7
S113706001F2EE21884208D3044800210170FEF7A2
S11370708BFE002801D1FFF73DFA01BD8E160020DA
S11370804416002080B5C046C046024A11001820AC
S1137090ABBEFBE7260002006100620063006400EF
S11370A0650066006700680069006A006B006C0098
S11370B06D006E006F007000710072007300740048
S11370C0750076007700780079007A00A100A200AC
S11370D0A300A500AC00AF00E000E100E200E30083
S11370E0E400E500E600E700E800E900EA00EB0060
S11370F0EC00ED00EE00EF00F000F100F200F30010
S1137100F400F500F600F800F900FA00FB00FC00BA
S1137110FD00FE00FF000101030105010701090153
S11371200B010D010F0111011301150117011901C3
S11371301B011D011F012101230125012701290133
S11371402B012D012F0131013301350137013A01A2
S11371503C013E01400142014401460148014B010A
S11371604D014F01510153015501570159015B0173
S11371705D015F01610163016501670169016B01E3
S11371806D016F0171017301750177017A017C0151
S11371907E019201B103B203B303B403B503B60392
S11371A0B703B803B903BA03BB03BC03BD03BE03EF
S11371B0BF03C003C103C303C403C503C603C7039A
S11371C0C803C903CA033004310432043304340449
S11371D0350436043704380439043A043B043C04C7
S11371E03D043E043F044004410442044304440477
S11371F0450446044704480449044A044B044C0427
S11372004D044E044F0451045204530454045504D1
S113721056045704580459045A045B045C045E047D
S11372205F047021712172217321742175217621EB
S11372307721782179217A217B217C217D217E216E
S11372407F2141FF42FF43FF44FF45FF46FF47FFC5
S113725048FF49FF4AFF4BFF4CFF4DFF4EFF4FFFD6
S113726050FF51FF52FF53FF54FF55FF56FF57FF86
S113727058FF59FF5AFF00004100420043004400F8
S1137280450046004700480049004A004B004C00B6
S11372904D004E004F005000510052005300540066
S11372A0550056005700580059005A002100E0FFCD
S11372B0E1FFE5FFE2FFE3FFC000C100C200C3003D
S11372C0C400C500C600C700C800C900CA00CB007E
S11372D0CC00CD00CE00CF00D000D100D200D3002E
S11372E0D400D500D600D800D900DA00DB00DC00D9
S11372F0DD00DE007801000102010401060108013D
S11373000A010C010E0110011201140116011801E9
S11373101A011C011E012001220124012601280159
S11373202A012C012E0130013201340136013901C8
S11373303B013D013F0141014301450147014A0130
S11373404C014E01500152015401560158015A0199
S11373505C015E01600162016401660168016A0109
S11373606C016E01700172017401760179017B0177
S11373707D01910191039203930394039503960372
S11373809703980399039A039B039C039D039E030D
S11373909F03A003A103A303A403A503A603A703B8
S11373A0A803A903AA031004110412041304140467
S11373B0150416041704180419041A041B041C04E5
S11373C01D041E041F042004210422042304240495
S11373D0250426042704280429042A042B042C0445
S11373E02D042E042F0401040204030404040504E0
S11373F006040704080409040A040B040C040E041C
S11374000F046021612162216321642165216621C9
S11374106721682169216A216B216C216D216E210C
S11374206F2121FF22FF23FF24FF25FF26FF27FFD3
S113743028FF29FF2AFF2BFF2CFF2DFF2EFF2FFFF4
S113744030FF31FF32FF33FF34FF35FF36FF37FFA4
S113745038FF39FF3AFF0000C700FC00E900E200F2
S1137460E400E000E500E700EA00EB00E800EF00DC
S1137470EE00EC00C400C500C900E600C600F4003C
S1137480F600F200FB00F900FF00D600DC00A200C9
S1137490A300A500A7209201E100ED00F300FA008B
S11374A0F100D100AA00BA00BF001023AC00BD0057
S11374B0BC00A100AB00BB009125922593250225B9
S11374C024256125622556255525632551255725F3
S11374D05D255C255B251025142534252C251C25CC
S11374E000253C255E255F255A25542569256625FA
S11374F0602550256C256725682564256525592553
S11375005825522553256B256A2518250C258825D1
S113751084258C2590258025B103DF009303C003C7
S1137520A303C303B500C403A6039803A903B403C8
S11375301E22C603B50329226122B10065226422FA
S113754020232123F7004822B0001922B7001A2271
S11375507F20B200A025A0000080000000200000D1
S11375600400000000A0000000200000050000004E
S113757000C00000002000000600000000E0000041
S113758000200000070000000000010000200000AF
S11375900800000000200100002000000900000095
S11375A000400100002000000A000000006001000B
S11375B0002000000B0000000080010000200000FB
S11375C00C00000000A00100002000000D000000DD
S11375D000C00100002000000E00000000E00100D7
S11375E0002000000F0000000000020000800000E6
S11375F01000000000800200008000001100000064
S1137600000003000080000012000000008003005E
S11376100080000013000000809A90418E418F800A
S11376204545454949498E8F9092924F994F5555FA
S113763059999A9B9C9D9E9F41494F55A5A5A6A7E4
S1137640A8A9AAABAC21AEAFB0B1B2B3B4B5B6B7CA
S1137650B8B9BABBBCBDBEBFC0C1C2C3C4C5C6C72E
S1137660C8C9CACBCCCDCECFD0D1D2D3D4D5D6D71E
S1137670D8D9DADBDCDDDEDFE0E1E2E3E4E5E6E70E
S1137680E8E9EAEBECEDEEEFF0F1F2F3F4F5F6F7FE
S1137690F8F9FAFBFCFDFEFF40420F0000201C003D
S11376A080841E0000802500999E3600004038002A
S11376B000093D0000803E0000004B00404B4C00A0
S11376C000204E00808D5B0000C05D0000807000D3
S11376D000127A0000007D0080969800001BB7001D
S11376E00080BB00C0E8CE00647ADA000024F40015
S11376F00000FA0080A81201002D310100366E014D
S113770040787D01433A5C576F726B5C736F6674AB
S1137710776172655C4F70656E424C545C54617263
S11377206765745C44656D6F5C41524D434D335FD6
S11377304C4D33535F454B5F4C4D335336393635DF
S11377405F4941525C426F6F745C6C69625C647245
S1137750697665726C69625C65746865726E65747D
S11377602E630000433A5C576F726B5C736F6674F0
S1137770776172655C4F70656E424C545C54617203
S11377806765745C44656D6F5C41524D434D335F76
S11377904C4D33535F454B5F4C4D3353363936357F
S11377A05F4941525C426F6F745C6C69625C6472E5
S11377B0697665726C69625C666C6173686C696237
S11377C02E630000433A5C576F726B5C736F667490
S11377D0776172655C4F70656E424C545C546172A3
S11377E06765745C44656D6F5C41524D434D335F16
S11377F04C4D33535F454B5F4C4D3353363936351F
S11378005F4941525C426F6F745C6C69625C647284
S1137810697665726C69625C73797363746C2E63E8
S113782000000000433A5C576F726B5C736F6674C0
S1137830776172655C4F70656E424C545C54617242
S11378406765745C44656D6F5C41524D434D335FB5
S11378504C4D33535F454B5F4C4D335336393635BE
S11378605F4941525C426F6F745C6C69625C647224
S1137870697665726C69625C756172746C69622E9A
S113788063000000433A5C576F726B5C736F6674FD
S1137890776172655C4F70656E424C545C546172E2
S11378A06765745C44656D6F5C41524D434D335F55
S11378B04C4D33535F454B5F4C4D3353363936355E
S11378C05F4941525C426F6F745C6C69625C6472C4
S11378D0697665726C69625C6770696F2E6300001B
S11378E0433A5C576F726B5C736F66747761726551
S11378F05C4F70656E424C545C5461726765745C95
S113790044656D6F5C41524D434D335F4C4D335371
S11379105F454B5F4C4D3353363936355F494152E1
S11379205C426F6F745C6C69625C647269766572E8
S11379306C69625C7373692E63000000433A5C57A0
S11379406F726B5C736F6674776172655C4F7065A0
S11379506E424C545C5461726765745C536F75720B
S113796063655C41524D434D335F4C4D33535C4929
S113797041525C766563746F72732E63000000007D
S1137980433A5C576F726B5C736F667477617265B0
S11379905C4F70656E424C545C5461726765745CF4
S11379A0536F757263655C41524D434D335F4C4D6B
S11379B033535C756172742E63000000433A5C5764
S11379C06F726B5C736F6674776172655C4F706520
S11379D06E424C545C5461726765745C536F75728B
S11379E063655C66696C652E6300000050617273A8
S11379F0696E67206669726D776172652066696C6D
S1137A006520746F206F627461696E2065726173A2
S1137A10652073697A652E2E2E0000004669726D0A
S1137A207761726520757064617465207375636332
S1137A3065737366756C6C7920636F6D706C6574B7
S1137A4065640A0D000000004F70656E696E672062
S1137A506669726D776172652066696C6520666F10
S1137A60722072656164696E672E2E2E000000001C
S1137A704669726D77617265207570646174652002
S1137A807265717565737420646574656374656487
S1137A900A0D00005374617274696E67207468651E
S1137AA02070726F6772616D6D696E6720736571A6
S1137AB075656E63650A0D0052656164696E6720C1
S1137AC06C696E652066726F6D2066696C652E2E1A
S1137AD02E4552524F520A0D00000000496E766145
S1137AE06C696420636865636B73756D20666F757C
S1137AF06E642E2E2E4552524F520A0D0000000085
S1137B0063D1FFFF9816000004000020000000006D
S1137B100BA5FFFF040000003C0100000000002052
S1137B20000000002062797465732066726F6D2016
S1137B306D656D6F727920617420307800000000EB
S1137B4057726974696E672070726F6772616D2015
S1137B50636865636B73756D2E2E2E002F64656DDF
S1137B606F70726F675F656B5F6C6D337336393638
S1137B70352E737265630000206279746573207416
S1137B806F206D656D6F727920617420307800000C
S1137B90436C6F73696E67206669726D7761726595
S1137BA02066696C650A0D0001030507090E1012B1
S1137BB01416181C1E00000050726F6772616D6D00
S1137BC0696E6720000000002F626F6F746C6F672E
S1137BD02E7478740000000080B541210148FBF741
S1137BE01DFE01BD3C790000222A3A3C3E3F7C7FC9
S1137BF00000000045726173696E67200000000098
S1137C0040E00F4044E00F4048E00F4000E10F40E7
S1137C1004E10F4008E10F40C046C046C046C046DC
S1137C20FFF782F92B2C3B3D5B5D00004552524F20
S1137C30520A0D004F4B0A0D00000000FFFFFFFF2A
S1137C40FFFF00004F70656E424C540000000000BE
S10B7C50FFFFFFFF0401000027
S9037C1967
S113702000F032F8FBE7000080B51548012101703B
S1137030FCF7E5FB1349086000F001F801BD80B5D9
S1137040FEF782FE012819D0FEF795FE002815D020
S11370500B480078012811D1FCF7D1FB09490968D4
S113706001F51C511031884208D3054800210170F4
S1137070FEF78AFE002801D1FFF73CFA01BD0000AB
S11370808E1600204416002080B5C046C046024A31
S113709011001820ABBEFBE726000200610062006D
S11370A063006400650066006700680069006A00A8
S11370B06B006C006D006E006F0070007100720058
S11370C073007400750076007700780079007A0008
S11370D0A100A200A300A500AC00AF00E000E10005
S11370E0E200E300E400E500E600E700E800E90070
S11370F0EA00EB00EC00ED00EE00EF00F000F10020
S1137100F200F300F400F500F600F800F900FA00CC
S1137110FB00FC00FD00FE00FF000101030105016E
S1137120070109010B010D010F01110113011501E3
S1137130170119011B011D011F0121012301250153
S1137140270129012B012D012F01310133013501C3
S113715037013A013C013E0140014201440146012C
S113716048014B014D014F01510153015501570194
S113717059015B015D015F01610163016501670103
S113718069016B016D016F01710173017501770173
S11371907A017C017E019201B103B203B303B4030B
S11371A0B503B603B703B803B903BA03BB03BC03FF
S11371B0BD03BE03BF03C003C103C303C403C503AC
S11371C0C603C703C803C903CA0330043104320425
S11371D033043404350436043704380439043A04D7
S11371E03B043C043D043E043F0440044104420487
S11371F043044404450446044704480449044A0437
S11372004B044C044D044E044F04510452045304E3
S11372105404550456045704580459045A045B048E
S11372205C045E045F047021712172217321742156
S1137230752176217721782179217A217B217C217E
S11372407D217E217F2141FF42FF43FF44FF45FF13
S113725046FF47FF48FF49FF4AFF4BFF4CFF4DFFE6
S11372604EFF4FFF50FF51FF52FF53FF54FF55FF96
S113727056FF57FF58FF59FF5AFF000041004200D4
S113728043004400450046004700480049004A00C6
S11372904B004C004D004E004F0050005100520076
S11372A053005400550056005700580059005A0026
S11372B02100E0FFE1FFE5FFE2FFE3FFC000C100C2
S11372C0C200C300C400C500C600C700C800C9008E
S11372D0CA00CB00CC00CD00CE00CF00D000D1003E
S11372E0D200D300D400D500D600D800D900DA00EB
S11372F0DB00DC00DD00DE00780100010201040196
S1137300060108010A010C010E0110011201140109
S1137310160118011A011C011E0120012201240179
S1137320260128012A012C012E01300132013401E9
S1137330360139013B013D013F0141014301450152
S113734047014A014C014E015001520154015601BA
S113735058015A015C015E01600162016401660129
S113736068016A016C016E01700172017401760199
S113737079017B017D0191019103920393039403AD
S1137380950396039703980399039A039B039C031D
S11373909D039E039F03A003A103A303A403A503CA
S11373A0A603A703A803A903AA0310041104120443
S11373B013041404150416041704180419041A04F5
S11373C01B041C041D041E041F04200421042204A5
S11373D023042404250426042704280429042A0455
S11373E02B042C042D042E042F0401040204030492
S11373F00404050406040704080409040A040B042D
S11374000C040E040F0460216121622163216421B4
S1137410652166216721682169216A216B216C211C
S11374206D216E216F2121FF22FF23FF24FF25FF01
S113743026FF27FF28FF29FF2AFF2BFF2CFF2DFF04
S11374402EFF2FFF30FF31FF32FF33FF34FF35FFB4
S113745036FF37FF38FF39FF3AFF0000C700FC0052
S1137460E900E200E400E000E500E700EA00EB00E8
S1137470E800EF00EE00EC00C400C500C900E6001F
S1137480C600F400F600F200FB00F900FF00D6008D
S1137490DC00A200A300A500A7209201E100ED00FA
S11374A0F300FA00F100D100AA00BA00BF001023D3
S11374B0AC00BD00BC00A100AB00BB00912592252F
S11374C09325022524256125622556255525632506
S11374D0512557255D255C255B251025142534256C
S11374E02C251C2500253C255E255F255A25542581
S11374F069256625602550256C2567256825642542
S1137500652559255825522553256B256A251825A7
S11375100C25882584258C2590258025B103DF0042
S11375209303C003A303C303B500C403A6039803D2
S1137530A903B4031E22C603B50329226122B100A4
S11375406522642220232123F7004822B000192257
S1137550B7001A227F20B200A025A00000800000FE
S1137560002000000400000000A000000020000033
S11375700500000000C0000000200000060000001C
S113758000E00000002000000700000000000100EF
S1137590002000000800000000200100002000007E
S11375A00900000000400100002000000A00000063
S11375B000600100002000000B00000000800100BA
S11375C0002000000C00000000A0010000200000CA
S11375D00D00000000C00100002000000E000000AB
S11375E000E00100002000000F0000000000020085
S11375F000800000100000000080020000800000F5
S113760011000000000003000080000012000000D0
S1137610008003000080000013000000809A904165
S11376208E418F804545454949498E8F9092924FAE
S1137630994F555559999A9B9C9D9E9F41494F55E9
S1137640A5A5A6A7A8A9AAABAC21AEAFB0B1B2B309
S1137650B4B5B6B7B8B9BABBBCBDBEBFC0C1C2C36E
S1137660C4C5C6C7C8C9CACBCCCDCECFD0D1D2D35E
S1137670D4D5D6D7D8D9DADBDCDDDEDFE0E1E2E34E
S1137680E4E5E6E7E8E9EAEBECEDEEEFF0F1F2F33E
S1137690F4F5F6F7F8F9FAFBFCFDFEFF40420F00A3
S11376A000201C0080841E0000802500999E360066
S11376B00040380000093D0000803E0000004B00FF
S11376C0404B4C0000204E00808D5B0000C05D00EC
S11376D00080700000127A0000007D0080969800FF
S11376E0001BB7000080BB00C0E8CE00647ADA005B
S11376F00024F4000000FA0080A81201002D3101DA
S113770000366E0140787D01433A5C576F726B5CC2
S1137710736F6674776172655C4F70656E424C542A
S11377205C5461726765745C44656D6F5C41524D75
S1137730434D335F4C4D33535F454B5F4C4D335397
S1137740363936355F4941525C426F6F745C6C69FF
S1137750625C6472697665726C69625C65746865A2
S1137760726E65742E630000433A5C576F726B5CF3
S1137770736F6674776172655C4F70656E424C54CA
S11377805C5461726765745C44656D6F5C41524D15
S1137790434D335F4C4D33535F454B5F4C4D335337
S11377A0363936355F4941525C426F6F745C6C699F
S11377B0625C6472697665726C69625C666C617342
S11377C0686C69622E630000433A5C576F726B5CAD
S11377D0736F6674776172655C4F70656E424C546A
S11377E05C5461726765745C44656D6F5C41524DB5
S11377F0434D335F4C4D33535F454B5F4C4D3353D7
S1137800363936355F4941525C426F6F745C6C693E
S1137810625C6472697665726C69625C73797363C5
S1137820746C2E6300000000433A5C576F726B5C0B
S1137830736F6674776172655C4F70656E424C5409
S11378405C5461726765745C44656D6F5C41524D54
S1137850434D335F4C4D33535F454B5F4C4D335376
S1137860363936355F4941525C426F6F745C6C69DE
S1137870625C6472697665726C69625C756172746B
S11378806C69622E63000000433A5C576F726B5C54
S1137890736F6674776172655C4F70656E424C54A9
S11378A05C5461726765745C44656D6F5C41524DF4
S11378B0434D335F4C4D33535F454B5F4C4D335316
S11378C0363936355F4941525C426F6F745C6C697E
S11378D0625C6472697665726C69625C6770696F18
S11378E02E630000433A5C576F726B5C736F66746F
S11378F0776172655C4F70656E424C545C54617282
S11379006765745C44656D6F5C41524D434D335FF4
S11379104C4D33535F454B5F4C4D335336393635FD
S11379205F4941525C426F6F745C6C69625C647263
S1137930697665726C69625C7373692E630000001A
S1137940433A5C576F726B5C736F667477617265F0
S11379505C4F70656E424C545C5461726765745C34
S1137960536F757263655C41524D434D335F4C4DAB
S113797033535C4941525C766563746F72732E6352
S113798000000000433A5C576F726B5C736F66745F
S1137990776172655C4F70656E424C545C546172E1
S11379A06765745C536F757263655C41524D434DFA
S11379B0335F4C4D33535C756172742E6300000069
S11379C0433A5C576F726B5C736F66747761726570
S11379D05C4F70656E424C545C5461726765745CB4
S11379E0536F757263655C66696C652E6300000095
S11379F050617273696E67206669726D7761726532
S1137A002066696C6520746F206F627461696E20F2
S1137A1065726173652073697A652E2E2E000000ED
S1137A204669726D77617265207570646174652052
S1137A307375636365737366756C6C7920636F6DBE
S1137A40706C657465640A0D000000004F70656E0B
S1137A50696E67206669726D776172652066696C0C
S1137A606520666F722072656164696E672E2E2EC2
S1137A70000000004669726D77617265207570645C
S1137A8061746520726571756573742064657465CD
S1137A90637465640A0D00005374617274696E67DF
S1137AA0207468652070726F6772616D6D696E67AE
S1137AB02073657175656E63650A0D0052656164B6
S1137AC0696E67206C696E652066726F6D206669E9
S1137AD06C652E2E2E4552524F520A0D00000000A6
S1137AE0496E76616C696420636865636B73756D58
S1137AF020666F756E642E2E2E4552524F520A0D1B
S1137B00000000005FD1FFFF981600000400002071
S1137B100000000007A5FFFF040000003C01000076
S1137B200000002000000000206279746573206664
S1137B30726F6D206D656D6F72792061742030787D
S1137B400000000057726974696E672070726F6775
S1137B5072616D20636865636B73756D2E2E2E00E4
S1137B602F64656D6F70726F675F656B5F6C6D33EB
S1137B7073363936352E737265630000206279746A
S1137B80657320746F206D656D6F72792061742048
S1137B9030780000436C6F73696E67206669726D9C
S1137BA0776172652066696C650A0D00010305073B
S1137BB0090E10121416181C1E00000050726F6774
S1137BC072616D6D696E6720000000002F626F6F37
S1137BD0746C6F672E7478740000000080B54121C6
S1137BE00148FBF71BFE01BD40790000222A3A3C04
S1137BF03E3F7C7F0000000045726173696E672020
S1137C000000000040E00F4044E00F4048E00F4017
S1137C1000E10F4004E10F4008E10F40C046C046B8
S1137C20C046C046FFF780F92B2C3B3D5B5D00004E
S1137C304552524F520A0D004F4B0A0D00000000EE
S1137C40FFFFFFFFFFFF00004F70656E424C5400C2
S10F7C5000000000FFFFFFFF0401000023
S9037C1D63

View File

@ -125,6 +125,26 @@
#define BOOT_COM_NET_NETMASK_HOOK_ENABLE (0)
/****************************************************************************************
* B A C K D O O R C O N F I G U R A T I O N
****************************************************************************************/
#if (BOOT_COM_NET_ENABLE > 0)
/* Override the default time that the backdoor is open if firmware updates via TCP/IP
* are supported. in this case a reactivation of the bootloader results in a re-
* initialization of the ethernet MAC. when directly connected to the ethernet port of
* a PC this will go relatively fast (depending on what MS Windows is being used), but
* when connected to the network via a router this can take several seconds. feel free to
* shorten/lengthen this time for finetuning. the only downside of a long backdoor open
* time is that the starting of the user program will also be delayed for this time.
*
* Also note that when the target is directly connected to the ethernet port of a PC,
* the checkbox "Automatically retry socket connection" should be checked in the
* Microboot settings. if connection via a router the uncheck this checkbox.
*/
#define BACKDOOR_ENTRY_TIMEOUT_MS (10000)
#endif
/****************************************************************************************
* F I L E S Y S T E M I N T E R F A C E C O N F I G U R A T I O N
****************************************************************************************/

File diff suppressed because it is too large Load Diff

View File

@ -39,7 +39,7 @@
<Wnd0>
<Wnd2>
<Tabs>
<Tab>
<Identity>TabID-4214-26312</Identity>
@ -51,20 +51,20 @@
</Tab>
</Tabs>
<SelectedTab>0</SelectedTab></Wnd0><Wnd1><Tabs><Tab><Identity>TabID-14429-10902</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd1><Wnd4><Tabs><Tab><Identity>TabID-29443-18340</Identity><TabName>Disassembly</TabName><Factory>Disassembly</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd4></Windows>
<SelectedTab>0</SelectedTab></Wnd2><Wnd3><Tabs><Tab><Identity>TabID-14429-10902</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd3><Wnd5><Tabs><Tab><Identity>TabID-29443-18340</Identity><TabName>Disassembly</TabName><Factory>Disassembly</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd5></Windows>
<Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\blt_conf.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>73</YPos2><SelStart2>4944</SelStart2><SelEnd2>4944</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>40</YPos2><SelStart2>3038</SelStart2><SelEnd2>3038</SelEnd2></Tab><ActiveTab>1</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\..\..\Source\backdoor.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>24</YPos2><SelStart2>2978</SelStart2><SelEnd2>2978</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\lib\uip\netdev.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>53</YPos2><SelStart2>2862</SelStart2><SelEnd2>2862</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\..\..\Source\net.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>85</YPos2><SelStart2>5739</SelStart2><SelEnd2>5739</SelEnd2></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\blt_conf.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>88</YPos2><SelStart2>6682</SelStart2><SelEnd2>6682</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>40</YPos2><SelStart2>3038</SelStart2><SelEnd2>3038</SelEnd2></Tab><ActiveTab>1</ActiveTab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Positions>
<Top><Row0><Sizes><Toolbar-029dba70><key>iaridepm.enu1</key></Toolbar-029dba70></Sizes></Row0><Row1><Sizes><Toolbar-0b55e3d8><key>debuggergui.enu1</key></Toolbar-0b55e3d8></Sizes></Row1></Top><Left><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>741</Bottom><Right>285</Right><x>-2</x><y>-2</y><xscreen>240</xscreen><yscreen>243</yscreen><sizeHorzCX>125000</sizeHorzCX><sizeHorzCY>241071</sizeHorzCY><sizeVertCX>149479</sizeVertCX><sizeVertCY>737103</sizeVertCY></Rect></Wnd0></Sizes></Row0></Left><Right><Row0><Sizes><Wnd4><Rect><Top>-2</Top><Left>-2</Left><Bottom>741</Bottom><Right>198</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>104167</sizeHorzCX><sizeHorzCY>198413</sizeHorzCY><sizeVertCX>104167</sizeVertCX><sizeVertCY>737103</sizeVertCY></Rect></Wnd4></Sizes></Row0></Right><Bottom><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1922</Right><x>-2</x><y>-2</y><xscreen>1924</xscreen><yscreen>200</yscreen><sizeHorzCX>1002083</sizeHorzCX><sizeHorzCY>198413</sizeHorzCY><sizeVertCX>104167</sizeVertCX><sizeVertCY>198413</sizeVertCY></Rect></Wnd1></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
<Top><Row0><Sizes><Toolbar-02aeba70><key>iaridepm.enu1</key></Toolbar-02aeba70></Sizes></Row0><Row1><Sizes><Toolbar-0b8f4fb8><key>debuggergui.enu1</key></Toolbar-0b8f4fb8></Sizes></Row1><Row2><Sizes/></Row2></Top><Left><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>741</Bottom><Right>285</Right><x>-2</x><y>-2</y><xscreen>240</xscreen><yscreen>243</yscreen><sizeHorzCX>125000</sizeHorzCX><sizeHorzCY>241071</sizeHorzCY><sizeVertCX>149479</sizeVertCX><sizeVertCY>737103</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes><Wnd5><Rect><Top>-2</Top><Left>-2</Left><Bottom>741</Bottom><Right>198</Right><x>-2</x><y>-2</y><xscreen>200</xscreen><yscreen>200</yscreen><sizeHorzCX>104167</sizeHorzCX><sizeHorzCY>198413</sizeHorzCY><sizeVertCX>104167</sizeVertCX><sizeVertCY>737103</sizeVertCY></Rect></Wnd5></Sizes></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1922</Right><x>-2</x><y>-2</y><xscreen>1924</xscreen><yscreen>200</yscreen><sizeHorzCX>1002083</sizeHorzCX><sizeHorzCY>198413</sizeHorzCY><sizeVertCX>104167</sizeVertCX><sizeVertCY>198413</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
</Desktop>
</Project>

View File

@ -9,7 +9,7 @@ TriggerName=main
LimitSize=0
ByteLimit=50
[DebugChecksum]
Checksum=-789430103
Checksum=260662230
[Exceptions]
StopOnUncaught=_ 0
StopOnThrow=_ 0

View File

@ -17,7 +17,7 @@
<Build><PreferedWindows><Position>1</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows><Window><Factory>Find-All-References</Factory></Window></Windows></PreferedWindows><ColumnWidth0>20</ColumnWidth0><ColumnWidth1>1155</ColumnWidth1><ColumnWidth2>308</ColumnWidth2><ColumnWidth3>77</ColumnWidth3></Build><Find-in-Files><PreferedWindows><Position>3</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><ColumnWidth0>552</ColumnWidth0><ColumnWidth1>78</ColumnWidth1><ColumnWidth2>946</ColumnWidth2></Find-in-Files><TerminalIO/><PROJECT_GUI_CALL_GRAPH><PreferedWindows><Position>3</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows><col-names><item>File</item><item>Function</item><item>Line</item></col-names><col-widths><item>200</item><item>700</item><item>100</item></col-widths></PROJECT_GUI_CALL_GRAPH><Select-Ambiguous-Definitions><PreferedWindows><Position>3</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows><Window><Factory>Build</Factory></Window><Window><Factory>Find-in-Files</Factory></Window><Window><Factory>Find-All-References</Factory></Window></Windows></PreferedWindows><ColumnWidth0>664</ColumnWidth0><ColumnWidth1>94</ColumnWidth1><ColumnWidth2>1138</ColumnWidth2></Select-Ambiguous-Definitions><Find-All-References><PreferedWindows><Position>1</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows><Window><Factory>Build</Factory></Window></Windows></PreferedWindows><ColumnWidth0>664</ColumnWidth0><ColumnWidth1>94</ColumnWidth1><ColumnWidth2>1138</ColumnWidth2></Find-All-References></Static>
<Windows>
<Wnd0>
<Wnd1>
<Tabs>
<Tab>
<Identity>TabID-31649-22318</Identity>
@ -25,24 +25,24 @@
<Factory>Workspace</Factory>
<Session>
<NodeDict><ExpandedNode>lm3s6965</ExpandedNode><ExpandedNode>lm3s6965/Boot</ExpandedNode><ExpandedNode>lm3s6965/Boot/lib</ExpandedNode><ExpandedNode>lm3s6965/Boot/lib/uip</ExpandedNode><ExpandedNode>lm3s6965/Output</ExpandedNode><ExpandedNode>lm3s6965/Source</ExpandedNode><ExpandedNode>lm3s6965/Source/ARMCM3_LM3S</ExpandedNode><ExpandedNode>lm3s6965/Source/fatfs</ExpandedNode></NodeDict></Session>
<NodeDict><ExpandedNode>lm3s6965</ExpandedNode><ExpandedNode>lm3s6965/Boot</ExpandedNode><ExpandedNode>lm3s6965/Boot/lib</ExpandedNode><ExpandedNode>lm3s6965/Output</ExpandedNode><ExpandedNode>lm3s6965/Source</ExpandedNode><ExpandedNode>lm3s6965/Source/ARMCM3_LM3S</ExpandedNode><ExpandedNode>lm3s6965/Source/fatfs</ExpandedNode></NodeDict></Session>
</Tab>
</Tabs>
<SelectedTab>0</SelectedTab></Wnd0><Wnd3><Tabs><Tab><Identity>TabID-23631-11730</Identity><TabName>Build</TabName><Factory>Build</Factory><Session/></Tab><Tab><Identity>TabID-25094-12726</Identity><TabName>Ambiguous Definitions</TabName><Factory>Select-Ambiguous-Definitions</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd3></Windows>
<SelectedTab>0</SelectedTab></Wnd1><Wnd2><Tabs><Tab><Identity>TabID-23631-11730</Identity><TabName>Build</TabName><Factory>Build</Factory><Session/></Tab><Tab><Identity>TabID-25094-12726</Identity><TabName>Ambiguous Definitions</TabName><Factory>Select-Ambiguous-Definitions</Factory><Session/></Tab></Tabs><SelectedTab>0</SelectedTab></Wnd2></Windows>
<Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\blt_conf.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>73</YPos2><SelStart2>4944</SelStart2><SelEnd2>4944</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>40</YPos2><SelStart2>3038</SelStart2><SelEnd2>3038</SelEnd2></Tab><ActiveTab>1</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\..\..\Source\backdoor.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>24</YPos2><SelStart2>2978</SelStart2><SelEnd2>2978</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\lib\uip\netdev.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>53</YPos2><SelStart2>2862</SelStart2><SelEnd2>2862</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\..\..\..\Source\net.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>85</YPos2><SelStart2>5739</SelStart2><SelEnd2>5739</SelEnd2></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\blt_conf.h</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>88</YPos2><SelStart2>6682</SelStart2><SelEnd2>6682</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>40</YPos2><SelStart2>3038</SelStart2><SelEnd2>3038</SelEnd2></Tab><ActiveTab>1</ActiveTab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Positions>
<Top><Row0><Sizes><Toolbar-029dba70><key>iaridepm.enu1</key></Toolbar-029dba70></Sizes></Row0><Row1><Sizes/></Row1><Row2><Sizes/></Row2></Top><Left><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>563</Bottom><Right>326</Right><x>-2</x><y>-2</y><xscreen>372</xscreen><yscreen>353</yscreen><sizeHorzCX>193750</sizeHorzCX><sizeHorzCY>350198</sizeHorzCY><sizeVertCX>170833</sizeVertCX><sizeVertCY>560516</sizeVertCY></Rect></Wnd0><Wnd3><Rect><Top>0</Top><Left>0</Left><Bottom>0</Bottom><Right>7</Right><x>-2</x><y>561</y><xscreen>258</xscreen><yscreen>237</yscreen><sizeHorzCX>134375</sizeHorzCX><sizeHorzCY>235119</sizeHorzCY><sizeVertCX>170833</sizeVertCX><sizeVertCY>398810</sizeVertCY></Rect></Wnd3></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes/></Row0></Bottom><Float><Sizes/></Float></Positions>
<Top><Row0><Sizes><Toolbar-02aeba70><key>iaridepm.enu1</key></Toolbar-02aeba70></Sizes></Row0><Row1><Sizes/></Row1><Row2><Sizes/></Row2></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>563</Bottom><Right>326</Right><x>-2</x><y>-2</y><xscreen>372</xscreen><yscreen>353</yscreen><sizeHorzCX>193750</sizeHorzCX><sizeHorzCY>350198</sizeHorzCY><sizeVertCX>170833</sizeVertCX><sizeVertCY>560516</sizeVertCY></Rect></Wnd1><Wnd2><Rect><Top>0</Top><Left>0</Left><Bottom>0</Bottom><Right>7</Right><x>-2</x><y>561</y><xscreen>258</xscreen><yscreen>237</yscreen><sizeHorzCX>134375</sizeHorzCX><sizeHorzCY>235119</sizeHorzCY><sizeVertCX>170833</sizeVertCX><sizeVertCY>398810</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes/></Row0></Bottom><Float><Sizes/></Float></Positions>
</Desktop>
</Workspace>

File diff suppressed because it is too large Load Diff

View File

@ -53,14 +53,14 @@
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\led.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>45</YPos2><SelStart2>3072</SelStart2><SelEnd2>3072</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\boot.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>45</YPos2><SelStart2>1098</SelStart2><SelEnd2>1098</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>49</YPos2><SelStart2>3128</SelStart2><SelEnd2>3128</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\lib\uip\netdev.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>84</YPos2><SelStart2>4509</SelStart2><SelEnd2>4509</SelEnd2></Tab><ActiveTab>3</ActiveTab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\net.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>68</YPos2><SelStart2>4367</SelStart2><SelEnd2>4367</SelEnd2></Tab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\led.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>45</YPos2><SelStart2>3072</SelStart2><SelEnd2>3072</SelEnd2></Tab><Tab><Factory>TextEditor</Factory><Filename>$WS_DIR$\..\main.c</Filename><XPos>0</XPos><YPos>0</YPos><SelStart>0</SelStart><SelEnd>0</SelEnd><XPos2>0</XPos2><YPos2>49</YPos2><SelStart2>3128</SelStart2><SelEnd2>3128</SelEnd2></Tab><ActiveTab>1</ActiveTab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Positions>
<Top><Row0><Sizes><Toolbar-02adba70><key>iaridepm.enu1</key></Toolbar-02adba70></Sizes></Row0></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>765</Bottom><Right>357</Right><x>-2</x><y>-2</y><xscreen>186</xscreen><yscreen>205</yscreen><sizeHorzCX>96875</sizeHorzCX><sizeHorzCY>203373</sizeHorzCY><sizeVertCX>186979</sizeVertCX><sizeVertCY>760913</sizeVertCY></Rect></Wnd1></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1922</Right><x>-2</x><y>-2</y><xscreen>1924</xscreen><yscreen>200</yscreen><sizeHorzCX>1002083</sizeHorzCX><sizeHorzCY>198413</sizeHorzCY><sizeVertCX>104167</sizeVertCX><sizeVertCY>198413</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
<Top><Row0><Sizes><Toolbar-02b3ba70><key>iaridepm.enu1</key></Toolbar-02b3ba70></Sizes></Row0></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>765</Bottom><Right>357</Right><x>-2</x><y>-2</y><xscreen>186</xscreen><yscreen>205</yscreen><sizeHorzCX>96875</sizeHorzCX><sizeHorzCY>203373</sizeHorzCY><sizeVertCX>186979</sizeVertCX><sizeVertCY>760913</sizeVertCY></Rect></Wnd1></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>198</Bottom><Right>1922</Right><x>-2</x><y>-2</y><xscreen>1924</xscreen><yscreen>200</yscreen><sizeHorzCX>1002083</sizeHorzCX><sizeHorzCY>198413</sizeHorzCY><sizeVertCX>104167</sizeVertCX><sizeVertCY>198413</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
</Desktop>
</Workspace>