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

1.1       root        1: /*
1.1.1.3 ! root        2:   Hatari - screenDraw.h
1.1       root        3: */
                      4: 
                      5: /*-----------------------------------------------------------------------*/
                      6: /* VDI Screens 640x480 */
                      7: SCREENDRAW VDIScreenDraw_640x480[] = {
                      8:   {  /* Low */
                      9:     ConvertVDIRes_16Colour,
                     10:     640,480,8,1,
                     11:     {
                     12:       { 0,640/2, 0,480,  0,0 },
                     13:       { 0,640/2, 0,480,  0,0 },
                     14:       { 0,640/2, 0,480,  0,0 },
                     15:       { 0,640/2, 0,480,  0,0 },
                     16:     }
                     17:   },
                     18:   {  /* Medium */
                     19:     ConvertVDIRes_4Colour,
                     20:     640,480,8,1,
                     21:     {
                     22:       { 0,640/4, 0,480,  0,0 },
                     23:       { 0,640/4, 0,480,  0,0 },
                     24:       { 0,640/4, 0,480,  0,0 },
                     25:       { 0,640/4, 0,480,  0,0 },
                     26:     }
                     27:   },
                     28:   {  /* High */
                     29:     ConvertVDIRes_2Colour,
                     30:     640,480,8,1,
                     31:     {
                     32:       { 0,640/8, 0,480,  0,0 },
                     33:       { 0,640/8, 0,480,  0,0 },
                     34:       { 0,640/8, 0,480,  0,0 },
                     35:       { 0,640/8, 0,480,  0,0 },
                     36:     }
                     37:   },
                     38: };
                     39: 
                     40: /* VDI Screens 800x600 */
                     41: SCREENDRAW VDIScreenDraw_800x600[] = {
                     42:   {  /* Low */
                     43:     ConvertVDIRes_16Colour,
                     44:     800,600,8,1,
                     45:     {
                     46:       { 0,800/2, 0,600,  0,0 },
                     47:       { 0,800/2, 0,600,  0,0 },
                     48:       { 0,800/2, 0,600,  0,0 },
                     49:       { 0,800/2, 0,600,  0,0 },
                     50:     }
                     51:   },
                     52:   {  /* Medium */
                     53:     ConvertVDIRes_4Colour,
                     54:     800,600,8,1,
                     55:     {
                     56:       { 0,800/4, 0,600,  0,0 },
                     57:       { 0,800/4, 0,600,  0,0 },
                     58:       { 0,800/4, 0,600,  0,0 },
                     59:       { 0,800/4, 0,600,  0,0 },
                     60:     }
                     61:   },
                     62:   {  /* High */
                     63:     ConvertVDIRes_2Colour,
                     64:     800,600,8,1,
                     65:     {
                     66:       { 0,800/8, 0,600,  0,0 },
                     67:       { 0,800/8, 0,600,  0,0 },
                     68:       { 0,800/8, 0,600,  0,0 },
                     69:       { 0,800/8, 0,600,  0,0 },
                     70:     }
                     71:   },
                     72: };
                     73: 
                     74: /* VDI Screens 1024x768 */
                     75: SCREENDRAW VDIScreenDraw_1024x768[] = {
                     76:   {  /* Low */
                     77:     ConvertVDIRes_16Colour,
                     78:     1024,768,8,1,
                     79:     {
                     80:       { 0,1024/2, 0,768,  0,0 },
                     81:       { 0,1024/2, 0,768,  0,0 },
                     82:       { 0,1024/2, 0,768,  0,0 },
                     83:       { 0,1024/2, 0,768,  0,0 },
                     84:     }
                     85:   },
                     86:   {  /* Medium */
                     87:     ConvertVDIRes_4Colour,
                     88:     1024,768,8,1,
                     89:     {
                     90:       { 0,1024/4, 0,768,  0,0 },
                     91:       { 0,1024/4, 0,768,  0,0 },
                     92:       { 0,1024/4, 0,768,  0,0 },
                     93:       { 0,1024/4, 0,768,  0,0 },
                     94:     }
                     95:   },
                     96:   {  /* High */
                     97:     ConvertVDIRes_2Colour,
                     98:     1024,768,8,1,
                     99:     {
                    100:       { 0,1024/8, 0,768,  0,0 },
                    101:       { 0,1024/8, 0,768,  0,0 },
                    102:       { 0,1024/8, 0,768,  0,0 },
                    103:       { 0,1024/8, 0,768,  0,0 },
                    104:     }
                    105:   },
                    106: };
                    107: 
                    108: /*-----------------------------------------------------------------------*/
1.1.1.3 ! root      109: 
        !           110: SCREENDRAW ScreenDraw_Low_320x200x256 = {
1.1       root      111:   ConvertLowRes_320x8Bit,
                    112:   320,200,8,1,
                    113:   {
                    114:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    115:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    116:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    117:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 }
                    118:   }
                    119: };
                    120: 
1.1.1.3 ! root      121: SCREENDRAW ScreenDraw_Low_320x200x16Bit = {
1.1       root      122:   ConvertLowRes_320x16Bit,
                    123:   320,200,16,1,
                    124:   {
                    125:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    126:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    127:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    128:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 }
                    129:   }
                    130: };
                    131: 
1.1.1.3 ! root      132: SCREENDRAW ScreenDraw_Low_640x400x256 = {
1.1       root      133:   ConvertLowRes_640x8Bit,
                    134:   640,400,8,2,
                    135:   {
                    136:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    137:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    138:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    139:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 }
                    140:   }
                    141: };
                    142: 
1.1.1.3 ! root      143: SCREENDRAW ScreenDraw_Low_640x400x16Bit = {
1.1       root      144:   ConvertLowRes_640x16Bit,
                    145:   640,400,16,2,
                    146:   {
                    147:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    148:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    149:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    150:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 }
                    151:   }
                    152: };
                    153: 
1.1.1.3 ! root      154: SCREENDRAW ScreenDraw_Medium_640x400x256 = {
1.1       root      155:   ConvertMediumRes_640x8Bit,
                    156:   640,400,8,2,
                    157:   {
                    158:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    159:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    160:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    161:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 }
                    162:   }
                    163: };
                    164: 
1.1.1.3 ! root      165: SCREENDRAW ScreenDraw_Medium_640x400x16Bit = {
1.1       root      166:   ConvertMediumRes_640x16Bit,
                    167:   640,400,16,2,
                    168:   {
                    169:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    170:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    171:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 },
                    172:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+200,  0,0 }
                    173:   }
                    174: };
                    175: 
1.1.1.3 ! root      176: SCREENDRAW ScreenDraw_High_640x400x256 = {
1.1       root      177:   ConvertHighRes_640x8Bit,
                    178:   640,400,8,1,
                    179:   {
                    180:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+400,  0,0 },
                    181:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+400,  0,0 },  // These are not valid!(cannot have overscan in High Res)
                    182:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+400,  0,0 },
                    183:     { SCREENBYTES_LEFT,SCREENBYTES_MIDDLE, OVERSCAN_TOP,OVERSCAN_TOP+400,  0,0 },
                    184:   }
                    185: };
                    186: 
                    187: 
                    188: 
                    189: //-----------------------------------------------------------------------
1.1.1.3 ! root      190: // Modes to select according to chosen option from dialog
1.1       root      191: // In order DISPLAYMODE_16COL_LOWRES,DISPLAYMODE_16COL_HIGHRES,DISPLAYMODE_16COL_FULL,DISPLAYMODE_HICOL_LOWRES,DISPLAYMODE_HICOL_HIGHRES and DISPLAYMODE_HICOL_FULL
                    192: 
1.1.1.3 ! root      193: SCREENDRAW_DISPLAYOPTIONS ScreenDisplayOptions[] =
        !           194: {
1.1       root      195:   // Low-Colour, Low Res
                    196:   {
1.1.1.3 ! root      197:     &ScreenDraw_Low_320x200x256,
        !           198:     &ScreenDraw_Medium_640x400x256,
        !           199:     &ScreenDraw_High_640x400x256,
        !           200:     &ScreenDraw_Medium_640x400x256,
1.1       root      201:   },
                    202:   // Low-Colour, High Res
                    203:   {
1.1.1.3 ! root      204:     &ScreenDraw_Low_640x400x256,
        !           205:     &ScreenDraw_Medium_640x400x256,
        !           206:     &ScreenDraw_High_640x400x256,
        !           207:     &ScreenDraw_Medium_640x400x256,
1.1       root      208:   },
                    209:   // Low-Colour, Full View
                    210:   {
1.1.1.3 ! root      211:     NULL,
        !           212:     NULL,
        !           213:     NULL,
        !           214:     NULL,
1.1       root      215:   },
1.1.1.3 ! root      216: 
1.1       root      217:   // Hi-Colour, Low Res
                    218:   {
1.1.1.3 ! root      219:     &ScreenDraw_Low_320x200x16Bit,
        !           220:     &ScreenDraw_Medium_640x400x16Bit,
        !           221:     &ScreenDraw_High_640x400x256,
        !           222:     &ScreenDraw_Medium_640x400x16Bit,
1.1       root      223:   },
                    224:   // Hi-Colour, High Res
                    225:   {
1.1.1.3 ! root      226:     &ScreenDraw_Low_640x400x16Bit,
        !           227:     &ScreenDraw_Medium_640x400x16Bit,
        !           228:     &ScreenDraw_High_640x400x256,
        !           229:     &ScreenDraw_Medium_640x400x16Bit,
1.1       root      230:   },
                    231:   // Hi-Colour, Full View
                    232:   {
1.1.1.3 ! root      233:     NULL,
        !           234:     NULL,
        !           235:     NULL,
        !           236:     NULL,
1.1       root      237:   }
                    238: };

unix.superglobalmegacorp.com

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