#include "crc32.h"
#include "akiko.h"
#include "xwin.h"
+#include "gfxboard.h"
#define DEBUG
#ifdef DEBUG
static void cartridge_enter(void)
{
- struct amigadisplay *ad = &adisplays[0];
-#ifdef PICASSO96
- stored_picasso_on = ad->picasso_requested_on;
- ad->picasso_requested_on = 0;
-#endif
+ stored_picasso_on = gfxboard_set(0, false) ? 1 : 0;
}
static void cartridge_exit (void)
{
- struct amigadisplay *ad = &adisplays[0];
-#ifdef PICASSO96
if (stored_picasso_on > 0)
- ad->picasso_requested_on = 1;
+ gfxboard_set(0, true);
stored_picasso_on = -1;
-#endif
}
static uae_u32 REGPARAM2 hrtmem3_bget (uaecptr addr)
void action_replay_reset (bool hardreset, bool keyboardreset)
{
+ stored_picasso_on = -1;
ar_mapped = -1;
if (hrtmemory) {
if (isrestore ()) {
return true;
}
+bool gfxboard_set(int monid, bool rtg)
+{
+ bool r;
+ struct amigadisplay *ad = &adisplays[monid];
+ r = ad->picasso_on;
+ if (rtg) {
+ ad->picasso_requested_on = 1;
+ } else {
+ ad->picasso_requested_on = 0;
+ }
+ set_config_changed();
+ return r;
+}
+
void gfxboard_rtg_disable(int monid, int index)
{
if (monid > 0)
extern bool gfxboard_rtg_enable_initial(int monid, int);
extern void gfxboard_rtg_disable(int monid, int);
extern bool gfxboard_init_board(struct autoconfig_info*);
+extern bool gfxboard_set(int monid, bool rtg);
extern struct gfxboard_func a2410_func;
extern struct gfxboard_func harlequin_func;