Commit Graph

1886 Commits

Author SHA1 Message Date
upthorn 71215adf0d Merge branch 'master' of https://github.com/TASVideos/BizHawk 2019-01-04 04:58:58 -08:00
James Groom 42764f0019 Add preliminary Unix compatibility (using Mono; resolves #1384) (#1380)
* Move PlatformSpecificLinkedLibs and implementations to common and rename
* Specify file ext. at LoadPlatformSpecific call site
* Move Client.Common.Global.RunningOnUnix to PlatformLinkedLibSingleton
* Inline var Resolver
* Use PlatformLinkedLibManager internally
* Move plugin load check to LinkedLibManager, use LinkedLibManager
* Interpolate
* Return exit code from dlclose/FreeLibrary
* Skip all calls to externs in BlipBufDll when using mono
* Use PlatformLinkedLibManager in SevenZipLibraryManager
* Add expected return value to workaround (from testing on Win32)
* Remove ".dll" from DllImport attr, remove temporary workaround, see desc.
The library can be built by changing the output file name in
`.../blip_buf/Makefile` to `libblip_buf.so`, and running `make`. It will be
loaded if placed in the `.../output` folder.
* Remove unused code, add TODO (this class is req. for Waterbox.PeWrapper)
The TODO is to [rewrite with
C#](https://docs.microsoft.com/en-us/dotnet/standard/io/memory-mapped-files)
instead of importing from `kernel32.dll`.
* Update OpenTK again but better (for #1384)
* Add Mono run script
* Add libblip_buf.so (temporary)
Temporary because it should be a separate package which BizHawk depends on.
* Add distro detection, add "already running" and "unknown distro" messages
* Gray-out Lua Console on Unix
* Extract superclass from EmuLuaLibrary, add shell implementation for Unix
* Specify libdl version, Fedora doesn't have the versionless symlink
* Remove empty `ToolStripMenuItem`, null `Text` caused crash on Unix
* Transform OpenTK keyboard input into a `List<KeyEvent>` and read that
Also fixes crash on rebind
* Remove debug `using ...;`
2019-01-04 01:50:55 +03:00
alyosha-tas f47c2d1558 GBHawk: Start link support 2019-01-03 12:10:53 -06:00
upthorn 01914552de Merge branch 'master' of https://github.com/Upthorn/Bizhawk 2018-12-23 14:45:18 -08:00
zeromus 15131a0626 support --config=c:\path\to\config.ini (fixes #1404) 2018-12-23 00:23:57 -05:00
upthorn 79aaef0257 Removed project references to old, unrefactored files that no longer exist. 2018-12-22 11:16:54 -08:00
upthorn efc6f73169 Merge branch 'PluginDev' 2018-12-22 10:43:12 -08:00
upthorn aba1da071d Completely refactored PluginAPI to extend ApiHawk. Ecco2AssistantPlugin is now an external tool. 2018-12-22 10:40:30 -08:00
upthorn d238ecc311 Merge branch 'master' of https://github.com/TASVideos/bizhawk 2018-12-21 22:41:37 -08:00
Asnivor eee1cb481c
Fix Lua documentation - #1389 2018-12-08 08:47:17 +00:00
upthorn 05f9939ddf Merge branch 'master' into PluginDev 2018-12-06 12:29:58 -08:00
upthorn 59f30b4a79 Allow signed display of fixed point values. 2018-12-06 12:25:00 -08:00
upthorn 9874c496ac Minor revisions to plugin API 2018-12-05 11:58:19 -08:00
feos b316efb922 cute, I forgot to save the actual changes 2018-12-03 21:16:06 +03:00
feos 3a688d543b tastudio: fix rec mode dying when appending movie frames
close #1376
2018-12-03 21:10:14 +03:00
layland34 edab819d6b
fix typo 2018-11-25 14:54:55 +01:00
adelikat 786a505366 stuff bizhawk version into savestates, closes #1210 2018-11-18 12:29:56 -06:00
adelikat 288baf568d Revert "here's how I think input display should work. also fixes your bug. also breaks something that had this comment (maybe)"
This reverts commit d4a48a8ee1.
2018-11-18 10:43:11 -06:00
adelikat a4dcd4d010
Merge pull request #1321 from TASVideos/firmwareimporterfixes
FirmwaresConfig: Stop indiscriminate importing (and some other things…
2018-11-18 08:37:26 -06:00
zeromus 7a72bf72e6 experimental: add %rom% to path manager, so files related to a rom can be located relative to the rom
also refactored how %exe% worked because it blew my mind
2018-11-14 19:04:02 -05:00
zeromus 026bd3e1e5 more cdlogger ux improvements; fixes #1346 2018-11-13 02:06:39 -05:00
alyosha-tas 6dbbc9256a Movie Importer: Display Failure Message 2018-11-10 17:23:45 -06:00
James Groom ca021d96cc Allow bizhawk to be built and run w/ MSBuild and Wine+Mono on GNU+Linux (#1237)
- Update to latest OpenTK, add input code from `mono-stable` branch
(kudos), and fix bugs arisen from version differences
- Move some functionality into Win-specific classes and add Wine+Mono
implementation where simple
- Add conditions to main loop so some things only run on Windows
2018-11-04 20:05:20 +03:00
Asnivor acebf2621c Manual reversion of PR #1277 2018-09-21 15:38:52 +01:00
Asnivor 2565f49c89
Merge branch 'AmstradCPC' into master 2018-09-19 14:56:41 +01:00
Asnivor 95e565c545 CPCHawk: Start of new CRCT and Gatearray implementations 2018-09-19 14:35:22 +01:00
Asnivor 92f187fce1 RAMWatch: Enhancements (#1315)
fix #1257
2018-09-14 08:28:38 +03:00
Asnivor 163a370be0 Firmwares: some comment culling 2018-09-13 15:23:15 +01:00
Asnivor a04ad91b2c FirmwaresConfig: Stop indescriminate importing (and some other things) - #314 2018-09-13 15:07:52 +01:00
zeromus ba4b32f619 rename TempFileCleaner to TempFileManager; add global path config for temp files
I did this in a funny way (sets the environment for the process).
The idea is that any code which sloppily used Path.GetTempDirectory (etc.) would now have its pathing changed.
It is a little dangerous to allow this to be changed on the fly (I do allow it) since something may expect it to be stable, but I think it's OK.
So anyway. keep your eyes peeled for problems. It's possible I could do this differently and only affect a subset of safely managed things.

should fix #1252
2018-09-11 21:32:50 -04:00
zeromus d4a48a8ee1 here's how I think input display should work. also fixes your bug. also breaks something that had this comment (maybe)
// adelikat: TODO: this is likely the source of frame 0 TAStudio bugs, I think the intent is to check if the movie is 0 length?
2018-09-10 16:57:10 -04:00
feos fbdea8282d add missing zxs mnemonics
tastudio: properly handle Show X menu items
2018-09-10 20:22:41 +03:00
upthorn 9e814896cb Some plugin interface libraries, and further refactoring. 2018-09-03 19:31:01 -07:00
upthorn 0a6aa912cf Further plugin interface design/development work 2018-09-01 03:19:05 -07:00
upthorn cdb205e696 Initial API Work 2018-08-31 21:21:34 -07:00
Asnivor f436e25426 Fix movie header SystemID (#1277)
From ticket #1246

Small change to MovieConversionExtensions.PopulateWithDefaultHeaderValues()

Just changes SystemID to "GG" or "SG" if Global.Emulator .IsGameGear or IsSG1000 is true.

Without this, the play movie dialog shows 'Platform' as SMS for game gear and SG1000 movies (and highlights this in RED as it is incorrect).
2018-08-22 20:51:20 +03:00
feos a365284383 tastudio states decay: fix logic for last edited frame 2018-08-22 20:05:33 +03:00
Asnivor 4e470cf17a ZXHawk: DeterministicEmulation to be overridden (TRUE) when recording a movie - #1290 2018-08-21 14:16:14 +01:00
Asnivor c4167555ae MultiDiskBundler: Address request in ticket #764 (#1275) 2018-08-16 17:58:48 +03:00
Asnivor a471206d6a ZXHawk: Added bk2 mnemonic constants 2018-08-13 09:12:38 +01:00
Asnivor dd7b81a714 CPCHawk: Romloader tweak 2018-07-03 14:55:25 +01:00
Asnivor 531833c7b0 CPCHawk: Initial project outline (may or may not come to something eventually) 2018-07-03 14:53:09 +01:00
adelikat 22d1818641 DoSettings file for all project to explicitely set language level to C#6 2018-06-23 13:06:13 -05:00
feos 03b3ea0b2f triple cast, but we don't have to cast to string to fetch ARGB 2018-06-22 23:15:35 +03:00
feos 8a2ee98bea fix #1221
can this also close #1222 I wonder?
2018-06-22 20:27:28 +03:00
Asnivor 625f063861 ZXHawk: Added wav tape image support 2018-06-22 14:40:40 +01:00
Asnivor b81a7539cf ZXHawk: Added Compressed Square Wave (CSW) tape image support 2018-06-22 13:23:33 +01:00
Asnivor 50123bf8e2 ZXHawk: Experimental PZX tape image support 2018-06-20 15:03:11 +01:00
adelikat e650f14d24 Lua functions docs to wiki - escape braces on optional params 2018-05-19 16:28:20 -05:00
nattthebear e8145af463 i hope this breaks something 2018-05-12 12:55:42 -04:00
feos a0e5e0e593 tastudio: actually don't drop state above last edited frame 2018-05-10 20:32:44 +03:00
feos 056c24e4cf tastudio: attempt to fix greenzone decay failing to drop states 2018-05-09 17:18:21 +03:00
Asnivor a679a8a7f2 ZXHawk: platformrates - more accuratey 2018-05-08 22:01:10 +01:00
Asnivor f79e2853c0 ZXHawk: Added to PlatformFrameRates.cs 2018-05-08 21:57:19 +01:00
Dan B (Narry) 43f2435737 Filter out forward slashes in FileSystemSafeName to fix games such as "Super Mario Bros. / Duck Hunt". Fixes #1088 2018-05-06 16:44:28 -04:00
adelikat ca0ae3d971 Make the bk2 SetControllersAsMnemonic implementation less bad. Fixes #1181 2018-04-28 09:48:24 -05:00
Asnivor 00f46b0e7d Fix edge-case issue where non-rom games have a header offset detected in RomGame.cs (leading to system detection issues further down the line) 2018-04-26 15:00:54 +01:00
feos ae6ce00d7c I've heard bad things about ElementAt() 2018-03-27 19:01:17 +03:00
alyosha-tas ac66b258ba GBHawk: Reorganize for pending GBC Support 2018-03-24 09:11:23 -04:00
Asnivor e2eac983a1
Merge pull request #1149 from TASVideos/master
Bringing ZXSpectrum branch up to date with master
2018-03-19 15:52:55 +00:00
zeromus 053ee9a45e feos, i dont know, try this 2018-03-14 16:49:42 -04:00
zeromus 0a18040aff remove pointless redundant function name from LuaMethodExampleAttributes 2018-03-13 21:05:30 -04:00
zeromus 205714df95 cleanup #1122 -related lua examples documentation stuff 2018-03-13 21:04:34 -04:00
zeromus 96a13e64f7 why in the world would you use negative values for example bitshift RHS operands? 2018-03-13 20:57:54 -04:00
zeromus 2203270868 Merge remote-tracking branch 'remotes/origin/pr/1131'' 2018-03-13 20:37:48 -04:00
feos 661a15dc2c tsm decay: remove states within internal state gap
states settings: clamp things harder
2018-03-11 17:57:30 +03:00
alyosha-tas 8165fdaaeb C64: Partial Fixes for Leaderboard Golf and 4-in-1 2018-03-11 10:41:11 -04:00
feos 3932e5a025 tsm decay: fix failing to delete frames if marker is there
markers can be *not* mod _step
2018-03-11 13:49:40 +03:00
feos 244530ffe3 tastudio: thanks for this 4 years old off-by-one
these kinds of errors are haunting me lately!

actually useful info about what it fixes: greenzone not being created after you insert right on current frame
2018-03-10 18:01:08 +03:00
feos 9c0328859d tastudio: fix disgusting copy-paste error causing exceptions out of nowhere 2018-03-10 18:01:08 +03:00
Azreal 6032063518 Now looks good :) 2018-03-10 03:00:44 -08:00
Azreal c4b2aba6bd Fixed some bad cases! 2018-03-10 02:43:58 -08:00
feos 444e8d7621 hotkeys: move autofire closer to autohold
"Clear Autohold/Autofire" is not possible, too little space
2018-03-09 22:39:35 +03:00
feos 900a9e5322 lua: let user know which lua core is in use 2018-03-08 23:44:42 +03:00
feos 9d95a520f9 tastudio: fix analog values getting stuck in input port for new frames
interestingly, MovieControllerAdapter.LatchSticky() is only used by tastudio, so this shouldn't cause problems
2018-03-08 21:15:18 +03:00
feos d89677c729 tastudio: fix #913 2018-03-08 14:59:05 +03:00
feos f81f41f6f7 tastudio: fix #916 2018-03-08 14:44:09 +03:00
feos bf8c21663d
State manager decay (#1128)
* Finally use exponential decay algorithm for greenzone
  * Works in both directions (unlike fceux taseditor)
* Stop using last accesses states for anything
* When dropping states per project save, account for state gap better
* Use _states.Keys[i] instead of _states.ElementAt{i).Key in speedy parts, because it's apparently tons faster
* Use StateIsMarker() where it's supposed to be used
* Markers are still left untouched
* Branch states are still dead (probably forever)
2018-03-08 12:24:35 +03:00
Asnivor 23c07cdb67 OSD message handling implementation 2018-03-05 13:29:34 +00:00
Asnivor 90c1e293bf Implemented multi bundler functionlity and multiple tape controls 2018-03-05 11:17:22 +00:00
Xadrophonix d91bd35a95 Second pool of examples. 2018-03-04 14:07:06 -08:00
Xadrophonix 07c07fd72a First pool of examples. 2018-03-04 09:48:38 -08:00
feos 0fe703c9b7 tsm: redo the algo from scratch, probably not last time 2018-02-27 01:28:24 +03:00
feos 13a49b00d0 tsm: improving the algo 2018-02-26 01:45:44 +03:00
frequem 71ba3024b7 Fixed linux build 2018-02-21 20:19:33 -05:00
frequem d0d73766bd Fixed some filenames causing problems on case-sensitive systems 2018-02-21 20:19:33 -05:00
feos 7ae374df01 tastudio: fuck this 2018-02-21 02:06:25 +03:00
alyosha-tas 96fb867f9f PSX movie import: Fix copy-paste error
Partial Fix, buttons still don't line up but getting closer.
2018-02-11 10:03:57 -05:00
TASeditor 36900b15d4 tastudio lua: setinput functions, onbranch callbacks (#1098) 2018-02-10 14:58:46 +03:00
Asnivor 7c82d6d526
Merge pull request #1106 from TASVideos/master
Bring ZXSpectrum branch up to date with master
2018-02-06 08:45:48 +00:00
zeromus b3b41fb75f fix movie backup saving path (was affected by PWD) 2018-01-21 14:17:14 -06:00
Udo Held 036a3d321a Fix for #1094 lua mainmemory.readbyterange() issue 2018-01-14 11:18:07 +11:00
alyosha-tas 1f0c9f2be8 GBHawk: Fix audio and states 2017-12-15 14:29:11 -05:00
alyosha-tas dab3b85599
Merge pull request #1071 from Asnivor/speccy
ZXHawk Initial
2017-11-28 18:08:48 -05:00
Asnvior 7287afc5da More SynState work 2017-11-28 19:28:22 +00:00
Asnivor d012472999 Initial commit. 48K spectrum only. 2017-11-23 17:26:15 +00:00
alyosha-tas 7a987810ef Cheats: Fix 2 byte return values
Fixes #1060
2017-11-21 09:58:16 -05:00
alyosha-tas 8e1ba79e0a GBHawk: Add core picker 2017-11-19 10:17:23 -05:00
alyosha-tas 821953348a
Merge pull request #1057 from TASVideos/master
Sync GBHawk with master
2017-11-19 09:47:14 -05:00
alyosha-tas 76dca1147d
Merge pull request #1052 from YoshiRulz/ramwatch-displaycol
Add display type column (resolves #683)
2017-11-14 09:51:05 -05:00
alyosha-tas c18298c8a5 GameBoy: Disable BIOS in Gambatte. Use GBHawk for GameBoy, Gambatte for CGB. 2017-11-11 09:07:58 -05:00
YoshiRulz f983c91eb0 Add display type column (resolves #683) 2017-11-10 14:32:30 +11:00
alyosha-tas 7749e1407e GBHawk Updates and Sync 2017-11-09 09:51:39 -05:00
vadosnaprimer 1809d19ecb smart state gap for greenzone. fix #915
disable disk capacity setting
2017-11-05 22:34:58 +03:00
vadosnaprimer e99ea11cf7 tastudio: why don't we update input every new frame we capture
everybody loves tiny off by one errors that completely break everything
2017-11-05 16:23:26 +03:00
adelikat ebcd237858 Merge branch 'master' into domainedmemoryhooks 2017-10-29 12:38:29 -05:00
alyosha-tas 11b6bb6e2f
Merge pull request #1037 from Asnivor/discid-fixes
RomLoader - better disc load failures
2017-10-29 08:27:24 -04:00
Asnivor 6ea1171ab7 RomLoader: graceful disc failures 2017-10-26 14:55:31 +01:00
Tastyfish fef2c131f8 Adds memory.hash_region to aid in detecting RAM changes 2017-10-25 21:12:31 -04:00
zeromus b6934ed195 Merge pull request #1034 from Asnivor/MDS
DiscSystem: MDS/MDF Support
2017-10-25 12:24:18 -04:00
Asnivor 6d87be1396 Experiemental MDS/MDF Support 2017-10-25 17:06:16 +01:00
alyosha-tas af9c813c5b Add files via upload 2017-10-19 09:48:27 -04:00
feos 94170687a4 tastudio: always assign branch's laglog when it's loaded
fixes failure to color greenzone if a branch without input diff was loaded (and some other weird conditions were met)
2017-10-07 23:07:15 +03:00
alyosha-tas 2489bc5c26 Update RomLoader.cs 2017-08-29 10:49:25 -04:00
alyosha-tas 0e37c12c4f Update RomLoader.cs
Thanks zeromus I forgot about that >__>
2017-08-27 14:08:29 -04:00
alyosha-tas d5dd78bbdc Update RomLoader.cs 2017-08-25 10:02:43 -04:00
alyosha-tas 1e30ae0242 Update moives to remove EMU7800 2017-08-25 09:43:56 -04:00
alyosha-tas ebc7958a68 Update Movies to remove EMU7800 2017-08-25 09:42:39 -04:00
alyosha-tas a49a4b2bc5 Config: Remove EMU7800 2017-08-25 09:41:24 -04:00
alyosha-tas 434d88f613 ROM Loader remove EMU7800 2017-08-25 09:37:22 -04:00
zeromus 1250b72bce tidy autoflushing stuff 2017-08-23 10:32:17 -04:00
shanehoman 85575eae82 Standardize as AutoSaveRAM
- Rename files
- Add path to PathManager
- Alter config UI
Set default settings
- ASR disabled
- 5m preselected
Display OSD messages when ASR enabled
- SaveRAM is older than ASR
- SaveRAM doesn't exist but ASR does
2017-08-19 23:14:08 -07:00
shanehoman 89059673f0 Configure autosave in Config -> Customize... -> Advanced under the SaveRAM backup option
reduced options to 5s for HUDs or other RAM watchers or 5m, typical backup save timing in visual studio and office.
Added option for custom autosave interval
Split Autosave enable/disable and time settings
Fixed hotkey display for Flush SaveRAM (menu was reading the wrong key in HotkeyBindings)
2017-08-18 21:02:51 -07:00
shanehoman acd194128e automatically save saveram every 1/5/15/30/60/300s
fun fact: a 1 frame flush timer is workable on a RAM disk
2017-08-18 15:36:26 -07:00
adelikat b5bb68fec5 Atari 7800 - when GameInfo options contains Pokey=true, use Emu7800 instead of A7800Hawk, regardless of core setting 2017-08-04 22:46:33 -05:00
adelikat 9819b92a42 expose Atari7800Hawk in release builds 2017-08-04 22:02:38 -05:00
adelikat 49fc7223e6 Atari7800Hawk, wire up the disassembler, default to this core instead of emu7800 2017-08-04 15:57:26 -05:00
adelikat 04ce66c397 phase 1 of changing memory callback api to specify domain - require cores to specify which domains are available and have the domain passed in when creating callbacks. Still todo - cores need to pass in domain name on CallReads/Writes/Executes methods 2017-08-01 22:05:17 -05:00
alyosha-tas 3889955eab Update Bk2MnemonicConstants.cs
Add BW (black/white <-> color switch) to mnemonics
2017-07-29 19:20:32 -04:00
adelikat bb1afe059e add the .32x extension to various lists of extensions that should probably not exists in the first place, fixes file chooser from opening up on unknown .32x roms, and auto-picking a .32x rom if it is the only file in an archive 2017-07-24 12:28:49 -05:00
alyosha-tas 471f931b7c ROM Loading: keep header if game not in DB (A78)
-Only for A78 games for now, so the core can parse the header if it needs too
-Probably should do it for other systems as well but I don't know how it will impact them.
2017-07-23 10:26:08 -04:00
zeromus d5770fb8a3 re-apply "keepalive" GC fixes to luainterface mode in emuhawk; maybe it will actually work now and not result in crashes. at least we should check it. 2017-07-22 23:41:30 -05:00
alyosha-tas 4b38d13ef4 Update RomLoader.cs 2017-07-21 19:43:46 -04:00
alyosha-tas d8b13d21b8 Update RomLoader.cs 2017-07-21 19:30:00 -04:00
adelikat 140f603607 rename menu item from Pizza Boy to SameBoy, remove some commented code 2017-07-21 08:34:44 -05:00
nattthebear cf8013af4a sameboy: Add more features for the merciless slave driver 2017-07-19 18:48:11 -04:00
nattthebear bfd7337a32 sameboy: SGB support. Mostly accomplished through the power of copy+paste, since we plan on dropping pizza boy 2017-07-18 19:57:53 -04:00
nattthebear 34e68c589f Sameboy progress 2017-07-18 16:48:49 -04:00
adelikat f60a4a07e7 UI for multi-disc Sega-CD support. Note that the ui will technically allow you to bundle a mix of dics and carts, but tom loading for now will only take multiple discs. 2017-07-17 20:36:04 -05:00
nattthebear c31ebe176d gpgx: multidisk? dunno 2017-07-17 18:49:16 -04:00
zeromus 720cc0d9bb fix path manager support of fully rooted paths (e.g. c:\roms) 2017-07-17 09:47:25 -05:00
nattthebear abc894da93 meh 2017-07-16 07:38:52 -04:00
zeromus afda5dbb62 set a value in the switchable lua library to indicate whether it's NLua or LuaInterface; effectively undo 8bc067cbbe for LuaInterface 2017-07-15 16:36:18 -05:00
adelikat af653725bb PCFX - multi-disc support 2017-07-14 19:46:05 -05:00
adelikat b67c104de7 Saturn - multi-disc support 2017-07-14 19:40:27 -05:00
zeromus a8d10525b6 make a comment on prior commit for good recordkeeping purposes 2017-07-14 13:48:33 -05:00
zeromus af7a2d8b4a forgot to commit 2017-07-14 01:02:15 -05:00
adelikat 9efa5a01b0 Option to pick the lua core in the customize dialog 2017-07-13 21:05:02 -05:00
adelikat 4a33ed219c make pizza boy the default for SGB 2017-07-13 20:49:01 -05:00
adelikat a105f29d04 PC-FX - mnemonics 2017-07-13 16:31:55 -05:00