Mercurial > sdl-ios-xcode
comparison src/video/xbios/SDL_xbios_sb3.c @ 1662:782fd950bd46 SDL-1.3
Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API.
WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid.
The code is now run through a consistent indent format:
indent -i4 -nut -nsc -br -ce
The headers are being converted to automatically generate doxygen documentation.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 28 May 2006 13:04:16 +0000 |
parents | d910939febfa |
children | 4da1ee79c9af |
comparison
equal
deleted
inserted
replaced
1661:281d3f4870e5 | 1662:782fd950bd46 |
---|---|
33 #include "SDL_xbios.h" | 33 #include "SDL_xbios.h" |
34 #include "SDL_xbios_sb3.h" | 34 #include "SDL_xbios_sb3.h" |
35 | 35 |
36 /*--- Defines ---*/ | 36 /*--- Defines ---*/ |
37 | 37 |
38 const int SDL_XBIOS_scpn_planes_device[]={ | 38 const int SDL_XBIOS_scpn_planes_device[] = { |
39 SCPN_DEV_1BPP, | 39 SCPN_DEV_1BPP, |
40 SCPN_DEV_4BPP, | 40 SCPN_DEV_4BPP, |
41 SCPN_DEV_8BPP, | 41 SCPN_DEV_8BPP, |
42 SCPN_DEV_16BPP, | 42 SCPN_DEV_16BPP, |
43 SCPN_DEV_2BPP, | 43 SCPN_DEV_2BPP, |
44 SCPN_DEV_4BPP, | 44 SCPN_DEV_4BPP, |
45 SCPN_DEV_1BPP | 45 SCPN_DEV_1BPP |
46 }; | 46 }; |
47 | 47 |
48 /*--- Functions ---*/ | 48 /*--- Functions ---*/ |
49 | 49 |
50 int SDL_XBIOS_SB3Usable(scpn_cookie_t *cookie_scpn) | 50 int |
51 SDL_XBIOS_SB3Usable (scpn_cookie_t * cookie_scpn) | |
51 { | 52 { |
52 scpn_screeninfo_t *scrinfo; | 53 scpn_screeninfo_t *scrinfo; |
53 int bpp; | 54 int bpp; |
54 | 55 |
55 /* Check if current SB3 mode is usable, i.e. 8 or 16bpp */ | 56 /* Check if current SB3 mode is usable, i.e. 8 or 16bpp */ |
56 scrinfo = cookie_scpn->screen_info; | 57 scrinfo = cookie_scpn->screen_info; |
57 bpp = 1<<(SDL_XBIOS_scpn_planes_device[scrinfo->device]); | 58 bpp = 1 << (SDL_XBIOS_scpn_planes_device[scrinfo->device]); |
58 | 59 |
59 if ((bpp==8) || (bpp==16)) { | 60 if ((bpp == 8) || (bpp == 16)) { |
60 return 1; | 61 return 1; |
61 } | 62 } |
62 | 63 |
63 return 0; | 64 return 0; |
64 } | 65 } |
65 | 66 |
66 void SDL_XBIOS_SB3Init(_THIS, scpn_cookie_t *cookie_scpn) | 67 void |
68 SDL_XBIOS_SB3Init (_THIS, scpn_cookie_t * cookie_scpn) | |
67 { | 69 { |
68 scpn_screeninfo_t *scrinfo; | 70 scpn_screeninfo_t *scrinfo; |
69 | 71 |
70 /* SB3 prevent changing video modes, we can only use current one */ | 72 /* SB3 prevent changing video modes, we can only use current one */ |
71 if (XBIOS_modelist) { | 73 if (XBIOS_modelist) { |
72 SDL_free(XBIOS_modelist); | 74 SDL_free (XBIOS_modelist); |
73 XBIOS_nummodes = 0; | 75 XBIOS_nummodes = 0; |
74 XBIOS_modelist = NULL; | 76 XBIOS_modelist = NULL; |
75 } | 77 } |
76 | 78 |
77 scrinfo = cookie_scpn->screen_info; | 79 scrinfo = cookie_scpn->screen_info; |
78 scrinfo->h_pos = scrinfo->v_pos = 0; | 80 scrinfo->h_pos = scrinfo->v_pos = 0; |
79 | 81 |
80 SDL_XBIOS_AddMode(this, | 82 SDL_XBIOS_AddMode (this, |
81 -1, | 83 -1, |
82 scrinfo->virtual_width, scrinfo->virtual_height, | 84 scrinfo->virtual_width, scrinfo->virtual_height, |
83 1<<(SDL_XBIOS_scpn_planes_device[scrinfo->device]), | 85 1 << (SDL_XBIOS_scpn_planes_device[scrinfo->device]), |
84 SDL_FALSE | 86 SDL_FALSE); |
85 ); | |
86 } | 87 } |
88 | |
89 /* vi: set ts=4 sw=4 expandtab: */ |