Annotation of hatari/src/includes/mfp.h, revision 1.1.1.11

1.1       root        1: /*
1.1.1.2   root        2:   Hatari - mfp.h
                      3: 
1.1.1.10  root        4:   This file is distributed under the GNU General Public License, version 2
                      5:   or at your option any later version. Read the file gpl.txt for details.
1.1       root        6: */
                      7: 
1.1.1.2   root        8: #ifndef HATARI_MFP_H
                      9: #define HATARI_MFP_H
                     10: 
                     11: /* List of MFP interrupts (GPIP is General Purpose I/O Interrupt Port) */
1.1.1.10  root       12: #define        MFP_INT_MAX                     15              /* We have 16 ints from 0 to 15 */
                     13: 
                     14: #define        MFP_INT_GPIP7                   15              /* Highest Priority */
                     15: #define        MFP_INT_GPIP6                   14
                     16: #define        MFP_INT_TIMER_A                 13
                     17: #define        MFP_INT_RCV_BUF_FULL            12
                     18: #define        MFP_INT_RCV_ERR                 11
                     19: #define        MFP_INT_TRN_BUF_EMPTY           10
                     20: #define        MFP_INT_TRN_ERR                 9
                     21: #define        MFP_INT_TIMER_B                 8
                     22: 
                     23: #define        MFP_INT_GPIP5                   7
                     24: #define        MFP_INT_GPIP4                   6
                     25: #define        MFP_INT_TIMER_C                 5
                     26: #define        MFP_INT_TIMER_D                 4
                     27: #define        MFP_INT_GPIP3                   3
                     28: #define        MFP_INT_GPIP2                   2
                     29: #define        MFP_INT_GPIP1                   1
                     30: #define        MFP_INT_GPIP0                   0               /* Lowest Priority */
                     31: 
                     32: 
                     33: /* MFP register defines ( 1 << Int ) */
                     34: #define        MFP_GPIP7_BIT                   0x80
                     35: #define        MFP_GPIP6_BIT                   0x40
                     36: #define        MFP_TIMER_A_BIT                 0x20
                     37: #define        MFP_RCV_BUF_FULL_BIT            0x10
                     38: #define        MFP_RCV_ERR_BIT                 0x08
                     39: #define        MFP_TRN_BUF_EMPTY_BIT           0x04
                     40: #define        MFP_TRN_ERR_BIT                 0x02
                     41: #define        MFP_TIMER_B_BIT                 0x01
                     42: 
                     43: #define        MFP_GPIP5_BIT                   0x80
                     44: #define        MFP_GPIP4_BIT                   0x40
                     45: #define        MFP_TIMER_C_BIT                 0x20
                     46: #define        MFP_TIMER_D_BIT                 0x10
                     47: #define        MFP_GPIP3_BIT                   0x08
                     48: #define        MFP_GPIP2_BIT                   0x04
                     49: #define        MFP_GPIP1_BIT                   0x02
                     50: #define        MFP_GPIP0_BIT                   0x01
                     51: 
1.1.1.11! root       52: 
        !            53: /* List of the GPIP lines */
        !            54: #define        MFP_GPIP_LINE7                  7                       
        !            55: #define        MFP_GPIP_LINE6                  6
        !            56: #define        MFP_GPIP_LINE5                  5
        !            57: #define        MFP_GPIP_LINE4                  4
        !            58: #define        MFP_GPIP_LINE3                  3
        !            59: #define        MFP_GPIP_LINE2                  2
        !            60: #define        MFP_GPIP_LINE1                  1
        !            61: #define        MFP_GPIP_LINE0                  0
        !            62: 
        !            63: #define        MFP_GPIP_LINE_FDC_HDC           MFP_GPIP_LINE5
        !            64: #define        MFP_GPIP_LINE_ACIA              MFP_GPIP_LINE4
        !            65: #define        MFP_GPIP_LINE_GPU_DONE          MFP_GPIP_LINE3
        !            66: 
        !            67: #define        MFP_GPIP_STATE_LOW              0
        !            68: #define        MFP_GPIP_STATE_HIGH             1
1.1.1.10  root       69: 
1.1       root       70: 
1.1.1.2   root       71: /* MFP Registers */
1.1.1.5   root       72: extern Uint8 MFP_GPIP;
                     73: extern Uint8 MFP_IERA,MFP_IERB;
                     74: extern Uint8 MFP_IPRA,MFP_IPRB;
1.1.1.7   root       75: extern Uint8 MFP_TACR,MFP_TBCR;
1.1.1.5   root       76: extern Uint8 MFP_VR;
1.1.1.10  root       77: extern bool  MFP_UpdateNeeded;
1.1       root       78: 
                     79: extern void MFP_Reset(void);
1.1.1.8   root       80: extern void MFP_MemorySnapShot_Capture(bool bSave);
1.1.1.11! root       81: 
        !            82: extern Uint8 MFP_GetIRQ_CPU ( void );
        !            83: extern void MFP_DelayIRQ ( void );
1.1.1.10  root       84: extern int  MFP_ProcessIACK ( int OldVecNr );
                     85: extern bool MFP_ProcessIRQ ( void );
                     86: extern void MFP_UpdateIRQ ( Uint64 Event_Time );
                     87: extern void MFP_InputOnChannel ( int Interrupt , int Interrupt_Delayed_Cycles );
1.1.1.11! root       88: extern void MFP_GPIP_Set_Line_Input ( Uint8 LineNr , Uint8 Bit );
        !            89: 
1.1       root       90: extern void MFP_TimerA_EventCount_Interrupt(void);
1.1.1.10  root       91: extern void MFP_TimerB_EventCount_Interrupt( int Delayed_Cycles );
1.1       root       92: extern void MFP_InterruptHandler_TimerA(void);
                     93: extern void MFP_InterruptHandler_TimerB(void);
                     94: extern void MFP_InterruptHandler_TimerC(void);
                     95: extern void MFP_InterruptHandler_TimerD(void);
1.1.1.2   root       96: 
1.1.1.4   root       97: extern void MFP_GPIP_ReadByte(void);
                     98: extern void MFP_ActiveEdge_ReadByte(void);
                     99: extern void MFP_DataDirection_ReadByte(void);
                    100: extern void MFP_EnableA_ReadByte(void);
                    101: extern void MFP_EnableB_ReadByte(void);
                    102: extern void MFP_PendingA_ReadByte(void);
                    103: extern void MFP_PendingB_ReadByte(void);
                    104: extern void MFP_InServiceA_ReadByte(void);
                    105: extern void MFP_InServiceB_ReadByte(void);
                    106: extern void MFP_MaskA_ReadByte(void);
                    107: extern void MFP_MaskB_ReadByte(void);
                    108: extern void MFP_VectorReg_ReadByte(void);
                    109: extern void MFP_TimerACtrl_ReadByte(void);
                    110: extern void MFP_TimerBCtrl_ReadByte(void);
                    111: extern void MFP_TimerCDCtrl_ReadByte(void);
                    112: extern void MFP_TimerAData_ReadByte(void);
                    113: extern void MFP_TimerBData_ReadByte(void);
                    114: extern void MFP_TimerCData_ReadByte(void);
                    115: extern void MFP_TimerDData_ReadByte(void);
                    116: 
                    117: extern void MFP_GPIP_WriteByte(void);
                    118: extern void MFP_ActiveEdge_WriteByte(void);
                    119: extern void MFP_DataDirection_WriteByte(void);
                    120: extern void MFP_EnableA_WriteByte(void);
                    121: extern void MFP_EnableB_WriteByte(void);
                    122: extern void MFP_PendingA_WriteByte(void);
                    123: extern void MFP_PendingB_WriteByte(void);
                    124: extern void MFP_InServiceA_WriteByte(void);
                    125: extern void MFP_InServiceB_WriteByte(void);
                    126: extern void MFP_MaskA_WriteByte(void);
                    127: extern void MFP_MaskB_WriteByte(void);
                    128: extern void MFP_VectorReg_WriteByte(void);
                    129: extern void MFP_TimerACtrl_WriteByte(void);
                    130: extern void MFP_TimerBCtrl_WriteByte(void);
                    131: extern void MFP_TimerCDCtrl_WriteByte(void);
                    132: extern void MFP_TimerAData_WriteByte(void);
                    133: extern void MFP_TimerBData_WriteByte(void);
                    134: extern void MFP_TimerCData_WriteByte(void);
                    135: extern void MFP_TimerDData_WriteByte(void);
                    136: 
1.1.1.2   root      137: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.