/********************************************************************/
/* defines.h */
/* */
/* Copyright (c) 1997-2006 Rafael Rico (rafael.rico@uah.es) */
/* */
/* This file is part of ADD version 5.10. */
/* */
/* ADD is free software; you can redistribute it and/or modify */
/* it under the terms of the GNU General Public License as */
/* published by the Free Software Foundation; either version 2 of */
/* the License, or (at your option) any later version. */
/* */
/* ADD is distributed in the hope that it will be useful, */
/* but WITHOUT ANY WARRANTY; without even the implied warranty of */
/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
/* GNU General Public License for more details. */
/* */
/* You should have received a copy of the GNU General Public */
/* License along with ADD; if not, write to the Free Software */
/* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA */
/* 02111-1307 USA */
/* */
/* --------------------------- History --------------------------- */
/* */
/* Revision 1.2. 01/2006 */
/* Added GPL License and JavaDoc style documentation */
/* */
/* Revision 1.1. 09/2005 */
/* Initial Revision */
/* */
/********************************************************************/
/*****************************************************************************/
/* MÓDULO: defines.h */
/* */
/* Módulo con definiciones de constantes. */
/*****************************************************************************/
/* Fecha: 29 de septiembre de 2005 */
/*****************************************************************************/
#define MAX_LINE 128
#define NO 0
#define SI 1
/* CONFIGURACIÓN */
#define TRAZA 0
#define SECUENCIA 1
#define CADENAHEX 2
/* SALVAR CONFIGURACIÓN */
#define CFG 2
/* BYTES POR INSTRUCCIÓN EN LA TRAZA */
#define BYTES_POR_INSTRUCCION 6
#define MAX_VENTANA 2048
/* NOTIFICACIONES */
#define ECO_NO 0
#define ECO_SI 1
#define ERROR_SALIR 0
#define ERROR_SEGUIR 1
#define NO_ERROR 2
#define ALL 0
#define EX_CFG 1
#define ERRORS 2
/* MÁXIMOS TAMAÑOS EN DEFINICIÓN DE TIPOS */
#define MAX_NEMO 15
#define MAX_OPE 12
#define MAX_LISTA 50
#define MAX_UBI 10
#define MAX_DEPEN 6
#define MAX_HEX 15
/* BASES DE DATOS */
#define TABLA_NEMONICOS 100
#define TABLA_SIMBOLOS 200
#define TABLA_CICLOS 300
#define TABLA_UBICACIONES 400
#define CAMPO_NEMONICO 101
#define CAMPO_SIMBOLO 201
#define CAMPO_IDENTIFICADOR 301
#define CAMPO_NOMBRE 401
/* TIPO DE INSTRUCCIÓN (Fichero IA16-nemos.isa) */
#define TRANSFERENCIA 0
#define ARITMETICA 1
#define LOGICA 2
#define SALTO_INCONDICIONAL 3
#define SALTO_CONDICIONAL 4
#define PREFIJO 5
#define PREFIJO_SEG 6
#define CADENAS 7
#define CONTROL 8
#define SIN_TIPO 100
/* MODO DEL OPERANDO (Fichero IA16-nemos.isa) */
#define LEIDO 0
#define ESCRITO 1
#define LEIDOYESCRITO 2
#define NO_EXISTE 3
/* SEGMENTO POR DEFECTO (Fichero IA16-ubis.isa) */
#define NO_SEG 0
#define CS 1
#define SS 2
#define DS 3
#define ES 4
/* FUNCIÓN DE LA UBICACIÓN (Fichero IA16-ubis.isa) */
#define DATOS 0
#define PTR_MEM 1
#define PTR_PILA 2
#define BANDERAS 3
#define ACCESOS_MEM 4
#define OTROS 5
/* SALTOS */
#define INCONDICIONAL 0
#define NO_SALTO 1
#define TOMADO 2
#define NOTOMADO 3
/* TIPOS DE DEPENDENCIAS */
#define RW 0 /* verdadera o lectura después de escritura */
#define WR 1 /* antidependencia o escritura después de lectura */
#define WW 2 /* salida o escritura después de escritura */
/* TIPOS DE DATOS */
#define DATOSEXP 10 /* datos explícitos */
#define DATOSIMP 11 /* datos implícitos */
#define DIREXP 20 /* direcciones explícitos */
#define DIRIMP 21 /* direcciones implícitos */
#define PILAEXP 30 /* pila explícitos */
#define PILAIMP 31 /* pila implícitos */
#define CCEXP 40 /* códigos de condición explícitos */
#define CCIMP 41 /* códigos de condición implícitos */
/* FORMATO ENSAMBLADOR */
#define INTEL 0 /* formato de instrucción ensamblador INTEL */
#define ATT 1 /* formato de instrucción ensamblador ATT */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>