Commit graph

  • 716227c0a7 UI: Update to Avalonia11-preview6 Notes: -Uses a copy of VirtualizingStackPanel (to include fixes done after preview6) + fix another issue in lists -Fixes memory leaks when closing windows (by setting DataContext to null, etc.) Sour 2023-04-10 22:59:48 -04:00
  • 6a4b6ba810 Debugger: Sprite viewer - Fixed refresh issues when "show offscreen regions" is unchecked Sour 2023-04-10 18:58:04 -04:00
  • 68e1f0ce98 Debugger: Tile viewer - Reduce memory allocations Sour 2023-04-10 17:37:31 -04:00
  • 9c6c67445a Debugger: Profiler - Reduce memory allocations Sour 2023-04-10 17:09:34 -04:00
  • cde0db1d13 Replaced GCHandle.Alloc usage with fixed keyword Sour 2023-04-10 16:41:58 -04:00
  • 5926ada406 Debugger: Sprite viewer - Reduce memory allocations to reduce GC frequency Sour 2023-04-10 16:26:24 -04:00
  • 126cf052a8 Debugger: Tilemap viewer - Reduce memory allocations to reduce GC frequency Sour 2023-04-10 15:19:32 -04:00
  • 16c6b819fa UI: Fixed incorrect mouse position in high DPI modes when cursor is locked Sour 2023-04-10 11:09:02 -04:00
  • b41e270a4c GB: Fixed APU channel output changes being associated with the wrong timestamp Caused issues with the audio in Pokemon (and probably other games?) Sour 2023-04-10 00:33:15 -04:00
  • 41a082b8e0 GB: Fixed scene transitions in Alone in the Dark CGB should also turn white when LCD is disabled (at least based on what other emulators are doing) Sour 2023-04-09 00:28:40 -04:00
  • 0038e83dd6 Debugger: GB - Fixed incorrect memory values in the disassembly Occurred when the GB CPU's state was copied while the CPU was halted or had a pending IRQ Sour 2023-04-08 23:17:18 -04:00
  • f091873124 UI: Fixed renderer size problem when in exclusive fullscreen mode Menu was still "visible" and preventing the renderer from taking up the entire height of the screen Sour 2023-04-08 19:30:28 -04:00
  • a74d20534c UI: Allow loading dbg/sym/fns files via "import labels" instead of only via drag+drop Sour 2023-04-08 19:22:50 -04:00
  • 09393b12d4 Debugger: Assembler - Skip the auto-generated jump/sub "labels" when editing existing code Sour 2023-04-08 19:06:14 -04:00
  • ee287e9cad GB: Fixed/improved APU mixing/DAC logic Fixes missing sound effects/voices in Warlocked and Alone in the Dark Sour 2023-04-08 17:18:25 -04:00
  • 628e770fe9
    NES: Fix emphasis emulation in Bisqwit's NTSC filter (#17) Persune 2023-04-09 00:20:25 +08:00
  • ad20604d2c Minor tweaks/refactoring Sour 2023-04-08 12:15:03 -04:00
  • d3d5b90bec
    Optimize emphasis waveform generation Persune 2023-04-08 15:18:28 +08:00
  • cc5d28778b
    Fix emphasis emulation in Bisqwit's filter Persune 2023-04-08 14:19:16 +08:00
  • 78d13506c5 UI: Catch Avalonia crash when trying to load a WSL file using the "\\wsl$\" path format Sour 2023-04-07 20:47:31 -04:00
  • d90453b813 UI: Mouse capture - Fixed incorrect bounds for the mouse's position when captured Sour 2023-04-07 15:52:02 -04:00
  • 63b779be8d PCE: Reset cycle counter at the end of DMA Sour 2023-04-07 13:39:20 -04:00
  • 7c51e23d25 GB: Fixed envelopes being clocked when period is 0 Based on Megaman 2 and Taiyou no Yuusha the envelopes shouldn't be ticking when period is set to 0 (otherwise the sound in these games breaks - especially the noise channel) This seems to contradict old documentation that says a period of 0 is treated as a period of 8, but test roms don't seem to validate either behavior and this fixes the audio for both games. Sour 2023-04-05 20:49:02 -04:00
  • 2f3ccc92c3 PCE: Fixed CPU bug that caused memory flag to not be restored properly by RTI If any IRQ occured immediately after SET, returning from the IRQ would have the memory flag cleared, which caused the next instruction to behave completely differently from what was intended. This caused issues in Ankoku Densetsu because it uses SET a lot and has the timer IRQ running constantly Sour 2023-04-04 22:10:08 -04:00
  • 28b03d8434 Debugger: SNES - Fixed RMW instructions not displaying the correct address/value in 16-bit mode Sour 2023-04-04 17:46:57 -04:00
  • f1921b365f PCE: Fixed freeze when using the start option in Record of Lodoss War Sour 2023-04-02 16:45:29 -04:00
  • 3a77015a7c Debugger: PCE - Fixed read/write highlights and breakpoints for ADPCM memory Sour 2023-04-02 15:39:12 -04:00
  • 228586ab12 SNES: Mouse - Added left/up flags to save state data Sour 2023-04-02 15:28:21 -04:00
  • ce9dcaec62 PCE: Fixed SGX priority mode 2 behavior Based on sgx3b demo (which is supposed to have been validated on hardware) No supergrafx games appear to use this mode Sour 2023-04-02 13:11:45 -04:00
  • 95e302a0d8
    SNES: Mouse keeps previous Up/Left flag value when not moving (#16) NESblast 2023-04-02 15:23:17 -04:00
  • ca10f96551 SNES Mouse maintains Up and Left flags Controllerhead 2023-04-02 12:52:23 -04:00
  • 6e68346c5a UI: Release mouse cursor when window loses focus Sour 2023-04-02 10:57:08 -04:00
  • bd4d4e8326 UI: Added more mouse speed levels in input config Sour 2023-04-02 10:32:10 -04:00
  • 01c65c3549 PCE: Fixed shaking in Final Soldier & Jackie Chan Both games do CLI followed by LDA $0000 in their IRQ handler. The old logic would prevent an additional IRQ from firing after the LDA, because the LDA acknowledges the IRQ. But at this point, the CPU already processed the IRQ and will execute it anyway (the acknowledge is too late because it occurs on the last cycle of the instruction). Both games rely on this behavior, otherwise the IRQ handler's logic is executed too fast and the shaking occurs depending on the timing of the timer irq vs the rcr irq Sour 2023-04-01 17:17:18 -04:00
  • db6b03a5e6 Debugger: Register Viewer - Added more PCE values Sour 2023-04-01 17:12:10 -04:00
  • dccc8e2f49 SNES: Mouse - Remove the old logic, only keep the more hardware-accurate one Sour 2023-04-01 16:54:12 -04:00
  • f0391bddd7
    SNES: Add SNES Accurate Mouse Movement (#15) NESblast 2023-04-01 16:38:40 -04:00
  • 45b0acc129 Add SNES Accurate Mouse Movement Controllerhead 2023-04-01 14:00:06 -04:00
  • 3edd8b6900 Debugger: Added "View in memory viewer" action in breakpoint list Sour 2023-03-29 21:19:27 -04:00
  • 6428db8804 Debugger: Memory viewer - Prevent tooltips from being shown when mouse is below the hex content Sour 2023-03-29 21:13:24 -04:00
  • c6ce3cb577 Debugger: Memory Viewer - Added +X byte to label name in tooltips for multi-byte labels Sour 2023-03-29 21:02:50 -04:00
  • a6ff48a1df Debugger: Fixed "find all occurrences" returning the same result multiple times Sour 2023-03-29 20:40:52 -04:00
  • 99acfc71b9 NES: HD Packs - Small performance improvement for additional sprites Sour 2023-03-28 20:10:55 -04:00
  • 9e7a5ab146 NES: HD Packs - Improved performance when a large number of <addition> tags are defined Sour 2023-03-27 19:46:17 -04:00
  • 42e96d7e90 NES: Removed left/right side padding pixels These were causing some issues on the edges of the screen, better to pretend the picture is surrounded by black pixels Sour 2023-03-27 18:59:22 -04:00
  • 4df8a636f1 NES: Restored 2-phase ntsc filter when used on PAL games + fixed phases when overclocking is enabled Sour 2023-03-27 18:04:05 -04:00
  • 3350c246a1 NES: Improved horizontal bleed/blur behavior for bisqwit NTSC filter + use better default i/q values (credits to rainwarrior) Centers the effect of the filters, which prevents the color bleed from only appearing on the right side of the original pixels Sour 2023-03-26 22:57:04 -04:00
  • 77acdab584 NES: Fixed phase for NTSC filters, allowing 3-phase pattern for Battletoads Sour 2023-03-26 19:53:07 -04:00
  • 226408d539 SNES: Fixed SA-1 regression caused by previous commits Sour 2023-03-26 12:23:11 -04:00
  • ef64e86904 SNES: Emulation mode fixes -Perform dummy writes when needed in emulation mode -Prevent REP/RTI from clearing the M/X flags in emulation mode Sour 2023-02-08 18:29:51 -05:00
  • 346b43ea13 SNES: Fixed CPU bugs based on TomHarte's test suite -Fixed order of operations in JSL, etc. -Fixed order of writes in 16-bit RMW operations -Fixed wrapping behavior for some instructions (direct addressing, jumps, stack relative indirect addressing, etc.) Sour 2023-02-05 20:33:13 -05:00
  • 0195e2b06a Debugger: Improved layout when resizing breakpoint/label edit windows Sour 2023-03-25 11:21:11 -04:00
  • 10d64cf110 Debugger: Fixed viewers sometimes being kept indefinitely in the active viewer list after being closed Sour 2023-03-23 22:48:44 -04:00
  • 019b46aabb UI: Fixed renderer not resizing properly when swapping between audio files and regular roms Sour 2023-03-21 20:57:35 -04:00
  • 59279810ef UI: Prevent dropdown in popup window from opening a double-click e.g double-click on breakpoint list could cause the memory type dropdown to open when the mouse button was released Sour 2023-03-21 20:44:43 -04:00
  • c13f6aef2e Audio: Clear audio buffer when a new game is loaded while the emulator is paused The last bit of audio from the previous game was playing at the start of the new game in this scenario Sour 2023-03-21 19:57:43 -04:00
  • 32a0eef399 SNES: Allow loading SPC files that don't contain the extra RAM section at the end Sour 2023-03-21 19:51:08 -04:00
  • 061dd406bb SNES: Fixed graphical glitch when fast-forwarding with frame skipping enabled when game switches between low resolution/high resolution modes Sour 2023-03-19 16:33:46 -04:00
  • 84e27a52c3 UI: Replaced ItemsRepeater usage with ItemsControl Sour 2023-03-19 15:08:19 -04:00
  • 864ae84a98 NES: HD Packs - Added loop position parameter for bgm tags Sour 2023-03-19 13:37:24 -04:00
  • df7ac1fd5e SNES: Added RAM initialization exception for Nichibutsu Arcade Classics When random, Frisky Tom can freeze during its attract sequence Sour 2023-03-18 21:26:50 -04:00
  • 21cc5a77da SNES: Added exception for Super Formation Soccer 95 to prevent issues when save ram is initialized with random values Sour 2023-03-18 18:31:26 -04:00
  • afbaaed564 NES: HD Packs - Fixed blank/corrupted screen when hd pack doesn't contain any <tile> tags Sour 2023-03-18 18:13:47 -04:00
  • 7c38ed47f9 NES: HD Packs - Added blend mode option to backgrounds Sour 2023-03-18 11:18:36 -04:00
  • 11dbb90732 NES: HD Packs - Performance tweaks Keep BGs in separate arrays based on their priority to avoid having to scan thousands of background entries for layers that have no backgrounds at all on each frame Sour 2023-03-18 11:16:13 -04:00
  • a7640e28d2 Debugger: NES - Fixed "save rom as" not working properly with CHR ROM games Sour 2023-03-17 21:54:17 -04:00
  • c92bd3802f UI: Fixed some dark mode color issues Sour 2023-03-17 21:48:02 -04:00
  • 21e8dd63d8
    macOS: Added codesigning for dev builds (#13) James Rowe 2023-03-16 18:14:46 -04:00
  • 197db017c0 Changed identity name to "Mesen" Sour 2023-03-16 18:13:37 -04:00
  • 4ff54ed624 Debugger: Tile Editor - Added flip/translate/rotate actions Sour 2023-03-15 22:05:05 -04:00
  • 87ea3c4a9e Debugger: Suppress "bring to front on break" behavior when the trigger is another operation (e.g save state/load state, etc.) Sour 2023-03-15 19:35:04 -04:00
  • 65838e9aff Debugger: Added shortcut for enable/disable breakpoint in list Sour 2023-03-14 23:05:25 -04:00
  • 0f8b3bc823 Debugger: Allow multi-select check/uncheck in lists, added enable/disable context menu action in breakpoint list Sour 2023-03-14 21:43:48 -04:00
  • bb0bf735f7 Debugger: SNES - Add DSP registers to memory viewer Sour 2023-03-14 20:03:12 -04:00
  • 91b7ebbd60 SNES: Randomize DSP register values on power on, but reset the internal state to 0 Sour 2023-03-14 19:46:47 -04:00
  • 83fc79b55e UI: Fixed list header text color in dark mode Sour 2023-03-13 23:11:20 -04:00
  • 0c0a45d3b6 Debugger: Fixed double-click on disassembly scrollbar buttons causing disassembly to jump back to the selected row Sour 2023-03-13 23:00:46 -04:00
  • ab2489b3ec UI: Tweaked minimum sizes for game selection screen to allow displaying more than 1 entry at 3x scale on GB Sour 2023-03-13 18:45:46 -04:00
  • eecd92e8a9 UI: Use closest scale that matches the current window size when starting a game that changes the resolution Makes it less annoying when switching from e.g nes to gb or vice versa, and prevents window shrinking when opening a GB game after launching the emulator Sour 2023-03-13 18:45:23 -04:00
  • afa7727504 UI: Changed OS checks to use simpler code Sour 2023-03-13 00:32:16 -04:00
  • ab85f89ea6 Setup: Added option to turn on/off auto updates Sour 2023-03-13 00:15:45 -04:00
  • e255ae01d9 Utilities: Update stb_vorbis to latest version Sour 2023-03-13 00:08:41 -04:00
  • 30aec4a0a9 UI: About - Added some missing libraries to the list Sour 2023-03-13 00:08:20 -04:00
  • bdd87cde5c NES: HD Packs - Fixed sound wrapping issues when too many sound effects are playing at once (clip to min/max instead) Sour 2023-03-12 23:42:20 -04:00
  • 7a4a9b5e45 SNES: Fixed freeze after reset in some games Affects Ranma Chounai Gekitou Hen (and possibly others) Sour 2023-03-12 19:33:28 -04:00
  • 08301e122a SNES: Partially fixed glitchy frames when rewinding an interlaced game Looks less glitchy, but still doesn't display the right image for one frame after loading each state Sour 2023-03-12 19:31:23 -04:00
  • a86f5abfd1 SNES: Use double buffering for interlaced games (like all other games) Improves fast forward performance when video filters are used + Fixed issues with frame skipping that could cause only half the lines to be redrawn for an extended period of time at some emulation speeds Sour 2023-03-12 17:57:40 -04:00
  • 4ea985f4b5 When a file has an unknown extension, check for known file signatures to pick a core Sour 2023-03-12 16:39:48 -04:00
  • e191a22451 Debugger: GB - Prevent tooltips from showing a work ram address for registers at $FF00+ Sour 2023-03-12 15:11:39 -04:00
  • feaa435441 GB: Added MBC3 RTC support Fixes the ax6 and cpp RTC tests Sour 2023-03-11 15:45:08 -05:00
  • 194edcf1f6 UI: Fixed some configuration options (e.g volume) getting set to 0 when closing the config window (without applying nor making any changes) Sour 2023-03-11 11:39:16 -05:00
  • 3ffbf26710
    Debugger: Add WLA-DX V2 symbol (.sym) support (#14) Justin Bruce Van Horne 2023-03-11 11:06:56 -05:00
  • 9e2ef3c2a1 GB: Improved noise channel initial timer after being triggered Fixes SameSuite's channel_4_delay, channel_4_equivalent_frequencies, channel_4_frequency_alignment tests Sour 2023-03-11 01:14:17 -05:00
  • 7e01b3f941 Add WLA-DX V2 symbol (.sym) support Justin Bruce Van Horne 2023-03-10 23:07:21 -05:00
  • 0881814157 GB: Length counter hitting 0 on square channel should also update output Fixes channel_1_stop_div, channel_2_stop_div Sour 2023-03-10 22:37:11 -05:00
  • ff4561f1aa GB: Wave channel output should update when length counter hits 0 Fixes channel_3_stop_div test Sour 2023-03-10 21:25:06 -05:00
  • 8fef338355 GB: Wave channel output updates immediately when stopped via NR30 Fixes channel_3_stop_delay test Sour 2023-03-10 21:13:57 -05:00
  • 52220c8a1e GB: Wave channel output should update when writing to NR32 Fixes channel_3_shift_delay test Sour 2023-03-10 21:06:14 -05:00
  • 5ff7d29ffe GB: Added CGB speed change delay Matches speed_switch_timing_stat (but not speed_switch_timing_ly) - probably not quite accurate but better than no delay at all Sour 2023-03-10 20:32:09 -05:00
  • a69f38d661 GB: Display clearer error message when cart type is not supported Sour 2023-03-10 18:11:10 -05:00