zeromus
2c62d8cf73
add "TurboGECD" disc type identifier. fixes #2043
2020-05-26 13:12:47 -05:00
zeromus
78bde0a5b4
extra fix due to last commit
2020-05-26 13:12:06 -05:00
zeromus
5a6072cdf0
Revert "Move some private helper methods to local methods in DiscSystem"
...
This reverts commit 6f813edbdb
.
2020-05-26 12:51:33 -05:00
nattthebear
7244231cc4
adjust comments
2020-05-26 08:17:39 -04:00
YoshiRulz
33ff00714d
Change more input code to use int for axes instead of float
...
This probably breaks TAStudio or something, on the bright side a lot of the
float equality checks are gone. see e12b5d813
2020-05-26 21:45:20 +10:00
YoshiRulz
3e5aa1a65f
Add Menees.Analyzers and update FxCop
2020-05-26 17:22:20 +10:00
zeromus
162a151451
don't need to complain when I can do this
...
This reverts commit 02a70a4457
.
2020-05-25 23:15:25 -05:00
YoshiRulz
6e9539157e
Allow searching contents of .gz, .tar, and .rar archives
...
not .tar.gz though, it thinks it's a nested archive and that's disallowed
somewhere else
2020-05-26 14:08:10 +10:00
YoshiRulz
7ae94c4300
Fix nullability of return type
2020-05-26 13:46:54 +10:00
YoshiRulz
02a70a4457
Show dialog on launch when running an unsupported version of Windows
...
this time it doesn't happen on dev builds so zeromus can't complain
see 60b7858fb
, 8c50945ec
2020-05-26 13:43:11 +10:00
alyosha-tas
3a2aae61aa
Merge branch 'master' of https://github.com/TASVideos/BizHawk
2020-05-25 22:34:18 -04:00
alyosha-tas
9be42c5c69
Fix picking GBhawk core
2020-05-25 22:33:15 -04:00
adelikat
cd5591a122
remove some redundant code
2020-05-25 21:25:24 -05:00
adelikat
0d12d5a819
CheatList - pass in the DisableCheatsOnLoad config value
2020-05-25 21:25:24 -05:00
adelikat
7778fccd77
add uzebox path entries, fixes #2043
2020-05-25 19:21:31 -05:00
nattthebear
a20c3c3ccb
Change waterbox to use memory reserve semantics
...
If a particular core instance doesn't use up too much memory, then we don't charge the host OS for that memory.
The strange thing here is that, testing locally on Windows 10, we were already getting the desired semantics even with SEC_COMMIT and not SEC_RESERVE. This commit is still important because:
1) Windows might be providing me an optimization it can't guarantee,
2) Linux might not be able to provide the same optimization
3) In any event, this patch also trims down xor snapshots to match the actual needed size.
2020-05-25 20:03:32 -04:00
adelikat
87c48879fc
move Global.Emulator to GlobalWin.Emulator now that no Client.Common files reference it
2020-05-25 18:05:34 -05:00
adelikat
5b7d612238
SaveStateManager - simplify video buffer loading and don't use Global.Emulator
2020-05-25 17:59:09 -05:00
adelikat
7a374f0013
CheatList - has memory domains passed in to the Load() method
2020-05-25 17:50:42 -05:00
adelikat
8798d0c03e
CheatList - remove some unused code
2020-05-25 17:43:03 -05:00
adelikat
e498476b55
CheatList - move a config check to the calling code
2020-05-25 17:29:57 -05:00
adelikat
705af68f65
check if ITasMovie not TasMovie, still not great that it needs to check types but better
2020-05-25 16:50:56 -05:00
adelikat
5e4983c93f
TasMovie.RecordFrame() - duplicate desired base class logic instead of calling base, because base does some "VBAStyleLoadState" stuff that is very undesireable in tastudio
2020-05-25 16:47:26 -05:00
nattthebear
472a954da0
Minor cleanup in some waterbox memory functions
2020-05-25 17:31:50 -04:00
feos
5539308398
mame: fix configs being dumped to disk hopefully, also fix the thing
...
mame lua figuring out cpu and address space every time I read a byte was a dumb idea it seems. accessing maincpu program space directly via C API is much wiser. ram search does the thing now.
2020-05-26 00:04:43 +03:00
adelikat
2ce79fc356
Move SoundMaxBufferDeficitMs and DisableSecondaryThrottling from Global to GlobalWin or Sound class, since only EmuHawk code accesses these
2020-05-25 15:40:23 -05:00
adelikat
aec01b794a
Have movies maintain a copy of the current core since their lifecycle should never extend past the core, removes a lot of global usage, downside is that it makes IMovie have more things when it is already very complex
2020-05-25 15:03:45 -05:00
nattthebear
07c627cc3e
Merge pull request #2044 from TASVideos/nyma
...
Add 'nyma' project
The goal is to eventually update all of our Mednafen cores. For now, there is a work in progress import of the Mednafen pce core. Basic gameplay with hucard, turbocd, and supergrafix is supported, but the core is not complete yet.
2020-05-25 13:54:35 -04:00
nattthebear
9ec8536a5e
Finish getting saveram working on PCE (theoretically)
...
This actually makes saveram saving and loading somewhat slower on all waterbox cores, but whatever... it's more important to be simple and readable in this code than fast.
2020-05-25 13:49:47 -04:00
adelikat
fbb47b2297
StateManagerDecay - pass in Global.Emulator.Frame instead of referencing it directly
2020-05-25 12:47:30 -05:00
nattthebear
f9b5b9e374
pce - implement most memory domains our existing core does
...
The mednafen debugger system makes this easy, unfortunately that has a lot of other baggage, so do it this way
2020-05-25 12:49:36 -04:00
nattthebear
1000b74f2d
tweak waterbox hash detection
...
A game could wild pointer into a slightly out of range part of the sealed heap during init, and then do so differently on a subsequent init, and we wouldn't detect it
2020-05-25 12:49:35 -04:00
nattthebear
4ec0753f52
all that stylecopp shizz and it doesn't have a line length limit =/
2020-05-25 12:49:35 -04:00
nattthebear
f37a51ef27
Rework memory block os abstraction
...
The existing code had a lot of copy paste and things that needed to be done twice to keep both impls in sync. Refactor to use a minimal abstraction layer and keep all other code common
2020-05-25 12:49:35 -04:00
nattthebear
b871f95dc0
pce - fix drive light
2020-05-25 12:49:35 -04:00
nattthebear
586117462e
add back the old wonderswan controller config category labels
...
no hack this time
2020-05-25 12:49:35 -04:00
nattthebear
bc8d298a88
support pce-cd and sgx in nyma
2020-05-25 12:49:34 -04:00
nattthebear
8c9f4e24d8
settings infra
2020-05-25 12:49:34 -04:00
adelikat
daaa28f451
wire up as much as I can pcecd to TerboGrafix core
2020-05-25 12:49:34 -04:00
adelikat
e332096731
wire up more pce core picker
2020-05-25 12:49:34 -04:00
adelikat
d9eb9c86ec
prep work for pce core picker
2020-05-25 12:49:34 -04:00
nattthebear
69d3dbc35f
pce: basic rom loading and playing works
2020-05-25 12:49:33 -04:00
nattthebear
d82d67996f
Rework controller config
...
What _was_ this? A new categoryLabel abstraction was added so we'd need fewer hacks, but in order to use it you need to add extra hacks to it per core? Nonsense code, too. Fix it properly. (Maybe; I didn't test it. Why bother? No one else puts any effort into this either.)
2020-05-25 12:49:33 -04:00
nattthebear
257aa991fd
progress, or regress, or somegress
2020-05-25 12:49:33 -04:00
nattthebear
24286be735
Linking and unwinds
...
The goal here is to provide an unwind implementation that works. We (probably) don't have a working ldso, so reconfigure libunwind to work without that. To do that, it needs __eh_frame_* variables which it can addressof to find the locations of .eh_frame and .eh_frame_hdr. There is no way I could get gold to add these at all, so switch back to ld and add a custom linkscript. The custom linkscript gives us the opportunity to simplify the savestate memory mapping stuff inside ElfLoader, which should knock a bit of time off of state loads -- those VirtualProtect calls are not cheap. This also removes a potential source of nondeterminism with certain clever out of range pointers.
Any waterbox core that I didn't recompile for this commit will assert now until it is recompiled, because .wbxsyscall is in the wrong palace.
2020-05-25 12:49:32 -04:00
nattthebear
815d49bd63
cap nullemulator to <=200fps
...
realistically, about 160-165fps for me
2020-05-25 12:49:32 -04:00
nattthebear
a1ce5e514c
Some changes, most notably syscall cleanup
2020-05-25 12:49:32 -04:00
nattthebear
0f65351e13
Marching onward
2020-05-25 12:49:31 -04:00
adelikat
4e3ae130e2
move some logic out of TasLagLog that belongs at the caller level
2020-05-24 19:56:29 -05:00
alyosha-tas
43e796d256
SubGBHawk: no longer add vblank count to header
2020-05-24 18:37:24 -04:00
adelikat
c22e02d22b
ToTasMovie() extension method - remove vestigial default bool param
2020-05-24 17:10:14 -05:00
adelikat
0acb697808
use MovieService more
2020-05-24 16:43:04 -05:00
adelikat
e980932356
Tastudio - don't show inaccurate core nag, if a movie is already loaded, since the movie has the inaccurate core in sync settings, this royal jacks things up
2020-05-24 16:26:35 -05:00
adelikat
44b5d12e39
Recent menus - add freeze/unfreeze icons to the freeze menu, hopefully will help it be more noticeable when the mode has changed from a misclick
2020-05-24 16:12:22 -05:00
TiKevin83
cab89ef182
Cleanup unused libretro shader code
2020-05-24 15:29:01 -05:00
alyosha-tas
21779a2a6f
GBHawk: ppu refactor for window and bus
2020-05-24 16:26:07 -04:00
alyosha-tas
334844bde2
SubGBHawk: use cycle count to correctly track time
2020-05-24 16:25:14 -04:00
adelikat
23c1ccac7e
BkmControllerAdapter - simplify and get rid of legacy support for random buttons, not such a good idea on an importer
2020-05-24 14:07:47 -05:00
zeromus
831a64c7de
fix layout of bsnes registers fetch payload (broken in 36be9e9fc7
). fixes #2040
2020-05-23 23:46:52 -05:00
YoshiRulz
5b5b6bd483
Unify ApiContainer instantiation
...
fixes c1cd1b9e0
2020-05-24 14:19:14 +10:00
YoshiRulz
af2f460356
Make this WriteLine in FrameBufferResized conditional on DEBUG
2020-05-24 14:01:09 +10:00
YoshiRulz
5689d69bfb
Make gamedb's WriteLine flooding conditional on DEBUG
2020-05-24 13:57:08 +10:00
adelikat
340370fd68
simplify Bkm importing
2020-05-23 20:58:00 -05:00
adelikat
1a6931bdb1
Simplify bkm importer
2020-05-23 20:44:38 -05:00
adelikat
f70fcdc3b2
remove LoopOffset support from BkmMovie
2020-05-23 20:34:49 -05:00
adelikat
d4aa057664
Simplify getting core names by using the constant instead of reflection
2020-05-23 20:28:28 -05:00
alyosha-tas
e94432dbd8
GBHawk: fix audio for games that turn off wave chanel rapidly to fill wave ram
2020-05-23 19:19:41 -04:00
adelikat
a540a2fe85
consolidate movie instantiation code more
2020-05-23 15:04:30 -05:00
adelikat
1e9dcd2e9b
for fixes to bk2 and tasmovie creation, fix a conversion bug that did StartsFromSavestate TasMovie logic for movies that start from saveram
2020-05-23 14:08:36 -05:00
adelikat
22bab8361a
ugh, didn't mean to remove the lock in Input.cs
2020-05-23 14:02:43 -05:00
adelikat
0f1066fe93
restrict and consolidate new-ing of IMovie classes
2020-05-23 13:53:47 -05:00
adelikat
0e59ef1679
documentation fix
2020-05-23 13:39:30 -05:00
adelikat
1326a30287
remove some unnecessary .ToString() calls
2020-05-23 13:36:23 -05:00
adelikat
63cd1c603e
Input.cs - simplify and remove a todo, I think not creating a copy is fine here
2020-05-23 13:36:23 -05:00
adelikat
54de7ad178
Use more movie mode extension methods, make MovieSession null until a movie is loaded
2020-05-23 13:36:23 -05:00
adelikat
d0d526f746
Some fixes to movie mode extensions, these aren't bugs, yet, as the scenarios never occur
2020-05-23 13:36:23 -05:00
alyosha-tas
2e4609ff02
GBHawk: implement some minor audio hardware bugs
2020-05-23 14:35:55 -04:00
adelikat
f2f2de8bdd
Rip out the Infinite movie feature, it was a gimmick that has run its course. It isn't much code but it does complicate the API for a feature that would never lead to a published tas movie
2020-05-23 12:57:24 -05:00
adelikat
3174a676f5
make a struct readonly, and private
2020-05-23 12:57:24 -05:00
alyosha-tas
216580f693
GBHawk: center sound waveform. Seems to help ready to rumble and cannon fodder. Sounds closer to what I hear in videos.
2020-05-23 12:06:23 -04:00
adelikat
5912f6d491
MovieApi - simplify some long winded comment and subtitle generation. This class seems to very thinly wrap the IMovie api, why not just provide an IMovie?
2020-05-23 10:00:55 -05:00
adelikat
8d5cbd728e
simplify SimpleController API
2020-05-23 09:43:38 -05:00
adelikat
049a79c996
separate the logic of creating an inputlog from generate on screen input display. Some duplicated code by doing this but I'll take that over tangled code, and more importantly, this separates the need of having an instaniated movie in order to display input
2020-05-23 09:27:47 -05:00
YoshiRulz
c1cd1b9e0f
Cleanup some ApiHawk management code
2020-05-23 20:44:32 +10:00
YoshiRulz
9e4595c184
Remove remaining reflection in ClientApi and cleanup
2020-05-23 16:20:42 +10:00
alyosha-tas
74ef5b4b1f
GBHawk: tune audio a bit
2020-05-22 21:28:58 -04:00
upthorn
e5efeb49ac
Add DrawImage and DrawImageRegion overloads to Gui API to allow for drawing an image from a prepared Image object rather than requiring a file in all cases.
2020-05-22 15:02:48 -07:00
upthorn
2437e0dba9
Make ClientApi calls safer by avoiding reflection where possible.
...
Add InvisibleEmulation and SeekFrame to allow CamHacks to function
2020-05-22 15:02:48 -07:00
adelikat
bf6f6a54d0
When loading a movie - account for a missing core header entry, fallback to the user's preferred core but give them a pop up warning about it
2020-05-22 11:52:56 -05:00
alyosha-tas
78f0b9252d
GBHawk: controller IRQs enabled by write delayed 4 cycles
2020-05-22 12:17:42 -04:00
YoshiRulz
b65ad5afbd
Inherit ElfSharp dependency
...
my bad; fixes 6e0148d92
and 4f10b9780; re: #2035
2020-05-22 14:44:56 +10:00
zeromus
4f10b97809
this suffices to get elfsharp going. when i added it myself as a package in VS, it didnt touch the nuget json config files but did add it as a reference here. Nuget was invented after my time, so I don't know what's going on. ( fixes #2305 )
2020-05-21 15:35:17 -05:00
alyosha-tas
db91189668
GBHawk: fix audio
2020-05-21 13:38:34 -04:00
nattthebear
09f75c281c
Play musical names with MemoryBlock
...
The refactoring of platform abstractions should never have changed the name of the public interface. No one cares about MemoryBlockWindows or MemoryBlockUnix - those names are impl details.
2020-05-21 12:59:36 -04:00
YoshiRulz
174a7cc46d
Silence NU1702 (Framework dep in Standard project)
2020-05-21 17:33:53 +10:00
YoshiRulz
69b8539d55
Fix defaults button in GenericCoreConfig not updating _settingsChanged
2020-05-21 17:32:26 +10:00
YoshiRulz
6e0148d921
Cleanup references
2020-05-21 17:25:35 +10:00
YoshiRulz
ab1dca3e41
Fix NRE on passing empty string to LoadRom, simplify HawkFile creation
...
HawkFile now correctly sets FullPathWithoutMember to "" and Exists to false,
meaning RomLoader will return false instead of crashing.
2020-05-21 17:00:43 +10:00
YoshiRulz
9ae272e778
Import MainSlnCommon.props in BizHawk.Tests
...
fixes 1bfaaab87
2020-05-21 16:39:46 +10:00
YoshiRulz
7ddf6c26b9
Refactor DiscMountJob.RunBizHawk() to remove goto
2020-05-21 04:45:01 +00:00
YoshiRulz
b2982825d8
Make DiscJob abstract
2020-05-21 04:45:01 +00:00
YoshiRulz
6f813edbdb
Move some private helper methods to local methods in DiscSystem
2020-05-21 04:45:01 +00:00
YoshiRulz
d436b9b9aa
Fix colection/LINQ usage in DiscSystem
...
except the garbage that is byte[].Skip().Take(), I CBB fixing that
2020-05-21 04:45:01 +00:00
YoshiRulz
0ccf30396d
Use modern `??=`, `is`, casts, etc. in DiscSystem
2020-05-21 04:45:01 +00:00
YoshiRulz
ae22cd9f1b
Use explicit visibility modifiers in DiscSystem
2020-05-21 04:45:01 +00:00
YoshiRulz
0706b96afe
Fix encapsulation of IN_*/OUT_* in DiscSystem
...
these properties imply builder semantics but the classes aren't builders
2020-05-21 04:45:01 +00:00
nattthebear
21cdf5120b
Revamp waterbox build environment and runtime. ( #2027 )
...
Create an all new waterbox build environment:
WSL2 + Ubuntu 20.04 LTS (Other linuxes may work)
Musl libc with waterbox customizations
LLVM's libclang-rt, libunwind, libcxxabi, libcxx
Static linking to elf files
Compared with the old system, this is easier to set up a dev env for and easier to update in the future. The executables are larger but produce smaller savestates due to static linking. The modern toolchain means advanced library features and language features that sometimes appear in some upstream cores will be reusable.
2020-05-20 15:34:24 -04:00
alyosha-tas
acf7926629
Add iscgb flag for subgbhawk
2020-05-20 15:04:05 -04:00
alyosha-tas
8ef5c18fcb
GBHawk: bug fix and start wok on audio
2020-05-20 11:32:03 -04:00
adelikat
b5ad1e636e
add .uze (uzbox) to the Load Rom dialog filter
2020-05-19 20:48:53 -05:00
adelikat
123dbcc46d
make uzebox and pcfx games not throw an exception on load, fixes #2022
2020-05-19 20:46:07 -05:00
adelikat
0a12f9e742
more tests for Bk2LogEntryGenerator
2020-05-19 20:29:55 -05:00
adelikat
0b5047b64a
fix test namings, make Client.Common internals visible to tests, add a Bk2LogGenerator tests (more to come)
2020-05-19 20:05:12 -05:00
adelikat
1bfaaab872
https://www.youtube.com/watch?v=Ya2xifdO_l0
2020-05-19 19:55:08 -05:00
adelikat
21e4d30f98
remove another string extension method that was unused, and consolidate classes
2020-05-19 19:37:52 -05:00
adelikat
6d7d36c1d0
delete HowMany() extension method and just use .Count() instead, the one value add of null/empty checking was never utilized anyway
2020-05-19 19:30:24 -05:00
adelikat
96b0b37673
consolidate and rename tests project into a single project, delete commented out tests, add a unit tests that tests a thing
2020-05-19 19:24:53 -05:00
YoshiRulz
d91c477e5a
Add test projects and solution using MSTest, add scripts, upgrade CI
2020-05-19 23:54:14 +00:00
adelikat
0f1f463bcb
I nitpick interface refactor
2020-05-19 18:01:09 -05:00
YoshiRulz
74a6da509a
Add NumLock and PrintScreen to OpenTK and to DirectInput->OpenTK map
2020-05-19 23:47:54 +10:00
YoshiRulz
2c817e3057
Use Range.Count extensions
2020-05-19 23:37:59 +10:00
YoshiRulz
7613748390
Fix some code flagged by StyleCop
...
SA1106 x4, SA1113 x2, SA1142 x2, SA1206
2020-05-19 23:33:16 +10:00
alyosha-tas
c96a233d5d
GBHawk: Speed switch timing fix.
2020-05-18 15:43:51 -04:00
feos
e075012b70
Rundum ( #2019 )
...
fix #1701
fix #1285
Co-authored-by: nattthebear <goyuken@gmail.com>
2020-05-18 21:11:18 +03:00
RetroEdit
4555be85bc
tastudio: fix Changes wrongly being set false ( #2018 )
...
tastudio: fix Changes wrongly being set false
2020-05-18 12:29:23 -05:00
adelikat
28d859e2d8
SavestateManager - make a public method private
2020-05-18 11:59:25 -05:00
RetroEdit
88b038f24e
Improve frame insertion/deletion efficiency, particularly for undos ( #2017 )
...
* Replace unnecessary fromHistory parameters
* Improve frame insert efficiency, particularly for undos
* Improve frame delete efficiency, particularly for undos
2020-05-18 10:58:29 -05:00
adelikat
4b6e6d996a
Simplify some Bkm code
2020-05-17 15:34:47 -05:00
adelikat
100fc2bad5
Rewinder - remove message callback, I dont' think this message is worth the code, especially since mainform always adds a message
2020-05-17 15:14:40 -05:00
adelikat
78c1482720
Rewinder - remove Movie active check when deciding about keeping the last frame of a rewind. It seems to work without it, but more significantly, rewind is not MOVIE SAFE, it used to be disabled while recording, and somehow got enabled, I guess someone wanted their desyncs
2020-05-17 15:06:23 -05:00
adelikat
1e0ae62041
Rewinder - pass stuff in, instead of using globals
2020-05-17 15:01:44 -05:00
adelikat
b140143791
Watch classes - remove "LIAR logic"
2020-05-17 13:35:49 -05:00
adelikat
b2d482ea66
Hex editor - cleanup a bit
2020-05-17 12:26:53 -05:00
adelikat
07225c06de
oops - fix multi-byte views in hex editor
2020-05-17 12:25:04 -05:00
adelikat
5ffc26b5e9
AutoFireStickyXorAdapter - pass in on/off instead of getting them directly from Global.Config
2020-05-17 11:59:24 -05:00
adelikat
c91b17877d
Simplify MovieSession a bit
2020-05-17 11:23:52 -05:00
adelikat
3e354ed230
Simplify Movie extensions ToBk2()
2020-05-17 11:22:22 -05:00
adelikat
42356dd32b
roll back RomLoader cleanups from e4563570f9
, ref implicit tuples and todos don't make the situation better
2020-05-17 11:05:44 -05:00
adelikat
604f4ce833
TasStateManager - simplify MaxState logic and actually fix the math so it isn't 2x of what is intended
2020-05-17 10:41:39 -05:00
adelikat
45fd7ee81e
nuke most of SubstringExtensions, and make it where i can at least read it
2020-05-17 10:39:24 -05:00
adelikat
04aab3c41b
add an IStatable extension method that will return a byte array that's safe to hold on to, but isn't optimized for speed, to be used in basic situations where we are making movies from savestate or getting a savestate length
2020-05-17 10:08:00 -05:00
adelikat
0154222737
a bit of reorg - put Emulation.Common sound files in the sound folder not unecessarily nested
2020-05-17 09:50:05 -05:00
YoshiRulz
0632560899
Split StringExtensions, fix and add to substring extensions
2020-05-17 23:02:30 +10:00
YoshiRulz
e4563570f9
Cleanup RomLoader
...
splitting methods from LoadRom makes it ~150 LoC instead of ~850
2020-05-17 19:41:30 +10:00
YoshiRulz
01460cec1b
Re-add docs for MemoryBlockBase, rename End to EndExclusive
...
see 4a5ece207
, 4abe3f793
2020-05-17 15:07:41 +10:00
alyosha-tas
4ac3cb861d
GBHawk: timing and access fixes
2020-05-16 19:57:53 -04:00
zeromus
ad26b09717
change dll check descriptions to match prereq installer (and be more googlable); also remove vcruntime140.dll since I think vcruntime140_1.dll obsoletes it. I could be wrong, though. We'll readd it if its proven so.
2020-05-16 19:52:23 -04:00
adelikat
513e2287c4
Hex Editor - bulk read the char viewer as well, fixes #2012
2020-05-16 18:51:52 -05:00
adelikat
a0769d4bd9
Lua - fix client.getavailabletools()
2020-05-16 15:30:04 -05:00
adelikat
de97abf6e5
convert some more core name strings to constants
2020-05-16 14:51:47 -05:00
adelikat
3808a6d88f
RomLoader - simplify
2020-05-16 14:43:50 -05:00
adelikat
8da52d985b
more RomLoader cleanup
2020-05-16 14:21:44 -05:00
adelikat
a77988e9be
RomLoader - remove redundant if check
2020-05-16 14:13:49 -05:00
adelikat
b4b0debd59
RomLoader - remove no longer accurate comment
2020-05-16 14:09:27 -05:00
adelikat
71698d5571
fix A7800 rom loading - remove unused and legacy .csv gamedb path, and convert to use CoreInventory
2020-05-16 14:04:11 -05:00
adelikat
c830452775
move a bit more logic from RomLoader to Disc
2020-05-16 13:51:58 -05:00
adelikat
32aa623eff
RomLoader consolidate some Disc creation logic between xml and m3u code paths and abstact some of it out to the DiscSystem project
2020-05-16 13:46:48 -05:00
adelikat
8269b7dec4
RomLoader - remove some redundant cases, if all you need need to do is run CoreInventory.Instance() then the default case handles that
2020-05-16 13:12:36 -05:00
adelikat
14c117e92e
RomLoader - GPGX - support rom + cd .xml files
2020-05-16 11:54:36 -05:00
adelikat
e547a0eb6f
add GEN to multidisk bundler dropdown
2020-05-16 11:38:37 -05:00
YoshiRulz
c248ee495a
Replace ILinkedLibManager.LoadOrNull w/ LoadOrZero
...
see aa8fe56ef
and 4baefd874
2020-05-16 11:41:58 +00:00
YoshiRulz
7afa4a2f98
Replace GetProcAddrOrNull with GetProcAddrOrZero
...
both in ILinkedLibManager and its inheritors, and in IImportResolver and its
inheritors; see aa8fe56ef
2020-05-16 11:41:58 +00:00
YoshiRulz
3e51bbe5c2
Revert "Fix up Nullable<IntPtr> brain damage"
...
This reverts commit aa8fe56ef9
.
2020-05-16 11:41:58 +00:00
nattthebear
9944c9d989
add check for another dll file that we now require
2020-05-16 07:19:24 -04:00
alyosha-tas
11806fa178
GBHawk: timing and DMA work
2020-05-15 21:47:41 -04:00
nattthebear
61f269f097
maybe fix a maybe bug in maybe code that maybe will ever be run
2020-05-15 19:44:28 -04:00
nattthebear
de6208d264
fix a warning in pce
...
looks like something was swept under the rug with the PutSettingsDirtyLikeYourMomBits refactor
2020-05-15 19:01:40 -04:00
nattthebear
aa8fe56ef9
Fix up Nullable<IntPtr> brain damage
...
It'd be one thing if we needed a sentinel value distinct from IntPtr.Zero but we don't. It's a pointer, and 0 is globally understood to be The Bad Value.
Some brain damage remains:
* LoadLibrary abstraction also returns Nullable<IntPtr>
* I named it `Resolve` and not `GetProcAddr` because I didn't want to see win32 everywhere I went :(
2020-05-15 18:56:34 -04:00
adelikat
63ef4125dc
lua - fix client library being null on null emulator
2020-05-15 10:43:30 -05:00
nattthebear
4abe3f7932
Revert 4a5ece2076
( #2007 )
...
Because of intervening commits, there may be some other incidental changes.
While well intentioned, the refactoring was just a mess when it came to actually groking this low level memory block shuffling code.
2020-05-15 07:40:28 -04:00
YoshiRulz
1ee38dcac2
Fix IList<T>.ToLuaTable() extension ( resolves #2004 )
2020-05-15 18:07:37 +10:00
YoshiRulz
7725d59636
Enable SA1124 "Do not use regions" and fix compliance
2020-05-15 17:00:53 +10:00
YoshiRulz
87ec2618a1
Revert "delete all regions"
...
This reverts commit e566d8e258
.
2020-05-15 17:00:49 +10:00
YoshiRulz
a1b501fe5a
Fix OpenAL sound on Unix
...
TODO copy this file from NuGet cache w/ MSBuild
2020-05-15 15:37:29 +10:00
YoshiRulz
fd9da66a85
Revert "Force DummySoundOutput on Mono for now"
...
This reverts commit aaa75a19aa
.
2020-05-15 15:37:23 +10:00
nattthebear
00aebc110c
Fix 3 band equalizer in Genesis ( #2008 )
...
If you tried setting your gains to 100 in the previous patch, it worked sort of, but I decided to incorporate ekeeke/Genesis-Plus-GX@f6f4556 as well to actually fix it completely, and rescale the setting properly so that 1.0 really is neutral gain.
Fixes #1319
2020-05-14 20:29:02 -04:00
nattthebear
68dc12dab7
Prohibit U+D/L+R at the core level in SGB
...
fixes #1308
2020-05-14 19:51:19 -04:00
nattthebear
5892059fc3
Add bulk peek byte for waterbox cores
...
This should speed up the hex editor significantly in one byte mode, but it doesn't because the hex editor is buggy
2020-05-14 18:40:56 -04:00
nattthebear
a49a372410
add bulk read of intptr memory domains.
...
speeds up ram search in quicknes
2020-05-14 18:10:16 -04:00
nattthebear
e566d8e258
delete all regions
2020-05-14 17:33:40 -04:00
upthorn
01089645cc
Merge branch 'master' of https://github.com/TASVideos/BizHawk
2020-05-13 09:25:35 -07:00
upthorn
d48651e668
Prevent crashes on Set*ExtraPadding
...
Prevent crashes when needing to invoke private methods from MainForm.
2020-05-13 08:57:12 -07:00
zeromus
8d1a1e4c92
Properly skip presentation and user prescale steps when taking "raw" screenshot. About a 10% chance of other regressions. fixes #1997 .
2020-05-12 22:39:41 -04:00
alyosha-tas
f089fe5fcd
O2Hawk: Fix Catch the Ball collision detection (timer and counter can't be enabled at the same time.)
2020-05-11 16:30:09 -04:00
zeromus
453baebdcc
neshawk - fix poking wram (fixes ancillary unrelated issue in #1994 )
2020-05-10 20:59:40 -04:00
adelikat
cb55cdd0dd
delete a bit more PCE menu stuff
2020-05-09 19:11:52 -05:00
adelikat
35bed42042
PCE - remove menu items and config dialogs in favor of simply having a GenericCoreConfig dialog
2020-05-09 19:10:54 -05:00
alyosha-tas
e7f603c396
GBHawk: optimizations and serial port cleanup
2020-05-09 18:59:52 -04:00
nattthebear
a040e67c95
Add option to force sram in genesis core ( #1991 )
...
gpgx upstream automatically gives 64KiB sram to every game of size 2MB or lower, unless specifically overrided. That sucks and we don't do it. But some games do need it; there's not enough information to autodetect otherwise. So add a flag that we can set in gameDB for it, and set it true for two known games that have problems otherwise.
2020-05-09 13:48:46 -04:00
adelikat
976ea4967b
cleanup IAsyncSoundProvider hacks and consolidate code that is only used for PCE
2020-05-09 11:01:02 -05:00
adelikat
b16684b4c7
YM2413 - don't implement IMixedSoundProvider, it isn't used
2020-05-08 18:04:04 -05:00
adelikat
05cffd887a
SMS - cleanups
2020-05-08 17:31:20 -05:00
adelikat
099e2f4f97
remove unused YM2612.cs
2020-05-08 16:29:32 -05:00
adelikat
0a512dac4a
SoundMixer - remove an unused and uneeded method, I think it is a reasonable contract that you have to pass in all sound sources during construction
2020-05-08 09:05:32 -05:00
adelikat
3c76e6014a
HuC6280PSG - make some public things private or internal
2020-05-07 20:52:27 -05:00
adelikat
3ae16c4248
Ram search - reduce some unnecessary recreating of the entire ram search list during load. Also remove some Reboot() logic that happens right before a NewSearch that immediately negates it
2020-05-07 17:51:40 -05:00
adelikat
1c51d5b012
Multidisk Bundler - add logic to properly restart when the Rom changes
2020-05-07 15:41:48 -05:00
alyosha-tas
227084c2dd
GBHawk: better emulate unmapped memory
2020-05-07 15:27:07 -04:00
alyosha-tas
8bd739a4c8
GBHawk: ppu cleanup and more aaccuracy edge case work
2020-05-07 11:24:08 -04:00
feos
697bb84808
tweak
2020-05-07 18:12:44 +03:00
adelikat
c50c38d88b
GPGX - keep a savestate buffer for SaveStateBinary, yeah maybe it shoudln't be every cores responsibility, but until it doesn't, this greatly improves rewind and tastudio performance
2020-05-06 20:22:23 -05:00
adelikat
a118763409
a few worthless nitpicks
2020-05-06 20:22:23 -05:00
nattthebear
722358c1b1
Fix pokeymans pirate roms on gpgx ( #1986 )
...
mapper_32k_w expects to be able to write to rom area, so those roms now need larger savestate space
We could be extra clever and alloc_invisible the space and then restore after loadstate, but this pokeymans garbage doesn't deserve that work
2020-05-06 09:39:51 -04:00
nattthebear
974792cdfe
Make waterbox consistency check ui option only skip the memory check, not the core check ( #1979 )
2020-05-06 07:46:40 -04:00
adelikat
a0d825084a
virtual pad support for GB 3x and 4x
2020-05-05 16:44:09 -05:00
zeromus
ca24b31640
waterbox - skip only memory consistency check
2020-05-05 17:29:12 -04:00
zeromus
74ba281463
readd opentk/dinput options to gui
2020-05-05 17:26:13 -04:00
adelikat
53c1f5f784
BasicBot - fix Load event not being called on load
2020-05-05 13:06:33 -05:00
adelikat
22ee71b0cf
refactor lua shenanigans in mainform, instead move frame based logic to lua console update hooks, control SupressScripts in lua itself not in mainform. Also, this breaks the logic that automatically stop countihng rerecords if loadstate happens from script, the logic appeared to be broken and can/should be managed by the script itself
2020-05-05 12:40:57 -05:00
alyosha-tas
4391c97a8e
GBHawk; VRAM access cleanup
2020-05-05 09:03:22 -04:00
YoshiRulz
8c005e6ffa
Add assembly list to ext. tool Attribute, allows shipping dependencies
...
DBMan works again
2020-05-05 09:26:37 +10:00
YoshiRulz
aaa75a19aa
Force DummySoundOutput on Mono for now
2020-05-05 08:54:21 +10:00
feos
4e60e164be
mame: deconstruct Update()
2020-05-04 16:48:26 +03:00
feos
ae448f3cb2
minor tweaks
2020-05-04 15:48:44 +03:00
feos
e836ce343e
mame: let non-fatal "NOT FOUND" problems slide
2020-05-04 13:17:28 +03:00
feos
8e5e1929b2
mame: reduce copypaste
2020-05-04 12:49:25 +03:00
feos
82dcccf6cd
allow exit too
2020-05-04 11:58:27 +03:00
feos
6f72012d6a
move launchers around
2020-05-04 11:27:35 +03:00
feos
7370b4e949
explanations
2020-05-04 11:25:23 +03:00
feos
5c2e6d35c3
mame: finally make mem reading work with frame advance
...
proof that it's a good idea to go to bed with a problem, because your brain keeps solving it while you're sleeping. so when you wake up, it presents you the solution that actually works.
2020-05-04 10:53:29 +03:00
zeromus
7ce9a56dda
fix display manager custom AR/size. broken by 45e0abe39d
. fixes #1975
2020-05-04 00:37:12 -04:00
zeromus
4c7ade126c
disable architecture mistmatch warning on emuhawk
2020-05-04 00:33:20 -04:00
adelikat
cfdb5ffeb6
remove unsupressing too
2020-05-03 20:34:35 -05:00
adelikat
e906f41dc7
TAStudio - don't disable lua scripts while seekinng, even the comment suggests this is a sloppy copy/paste from lua code that definitely would want to disable things
2020-05-03 20:33:39 -05:00
YoshiRulz
1b17cb4297
Replace batch/shell script with MSBuild
2020-05-04 09:41:30 +10:00
YoshiRulz
31d4662ab6
Change executables' build paths and names
2020-05-04 07:22:48 +10:00
YoshiRulz
245cbfbcea
This is dumb
...
This reverts commit d694213000
.
2020-05-04 07:22:26 +10:00
zeromus
d694213000
Revert "Revert "fixes" to EmuHawk.csproj"
...
This reverts commit cf252b7ba0
.
2020-05-03 17:04:44 -04:00
YoshiRulz
bdd622681d
Remove explicit parenting on Properties/Resources.cs
2020-05-04 06:21:14 +10:00
YoshiRulz
b3b5dcf64d
Add SharpCompress <PackageReference/> to EmuHawk
2020-05-04 05:41:36 +10:00
YoshiRulz
73231a59a9
Use batch/shell script to copy DiscoHawk to output as well
2020-05-04 05:24:35 +10:00
YoshiRulz
50461f17ee
Move copy-to-output scripts to Build/ and make them work
2020-05-04 05:24:32 +10:00
YoshiRulz
cf252b7ba0
Revert "fixes" to EmuHawk.csproj
...
This reverts the 5 commits ddddb309f
through 664fb5cb3
.
2020-05-04 03:55:47 +10:00
adelikat
588eeeca27
remove core specific game genie menu items that now simply load the Cheat converter tool
2020-05-03 12:38:12 -05:00
adelikat
158bff1c08
fix MainForm designer
2020-05-03 12:30:04 -05:00
adelikat
ea634daa7c
Convert Tools to use NewUpdate and remove legacy methods ( #1976 )
...
* ToolForm - add General type, remove UpdateValues from IToolForm and start refactoring to NewUpdate, a lot of things are broken
* remove boilerplate Update methods from tool dialogs that do not need them
* convert more tools
* update more tools to use NewUpdate
* update more tools
* update more tools
* convert more tools to use ToolFormBase, remove UpdateBefore property
* set up fast update in some tools
* more fixes to fast update
* Ram Watch/Search - fix fast update
* rename stuff
* rename NewUpdate() to UpdateValues()
* ToolManager - remove unused Cheats convenience property
* cleanup
2020-05-03 12:22:02 -05:00
adelikat
da5ddf3217
put a virtual AskSaveChanges method in ToolFormBase, and only override it when needed, reduces a lot of boilerplate
2020-05-03 09:52:41 -05:00
zeromus
664fb5cb31
properly fix that net48 directory business
2020-05-03 00:59:09 -04:00
zeromus
399a50ab17
put an extra .. on asset copy to keep it from getting put in net48 dir
2020-05-03 00:34:27 -04:00
zeromus
0bda6ac71e
fix asset copying... mostly... but it's copied into a "net48" subdirectory. in another commit i will fix that (because we will need to undo it when we fix this to stop building multiply)
2020-05-03 00:33:03 -04:00
zeromus
d9cba0b156
fix loading emuhawk csproj
2020-05-03 00:24:03 -04:00
zeromus
ddddb309fc
Revert "Migrate EmuHawk's post-build targets to shell scripts"
...
This reverts commit 0ff90bf131
.
2020-05-03 00:03:32 -04:00
YoshiRulz
0ff90bf131
Migrate EmuHawk's post-build targets to shell scripts
...
(because MSBuild's <Copy/> doesn't want to co-operate)
fixes 2bf1dfbd0
, but the batch script is empty so build is still technically
broken on Windows
2020-05-03 13:45:30 +10:00
YoshiRulz
2bf1dfbd09
Migrate EmuHawk to new .csproj format
2020-05-03 11:52:49 +10:00
YoshiRulz
178c491a9f
Migrate DiscoHawk to new .csproj format
2020-05-03 11:52:40 +10:00
zeromus
84c4310120
support skip option on everything else
2020-05-02 21:10:53 -04:00
zeromus
f00320b90c
support skip option on bsnes
2020-05-02 21:10:52 -04:00
zeromus
4cd6e6fe8a
support skip option in waterbox
2020-05-02 21:10:51 -04:00
zeromus
6fc522072b
plumbing for that skip option. do not look at this commit, it will displease you.
2020-05-02 21:10:50 -04:00
zeromus
a59b6c29b5
revert EmuHawkOptions to pre-layoutpanel state, so that I can actually edit it without it turning into crap. probably fix a label concerning the waterbox skip stuff that I messed up in the last commit because I was so confused
2020-05-02 21:10:48 -04:00
adelikat
388e18a8f5
consistently use ToolFormBase on tools
2020-05-02 20:09:01 -05:00
YoshiRulz
1bded467b3
Replace $(SolutionDir) with $(ProjectDir) in src/
2020-05-03 11:05:26 +10:00
YoshiRulz
5a8349b5a5
Update paths in projects (fixes build)
2020-05-03 10:58:35 +10:00
YoshiRulz
3a3b22c03b
Move projects to src subdir (breaks build)
2020-05-03 10:57:38 +10:00