Commit Graph

162 Commits

Author SHA1 Message Date
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 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
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 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 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 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
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 b697110098 Rename ISoundProvider to IAsyncSoundProvider to more accurately describe what the service does 2016-12-09 10:24:43 -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
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
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
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 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 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
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 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 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
Hathor86 f70a2c8c6c Merge from TASVideo 2015-11-01 22:01:19 +01:00
zeromus 70e0954f28 CDL - major refactor complete. muuuuch better. 2015-10-28 03:51:53 -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 76f285a58a forgot to add this file, because that's what I do 2015-08-05 20:57:01 -04:00
adelikat 3541c9e975 Make the lag counter settable, and expose this functionality in lua 2015-07-09 13:05:30 -04:00
adelikat 5bcdfb5991 IInputPollable - remove the set on LagCount as it is not needed 2015-06-11 01:23:14 +00:00
adelikat 66a9b8eb5a IInputPollable - don't inherit IEmulator 2015-02-22 16:57:32 +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
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 7cca0be2e7 IEmulatorServiceProvider and BasicServiceProvider - restrict to IEmulatorServices 2015-01-23 20:55:13 +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