goyuken
|
b2c0910376
|
zero - try this?
|
2013-04-21 19:00:22 +00:00 |
zeromus
|
8a74e08dfa
|
snes-fix savestate bug in performance core
|
2012-12-26 22:27:26 +00:00 |
zeromus
|
8a69a4ebe0
|
switch snes core back to external process. more refined this time. support use of performance core.
|
2012-12-25 20:36:04 +00:00 |
goyuken
|
587270cad2
|
snes: Fix rewind issue with tales of phantasia. Full details are as follows: Synchronize events occur right BEFORE the original thread tries to modify the data. That means that if, for instance, the SMP thread switches off to the CPU thread for a synchronize, but then the CPU switches to the PPU, commits a frame, and then in runtosave, finalizes, without having ever advanced past the SMP, when the SMP runs to save, it will do a data modify without being properly synced. The solution is for the CPU to not stop in runtosave until there's enough time for both the PPU and SMP to finish. Because of our stateful design, there's at most one event pending, so that simplifies to (smp.clock < 0 && ppu.clock < 0). This is unfortunately never guaranteed to finish, but with short timing segments on stateful PPU and SMP, and special guards in the PPU and SMP to switch back to the CPU as quickly as possible when in runtosave, it seems to work out.
|
2012-12-24 21:14:29 +00:00 |
goyuken
|
74c26d9b11
|
snes: ppu: state out similarly to apu. this was a very simple project; unlike the apu, there aren't many sync points. like the apu, a message is dumped to the console if runtosave causes determinism problems. like the apu, there's no speed hit, but tales of phantasia is still broken. breaks savesates.
|
2012-12-24 19:49:23 +00:00 |
goyuken
|
5e3d6555b0
|
libsnes: implement "stateful" smp that can restore its state at more points, theoretically eliminating incorrectness from smp misbehavior. no real speed loss. doesn't fix anything at the moment; i might back out the change if it turns out to never fix anything. breaks savestates.
|
2012-12-24 18:07:13 +00:00 |
goyuken
|
3cc475a64f
|
reverse merge r4180, r4181, r4189
|
2012-12-23 16:30:00 +00:00 |
zeromus
|
8d7da30681
|
snes-refactor bsnes bindings to work via external process. should solve all stability problems. there is much sloppy transitionary code still in this commit; we need to smoke out any killer issues with this approach before committing too heavily. speed is close enough to last release, and can still be improved.
|
2012-12-21 07:23:55 +00:00 |
zeromus
|
aaf06d76d3
|
snesgfxdebugger-add BG scroll regs
|
2012-12-03 18:59:08 +00:00 |
goyuken
|
e24d1efbd4
|
snes: cpu tracelogging. <1% extra overhead incurred when the tracer is not active.
|
2012-12-03 01:48:18 +00:00 |
goyuken
|
451f786660
|
snes: fix crash with rewind enabled in tales of phantasia. the problem seems to be that during runtosave(), the smp hits a wait opcode (0xff), which it can't get out of. with this fix, the emulator no longer crashes, but the emulated game does crash. more research is needed.
|
2012-12-02 18:32:33 +00:00 |
zeromus
|
093eda8cdd
|
libsnes-add missing variable initializations for ppu/cpu/dsp/smp components. every one of them was fundamentally untasworthy.
|
2012-12-01 08:29:47 +00:00 |
zeromus
|
7722344e55
|
libsnes-gain the ability to serialize const arrays: useful for emitting comments in savestates, which is helpful for debugging. note to self: add a serializer for bools which transforms to 0 or 1
|
2012-12-01 08:28:46 +00:00 |
zeromus
|
9e50d25c16
|
snes-support user override backdrop color
|
2012-10-17 18:39:44 +00:00 |
goyuken
|
3e139c7d7e
|
libsnes: change frame boundary timing. from the perspective of the libsnes core, this choice is mostly arbitrary. from the perspective of the frontend, it's how input frames are divided up and lag frames are determined, and so can be rather important for TASing. the original choice of frame timing is a bit strange and causes excessive input latency and lag detection issues for pal224 and ntsc modes (but not pal239 mode). this change will most likely cause "off by one" errors in TAS sync; should be mostly easily correctable.
|
2012-09-30 18:05:23 +00:00 |
goyuken
|
2a59e135ea
|
snes: add lag counter for manual 4016\4017 polling
this shouldn't break existing lag counting.
this doesn't fix the issue observed in smw2 (i have no idea what is causing that.)
|
2012-09-28 13:37:42 +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
|
b2b1c8755c
|
snes-apply lsnes patches
|
2012-09-04 20:23:18 +00:00 |
zeromus
|
9726b75ec4
|
snes-support layer toggles (needs gui hookups)
|
2012-09-04 19:12:16 +00:00 |
zeromus
|
37e6f68370
|
bsneshawk step 1 of N - compile libsnes, make bsneshawk core, setup interop, support frameadvance, video, gamepad. games are playable, I think.
|
2012-09-04 00:20:36 +00:00 |