⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 embobootarg.h

📁 1,wince下做的导入注册表的程序.
💻 H
字号:
/*************************************************
	Copyright (C), 2002-2005, Embedded-Tech. Co., Ltd.
	File name:		bootarg.h
	Author:			Peica Chen
	Version:  		5.0
	Date: 			2005-09-19
	Description:	在微软维护的BOOT_ARGS中加入了研博的部份数据,以形成DOS与WinCE之间共享数据的一个接口
	Others:			此头文件依赖于loadcepc.h或windows.h来指定其基本数据类型.
	History:
*************************************************/
#ifndef _EMBOBOOTARG_H_
#define _EMBOBOOTARG_H_

#ifdef _DOS
#include "embohaldos.h"
#else
#include <halether.h>
#endif

// Contains a pointer to the actual boot args structure
#define BOOT_ARG_PTR_LOCATION   0x801FFFFC

#define BOOT_ARG_VERSION_SIG    0x12345678
#define BOOT_ARG_MAJOR_VER      1
#define BOOT_ARG_MINOR_VER      0

#define MAX_DEV_NAMELEN         16  // Should match EDBG_MAX_DEV_NAMELEN.
    // NAND controller boot flags
#define NAND_PCI_PRESENT  (1 << 0)

typedef struct _BOOT_ARGS{
    unsigned char   ucVideoMode;
    unsigned char   ucComPort;
    unsigned char   ucBaudDivisor;
    unsigned char   ucPCIConfigType;

    // The following args are not set by older versions of loadcepc,
    // so include a sig to verify that the remaining params are valid.
    // Also, include a length to allow expansion in the future.
    unsigned long   dwSig;
    #define BOOTARG_SIG  0x544F4F42 // "BOOT"
    unsigned long   dwLen;              // Total length of boot args struct
    unsigned char   ucLoaderFlags;      // Flags set by loader
    unsigned char   ucEshellFlags;      // Flags from eshell
    unsigned char   ucEdbgAdapterType;  // Type of debug Ether adapter
    unsigned char   ucEdbgIRQ;          // IRQ line to use for debug Ether adapter
    unsigned long   dwEdbgBaseAddr;     // Base I/O address for debug Ether adapter
    unsigned long   dwEdbgDebugZone;    // Allow EDBG debug zones to be turned on from loadcepc
    // The following is only valid if LDRFL_ADDR_VALID is set
    EDBG_ADDR EdbgAddr;         // IP/ether addr to use for debug Ethernet
    // The following addresses are only valid if LDRFL_JUMPIMG is set, and corresponding bit in
    // ucEshellFlags is set (configured by eshell, bit definitions in ethdbg.h).
    EDBG_ADDR EshellHostAddr;   // IP/ether addr and UDP port of host running eshell
    EDBG_ADDR DbgHostAddr;      // IP/ether addr and UDP port of host receiving dbg msgs
    EDBG_ADDR CeshHostAddr;     // IP/ether addr and UDP port of host running ether text shell
    EDBG_ADDR KdbgHostAddr;     // IP/ether addr and UDP port of host running kernel debugger
    unsigned long DHCPLeaseTime;        // Length of DHCP IP lease in seconds
    unsigned short EdbgFlags;             // Information about the ethernet system
    unsigned short KitlTransport;         // Transport for Kitl communication    

    unsigned long dwEBootFlag;          // Eboot flags indicating whether EBoot supports warm reset (older version may not)
    unsigned long dwEBootAddr;          // Eboot entry point set by eboot and used during warm reset
    unsigned long dwLaunchAddr;         // Old image launch address saved by EBoot when it receives jmpimage

    // The following args added to support passing info to flat framebuffer display driver
    unsigned long   pvFlatFrameBuffer;  // pointer to flat frame buffer
    unsigned short    vesaMode;           // VESA mode being used
    unsigned short    cxDisplayScreen;    // displayable X size
    unsigned short    cyDisplayScreen;    // displayable Y size
    unsigned short    cxPhysicalScreen;   // physical X size
    unsigned short    cyPhysicalScreen;   // physical Y size
    unsigned short    cbScanLineLength;   // scan line byte count
    unsigned short    bppScreen;          // color depth
    unsigned char   RedMaskSize;        // size of red color mask
    unsigned char   RedMaskPosition;    // position for red color mask
    unsigned char   GreenMaskSize;      // size of green color mask
    unsigned char   GreenMaskPosition;  // position for green color mask
    unsigned char   BlueMaskSize;       // size of blue color mask
    unsigned char   BlueMaskPosition;   // position for blue color mask

    // Version information for bootargs structure.
    unsigned long   dwVersionSig;
    unsigned short  MajorVersion;
    unsigned short  MinorVersion;

    // Version 1.0 additions
    unsigned char   szDeviceNameRoot[MAX_DEV_NAMELEN];  // EDBG device name root.
    
    /*5 members below is declared by Embo Corp.*/
    /*以下五个变量为Embo公司定义*/
    unsigned char   cCheckCompany[8];		/*公司标记*/
    unsigned long   dwReadMemStartAddr;		/*Embo保留内存区域的起始地址*/
    unsigned long   dwReadMemEndAddr;		/*Embo保留内存区域的结束地址*/
    unsigned long   dwEmboRegOffset;		/*注册表数据相对于dwReservedStartAddr的偏移*/
    unsigned long   dwEmboInfOffset;		/*EmboBaseInfo相对于dwReservedStartAddr的偏移*/
    /*...*/
    
    unsigned long   dwImgStoreAddr;     // Flash storage address.
    unsigned long   dwImgLoadAddr;      // RAM load address.
    unsigned long   dwImgLength;        // Image length.
    unsigned char    NANDBootFlags;      // Boot flags related to NAND support.
    unsigned char    NANDBusNumber;      // NAND controller PCI bus number.
    unsigned long   NANDSlotNumber;// NAND controller PCI slot number.
   
} BOOT_ARGS,*PBOOT_ARGS;

// Defs for loader flags
    #define    LDRFL_USE_EDBG    0x0001  // Set to attempt to use debug Ethernet
// The following two flags are only looked at if LDRFL_USE_EDBG is set
    #define    LDRFL_ADDR_VALID  0x0002  // Set if EdbgAddr field is valid
    #define    LDRFL_JUMPIMG     0x0004  // If set, don't communicate with eshell to get
// The following flag is only used for backup FLASH operation
    #define     LDRFL_FLASH_BACKUP  0x80
// configuration, use ucEshellFlags field.

// Use this constant in EdbgIRQ to specify that EDBG should run without an interrupt.
    #define EDBG_IRQ_NONE  0xFF

#endif // _EMBOBOOTARG_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -