コミットグラフ

3120 コミット

作成者 SHA1 メッセージ 日付
守矢諏訪子 24862f7c3b Merge branch 'master' of gitler.moe:suwako/ares-openbsd 2024-06-14 21:42:08 +09:00
守矢諏訪子 6763201cc5 support openbsd 2024-06-14 21:41:54 +09:00
曾耿森 d76e79076f
fix(fc): fix mmc3 board (#1529)
1. fix game Mickey's Safari in Letterland (USA)
2. fix game Incredible Crash Dummies, The (USA)
2024-06-14 12:59:30 +01:00
曾耿森 a574410a03
feat(fc): add new board TXC-22211B(Mapper 172) (#1527)
pass issue #755
2024-06-13 20:09:55 +01:00
曾耿森 dc97c814a3
feat(fc): add new board support (225/255) (#1523)
pass issue #753
pass issue #754
2024-06-12 16:28:52 +01:00
曾耿森 9325b04b23
add board unl-bmc-31-in-1 (mapper 229) (#1521)
add board unl-bmc-31-in-1 (mapper 229)
pass issue #752
2024-06-11 17:23:33 +01:00
Luke Usher 762a2302f7
ci: set windows image to windows-2019
Attempting to workaround broken clang in windows-latest (2022)
2024-06-11 10:26:18 +01:00
曾耿森 2b6346df6e
feat(fc): add new board support (#1520)
1. add the board unl-sachen-74ls374n support mapper id = 150 & mapper id
= 243
2. merge Famicom NTSCJ and NTSCU to NTSC
3. pass the issue #282
2024-06-11 09:47:17 +01:00
png183 587aa20dcc
gba: improve video capture DMA (#1519)
Video capture DMAs should run only if the mode was enabled on scanline
162 of the previous frame, and should clear the DMA enable bit once
complete.
2024-06-10 08:26:22 +01:00
John Tur 4615a9f4b7
Fix cl build break (#1517)
Fix build break caused by #1515. Let's see what CI says...
2024-06-10 08:26:10 +01:00
曾耿森 fc7cdb57f7
Refactor fc ppu (#1518)
1. pass mmc3/3-a12_clocking.nes
2. refactor the ppu/var and ppu/scroll
3. fix ppu var and scroll read/write($2005/$2006/$2007)
4. inc serialization to v144
5. fix the color generator
6. fix the game Burai Fighter (USA)
7. pass issue #151
2024-06-08 18:29:51 +01:00
John Tur 0a8f25e7d8
Support default device in WASAPI driver (#1515)
The WASAPI sound driver now supports a "Default" audio output device:
<img
src="https://github.com/ares-emulator/ares/assets/27514983/fbf358d6-41e7-478d-8a76-fc86790d7774"
width="650" />

This uses the [Automatic Stream
Routing](https://learn.microsoft.com/en-us/windows/win32/coreaudio/automatic-stream-routing)
API that was introduced in Windows 10. A runtime check was added to
ensure that the feature does not appear on older versions of Windows.

I did some limited testing and found the feature to work without issues.

Closes https://github.com/ares-emulator/ares/issues/1514
2024-06-07 10:48:42 +01:00
Giovanni Bajo f3cdf203c3
n64: poll gdb more frequently (#1512)
Currently, gdb is polled once per frame, which seems enough for
interactive usage. Some ROM hacks would like to use the gdb interface to
provide additional emulation-only features such as online multiplayer,
but that requires a faster turnaround.

A quick solution is to poll gdb more frequently within the n64 core.
This patch does that once per screen line, approximately. Notice that
the poll is only scheduled and run if there is a gdb client connected so
it should not cause any performance impact on normal users.
2024-06-07 10:48:05 +01:00
Luke Usher 5e04d6d31b Merge commit '76615ce847483d1c158a06d513331325236819af' 2024-06-03 17:49:42 +01:00
Luke Usher 76615ce847 Squashed 'thirdparty/slang-shaders/' changes from 6cb93ce1b..1265cf159
1265cf159 Merge pull request #601 from Hyllian/master
d96718591 Add mixed-res-crt-hyllian preset
407a45729 Merge pull request #600 from Hyllian/master
8583cfee2 Update mixed-res shaders

git-subtree-dir: thirdparty/slang-shaders
git-subtree-split: 1265cf159d63253ab8978c7f9e63048e9d791e8c
2024-06-03 17:49:42 +01:00
Luke Usher 4b3b8b9f5b Merge commit '2d81319a2f0115eec97620a389715eddde7c13fa' 2024-06-03 17:49:25 +01:00
Luke Usher 2d81319a2f Squashed 'thirdparty/sljit/' changes from a7066fdb1..1e0579727
1e0579727 Fix constant pool bug on arm32 (#249)

git-subtree-dir: thirdparty/sljit
git-subtree-split: 1e0579727f5805f0e34cca6b5e0c841dd92ebfb0
2024-06-03 17:49:25 +01:00
Luke Usher 36df7ab00f Merge commit '47d6d256876d6cab7c16bd6e04c657b976339e51' 2024-06-03 17:49:04 +01:00
Luke Usher 47d6d25687 Squashed 'ares/n64/vulkan/parallel-rdp/' changes from ff3b858dd..e8a425fab
e8a425fab Update to ffc0d865836eb2f90c85e4694e4cfe363be908e6.
aba102d24 Update to e564cbc01a49d2d94d90e60cc5c2f406d9ac4aad.

git-subtree-dir: ares/n64/vulkan/parallel-rdp
git-subtree-split: e8a425fabc3a25d1855d5f217c6857e5e9bf1af2
2024-06-03 17:48:34 +01:00
jcm 117f4f7b4e
UI: Initialize all video options correctly on driver settings update (#1513)
Just a small fix to account for the new video settings in Metal; the
threaded renderer, native fullscreen behavior and color space option.
These options were not fully persistent because the `videoDriverUpdate`
function (run on startup, among other times) did not account for them.
They would be set correctly in `settings.bml` and the settings object,
but would never actually be set correctly on the driver struct.

Co-authored-by: jcm <butt@butts.com>
2024-06-03 11:09:17 +01:00
Adrian Siekierka c23a3f736d
ws, m93lcx6: improve EEPROM emulation accuracy (#1509)
* The behaviour of bits 0-3 and 7 in the control/status port were a
complete guess and had no reflection in hardware testing. They have been
adjusted to match hardware.
* The EEPROM interface always writes and reads out 16 bits to/from the
EEPROM, including the initial zeroes in the command value. The M93LCx6
code has been updated to support this case in line with the datasheet.
* The read and write data port have been separated. This was a detail
which every community documentation in existence got wrong, so no
worries about that one ^^
* Internal EEPROM protection has been implemented.
* The handling of invalid control commands (more than one bit set) has
been fixed.
* Emulation of the 93C46-family internal EEPROM on SPHINX in ASWAN mode
has been implemented. In particular, this fixes running any mono
WonderSwan game which takes advantage of the internal EEPROM on the
WonderSwan Color system's compatibility mode.

All of these changes pass the relevant tests in
[ws-test-suite](https://github.com/asiekierka/ws-test-suite)
(mono/eeprom/internal.ws) both as a WonderSwan and a WonderSwan Color.
This isn't 100% accurate (particularly, timing is not reflected; but
there are also some questions about more edge case-y behaviour), but
it's much closer.
2024-05-30 14:19:44 +01:00
jcm dd25ac4f72
n64: fix macOS build (#1507)
The paraLLEl-RDP build was broken on macOS because of a change from
February to Granite in regarding platform ifdefs for pthreads.

A PR that applies a fix has been opened
[upstream](https://github.com/Themaister/Granite/pull/131), but until an
upstream fix lands, this PR will unbreak the build for ares without
needing to roll back the recent paraLLEl-RDP update entirely.

Co-authored-by: jcm <butt@butts.com>
2024-05-28 15:02:15 +01:00
Luke Usher 804e6699a4 fix build after updating deps 2024-05-27 10:22:16 +01:00
Luke Usher c2dede6c85 Squashed 'thirdparty/slang-shaders/' changes from 1c0a4ccbd..6cb93ce1b
6cb93ce1b koko-aio hotfix4 (#597)
6e3cc4c11 Merge pull request #598 from keylimesoda/patch-1
36c6c7bf7 Update curvature.h
56d13de9b Sync to koko-aio 1.9.20-hotfix3 (#596)
9c930380c fixed undefined function in warp_koko() (#593)
8bdee83e3 Merge pull request #594 from Hyllian/master
37cce2aa7 Update mixed-res shaders.
ba6f00b5c Merge pull request #592 from HyperspaceMadness/master
e931b7a10 Mega Bezel V1.17.2_2024-05-18 Update of Mega Bezel with fixed paths and removed failing wildcard testers. Added an additional independent DREZ preset
7b4baaa11 Merge pull request #591 from Hyllian/master
ed50f0475 Add deblur-luma shaders
99d1bfe3b Merge pull request #590 from kokoko3k/master
0a741ee7a sync to koko-aio 1.9.20
8724e92bd Merge pull request #589 from Hyllian/master
879dcd27f Add bilateral-2p shaders
5fbd61058 Merge pull request #588 from Hyllian/master
d5a089f77 Add bilateral shader from guest.r
4968a5294 fix NSO-gbc-color.slang
7fc92d726 Merge pull request #587 from Hyllian/master
97c7ed71c Add crt-royale-downsample preset and LUTs
699402877 Merge pull request #586 from Hyllian/master
729ab1767 Update super-xbr and mixed-res shaders
3378d0160 Fishcu/pixel aa xform (#585)
f047ae72a Merge pull request #584 from Hyllian/master
096f95adc Update dilation shader
7aff4e6cc Merge pull request #583 from fishcu/fishcu/rename-includes-to-inc
31caee64d Rename files that are included but no proper shader on their own to .inc
0eb12c628 Fishcu/authentic gbc (#582)
67a1ee78e Merge pull request #581 from Hyllian/master
c562d89ec Update film-grain.slang
4de167851 Merge pull request #580 from Hyllian/master
96713a17f Add film-grain shader
e77c37fe5 Merge pull request #579 from kokoko3k/master
d49bab8d0 Add autocrop-koko shader
ca2c0223c Merge pull request #578 from Hyllian/master
71d3618ba Add crt-royale-smooth preset
2f8af209b Merge pull request #577 from Hyllian/master
40f5d882c Add n64 3-point and relief shaders
7984c9953 Merge pull request #576 from Hyllian/master
594d9a2fc Add lanczos2-5-taps
ee403bcdd Merge pull request #575 from Hyllian/master
e8287f250 Add mixed-res shaders
341aac7b7 Add 2xsal-level2-xbr shader and presets (#573)
9f2c20102 Merge pull request #572 from Hyllian/master
c342a69e3 Merge pull request #567 from mattakins/master
2e3f25c34 Add NEDI-Hybrid shaders
d7e15b9c0 Merge pull request #571 from fishcu/fishcu/minor-fixes
932d2a630 Merge pull request #570 from HyperspaceMadness/master
b5bf043b1 Change default param
5831505f0 Minor fixes found during GLSL porting of code
155e471ca Updated gameboy preset names based on feedback
b6b379281 Added drez and improved print-resolution
05414f65e Merge pull request #568 from Hyllian/master
0135078c3 Update NEDI shaders
2ac8ca7c1 Update ddt.slang
6bfb9df4d Added gameboy-advance preset
eab71b6be Added gameboy-pocket-high-contrast
69c282123 Added gameboy-color-white-bg preset for gameboy shader
f7cf08900 Restored gameboy shader Blending Mode default to 0
dd228b941 Merge pull request #566 from Hyllian/master
7b0a142a1 Add cheap-sharpen shader
2a7c19b6b Merge pull request #565 from Hyllian/master
68d982035 Add bicubic-5-taps and hermite shaders
93c954798 Merge pull request #564 from Hyllian/master
28fb09f79 Add b-spline-4-taps and catmull-rom-5-taps

git-subtree-dir: thirdparty/slang-shaders
git-subtree-split: 6cb93ce1be67b314a96f5e346befb2b58b63eb04
2024-05-27 10:05:10 +01:00
Luke Usher 6cabb5d118 Merge commit 'c2dede6c851c20e50398e724966394235221bb70' 2024-05-27 10:05:10 +01:00
Luke Usher 9db8decbd6 Merge commit '5c92d877c8850f0e37ca03405392530f2ba0a314' 2024-05-27 10:04:45 +01:00
Luke Usher 5c92d877c8 Squashed 'thirdparty/librashader/' changes from e8ffd8fdf3..d7665cac9b
d7665cac9b Update wgpu

git-subtree-dir: thirdparty/librashader
git-subtree-split: d7665cac9b7a9761290a1b76bd59d39205497326
2024-05-27 10:04:45 +01:00
Luke Usher dbb3b85bb3 Merge commit '0ef0a3e3a7eb717224d885b3d1e135076c360c89' 2024-05-27 10:04:39 +01:00
Luke Usher 0ef0a3e3a7 Squashed 'thirdparty/libchdr/' changes from 5c598c2df3..07a564abe4
07a564abe4 Merge pull request #124 from rtissera/revert-libretro-changes
d1fe3009c8 Revert "Merge libretro stuff, bump to 0.3 version"
b5603a577b Merge pull request #123 from rtissera/merge-libretro-stuff
56b08d53f8 Merge libretro stuff, bump to 0.3 version
86b272076d Merge pull request #122 from scribam/zstd-disable-shared
a4fa03bba9 zstd: disable shared lib
67c96ef582 Merge pull request #121 from scribam/zstd-1.5.6
45c53ae969 deps: update zstd to version 1.5.6
f8f2f8bf77 Merge pull request #120 from scribam/bsd
d93a99ced9 cmake: remove "-Wl,--no-undefined" on OpenBSD
d670e6833c ci :add GitHub Actions for BSD
2d315cad12 Merge pull request #119 from scribam/lzma-24.05
715f33792f deps: lzma compatibility changes for switch and vita platforms
25543a5214 deps: bump LZMA SDK to 24.05 and build with asm optimizations
0841ba38ee Merge pull request #116 from notaz/missing_auxv
6c739c2f67 handle more platforms that lack getauxval/AT_HWCAP

git-subtree-dir: thirdparty/libchdr
git-subtree-split: 07a564abe462f1aece58c794a3c2a6fed688afea
2024-05-27 10:04:39 +01:00
Luke Usher c94794e959 Squashed 'thirdparty/sljit/' changes from 5420f8bee8..a7066fdb10
a7066fdb10 Improve fop2 with single precision opcode on x86
daf33c9165 Fix TMP_REG2 usage fault in sljit_emit_simd_lane_mov for LoongArch (#248)
cb9b068274 Improve op_flags on s390x
d86e6cbf6c Implement LoongArch LSX and LASX SIMD Support (#247)
9017d72988 Allow forcing VEX prefix on x86
79256319d6 Add temporary register support to ijump
db3ca5014f msan fixup (#245)
ad89dd8ecd Fix locking region in sjlit_malloc_exec (#244)
bbeafb0ff4 Add temporary register support to select on LoongArch (#243)
5aeae2a2af Add temporary register support to select on s390x
56dbde07b0 Add xgetbv feature detection support on x86
d2374c2043 Add compare to temporary register tests
b67fc5c5eb Add temporary register support to select
14622914aa Split sljit_p to sljit_up/sp variants
42ac81c053 Fix LoongArch floating point select tests (#242)
36c6047c78 Add floating point select tests
eef5fceee3 Add simd lane mov temporary tests
c6ce9a3749 Add float conversion temporary tests
277093d3d0 Add simd temporary tests
9827eb7e00 Fix build on older macOS (#240)
19e2693245 Fix LoongArch binary temporary tests (#239)
af736af648 Add binary temporary tests on s390x
2ea42b1924 Add binary temporary tests
3d66db5ac4 Absolute jumps / fast calls should not modifiy SLJIT_TMP_DEST_REG
f9869a6810 Fix LoongArch float temporary tests (#238)
9737b3c943 Add float temporary set tests
4fd70d341d Add float temporary tests
8629fad57d Fix RISCV temporary register use
b0fd8cd2c3 Add memory temporary tests
958e8d7bcc Support addmul on LoongArch64 (#237)
c4769cbc4a Support addmul on s390x
6b8503dadc Support addmul on x86, arm, riscv, ppc, mips
c1ae218f51 Add multiplcation tests with temporary register support
a78d9ded50 Fix failing tests on ARM, PPC
120c6efc44 Add more temporary register tests
4e34ed5fb0 Improve temporary register support
46f12a2c46 Fix leaks (#236)
40eff81472 Update create compiler and generate code arguments
bf9bf14961 Support recent changes on LoongArch64 (#235)

git-subtree-dir: thirdparty/sljit
git-subtree-split: a7066fdb10a915dacd5ec39f10b4048002c7b748
2024-05-27 10:04:35 +01:00
Luke Usher 2abc056d06 Merge commit 'c94794e9599911d2bd0c22c07adb30ca127f5adf' 2024-05-27 10:04:35 +01:00
Luke Usher 9664144d1b Squashed 'ares/n64/vulkan/parallel-rdp/' changes from 37bf2967e3..ff3b858dd3
ff3b858dd3 Update to 16d3a27eab1af53021bf6a49807e5e0720862bd3.
7cdcaa3db9 Update to d7746d1f999ba1507f4d2fd8fade77ee3cbb5425.

git-subtree-dir: ares/n64/vulkan/parallel-rdp
git-subtree-split: ff3b858dd3a7ca27bd7c91fc894a7acd13fc0bcf
2024-05-27 10:04:30 +01:00
Luke Usher f31d209883 Merge commit '9664144d1bf2986191b54e97f712c6516ae15672' 2024-05-27 10:04:30 +01:00
png183 21209edad6
gba: synchronize CPU with other components more frequently (#1506)
Reduces the synchronization interval between the GBA CPU and other
components from 64 to 16 cycles, which significantly improves PPU
timings in the performance profile. These PPU timing improvements can be
observed in
[status-irq-dma.gba](https://github.com/nba-emu/hw-test/tree/master/ppu/status-irq-dma),
which now frequently gets results within a few cycles of the correct
values in situations which were previously off by dozens of cycles.
While this does impact performance by ~5-10%, in my testing this is
still faster than versions from before [commit
b145f0f](b145f0f000).
2024-05-26 07:04:53 +01:00
png183 8f3261e870
gba: improve BIOS open bus edge case handling (#1504)
This PR improves handling of BIOS open bus edge cases that previously
were handled incorrectly, such as unaligned 8-bit and 16-bit accesses,
and cases where the last value read from BIOS was not a 32-bit value.
2024-05-21 11:50:24 +01:00
thekovic a65bf18645
nall: fix Wcast-user-defined warning (#1494)
Compiling with GCC 14.1 in MSYS2 caused a lot of warnings of the
`-Wcast-user-defined` variety. This PR adresses that.

Note: This PR does not address
https://github.com/ares-emulator/ares/issues/1399 . Those warnings
happen at the link stage, they don't seem to be GCC-only (since issue OP
also reports them with clang), and they don't appear at lower
optimization settings (I tested `build=debug` and `build=stable` which
compiled cleanly).
2024-05-18 16:56:32 +01:00
Derek "Turtle" Roe a327e9b953
Fix some inconsistent formatting in the N64 database (#1496)
Just fixed up a few inconsistent formatting issues in the N64 database
while I was taking a peek 😄
2024-05-18 16:56:18 +01:00
曾耿森 672e81572c
fix(ppu): fix some ppu bug and pass some tests (#1493)
1. fix read OAMDATA($2004)
2. fix write OAMDATA($2004)
3. refactor struct OAM access operator[]
4. remove some unused variable in ppu.io
5. spriteEvaluation.oamMainCounter is reference oamAddress
6. fix ppu sprite evaluation in pre-rederer line
7. inc fc serialization version to v143
8. pass blargg_apu_2005.07.30/09.reset_timing.nes
9. pass dmc_dma_during_read4/dma_4016_read.nes
10. pass sprdma_and_dmc_dma/sprdma_and_dmc_dma.nes
11. pass sprdma_and_dmc_dma/sprdma_and_dmc_dma_512.nes
2024-05-18 16:17:25 +01:00
曾耿森 deb1cf6d79
fix(ppu): fix some bug and pass test power_up_palette.nes (#1500)
pass blargg_ppu_tests_2005.09.15b/power_up_palette.nes
pass "Hello World" PPU test:
https://github.com/PeterLemon/NES/tree/master/HelloWorld

In https://forums.nesdev.org/viewtopic.php?t=567#top,

blargg say: "The power-up values of the palette are what my test program
reads back after powering the NES. I have one of the older units that
shows a green screen (I think newer front-loading ones had a gray
screen). These values probably vary slightly from one console to the
next."

Palette at power-up
0x09,0x01,0x00,0x01,
0x00,0x02,0x02,0x0D,
0x08,0x10,0x08,0x24,
0x00,0x00,0x04,0x2C,
0x09,0x01,0x34,0x03,
0x00,0x04,0x00,0x14,
0x08,0x3A,0x00,0x02,
0x00,0x20,0x2C,0x08,

To read/write a cgram, it needs to and 0x03, not 0x13

In https://www.nesdev.org/wiki/PPU_palettes#Memory_Map

$3F00	Universal background color
$3F10	Mirror of universal background color

$3F04	Normally unused color 1
$3F14	Mirror of unused color 1

$3F08	Normally unused color 2
$3F18	Mirror of unused color 2

$3F0C	Normally unused color 3
$3F1C	Mirror of unused color 3
2024-05-18 16:16:30 +01:00
remutro 70f833957e
Resize target buffer when IPS patch extends beyond original source size (#1501)
For IPS patches that extend the original ROM beyond its initial size, we
will now resize the target buffer when patches extend the size of the
original.

Originally found testing out the Shin Megami Tensei patch by Orden
(https://www.romhacking.net/translations/2616/), which will now work
correctly.
2024-05-18 16:16:11 +01:00
曾耿森 8b5e30dad9
feat(fc-ppu): pass some ppu test (#1490)
1. pass sprite_overflow_tests/1.Basics.nes
2. pass sprite_overflow_tests/2.Details.nes
3. pass sprite_overflow_tests/3.Timing.nes
4. pass sprite_overflow_tests/4.Obscure.nes
5. pass sprite_overflow_tests/5.Emulator.nes

6. fix cpu serialization bug (miss oddCycle)
7. inc the fc serialization version
2024-05-11 21:39:04 +01:00
png183 9fb9dd59ba
gba: latch timer register writes for 1 cycle (#1489)
Latches writes to timer registers for 1 cycle. This fixes common
off-by-one errors with precise timer use, which for example positively
impacts the test cases in #154.
2024-05-11 21:38:28 +01:00
jcm 67fc9ea81b
ruby: Various Mac driver settings fix-ups (#1486)
This PR applies several minor fixes and improvements to macOS driver
settings and the driver settings pane.

#### Remove the "exclusive mode" video option on macOS.

* There is no real notion of exclusive presentation on macOS beyond what
already exists in normal fullscreen. If an application is covering the
screen and no other application or window is visible, the system
automatically switches to a "direct" presentation mode that optimizes
for single-application presentation performance. There is not a good
reason to show this option on macOS, even disabled.
* By contrast, it is possible (though not implemented by ares) to enter
exclusive mode on the audio device with CoreAudio, so leave that option
there, just disabled.
#### Add a "use native fullscreen" option on macOS.
* There are various good reasons to prefer either native platform
fullscreen behavior, or a custom borderless windowed fullscreen. Rather
than guess what the user wants, offer an option.
* If unchecked, make the window title bar enlarge the window rather than
fullscreen it, so we don't mix behaviors.
#### Implement fullscreen monitor selection behavior for Metal, and
correctly enumerate the user's monitor names.
* Fullscreen display on the selected monitor in the settings pane was
previously not implemented on macOS. This implementation only works if
"Use native fullscreen" is disabled, since the macOS fullscreen idiom
doesn't feature selecting a specific display.
* Additionally, the old function to retrieve the monitor's localized
name did not work reliably on newer macOS versions. Use the modern
property `localizedName` on NSScreen for macOS versions above 10.15, and
fall back to the old implementation otherwise.
* Implementing this meant adding a `uintptr` handle to the NSScreen
instance in the `Monitor` struct in ruby that uses a bridged cast to
interface with Objective-C. I would have preferred not to do this, but I
didn't see another good way to handle getting the `NSScreen` instance
that didn't involve a serious refactor.
#### (all platforms) Disable monitor selection if the video driver's
`hasMonitor()` is false.
* Just a minor fixup; the existing behavior is that the dropdown list
can be navigated and selected, but the selection does not persist. It
makes more sense to just disable it if the driver doesn't support it.

Co-authored-by: jcm <butt@butts.com>
2024-05-05 16:11:35 +01:00
shinra-electric 4f834bd506
CI: Update cache and checkout to v4 (#1478)
- Updates `checkout` from v2 to v4
- Updates `cache` from v3 to v4

Reasons for change: 
- Checkout@v2 runs on node 12, which has been
[discontinued](https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/)
- Checkout@v3 runs on node 16 and has also reached its [end of
life](https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/),
so skip it entirely.
- Cache@v3 runs on node 16 as well, so update to v4 for the same reason.

Testing: 
- Ensure CI passes
- Check that warnings regarding `checkout` and `cache` are gone
2024-05-04 09:33:58 +01:00
曾耿森 785c148768
fix(fc): fix fc dma interrupt (#1476)
pass cpu_interrupts_v2/4-irq_and_dma.nes
2024-05-03 11:14:08 +01:00
png183 cfda608bc2
gba: improve VRAM mirroring in bitmap background modes (#1475)
Blocks accesses to the mirrored region at VRAM addresses 0x18000 to
0x1bfff when in background modes 3-5, as described
[here](https://github.com/nba-emu/hw-test/tree/master/ppu/vram-mirror).
2024-05-03 11:14:02 +01:00
shinra-electric f94e053767
CI: Update upload-artifact and download-artifact to use v4 (#1472)
- v2 will be unavailable from the end of June 2024
- v4 can be up to 98% faster than previous versions according to
[Github's
notification](https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/)

This PR only changes the version number, and I'm submitting it to see if
it works.
It is possible that further changes are necessary, as there were some
[breaking
changes](https://github.com/actions/upload-artifact?tab=readme-ov-file#breaking-changes),
but I don't think any of them apply to ares.

Testing: 
- See if CI passes
- See if warnings regarding using v2 of `upload-artifact` and
`download-artifact` are gone (There will still be other warnings
regarding `checkout` and `cache`)
- (Optional) Compare times for the tasks using `upload-artifact` and
`download-artifact` with previous CI runs
2024-05-03 11:13:55 +01:00
remutro 6e8bcd9bda
Disable run ahead for 64DD, fixes load failures (#1474)
Turns out the problem some folks experienced trying to load 64DD games
was due to run ahead not being disabled by default. An exception for
this system has been added.
2024-05-02 19:18:18 +01:00
Luke Usher 57c01b8e17 bump version to v138 2024-05-02 13:12:55 +01:00
jcm bf5536cb18
CI: Fix macOS build name errors for release action (#1468)
#1463 renamed the `macos` build to `macos-latest` and introduced
`macos-compat`. We need to address the rename in the release workflow. I
believe this PR accounts for every use of the package name. Also adds
macos-compat to the release (for now).

Co-authored-by: jcm <butt@butts.com>
2024-05-01 19:49:32 +01:00