X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=Pico%2FPicoInt.h;h=832664d89de7a920e4226f4b26a20a42c428f30b;hb=83bd0b76aba19ff62368cfee76089e15579e3b7c;hp=b17277f2a6f8cb2bd55deb93523ce521a125590e;hpb=7a93adeb29f01f5867ff36606cd73a382b6ee0e3;p=picodrive.git diff --git a/Pico/PicoInt.h b/Pico/PicoInt.h index b17277f..832664d 100644 --- a/Pico/PicoInt.h +++ b/Pico/PicoInt.h @@ -198,13 +198,22 @@ struct mcd_misc typedef struct { unsigned char bios[0x20000]; // 128K - union { - unsigned char prg_ram[0x80000]; // 512K + union { // 512K + unsigned char prg_ram[0x80000]; unsigned char prg_ram_b[4][0x20000]; }; - unsigned char word_ram[0x40000]; // 256K - union { - unsigned char pcm_ram[0x10000]; // 64K + union { // 256K + struct { + unsigned char word_ram2M[0x40000]; + unsigned char unused[0x20000]; + }; + struct { + unsigned char unused[0x20000]; + unsigned char word_ram1M[2][0x20000]; + }; + }; + union { // 64K + unsigned char pcm_ram[0x10000]; unsigned char pcm_ram_b[0x10][0x1000]; }; unsigned char bram[0x2000]; // 8K @@ -227,6 +236,7 @@ int PicoAreaUnpackCpu(unsigned char *cpu, int is_sub); // cd/Area.c int PicoCdSaveState(void *file); int PicoCdLoadState(void *file); +int PicoCdLoadStateGfx(void *file); // Draw.c int PicoLine(int scan); @@ -247,7 +257,7 @@ void z80_write(unsigned char data, unsigned short a); void z80_write16(unsigned short data, unsigned short a); // cd/Memory.c -void PicoMemSetupCD(); +void PicoMemSetupCD(void); unsigned char PicoReadCD8 (unsigned int a); unsigned short PicoReadCD16(unsigned int a); unsigned int PicoReadCD32(unsigned int a); @@ -289,6 +299,13 @@ unsigned int PicoVideoRead(unsigned int a); void SRAMWriteEEPROM(unsigned int d); unsigned int SRAMReadEEPROM(); void SRAMUpdPending(unsigned int a, unsigned int d); +void memcpy16(unsigned short *dest, unsigned short *src, int count); +void memcpy32(int *dest, int *src, int count); +void memset32(int *dest, int c, int count); + +// cd/Misc.c +void wram_2M_to_1M(unsigned char *m); +void wram_1M_to_2M(unsigned char *m); #ifdef __cplusplus