--- uae/src/include/savestate.h 2018/04/24 17:11:04 1.1.1.2 +++ uae/src/include/savestate.h 2018/04/24 17:18:44 1.1.1.5 @@ -10,23 +10,27 @@ /* functions to save byte,word or long word * independent of CPU's endianess */ -extern void save_u16_func (uae_u8 **, uae_u16); +extern void save_u64_func (uae_u8 **, uae_u64); extern void save_u32_func (uae_u8 **, uae_u32); +extern void save_u16_func (uae_u8 **, uae_u16); extern void save_u8_func (uae_u8 **, uae_u8); -extern uae_u16 restore_u16_func (uae_u8 **); -extern uae_u32 restore_u32_func (uae_u8 **); -extern uae_u8 restore_u8_func (uae_u8 **); +extern uae_u64 restore_u64_func (const uae_u8 **); +extern uae_u32 restore_u32_func (const uae_u8 **); +extern uae_u16 restore_u16_func (const uae_u8 **); +extern uae_u8 restore_u8_func (const uae_u8 **); -extern void save_string_func (uae_u8 **, char*); -extern char *restore_string_func (uae_u8 **); +extern void save_string_func (uae_u8 **, const char*); +extern char *restore_string_func (const uae_u8 **); -#define save_u16(x) save_u16_func (&dst, (x)) +#define save_u64(x) save_u64_func (&dst, (x)) #define save_u32(x) save_u32_func (&dst, (x)) +#define save_u16(x) save_u16_func (&dst, (x)) #define save_u8(x) save_u8_func (&dst, (x)) -#define restore_u16() restore_u16_func (&src) +#define restore_u64() restore_u64_func (&src) #define restore_u32() restore_u32_func (&src) +#define restore_u16() restore_u16_func (&src) #define restore_u8() restore_u8_func (&src) #define save_string(x) save_string_func (&dst, (x)) @@ -34,54 +38,62 @@ extern char *restore_string_func (uae_u8 /* save, restore and initialize routines for Amiga's subsystems */ -extern uae_u8 *restore_cpu (uae_u8 *); -extern uae_u8 *save_cpu (int *); +extern const uae_u8 *restore_cpu (const uae_u8 *); +extern uae_u8 *save_cpu (int *, uae_u8 *); -extern uae_u8 *restore_fpu (uae_u8 *); -extern uae_u8 *save_fpu (int *); +extern const uae_u8 *restore_fpu (const uae_u8 *); +extern uae_u8 *save_fpu (int *, uae_u8 *); -extern uae_u8 *restore_disk (int, uae_u8 *); -extern uae_u8 *save_disk (int, int *); -extern uae_u8 *restore_floppy (uae_u8 *src); -extern uae_u8 *save_floppy (int *len); +extern const uae_u8 *restore_disk (int, const uae_u8 *); +extern uae_u8 *save_disk (int, int *, uae_u8 *); +extern const uae_u8 *restore_floppy (const uae_u8 *src); +extern uae_u8 *save_floppy (int *len, uae_u8 *); extern void DISK_save_custom (uae_u32 *pdskpt, uae_u16 *pdsklen, uae_u16 *pdsksync, uae_u16 *pdskdatr, uae_u16 *pdskbytr); extern void DISK_restore_custom (uae_u32 pdskpt, uae_u16 pdsklength, uae_u16 pdskdatr, uae_u16 pdskbytr); -extern uae_u8 *restore_custom (uae_u8 *); +extern const uae_u8 *restore_custom (const uae_u8 *); extern uae_u8 *save_custom (int *, uae_u8 *, int); -extern uae_u8 *restore_custom_sprite (uae_u8 *src, int num); -extern uae_u8 *save_custom_sprite (int *len, int num); +extern const uae_u8 *restore_custom_sprite (int num, const uae_u8 *src); +extern uae_u8 *save_custom_sprite (int num, int *len); -extern uae_u8 *restore_custom_agacolors (uae_u8 *src); -extern uae_u8 *save_custom_agacolors (int *len); +extern const uae_u8 *restore_custom_agacolors (const uae_u8 *src); +extern uae_u8 *save_custom_agacolors (int *len, uae_u8 *); -extern uae_u8 *restore_custom_blitter (uae_u8 *src); +extern const uae_u8 *restore_custom_blitter (const uae_u8 *src); extern uae_u8 *save_custom_blitter (int *len); -extern uae_u8 *restore_audio (uae_u8 *, int); -extern uae_u8 *save_audio (int *, int); +extern const uae_u8 *restore_audio (int, const uae_u8 *); +extern uae_u8 *save_audio (int, int *); -extern uae_u8 *restore_cia (int, uae_u8 *); -extern uae_u8 *save_cia (int, int *); +extern const uae_u8 *restore_cia (int, const uae_u8 *); +extern uae_u8 *save_cia (int, int *, uae_u8 *); -extern uae_u8 *restore_expansion (uae_u8 *); -extern uae_u8 *save_expansion (int *); +extern const uae_u8 *restore_expansion (const uae_u8 *); +extern uae_u8 *save_expansion (int *, uae_u8 *); extern void restore_cram (int, long); extern void restore_bram (int, long); extern void restore_fram (int, long); extern void restore_zram (int, long); +extern void restore_a3000lram (int, size_t); +extern void restore_a3000hram (int, size_t); + +extern void restore_ram (size_t, uae_u8 *); + extern uae_u8 *save_cram (int *); extern uae_u8 *save_bram (int *); extern uae_u8 *save_fram (int *); extern uae_u8 *save_zram (int *); +extern uae_u8 *save_a3000lram (int *); +extern uae_u8 *save_a3000hram (int *); -extern uae_u8 *restore_rom (uae_u8 *); -extern uae_u8 *save_rom (int, int *); +extern const uae_u8 *restore_rom (const uae_u8 *); +extern uae_u8 *save_rom (int, int *, uae_u8 *); -extern void save_state (char *filename, char *description); -extern void restore_state (char *filename); +extern void save_state (const char *filename, const char *description); +extern void restore_state (const char *filename); +extern void savestate_restore_finish (void); extern void custom_save_state (void); @@ -92,4 +104,4 @@ extern void custom_save_state (void); extern int savestate_state; extern char *savestate_filename; -extern FILE *savestate_file; +extern struct zfile *savestate_file;