int vbetest(void)
{
- int i, j, nmodes, mx, my;
+ int i, j, nmodes, mx, my, idx;
unsigned int st, prev_st = 0;
struct video_mode vi;
uint16_t *fbptr;
}
}
- if(!(framebuf = set_video_mode(find_video_mode(640, 480, 16)))) {
+ if((idx = find_video_mode_idx(640, 480, 16)) == -1) {
+ return -1;
+ }
+ video_mode_info(idx, &vi);
+
+ if(!(framebuf = set_video_mode(vi.mode))) {
return -1;
}
get_color_bits(&vi.rbits, &vi.gbits, &vi.bbits);
}
}
if(click) {
- printf("click!\n");
audio_play(22050, 1);
}
static int click_sound_callback(void *buffer, int size, void *cls)
{
if(click) {
- int i;
- signed char *ptr = buffer;
- signed char *src = snd_click;
- /*
- for(i=0; i<size; i++) {
- if((i / 32) & 1) {
- *ptr++ = -64;
- } else {
- *ptr++ = 64;
- }
- }
- */
- /*memcpy(buffer, snd_click, snd_click_size);*/
-
- for(i=0; i<snd_click_size; i++) {
- *ptr++ = *src++;
- }
-
+ memcpy(buffer, snd_click, snd_click_size);
click = 0;
return snd_click_size;
}