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

📄 args.h

📁 Windows CE documentation and examples from the Windows CE development manuals. There are lots of exa
💻 H
字号:
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this sample source code is subject to the terms of the Microsoft
// license agreement under which you licensed this sample source code. If
// you did not accept the terms of the license agreement, you are not
// authorized to use this sample source code. For the terms of the license,
// please see the license agreement between you and Microsoft or, if applicable,
// see the LICENSE.RTF on your install media or the root of your tools installation.
// THE SAMPLE SOURCE CODE IS PROVIDED "AS IS", WITH NO WARRANTIES.
//
#ifndef __ARGS_H
#define __ARGS_H

//------------------------------------------------------------------------------
//
// File:        args.h
//
// Description: This header file defines device structures and constant related
//              to boot configuration. BOOT_CFG structure defines layout of
//              persistent device information. It is used to control boot
//              process. BSP_ARGS structure defines information passed from
//              boot loader to kernel HAL/OAL. Each structure has version
//              field which should be updated each time when structure layout
//              change.
//
//------------------------------------------------------------------------------

#include "oal_args.h"
#include "oal_kitl.h"


//------------------------------------------------------------------------------
// Bootloader configuration parameters (stored in NOR flash).
//
#define CONFIG_SIGNATURE                    0x12345678

typedef struct
{
    ULONG  Signature;           // Config signature (used to validate).
    USHORT VerMajor;            // Config major version.
    USHORT VerMinor;            // Config minor version.
    ULONG  ConfigFlags;         // General bootloader flags.
    ULONG  IPAddr;              // Device static IP address.
    ULONG  SubnetMask;          // Device subnet mask.
    BYTE   BootDelay;           // Bootloader count-down delay.
    BYTE   LoadDeviceOrder;     // Search order for download devices.
    USHORT CS8900MAC[3];        // Crystal CS8900A MAC address.
    ULONG  LaunchAddress;       // Kernel region launch address.

} BOOT_CFG, *PBOOT_CFG;

#define CONFIG_AUTOBOOT_DEFAULT_COUNT       5
#define CONFIG_FLAGS_AUTOBOOT               (1 << 0)
#define CONFIG_FLAGS_DHCP                   (1 << 1)
#define CONFIG_FLAGS_SAVETOFLASH            (1 << 2)

//------------------------------------------------------------------------------

#define BSP_ARGS_VERSION    1

#define BSP_SCREEN_SIGNATURE 0xde12de34

typedef struct {
    OAL_ARGS_HEADER header;

    UINT8 deviceId[16];                 // Device identification
    OAL_KITL_ARGS kitl;

    // CAUTION:  The DeviceEmulator contains hard-coded knowledge of the addresses and contents of these
    //           three fields.
    UINT32 ScreenSignature;		// Set to BSP_SCREEN_SIGNATURE if the DeviceEmulator specifies screen size
    UINT16 ScreenWidth;                 // May be set by the DeviceEmulator, or zero
    UINT16 ScreenHeight;                // May be set by the DeviceEmulator, or zero
    UINT16 ScreenBitsPerPixel;          // May be set by the DeviceEmulator, or zero
    union {
        struct {
            UINT16 fSoftReset:1;
        }bit;
        UINT16 u16Value;
    } EmulatorFlags;                    // May be set by the DeviceEmulator, or zero
    UINT8  ScreenOrientation;           // May be set by the DeviceEmulator, or zero
    UINT8  Pad[15];                     // May be set by the DeviceEmulator, or zero

    BOOL   fUpdateMode;                 // Is the device in update mode?
    BOOL   fStorageMounted;             // Is folder sharing enabled?

    // record the size and location of the RAM FMD if present
    DWORD dwExtensionRAMFMDSize;
    PVOID pvExtensionRAMFMDBaseAddr;
} BSP_ARGS;

//------------------------------------------------------------------------------

#endif

⌨️ 快捷键说明

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