Commit Graph

513 Commits

Author SHA1 Message Date
adelikat bc42af0fa6 Libsnescore - Break off IEmulator implementation into a separate file 2017-04-19 10:36:08 -05:00
adelikat 7b336664b9 fix ups to the documentation of service interfaces 2017-04-19 09:41:26 -05:00
adelikat d1d6c20749 break SNES settings code into its own file 2017-04-19 08:31:48 -05:00
J.D. Purcell b53502eed8 Spaces -> tabs. 2017-04-15 16:37:30 -04:00
J.D. Purcell ed3bf0e62b Fix mixed line endings. 2017-04-15 15:53:02 -04:00
nattthebear 5b41b7260b some snes controller rough in 2017-04-15 15:40:34 -04:00
adelikat 7ab8455e84 misc code cleanups in BizHawk.Emulation.Common 2017-04-14 12:28:23 -05:00
adelikat 37c989c661 more misc code cleanups, with some C#6isms 2017-04-10 11:24:53 -05:00
J.D. Purcell b2a28339d1 Use 'nameof' operator. 2017-04-10 08:36:42 -04:00
Wyst3r 4c0bfd4764 m64p: Use built-in debugger to avoid major slowdowns when breakpoints are set.
Conflicts:
	BizHawk.Emulation.Cores/Consoles/Nintendo/N64/N64.IDebuggable.cs
2017-02-24 10:41:22 +03:00
feos 39c5aae61b Revert "Merge pull request #731 from Wyst3r/master"
This reverts commit 318abf691a, reversing
changes made to 5d4c8020c2.
2017-02-23 16:56:38 +03:00
Wyst3r d665bad4c5 Merge branch 'master' into master 2017-02-22 19:51:13 +01:00
adelikat f640271a47 dont' use ThrowsError when deciding if a method is implemented. Simply checking for an exception is no longer reliable sinc most GetSamplesAsync() methods correctly do this by design 2017-02-08 17:48:32 -06:00
zeromus bd1f48540d fix #760 2017-02-05 18:33:13 -06:00
adelikat ab1a22bf31 add TotalExecutedCycles as an IDebuggable property, and implement it in cores with the information readily available (and throw NotImplementedExecptions in the remaining). wire the property up to lua with emu.totalexecutedcycles(). Stil todo - wire it up to the Debugger gui 2017-01-09 19:23:05 -06:00
adelikat 9c3e4cd411 Merge branch 'master' of https://github.com/TASVideos/BizHawk 2016-12-19 10:50:26 -06:00
adelikat 961aec90dc ControllerDefinition - clean up the code some and add documentation 2016-12-19 10:50:03 -06:00
adelikat 40be0dd0b3 Refactor the way a Null ControllerDefinition is created 2016-12-16 23:34:18 -06:00
adelikat 2b4267d2c9 nitpicky code refactorings on unimportant files, nothing to see here 2016-12-16 15:47:28 -06:00
adelikat eda79c2212 Make an interface for CodeDataLog, and move CodeDataLog to Base Implementations 2016-12-16 11:33:02 -06:00
adelikat 691632f188 More IAsyncSoundProvider and related classes to BizHawk.Emulation.Cores and make them internal, since they are implementation details, and they are deprecrated and not intended to be used in future cores. 2016-12-16 08:50:05 -06:00
J.D. Purcell cabf27f5d9 Move a few files related to sound output from BizHawk.Emulation.Common to BizHawk.Client.EmuHawk. 2016-12-15 19:25:09 -05:00
adelikat 54eb678387 create an ICreateGameDBEntires specialized service and have Atari2600 implement it. Use this in the log window instead of sneaky reflection to access the method 2016-12-15 10:45:20 -06:00
J.D. Purcell d95edc273e Sound cleanup. 2016-12-14 23:26:01 -05:00
J.D. Purcell 84480e4235 Fix sound bugs + cleanup. 2016-12-14 21:19:46 -05:00
adelikat adb7af2134 a few nitpick cleanups 2016-12-14 14:30:43 -06:00
adelikat 8e4142e839 ControllerDefinition - fix CategoryLabels not being copied in the copy constructor 2016-12-14 14:24:37 -06:00
adelikat 2d9213c379 IController - Remove the indexer property and refactor code accordingly, also simplify and cleanup many of the IController implementations 2016-12-14 14:12:16 -06:00
adelikat aaed8e67d5 NullController - remove a bunch of methods that were originally part of IController but no longer are, and clean up the code a bit 2016-12-14 09:16:54 -06:00
adelikat 40418ad25d More documentaiton for IEmulatorServices, related classes/interfaces, and base implementations 2016-12-14 09:11:07 -06:00
adelikat f83a54dff7 better documentation of IEMulatorSErvices 2016-12-13 15:56:20 -06:00
adelikat dd48864058 AsVideoProviderOrDefault() extension method 2016-12-12 13:47:11 -06:00
adelikat 5caae72682 NullVideo - make Instance static 2016-12-12 13:43:56 -06:00
adelikat f90db5beff IEmulator - more documentation 2016-12-12 13:14:01 -06:00
adelikat 5ff33e7569 Rename IController.Type to IController.Definition to more clearly describe the property 2016-12-12 12:30:32 -06:00
adelikat 618f5de54f PC Engine - break off services into their separate files 2016-12-12 10:23:07 -06:00
adelikat d78671a7e4 Emulation.Common - Separate some attributes to their own file, and better document some attributes and interfaces 2016-12-12 09:00:58 -06:00
nattthebear dbdac5e3f2 Fix stuff or not 2016-12-11 22:37:28 -05:00
nattthebear 010fb01bf8 Don't leak memory in the speex resampler wrapper if something goes bad 2016-12-11 20:02:16 -05:00
nattthebear 871c16028a Don't leak memory in the blip buff wrapper if something goes bad 2016-12-11 19:57:34 -05:00
nattthebear eb72ff9053 Swag up NullSound 2016-12-11 14:07:12 -05:00
nattthebear afc19affac minor beautification of DCFilter.cs 2016-12-11 13:20:04 -05:00
adelikat b73a500d6b Major sound provider refactor. Create a unified interface ISoundProvider, that is an IEmulator service and break it off of IEmulator. IAsyncSoundProvider was kept as a shim for now, for legacy cores that were inherintly async. 2016-12-11 11:15:00 -06:00
adelikat a898599e69 NullEmulator - document non-applicable services 2016-12-09 10:28:27 -06:00
adelikat b697110098 Rename ISoundProvider to IAsyncSoundProvider to more accurately describe what the service does 2016-12-09 10:24:43 -06:00
adelikat 5b31b33713 Remove a now unused MaxVolume property from some sound provider classes 2016-12-08 20:06:25 -06:00
adelikat 5e800b7bba cleanup some unsightly comments in ISyncSoundProvider 2016-12-08 19:54:38 -06:00
adelikat 657de56123 Remove MaxVolume from ISoundProvider, provide an IMixedSoundProvider interface for classes that want to use SoundMIxer as part of their sound provider implementation 2016-12-08 19:51:17 -06:00
adelikat 4d1629e271 Completely divorce IVideoProvider from IEmulator, use a NullVideo implementation in MainForm if a core does not provide one, Remove VideoProviderGlue. Note that NullEmulator does implement IVideoProvider still, since we like to have fun with that one 2016-12-07 13:21:18 -06:00
adelikat 281b83fd40 Remove some usages of VideoProviderGlue in multihawk 2016-12-04 10:17:16 -06:00
zeromus 327606234f fix can't use neshawk (recent regression) 2016-11-19 20:07:17 -06:00
Wyst3r 86b16a80d6 m64p: Use built-in debugger to avoid major slowdowns when breakpoints are set. 2016-11-19 12:02:39 +01:00
hegyak 79a9b4c349 Resolves Issue 729. 2016-11-16 05:27:37 -08:00
zeromus 595a207c97 add new field to gamedb to specify which core should be used.
allow it to be 'neshawk' or 'quicknes'.

this should only be employed by end-users; we won't make those choices in the gamedb officially.

the quicknes blacklist is still implemented separately.

yeah, that's a lot of prioritization levels.
2016-11-12 19:23:54 -06:00
feos e2d5a1d390 tastudio analog editing: typing past max digits overwrites existing value
this required a new method in FloatRange class
2016-11-12 15:30:44 +03:00
zeromus a7d2b8d7f7 * add a new IToolForm update mechanism which has extensible update points (so a tool can both pre- and post- update)
* make trace logging "core-pushes" model, to a sink installed by the frontend. This sink can go straight to the disk without wasting memory if that's what the Trace Logger tool has selected; or the Trace Logger will buffer it if it needs to.  Formerly, we had a "core-pushes-to-buffer" and "client-pulls-once-per-frame" which necessarily caused huge buffers no matter what was going on.
2016-08-13 15:31:26 -05:00
parasyte 71c7edbb24 Add address mask setting for breakpoints 2016-08-08 04:37:39 -07:00
Isotarge 5a20a520bd Tools: Ram -> RAM #669 2016-07-22 01:32:54 +09:30
nattthebear 7b19db2d64 Fix NES memory domains 2016-07-16 16:13:50 -04:00
zeromus a9c0211d46 change a bunch of old googlecode urls in assemblyinfos 2016-06-13 11:34:27 -05:00
zeromus 0e7adbd818 fix bug from 111648cf98 breaking hex editor and maybe other stuff 2016-06-01 23:05:56 -05:00
Isotarge c4fa170b9e Fix crash & memory leak when opening hex editor with the N64 core loaded 2016-05-09 18:42:21 +09:30
zeromus 75173f2596 add sram memdomain to mgba 2016-04-18 21:46:27 -05:00
zeromus 859f4e3c01 fix 2 watch-related bugs and a typo in an error message 2016-04-15 22:43:14 -05:00
nattthebear 111648cf98 Break a bunch of memory domain stuff with pointless refactoring 2016-04-13 19:50:06 -04:00
zeromus 776e696e09 mgba - fix bug where hard reset caused memorydomains to get permanently wrecked 2016-03-27 16:35:34 -05:00
nattthebear 4bd73a626f Add Monitor support to BizInvoker. Monitors are called right before (Enter) and right after (Exit) each interop method call. Possible applications include AWE mutex+mapping, and cothread no-GC regions. If you ask for an invoker without monitor, this commit adds no overhead because the code isn't generated. 2016-03-22 20:17:28 -04:00
nattthebear 3bc6fe1b04 Add the elf stuff back to solution (doesn't do anything, don't use, ugly and embarassing, etc). Switch gpgx to use bizinvoker and slash a few hacks there. Bizinvoker - add support for forwarded attributes in Compatibility mode ([Out], [In]), and support enum, ref enum, and enum[]. Misc cleanup. 2016-03-10 22:00:52 -05:00
adelikat 5cd11d0bb4 Move Sound component objects from Emulation.Common to Emulation.Cores so they live in the same assembly as the calling cores 2016-03-04 08:37:09 -05:00
adelikat 20f3e235f8 Add documentation to the Emulation.Common IEmulatorService interfaces 2016-03-01 21:10:50 -05:00
adelikat 570eff2b8b Emulation.Common - Move Emulator Services to their own folder 2016-02-28 21:09:06 -05:00
adelikat b3dd9d26dc Misc code cleanups in Emulation.Common 2016-02-28 19:03:01 -05:00
nattthebear 2a0e859a85 Add 64 bit build (doesn't work yet), move SlimDX.dll 2016-02-28 15:06:03 -05:00
adelikat 768905b2db Make an ISpecializedEmulatorService interface to show the intent of certain interfaces. In the core feature analysis, don't show these are unimplemented, as they aren't expected to be implemented by all cores. Make ILinkable inherit this interface.
Also check in ILinkable, I forgot to do that last time
2016-02-28 14:06:11 -05:00
adelikat f1f45afd83 Remove CoreComm link cable properties and turn it into an ILInkable service instead 2016-02-28 13:52:17 -05:00
adelikat 7a4a210ccc Remove some unused code and usings 2016-02-28 13:36:17 -05:00
adelikat fde8dc3d1c Add a TODO! 2016-02-28 13:26:34 -05:00
adelikat 050fa6d86b ocd cleanup 2016-02-28 12:23:11 -05:00
adelikat f9c9994161 Refactor GPGX trace logger - make a CallbackBasedTraceBuffer abstract class in Base Implementations with an abstract method CreateTrace, and inherit it as a GPGXTraceBuffer. 2016-02-23 21:58:40 -05:00
Anthony Konzel ac9a4ef777 Apply C64 core update patch. 2016-02-22 17:50:11 -06:00
zeromus 0eb6e83384 glcontexts can specify versions and clean themselves up 2016-02-21 17:19:34 -06:00
adelikat f5e679fa0d Refactor ITraceable to work on TraceInfo objects that separate Disassembly and Register information. Make Tracelogger two columns. 2016-02-21 17:34:42 -05:00
nattthebear c77de0e8af stuff 2016-02-21 14:00:11 -05:00
nattthebear 1c4c5fb4a3 Rough in some code for BizInvoke in mono 2016-02-20 11:54:44 -05:00
nattthebear 787711389a Clean up and work on BizInvoker some more 2016-02-20 11:30:05 -05:00
nattthebear ca56627197 Add a second form to BizInvoker that creates delegate types and uses GetDelegateForFunctionPointer. This allows slower but more complex pinvoke to be easily done when needed. 2016-02-18 21:07:12 -05:00
nattthebear 96fc7c9ec1 Add experimental interop library to quicknes. Still needs work... 2016-02-17 20:18:01 -05:00
scrimpeh ef1bc65ce6 IInputPollable - Make IsLagFrame settable 2016-01-26 11:34:42 +01:00
Hathor86 c7dcb42b94 Merge from maser@TASVideos 2015-11-15 11:27:00 +01:00
zeromus 7702ae5f3c work on keyboard input, but hasnt been tested yet. also reorg the core a bit 2015-11-08 22:05:48 -06:00
zeromus 53fcc09c08 various bugfixes to system/save pathing and support CAN_DUPE, to stabilize the gambatte and neopop cores 2015-11-08 19:18:08 -06:00
Hathor86 5c36c16160 Fixing merge 2015-11-08 22:57:54 +01:00
Hathor86 cc2c888870 Merge remote-tracking branch 'refs/remotes/TASVideos/master'
Conflicts:
	BizHawk.Client.EmuHawk/MainForm.Designer.cs
	BizHawk.Client.EmuHawk/MainForm.cs
	BizHawk.Client.EmuHawk/tools/CDL.Designer.cs
	BizHawk.Client.EmuHawk/tools/CDL.cs
	BizHawk.Client.EmuHawk/tools/CDL.resx
	BizHawk.Common/InstanceDll.cs
	BizHawk.Emulation.Common/CodeDataLog.cs
2015-11-08 22:41:51 +01:00
zeromus 5c16f8b107 fix some assorted bugs, and experiments with handling more environment calls 2015-11-07 02:29:04 -06:00
zeromus 7651f418fe usably functional libretro player 2015-11-07 00:14:59 -06:00
zeromus c68fdc511b CDL - fix snes games with no cartram 2015-11-03 23:59:42 -06:00
zeromus f3626b9605 snes CDL 2015-11-03 23:45:57 -06:00
Hathor86 f70a2c8c6c Merge from TASVideo 2015-11-01 22:01:19 +01:00
zeromus 1ce0437c3d CDL - add .cdl file map to dialogbox display 2015-11-01 11:23:33 -06:00
zeromus 70e0954f28 CDL - major refactor complete. muuuuch better. 2015-10-28 03:51:53 -05:00
zeromus 6a042cc8ac fiddle around with CDLog menu items 2015-10-27 19:49:13 -05:00
adelikat 400e4f4800 Add an empty ICodeDataLogger emulator service, make it a required service for CDL.cs 2015-10-27 19:03:56 -04:00
zeromus 0ff0749191 add IMemoryDomains.Has 2015-10-26 21:41:43 -05:00
adelikat 32a2711303 When clearing lua callbacks, handle the case that input callbacks might not be implemented, also handle memory callbacks in a more consistent way 2015-10-12 19:02:03 -04:00
Kabuto f7c15bfd0f Fixed indentation and TODOs 2015-09-28 20:53:19 +02:00
Kabuto 1e9564a337 C64 core: tape loading added, lots of bugfixes and improvements 2015-09-28 01:30:58 +02:00
adelikat 76f285a58a forgot to add this file, because that's what I do 2015-08-05 20:57:01 -04:00
adelikat ba21484ddd add IRegionable as an emulator service to indicate NTSC vs PAL, etc. Refactor cores that conveyed this information to use this service, fixed cheaty reflection to grab this info to use the service instead, marked some cores as region not applicable where it made sense to me (I'm sure I'm wrong in some cases) 2015-08-05 20:12:09 -04:00
Suuper f9cd2f4075 -TAStudio: Players' 2, 4, etc input columns have darkened bg colors.
-LagLog is now moved over to new savestate-anchored movies
2015-07-23 12:55:22 -05:00
zeromus 6e1cde2793 hookup PSF support 2015-07-20 23:11:00 -05:00
zeromus a7ae3c0cfc Merge branch 'discsys'
Conflicts:
	BizHawk.Emulation.Cores/BizHawk.Emulation.Cores.csproj
	BizHawk.Emulation.Cores/Consoles/Sega/gpgx/GPGXDynamic.cs
	libmupen64plus/mupen64plus-win32-deps
2015-07-11 14:01:44 -05:00
zeromus a6f37173b0 add GameInfo DB options fetcher for string type 2015-07-11 13:47:04 -05:00
zeromus 691531421a more discsys reorg 2015-07-11 13:46:57 -05:00
zeromus 67468e93ec discsys reorg and move CDAudio to BizHawk.Emulation.Common for cleaner assembly reference dependencies 2015-07-11 13:46:56 -05:00
adelikat 3541c9e975 Make the lag counter settable, and expose this functionality in lua 2015-07-09 13:05:30 -04:00
adelikat 71f23f4886 nothing to see here 2015-06-11 13:13:11 +00:00
adelikat 5bcdfb5991 IInputPollable - remove the set on LagCount as it is not needed 2015-06-11 01:23:14 +00:00
adelikat 26769ba476 Add .do and .po files as Apple II files 2015-05-28 00:16:08 +00:00
adelikat 996c7bc847 Add apple II to the core picker 2015-05-26 23:43:55 +00:00
adelikat f4140de3f7 Apple II - get necessary firmware files from the firmwares system instead of a hardcoded path, added entries to the firmware database for the files I have, no idea what other files are compatible 2015-04-09 00:18:01 +00:00
goyuken 3bf2d8f00b fix an apple II controller crash problem introduced in r9264 2015-04-04 00:20:28 +00:00
SuuperW 52659ac9a9 -Hacky removal of a useless save when loading a TasProj
-Made ControlsOrdered much faster
2015-03-23 21:16:13 +00:00
adelikat 997558076f If a core has no system bus, default to main memory if SystemBus is requested, fixes cheat dialog from blowing up on a bunch of cores with no system bus defined 2015-03-05 01:07:31 +00:00
goyuken adc3e96ca8 iemulator single instance attribute. to find out about: PSX, Apple2 2015-03-03 00:23:50 +00:00
adelikat 7e763408e2 Move MainForm.SupportedPlatforms to Emulation.Common.SystemLookup 2015-02-22 17:15:09 +00:00
adelikat 66a9b8eb5a IInputPollable - don't inherit IEmulator 2015-02-22 16:57:32 +00:00
adelikat 36f4eff0f6 add ByteSize to MemoryDomain with a default of 1, set it to not 1 on appropriate domains (I probably missed some, or got some wrong). Have RamSearch use that instead of SystemInfo, remove ByteSize from SystemInfo since it is no longer needed 2015-02-22 15:19:38 +00:00
adelikat 5183a8e20d Nothing to see here 2015-02-17 22:58:25 +00:00
adelikat 0316fa9817 some rom loading stuff 2015-02-08 21:51:15 +00:00
goyuken a782fdb315 take 2 2015-02-05 23:53:25 +00:00
goyuken 995f670d36 frontend tracks loaded firmware: proof of concept 2015-02-05 23:25:28 +00:00
adelikat 8246de14aa IMemoryCallbackSystem - add a flag to indicate whether execute callbacks are available, in lua and the debugger, take this flag into account, also improve some availability checking in Lua memory callbacks. Flag N64 as not having execute callbacks available 2015-01-25 22:14:58 +00:00
goyuken 2c09c10721 memory domain: silent pokes 2015-01-25 20:10:19 +00:00
adelikat e1811371e4 Cheats - only allow writable domains in the domains dropdown 2015-01-25 16:20:53 +00:00
adelikat 7ed8704555 add a CanPoke() extension method for memory domains, checks for a null or not implemented Poke Poke delegate, use it to disable Poke on Ram Search and Ram Watch, still todo - hex editor and lua 2015-01-25 14:37:37 +00:00
adelikat ac442130ae Refactor IMemoryDomains and MemoryDomains to have setters for MainMemory and SystemBus, so a core can customize instead of using a one size fits all assumption. Remove constructor that sets main memory and refactor accordingly 2015-01-24 16:02:28 +00:00
adelikat 7b87f666a1 MemoryDomains - rename CheatDomain to SystemBus 2015-01-24 15:49:02 +00:00
adelikat e194c9f0c4 Memory callbacks - check the HasReads/Writes/Executes flags during the call methods so that the responsibility does not fall on the core, remove the check in the PCE core 2015-01-24 14:52:20 +00:00
adelikat 3c5348eb86 MemoryCallbackSystem - keep track of whether or not there are any callbacks of each type instead of checking .Count > 0, provides a small but noticeable speedup 2015-01-24 14:39:12 +00:00
adelikat 342957fb33 Null Emulator - add some more metadata 2015-01-23 21:50:33 +00:00
adelikat 7cca0be2e7 IEmulatorServiceProvider and BasicServiceProvider - restrict to IEmulatorServices 2015-01-23 20:55:13 +00:00
goyuken af451143bf a bit of memory domain cleanup 2015-01-21 17:36:22 +00:00
adelikat 27d30df0cf Rip out the MemoryDomain.Size hack, and fix up the hex editor. Hex editor now works for N64 System bus, but will very much fail as soon as we have a domain greater than 32 bits 2015-01-18 16:00:20 +00:00
adelikat 91ffc17aae Refacotor MemoryDomain.Size to be long instead of int, still some small todos, but it compiles and seems to work 2015-01-18 15:25:47 +00:00
adelikat 54605ad12f MemoryDomain.cs - convert some public redonly fields to properties with private setters 2015-01-18 13:53:21 +00:00
goyuken 76969200a3 cleanup 2015-01-15 03:58:21 +00:00
adelikat de34d29ac1 Basic Service Provider - don't register IEmulatorService 2015-01-14 23:01:06 +00:00
adelikat 7e50a065a6 make IVideoProvider inherit IEmulatorService 2015-01-14 22:58:14 +00:00
adelikat 5c768b1dc4 IEmulatorServiceProvider - add an AvailableServices property, Service Provider - don't register type object 2015-01-14 22:53:08 +00:00
goyuken 82fcd0bc5e refactor IVideoProvider into a service. uses in mainform and friends are still hacky 2015-01-14 22:37:37 +00:00
adelikat fbdb29b64c refactor IMemorydomains to be a domain list instead of having a domain property, refactor cores to register an IMemoryDomains instead of being one 2015-01-14 21:55:48 +00:00
adelikat c1bb613ab4 Move MemoryDomain.cs to Base Implementations 2015-01-14 20:22:05 +00:00
adelikat 9358e24213 IMemoryDomainList - downgrade from IList to IEnumerable, refactor a spot that needed something more than that 2015-01-14 00:34:50 +00:00
adelikat d62ba4e2b4 Change IMemoryDomains to have an IMemoryDomainList instead of a MemoryDomainList, this is an incremental step into eventually having IMemoryDomains take over the properties of IMemoryDomainList, still todo: reduce the amount of needed functionality in IMemoryDomainList from old and not good code 2015-01-13 22:18:07 +00:00
goyuken d2b0579609 yabause: clean up memory domains slightly 2015-01-13 21:46:28 +00:00
jdpurcell 0a345b0084 Issue 368: Set all platform targets to x86, rename build platforms to match, and remove unused build platforms. 2015-01-13 15:28:58 +00:00
jdpurcell f9da63d71d Fix gamedb loading with Turkish locale. 2015-01-13 02:03:10 +00:00
adelikat 17b4782474 Change "BUS" to "System Bus" in both GBA cores, and the bsnes core, don't account for "BUS" in the CheatDomain property 2015-01-13 00:01:25 +00:00
adelikat c1cbad1b30 rename MemoryDomain.SystemBus to MemoryDomain.CheatDomain to better describe its intent 2015-01-12 23:54:16 +00:00
adelikat 1c54c52fff bk2 - when ordering buttons, support up to 8 players, fixes issues 361 and the remaining problem with issue 360 2015-01-11 15:54:01 +00:00
goyuken d1caf79a56 toolmanager: when electing to close and not restart a tool because of lack of services on the new core, clear out all services attached to the core first. this will turn some existing silent failures into NullReferenceExceptions, likely. fix one such bug in GBAGPUView 2014-12-31 17:18:51 +00:00
adelikat 0f2197cec1 Break off ITracer from IDebuggable, rename to ITraceable and make it an IEmulatorService, refactor things accordingly 2014-12-23 01:58:12 +00:00
goyuken 808e17c3f7 tracelogger settings 2014-12-22 19:01:21 +00:00
goyuken ff8922bb08 itoolform custom config infrastructure; not complete 2014-12-20 21:49:53 +00:00
adelikat ffdeb618f7 IDebugable - add a CanStep() method, and implement it in all IDebuggable implementations 2014-12-20 13:29:57 +00:00
adelikat a8116297a0 Rename Register to RegisterValue 2014-12-20 13:16:15 +00:00
goyuken 198a1c7612 cleanup 2014-12-20 04:25:31 +00:00
goyuken cef4ee7f11 cleanup 2014-12-20 04:17:43 +00:00
goyuken 8745ef190b fix stuff not compiling 2014-12-20 04:16:02 +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 7f2e323a27 upgrade christmas 2014-12-17 19:52:30 +00:00
goyuken ecf8728de6 factor out serviceinjector to emulation.common 2014-12-17 18:17:16 +00:00
goyuken 7efcd7cc0b comments! 2014-12-17 01:20:53 +00:00
goyuken 7cecd20d8d restore large speed regression on NESHawk core from r8379. other managed cores were likely affected. most managed cores not affected because of event tracking... 2014-12-17 01:17:41 +00:00
adelikat bb940473bb Emulation.Common - move some misc enums into Enums.cs 2014-12-16 17:06: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
adelikat d08fb39cb8 Refactor IDebuggable StepInto/Over/Out methods into void Step(StepType type); 2014-12-15 22:19:10 +00:00
goyuken b23294a68f remove the IEmulatorService requirement from IEmulatorServiceProvider and BasicServiceProvider 2014-12-15 21:35:09 +00:00
goyuken 95f92c7ed0 remove iemulator requirement from some of the iemulatorservices 2014-12-15 01:01:02 +00:00
adelikat 725a8fb092 Add StepInto(), StepOver(), StepOut() to IDebuggable, have all cores implement it with unimplemented dummy functions 2014-12-14 18:58:16 +00:00
adelikat 7cc3fdec4b Add PCRegisterName to IDisassemblable 2014-12-14 17:27:45 +00:00
goyuken 10e38e7bc9 fix BANDAI FCG 1 Boards without barcode reader 2014-12-14 17:19:54 +00:00
goyuken 09f9d50f46 IDisassemblable changes. can't compile right now, so might not work 2014-12-14 17:17:22 +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 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
goyuken c6ed49c067 some disassembler stuff 2014-12-13 21:49:15 +00:00
adelikat 9a7715009a Add an IDisassemblable emulator service, currently no core implements it, just the interface and the IEmulator extensions 2014-12-13 20:52:52 +00:00
adelikat 925d6f5a50 BasicServiceProvider - allow the core to return itself when its specific implementation is requested 2014-12-13 16:22:36 +00:00
adelikat 45809ab73f move an attribute in Wonderswan core that was on the constructor on accident, added an AttributeTargets attribute on it that would have caught such an error, add AttributeTargets on some other attributes to help clarify their usage 2014-12-13 02:31:31 +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
goyuken 9513d209b1 comments! 2014-12-09 21:52:03 +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
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 be8563469c Refactor MemoryCallbackSystem. Now that the API is much simpler, the underlying code can be as well. 2014-12-07 19:27:21 +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 3ded6116a6 Break up ColecoVision.cs into separate files 2014-12-05 03:16:08 +00:00
adelikat 7cc5822dfd Add ActiveChanged event to MemoryCallbackSystem 2014-12-05 02:07:56 +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 e2033c9d2e AsStatable() and also update statusbar saveslots on CloseRom() 2014-12-05 00:52:16 +00:00