From 395a3df24c41ebf42d0eed0412fc0d416fd9d3bf Mon Sep 17 00:00:00 2001 From: negativeExponent Date: Sat, 19 Feb 2022 02:23:06 +0800 Subject: [PATCH] Add mapper 385 --- src/boards/addrlatch.c | 15 +++++++++++++++ src/ines.c | 1 + src/ines.h | 1 + 3 files changed, 17 insertions(+) diff --git a/src/boards/addrlatch.c b/src/boards/addrlatch.c index 43946bf..31235eb 100644 --- a/src/boards/addrlatch.c +++ b/src/boards/addrlatch.c @@ -544,6 +544,21 @@ void Mapper288_Init(CartInfo *info) { AddExState(&dipswitch, 1, 0, "DIPSW"); } +/*------------------ Map 385 ---------------------------*/ + +static void M385Sync(void) { + int32 mirror = latche & 1; + int32 bank = (latche >> 1) & 0x7; + setprg16(0x8000, bank); + setprg16(0xc000, bank); + setmirror(mirror ^ 1); + setchr8(0); +} + +void Mapper385_Init(CartInfo *info) { + Latch_Init(info, M385Sync, NULL, 0x0000, 0x8000, 0xFFFF, 0); +} + /*------------------ Map 541 ---------------------------*/ /* LittleCom 160-in-1 multicart */ static void M541Sync(void) { diff --git a/src/ines.c b/src/ines.c index 37b3d1c..5569851 100644 --- a/src/ines.c +++ b/src/ines.c @@ -776,6 +776,7 @@ INES_BOARD_BEGIN() INES_BOARD( "KN-42", 381, Mapper381_Init ) INES_BOARD( "830928C", 382, Mapper382_Init ) INES_BOARD( "YY840708C", 383, Mapper383_Init ) + INES_BOARD( "NTDEC 2779", 385, Mapper385_Init ) INES_BOARD( "YY860729C", 386, Mapper386_Init ) INES_BOARD( "YY850735C", 387, Mapper387_Init ) INES_BOARD( "YY850835C", 388, Mapper388_Init ) diff --git a/src/ines.h b/src/ines.h index 6307777..b57e80e 100644 --- a/src/ines.h +++ b/src/ines.h @@ -287,6 +287,7 @@ void Mapper380_Init(CartInfo *); void Mapper381_Init(CartInfo *); void Mapper382_Init(CartInfo *); void Mapper383_Init(CartInfo *); +void Mapper385_Init(CartInfo *); void Mapper386_Init(CartInfo *); void Mapper387_Init(CartInfo *); void Mapper388_Init(CartInfo *);