X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=platform%2Fwin32%2Fplat.c;h=54af82924a1651378584e5ec2a9d0f3ad1904d2c;hb=572ab2edc4660438fc109684d228daadfd40d47e;hp=e5e2f7e76b666e9d9a1c564884b221c1cf28dbba;hpb=d08e73261434dd37ec156d37094be98ceb6944c0;p=picodrive.git diff --git a/platform/win32/plat.c b/platform/win32/plat.c index e5e2f7e..54af829 100644 --- a/platform/win32/plat.c +++ b/platform/win32/plat.c @@ -1,3 +1,10 @@ +/* + * PicoDrive + * (C) notaz, 2009,2010 + * + * This work is licensed under the terms of MAME license. + * See COPYING file in the top-level directory. + */ #include #include @@ -11,10 +18,8 @@ #include "main.h" static unsigned short screen_buff[320 * 240]; -static unsigned char PicoDraw2FB_[(8+320) * (8+240+8)]; -unsigned char *PicoDraw2FB = PicoDraw2FB_; - -char cpu_clk_name[] = "unused"; +const char *renderer_names[] = { NULL }; +const char *renderer_names32x[] = { NULL }; void plat_init(void) { @@ -59,7 +64,6 @@ int plat_wait_event(int *fds_hnds, int count, int timeout_ms) void pemu_prep_defconfig(void) { memset(&defaultConfig, 0, sizeof(defaultConfig)); - defaultConfig.s_PicoOpt|= POPT_6BTN_PAD; // for xmen proto defaultConfig.s_PicoCDBuffers = 0; defaultConfig.Frameskip = 0; } @@ -68,17 +72,10 @@ void pemu_validate_config(void) { } -static int EmuScanBegin16(unsigned int num) -{ - DrawLineDest = (unsigned short *) g_screen_ptr + g_screen_width * num; - - return 0; -} - void pemu_loop_prep(void) { - PicoDrawSetColorFormat(1); - PicoScanBegin = EmuScanBegin16; + PicoDrawSetOutFormat(PDF_RGB555, 1); + PicoDrawSetOutBuf(g_screen_ptr, g_screen_ppitch * 2); pemu_sound_start(); } @@ -87,7 +84,7 @@ void pemu_loop_end(void) pemu_sound_stop(); } -void pemu_forced_frame(int opts) +void pemu_forced_frame(int no_scale, int do_emu) { } @@ -105,10 +102,10 @@ void plat_video_wait_vsync(void) { } -void plat_video_toggle_renderer(int is_next, int force_16bpp, int is_menu) +void plat_video_toggle_renderer(int change, int is_menu) { // this will auto-select SMS/32X renderers - PicoDrawSetColorFormat(1); + PicoDrawSetOutFormat(PDF_RGB555, 1); } void emu_video_mode_change(int start_line, int line_count, int is_32cols) @@ -126,7 +123,7 @@ static int sndbuff[2*44100/50/2 + 4]; static void update_sound(int len) { /* avoid writing audio when lagging behind to prevent audio lag */ - if (PicoSkipFrame != 2) + if (PicoIn.skipFrame != 2) DSoundUpdate(sndbuff, (currentConfig.EmuOpt & EOPT_NO_FRMLIMIT) ? 0 : 1); } @@ -134,7 +131,7 @@ void pemu_sound_start(void) { int ret; - PsndOut = NULL; + PicoIn.sndOut = NULL; currentConfig.EmuOpt &= ~EOPT_EXT_FRMLIMIT; // prepare sound stuff @@ -142,14 +139,14 @@ void pemu_sound_start(void) { PsndRerate(0); - ret = DSoundInit(FrameWnd, PsndRate, (PicoOpt & POPT_EN_STEREO) ? 1 : 0, PsndLen); + ret = DSoundInit(FrameWnd, PicoIn.sndRate, (PicoIn.opt & POPT_EN_STEREO) ? 1 : 0, Pico.snd.len); if (ret != 0) { lprintf("dsound init failed\n"); return; } - PsndOut = (void *)sndbuff; - PicoWriteSound = update_sound; + PicoIn.sndOut = (void *)sndbuff; + PicoIn.writeSound = update_sound; currentConfig.EmuOpt |= EOPT_EXT_FRMLIMIT; } } @@ -224,12 +221,12 @@ void plat_debug_cat(char *str) } // required by pico -int mp3_get_bitrate(FILE *f, int size) +int mp3_get_bitrate(void *f, int size) { return 128; } -void mp3_start_play(FILE *f, int pos) +void mp3_start_play(void *f, int pos) { }