|
|
1.1.1.3 ! root 1: /* 1.1 root 2: * UAE - The Un*x Amiga Emulator 1.1.1.3 ! root 3: * 1.1 root 4: * MC68000 emulation - machine dependent bits 5: * 6: * Copyright 1996 Bernd Schmidt 7: */ 8: 1.1.1.3 ! root 9: 1.1 root 10: struct flag_struct { 1.1.1.2 root 11: unsigned int c; 12: unsigned int z; 13: unsigned int n; 1.1.1.3 ! root 14: unsigned int v; 1.1.1.2 root 15: unsigned int x; 1.1 root 16: }; 17: 18: extern struct flag_struct regflags; 19: 20: #define ZFLG (regflags.z) 21: #define NFLG (regflags.n) 22: #define CFLG (regflags.c) 23: #define VFLG (regflags.v) 24: #define XFLG (regflags.x) 25: 26: static __inline__ int cctrue(const int cc) 27: { 28: switch(cc){ 29: case 0: return 1; /* T */ 30: case 1: return 0; /* F */ 31: case 2: return !CFLG && !ZFLG; /* HI */ 32: case 3: return CFLG || ZFLG; /* LS */ 33: case 4: return !CFLG; /* CC */ 34: case 5: return CFLG; /* CS */ 35: case 6: return !ZFLG; /* NE */ 36: case 7: return ZFLG; /* EQ */ 37: case 8: return !VFLG; /* VC */ 38: case 9: return VFLG; /* VS */ 39: case 10:return !NFLG; /* PL */ 40: case 11:return NFLG; /* MI */ 41: case 12:return NFLG == VFLG; /* GE */ 42: case 13:return NFLG != VFLG; /* LT */ 43: case 14:return !ZFLG && (NFLG == VFLG); /* GT */ 44: case 15:return ZFLG || (NFLG != VFLG); /* LE */ 45: } 46: abort(); 47: return 0; 48: } 49:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.