/* FCE Ultra - NES/Famicom Emulator * * Copyright notice for this file: * Copyright (C) 1998 Bero * Copyright (C) 2002 Xodnizel * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef _FCEU_INES_H #define _FCEU_INES_H typedef struct { char ID[4]; /*NES^Z*/ uint8 ROM_size; uint8 VROM_size; uint8 ROM_type; uint8 ROM_type2; uint8 ROM_type3; uint8 upper_PRG_CHR_size; uint8 PRGRAM_size; uint8 CHRRAM_size; uint8 Region; uint8 VS_hardware; uint8 MiscRoms; uint8 ExpDevice; } iNES_HEADER; extern uint8 *trainerpoo; extern uint8 *ROM; extern uint8 *VROM; extern uint8 *MiscROM; extern uint32 ROM_size; /* prg size in 16K chunks */ extern uint32 VROM_size; /* chr size in 8K chunks */ extern uint32 MiscROM_size; extern iNES_HEADER head; void NSFVRC6_Init(void); void NSFMMC5_Init(void); void NSFAY_Init(void); void NSFN106_Init(void); void NSFVRC7_Init(void); void Mapper1_Init(CartInfo *); void Mapper4_Init(CartInfo *); void Mapper5_Init(CartInfo *); void Mapper9_Init(CartInfo *); void Mapper10_Init(CartInfo *); void Mapper11_Init(CartInfo *); void Mapper12_Init(CartInfo *); void Mapper15_Init(CartInfo *); void Mapper16_Init(CartInfo *); void Mapper18_Init(CartInfo *); void Mapper19_Init(CartInfo *); void Mapper21_Init(CartInfo *); void Mapper22_Init(CartInfo *); void Mapper23_Init(CartInfo *); void Mapper24_Init(CartInfo *); void Mapper25_Init(CartInfo *); void Mapper26_Init(CartInfo *); void Mapper28_Init(CartInfo *); void Mapper29_Init(CartInfo *); void Mapper31_Init(CartInfo *); void Mapper32_Init(CartInfo *); void Mapper33_Init(CartInfo *); void Mapper34_Init(CartInfo *); void Mapper35_Init(CartInfo *); void Mapper36_Init(CartInfo *); void Mapper37_Init(CartInfo *); void Mapper38_Init(CartInfo *); void Mapper40_Init(CartInfo *); void Mapper41_Init(CartInfo *); void Mapper42_Init(CartInfo *); void Mapper43_Init(CartInfo *); void Mapper44_Init(CartInfo *); void Mapper45_Init(CartInfo *); void Mapper46_Init(CartInfo *); void Mapper47_Init(CartInfo *); void Mapper48_Init(CartInfo *); void Mapper49_Init(CartInfo *); void Mapper50_Init(CartInfo *); void Mapper51_Init(CartInfo *); void Mapper52_Init(CartInfo *); void Mapper57_Init(CartInfo *); void Mapper58_Init(CartInfo *); void Mapper59_Init(CartInfo *); void Mapper60_Init(CartInfo *); void Mapper61_Init(CartInfo *); void Mapper62_Init(CartInfo *); void Mapper63_Init(CartInfo *); void Mapper64_Init(CartInfo *); void Mapper65_Init(CartInfo *); void Mapper67_Init(CartInfo *); void Mapper68_Init(CartInfo *); void Mapper69_Init(CartInfo *); void Mapper70_Init(CartInfo *); void Mapper71_Init(CartInfo *); void Mapper72_Init(CartInfo *); void Mapper73_Init(CartInfo *); void Mapper74_Init(CartInfo *); void Mapper75_Init(CartInfo *); void Mapper76_Init(CartInfo *); void Mapper77_Init(CartInfo *); void Mapper78_Init(CartInfo *); void Mapper79_Init(CartInfo *); void Mapper80_Init(CartInfo *); void Mapper81_Init(CartInfo *); void Mapper82_Init(CartInfo *); void Mapper83_Init(CartInfo *); void Mapper85_Init(CartInfo *); void Mapper86_Init(CartInfo *); void Mapper87_Init(CartInfo *); void Mapper88_Init(CartInfo *); void Mapper89_Init(CartInfo *); void Mapper90_Init(CartInfo *); void Mapper91_Init(CartInfo *); void Mapper92_Init(CartInfo *); void Mapper93_Init(CartInfo *); void Mapper94_Init(CartInfo *); void Mapper95_Init(CartInfo *); void Mapper96_Init(CartInfo *); void Mapper97_Init(CartInfo *); void Mapper99_Init(CartInfo *); void Mapper101_Init(CartInfo *); void Mapper103_Init(CartInfo *); void Mapper104_Init(CartInfo *); void Mapper105_Init(CartInfo *); void Mapper106_Init(CartInfo *); void Mapper107_Init(CartInfo *); void Mapper108_Init(CartInfo *); void Mapper111_Init(CartInfo *); void Mapper112_Init(CartInfo *); void Mapper113_Init(CartInfo *); void Mapper114_Init(CartInfo *); void Mapper115_Init(CartInfo *); void Mapper116_Init(CartInfo *); void Mapper117_Init(CartInfo *); void Mapper119_Init(CartInfo *); void Mapper120_Init(CartInfo *); void Mapper121_Init(CartInfo *); void Mapper122_Init(CartInfo *); void Mapper125_Init(CartInfo *); void Mapper126_Init(CartInfo *); void Mapper128_Init(CartInfo *); void Mapper132_Init(CartInfo *); void Mapper134_Init(CartInfo *); void Mapper136_Init(CartInfo *); void Mapper140_Init(CartInfo *); void Mapper144_Init(CartInfo *); void Mapper147_Init(CartInfo *); void Mapper151_Init(CartInfo *); void Mapper152_Init(CartInfo *); void Mapper153_Init(CartInfo *); void Mapper154_Init(CartInfo *); void Mapper155_Init(CartInfo *); void Mapper156_Init(CartInfo *); void Mapper157_Init(CartInfo *); void Mapper158_Init(CartInfo *); void Mapper159_Init(CartInfo *); void Mapper162_Init(CartInfo *); void Mapper163_Init(CartInfo *); void Mapper164_Init(CartInfo *); void Mapper165_Init(CartInfo *); void Mapper166_Init(CartInfo *); void Mapper167_Init(CartInfo *); void Mapper168_Init(CartInfo *); void Mapper170_Init(CartInfo *); void Mapper172_Init(CartInfo *); void Mapper173_Init(CartInfo *); void Mapper174_Init(CartInfo *); void Mapper175_Init(CartInfo *); void Mapper176_Init(CartInfo *); void Mapper177_Init(CartInfo *); void Mapper178_Init(CartInfo *); void Mapper180_Init(CartInfo *); void Mapper181_Init(CartInfo *); void Mapper182_Init(CartInfo *); void Mapper183_Init(CartInfo *); void Mapper184_Init(CartInfo *); void Mapper185_Init(CartInfo *); void Mapper186_Init(CartInfo *); void Mapper187_Init(CartInfo *); void Mapper188_Init(CartInfo *); void Mapper189_Init(CartInfo *); void Mapper191_Init(CartInfo *); void Mapper192_Init(CartInfo *); void Mapper193_Init(CartInfo *); void Mapper194_Init(CartInfo *); void Mapper195_Init(CartInfo *); void Mapper196_Init(CartInfo *); void Mapper197_Init(CartInfo *); void Mapper198_Init(CartInfo *); void Mapper199_Init(CartInfo *); void Mapper200_Init(CartInfo *); void Mapper201_Init(CartInfo *); void Mapper202_Init(CartInfo *); void Mapper203_Init(CartInfo *); void Mapper204_Init(CartInfo *); void Mapper205_Init(CartInfo *); void Mapper206_Init(CartInfo *); void Mapper207_Init(CartInfo *); void Mapper208_Init(CartInfo *); void Mapper209_Init(CartInfo *); void Mapper210_Init(CartInfo *); void Mapper211_Init(CartInfo *); void Mapper212_Init(CartInfo *); void Mapper213_Init(CartInfo *); void Mapper214_Init(CartInfo *); void Mapper216_Init(CartInfo *); void Mapper217_Init(CartInfo *); void Mapper218_Init(CartInfo *); void Mapper220_Init(CartInfo *); void Mapper222_Init(CartInfo *); void Mapper224_Init(CartInfo *); void Mapper225_Init(CartInfo *); void Mapper226_Init(CartInfo *); void Mapper227_Init(CartInfo *); void Mapper228_Init(CartInfo *); void Mapper229_Init(CartInfo *); void Mapper230_Init(CartInfo *); void Mapper231_Init(CartInfo *); void Mapper232_Init(CartInfo *); void Mapper233_Init(CartInfo *); void Mapper234_Init(CartInfo *); void Mapper235_Init(CartInfo *); void Mapper236_Init(CartInfo *); void Mapper237_Init(CartInfo *); void Mapper239_Init(CartInfo *); void Mapper240_Init(CartInfo *); void Mapper241_Init(CartInfo *); void Mapper242_Init(CartInfo *); void Mapper244_Init(CartInfo *); void Mapper245_Init(CartInfo *); void Mapper246_Init(CartInfo *); void Mapper249_Init(CartInfo *); void Mapper250_Init(CartInfo *); void Mapper252_Init(CartInfo *); void Mapper253_Init(CartInfo *); void Mapper254_Init(CartInfo *); void Mapper255_Init(CartInfo *); void Mapper270_Init(CartInfo *); void Mapper272_Init(CartInfo *); void Mapper273_Init(CartInfo *); void Mapper277_Init(CartInfo *); void Mapper280_Init(CartInfo *); void Mapper281_Init(CartInfo *); void Mapper282_Init(CartInfo *); void Mapper283_Init(CartInfo *); void Mapper291_Init(CartInfo *); void Mapper295_Init(CartInfo *); void J2282_Init(CartInfo *); void Mapper265_Init(CartInfo *); void Mapper267_Init(CartInfo *); void Mapper268_Init(CartInfo *); void Mapper269_Init(CartInfo *); void Mapper271_Init(CartInfo *); void Mapper288_Init(CartInfo *); void Mapper293_Init(CartInfo *); void Mapper294_Init(CartInfo *); void Mapper297_Init(CartInfo *); void Mapper301_Init(CartInfo *); void Mapper310_Init(CartInfo *); void Mapper319_Init(CartInfo *); void Mapper321_Init(CartInfo *); void Mapper326_Init(CartInfo *); void Mapper330_Init(CartInfo *); void Mapper334_Init(CartInfo *); void Mapper340_Init(CartInfo *); void Mapper351_Init(CartInfo *); void Mapper352_Init(CartInfo *); void Mapper353_Init(CartInfo *); void Mapper354_Init(CartInfo *); void Mapper356_Init(CartInfo *); void Mapper357_Init(CartInfo *); void Mapper358_Init(CartInfo *); void Mapper359_Init(CartInfo *); void Mapper360_Init(CartInfo *); void Mapper361_Init(CartInfo *); void Mapper362_Init(CartInfo *); void Mapper363_Init(CartInfo *); void Mapper364_Init(CartInfo *); void Mapper366_Init(CartInfo *); void Mapper367_Init(CartInfo *); void Mapper368_Init(CartInfo *); void Mapper369_Init(CartInfo *); void Mapper370_Init(CartInfo *); void Mapper372_Init(CartInfo *); void Mapper373_Init(CartInfo *); void Mapper374_Init(CartInfo *); void Mapper375_Init(CartInfo *); void Mapper376_Init(CartInfo *); void Mapper377_Init(CartInfo *); void Mapper378_Init(CartInfo *); void Mapper379_Init(CartInfo *); void Mapper380_Init(CartInfo *); void Mapper381_Init(CartInfo *); void Mapper382_Init(CartInfo *); void Mapper383_Init(CartInfo *); void Mapper384_Init(CartInfo *); void Mapper385_Init(CartInfo *); void Mapper386_Init(CartInfo *); void Mapper387_Init(CartInfo *); void Mapper388_Init(CartInfo *); void Mapper389_Init(CartInfo *); void Mapper390_Init(CartInfo *); void Mapper391_Init(CartInfo *); void Mapper392_Init(CartInfo *); void Mapper393_Init(CartInfo *); void Mapper394_Init(CartInfo *); void Mapper395_Init(CartInfo *); void Mapper396_Init(CartInfo *); void Mapper397_Init(CartInfo *); void Mapper398_Init(CartInfo *); void Mapper399_Init(CartInfo *); void Mapper400_Init(CartInfo *); void Mapper401_Init(CartInfo *); void Mapper403_Init(CartInfo *); void Mapper404_Init(CartInfo *); void Mapper406_Init(CartInfo *); void Mapper409_Init(CartInfo *); void Mapper410_Init(CartInfo *); void Mapper411_Init(CartInfo *); void Mapper412_Init(CartInfo *); void Mapper413_Init(CartInfo *); void Mapper414_Init(CartInfo *); void Mapper415_Init(CartInfo *); void Mapper416_Init(CartInfo *); void Mapper417_Init(CartInfo *); void Mapper418_Init(CartInfo *); void Mapper420_Init(CartInfo *); void Mapper421_Init(CartInfo *); void Mapper422_Init(CartInfo *); void Mapper428_Init(CartInfo *); void Mapper429_Init(CartInfo *); void Mapper430_Init(CartInfo *); void Mapper431_Init(CartInfo *); void Mapper432_Init(CartInfo *); void Mapper433_Init(CartInfo *); void Mapper434_Init(CartInfo *); void Mapper435_Init(CartInfo *); void Mapper436_Init(CartInfo *); void Mapper437_Init(CartInfo *); void Mapper438_Init(CartInfo *); void Mapper439_Init(CartInfo *); void Mapper441_Init(CartInfo *); void Mapper443_Init(CartInfo *); void Mapper444_Init(CartInfo *); void Mapper445_Init(CartInfo *); void Mapper446_Init(CartInfo *); void Mapper447_Init(CartInfo *); void Mapper448_Init(CartInfo *); void Mapper449_Init(CartInfo *); void Mapper450_Init(CartInfo *); void Mapper451_Init(CartInfo *); void Mapper452_Init(CartInfo *); void Mapper453_Init(CartInfo *); void Mapper454_Init(CartInfo *); void Mapper455_Init(CartInfo *); void Mapper456_Init(CartInfo *); void Mapper457_Init(CartInfo *); void Mapper458_Init(CartInfo *); void Mapper459_Init(CartInfo *); void Mapper460_Init(CartInfo *); void Mapper461_Init(CartInfo *); void Mapper462_Init(CartInfo *); void Mapper463_Init(CartInfo *); void Mapper464_Init(CartInfo *); void Mapper465_Init(CartInfo *); void Mapper466_Init(CartInfo *); void Mapper467_Init(CartInfo *); void Mapper468_Init(CartInfo *); void INX_007T_Init(CartInfo* info); /* Mapper 470 */ void Mapper471_Init(CartInfo *); void Mapper472_Init(CartInfo *); void Mapper473_Init(CartInfo *); void Mapper474_Init(CartInfo *); void Mapper475_Init(CartInfo *); void Mapper476_Init(CartInfo *); void Mapper477_Init(CartInfo *); void Mapper478_Init(CartInfo *); void Mapper480_Init(CartInfo *); void Mapper481_Init(CartInfo *); void Mapper482_Init(CartInfo *); void Mapper483_Init(CartInfo *); void Mapper484_Init(CartInfo *); void Mapper485_Init(CartInfo *); void Mapper486_Init(CartInfo *); void Mapper487_Init(CartInfo *); void Mapper488_Init(CartInfo *); void Mapper489_Init(CartInfo *); void Mapper490_Init(CartInfo *); void Mapper491_Init(CartInfo *); void Mapper492_Init(CartInfo *); void Mapper493_Init(CartInfo *); void Mapper494_Init(CartInfo *); void Mapper495_Init(CartInfo *); void Mapper498_Init(CartInfo *); void Mapper499_Init(CartInfo *); void Mapper500_Init(CartInfo *); void Mapper501_Init(CartInfo *); void Mapper502_Init(CartInfo *); void Mapper503_Init(CartInfo *); void Mapper504_Init(CartInfo *); void Mapper505_Init(CartInfo *); void Mapper506_Init(CartInfo *); void Mapper507_Init(CartInfo *); void Mapper508_Init(CartInfo *); void Mapper509_Init(CartInfo *); void Mapper510_Init(CartInfo *); void Mapper511_Init(CartInfo *); void Mapper512_Init(CartInfo *); void Mapper514_Init(CartInfo *); void Mapper516_Init(CartInfo *); void Mapper518_Init(CartInfo *); void Mapper520_Init(CartInfo *); void Mapper523_Init(CartInfo *); void Mapper528_Init(CartInfo *); void Mapper533_Init(CartInfo *); void Mapper534_Init(CartInfo *); void Mapper536_Init(CartInfo *); void Mapper537_Init(CartInfo *); void Mapper538_Init(CartInfo *); void Mapper539_Init(CartInfo *); void Mapper540_Init(CartInfo *); void Mapper541_Init(CartInfo *); void Mapper542_Init(CartInfo *); void Mapper543_Init(CartInfo *); void Mapper544_Init(CartInfo *); void Mapper545_Init(CartInfo *); void Mapper546_Init(CartInfo *); void Mapper548_Init(CartInfo *); void Mapper549_Init(CartInfo *); void Mapper550_Init(CartInfo *); void Mapper552_Init(CartInfo *); void Mapper553_Init(CartInfo *); void Mapper554_Init(CartInfo *); void Mapper555_Init(CartInfo *); void Mapper556_Init(CartInfo *); void Mapper557_Init(CartInfo *); void Mapper558_Init(CartInfo *); void Mapper559_Init(CartInfo *); void Mapper561_562_Init(CartInfo *); void Mapper563_Init(CartInfo *); void Mapper564_Init(CartInfo *); void Mapper565_Init(CartInfo *); void Mapper566_Init(CartInfo *); void Mapper567_Init(CartInfo *); void Mapper568_Init(CartInfo *); void Mapper569_Init(CartInfo *); void Mapper570_Init(CartInfo *); void Mapper571_Init(CartInfo *); void Mapper572_Init(CartInfo *); void Mapper573_Init(CartInfo *); void Mapper574_Init(CartInfo *); void Mapper575_Init(CartInfo *); void Mapper576_Init(CartInfo *); void Mapper577_Init(CartInfo *); void Mapper578_Init(CartInfo *); void Mapper579_Init(CartInfo *); void Mapper580_Init(CartInfo *); void Mapper581_Init(CartInfo *); void Mapper582_Init(CartInfo *); void Mapper583_Init(CartInfo *); void Mapper584_Init(CartInfo *); void Mapper585_Init(CartInfo *); void Mapper586_Init(CartInfo *); void Mapper587_Init(CartInfo *); void Mapper588_Init(CartInfo *); void Mapper589_Init(CartInfo *); void Mapper590_Init(CartInfo *); void Mapper591_Init(CartInfo *); void Mapper592_Init(CartInfo *); void Mapper594_Init(CartInfo *); void Mapper595_Init(CartInfo *); void Mapper596_Init(CartInfo *); void Mapper597_Init(CartInfo *); void Mapper598_Init(CartInfo *); void Mapper599_Init(CartInfo *); void FFE_Init(CartInfo *); #endif