Commit graph

341 commits

Author SHA1 Message Date
Devin Acker
b3c448ded1 Merge pull request #67 from undisbeliever/update-debugger
Updates to the debugger
2016-10-30 00:32:19 -04:00
devinacker
59253c9e17 make power-on state less deterministic
(a la later bsnes/higan behavior; mostly affects the accuracy core)
2016-10-29 22:46:12 -04:00
Marcus Rowe
bc6f2c3ead Create breakpoints using the command line arguments
This allows me to use a script to automatically fill the bsnes debugger
with breakpoints. For instance, the following bash line:

    bsnes --show-debugger `grep BREAKPOINT "$symfile" | awk '{print "-b " $1 ":x"}'` "$romfile"

Will open the debugger window and create a CPUBus execute breakpoint
for all symbols containing BREAKPOINT in the symbol file.

See `bsnes --help` or `Application::printArguments` for the format of
the breakpoint string.
2016-10-27 05:47:56 +10:00
Marcus Rowe
64890654be Select VramViewer palette using a cgram widget
Also updated CgramViewer so that it uses the CgramWidget.
2016-10-23 22:09:06 +10:00
Marcus Rowe
94cf77d65a Render the VramCanvas using CGRAM palette data 2016-10-22 20:42:25 +10:00
Marcus Rowe
658468d60c Indent register property names in Properties Table 2016-10-22 18:36:55 +10:00
Marcus Rowe
12d2dc1ff4 Add OAM Second Name Table Address to PPUDebugger and VramViewer 2016-10-22 17:51:40 +10:00
Marcus Rowe
1e0837b873 Fix the width of the run / break button 2016-10-22 02:53:27 +10:00
Marcus Rowe
187f6678cd Make the width of the Vram Viewer fixed
Had to calculate the width manually, requesting the minimum width of the
layout caused glitches.
2016-10-22 02:42:28 +10:00
Marcus Rowe
32c95d370d Show BG/OAM Tile addresses in the Vram Viewer 2016-10-21 21:47:10 +10:00
Marcus Rowe
b5bc76e5d8 Add zoom setting to the Vram Viewer 2016-10-21 20:54:06 +10:00
Marcus Rowe
3d8d6c961c Change the width of the VRAM viewer to 16 tiles
This is to match the internal width of the tilemap on a real SNES
2016-10-21 18:24:38 +10:00
devinacker
79052b3ac5 registeredit: only commit flags on changes by user 2016-08-23 22:39:03 -04:00
devinacker
d62dd6ba3a generate trace.log path correctly 2016-08-23 13:07:54 -04:00
devinacker
2f5a3d087e display current address at bottom of memory window 2016-08-09 23:01:15 -04:00
devinacker
e2fb772322 display correct string on SMP breakpoint
fixes #53
2016-08-09 20:22:21 -04:00
devinacker
9a4dbeea09 improve management of debugger UI state
i.e. enabling/disabling/switching of the run/break/step buttons and
register edit tabs
2016-08-06 23:25:38 -04:00
devinacker
33cf22f843 don't sometimes paint BG over hw rendering context
(this caused flickering when resizing or changing focus which was a
major problem when emulation is paused due to debugging; should address
#49)
2016-08-05 23:38:10 -04:00
devinacker
2fe8550c6b use a proper interface to get/set registers 2016-08-03 21:06:34 -04:00
devinacker
6e961381a7 expose a couple more input options in UI
closes #38
2016-05-04 23:47:42 -04:00
devinacker
f063009f15 give debug trace logs a better filename/location
(fixes #43)
2016-05-04 21:02:53 -04:00
devinacker
c6751e01a1 switch between main/debug windows when appropriate
(should fix #45)
2016-05-04 20:48:02 -04:00
devinacker
4922cb93af don't clear saved path when cancelling file dialog 2016-05-04 20:25:53 -04:00
devinacker
25375ff064 allow using WDM opcode as a software breakpoint 2015-11-16 20:31:54 -05:00
devinacker
98a2846016 fix typo in makefile for linux 2015-11-15 13:49:39 -05:00
devinacker
4f86ca63a6 ugh, gcc 2015-11-14 19:50:01 -05:00
devinacker
6e2e3b82d5 v073+2. the future is now, or something 2015-11-09 19:40:10 -05:00
devinacker
dc7a840691 don't deadlock GUI when windows system menu is open
(should fix #33, and let's mask WM_SYSCOMMAND's param correctly while
i'm at it just in case)
2015-11-08 22:51:29 -05:00
devinacker
9a72f192fc allow searching memory for text in quotes 2015-11-07 23:11:17 -05:00
devinacker
90d5d94932 add memory searching and debugger hotkeys 2015-11-07 22:46:59 -05:00
David Lindecrantz
59c960da5e Compiles again (using Xcode 7.1 and qt installed via brew) 2015-11-04 13:03:43 -05:00
devinacker
a55717a630 also don't try to map 24 bits of SFX space to cart 2015-10-26 21:13:26 -04:00
devinacker
e60ce2f6dd limit SuperFX bus viewing to 00-7F 2015-10-26 20:41:38 -04:00
devinacker
632ef42b58 replace original hexeditor with QHexEdit 2015-09-13 21:57:22 -04:00
devinacker
9583a262c8 get rid of cumbersome "enable breakpoint" checkbox 2015-08-11 22:41:08 -04:00
Alex W. Jackson
cc1b84b649 Allow qtpath to be specified on OSX as well as on Windows 2015-08-11 22:02:30 -04:00
Alex W. Jackson
1f21df71df superfx: more multiply timing fixes; de-template-ify opcodes to greatly reduce compiled code size 2015-07-05 06:47:56 -04:00
David Lindecrantz
21f0a833f4 High DPI icons for OS X. App bundle version strings using same style as within the app. 2015-06-03 09:08:13 +02:00
devinacker
50f1e0894c safer cast of menu actions when loading/saving 2015-06-03 00:10:32 -04:00
Alex W. Jackson
7be2a02453 ui: replace most '#if defined(PROFILE...' with specific PPU/DSP feature checks; allows PPU and DSP components to be mixed and matched 2015-06-01 12:26:45 -04:00
David Lindecrantz
2523c64e5d Added search paths for Qt frameworks installed via Brew (plus some tweaked flags for building from Xcode). Added "Building on OS X" section to README. 2015-05-31 23:00:24 +02:00
devinacker
b4f4c58b79 update memory viewer more frequently
and update the debugger windows independently from
Interface::video_refresh, otherwise it could lead to noticeable
emulation lag every once in a while
2015-05-25 03:19:06 -04:00
devinacker
6f300e6889 keep a proper frame count from the PPU
that updates when the V-count rolls around instead of whenever the
frontend tells it to (unlike the other PPU counter values, this isn't
serialized since it has no effect on actual system state)
2015-05-25 01:06:43 -04:00
devinacker
af6f8195f8 slap frame count on the end of CPU/SA-1 trace
in a really lazy way (using the existing frame count that the debug UI
uses for updates) and only for the CPU and SA-1 because the SMP and FX
don't show PPU H/V count anyway
2015-05-24 18:05:43 -04:00
devinacker
6e8c07b638 add the snazzy new sound viewer (tools menu) 2015-05-22 22:12:40 -04:00
devinacker
a3d2120b09 strip header from ROMs at the correct time 2015-05-21 09:20:40 -04:00
devinacker
1792b8233d re-enable quickload/save menus
the bug that prompted these to be removed no longer happens in Qt 4.8.6
(which is the only version officially supported by bsnes-plus) and I can
only assume such a critical issue would have been fixed a long time ago
by now, so I'm bringing this back hopefully once and for all
2015-05-20 23:11:44 -04:00
devinacker
87bb7fab8d move IPS/header handling out of snesreader
did you know that bsnes v073 actually supported IPS softpatching the
entire time? and that it was implemented in a completely different place
than UPS patching was? and that it also wasn't documented anywhere or
presented to the user at all, and that it was always carried out
regardless of whether or not the user had disabled soft patching in the
file browser? for fuck's sake, byuu
2015-05-17 19:56:05 -04:00
Alex.W.Jackson@gmail.com
3eec88bf82 debugger: add a flag indicating that the debugger is accessing the bus; this is used to suppress unwanted side effects of reads (e.g. cothread switches, latch-on-read registers) and to allow ROM to be modified (in place of MappedRAM::write_protect(), which is going away soon)
git-svn-id: http://bsnes-classic.googlecode.com/svn/trunk@61 fe182637-1eec-a322-cce2-af8e45122353
2015-05-16 10:52:07 -04:00
devinacker
5e29045c7e remove size check from memory editor 2015-05-01 09:39:09 -04:00