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

📄 minimon.h

📁 早期freebsd实现
💻 H
📖 第 1 页 / 共 2 页
字号:
/* Definitions and macros for support of AMD's remote debugger, MiniMON.   Copyright (C) 1990, 1991 Free Software Foundation, Inc.This file is part of GDB.This program is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2 of the License, or(at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program; if not, write to the Free SoftwareFoundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  *//* * Some basic types.  FIXME, this should be done by declaring bitfield * sizes in the structs.  We can't portably depend on a "long int" being * 32 bits, etc. */typedef long int INT32;            /* 32 bit integer */typedef unsigned long int UINT32;  /* 32 bit integer (unsigned) */typedef unsigned long int ADDR32;  /* 32 bit address */typedef unsigned long int INST32;  /* 32 bit instruction */typedef long int BOOLEAN;          /* Boolean value (32 bit) */typedef unsigned char BYTE;        /* byte (8 bit) */typedef short int INT16;           /* 16 bit integer */typedef unsigned short int UINT16; /* 16 bit integer (unsigned) *//****************************************************************************//************************* Message Information ******************************//****************************************************************************//* * Error codes  *//* General errors */#define EMUSAGE     1  /* Bad args / flags               */#define EMFAIL      2  /* Unrecoverable error            */#define EMBADADDR   3  /* Illegal address                */#define EMBADREG    4  /* Illegal register               */#define EMSYNTAX    5  /* Illegal command syntax         */#define EMACCESS    6  /* Could not access memory        */#define EMALLOC     7  /* Could not allocate memory      */#define EMTARGET    8  /* Unknown target type            */#define EMHINIT     9  /* Could not initialize host      */#define EMCOMM     10  /* Could not open communication channel *//* Message errors */#define EMBADMSG   11  /* Unknown message type           */#define EMMSG2BIG  12  /* Message to large for buffer    */#define EMNOSEND   13  /* Could not send message         */#define EMNORECV   14  /* Could not receive message      */#define EMRESET    15  /* Could not RESET target         */#define EMCONFIG   16  /* Could not get target CONFIG    */#define EMSTATUS   17  /* Could not get target STATUS    */#define EMREAD     18  /* Could not READ target memory   */#define EMWRITE    19  /* Could not WRITE target memory  */#define EMBKPTSET  20  /* Could not set breakpoint       */#define EMBKPTRM   21  /* Could not remove breakpoint    */#define EMBKPTSTAT 22  /* Could not get breakpoint status */#define EMBKPTNONE 23  /* All breakpoints in use         */#define EMBKPTUSED 24  /* Breakpoints already in use     */#define EMCOPY     25  /* Could not COPY target memory   */#define EMFILL     26  /* Could not FILL target memory   */#define EMINIT     27  /* Could not initialize target memory */#define EMGO       28  /* Could not start execution      */#define EMSTEP     29  /* Could not single step          */#define EMBREAK    30  /* Could not BREAK                */#define EMHIF      31  /* Could not perform HIF service  */#define EMCHANNEL0 32  /* Could not read CHANNEL0        */#define EMCHANNEL1 33  /* Could not write CHANNEL1       *//* COFF file loader errors */#define EMOPEN     34  /* Could not open COFF file       */#define EMHDR      35  /* Could not read COFF header     */#define EMMAGIC    36  /* Bad magic number               */#define EMAOUT     37  /* Could not read COFF a.out header */#define EMSCNHDR   38  /* Could not read COFF section header */#define EMSCN      39  /* Could not read COFF section    */#define EMCLOSE    40  /* Could not close COFF file      *//* Log file errors */#define EMLOGOPEN  41  /* Could not open log file        */#define EMLOGREAD  42  /* Could not read log file        */#define EMLOGWRITE 43  /* Could not write to log file    */#define EMLOGCLOSE 44  /* Could not close log file       *//* Command file errors */#define EMCMDOPEN  45  /* Could not open command file    */#define EMCMDREAD  46  /* Could not read command file    */#define EMCMDWRITE 47  /* Could not write to command file */#define EMCMDCLOSE 48  /* Could not close comand file    */#define EMTIMEOUT  49  /* Host timed out waiting for a message */#define EMCOMMTYPE 50  /* A '-t' flag must be specified  */#define EMCOMMERR  51  /* Communication error            */#define EMBAUD     52  /* Invalid baud rate specified    *//* * Memory Spaces */#define LOCAL_REG    0  /* Local processor register     */#define GLOBAL_REG   1  /* Global processor register    */#define SPECIAL_REG  2  /* Special processor register   */#define TLB_REG      3  /* Translation Lookaside Buffer */#define COPROC_REG   4  /* Coprocessor register         */#define I_MEM        5  /* Instruction Memory           */#define D_MEM        6  /* Data Memory                  */#define I_ROM        7  /* Instruction ROM              */#define D_ROM        8  /* Data ROM                     */#define I_O          9  /* Input/Output                 */#define I_CACHE     10  /* Instruction Cache            */#define D_CACHE     11  /* Data Cache                   *//* To supress warnings for zero length array definitions */#define DUMMY 1/*** Host to target definitions*/#define RESET          0#define CONFIG_REQ     1#define STATUS_REQ     2#define READ_REQ       3#define WRITE_REQ      4#define BKPT_SET       5#define BKPT_RM        6#define BKPT_STAT      7#define COPY           8#define FILL           9#define INIT          10#define GO            11#define STEP          12#define BREAK         13#define HIF_CALL_RTN  64#define CHANNEL0      65#define CHANNEL1_ACK  66/*** Target to host definitions*/#define RESET_ACK     32#define CONFIG        33#define STATUS        34#define READ_ACK      35#define WRITE_ACK     36#define BKPT_SET_ACK  37#define BKPT_RM_ACK   38#define BKPT_STAT_ACK 39#define COPY_ACK      40#define FILL_ACK      41#define INIT_ACK      42#define HALT          43#define ERROR         63#define HIF_CALL      96#define CHANNEL0_ACK  97#define CHANNEL1      98/* A "generic" message */struct generic_msg_t {          INT32    code;  /* generic */          INT32    length;          BYTE     byte[DUMMY];};/* A "generic" message (with an INT32 array) */struct generic_int32_msg_t {          INT32    code;  /* generic */          INT32    length;          INT32    int32[DUMMY];};/*** Host to target messages*/struct reset_msg_t {          INT32    code;  /* 0 */          INT32    length;};struct config_req_msg_t {          INT32    code;  /* 1 */          INT32    length;};struct status_req_msg_t {          INT32    code;  /* 2 */          INT32    length;};struct read_req_msg_t {          INT32    code;  /* 3 */          INT32    length;          INT32    memory_space;          ADDR32   address;          INT32    byte_count;};struct write_req_msg_t {          INT32    code;  /* 4 */          INT32    length;          INT32    memory_space;          ADDR32   address;          INT32    byte_count;          BYTE     data[DUMMY];};struct write_r_msg_t {          INT32    code;  /* 4 */          INT32    length;          INT32    memory_space;          ADDR32   address;          INT32    byte_count;          INT32    data[DUMMY];};struct bkpt_set_msg_t {          INT32    code;  /* 5 */          INT32    length;          INT32    memory_space;          ADDR32   bkpt_addr;          INT32    pass_count;          INT32    bkpt_type;};struct bkpt_rm_msg_t {          INT32    code;  /* 6 */          INT32    length;          INT32    memory_space;          ADDR32   bkpt_addr;};struct bkpt_stat_msg_t {          INT32    code;  /* 7 */          INT32    length;          INT32    memory_space;          ADDR32   bkpt_addr;};struct copy_msg_t {          INT32    code;  /* 8 */          INT32    length;          INT32    source_space;          ADDR32   source_addr;          INT32    dest_space;          ADDR32   dest_addr;          INT32    byte_count;};struct fill_msg_t {          INT32    code;  /* 9 */          INT32    length;          INT32    memory_space;          ADDR32   start_addr;          INT32    fill_count;          INT32    byte_count;

⌨️ 快捷键说明

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