Commit Graph

1199 Commits

Author SHA1 Message Date
negativeExponent
473ec3a8aa Cleanup unused code and variables 2020-02-25 23:09:02 +08:00
negativeExponent
1b01730dda Update mapper 15 based on latest notes
- bit 7 acts as A13 only on mode 2
- prg mask now 0x3F of data latche etc.
- unrolled loops
2020-02-25 23:09:02 +08:00
negativeExponent
872acac367 Merge mapper 225 and 255, re-implement extra RAM
- merges mappers 225 and 255 since they are basically the same
- re-implement extra RAM as its required for some multicarts
2020-02-25 23:09:02 +08:00
negativeExponent
fa74a364de Fix colour emphasis support for NTSC filter & raw palette + nes decoder shader
- this implementation is based on a more accurate colour emphasis from fceux.

- The raw palette + nes decoder shader was kinda incomplete since the implementation was based on
a per-frame basis which means that the emphasis bits were read once and applied to the whole frame. This
means that some games that uses a per pixel or per scanline emphasis would not appear correct. The more
accurate implementation reads emphasis bits from bits 5-7 of PPU[1] and saves this info in a separate frame.

- The same implementation is also used to fix emphasis for the ntsc filter.
2020-02-25 21:05:47 +08:00
negativeExponent
4f599a77f9 NtscFilter: Fix palette for VS. System games and cleanup
- fix palette for vs. system
- move most of the ntsc filter code to its own branch
- use fixed value for ntsc width and when its cropped
2020-02-25 09:39:37 +08:00
negativeExponent
695405ce56 Fix colour emphasis when using palette presets
This is an issue i found when implementing the NTSC filters. Currently when using palette presets,
no clour emphasis is seen on games that supports it. This is cause because the palette table is
fille with the same 64*3 colour info.

Using custom palette (palette file) and default both creates the emphasis as expected. So internally,
fceumm is able to support such feature.

The fix is to generate the base palette (64 * 3 with each triplet representing rgb colour), and then
send this internally using FCEUI_SetPaletteArray() to fill the colour table with emphasis instead.
2020-02-25 07:13:42 +08:00
negativeExponent
266bc3b92f Implement blargg ntsc filters
- this implements blargg's nes ntsc filters using core options
- an optional height doubling is also added but disabled for performance reasons (might make that optional as a core option)
- since PS2 and PSP have their own blitter branches, these platforms do not have the ntsc filters since i dont have the means to test on those systems.
- compile with HAVE_NTSC=1 to have these options, HAVE_NTSC=0 disabled filter including core options
- HAVE_NTSC=1 is set as default, other than PS2 and PSP as stated above.
2020-02-23 20:05:12 +08:00
negativeExponent
045ea32f8d Fix duplicate log info for CHR-RAM 2020-02-19 20:19:08 +08:00
negativeExponent
48300986c4 Add mapper 218 2020-02-19 20:19:08 +08:00
negativeExponent
18701efb0f Silence warnings 2020-02-19 20:19:08 +08:00
negativeExponent
7c6aa2d665 m227: Implement chr-ram write protect 2020-02-19 20:16:09 +08:00
negativeExponent
f9fb33d8e8 Silence warnings and fixes
- Silence warning [-Wmaybe-uninitialized]
- m359: Fix value overflow
- m534: Silence warnings
- mmc1: Silence warnings
- Silence more warnings
2020-02-17 10:30:42 +08:00
negativeExponent
ddb1fe786a Add UNIF BMC-WX-KB4K (m134) to supported boards 2020-02-17 09:32:29 +08:00
negativeExponent
86aad39c3d Buildfix 2020-02-17 09:32:29 +08:00
negativeExponent
6e7d5abaab Update implementation of some unlicensed mappers 2020-02-17 09:32:29 +08:00
negativeExponent
cfaee1217f Update mapper 91 2020-02-17 09:32:29 +08:00
negativeExponent
b7050cb55d Add mappers 111, 356, 269, 353
- backport mapper 111 (Cheapocabra or GTROM) from fceux
2020-02-17 09:32:29 +08:00
negativeExponent
0b4b5421dc Add BMC-SB-5013 (m359) and UNL-82112C (m540) 2020-02-17 09:32:29 +08:00
negativeExponent
310b75964f Add mapper 543, 550, 516 2020-02-17 09:32:29 +08:00
negativeExponent
cfe11b9b95 MMC1: Better work ram and battery saves support for size greater than 8K 2020-02-17 09:31:01 +08:00
negativeExponent
7ba3350900 Add mappers 382, 534, 539 2020-02-17 09:26:01 +08:00
negativeExponent
43ca4755bb Update mapper 150/243 (unif UNL-Sachen-74LS374N) 2020-02-17 09:26:01 +08:00
negativeExponent
3f1544c129 Update mapper 45
- fix starting register value
- fix memory write range to 0x6000-0xffff
2020-02-17 09:25:16 +08:00
negativeExponent
9150960326 Add mappers 360, 533 2020-02-17 09:20:13 +08:00
twinaphex
81058f3558 C89 build fixes 2020-02-16 19:34:14 +01:00
negativeExponent
2eeabe880c Add header guards 2020-02-16 23:18:27 +08:00
negativeExponent
a37314c4be Silence warnings 2020-02-16 23:14:49 +08:00
negativeExponent
1eaed36344 Fix alignment 2020-02-16 22:30:15 +08:00
negativeExponent
d6143ef2ef Rename some cart info variables that indicates size (readability) 2020-02-16 22:15:25 +08:00
negativeExponent
bbce95d5aa Add prg and chr checksums and rearrange rom info logs 2020-02-16 21:54:21 +08:00
negativeExponent
1f5ffc3f14 Fix crc32 computation when buffer is NULL 2020-02-16 20:37:21 +08:00
negativeExponent
1c94704512 Minimize core options shown by default
- This creates 2 new advance core options to minimize the number of core options shown
-- Advance System Options contains:
--- Overclock
--- RAM power on state
--- no-sprite limit
--- simultaneous opposing direction press
--- zapper crosshairs
-- Advance Sound Options contains:
--- Master volume
--- Sound quality
--- on/off for NES' 5-channel apu
- This also re-arranges the core options when advance options are shown, system options on top,
  gfx/palette/geometry options next, input etc.
2020-02-15 11:23:07 +08:00
negativeExponent
fa7b15eb61 Update region overrides and overclocking
- ines.c - misc cleanups
- Fix Dendy not restored when changing overrides back to auto mode
- directly apply new scanlines and additional scanlines when changing overclock settings
- (readability) change variable name overlock_state to overclock_enabled
2020-02-07 20:50:25 +08:00
negativeExponent
85a15786ff Unif: Pass iNES mapper number to cart struct when available 2020-02-07 12:01:03 +08:00
negativeExponent
f4756f9357 Add mapper 297
- also add appropriate input overrides since cart is light gun based
2020-01-31 20:19:25 +08:00
negativeExponent
65ff96cd5c Add mapper 294 (m134) 2020-01-31 00:13:09 +08:00
negativeExponent
e82b34bae9 m313: Fix incorrect bank sizes 2020-01-30 19:51:45 +08:00
negativeExponent
c08697a024 Add mapper 267 2020-01-29 20:00:22 +08:00
negativeExponent
45d553100a Add mapper 390 2020-01-29 03:10:11 +08:00
negativeExponent
fd823c4021 Add mapper 374 2020-01-29 01:09:31 +08:00
negativeExponent
38305957f7 Update BMC-RESET-TXROM (m313)
- add support for submappers 1, 2, 3 and 4
2020-01-28 22:51:36 +08:00
negativeExponent
0635e047b2 Add mapper 288
- dipswitch, menu based
2020-01-28 13:45:59 +08:00
negativeExponent
b6cb482bfe Add mapper 381 2020-01-28 12:07:47 +08:00
negativeExponent
f4cb27d578 Add mapper 538 2020-01-28 11:42:04 +08:00
negativeExponent
371e949ba1 Add mapper 541 2020-01-28 11:06:43 +08:00
negativeExponent
dca5ff5a1a Add mapper 372 2020-01-28 09:52:21 +08:00
negativeExponent
b07000a10e Add mapper 357 2020-01-28 06:27:09 +08:00
twinaphex
762f6ebed2 C89 buildfix 2020-01-27 22:29:56 +01:00
negativeExponent
3f756dc7fc Cleanup FCEU_MakeFName
- silence warnings: replace strncpy with strcpy instead. this should be safe since buffer is strlen+1 which should be enough for a null terminator (from sprintf)
- minor cleanup
2020-01-27 21:40:51 +08:00
negativeExponent
e1e48294f0 Remove unused variables 2020-01-27 21:40:13 +08:00