Commit Graph

277 Commits

Author SHA1 Message Date
negativeExponent
85ace685b9 mapper-related updates and fixes (#491)
* m116: Fix support for Huang-2 chip

* Provide 8K CHR ram if no CHR rom/ram is provided due to bad headers

* m15: Implement CHR write-protect

* Update Namco 106

- Cleanup save state struct
- Implement nametable mirroring
- fix sound issue (fceux)

Co-authored-by: negativeExponent <negativeExponent@users.noreply.github.com>
2022-02-01 08:14:16 +01:00
negativeExponent
3923dd51e7 Fix warnings (#484)
Co-authored-by: negativeExponent <negativeExponent@users.noreply.github.com>
2022-01-29 11:04:20 +01:00
negativeExponent
03c42f32b3 update (#483)
* Fix missing GameStateRestore

* Add mapper 403

Co-authored-by: negativeExponent <negativeExponent@users.noreply.github.com>
2022-01-24 15:53:53 +01:00
negativeExponent
758a51eacb couple of mapper fixes (#482)
* Fix a couple of mapper issues

- Implement info->Close, to free any unallocated memory (e.g. WRAM)
- Add missing GameStateRestore function
- Add missing state variable

* Simplify header parsing

* Update ines-correct.h

Co-authored-by: negativeExponent <negativeExponent@users.noreply.github.com>
2022-01-23 19:20:46 +01:00
twinaphex
eb06d17e79 Buildfixes for MSVC 2022-01-09 10:36:57 +01:00
NRS-NewRisingSun
d72c64e5d9 Exponential notation of NES 2.0 ROM sizes; mappers (#480)
* Support 2 MIB mapper 314 (Y2K 76-in-1)

* Mapper 57: Forgot one Sync() statement

* Mapper 83: Correction for 256 KiB PRG+512 KiB CHR games

* Mapper 114: Use NES 2.0 submapper field if available to differentiate between scrambling patterns

* NES 2.0: Support exponential notation of PRG/CHR sizes, thus adding support for 4 KiB and 8 KiB ROM files.

* Add mapper 553.

* Correct the database regarding the Nanjing game Pegasus Senya

* Add submapper 5 (HST-162) to mapper 176

* Add mapper 436

* Mapper 176.5 has a CNROM latch as well, though it works a bit differently than submapper 1's

* Added mapper 429

* Added mapper 380 submapper 1

* Added mapper 437

* Added mapper 456

* Forgot to include math.h for pow

* Added mapper 434

* Added mapper 452

* Added mapper 438

* Added mappers 391 and 444, corrected the mixup with BS-110 and NC7000M

* Added mapper 443. Added menu-switching funcionality to mapper 444

Co-authored-by: NewRisingSun <8vytz1+dhp372pv94ebg@sharklasers.com>
2022-01-06 08:22:18 +01:00
Autechre
8864f6e246 Merge pull request #471 from NRS-NewRisingSun/multicarts
Multicarts
2021-11-22 17:07:35 +01:00
NewRisingSun
8eb4e3b80c Mapper 196: Support IRQ for The Ancient & Modern Heroes 2021-11-14 17:10:33 +01:00
NewRisingSun
ea17977c20 Mapper 319: Use hp898f.c only for the old incorrect UNIF bank order, and 319.c for all NES 2.0 ROMs. Add CNROM mode and solder pad switch to the latter. 2021-11-14 17:01:55 +01:00
NewRisingSun
e12a40c2f4 Mapper 57: Change default DIP for YH-xxx Olympic multicarts, always reset to menu 2021-11-14 16:33:37 +01:00
NewRisingSun
7e26542737 Mapper 178: Always reset to menu. 2021-11-14 16:25:40 +01:00
NewRisingSun
46a8874fe9 CNROM/UNROM: Only emulate bus conflicts when explicitly specified by NES 2.0 header. 2021-11-14 16:20:10 +01:00
NewRisingSun
fe6c0c4513 Added support for mapper 383. 2021-11-14 16:11:24 +01:00
NewRisingSun
a4586e0aee Add UNROM modes and two-chip variant to mapper 242 2021-11-13 23:15:13 +01:00
NewRisingSun
b72007fa62 Add Realtec 8099 PCB support to mapper 236 2021-11-13 21:26:59 +01:00
twinaphex
a918869c18 Cut down on stdio.h includes 2021-11-02 17:25:04 +01:00
NewRisingSun
d99e6e563c Add support for mapper 376 2021-10-22 22:29:26 +02:00
NewRisingSun
aa8108a4e3 Add support for K-42001, make mapper 314 reset to menu. 2021-10-22 22:16:05 +02:00
NewRisingSun
5a10da375e Simplify mapper 219 emulation; add outer bank register. 2021-10-20 23:03:19 +02:00
jdgleaver
499f1c04de Replace direct file access with VFS routines 2021-10-20 16:58:35 +01:00
twinaphex
6881c1fd2a Some MSVC / C89 buildfixes 2021-09-25 03:41:39 +02:00
NewRisingSun
cb3a22daf0 Mapper 134: Add PRG/CHR A19 outer bank bits 2021-09-21 23:36:44 +02:00
NewRisingSun
21c829ba43 Add mapper 236 2021-09-21 22:21:44 +02:00
twinaphex
152198515c Buildfix 2021-06-14 15:26:43 +02:00
Autechre
18ca08dc8c Merge pull request #457 from NRS-NewRisingSun/mappers-16x
Mappers 162/163/164/558
2021-06-14 15:15:22 +02:00
NewRisingSun
07236cdd44 Comment style 2021-06-07 19:15:13 +02:00
twinaphex
3dbf430262 Wrap all fopen access - go through FCEUD_UTF8fopen isntead 2021-06-05 21:07:55 +02:00
NewRisingSun
d4c0d6e852 Update database for mappers 162-164/558 2021-05-30 10:05:10 +02:00
NewRisingSun
97ffbc5f83 Rewrite mappers 162,163,164; add mapper 558. Add EEPROM support to 164. 2021-05-30 01:08:41 +02:00
NewRisingSun
16bec051bf Make sure the comments reflect what the code actually does. 2021-05-28 22:03:19 +02:00
NewRisingSun
e1f4133bb2 Improve the UNIF to subType heuristics, since UNIF ROMs do not use the database in ines-correct.h. 2021-05-28 21:46:55 +02:00
NewRisingSun
ce2d55c3e8 Update the database for mapper 176 games. Set the iNES2 flag when the submapper field is used. 2021-05-28 21:22:18 +02:00
NewRisingSun
b02fa46cb1 Add support for Jncota variant, mapper 523 2021-05-26 20:36:06 +02:00
NewRisingSun
3cc9c32306 Use submappers and apply latest hardware findings. Use a heuristic to determine whether to change the DIP switch on every reset. 2021-05-26 20:19:25 +02:00
Autechre
107d886bd8 Merge pull request #446 from NRS-NewRisingSun/mapper59
Make mapper 59 always reset to menu. Add previous mapper 60 ROM files to iNES correction table.
2021-04-14 21:47:05 +02:00
NewRisingSun
825cdb8788 Add lock bit, necessary for NT-234's Road Fighter 2021-04-14 21:03:59 +02:00
NewRisingSun
9cfea5b7d1 Typos in 428.c 2021-04-14 19:29:08 +02:00
NewRisingSun
cf476194ce Combine UNIF AB-G1L, WELL-NO-DG450 and TF2740 into NES 2.0 Mapper 428. 2021-04-14 19:16:57 +02:00
NewRisingSun
86356c24c2 Make mapper 59 always reset to menu. Add mapper 59 multicarts that had previously been set to 60, colliding with 'Reset-based 4-in-1', to CRC-based correction table. 2021-04-14 19:09:02 +02:00
NewRisingSun
f3bdbd6581 Forgot one KT-008 hack remnant. 2021-04-10 21:40:01 +02:00
NewRisingSun
0657d21366 MINDKIDS accessible as NES 2.0 m268.1; mapper 224 is MINDKIDS; remove KT-008 remnants from mmc3.c 2021-04-10 14:38:49 +02:00
negativeExponent
50b9024080 more C89 fixes 2021-04-10 02:21:29 +08:00
negativeExponent
491975cf97 C89 fixes 2021-04-09 20:28:15 +08:00
twinaphex
cb9ea8f94e More C89 build fixes - for loop initial declarations 2021-04-08 17:50:56 +02:00
twinaphex
960528aa15 Style nits, C89 build fixes 2021-04-08 17:46:51 +02:00
NewRisingSun
d14623a966 readALU_DIP already returned a value in every case, but LGTM apparently did not get it. 2021-04-08 17:27:41 +02:00
NewRisingSun
c06e25ed30 Rewrite and unify J.Y. ASIC emulation. Add multicart mappers. 2021-04-08 17:06:17 +02:00
NewRisingSun
f4a5c2a420 Mapper 332: Add CNROM mode, support larger multicarts 2021-04-07 18:45:37 +02:00
NewRisingSun
82ce944aa3 Combine the very similar mappers 126/422/534/BS400/BS4040 into one common source code file. Rewrite for accuracy and compatibility with all known game dumps. Replace FUTURE KIDS hack with correct CNROM masking. 2021-01-31 15:51:09 +01:00
negativeExponent
8deefc3bef Fix warning 2020-11-17 06:52:11 +08:00