Commit Graph

1898 Commits

Author SHA1 Message Date
adelikat 83ba7796f9 Debugger - tooltips on disabled things, explaining the situation 2014-12-20 14:45:06 +00:00
adelikat 888fc35eb0 Debugger - wire up step buttons 2014-12-20 13:48:56 +00:00
adelikat af851b8ad6 Show Step buttons/menu items based on whether it is implemented in the current core 2014-12-20 13:36:22 +00:00
adelikat 0916638e40 Debugger - better checking if something exists or not 2014-12-20 13:12:03 +00:00
adelikat 805bbfb830 Debugger - slight positioning fix 2014-12-20 03:58:07 +00:00
adelikat fe2abe787b Debugger - Register box - set width of textboxes according to the max number of digits needed 2014-12-20 03:52:23 +00:00
adelikat 0965475999 Debugger - Register box - properly detect flags and use button style and better positioning, convert register textboxes to hex, and set max length of the boxes appropriately given the size of the register 2014-12-20 03:47:58 +00:00
adelikat 7bebb66589 IDebuggable - refactor GetCpuFlagsAndRegisters to be IDictionary<string, Register> where Register is a value and a bitsize 2014-12-20 03:19:33 +00:00
goyuken 360ca02b93 tool setting stuff. WIP 2014-12-19 23:33:05 +00:00
goyuken 4441052310 toolmanager: refactor get 2014-12-19 22:21:25 +00:00
hegyak d2fc1f1f8b Hex Editor is not always enabled. 2014-12-19 13:07:20 +00:00
zeromus 4dc4745122 psx - revise disc swapping method. way cooler now, you get a list of discs in the virtualpad box, and changing between them maps to physical operations more logically. 2014-12-19 03:24:48 +00:00
faceshed c6277df979 Use Tool manager to determine the availability of tools during menu opening events 2014-12-18 20:26:46 +00:00
adelikat 42b454a562 Rip out the Atari 2600 debugger 2014-12-18 18:51:22 +00:00
zeromus 3d294ba329 fix psx screenshots 2014-12-18 07:38:56 +00:00
adelikat b8f51ae172 I fail at check ins 2014-12-18 03:24:52 +00:00
adelikat f6d5f64ef2 Debugger - move a function 2014-12-18 02:42:53 +00:00
goyuken cfaf59f887 lua: internal infrsatructure changes to nes library 2014-12-17 23:03:58 +00:00
scepheo eaaaef8f1d RamSearch: Have Restart() handle settings loading so RAM Search actually works again. 2014-12-17 20:04:25 +00:00
goyuken 56d144699d fix compile failure 2014-12-17 18:25:54 +00:00
goyuken ecf8728de6 factor out serviceinjector to emulation.common 2014-12-17 18:17:16 +00:00
faceshed 844f66f9db 2014-12-17 17:41:52 +00:00
goyuken 02b799b491 cleanup NES ppu\nt stuff 2014-12-17 17:26:47 +00:00
adelikat 84c6c94df0 Hex Editor - remove a usage of Global.Emulator 2014-12-17 03:57:07 +00:00
adelikat ffe3be09a4 Remove some now useless logic in the Restart() method of some tools (checking IsHandleCreated and IsDisposed) 2014-12-17 03:48:08 +00:00
goyuken 1504f8d441 itoolform remove spurious restart calls 2014-12-17 03:35:57 +00:00
adelikat cc1b3832f4 Automate the ToolBox tool, it generates its buttons based on IToolForm implementations, that are released (or all in developer build), and that are available (current core provides all necessary dependencies) 2014-12-17 03:28:10 +00:00
goyuken d305b2f538 partially functional ppu viewing tools for quicknes 2014-12-17 03:27:44 +00:00
adelikat 53dc38ee66 ToolManager - manage IsHandleCreated and IsDisposed logic when deciding to restart a tool, still todo: a billion tools do this logic unnecessarily now 2014-12-17 03:21:32 +00:00
adelikat 6ac789f5e8 PCE CDL - don't call restart in the constructor, the ToolManager will take care of that, still todo: a billion other tools do this 2014-12-17 03:20:49 +00:00
adelikat 95c57da72c Ram Watch - add back the text property as "Ram Watch" don't know when that went blank 2014-12-17 03:03:12 +00:00
zeromus 8d0205f962 psx - fix some small bugs in PAL support and make psx options dialog update labels with calculated resolutions so you can better understand what the options do 2014-12-17 02:54:43 +00:00
goyuken 215e155b47 fix recent hex editor regression (would not load) 2014-12-17 02:44:49 +00:00
goyuken eb4aa94546 stuff 2014-12-17 02:33:05 +00:00
goyuken 50704247fa NES: ppu view internal infrastructure 2014-12-17 02:01:48 +00:00
adelikat bb85875b94 Undo the GBGameGenie change, forgot that it also does Game Gear codes 2014-12-17 01:51:52 +00:00
adelikat 4dd4e839ff GB Game Genie - for now add a Gameboy object as a required service, even though it doesn't get used, the tool isn't useful and should not be used on any other core 2014-12-17 01:32:22 +00:00
adelikat 78d462dda3 Atari 2600 debugger - use RequiredService 2014-12-17 01:29:21 +00:00
zeromus 3f15ae4e91 psx - PAL mode now works (required fixing resolution tweaks and firmware setup). also hook up scanline and overscan control options 2014-12-17 01:23:24 +00:00
goyuken 665ead318b nes ppu view infrastructure changes, not complete 2014-12-17 00:35:59 +00:00
adelikat 84f1ba2dd4 PSX - enable 2nd dualshock controller, add 2nd controller to virtualpad 2014-12-16 23:44:23 +00:00
adelikat 03e92ce883 Add a ToolAttributes.cs class, right now it just has a released flag, mark a few tools as unreleased, eventually there's code that will take advantage of this flag 2014-12-16 23:33:07 +00:00
zeromus b3923283d2 emuhawk - fallback to gdi+ on systems with less than 2.0 opengl 2014-12-16 20:24:14 +00:00
zeromus 2255e5c9ea emuhawk - add --gdi commandline so that you can force the program to boot up that way instead of attempting to use a broken opengl by default (take 2) 2014-12-16 19:35:52 +00:00
zeromus 26969addb9 emuhawk - add --gdi commandline so that you can force the program to boot up that way instead of attempting to use a broken opengl by default 2014-12-16 19:22:49 +00:00
hegyak 9dea7cf0b0 Hide Frame Count on Null Emulator. 2014-12-16 04:31:07 +00:00
hegyak 69473b842c Correct Issue 343 2014-12-16 03:36:38 +00:00
zeromus c43dd9fc34 psx - revise disc switch schema stuff; add MinValue support to analog button and tweak the pip positioning 2014-12-16 03:15:27 +00:00
scepheo 14e2b280ac Removed reference to Global.Emulator from RamSearchEngine. 2014-12-16 01:50:22 +00:00
scepheo 77be509e44 RAM Search: Implement previous type "last change". Fixes issue 331. 2014-12-16 01:19:29 +00:00
goyuken ea47246658 remove the IEmulator inheritance from some services, and fix code as needed 2014-12-15 22:25:06 +00:00
xmikecampx7 00cd8573da Added Draft PSX Schema 2014-12-15 21:54:51 +00:00
goyuken ba6f740382 use service injection for nessoundconfig 2014-12-15 21:21:37 +00:00
goyuken 08d09bc64f a few more itoolform cleanups 2014-12-15 18:13:54 +00:00
goyuken 7b580e7dca tim the tool form taylor 2014-12-15 03:19:23 +00:00
adelikat 0e528d22c2 Debugger - refactor based on having the PCRegisterName property 2014-12-14 17:44:45 +00:00
adelikat dd77eaf0c9 Debugger - add Step Into/Over/Out menu items and buttons, not enabled yet, still need an API to wire up to 2014-12-14 16:40:31 +00:00
adelikat 8648e6ba0a Remove the nes debugger tool 2014-12-14 14:56:16 +00:00
adelikat 227fd64e60 Debugger - a rough basic disassembler (if the necessary pieces are provided by the core), still a lot of details to work out 2014-12-14 14:30:46 +00:00
zeromus 2d56514fde load m3u files. still no disc switching 2014-12-14 10:36:03 +00:00
zeromus ede9620446 psx - settings framework and implement mednafen-compatible display mode 2014-12-14 08:48:23 +00:00
scepheo 7c9f7706d3 ToolManager: added compile-time unknown type version of Load and methods it uses. 2014-12-14 02:15:19 +00:00
adelikat 0b51a88a7d Cheat Editor - don't reference Global.Emulator 2014-12-14 02:03:27 +00:00
adelikat 1a1116c651 NES - make DatachBarcode an emulator service, convert BarcodeEntry to EmulatorService 2014-12-14 02:01:38 +00:00
adelikat e6ea5bdf70 Convert TraceLogger to EmulatorServices 2014-12-14 01:45:24 +00:00
zeromus 24526669fe emuhawk - add options for display of various window components (menu,frame,caption,statusbar). add --chromeless commandline argument and logic for folks embedding in frontends 2014-12-14 01:43:46 +00:00
adelikat 3af65a6498 removed some deletable code I missed 2014-12-14 01:42:05 +00:00
adelikat 685756ea8e Remove LoadTraceLogger() from ToolManager since it was simply a wrapper to manage availability logic, most of those types of properties should be removed now 2014-12-14 01:39:15 +00:00
adelikat e214706e4c remove now unnecessary type checking before autoloading tools 2014-12-14 01:34:58 +00:00
adelikat ce4c3a4ca6 Tool hotkeys - remove a bunch of now unnecessary checks 2014-12-14 01:30:38 +00:00
adelikat 106b9d4848 Tastudio requires IInputPollable 2014-12-14 01:30:09 +00:00
adelikat 30e6aeb0bf ToolManager Load<T> - check IsAvailable() before attempting to load 2014-12-14 01:25:28 +00:00
adelikat 3768e393c7 Convert remaining tools to EmulatorServices 2014-12-14 01:20:19 +00:00
adelikat b12f4c36b1 Convert more tools to EmulatorServices 2014-12-14 00:46:14 +00:00
adelikat c1767a6fe7 convert some nes tools to EmulatorServices, currently they simply require a NES instance, eventually need to use an actual service, that all nes cores could implement 2014-12-14 00:25:50 +00:00
adelikat 5d59e00c20 Convert Genesis tools to use EmulatorServices 2014-12-14 00:12:44 +00:00
adelikat 29d6859167 Debugger - convert to using OptionalServices for the Disassembler 2014-12-13 23:57:23 +00:00
adelikat d1cc13a9c0 BasicServiceProvider - catch any IEmulatorServices that the core implements that aren't defined in the Emulation.Common assembly, and make IGBAGPUViewable an emulator service 2014-12-13 23:45:51 +00:00
scepheo 7f0229d9e6 Added support for OptionalServices and cleaned up ToolManager code. 2014-12-13 23:36:49 +00:00
adelikat 7925b6f939 convert some gb tools to EmulatorServices 2014-12-13 23:26:18 +00:00
adelikat b3a47b911b Debugger - use EmulatorServices 2014-12-13 23:15:39 +00:00
zeromus 979fa2c0f7 displaymanager - maybe, just maybe, successfully get rid of the need for 0xFF000000 in the VideoProvider buffers. Should enable some little speedups and cleanups of other code that had to add the 0xFF000000 alpha channel 2014-12-13 23:04:22 +00:00
adelikat 557309eb6f Fix a bug in ToolManager.Restart() 2014-12-13 23:02:32 +00:00
adelikat 94bd987a73 Convert Cheats to EmuatorServices 2014-12-13 22:57:51 +00:00
adelikat 8eda262ebe convert Ram Watch and Hex Editor to use EmulatorServices 2014-12-13 22:54:07 +00:00
adelikat c00b8ad78e Ram Search - convert to using EmulatorServices 2014-12-13 22:40:04 +00:00
adelikat 6e875625cd CheatEdit - fix a logical error 2014-12-13 22:33:46 +00:00
scepheo b65bf1b5ae ToolManager: Added tool dependency injection on tool restart and load. 2014-12-13 22:32:08 +00:00
scepheo 99506df596 ToolManager: Forgot compiler-time unknown type variants of GetDependencies and IsAvailable. 2014-12-13 22:14:30 +00:00
adelikat 73cd68e5f9 Debugger - Disassembler - cpu setting 2014-12-13 22:10:39 +00:00
scepheo 769cbeb1a0 - IToolForm: Added RequiredServices attribute to define dependencies, and added EmulatorServices for ToolManager to supply them.
- IServiceProvider, BasicServiceProvider: Added compile-time unknown type versions of GetService and HasService.
- ToolManager: Added IsAvailable to test whether all dependencies for a tool are available.
2014-12-13 21:54:59 +00:00
adelikat 15a64b954e Debugger - start some disassembler stuff 2014-12-13 21:41:39 +00:00
adelikat 6933d5ee56 Debugger - rip out tracer and put instead a placeholder groupbox that will house a disassembler 2014-12-13 19:31:10 +00:00
adelikat 81de56707f oops 2014-12-13 18:33:35 +00:00
adelikat c4680f56d4 Debugger - Breakpoints - Add icon 2014-12-13 18:28:50 +00:00
adelikat e659dcb8f7 Debugger - breakpoints - add a toggle button 2014-12-13 18:25:02 +00:00
adelikat 822c8562b0 Debugger - breakpoints - add num breakpoints and num active 2014-12-13 17:48:11 +00:00
adelikat 9997c4fa8d do last commit more correctly 2014-12-13 17:33:02 +00:00
adelikat 18e112536a Debugger - add breakpoint dialog - pop up in a reasonable place, and limit address size based on the core's bus size 2014-12-13 16:59:01 +00:00
adelikat fbe64083e6 update psx controller image cuz spikestuff told me to 2014-12-13 14:44:47 +00:00
adelikat a4e5bdc934 Add dualshock controller image to controller config 2014-12-13 02:16:05 +00:00
adelikat 96af736857 Fix logic in File submenu opening event 2014-12-12 14:25:15 +00:00
zeromus b16497ad24 emuhawk - add a main menu item for Save RAM and bold it if it is dirty; allow it to be manually flushed, instead of having to wait for the client or core to close 2014-12-12 04:22:15 +00:00
adelikat 08fb509a1a Add an IDriveLight Emulator service, and remove the CoreComm properties, and refactor accordingly 2014-12-12 01:49:54 +00:00
zeromus ba3a6ca817 display manager: dont crash when receiving 0,0 buffer size to autosize to, even though that was probably a mistake 2014-12-12 00:39:50 +00:00
zeromus c895d4602f forgot to add 2014-12-11 22:12:10 +00:00
zeromus f5dabcdbf5 psx - add a PSX options menu 2014-12-11 20:31:55 +00:00
adelikat ab312add39 Breakpoints - add in a notion of readonly since we are showing all callbacks in the core, even ones the debugger didn't create, and the debugger managing ones it didn't create is bad news 2014-12-10 23:11:04 +00:00
adelikat cdcb806d8c Debugger - breakpoints - add stuff like activating/deactivating, key presses, double click 2014-12-10 22:59:28 +00:00
adelikat 91353d776b Debugger - basic showing and adding of breakpoints, including pre-existing ones 2014-12-10 22:47:09 +00:00
zeromus f1bd6f0086 less amount / more useful chatter when changing client dimensions 2014-12-10 19:36:16 +00:00
zeromus 4015ba2e50 some cleanup 2014-12-10 19:34:46 +00:00
zeromus e0c09a553b redo how subwcrev stuff is done, so that the subwcrev process doesnt have to run for every project. improves build times. 2014-12-09 19:20:22 +00:00
scepheo 50730ae132 Added nag when loading a movie without SyncSettings. 2014-12-08 22:53:09 +00:00
adelikat ec58c2d34c Don't load missing or empty Sync Settings when loading a movie, just keep the user's current settings rather than forcing default settings on them 2014-12-08 19:07:36 +00:00
zeromus 08ae448257 start adding d3d9 display method, but.. it was more work than gdi+, as I expected. I'll finish it another time. 2014-12-08 02:15:42 +00:00
adelikat 1473db5aa8 Move AddBreakpointDialog to the Debugger folder 2014-12-07 20:17:15 +00:00
adelikat 68e1eae014 MemoryCallbackSystem - implement IEnumerable, Debugger - use it to pre-populate the breakpoint dialog with pre-existing breakpoints 2014-12-07 19:38:42 +00:00
adelikat 1c179da80c MemoryCallback System - another refinement, make an IMemoryCallback and make that the argument for add methods 2014-12-07 19:09:36 +00:00
adelikat 2d1a43dc65 MemoryCallbackSystem - simplify by having a single Add method with a MemoryCallbackType parameter, and some simplifying of client code as a result 2014-12-07 18:53:56 +00:00
adelikat ba31d7d28b Debugger - better handling of what is or isn't implemented on startup, no longer crashes when opened using the QuickNes core 2014-12-07 14:52:09 +00:00
zeromus 556b7b0123 gdi+ display method! 2014-12-07 02:26:52 +00:00
adelikat 415fda2373 Debugger - on close, turn off trace logging 2014-12-06 16:28:42 +00:00
adelikat 97476a8b69 Debugger - breakpoints 2014-12-06 15:07:01 +00:00
adelikat 93692b0220 Debugger - update register values 2014-12-06 13:42:59 +00:00
adelikat 4b8f5b2962 Debugger - add a crude Register box, dynamically reads the cores flags and registers and creates ui, is they are settable it creates textboxes (registers) and checkboxes (flags) with change events that set the core values. If register setting is not implemented, it creates labels instead. Plenty of details to refine about this process. 2014-12-06 01:14:58 +00:00
adelikat 748fab4dfb Debugger - use the Tracer.Header property 2014-12-06 00:21:25 +00:00
adelikat 00523ca5aa Debugger - implement trace logger 2014-12-06 00:18:51 +00:00
adelikat 4a96e58a24 Start a generic Debugger tool, does nothing now except for open and have the standard ui options all tool forms have (such as autoload) 2014-12-06 00:03:36 +00:00
adelikat 0b84beec88 Move MemoryCallbackSystem from CoreComm to IDebuggable and refactor accordingly, Lua - tell the user when memory callbacks are not available for a given core 2014-12-05 01:56:45 +00:00
adelikat f5cc38c9cd AsInputPollable() 2014-12-05 00:59:00 +00:00
adelikat e2033c9d2e AsStatable() and also update statusbar saveslots on CloseRom() 2014-12-05 00:52:16 +00:00
goyuken 40416656a2 eliminate snowiy emulator option from CoreComm. this commit is a bit hackish 2014-12-05 00:39:02 +00:00
adelikat 1fad6f4a88 AsSaveRam() 2014-12-05 00:34:57 +00:00
adelikat 04f9081943 in IEmulator extensions add methods such as AsMemoryDomains(), AsStatable() that do the service calling magic. In the client code replace appplicable casts of IMemoryDomains with AsMemoryDomains(), more commits of this nature for the other IEmulatorServices soon to follow 2014-12-05 00:32:29 +00:00
adelikat a91de9ad9c Move TraceHeader out of CoreComm and into ITracer and TraceBuffer 2014-12-05 00:10:48 +00:00
adelikat 309088211c Move TraceBuffer from CoreComm to IDebugable and refactor accordingly 2014-12-05 00:05:40 +00:00
zeromus 29b217b587 big discsystem refactors and preliminary CCD handling. not to be considered stable, but ill start supporting it. 2014-12-04 05:40:10 +00:00
adelikat 529591ce2d Rename ICoreService to IEmulatorService 2014-12-04 02:12:57 +00:00
goyuken f2ff432b3a helpful mouseover tooltips in firmwares config 2014-12-04 00:37:06 +00:00
adelikat 9adc45f4d1 Add a ServiceNotApplicable attribute for cores to mark things like SaveRam and ISettable as not applicable for the given core, update the CoreFeatureAnalysis dialog to not show these interfaces for the given core (and not mark them as incomplete). Set various cores accordingly 2014-11-30 23:41:54 +00:00
adelikat 09cb098705 Core Feature Analysis - don't reflect properties, their get/set methods show up when iterating methods 2014-11-30 23:28:18 +00:00
adelikat 6c08847c38 Disable Rewind & States menu item based on if the core is IStatable 2014-11-30 22:58:03 +00:00
adelikat 745b8f555b Controller Config menu item - disable based on ControllerDefinition having any buttons rather than check for Null Emulator 2014-11-30 22:56:02 +00:00
adelikat 05533c8562 Lag Counter hotkey logic, and Tastudio depends on both IStatable and IInputPollable 2014-11-30 20:32:25 +00:00
adelikat a83d714c42 Break off IsLagFrame and LagCount from IEmulator and put into its own interface IInputPollable, and refactor cores as necessary. EmuHawk - account for the possibility that a core is not an IInputPollable, and do things like disable the lag counter menu item. Still some front end todos. Also still todo, move the InputCallbackSystem from CoreComm to IInputPollable 2014-11-30 20:29:30 +00:00
adelikat 15ccb45dce Don't show save slot stuff in the Statusbar if core is not an ISettable 2014-11-30 19:52:32 +00:00
adelikat 2bd45e653c Check HasSavestates() on some hotkeys 2014-11-30 19:48:10 +00:00
adelikat 2ae3609791 Replace an IsNull() check with a Global.Game != null 2014-11-30 18:52:46 +00:00
adelikat 6ae238b725 Remove a dubious IsNull() call 2014-11-30 18:49:58 +00:00