Commit Graph

1542 Commits

Author SHA1 Message Date
J.D. Purcell 3f776dbf6f Rewind: Fix subtle off-by-one-frame bugs (only really noticeable when frame advancing). 2017-04-02 18:50:34 -04:00
J.D. Purcell 6cc5a914b7 Rewind cleanup. 2017-03-18 21:22:02 -04:00
feos a9cda4a21f tastudio: dynamically resize usertext column 2017-03-15 21:46:46 +03:00
feos 6e99227c72 tastudio: Clone() for branches. fixes UserText cancellation
also cancel backup and osd message if text edit was canceled
2017-03-15 19:17:47 +03:00
feos d254ad01d8 tastudio: add branch undo feature
the fact that it's separated from changelog is because there's no way to extend the latter, but *also* it's intended, as we want branches to be independent from changelog manipulations

todo: figure out branch text edits
2017-03-14 22:49:55 +03:00
feos 114274ac4d tastudio: latch autohold state for every manual movie length extension
finally fixes #534
2017-03-12 19:43:23 +03:00
feos 64665f0e82 tastudio: use LatchSticky() when adding new frames
fixes autohold behavior, making it operate like it did before banning user input latch in replay mode
now in replay mode all input is ignored except for autohold, which is set via tastudio gui
2017-03-12 17:28:54 +03:00
feos a30b89039f more topmost modal dialogs 2017-03-12 14:50:24 +03:00
zeromus 5488eadb89 work on #816 2017-03-08 15:57:00 -06:00
adelikat dec3a31d2b add a toggle all cheats hotkey 2017-02-25 15:32:18 -06:00
adelikat 98a390b3c6 Default compare type to equal not NOTHING, fixes nes game genie codes generated through the cheat converter, and probably a lot of other platforms. And this is a better default, also silent failures are always bad 2017-02-25 15:08:20 -06:00
adelikat c61d432fd6 Don't position tools to last saved position if that position is not visible on screen 2017-02-21 16:57:47 -06:00
adelikat 61e8b51802 Intellivision - mark the core as released, add alyosha as an author, and add the framerate entry to PlatformFrameRates 2017-02-18 15:01:09 -06:00
feos ac2a69e7dd gpgx: switch to real interlaced mode when needed (still 60fps)
window resizes by itself if no maintain aspect ratio is forced

todo: states have broken graphics in that mode, but that's likely the original core thing
2017-02-18 23:34:44 +03:00
feos f1a617b047 tastudio: stop latching input in playback mode if new frames are generated
addresses #801
2017-02-18 20:54:59 +03:00
zeromus 64e4585582 oops, fix copy/paste error from the other day which broke gpgx in 32bits mode 2017-02-11 20:17:14 -06:00
adelikat 6ae8a88658 remove some debugging junko 2017-02-11 13:41:25 -06:00
zeromus 2e34d91869 small repairs to get gpgx64 running again 2017-02-09 22:40:16 -06:00
zeromus 539cdc29f3 add SetPlayback to tastudio lua library. Can't be 100% sure it works, but it seems to be working OK. it may hang everything up if you seek through a really long redzone..... 2017-02-04 21:40:29 -06:00
adelikat 86c74305e4 lua console - when toggling a script on, behave the same as if you loaded it. It should run immediately, not on the next frame 2017-02-03 16:31:38 -06:00
adelikat af1a2547ae Add a hotkey to toggle the Skip Lag Frames option 2017-01-29 18:33:19 -06:00
feos 36f53116b1 tastudio: quit pretending -1 is a legit branchHash
seems to fix #785
2017-01-29 10:24:11 +03:00
feos b7ed072c4c tastudio: only load branch markers if they are bound to input 2017-01-19 20:49:18 +03:00
feos 06b14d654b tastudio: move greenzone writing/loading to the very end
hopefully if it crashes during greenzone saving, other components won't die
2017-01-19 14:52:31 +03:00
adelikat 44a1e691f3 Ram Search - show restored/removed messages when undoing/redoing, fixes #749 2017-01-14 20:00:55 -06:00
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 2059558771 Lua - fix emu.getdisplaytype() that has been broken for a long time, also fix it to properly use the IEmulatorService system instead of reflection shenanigans 2016-12-15 13:09:52 -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 e94de78ebd Lua - fix movie.getinput() to return float values instead of passing "False" no matter what 2016-12-14 13:22:01 -06:00
adelikat a955e6a3a2 Break up InputAdapters into separate files because it was getting unwieldy 2016-12-14 13:12:37 -06:00
adelikat 72a59087b5 Use the IController indexing property less in preparation for removing it from the interface. Replaced with its more explicity counter-part .IsPressed() 2016-12-14 12:42:15 -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 b7e616482d Intellivision - movie mnemonics and virtual pads 2016-12-06 20:16:22 -06:00
adelikat d38b5396c3 Remove some commented out code that has been commented out for quite some time 2016-12-06 10:22:03 -06:00
adelikat 44fa93e15f Lua - make the MemorySavestate library dependent on IStatable 2016-12-04 12:08:21 -06:00
adelikat 63202570cc Lua NES library - properly use an OptionalService instead of Global.Emulator 2016-12-04 11:50:07 -06:00
adelikat 604ed74ff9 remove some usages of VideoProviderGlue by checking for VideoProvider availability before doing some dependent processes 2016-12-04 10:30:51 -06:00
feos d3b6364db0 bk2 log generator:
- pick actually neutral analog values for empty entry
- properly hide all neutral values from input display
2016-11-26 17:41:00 +03:00
feos 3b2781c571 movie: add Disc Select, Open and Close to the dictionaries 2016-11-26 16:39:21 +03:00
ConHuevosGuey e0d534dc1c Setting Display Manager 'Final Filter' default to 'None' from 'Bilinear' because bilinear blur needs to die away. 2016-11-24 15:24:55 -06:00
feos ef8068daa4 Revert "tastudio: move LastPositionFrame to TasMovie, prepare for another revision"
This reverts commit eea49f1895.
2016-11-21 20:03:56 +03:00
feos eea49f1895 tastudio: move LastPositionFrame to TasMovie, prepare for another revision 2016-11-21 19:29:11 +03:00
feos 05d47a7318 tastudio: make analog hotkeys working, and their names fit in 2016-11-21 18:00:21 +03:00
feos 95dc2fd6b3 tastudio: move arrow keys logic to hotkeys
disallow sending Minus to MainForm
2016-11-20 23:26:13 +03:00
zeromus 327606234f fix can't use neshawk (recent regression) 2016-11-19 20:07:17 -06:00
feos a413f524c9 remember that not every platform has analog controls 2016-11-19 21:21:07 +03:00
feos a8dde12c1f tastudio:
- set Float type to analog control columns
- set their size taking into account their MaxDigits
- stop displaying neutral analog values

input OSD:
- obtain real neutral analog value the given core uses and hide it, instead of hiding hardcoded zero
2016-11-19 19:31:04 +03:00
feos edf21b8bfe fix tastudio crashes when:
- setting 0 space for disk states
- righclicking on selection if a bunch of selected frames contains the last frame
- cutting the last frame
2016-11-17 20:05:41 +03: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
adelikat 7bff28bdee Lua - memory library - actually default to system bus, previous commit was unsufficient 2016-11-12 11:55:20 -06:00
adelikat 0959d5f0df When importing SNES .lsmv movies, add an extra input frame, fixes #721 2016-11-12 11:01:26 -06:00
adelikat bf9956089d Lua - default the memory library to system bus (if available) 2016-11-12 09:25:18 -06:00
adelikat 82c1c11879 Atari 7800 - add the word Toggle to the difficulty swithc buttons to make them more clear in functionality 2016-11-11 15:03:34 -06:00
adelikat 045f5e9df1 Lua documentation - clean up return values to match conventions in parameters 2016-11-11 11:40:53 -06:00
adelikat b0552224e0 Lua documentation - fix notation for nullable bools 2016-11-11 11:30:18 -06:00
adelikat fa6cb75a77 When generating wiki documentation, add some info about parameter types, #401 2016-11-11 11:27:06 -06:00
adelikat 75654b9f33 Atari 7800 - make difficulty switches behave like toggles instead of buttons, also add mnemonic info for them, fixes #726 2016-11-11 08:44:28 -06:00
feos b24eb2293f add name shortcuts for psx analog controls 2016-11-09 00:25:24 +03:00
adelikat 7b2338a110 movie mnemonics for vs controls 2016-10-29 22:20:34 -05:00
adelikat 2c1f0013c3 Account for game names having quotes in them, fixes NES Ivan Ironman Stewart's Super Off-Road 2016-10-13 20:16:26 -05:00
feos 9714aa5cc9 tastudio:
- preserve branch text per update (unless default text has changed)
- remove redundant code from paste functions, rely on global clipboard fully with cut/copy too
2016-10-10 19:00:59 +03:00
feos 93f78a69d2 tastudio: show cursor hotkey 2016-10-09 17:14:39 +03:00
adelikat ef6c9131c6 Fix behavior when loading a new rom when a cheat is loaded, fixes #550 2016-10-06 13:57:39 -05:00
adelikat 3a36835af2 Ram Search - with the Diff column displayed, don't throw exceptions, Fixes #637. The Diff column still has issues with 4 byte watches though, but this fixes unending exceptions at least 2016-10-05 20:58:26 -05:00
adelikat 574584c079 Fix filename generation when there are colons in the game name, fixes #661 2016-09-21 10:27:28 -04:00
feos 7309957c11 tastudio: pasting input beyond movie length extends it 2016-09-08 18:32:37 +03:00
feos 091a62ab25 tastudio history: properly fix recording
the problem was mismatching ideas of movie length between movie and history
2016-09-07 20:54:45 +03:00
feos 549fc333f1 tastudio: fix removal of states *near* lag frames 2016-09-03 15:17:38 +03:00
feos 2911e498e1 tastudio history: fix bug where undoing the movie extension (caused by drawing beyond the movie length) would swallow all the movie 2016-08-29 21:18:55 +03:00
adelikat 1b2f24502f fix when importing .fm2 and other "legacy" imports, add the .bk2 extension instead of replacing the old move with its old extension 2016-08-29 10:21:30 -04:00
feos 4f24682289 taseditor: fix LastPositionFrame resets 2016-08-28 15:34:18 +03:00
feos 91a29a8692 n64: yet another dynarec check, this time for lua 2016-08-25 22:11:53 +03:00
feos 215f9b9959 tastudio: some dirty fixes to how undo/redo works with recording frames 2016-08-22 21:17:35 +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
feos 8721d0ef83 Merge pull request #681 from vadosnaprimer/gpgx32
old gpgx is back!
2016-08-13 22:49:04 +03:00
feos 35282ba577 gpgx32: flipped namespaces, added excplicit core picking
diff is messed up after folder renaming, but no file was changed except for namespaces and waterbox's core name
2016-08-10 22:27:46 +03:00
parasyte 71c7edbb24 Add address mask setting for breakpoints 2016-08-08 04:37:39 -07:00
feos a2b55291b3 tastudio:
- movie end doesn't switch to record mode anymore. fix #586
- recording mode checkbox
- fix rec mode dying during fast rewind
todo:
- readonly hotkey doesn't work until we click the checkbox
- movie status icon doesn't show up if tastudio is autoloaded
2016-08-06 22:28:25 +03:00
feos 170681c3ad tastudio: Recording mode
a bit inconsistent with how it switches to record right now
2016-08-03 22:29:27 +03:00
feos 178820746c tastudio: prevent crash occurring at new state capture
mem leak is still there for N64
2016-08-02 22:46:21 +03:00
feos 13476f33ca tastudio: don't pass ctrl+c hotkey to mainform. 2016-08-01 20:23:16 +03:00
Isotarge 5a20a520bd Tools: Ram -> RAM #669 2016-07-22 01:32:54 +09:30
feos fbbc97731e subtitles: proper internal sorting 2016-06-30 19:14:34 +03:00
feos 144e942f57 subtitles: fix sorting on import and export.
still need a way to sort internally.
2016-06-29 23:53:07 +03:00
feos 35a07f42eb subtitles:
- trim trailing spaces
- sort by frame and then by Y pos (to properly order multiline subs)
- concat multilines (optionally) on export
- option to skip color tag on export
todo: fix multiline ordering for export
2016-06-29 00:32:43 +03:00
zeromus a9c0211d46 change a bunch of old googlecode urls in assemblyinfos 2016-06-13 11:34:27 -05:00
feos 1a11f34c13 tastudio: bind insert/delete/clone/clear. 2016-06-13 16:40:13 +03:00
feos af4b3ec752 tastudio: bind autorestore, turboseek and followcursor. 2016-06-13 15:43:28 +03:00
feos 346c4e56b3 tastudio autosave:
- switch to appropriate method for backups
- option to save backup per file save
- menu command to save backup
2016-06-12 16:41:27 +03:00
feos cbc5ca2115 tastudio: fix the warning about inheritance mismatch 2016-06-11 18:58:22 +03:00
feos 32be07ce03 tastudio: don't record marker history edits to history
this generates a warning regarding "new is not required" for the functions I edited, dunno what to do with it
2016-06-11 12:48:11 +03:00
feos 2a952cebef saving too!
also catch inconsistent tsmSettings exception
2016-06-11 10:12:30 +03:00
feos ef93a50f4d tastudio: fix silly order error in tsmSettings parser 2016-06-11 09:46:21 +03:00
feos 559eacf95a InputpPompt: allow multiline info
bk2 export for tastudio: stop endlessly appending extensions
tasstudio autosave:
- fix interval init on load
- 0 interval disables autosave
- canceling SaveAs doesn't kill the timer
- ability to append "backup" to filename allows saving to a separate file
-- don't let tasproject switch to the backup file (bit hacky)
2016-06-10 16:05:12 +03:00
Suuper 327c45b440 Fixed issue #626. 2016-05-14 13:46:15 -05:00
zeromus 0cc27a226b add auto-start and auto-save to CDL; fix toolbar to be ToolStripEx, so it doesnt suck 2016-05-07 10:10:37 -05:00
feos 2e1132c2b9 tastudio: this should be reliable enough. 2016-04-25 18:18:20 +03:00
feos 000050b1e9 tastudio: integrate StateGap logic into ExcludeStates().
for loaded projects, stop forcing current frame capture if it's non-zero.
stop excluding state on frame 0.
todo: make capture state gap reliable for project state gap. right now it can capture odd frames if they go after markers or lag, so those will be missing when saving the project.
2016-04-25 18:04:42 +03:00
feos 408d0ae4d0 tastudio: attempt to make StateGap smarter.
it should rely on frames, not on state indexes. and we can only have states on frame numbers that are powers of 2.
doesn't work right on saving multiple times yet. need to cooperate with ExcludeStates() somehow.
2016-04-24 23:17:17 +03:00
feos f35938acdb tastudio: be able to load broken greenzone file. 2016-04-23 20:54:14 +03:00