Commit Graph

1556 Commits

Author SHA1 Message Date
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
hegyak 2f036058f6 Fix the Apple IIe being labeled as PlayStation (Title) 2016-04-22 16:54:23 -07:00
feos 1581b5b283 tastudio: tie rerecording to laglog invalidation instead of states. 2016-04-18 18:52:37 +03:00
feos 7fa99c7d13 tastudio: project savegap (finally!)
ScrollSpeed defaults to taseditor's
2016-04-17 23:29:25 +03:00
feos a7b3668506 tastudio: fix Used and fix a nasty mistake in branch logic.
should properly handle branches created during seeking.
fix #606 I hope.
2016-04-17 18:54:55 +03:00
feos 0e6ec038a8 tsm: let this sanity check be there. 2016-04-17 16:01:09 +03:00
feos f5746a7b8f tastudio: stop updating splicer after every new cell is appended.
quick fix to #597.
fix crash when pasting input beyond movie length. todo: make input log append like PasteInsert does.
2016-04-17 13:52:58 +03: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
Hathor86 8cd88cdeca ApiHawk - Add few other system inputs
SNES, SMS, Genesis, N64, GB
Following some tests, it works (so I'd say that this feature is beta)
2016-04-06 22:11:00 +02:00
zeromus 5024f6022e console log lua exceptions, workaround for #607 2016-03-31 14:11:34 -05:00
Hathor86 fcb0c8bc32 Work on input get/set through ApiHawk
Convertion has been moved to dedicated class

SystemInfo class review

SystemInfo class now instanciate all SystemInfo and stores them in a
static readonly collection (avoid creating a new class each time we call
DisplayName property).
+ EmulatedSystem enum (in Api) renamed to CoreSystem and moved to
BizHawk.Client.Common
+ this enum is used in SystemInfo class

Created a Joypad class that is populated with JoypadButton enum flags

Input get/set throught ApiHawk works for NES only. So many work remains...
2016-03-29 23:42:24 +02:00
zeromus 1b8a51e447 rework sound config dialog and sound volume control to permit independent control of volume during FF & RW, and independent toggling of sound synthesis vs volume=0 suppression 2016-03-29 03:40:37 -05:00
zeromus 10272b4857 add alternate vsync method for d3d display method, in case youre the lucky owner of a system that sucks 2016-03-27 04:49:17 -05:00
zeromus e487f1494c change display manager defaults, for evaluation 2016-03-23 20:26:31 -05:00
zeromus 3deb7fcb31 add autoprescale concept. default it to on, since really I can't think of when you'd ever not want it, except in some very low-spec system scenarios. Add NOP concept to filter chain, potentially troublesome 2016-03-23 20:26:31 -05:00
Tony Konzel 93fcb293d8 C64: Fix the build post-merge (derp.) 2016-03-15 11:38:55 -05:00
Tony Konzel 05914e1490 Merge pull request #599 from TASVideos/c64-via-timer-fixes
C64 via timer fixes (and more)
2016-03-15 10:08:17 -05:00
feos a6c3561db0 lua: movie.getinput() now fails gracefully if adapter is null.
fixes #595
movie.mode() returns a string, so make its modes look like strings in the description.
2016-03-12 12:05:24 +03:00
zeromus aa3c599882 readd y=x functionality to SetReadOnly 2016-03-10 19:03:07 -06:00
Anthony Konzel 8fd552274e C64: Discover file formats heuristically instead of by filename. 2016-03-05 15:23:22 -06:00
adelikat 234cc2e5d8 Get started on C64 support in the multi-disk bundler 2016-03-04 21:50:24 -05:00
nattthebear a87096fb85 Move around LuaInterface.dll as well in preparation for 64 bit build 2016-02-28 16:10:18 -05:00
nattthebear 2a0e859a85 Add 64 bit build (doesn't work yet), move SlimDX.dll 2016-02-28 15:06:03 -05:00
adelikat 44dc9518cf capture Sega CD flag in movies 2016-02-28 10:21:18 -05:00
zeromus 75df712563 fix ramwatch crashing bug involving core reboots and watchlist hanging on to stale emulator instances 2016-02-23 14:42:47 -06:00
zeromus 95bc69b448 some prepwork for opengl texture ID importing (skip rendertarget resolve on OGL display method) but there are still problems and it can't be enabled yet 2016-02-22 00:23:20 -06:00
feos 78f20510e5 lua: emu.disassemble(uint pc, string name = "") 2016-02-21 18:14:03 +03:00
Suuper a751412c1f TasStateManager.cs -> fixed stateHasDuplicate 2016-02-20 13:43:24 -06:00
Suuper 8b5440d963 Fixed a few bugs in TasStateManager.cs 2016-02-20 12:34:13 -06:00
adelikat cacfb615c4 simplify Cheat.cs somewhat 2016-02-16 20:02:57 -05:00
adelikat 3257b06f85 unnecessary usings 2016-02-16 19:57:57 -05:00
adelikat ddbaf6b2f9 Lua - registering completiosn to sublime text 2 - exclude strings from completion logic 2016-02-14 22:35:47 -05:00
adelikat b3728ff192 Make Screenshot Raw to Clipboard and Screenshot Client to Clipboard into configurable hotkeys instead of hardcoded shortcut keys in the menu items 2016-02-14 21:30:24 -05:00
AdamSturge cf76d99a52 Merge pull request #571 from TASVideos/feature/cheat-comparison-types
Feature/cheat comparison types
2016-02-10 18:58:25 -08:00
zeromus bff0d5b95d add and hook up AWEMemoryStream option for movie storage. GUI is intentionally shoddy to convey sense that it's experimental. Has been cursorily verified but not thoroughly tested. 2016-02-10 01:09:43 -06:00
Adam Sturge c82f70763e Fixed bug where having no comparison type would throw exception 2016-02-09 20:33:44 -08:00
feos 07d4ac846b lua: memory.GetMemoryDomainSize()
fix #542
2016-02-09 17:54:11 +03:00
zeromus 97998071a7 fix bugs in lua's memorysavestate apis (fixes #565) 2016-02-08 01:28:26 -06:00
Adam Sturge 5dc31d3eb9 Fixed index bug for comparison type in Load() in CheatList 2016-02-07 21:54:45 -08:00
Adam Sturge 52c587d712 Save/Load cheats now accounts for comparison type column 2016-02-07 21:40:14 -08:00
Adam Sturge 992acd9e96 Added code to sort by comparison type. Added code to compare based on comparison type selected 2016-02-07 20:56:40 -08:00
adelikat 36b82c3563 Lua Console - add a button that installs auto-complete for all bizhawk's lua library to Sublime Text 2's lua syntax, still todo - notepad++ 2016-02-07 08:27:57 -05:00
adelikat 487fce328b Lua - add option to detect changes in scripts and automatically reload them. Have this option off by default for now. Also fix reloading of scripts which was recently broken. 2016-02-06 13:50:02 -05:00
Adam Sturge f19333dd11 Prettied up display of comparison type in cheats table 2016-02-05 20:33:21 -08:00
Adam Sturge 092b5da974 restored [ConfigPerist]. 2016-02-05 19:33:31 -08:00
adelikat 7885934a1e Add a global tools path in path config, have various tool related paths fallback to this tools folder, wire it up to hex editor .tbl files and basic bot .bot files. Change various tool paths to be . by default to point to the tools folder instead. Add tools folder to version control and builds 2016-02-05 20:46:18 -05:00
Adam Sturge 9959d61949 Added comparison type dropdown. Updated Cheat model to contain reference to comparison type 2016-02-02 20:32:46 -08:00
adelikat 8168031bed Make TargetZoomFactor a per systemId setting 2016-01-31 21:05:08 -05:00
zeromus 5e89e563d0 overhaul lua sandboxing so that each lua script has its own sandbox. elaborate tracking of winform/event ownership to ensure that lua doesnt receive calls without going through the owner's sandbox. add win32-specific speed hacks for currdir set/get at higher speed. There may be bugs in this commit, but I think we're on the right track now. 2016-01-31 19:54:55 -06:00
adelikat c510e13d82 Add an IsSGMode flag for SG-1000 when recording a new movie 2016-01-31 19:53:04 -05:00
adelikat cc1867326a Ram Search - fix "Exclude Ram Watch" option 2016-01-31 19:28:25 -05:00
zeromus 42c0b62261 fix some lua currdir bugs, but its all broken, dont pay any attention to it 2016-01-31 03:18:34 -06:00
zeromus da865e28b8 try sandboxing currenty directory harder 2016-01-31 02:40:48 -06:00
adelikat ab16e9238b Drop support for pre-1.0.5 ram watch files, I think it is safe to do this by now 2016-01-30 22:19:32 -05:00
adelikat 0013646db5 Rip out obsolete notion of a WatchList domain, change ram watch menu item to Default Domain, who's functionality is simply to decide the default domain used when adding a new watch, also add some Visual Studio designer shenanigans for a previous commit I made that broke it 2016-01-30 22:17:31 -05:00
adelikat 5ddd9e097b clean up some warnings 2016-01-30 21:28:49 -05:00
zeromus 0da6e745e5 move EnvironmentSandbox and LuaSandbox to Client.Common 2016-01-30 18:37:30 -06:00
zeromus b0ab66801f Revert "comment out feos' sandbox change so things compile"
This reverts commit 418eed6cc5.
2016-01-30 18:28:51 -06:00
adelikat 418eed6cc5 comment out feos' sandbox change so things compile 2016-01-30 18:10:23 -05:00
adelikat ca3b43973c Load Lua session - when loading a relative path, drop the .\ part, I'm disappointed in Path.Combine 2016-01-30 18:08:54 -05:00
feos 7409a32658 lua: attempt to use sandbox in callbacks. 2016-01-30 23:26:27 +03:00
feos c641d94e05 lua: movie.save
see #384
2016-01-30 16:10:28 +03:00
feos a821fce6c8 typo 2016-01-30 16:10:27 +03:00
feos 7421bd7244 lua docs derp 2016-01-27 17:06:22 +03:00
feos 3c779a897b lua: emu.setislagged() 2016-01-27 16:41:41 +03:00
feos 1b8ef3738a tastudio:
- history form: canonical colors, show the current item better, report marker operations
- markers: adding markers updates dialog, don't ever remove marker 0
- tsm: attempt to fix exception in AllLag()
2016-01-27 12:53:26 +03:00
zeromus a355f78631 don't load entire inputlog into a string when parking it in a savestate 2016-01-10 23:08:13 -06:00
zeromus e1ddb51826 fix off-by-one-too-short-inputlog bug in MoviesOnDisk mode 2016-01-10 22:45:43 -06:00
Hathor86 f0ab9edc10 Attempt to fix OutOfMemory when saving states (I guess it works)
Just add an EnsureCapacity() before appending log.
I didn't have any crash yet compare to current release. Let's hope!
2016-01-03 00:52:37 +01:00
zeromus 2765961984 load NSF without annoyance 2015-12-31 12:37:48 -06:00
Hathor86 da25052e09 Just few comments on above notwa's method :)
(Oh and transform string concatenation with + to a string.Format)
Also made a small fix to externaltoolmanager
2015-12-24 14:00:08 +01:00
Connor Olding f0c939d87c reimplement strings for OSD watches
also fixed saving separators
2015-12-23 17:18:39 -08:00
Hathor86 a7074c6341 ExternalToolManager and BizHawkExternalToolattribute
Add those 2 classes in order to help handling of external tools
- Also fix value setting in watches constructor
- Bugfix in loading externaltools (they loaded multiple times)
- Add new version of Hello World external tool
Whitespaces noise in RamWatch.cs... :s The code hasn't changed
2015-12-13 21:38:35 +01:00
feos c1e70077c8 instafix #546 2015-12-13 00:00:22 +03:00
Hathor86 21e25555d0 BytWatch ValueString property fix
Call GetByte() instead of _value field (like other watches)
2015-12-10 10:25:45 +01:00
Hathor86 7779b2f7db Fix RamSearch value
Fix has been done on constructor of each watch. Call GetByte / Word /
DWord if value is 0.
It ensure that previous passed in parameters remains unchanged
2015-12-10 00:34:07 +01:00
feos 2a6a2a7a8a tastudio: properly report saving progress.
also attempt to report seeking progress.
report occurs, but progressbar doesn't show up...
2015-12-10 01:38:06 +03:00
Hathor86 708bb4fa93 Final stuff to WatchList
Now fully use comparer class. That saves memory and offer extensibility
ItemCount property obsolete => Moved to Count property (which did the same thing)
Moved ConfigPersistAttribute.cs, IToolForm.cs, IToolFormAutoConfig.cs back to common
2015-12-09 00:54:54 +01:00
feos 8a6ddfbf3f tastudio: actually use initial state from anchored movies.
don't seek to whatever frame such a movie was created from.
2015-12-08 23:38:00 +03:00
feos 9d491d9415 Bk2Movie: use intended method when adding a key.
fixes #520
2015-12-08 19:17:45 +03:00
feos 33fd1d86ea welp 2015-12-05 17:07:57 +03:00
feos abd118253f tastudio: Save State hotkeys (finally) control branches:
- save/load by slot number (select that branch if it exists)
- save/load current slot (selected branch)
- select branch by slot number
- select next/previous branch
- bind 2 default tastudio hotkeys
keep selection when branch gets removed.
2015-12-05 17:07:24 +03:00
feos d0772a6b44 reduce default binding repetition.
add tastudio hotkeys and tip.
2015-12-05 14:48:04 +03:00
feos 6d4c5ef17f preparations for state hotkeys functioning with tastudio branches.
typos.
2015-12-05 14:48:04 +03:00
adelikat 48487f2a90 Sort out and fix problems with Ram Search watch files showing up in the Ram Watch recent list 2015-12-04 23:18:46 -05:00
Hathor86 31cc08a954 More WatchList comments
Finished coments on WatchList object
2015-12-02 22:48:30 +01:00