X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=pico%2Fpico.h;h=7b1a89303471a675dbb11743bec23ed5407cdc7b;hb=be20816c4c487c4b114aa444b1a5819d5785b118;hp=92ba9cffcd6662b762fb56453281a26db2808e53;hpb=19954be1966a04304b16d9180b003ec8ca3bc532;p=picodrive.git diff --git a/pico/pico.h b/pico/pico.h index 92ba9cf..7b1a893 100644 --- a/pico/pico.h +++ b/pico/pico.h @@ -34,6 +34,9 @@ extern void cache_flush_d_inval_i(const void *start_addr, const void *end_addr); // this one should handle display mode changes extern void emu_video_mode_change(int start_line, int line_count, int is_32cols); +// this must switch to 32bpp mode +extern void emu_32x_startup(void); + // Pico.c #define POPT_EN_FM (1<< 0) // 00 000x #define POPT_EN_PSG (1<< 1) @@ -55,14 +58,16 @@ extern void emu_video_mode_change(int start_line, int line_count, int is_32cols) #define POPT_EN_SVP_DRC (1<<17) #define POPT_DIS_SPRITE_LIM (1<<18) #define POPT_DIS_IDLE_DET (1<<19) +#define POPT_EN_32X (1<<20) +#define POPT_EN_PWM (1<<21) extern int PicoOpt; // bitfield + #define PAHW_MCD (1<<0) #define PAHW_32X (1<<1) #define PAHW_SVP (1<<2) #define PAHW_PICO (1<<3) #define PAHW_SMS (1<<4) extern int PicoAHW; // Pico active hw -extern int PicoVer; extern int PicoSkipFrame; // skip rendering frame, but still do sound (if enabled) and emulation stuff extern int PicoRegionOverride; // override the region detection 0: auto, 1: Japan NTSC, 2: Japan PAL, 4: US, 8: Europe extern int PicoAutoRgnOrder; // packed priority list of regions, for example 0x148 means this detection order: EUR, USA, JAP @@ -71,6 +76,7 @@ void PicoInit(void); void PicoExit(void); void PicoPower(void); int PicoReset(void); +void PicoLoopPrepare(void); void PicoFrame(void); void PicoFrameDrawOnly(void); extern int PicoPad[2]; // Joypads, format is MXYZ SACB RLDU @@ -140,7 +146,6 @@ int pm_seek(pm_file *stream, long offset, int whence); int pm_close(pm_file *fp); int PicoCartLoad(pm_file *f,unsigned char **prom,unsigned int *psize,int is_sms); int PicoCartInsert(unsigned char *rom,unsigned int romsize); -void Byteswap(unsigned char *data,int len); void PicoCartUnload(void); extern void (*PicoCartLoadProgressCB)(int percent); extern void (*PicoCDLoadProgressCB)(const char *fname, int percent); @@ -165,6 +170,7 @@ extern int PicoDrawMask; #define PDRAW_LAYERA_ON (1<<3) #define PDRAW_SPRITES_LOW_ON (1<<4) #define PDRAW_SPRITES_HI_ON (1<<7) +#define PDRAW_32X_ON (1<<8) // internals #define PDRAW_SPRITES_MOVED (1<<0) // (asm) #define PDRAW_WND_DIFF_PRIO (1<<1) // not all window tiles use same priority