Commit Graph

399 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 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