No changes between revisions
/Modules/ARM/STM32F10xRxT/SW/RS232_bootloader/Src/Files/Debug/Files.lib
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/Modules/ARM/STM32F10xRxT/SW/RS232_bootloader/Src/Files/Errors.h
0,0 → 1,45
/******************** (C) COPYRIGHT 2009 STMicroelectronics ********************
* File Name : Errors.h
* Author : MCD Application Team
* Version : v2.1.0
* Date : 11/02/2009
* Description : Defines the files Input/Output error codes
********************************************************************************
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/
 
#ifndef ERRORS_H
#define ERRORS_H
 
#define FILES_ERROR_OFFSET (0x12340000+0x6000)
 
#define FILES_NOERROR (0x12340000+0x0000)
#define FILES_BADSUFFIX (FILES_ERROR_OFFSET+0x0002)
#define FILES_UNABLETOOPENFILE (FILES_ERROR_OFFSET+0x0003)
#define FILES_UNABLETOOPENTEMPFILE (FILES_ERROR_OFFSET+0x0004)
#define FILES_BADFORMAT (FILES_ERROR_OFFSET+0x0005)
#define FILES_BADADDRESSRANGE (FILES_ERROR_OFFSET+0x0006)
#define FILES_BADPARAMETER (FILES_ERROR_OFFSET+0x0008)
#define FILES_UNEXPECTEDERROR (FILES_ERROR_OFFSET+0x000A)
#define FILES_FILEGENERALERROR (FILES_ERROR_OFFSET+0x000D)
 
#define STPRT_ERROR_OFFSET (0x12340000+0x5000)
 
#define STPRT_NOERROR (0x12340000)
#define STPRT_UNABLETOLAUNCHTHREAD (STPRT_ERROR_OFFSET+0x0001)
#define STPRT_ALREADYRUNNING (STPRT_ERROR_OFFSET+0x0007)
#define STPRT_BADPARAMETER (STPRT_ERROR_OFFSET+0x0008)
#define STPRT_BADFIRMWARESTATEMACHINE (STPRT_ERROR_OFFSET+0x0009)
#define STPRT_UNEXPECTEDERROR (STPRT_ERROR_OFFSET+0x000A)
#define STPRT_ERROR (STPRT_ERROR_OFFSET+0x000B)
#define STPRT_RETRYERROR (STPRT_ERROR_OFFSET+0x000C)
#define STPRT_UNSUPPORTEDFEATURE (STPRT_ERROR_OFFSET+0x000D)
 
#endif
 
/******************* (C) COPYRIGHT 2009 STMicroelectronics *****END OF FILE******/
/Modules/ARM/STM32F10xRxT/SW/RS232_bootloader/Src/Files/Files.h
0,0 → 1,99
/******************** (C) COPYRIGHT 2009 STMicroelectronics ********************
* File Name : Files.h
* Author : MCD Application Team
* Version : v2.1.0
* Date : 11/02/2009
* Description : Defines the Files DLL interface
********************************************************************************
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/
 
 
#if !defined(AFX_FILES_H__E07F909F_97B4_4295_8B8F_5EA1A83ECA92__INCLUDED_)
#define AFX_FILES_H__E07F909F_97B4_4295_8B8F_5EA1A83ECA92__INCLUDED_
 
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
 
#ifndef __AFXWIN_H__
#error include 'stdafx.h' before including this file for PCH
#endif
 
#include "resource.h" // main symbols
#include "FilesInc.h"
#include "Image.h"
#include "Errors.h"
//#include "IniFile.h"
 
 
/////////////////////////////////////////////////////////////////////////////
// CFilesApp
// See Files.cpp for the implementation of this class
//
 
class CFilesApp : public CWinApp
{
public:
CFilesApp();
 
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CFilesApp)
//}}AFX_VIRTUAL
 
//{{AFX_MSG(CFilesApp)
// NOTE - the ClassWizard will add and remove member functions here.
// DO NOT EDIT what you see in these blocks of generated code !
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
 
extern "C" DWORD EXPORT FILES_OpenExistingFile(PSTR pPathFile, PHANDLE phFile, PWORD pVid, PWORD pPid, PWORD pBcd,PBYTE pNbImages);
extern "C" DWORD EXPORT FILES_CreateNewFile(PSTR pPathFile, PHANDLE phFile, WORD Vid, WORD Pid, WORD Bcd);
extern "C" DWORD EXPORT FILES_CloseFile(HANDLE hFile);
 
extern "C" DWORD EXPORT FILES_AppendImageToFile(HANDLE hFile, HANDLE Image);
extern "C" DWORD EXPORT FILES_ReadImageFromFile(HANDLE hFile, int Rank, PHANDLE pImage);
 
extern "C" DWORD EXPORT FILES_ImageFromFile(PSTR pPathFile, PHANDLE pImage, BYTE nAlternate);
extern "C" DWORD EXPORT FILES_ImageToFile(PSTR pPathFile, HANDLE Image);
 
extern "C" DWORD EXPORT FILES_CreateImage(PHANDLE pHandle, BYTE nAlternate);
extern "C" DWORD EXPORT FILES_CreateImageFromMapping(PHANDLE pHandle, PMAPPING pMapping);
extern "C" DWORD EXPORT FILES_DuplicateImage(HANDLE hSource, PHANDLE pDest);
 
extern "C" DWORD EXPORT FILES_FilterImageForOperation(HANDLE Handle, PMAPPING pMapping, DWORD Operation, BOOL bTruncateLeadFFForUpgrade);
extern "C" DWORD EXPORT FILES_DestroyImageElement(HANDLE Handle, DWORD dwRank);
extern "C" DWORD EXPORT FILES_DestroyImage(PHANDLE pHandle);
 
extern "C" DWORD EXPORT FILES_GetImageAlternate(HANDLE Handle, PBYTE pAlternate);
extern "C" DWORD EXPORT FILES_GetImageNbElement(HANDLE Handle, PDWORD pNbElements);
extern "C" DWORD EXPORT FILES_GetImageName(HANDLE Handle, PSTR Name);
extern "C" DWORD EXPORT FILES_SetImageName(HANDLE Handle, PSTR Name);
 
extern "C" DWORD EXPORT FILES_SetImageElement(HANDLE Handle, DWORD dwRank, BOOL bInsert, IMAGEELEMENT Element);
extern "C" DWORD EXPORT FILES_GetImageElement(HANDLE Handle, DWORD dwRank, PIMAGEELEMENT pElement);
extern "C" DWORD EXPORT FILES_GetMemoryMapping(PSTR pPathFile, PWORD Size, PSTR MapName, PWORD PacketSize, PMAPPING pMapping, PBYTE PagesPerSector);
 
/*FILES_OpenExistingFile
FILES_CreateNewFile
FILES_CloseFile
FILES_AppendImageToFile
FILES_ReadImageFromFile*/
 
/////////////////////////////////////////////////////////////////////////////
 
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
 
#endif // !defined(AFX_FILES_H__E07F909F_97B4_4295_8B8F_5EA1A83ECA92__INCLUDED_)
 
 
/******************* (C) COPYRIGHT 2009 STMicroelectronics *****END OF FILE******/
/Modules/ARM/STM32F10xRxT/SW/RS232_bootloader/Src/Files/FilesInc.h
0,0 → 1,69
/******************** (C) COPYRIGHT 2009 STMicroelectronics ********************
* File Name : FilesInc.h
* Author : MCD Application Team
* Version : v2.1.0
* Date : 11/02/2009
* Description : Defines the struct types used by Files DLL
********************************************************************************
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/
 
#ifndef FILES_INC_H
#define FILES_INC_H
 
#define OPERATION_DETACH 0
#define OPERATION_RETURN 1
#define OPERATION_UPLOAD 2
#define OPERATION_ERASE 3
#define OPERATION_DNLOAD 4
 
#ifndef TYPE_STATUS
typedef struct
{
UCHAR bStatus;
UCHAR bwPollTimeout[3];
UCHAR bState;
UCHAR iString;
} STATUS, *PSTATUS;
#endif
 
#define BIT_READABLE 1
#define BIT_ERASABLE 2
#define BIT_WRITEABLE 4
 
typedef struct {
char* Name;
DWORD dwStartAddress;
DWORD dwAliasedAddress;
DWORD dwSectorIndex;
DWORD dwSectorSize;
BYTE bSectorType;
BOOL UseForOperation;
BOOL UseForErase;
BOOL UseForUpload;
BOOL UseForWriteProtect;
} MAPPINGSECTOR, *PMAPPINGSECTOR;
 
typedef struct {
BYTE nAlternate;
char Name[MAX_PATH];
DWORD NbSectors;
PMAPPINGSECTOR pSectors;
} MAPPING, *PMAPPING;
 
typedef struct {
DWORD dwAddress;
DWORD dwDataLength;
PBYTE Data;
} IMAGEELEMENT, *PIMAGEELEMENT;
 
 
#endif
 
/******************* (C) COPYRIGHT 2009 STMicroelectronics *****END OF FILE******/
/Modules/ARM/STM32F10xRxT/SW/RS232_bootloader/Src/Files/Image.h
0,0 → 1,63
/******************** (C) COPYRIGHT 2009 STMicroelectronics ********************
* File Name : Image.h
* Author : MCD Application Team
* Version : v2.1.0
* Date : 11/02/2009
* Description : Defines the CImage class interface
********************************************************************************
* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
* CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/
 
#ifndef _IMAGE_H_
#define _IMAGE_H_
 
class CImage : public CObject
{
private:
char m_LastError[1000];
BYTE m_bAlternate;
CPtrArray *m_pElements;
BOOL m_ImageState;
BOOL m_bNamed;
char m_Name[255];
 
BOOL LoadS19(PSTR pFilePath);
BOOL LoadHEX(PSTR pFilePath);
BOOL LoadBIN(PSTR pFilePath);
 
BOOL SaveS19(PSTR pFilePath);
BOOL SaveHEX(PSTR pFilePath);
 
void LDisplayError(PSTR Str) { lstrcpy(m_LastError, Str); }
BOOL ExistsElementsAtAddress(DWORD Address);
void CompactElements();
public:
CImage(CImage *pSource);
CImage(BYTE bAlternate, BOOL bNamed, PSTR Name);
CImage(PMAPPING pMapping, BOOL bNamed, PSTR Name);
CImage(BYTE bAlternate, PSTR pFilePath, BOOL bNamed, PSTR Name);
virtual ~CImage();
 
BOOL DumpToFile(PSTR pFilePath);
BYTE GetAlternate() { return m_bAlternate; }
BOOL GetImageState() { return m_ImageState; }
BOOL GetName(PSTR Name) { if (m_bNamed) lstrcpy(Name, m_Name); return m_bNamed; }
void SetName(PSTR Name) { lstrcpy(m_Name, Name); m_bNamed=TRUE; }
BOOL GetBuffer(DWORD dwAddress, DWORD dwSize, PBYTE pBuffer);
 
DWORD GetNbElements() { return m_pElements->GetSize(); }
BOOL SetImageElement(DWORD dwRank, BOOL bInsert, IMAGEELEMENT Element);
BOOL GetImageElement(DWORD dwRank, PIMAGEELEMENT pElement);
BOOL FilterImageForOperation(PMAPPING pMapping, DWORD Operation, BOOL bTruncateLeadFF);
BOOL DestroyImageElement(DWORD dwRank);
};
 
#endif
 
/******************* (C) COPYRIGHT 2009 STMicroelectronics *****END OF FILE******/
/Modules/ARM/STM32F10xRxT/SW/RS232_bootloader/Src/Files/Release/Files.lib
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/Modules/ARM/STM32F10xRxT/SW/RS232_bootloader/Src/Files/res/Files.rc2
0,0 → 1,13
//
// FILES.RC2 - resources Microsoft Visual C++ does not edit directly
//
 
#ifdef APSTUDIO_INVOKED
#error this file is not editable by Microsoft Visual C++
#endif //APSTUDIO_INVOKED
 
 
/////////////////////////////////////////////////////////////////////////////
// Add manually edited resources here...
 
/////////////////////////////////////////////////////////////////////////////
/Modules/ARM/STM32F10xRxT/SW/RS232_bootloader/Src/Files/resource.h
0,0 → 1,15
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by Files.rc
//
 
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 101
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1000
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif