Annotation of hatari/src/falcon/hostscreen.h, revision 1.1.1.1

1.1       root        1: /*
                      2:   Hatari - hostscreen.h
                      3: 
                      4:   This file is distributed under the GNU Public License, version 2 or at
                      5:   your option any later version. Read the file gpl.txt for details.
                      6: */
                      7: 
                      8: #ifndef HATARI_HOSTSCREEN_H
                      9: #define HATARI_HOSTSCREEN_H
                     10: 
                     11: #include <SDL.h>
                     12: 
                     13: #include "araglue.h"
                     14: 
                     15: /**
                     16:  * This macro handles the endianity for 24 bit per item data
                     17:  **/
                     18: #if SDL_BYTEORDER == SDL_BIG_ENDIAN
                     19: 
                     20: #define putBpp24Pixel( address, color ) \
                     21: { \
                     22:         ((Uint8*)(address))[0] = ((color) >> 16) & 0xff; \
                     23:         ((Uint8*)(address))[1] = ((color) >> 8) & 0xff; \
                     24:         ((Uint8*)(address))[2] = (color) & 0xff; \
                     25: }
                     26: 
                     27: #define getBpp24Pixel( address ) \
                     28:     ( ((uint32)(address)[0] << 16) | ((uint32)(address)[1] << 8) | (uint32)(address)[2] )
                     29: 
                     30: #else
                     31: 
                     32: #define putBpp24Pixel( address, color ) \
                     33: { \
                     34:     ((Uint8*)(address))[0] = (color) & 0xff; \
                     35:         ((Uint8*)(address))[1] = ((color) >> 8) & 0xff; \
                     36:         ((Uint8*)(address))[2] = ((color) >> 16) & 0xff; \
                     37: }
                     38: 
                     39: #define getBpp24Pixel( address ) \
                     40:     ( ((uint32)(address)[2] << 16) | ((uint32)(address)[1] << 8) | (uint32)(address)[0] )
                     41: 
                     42: #endif
                     43: 
                     44: 
                     45: extern void HostScreen_Init(void);
                     46: extern void HostScreen_UnInit(void);
                     47: extern void HostScreen_toggleFullScreen(void);
                     48: extern BOOL HostScreen_renderBegin(void);
                     49: extern void HostScreen_renderEnd(void);
                     50: extern void HostScreen_update1(BOOL forced);
                     51: extern void HostScreen_update0(void);
                     52: extern uint32 HostScreen_getBpp(void); /* Bytes per pixel */
                     53: extern uint32 HostScreen_getBitsPerPixel(void);
                     54: extern uint32 HostScreen_getPitch(void);
                     55: extern uint32 HostScreen_getWidth(void);
                     56: extern uint32 HostScreen_getHeight(void);
                     57: extern uint8 * HostScreen_getVideoramAddress(void);
                     58: extern void HostScreen_setPaletteColor( uint8 idx, uint32 red, uint32 green, uint32 blue );
                     59: extern uint32 HostScreen_getPaletteColor( uint8 idx );
                     60: extern void HostScreen_updatePalette( uint16 colorCount );
                     61: extern uint32 HostScreen_getColor( uint32 red, uint32 green, uint32 blue );
                     62: extern void HostScreen_setWindowSize(uint32 width, uint32 height, uint32 bpp);
                     63: extern void HostScreen_bitplaneToChunky(uint16 *atariBitplaneData, uint16 bpp, uint8 colorValues[16]);
                     64: 
                     65: #endif

unix.superglobalmegacorp.com

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