|
|
1.1.1.4 ! root 1: #pragma once ! 2: ! 3: #ifndef __SYSREG_H__ ! 4: #define __SYSREG_H__ ! 5: ! 6: ! 7: #ifdef __cplusplus ! 8: extern "C" { ! 9: #endif ! 10: 1.1 root 11: /* NeXT system registers emulation */ 12: 1.1.1.2 root 13: /* Interrupts */ 1.1 root 14: #define INT_SOFT1 0x00000001 // level 1 15: #define INT_SOFT2 0x00000002 // level 2 16: #define INT_POWER 0x00000004 // level 3 17: #define INT_KEYMOUSE 0x00000008 18: #define INT_MONITOR 0x00000010 19: #define INT_VIDEO 0x00000020 20: #define INT_DSP_L3 0x00000040 21: #define INT_PHONE 0x00000080 // Floppy? 22: #define INT_SOUND_OVRUN 0x00000100 23: #define INT_EN_RX 0x00000200 24: #define INT_EN_TX 0x00000400 25: #define INT_PRINTER 0x00000800 26: #define INT_SCSI 0x00001000 27: #define INT_DISK 0x00002000 // in color systems this is INT_C16VIDEO 28: #define INT_DSP_L4 0x00004000 // level 4 29: #define INT_BUS 0x00008000 // level 5 30: #define INT_REMOTE 0x00010000 31: #define INT_SCC 0x00020000 32: #define INT_R2M_DMA 0x00040000 // level 6 33: #define INT_M2R_DMA 0x00080000 34: #define INT_DSP_DMA 0x00100000 35: #define INT_SCC_DMA 0x00200000 36: #define INT_SND_IN_DMA 0x00400000 37: #define INT_SND_OUT_DMA 0x00800000 38: #define INT_PRINTER_DMA 0x01000000 39: #define INT_DISK_DMA 0x02000000 40: #define INT_SCSI_DMA 0x04000000 41: #define INT_EN_RX_DMA 0x08000000 42: #define INT_EN_TX_DMA 0x10000000 43: #define INT_TIMER 0x20000000 44: #define INT_PFAIL 0x40000000 // level 7 45: #define INT_NMI 0x80000000 46: 1.1.1.2 root 47: /* Interrupt Level Masks */ 48: #define INT_L7_MASK 0xC0000000 49: #define INT_L6_MASK 0x3FFC0000 50: #define INT_L5_MASK 0x00038000 51: #define INT_L4_MASK 0x00004000 52: #define INT_L3_MASK 0x00003FFC 53: #define INT_L2_MASK 0x00000002 54: #define INT_L1_MASK 0x00000001 55: 56: #define SET_INT 1 57: #define RELEASE_INT 0 1.1 root 58: 1.1.1.2 root 59: void set_interrupt(Uint32 intr, Uint8 state); 1.1.1.4 ! root 60: int scr_get_interrupt_level(Uint32 interrupt); ! 61: ! 62: extern Uint32 scrIntStat; ! 63: extern Uint32 scrIntMask; 1.1.1.2 root 64: 65: void set_dsp_interrupt(Uint8 state); 1.1 root 66: 67: void SID_Read(void); 68: 69: void SCR_Reset(void); 70: void SCR1_Read0(void); 71: void SCR1_Read1(void); 72: void SCR1_Read2(void); 73: void SCR1_Read3(void); 74: 75: void SCR2_Read0(void); 76: void SCR2_Write0(void); 77: void SCR2_Read1(void); 78: void SCR2_Write1(void); 79: void SCR2_Read2(void); 80: void SCR2_Write2(void); 81: void SCR2_Read3(void); 82: void SCR2_Write3(void); 83: 84: void IntRegStatRead(void); 85: void IntRegStatWrite(void); 86: void IntRegMaskRead(void); 87: void IntRegMaskWrite(void); 88: 1.1.1.2 root 89: void Hardclock_InterruptHandler(void); 1.1 root 90: void HardclockRead0(void); 91: void HardclockRead1(void); 92: 93: void HardclockWrite0(void); 94: void HardclockWrite1(void); 95: 96: void HardclockWriteCSR(void); 97: void HardclockReadCSR(void); 98: 1.1.1.2 root 99: void System_Timer_Read(void); 1.1.1.3 root 100: void System_Timer_Write(void); 1.1 root 101: 1.1.1.2 root 102: void ColorVideo_CMD_Write(void); 103: void color_video_interrupt(void); 1.1.1.4 ! root 104: ! 105: #ifdef __cplusplus ! 106: } ! 107: #endif ! 108: ! 109: #endif /* __SYSREG_H__ */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.