// Pico Library - Header File\r
\r
// (c) Copyright 2004 Dave, All rights reserved.\r
-// (c) Copyright 2006-2008 notaz, All rights reserved.\r
+// (c) Copyright 2006-2009 notaz, All rights reserved.\r
// Free for non-commercial use.\r
\r
// For commercial use, separate licencing terms must be obtained.\r
// used by SVP dynarec\r
extern void cache_flush_d_inval_i(const void *start_addr, const void *end_addr);\r
\r
+// this one should handle display mode changes\r
+extern void emu_video_mode_change(int start_line, int line_count, int is_32cols);\r
+\r
+// this must switch to 32bpp mode\r
+extern void emu_32x_startup(void);\r
+\r
// Pico.c\r
#define POPT_EN_FM (1<< 0) // 00 000x\r
#define POPT_EN_PSG (1<< 1)\r
#define POPT_EN_SVP_DRC (1<<17)\r
#define POPT_DIS_SPRITE_LIM (1<<18)\r
#define POPT_DIS_IDLE_DET (1<<19)\r
+#define POPT_DIS_32X (1<<20)\r
extern int PicoOpt; // bitfield\r
+\r
#define PAHW_MCD (1<<0)\r
#define PAHW_32X (1<<1)\r
#define PAHW_SVP (1<<2)\r
void *param; /* additional file related field */\r
unsigned int size; /* size */\r
pm_type type;\r
+ char ext[4];\r
} pm_file;\r
pm_file *pm_open(const char *path);\r
size_t pm_read(void *ptr, size_t bytes, pm_file *stream);\r
int pm_close(pm_file *fp);\r
int PicoCartLoad(pm_file *f,unsigned char **prom,unsigned int *psize,int is_sms);\r
int PicoCartInsert(unsigned char *rom,unsigned int romsize);\r
-void Byteswap(unsigned char *data,int len);\r
void PicoCartUnload(void);\r
extern void (*PicoCartLoadProgressCB)(int percent);\r
extern void (*PicoCDLoadProgressCB)(const char *fname, int percent);\r
#define PDRAW_LAYERA_ON (1<<3)\r
#define PDRAW_SPRITES_LOW_ON (1<<4)\r
#define PDRAW_SPRITES_HI_ON (1<<7)\r
+#define PDRAW_32X_ON (1<<8)\r
// internals\r
#define PDRAW_SPRITES_MOVED (1<<0) // (asm)\r
#define PDRAW_WND_DIFF_PRIO (1<<1) // not all window tiles use same priority\r
#define PDRAW_SONIC_MODE (1<<5) // mid-frame palette changes for 8bit renderer\r
#define PDRAW_PLANE_HI_PRIO (1<<6) // have layer with all hi prio tiles (mk3)\r
#define PDRAW_SHHI_DONE (1<<7) // layer sh/hi already processed\r
-extern int rendstatus;\r
+#define PDRAW_240LINES (1<<8) // 240 line display (224 if not set)\r
+extern int rendstatus, rendstatus_old;\r
extern unsigned short HighPal[0x100];\r
\r
// Draw2.c\r
extern unsigned short *PicoCramHigh; // pointer to CRAM buff (0x40 shorts), converted to native device color (works only with 16bit for now)\r
extern void (*PicoPrepareCram)(); // prepares PicoCramHigh for renderer to use\r
\r
-// mode4.c\r
-void PicoDrawSetColorFormatMode4(int which);\r
-\r
// sound.c\r
extern int PsndRate,PsndLen;\r
extern short *PsndOut;\r