Commit Graph

37 Commits

Author SHA1 Message Date
adelikat 3945ea0e87 Lua - emu.getregister(s) - suppport SMS/GG/SG-1000, Colecovision, and TI-83 2013-11-11 16:45:45 +00:00
adelikat acf5c19a58 Lua emu.getregister(s) - add NES support for PC register, add support for A2600 and C64 2013-11-11 03:44:37 +00:00
adelikat fb78215590 Lua - Implement emu.getregister() and emu.getregisters(). Only implemented in NESHawk right now 2013-11-11 03:20:33 +00:00
adelikat 1061add64f Refactor MemoryDomains in IEmulator, make a MemoryDomainsList object rather than IList<MemoryDomain>, remove MainMemory from IEmulator and make it a property of this new collection object, also add indexing by name. Refactor cores and tools as needed 2013-11-06 02:15:29 +00:00
adelikat be547db4a1 Move MemoryDomain to its own file, and move the Endian enum into it, also clean up the class a bit, and refactor things as necessary 2013-11-04 02:11:40 +00:00
adelikat 348171bdc5 start Emulation.Common project and move the Emulation/Database folder files to it 2013-11-04 01:06:36 +00:00
adelikat 7b03fc0bc0 Move Buffer.cs and Util.cs from BizHawk.Emulation to BizHawk.Common, and add 1234832983 usings 2013-11-04 00:36:15 +00:00
adelikat bbc12256b2 Rename IEmulator.ResetFrameCounter() to ResetCounts() as that is a more precise term since it resets frame and lag counter variables (and theoretically any other similar counters that could get implemented) 2013-11-03 16:29:51 +00:00
goyuken 0803adc32a add a "BoardName" to IEmulator that an emulation core can use to return useful information about how the rom is being emulated. meant to be mostly for informative purposes; shouldn't rely on it for too much. implemented in GB and NES cores 2013-08-24 16:54:22 +00:00
goyuken 7b7b95e95d add a new field to IEmulator: bool BinarySaveStatesPreferred { get; }. a core should set it to true to indicate that it would prefer to save and load binary savestates (but both types must be supported). set to true on 7800, gb, dgb, gba, n64, snes, saturn cores, as they all create text savestates that are simply dumps of the binary savestate. for the moment, frontend does nothing with this new information. 2013-05-06 20:51:28 +00:00
adelikat 462e861072 last round of pointless code cleanup 2013-04-16 00:42:57 +00:00
adelikat 3e639d65ab Atari 2600 - implement TIA, PIA, and System Bus domains (note that there is no poke ability on the system bus domain at this time) 2013-03-11 01:46:12 +00:00
goyuken 03f5b3ae96 serializer: add another duplicate check (this time on section names within a single section), and fix 2600 savestates 2012-12-18 20:37:31 +00:00
zeromus a4b442abda unify coreinputcomm and coreoutputcomm. there is a slight chance your console will be messed up until i fix a teeny tiny something, since i didnt test them all, since with more recent cores i dunno what roms are working anyway. let me know if i broke anything. 2012-12-10 00:43:43 +00:00
goyuken b7c66cf3c2 Util.Serializer: Consume no data past the end of the last proper section. As a result, when using Util.Serializer in text mode, you MUST enclose your entire savestate in a single section (named to your liking). Fixes input log save\load issues. All old A2600 savestates broken. 2012-11-28 18:27:14 +00:00
goyuken 0094562d2a per previous discussion, IEmulator.ResetFrameCounter() should reset lag frame related stuff as well 2012-11-25 15:41:40 +00:00
goyuken 6ffd71973a 6502: improve tracelog to only disassemble actual opcodes, and also enable it on 2600 2012-11-02 22:27:22 +00:00
goyuken b40897bb77 sound api changes. added a new ISyncSoundProvider, which works similarly to ISoundProvider except the source (not the sink) determines the number of samples to process. Added facilities to metaspu, dcfilter, speexresampler to work with ISyncSoundProvider. Add ISyncSoundProvider to IEmulator. All IEmulators must provide sync sound, but they need not provide async sound. When async is needed and an IEmulator doesn't provide it, the frontend will wrap it in a vecna metaspu. SNES, GB changed to provide sync sound only. All other emulator cores mostly unchanged; they just provide stub fakesync alongside async, for now. For the moment, the only use of the sync sound is for realtime audio throttling, where it works and sounds quite nice. In the future, sync sound will be supported for AV dumping as well. 2012-10-11 00:44:59 +00:00
goyuken 19e5325afa DCFilter: allow variable filterwidth. 2600 tia: use a rather aggressive (~172hz cutoff) dc filter. this coefficient is reasonably close to actual hardware behavior. 2012-10-10 00:56:48 +00:00
goyuken 83e145c36f change the IEmulator saveram interface.
i don't like doing this, but there were already two emus with special bandaid logic in MainForm.cs
i hope this doesn't break something, but if it does i'll fix it
2012-09-14 22:28:38 +00:00
zeromus f5c0965045 snes-support save ram 2012-09-04 07:09:00 +00:00
andres.delikat a34bf45610 Add islag to savestates (now lagframe alert status updates when loading a state) 2012-07-30 14:42:52 +00:00
pjgat09 3591f7ca47 Atari: Changed the core to make the TIA the video and sound provider. 2012-04-02 20:55:29 +00:00
andres.delikat 724fe704fc Atari - hook up console select and reset buttons to config file. Still TODO: add to input config dialog, modify mnemonics 2012-03-30 16:40:52 +00:00
pjgat09 74594b961b Added SyncState functions to the M6532 and TIA. 2012-03-30 02:34:47 +00:00
zeromus 6fc4ff01c5 a2600-add mapper system 2012-03-30 00:35:15 +00:00
zeromus 37d58f1a4f add a2600 game database 2012-03-29 23:55:10 +00:00
adelikat bbf282e131 Atari - implement lag counter, refactor implementation of frame counter slightly, add frame and lag counters to savestates 2012-03-23 02:55:46 +00:00
zeromus fa25305d67 atari-add player 2 controls? 2012-03-22 06:33:28 +00:00
adelikat f4bd799484 Atari - hook up main ram memory domain 2012-03-21 02:57:26 +00:00
pjgat09 40ca3e1616 Atari 2600: Turned off sound output until the new TIA is further developed.
New TIA: Implemented a portion of the TIA using counters. Pitfall's first screen renders correctly.
2012-03-16 07:24:00 +00:00
pjgat09 2d94018eaa Atari 2600: Sketchy implementation of audio output (mode 0x01 only) 2012-03-15 20:34:14 +00:00
zeromus 3c267db54c add reset button to atari 2600 and add .a26 to multiclient filetypes list 2012-03-14 21:35:07 +00:00
pjgat09 0079d6ade5 Modified the TIA to be cycle based. Improved the rendering of pitfall in the process. 2012-03-10 04:53:23 +00:00
pjgat09 781ab15e1e Partially implemented the M6532's timer capabilities
Sketchy implementation of the TIA. But hey, it kind of renders pitfall!
2012-03-10 00:26:54 +00:00
pjgat09 405af35d72 Started work on Atari 2600 core. Added stubs for the TIA and M6532 to be filled in later. Memory map is hard coded, but will only work for basic 4K carts like pitfall. That'll have to be changed later. 2012-03-08 08:12:44 +00:00
zeromus c0ace9ce83 add a2600 core stub 2012-03-07 00:40:20 +00:00