/* 
   Rasm: a Real mode ASseMbler
   Copyright (C) 1992 Electronetics, Inc.  All rights reserved.

   This program 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.

   This program 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 this program; if not, write to the Free Software
   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

#include <stdio.h>

#ifdef MSDOS
#define mach "MSDOS"
#endif /* MSDOS */

#ifdef apollo
#define mach "Apollo"
#endif /* apollo */

#ifdef sparc
#define mach "Sun-4"
#endif /* sparc */

#ifdef MSDOS
#define SHORT 1
#define SWAP_STRUCT 1
#endif /* MSDOS */

char nocopyright; /* If true, don't print version banner */

struct operand {
  unsigned char mod;
  unsigned char regnum;
  unsigned char rm;
  unsigned short val;
  unsigned reg : 1;
  unsigned segreg : 1;
  unsigned accum : 1;
  unsigned stat : 1;
  unsigned mem : 1;
  unsigned size : 2; /* NONE, BYTE, or WORD */
  unsigned immed : 1;
};

#define AX (-1)
#define CX (-2)
#define DX (-3)
#define BX (-4)
#define SP (-5)
#define BP (-6)
#define SI (-7)
#define DI (-8)
#define AL (-9)
#define CL (-10)
#define DL (-11)
#define BL (-12)
#define AH (-13)
#define CH (-14)
#define DH (-15)
#define BH (-16)
#define ES (-17)
#define CS (-18)
#define SS (-19)
#define DS (-20)

#define NONE 0
#define BYTE 1
#define WORD 2
