Annotation of hatari/src/includes/syncTables.h, revision 1.1.1.3

1.1       root        1: /*
                      2:   Hatari
                      3: 
1.1.1.2   root        4:   Tables for cycles when allow top/bottom borders.
                      5:   Also left/right and Sync Scroll
1.1       root        6: */
                      7: 
1.1.1.2   root        8: /*------------------------------------------------------------------------*/
                      9: /* Top/Bottom Border tables - NOTE due to natural interrupt inaccuracies  */
                     10: /* (ie interrupt due while currently processing instruction) these values */
                     11: /* have a 'range' - We have a single table entry for each possible +      */
                     12: /* overlap, just in-case!                                                 */
1.1       root       13: 
1.1.1.2   root       14: /*-----------------------------------------------------------------------*/
                     15: /* Left/Right borders */
1.1       root       16: SYNCSHIFTER_ACCESS LeftRightBorderAccess_Pompey_46[] = {
1.1.1.2   root       17:   { 0xFF8260,0x02,28 },
                     18:   { 0xFF8260,0x00,36 },
                     19:   { 0xFF820A,0x00,400 },
                     20:   { 0xFF820A,0x02,408 },
                     21:   { 0xFF8260,0x02,468 },
                     22:   { 0xFF8260,0x00,480 }
1.1       root       23: };
                     24: 
                     25: SYNCSHIFTER_ACCESS_TABLE pLeftRightBorderAccessTable[] = {
1.1.1.2   root       26:   { 0, 6,LeftRightBorderAccess_Pompey_46,Video_SyncHandler_SetLeftRightBorder,BORDERMASK_LEFT|BORDERMASK_RIGHT },
1.1       root       27: 
1.1.1.2   root       28:   { 0, 0, 0, 0, 0 }  /* term */
1.1       root       29: };
                     30: 
                     31: 
1.1.1.2   root       32: /*-----------------------------------------------------------------------*/
                     33: /* Sync Scrolling */
                     34: 
                     35: /* Syncscr7.s */
                     36: SYNCSHIFTER_ACCESS SyncScrollerAccess_SyncScrl_1[] = {  /* 0x118de wholeline(+70) */
                     37:   { 0xFF8260,0x02,492 },
                     38:   { 0xFF8260,0x00,508 },
                     39:   { 0xFF820A,0x00,360 },  /* NOTE This also matches with array below so add (70-44) */
                     40:   { 0xFF820A,0x02,376 },
                     41:   { 0xFF8260,0x01,424 },
                     42:   { 0xFF8260,0x00,440 }
                     43: };
                     44: SYNCSHIFTER_ACCESS SyncScrollerAccess_SyncScrl_2[] = {  /* 0x119c2 rightonly(+44) */
                     45:   { 0xFF820A,0x00,360 },
                     46:   { 0xFF820A,0x02,376 }
                     47: };
                     48: SYNCSHIFTER_ACCESS SyncScrollerAccess_SyncScrl_3[] = {  /* 0x11aae length_2(-2) */
                     49:   { 0xFF820A,0x00,352 },
                     50:   { 0xFF820A,0x02,368 }
                     51: };
                     52: SYNCSHIFTER_ACCESS SyncScrollerAccess_SyncScrl_4[] = {  /* 0x11c8a length24(+24) */
                     53:   { 0xFF8260,0x02,492 },
                     54:   { 0xFF8260,0x00,508 },
                     55:   { 0xFF820A,0x00,356 },
                     56:   { 0xFF820A,0x02,372 },
                     57:   { 0xFF8260,0x01,424 },
                     58:   { 0xFF8260,0x00,440 }
                     59: };
                     60: SYNCSHIFTER_ACCESS SyncScrollerAccess_SyncScrl_5[] = {  /* 0x11d6e length26(+26) */
                     61:   { 0xFF8260,0x02,492 },
                     62:   { 0xFF8260,0x00,508 },
                     63:   { 0xFF8260,0x01,424 },
                     64:   { 0xFF8260,0x00,440 }
                     65: };
                     66: SYNCSHIFTER_ACCESS SyncScrollerAccess_SyncScrl_6[] = {  /* 0x11e56 length_106(-106) */
                     67:   { 0xFF8260,0x02,144 },
                     68:   { 0xFF8260,0x00,160 }
                     69: };
                     70: 
                     71: /* Hardware.s (ignore L230 as is +26 +44 combined) */
                     72: SYNCSHIFTER_ACCESS SyncScrollerAccess_Hardware_1[] = {  /* 0x121c2 L158(-2) */
                     73:   { 0xFF820A,0x00,360 },
                     74:   { 0xFF820A,0x02,368 }
                     75: };
                     76: SYNCSHIFTER_ACCESS SyncScrollerAccess_Hardware_2[] = {  /* 0x122ae L184(+24) */
                     77:   { 0xFF8260,0x02,436 },
                     78:   { 0xFF8260,0x00,448 },
                     79:   { 0xFF8260,0x02,508 },
                     80:   { 0xFF8260,0x00,4 },
                     81:   { 0xFF820A,0x00,360 },  /* NOTE This also matches with array have so add (24+2) */
                     82:   { 0xFF820A,0x02,368 }
                     83: };
                     84: SYNCSHIFTER_ACCESS SyncScrollerAccess_Hardware_3[] = {  /* 0x12394 L186(+26) */
                     85:   { 0xFF8260,0x02,440 },
                     86:   { 0xFF8260,0x00,452 },
                     87:   { 0xFF8260,0x02,508 },
                     88:   { 0xFF8260,0x00,4 }
                     89: };
                     90: SYNCSHIFTER_ACCESS SyncScrollerAccess_Hardware_4[] = {  /* 0x1247a L204(+44) */
                     91:   { 0xFF820A,0x00,368 },
                     92:   { 0xFF820A,0x02,376 }
1.1       root       93: };
                     94: 
                     95: SYNCSHIFTER_ACCESS_TABLE pSyncScrollerAccessTable[] = {
1.1.1.2   root       96:   { 0, 6,SyncScrollerAccess_SyncScrl_1, Video_SyncHandler_SetSyncScrollOffset,+70-44 },
                     97:   { 0, 2,SyncScrollerAccess_SyncScrl_2, Video_SyncHandler_SetSyncScrollOffset,+44 },
                     98:   { 0, 2,SyncScrollerAccess_SyncScrl_3, Video_SyncHandler_SetSyncScrollOffset,-2 },
                     99:   { 0, 6,SyncScrollerAccess_SyncScrl_4, Video_SyncHandler_SetSyncScrollOffset,+24 },
                    100:   { 0, 4,SyncScrollerAccess_SyncScrl_5, Video_SyncHandler_SetSyncScrollOffset,+26 },
                    101:   { 0, 2,SyncScrollerAccess_SyncScrl_6, Video_SyncHandler_SetSyncScrollOffset,-106 },
                    102: 
                    103:   { 0, 2,SyncScrollerAccess_Hardware_1, Video_SyncHandler_SetSyncScrollOffset,-2 },
                    104:   { 0, 6,SyncScrollerAccess_Hardware_2, Video_SyncHandler_SetSyncScrollOffset,+24+2 },
                    105:   { 0, 4,SyncScrollerAccess_Hardware_3, Video_SyncHandler_SetSyncScrollOffset,+26 },
                    106:   { 0, 2,SyncScrollerAccess_Hardware_4, Video_SyncHandler_SetSyncScrollOffset,+44 },
1.1       root      107: 
1.1.1.2   root      108:   { 0, 0, 0, 0, 0 }  // term
1.1       root      109: };
                    110: 

unix.superglobalmegacorp.com

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