zeromus
57e9619ff6
snes-hookup ui for color palette selection
2012-11-25 20:06:31 +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
zeromus
7ff342f907
snesgfxdebugger-preliminary sprite visualizing
2012-11-23 23:44:45 +00:00
zeromus
608ebc4a99
snesgfxdebugger-display OBJ tiles
2012-11-23 09:10:18 +00:00
zeromus
e70a387ffb
snesgfxdebugger-add ctrl+c to clipboard capability, and reflect user choice of backdrop color in debugger window
2012-11-22 06:57:01 +00:00
goyuken
c41d7f2388
oops
2012-11-16 22:05:59 +00:00
goyuken
276b00fb35
snes: unify color generation for debugger and core. include 3 alternate implications: r3809, r3808, and hypothetical snes9x. nothing ui hooked up yet
2012-11-16 21:29:23 +00:00
goyuken
b51cfbaa45
snes: don't round early in color conversions. affects some RGB24 values slightly
2012-11-16 18:43:47 +00:00
goyuken
29c0733150
sneshawk: log core firmware requests to console
2012-10-28 23:42:04 +00:00
zeromus
9e50d25c16
snes-support user override backdrop color
2012-10-17 18:39:44 +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
c392b24d22
libsnescore: eliminate errant querying of "P1 ", et al in controller routine
2012-10-08 18:55:25 +00:00
goyuken
c24abbcbad
libsnescore: make deterministic mode savestates all the same size (previously, frame 0 savestates were slightly smaller)
...
rewind: throw a slightly more intelligible exception message when savestates differ in size
2012-10-08 18:18:43 +00:00
goyuken
c167c043e1
rework libsnescore's deterministic savestate mode. like before, savestates are created every single frame. unlike before, now they are created on the frame before they "happen". this is all presented invisibly to the user. don't try to load old savestates in deterministic mode. don't try to mix deterministic and non-deterministic savestates. playing back old movies (provided they don't start from a savestate) should cause no problems, but may or may not sync.
2012-10-08 14:37:42 +00:00
goyuken
6d683f9327
libsnes: like sms, DisplayType property for ntsc\pal
2012-10-06 16:28:42 +00:00
goyuken
b545d79fb6
lua: add emu.on_snoop()
2012-10-06 13:34:04 +00:00
zeromus
96089026cd
remove "SGB" systemid because its gonna cause a lot of trouble if we dont hook it up in a lot of places.. why can't we set it up as just a regular snes core? and run the sgb rom through the snes firmwares directory.
2012-10-05 04:47:45 +00:00
goyuken
98d9f13600
change IEmulator.DeterministicEmulation to get-only; the old interface implies that a core should be able to take a change to the property at any time, which isn't feasable. most existing cores changed to return true all the time. SNES now takes determinism parameter in Load()
2012-10-03 15:31:04 +00:00
goyuken
0e292d19ca
snes: don't instantiate "BUS" domain when DeterministicEmulation == true
2012-10-03 15:11:21 +00:00
goyuken
e509b0cd9b
snes: Add "BUS" memory domain. Like GB, caveat that it could possibly maybe affect sync, maybe... doubly so because I can't penetrate byuu code so well.
2012-10-03 14:54:32 +00:00
zeromus
56f58caf4d
snesgfx-preliminary work on bg tilemap entry viewer.
2012-10-02 09:28:57 +00:00
zeromus
df039f3b89
snesgfx-add some preliminary tile viewing support
2012-10-01 21:51:55 +00:00
goyuken
d4f5ed2f50
Movie playback and recording will now set IEmulator.DeterministicEmulation = true; only snes core actually does anything with this. It hasn't been explained before in a log; so I'll do it now: When in deterministic mode, the snes core internally does exactly one savestate each and every frame. Then, if the frontend calls savestate at all, it always gets the same internal cached savestate. If the frontend doesn't call savestate, then the internal savestate is simply discarded. This way, the exact same number of RunToSave() calls occur every time.
2012-10-01 14:39:52 +00:00
zeromus
2b1e04997c
snes-try more accuracy in the wallclock-sync to fix audio hiccups. we really, really need fancy systems to sync to audio or do proper vsync (and rewire the snes resampler to forcibly adjust to a 60hz display rate)
2012-10-01 04:15:21 +00:00
zeromus
a87a5c96b2
oops
2012-10-01 00:18:33 +00:00
goyuken
cefca2e098
libsnes: deterministic mode for savestates. not hooked up yet
2012-09-30 19:22:54 +00:00
goyuken
2b117c3955
snes: read region, so 50fps live viewing and video dumping now works (PAL).
...
pretty sure no flags are saved to movie files, though...
2012-09-30 18:21:32 +00:00
goyuken
40d86d0a8b
SNES: change the initial bootup frame size (on frame zero) to 256x224.
...
it's the most common game resolution, and also the smallest (so can avoid some instances of window size snapping down because too big)
2012-09-30 14:08:50 +00:00
zeromus
e0f506002d
snes-try to survive the display of interlaced modes. havent had an actual game test this so im not sure what it looks like
2012-09-30 05:17:08 +00:00
zeromus
1fbbbaf776
oops
2012-09-27 11:58:04 +00:00
zeromus
d9a55fed37
snes-load firmware files from a CoreInputComm path, which must be named exactly right; show the requisite filename in a messagebox if it's missing; but theres no GUI for the firmware path hooked up yet.
2012-09-27 07:22:31 +00:00
zeromus
6c8177a08b
snes-print messages from libsnes. now you can see which dsp/firmware dependency it detected for the game (it has its own heuristics, not necessarily any need for gamedb yet). still not loading the firmwares though
2012-09-27 01:38:27 +00:00
goyuken
fc8087c344
preliminary SGB support.
...
1) choose your SGB rom from the path config (should probably be an .smc file of about 256KB)
2) turn on Load GB as SGB from the GB menu.
3) load rom again.
To turn off, uncheck Load GB as SGB from the SGB menu.
2012-09-26 15:59:14 +00:00
zeromus
f53aa56f1c
snes-support high-res (2x=512 width) display modes by doubling the vertical lines. maybe we'll need to do this differently if we can find a game thats controlling the interlacing options.
2012-09-24 08:00:42 +00:00
zeromus
52edee63d8
snesgfx-support mode7 direct color displays. still need an example of a mode 3 or 4 direct color usage
2012-09-24 07:46:54 +00:00
zeromus
4efea7605d
snesgfx-support mode7ExtBg tiles & BG
2012-09-24 06:47:34 +00:00
goyuken
dab03cb034
snes: fix savestates just as in the previous commit
2012-09-23 16:59:44 +00:00
goyuken
7e89882d42
lag counter in sneshawk
...
c++ is dum
2012-09-23 15:57:01 +00:00
zeromus
03cb238ae3
snes-add scanline render callbacks and add scanline selector to graphics debugger
2012-09-22 05:03:52 +00:00
zeromus
3c6549a7bb
snesgfx-decode mode7 graphics
2012-09-21 17:21:21 +00:00
zeromus
72d4fefbe0
snesgfxdebug-fix 8bpp tile decoding and 16x16 tilemap rendering
2012-09-21 08:10:14 +00:00
zeromus
708b98b4b8
enum.HasFlag -- too good to be true? yes. 40x slower than doing an old fashioned bitmask check.
2012-09-21 07:10:54 +00:00
zeromus
70392be4e4
snes-all memory domains were showing WRAM instead of the right thing; fixed
2012-09-21 06:03:27 +00:00
zeromus
526078f578
snes-work on graphics debugger. some relayout, plus palette viewer
2012-09-21 05:56:47 +00:00
goyuken
c026b2dc81
slightly optimize previous commit by avoiding 32k unmanaged=>managed transition calls per second when skipping audio
2012-09-20 20:36:44 +00:00
goyuken
176ecd8650
support for !rendersound in LibsnesCore
...
worth about 5-10% on my machine in secret of mana opening
2012-09-20 20:25:40 +00:00
goyuken
51fc8e695c
add 'bool rendersound' to IEmualtor.FrameAdvance()
...
if false, the emulator is free to gain whatever speedup it can by not doing audio processing (shouldn't change anything sync related, though)
the core should still always call SoundProvider.GetSamples() after each FrameAdvance(), else DRAGONS
at the moment, only test-implemented in gambattehawk
2012-09-20 19:52:47 +00:00
zeromus
c6a14d551c
snes-work on graphics tools a tiny bit
2012-09-17 00:16:19 +00:00
zeromus
8cbc3ee2af
snes-setup hard and soft resets
2012-09-16 17:15:53 +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