Commit Graph

173 Commits

Author SHA1 Message Date
retro-wertz
748f27571d BMC-K-3088: Fix outer bank size 2019-07-12 06:40:18 +08:00
retro-wertz
429f6c4545 UNIF: Update boards based on last commit
- fixes (if necessary), update and cleanup the following boards that now dont need alternate mappings:
- this is part of migrating unif to be usuable in ines mappers
- boards affected in this commit are:
  SUPERVISION16IN1, GS-2004, GS-2013, UNL-SMB2J, MARIO1-MALEE2, UNL-SA-9602B, UNL-KS106C / RESETNROM-XIN1
  UNL-AC08, NES-NTBROM, BMC-K-3033, BMC-GN-26, BMC-GHOSTBUSTERS63IN1, BMC-830425C-4391T
  BMC-830134C, BMC-891227 / BMC-CTC-12IN1, BMC-JC-016-2, UNL-T4A54A, UNL-8157, BMC-T-262
  (might have forgotten to list some...)
2019-07-11 16:34:39 +08:00
retro-wertz
51199e59d7 NES 2.0: Add preliminary support for iNES 2.0 format
Currently reads and sets the following:
- mapper number up to 4095, prg rom size, chr rom size
- chr ram (volatile + non-volatile), region (ntsc, pal, dendy or multi-region)

todo: submapper handling, w-ram and prg nvram at least...
2019-07-08 09:25:00 +08:00
retro-wertz
7e9b3b146d UNIF: Initial implementation of game overrides (move exiting ones out of mapper code) 2019-07-02 19:34:55 +08:00
retro-wertz
06c99179be Add support for Mapper 237 (Teletubies Y2K multicart) 2019-07-02 09:37:00 +08:00
retro-wertz
dce349932c BMC-411120-C/K-3088: Update PRG banking. Combine both boards
- Both are functionally the same, only dipswitch is different.
- These boards are assigned as NES 2.0 287 mapper in wiki
2019-06-29 17:11:49 +08:00
retro-wertz
634eb688c1 UNIF: Fix potential crash when accessing non-existing rom banks
- As stated, prevent a potential crash on some certain roms using split rom banks. This is done by counting the number of prg/chr banks loaded and using this as limit count during mapper bank switching.
- Update related boards.
2019-06-29 17:11:49 +08:00
retro-wertz
83b2f99527 Mapper134: Update and add support for UNL-T4A54A unif board 2019-06-29 17:11:49 +08:00
retro-wertz
fa21e91ef5 UNL-EH8813A: Update based on latest wiki 2019-06-27 01:03:17 +08:00
retro-wertz
e734fa8796 Add support for BMC-GN-26 2019-06-27 00:55:49 +08:00
retro-wertz
6d26ce4f9f BMC-K-3036: Fix incorrect write address range 2019-06-26 22:17:29 +08:00
retro-wertz
6653f4028a Add support for BMC-830134C 2019-06-26 16:45:08 +08:00
retro-wertz
38a560df82 A few unif board fixes
- RESET-NROM-XIN1 - fix MD5 mismatch due to uninitialized variable
- RESET-TXROM - improve compatibility with some rom types
2019-06-26 11:04:42 +08:00
retro-wertz
93986604ac Add support for BMC-K-3033 2019-06-26 09:03:01 +08:00
retro-wertz
024a2f904e Add support for FARID_UNROM_8-IN-1 and NEWSTAR-GRM070-8IN1 2019-06-26 00:11:14 +08:00
retro-wertz
3666962090 UNL-KS7017: Smoother state loading...
- Smoother states loading  by using the the register value used during call to Sync() instead of the last value written since write and sync are called at different times.
- (reg value written @ $4A000, sync happens $5100)
2019-06-25 18:38:13 +08:00
retro-wertz
0cb1c866a1 Silence clang warnings 2019-06-25 16:56:05 +08:00
retro-wertz
afaa5eab6c Add support for BMC-CTC-12IN1 and BMC-891227 2019-06-25 16:47:18 +08:00
retro-wertz
6ff34f4c7a Add support for BMC-L6IN1 2019-06-25 11:10:00 +08:00
retro-wertz
177cd68d99 Add support for UNL-BJ-56 and BMC-G631 (probably a Ghostbuster63in1 mislabel) 2019-06-25 08:10:36 +08:00
retro-wertz
42ae290d46 Add BMC-STREETFIGTER-GAME4IN1 2019-06-24 18:45:20 +08:00
retro-wertz
78c0cb422e BMC-K-3088: move to its own mapper for better compatibility. 2019-06-24 18:24:22 +08:00
retro-wertz
db8a5ab2c9 Add UNL-AX-40G 2019-06-24 18:03:18 +08:00
retro-wertz
c9b3dfb8d5 Add BMC-T-262 2019-06-24 07:00:29 +08:00
retro-wertz
503dd5249b Add BMC-JC-016-2 2019-06-24 06:26:44 +08:00
retro-wertz
e89bcbfb0d UNIF: Update mirroring on some boards based on last commit 2019-06-23 21:27:13 +08:00
retro-wertz
130580d70e BMC-830425C-4391T: Update cpu banking
- Fixes loading Mermaid game.
2019-06-23 20:15:32 +08:00
retro-wertz
b414ad2176 Add UNIF boards...
- Add UNL-TH2131-1, UNL-LH51, BMC-RESETNROM-XIN1, BMC-RESET-TXROM
- Add FARID_SLROM_8-IN-1, BMC-830425C-4391T, BMC-TJ-03, BMC-CTC-09
- Add BMC-K-3046, BMC-SA005-A, BMC-K-3006, BMC-K-3036, MINDKIDS
- Add UNL-KS7021A, KS106C, BTL-900218
- Cleanup VRC2and4 (unify power function)
2019-06-20 04:09:07 +08:00
retro-wertz
650bc4579a Update ines-correct based on latest tests, update m36...
- Update exiting game database based on latest changes and testing (reference nesdev for one)
- Update mapper 36, supports F-15 City War (Spain) (Gluk Video) (Unl)
- add Reset function to m177, fixes games freezing when reset is pressed (might not be a hardware behavior, but its annoying for emulators :D)
2019-06-18 09:02:36 +08:00
retro-wertz
67ae7663b8 Add m114.1(boogerman), m281, bmc-80013b. Update m205. Disable kt-008 hack on mmc3. Add a few games to ines-correct.h
- Support for Boogerman (SuperGame) Mapper 114, submapper 1
- Update Mapper 205 based on nesdev, move previous mapper 205 to separate GN-45 mapper with retained support to emulate OK-411
- Use nes-to-unif wrapper for some games which does not have nes 2.0 header.
- add unif board BMC-80013-B
- add mapper 281 (JY-052)
- disable KT-008 hack on mmc3. KT-008 boards should be assigned as Mapper 224. Fixes Final Fantasy X1/X2
- force-assign a few roms using ines-correct.h
2019-06-12 01:25:16 +08:00
retro-wertz
74513dd8e4 Update bus conflict for some games using mapper 3, add some games to ines-correct.h 2019-06-01 01:51:53 +08:00
retro-wertz
950479cc7a NROM: update prg mapping 2019-05-31 20:33:46 +08:00
retro-wertz
5c4a659b49 mapper63: try fixing openbus reads again 2019-05-31 19:45:45 +08:00
retro-wertz
1c0d0192d1 Silence clang warnings (-Wbitwise-op-parentheses) 2019-05-30 23:17:00 +08:00
retro-wertz
897221a503 Fix missing openbus read in mapper 63 2019-05-30 22:56:40 +08:00
retro-wertz
3d4ebd5b7b Add mapper 126
- supports the game, PowerJoy 84-in-1 Multicart (PJ-008)
2019-05-30 22:49:51 +08:00
retro-wertz
28e729177e Implement mapper 224 (kt-008) and add related games to ines-correct
- Most of these games are incorrectly assigned to Mapper 4. so correct it with hash
http://wiki.nesdev.com/w/index.php/INES_Mapper_224
2019-05-29 19:06:28 +08:00
retro-wertz
6fd12ed6bf BMC-8157: ignore prg mapping for split rom types
- fixes 1 of only 2 CK-001 4-in-1 carts i found so far
2019-05-27 21:35:12 +08:00
retro-wertz
005eb7bdc3 Implement mappers 28, 29, 31, 56, 63, 255, BMC-60311C, BMC-WS, BMC-HPxx
- Added a few mappers to the list. Tested with roms from goodnes set and some demos
- Fix IRQ for Kaiser7032/202 - Issue noticeable with SMB2/3's status status bar
2019-05-27 19:18:02 +08:00
retro-wertz
f9aa5e5462 Add dipswitch for VS games and Mapper105 (NWC) 2019-05-18 22:38:41 +08:00
retro-wertz
5c1ddf45d4 VRC7: Update instrument patch dumped by Nuke.YKT
https://wiki.nesdev.com/w/index.php/VRC7_audio#cite_note-2
2019-03-27 18:03:30 +08:00
retro-wertz
b09a060ae6 Wii related updates for save state fixes/workarounds (#246)
* Wii: Fix uninitialized save state size causing load state problems

- Issue origially from Wii and possibly affects similar devices where
retroarch and the core are one program. The problem was that the
serialize size was not reset when you change game, causing the last
serialized size to be carried over to the next game loaded causing save
state issues due to change in size. Initializing this variable during
retro_init() seems enough for most of the games.

- In this same observation, also initialized some variables in a similar
way.

- also exluded a variable used for sound state that was added for smooth
sound after load state which causes similar loading issues as well.

- default sample rate has been lowered to 32K as well as to minimize
some stuttering for these devices, while maintaining 48K sample rate for
others.

- Some comments are added to modified section as necessary.

* Add workaround for save state issue in Wii with expansion audio

- Some mappers are not loading states as well. Seems to affect those
that are using expansion audio. some of these mappers(bandai, mmc5,
namco106), the state variables has to be expanded so that it will
load states fine with big endian while others (vrc6, vrc7 sunsoft), some
variables that were added for smoother audio during load state has been
removed.

- This does not guarantee though that other mappers might not have
similar incompatibilities after loading a state but so far, some of the
most common roms in each mapper has been tested to load fine.

* FDS: Expand state variables for big endian compatibility

* FDS: Change OSD label from Disk 0 to Disk 1... when switching disks

- Minor osd label change that now shows Disk 1 of (# of disks) instead
of just Disk 0 Side nth.
2018-12-14 20:23:43 -06:00
retro-wertz
e3cf3efc69 fix vrc7 issue #235, update state.c (#245)
* vrc7: Add sound save states

* Try to fix some save state issues

try to fix big-endian related save problems

* vrc7: fix crash in some cases when loading states
2018-12-11 16:16:02 -06:00
retro-wertz
095fd57117 Fix audio states in VRC6 2018-12-05 15:52:20 +08:00
retro-wertz
b5803e0e1d c89 compliant? (#237)
* Replace C++ comments into  C comments

* Move INLINE out of Makefile.common, move to fceu-types.h

An INLINE define is still existing in Makefile.common for msvc (dont
have a way to to test that). Moved the rest into fceu-types.h using the
one already existing from emu2413.h.

* Increase maximum volume for apu channels
2018-12-03 20:25:17 -06:00
retro-wertz
829a7552f1 Audiostuff (#236)
* Add option to enable/disable audio channels

Audio options are backports from FCEUX. Options are set as on/off toggle for each apu channel.

Compile with DEBUG=1 to see options.

* Add missing audio state vars, fix for hq audio when using runahead

* Additional checks for save ram (battery)

* Cleanup

* Update libretro header
2018-11-29 19:22:36 -06:00
retro-wertz
e07255c87c Remove redundant memset() calls 2018-11-26 10:43:06 +08:00
retro-wertz
2bca72186d Mapper30: Backport 4-screen mirroring support
9b6ff8fe49
2018-06-15 11:30:23 +08:00
twinaphex
9ad88b9c11 Fix warnings 2018-02-21 14:46:01 +01:00
hizzlekizzle
5a813bd318 Merge pull request #202 from retro-wertz/m30
Mapper30: Update compatibility with libretro api
2018-02-21 07:37:11 -06:00