|
|
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: * custom chip support 5: * 6: * (c) 1995 Bernd Schmidt 7: */ 8: 9: extern void custom_init(void); 10: extern void customreset(void); 11: extern int intlev(void); 12: extern void dumpcustom(void); 13: 14: extern void do_disk(void); 15: 1.1.1.3 ! root 16: extern void notice_new_xcolors (void); ! 17: extern void notice_screen_contents_lost (void); ! 18: extern void init_row_map(void); ! 19: ! 20: extern int picasso_requested_on; ! 21: extern int picasso_on; ! 22: ! 23: /* Set to 1 to leave out the current frame in average frame time calculation. ! 24: * Useful if the debugger was active. */ 1.1 root 25: extern int bogusframe; 26: 1.1.1.3 ! root 27: extern uae_u16 dmacon; ! 28: extern uae_u16 intena,intreq; 1.1.1.2 root 29: 30: extern int current_hpos (void); 1.1.1.3 ! root 31: extern int vpos; 1.1.1.2 root 32: 1.1.1.3 ! root 33: static __inline__ int dmaen(unsigned int dmamask) 1.1 root 34: { 35: return (dmamask & dmacon) && (dmacon & 0x200); 36: } 37: 38: #define SPCFLAG_STOP 2 39: #define SPCFLAG_DISK 4 40: #define SPCFLAG_INT 8 41: #define SPCFLAG_BRK 16 42: #define SPCFLAG_EXTRA_CYCLES 32 43: #define SPCFLAG_TRACE 64 44: #define SPCFLAG_DOTRACE 128 45: #define SPCFLAG_DOINT 256 46: #define SPCFLAG_BLTNASTY 512 47: #define SPCFLAG_EXEC 1024 1.1.1.2 root 48: #define SPCFLAG_MODE_CHANGE 8192 1.1 root 49: 50: extern int dskdmaen; 1.1.1.3 ! root 51: extern uae_u16 adkcon; 1.1 root 52: 1.1.1.3 ! root 53: extern unsigned int joy0dir, joy1dir; ! 54: extern int joy0button, joy1button; ! 55: extern uae_u32 mousehack_helper (void); ! 56: ! 57: extern void INTREQ(uae_u16); ! 58: extern uae_u16 INTREQR(void); ! 59: extern uae_u16 DMACONR(void); 1.1 root 60: 61: #define maxhpos 227 62: #define maxvpos 312 1.1.1.2 root 63: /* The HRM says: The vertical blanking area (PAL) ranges from line 0 to line 29, 64: * and no data can be displayed there. Nevertheless, we lose some overscan data 65: * if this is set to 29. */ 66: #define minfirstline 21 67: #define vblank_endline 29 1.1 root 68: #define numscrlines (maxvpos+1-minfirstline+1) 69: 70: #define DMA_AUD0 0x0001 71: #define DMA_AUD1 0x0002 72: #define DMA_AUD2 0x0004 73: #define DMA_AUD3 0x0008 74: #define DMA_DISK 0x0010 75: #define DMA_SPRITE 0x0020 76: #define DMA_BLITTER 0x0040 77: #define DMA_COPPER 0x0080 78: #define DMA_BITPLANE 0x0100 79: #define DMA_BLITPRI 0x0400 1.1.1.2 root 80: 81: extern unsigned long frametime, timeframes; 82: 1.1.1.3 ! root 83: /* 50 words give you 800 horizontal pixels. An A500 can't do that, so it ought ! 84: * to be enough. */ ! 85: #define MAX_WORDS_PER_LINE 50 ! 86: ! 87: extern uae_u32 hirestab_h[256][2]; ! 88: extern uae_u32 lorestab_h[256][4]; ! 89: ! 90: extern uae_u32 hirestab_l[256][1]; ! 91: extern uae_u32 lorestab_l[256][2];
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.