fix gamma ramp when 16-bit color
This commit is contained in:
parent
6de9a5032d
commit
d851a65548
|
@ -1782,10 +1782,9 @@ void video_set_palette(void)
|
|||
monitor->set_palette(pal, n_colors);
|
||||
}
|
||||
|
||||
void video_set_gamma(void)
|
||||
void video_set_gamma(int n_colors)
|
||||
{
|
||||
monitor_desc * monitor = VideoMonitors[0];
|
||||
int n_colors = palette_size(monitor->get_current_mode().viAppleMode);
|
||||
uint8 gamma[256 * 3];
|
||||
for (int c = 0; c < n_colors; c++) {
|
||||
gamma[c*3 + 0] = mac_gamma[c].red;
|
||||
|
|
|
@ -141,7 +141,7 @@ extern void VideoInstallAccel(void);
|
|||
extern void VideoQuitFullScreen(void);
|
||||
|
||||
extern void video_set_palette(void);
|
||||
extern void video_set_gamma(void);
|
||||
extern void video_set_gamma(int n_colors);
|
||||
extern void video_set_cursor(void);
|
||||
extern bool video_can_change_cursor(void);
|
||||
extern int16 video_mode_change(VidLocals *csSave, uint32 ParamPtr);
|
||||
|
|
|
@ -239,7 +239,7 @@ static int16 set_gamma(VidLocals *csSave, uint32 gamma)
|
|||
WriteMacInt8(p + i, i);
|
||||
mac_gamma[i].red = mac_gamma[i].green = mac_gamma[i].blue = i;
|
||||
}
|
||||
|
||||
video_set_gamma(256);
|
||||
} else { // User-supplied gamma table
|
||||
|
||||
// Validate header
|
||||
|
@ -296,9 +296,8 @@ static int16 set_gamma(VidLocals *csSave, uint32 gamma)
|
|||
mac_gamma[i].blue = max_blue;
|
||||
}
|
||||
}
|
||||
video_set_gamma(data_cnt);
|
||||
}
|
||||
|
||||
video_set_gamma();
|
||||
return noErr;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue