|
|
1.1 ! root 1: /* ! 2: Hatari ! 3: */ ! 4: ! 5: typedef struct { ! 6: unsigned int Address; /* Address we accessed, eg VideoSync(0xff820a) or VideoShifter(0xff8260) */ ! 7: unsigned char Byte; /* Byte we wrote */ ! 8: int FrameCycles; /* Clock cycles into frame */ ! 9: } SYNCSHIFTER_ACCESS; ! 10: ! 11: typedef struct { ! 12: int nCount; /* Number of matching entries - when equal 'nChecks' this table is complete */ ! 13: int nChecks; /* Number of address/byte/cycle checks in match table */ ! 14: SYNCSHIFTER_ACCESS *pSyncShifterAccess; /* Checks to compare with */ ! 15: void *pFunc; /* Handler function to call when table is found to match */ ! 16: int Value; /* Value to pass to above function via 'SyncHandler_Value' */ ! 17: } SYNCSHIFTER_ACCESS_TABLE; ! 18: ! 19: #define BORDERMASK_NONE 0x0000 /* Borders masks */ ! 20: #define BORDERMASK_TOP 0x0001 ! 21: #define BORDERMASK_BOTTOM 0x0002 ! 22: #define BORDERMASK_LEFT 0x0004 ! 23: #define BORDERMASK_RIGHT 0x0008 ! 24: ! 25: extern long VideoAddress; ! 26: extern unsigned char VideoSyncByte,VideoShifterByte; ! 27: extern BOOL bUseHighRes; ! 28: extern int nVBLs,nHBL; ! 29: extern int nStartHBL,nEndHBL; ! 30: extern int OverscanMode; ! 31: extern unsigned short int HBLPalettes[(NUM_VISIBLE_LINES+1)*16]; ! 32: extern unsigned long HBLPaletteMasks[NUM_VISIBLE_LINES+1]; ! 33: extern unsigned short int *pHBLPalettes; ! 34: extern unsigned long *pHBLPaletteMasks; ! 35: extern unsigned long VideoBase; ! 36: extern unsigned long VideoRaster; ! 37: ! 38: extern void Video_Reset(void); ! 39: extern void Video_MemorySnapShot_Capture(BOOL bSave); ! 40: extern void Video_ClearOnVBL(void); ! 41: extern void Video_CalculateAddress(void); ! 42: extern unsigned long Video_ReadAddress(void); ! 43: extern void Video_InterruptHandler_VBL(void); ! 44: extern void Video_InterruptHandler_VBL_Pending(void); ! 45: extern void Video_InterruptHandler_EndLine(void); ! 46: extern void Video_InterruptHandler_HBL(void); ! 47: extern void Video_SyncHandler_SetLeftRightBorder(void); ! 48: extern void Video_SyncHandler_SetSyncScrollOffset(void); ! 49: extern void Video_SyncHandler_SetTopBorder(void); ! 50: extern void Video_SyncHandler_SetBottomBorder(void); ! 51: extern void Video_WriteToShifter(void); ! 52: extern void Video_WriteToSync(void); ! 53: extern void Video_StoreSyncShifterAccess(unsigned int Address,unsigned char Byte); ! 54: extern void Video_StartHBL(void); ! 55: extern void Video_CopyVDIScreen(void); ! 56: extern void Video_EndHBL(void); ! 57: extern void Video_SetScreenRasters(void); ! 58: extern void Video_SetHBLPaletteMaskPointers(void);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.