1
/* FCE Ultra - NES/Famicom Emulator
3
* Copyright notice for this file:
4
* Copyright (C) 2007 CaH4e3
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 2 of the License, or
9
* (at your option) any later version.
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, write to the Free Software
18
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25
static uint8 *WRAM=NULL;
26
static uint32 WRAMSIZE;
28
static SFORMAT StateRegs[]=
34
static void Sync(void)
37
setprg8r(0x10,0x6000,0);
38
setprg32(0x8000,reg&0x1f);
39
setmirror(((reg&0x20)>>5)^1);
42
static DECLFW(M177Write)
48
static void M177Power(void)
52
SetReadHandler(0x6000,0x7fff,CartBR);
53
SetWriteHandler(0x6000,0x7fff,CartBW);
54
SetReadHandler(0x8000,0xFFFF,CartBR);
55
SetWriteHandler(0x8000,0xFFFF,M177Write);
58
static void M177Close(void)
65
static void StateRestore(int version)
70
void Mapper177_Init(CartInfo *info)
72
info->Power=M177Power;
73
info->Close=M177Close;
74
GameStateRestore=StateRestore;
77
WRAM=(uint8*)FCEU_gmalloc(WRAMSIZE);
78
SetupCartPRGMapping(0x10,WRAM,WRAMSIZE,1);
79
AddExState(WRAM, WRAMSIZE, 0, "WRAM");
82
info->SaveGame[0]=WRAM;
83
info->SaveGameLen[0]=WRAMSIZE;
86
AddExState(&StateRegs, ~0, 0, 0);