Commit Graph

103 Commits

Author SHA1 Message Date
Morilli 14984aea2d Change RomDirectory to RomPath in RomAsset
for the current (only) usecase, this fixes failures when "RomAsset.Name" is not equal to the name of the rom on disk
2022-04-24 03:52:03 +02:00
Moritz Bender 339d34413f
Implement msu1 handling for bsnes115+ (#3190)
* Implement msu1 handling for bsnes115+

* RomPath->RomDirectory for clarity

* Remove unnecessary include
2022-03-28 23:52:13 +02:00
YoshiRulz 8c4ceccab9
Enable CA1825 and fix noncompliance (except in Cores)
`new int[0]` and similar
2022-03-08 15:52:40 +10:00
CasualPokePlayer 24f946681f
Emu83 (#3086)
* emu83

* builds and get rid of wtf this thing is

* multidisk bundler for ti83

* release

* link src

* also put in the commit hash why not

* Nitpicks

* update ""rom"" extensions for ti83

* don't forget to set a preferred core

Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
2022-01-29 18:23:09 -08:00
YoshiRulz 547c28ef28
Add back extra params to `RomLoader.DoLoadErrorCallback` (fixes #3054)
fixes fb6924bd8
2022-01-27 02:48:54 +10:00
CasualPokePlayer 92157d0af0 rename DGB to GBL and make all link gb cores use it; todo: rename/fix shit 2021-11-21 00:59:56 -08:00
YoshiRulz e38726db50
Unify checksum helper methods 2021-11-12 19:38:11 +10:00
YoshiRulz 4a4d8fe751
Collect sysID constants in a single class 2021-11-10 14:38:41 +10:00
YoshiRulz 24f69eb5a6
Also check PreferredPlatformsForExtensions for single-file archives
resolves #2915
2021-08-24 10:30:33 +10:00
YoshiRulz 559c8efcf1
Fix inconsistent treatment of systems' rom file extensions 2021-08-24 10:30:33 +10:00
YoshiRulz 40cf608eef
Deduplicate file extension list in RomLoader 2021-08-24 10:30:30 +10:00
YoshiRulz 517be084ab
Replace Debug.WriteLine w/ Util.DebugWriteLine
(or `Console.WriteLine` if it's in `#if DEBUG`)
bonus wtf: 2 calls in Database were to `WriteLine(string, string)` overload, not
the intended `WriteLine(string, params object[])` overload
2021-07-27 15:14:13 +10:00
feos 512ca30d7e mame: set up the hawk side of syncsettings (dip switches only) 2021-05-22 19:02:45 +03:00
nattthebear bc21f296a0 Romloader: Add `DontTryOtherCores` config setting
If set, only the first preference core (whether it be through gamedb or preferredcore or priority or whatever) will be tried, and a failure for it will immediately fail the entire thing.  This is mostly a developer feature to aid in debugging.
2021-05-16 11:57:30 -04:00
YoshiRulz fece6cf7c4
Cleanup system IDs (see desc.)
* `Game Gear` was used instead of `GGL` for linked GG multi-disk bundles and
core constructor (I assume the latter was a hack to fix loading bundles made
with the former bug in effect)
* `Arcade` was used instead of `MAME` in rom loading ("Arcade" is also assigned
to an out param in the MAME ctor but I assume that's an intentional placeholder)
* `Saturn` was used instead of `SAT` in `GameSharkDecoder.CheatDomainName`,
making it non-functional (a comment said it was probably incorrect, so I'm
assuming that if it runs something will break and putting it in #if false)
* `G7400` was only used in firmware IDs, replaced with `O2`
* `Vectrex` was only used in firmware IDs, replaced with `VEC`
* `uzem` (core name) was used instead of `UZE` for MainForm title lookup, making
it non-functional
* `DNGP` doesn't exist
2021-02-25 16:45:55 +10:00
YoshiRulz cc7e440fba
Cleanup usage of Config.PreferredPlatformsForExtensions 2021-02-23 05:37:50 +10:00
YoshiRulz 416e9ffbb3
Fix code style (import order) 2021-01-25 06:07:39 +10:00
nattthebear adca19c30a
Remove icsharp (#2590)
Since .NET 4.5, there's been a good framework alternative, and it gets lots of eyes on it.  I've heard that it's quite fast in .NET Core too.
2021-01-23 09:14:51 -05:00
zeromus c5d908cc69 HawkFile: limit attempts to dearchive to files with extension .zip, .7z, .rar. fixes #2587 2021-01-20 15:20:55 -05:00
YoshiRulz 55e066a0cc
Use a consistent format for file extensions throughout HawkFile
also cleanup `Bind*` overloads
2021-01-20 16:31:09 +10:00
YoshiRulz d2fb794340
Pass forced core through other paths in RomLoader
fixes c0b6bf61b; not sure if this matters currently (PCE-CD maybe?) but it may
become important if we add more alternate cores
2021-01-15 04:33:14 +10:00
YoshiRulz c0b6bf61b1
Pass through queued movie's Core header to RomLoader and load only it 2021-01-14 03:52:32 +10:00
nattthebear 39c0011d09 Move around some error messages
See #2561.  From the point of view of romloader, this is all pretty simple:  It asks for a particular settings type.  It should either get null back (indicating there was nothing, use defaults), or an object of that type.  Providing a completely unrelated type is baloney.  So this check here is a stupid defensive check that shouldn't be needed.  MainForm cannot be trusted.
2021-01-12 09:32:58 -05:00
nattthebear 75a655fdd8 Fix screwup in romloader xmlgame handling
This may have only affected Saturn in practice.  Whoops!  Fixes #2557.
2021-01-09 11:45:16 -05:00
adelikat e0c1fc4a4d misc cleanups in Client.Common 2020-12-04 15:39:52 -06:00
nattthebear 6ee62023a2
Re-add M3U capability (#2390)
Only supports optical disks.
2020-10-02 00:32:56 -04:00
nattthebear 7f4d29d0ff Revert "resume m3u support by turning the m3u to an xml game and then loading that. fixes #2378"
This reverts commit 8da5525819.
2020-10-01 08:17:30 -04:00
zeromus 8da5525819 resume m3u support by turning the m3u to an xml game and then loading that. fixes #2378 2020-10-01 03:40:19 -04:00
nattthebear bbc9054517
rohmloader tweak (#2330)
When a missingfirmwareexception is encountered, do not fallback.  It's presumed that these cases are fixable by the end user.

Absolutely does not in any way fix #2327 - the user was emphatic that they had the BIOS file, so they must have hit some other situation.
2020-08-24 15:52:49 -04:00
nattthebear fb6924bd83 improve error message reporting in romloader
fixes #2320
2020-08-22 15:24:17 -04:00
nattthebear 5a0b49726e Revert "hack rom loader to keep doing the bullshit we've been doing for 8 years now, where Game.System == "GBC" results in an Emulator with a SystemID. Don't revert without volunteering to fix tasvideos"
This reverts commit 31bf9b9147.
2020-08-09 16:31:49 -04:00
adelikat 31bf9b9147 hack rom loader to keep doing the bullshit we've been doing for 8 years now, where Game.System == "GBC" results in an Emulator with a SystemID. Don't revert without volunteering to fix tasvideos 2020-08-09 15:29:41 -05:00
adelikat c844af3bbb RomLoader - remove an unused parameter in LoadOther 2020-08-09 15:15:26 -05:00
adelikat 729934aa42 unknown PCE-CD games should have PCE as the Game.System, to be consistent with the discs that can be properly identified 2020-08-09 15:11:35 -05:00
adelikat 0818e40149 misc cleanups in client.common 2020-08-07 16:19:54 -05:00
nattthebear 78bf2285fc
Waterbox: Add pseudo-thread implementation and experimental DobieStation (PS2) core (#2263)
Waterbox supports threads now, but they're not real threads on the host side because that's complicated and can be nondeterministic. Instead, everything is scheduled to share one host thread. This means that scheduling is actually cooperative and certain patterns of spinlocks and other nonsense can fail to work at all, but "regular" code probably will.

With this, add DobieStation PS2 core. This core was selected because it has threads and is otherwise simple to port; easy to build and a good core/frontend separation. It's not a wonderful core however, with low speed (made abysmally lower by our lack of real threads) and low compatibility, so it remains a curiosity for now.
2020-08-01 07:03:29 -04:00
nattthebear 59be09b515 Make picodrive work again
All picodrive games were broken by 316a9d1568
2020-07-13 06:16:16 -04:00
adelikat 316a9d1568 gamedb - replace pico with picodrive, remove core name look up in romloader in favor of this pico change combined with a case insensitive compare 2020-07-12 16:10:01 -05:00
adelikat c4bcb2451a remove now unused class in RomLoader.cs 2020-07-12 13:03:32 -05:00
adelikat 05709628e8 remove a jillion unused usings in RomLoader.cs 2020-07-12 13:02:12 -05:00
nattthebear 021b1639c2 Remove special code for UnsupportedGameException in RomLoader
This shouldn't be needed anymore
2020-07-12 13:48:46 -04:00
nattthebear 78bbc75f33 multi rom loading by xml all uses core inventory now 2020-07-12 13:45:33 -04:00
nattthebear 8d56b65734 Convert all single-CD loading to use CoreInventory 2020-07-12 13:21:10 -04:00
nattthebear ab07e67a07 PCEHawk: Use CoreLoadParameters for cd mode 2020-07-12 13:06:15 -04:00
nattthebear 744a9a97d0 Remove custom loader code for ChannelF 2020-07-12 12:54:36 -04:00
nattthebear 5c5ffed5ff Next piece of the puzzle
This probably breaks something.  I am sorry, grab me and I'll fix it
2020-07-12 12:52:27 -04:00
nattthebear 4ad89667d6 This will get simpler I promise 2020-07-12 11:37:06 -04:00
nattthebear f41a70ef32 swish swish 2020-07-12 09:06:20 -04:00
nattthebear 9072614dfb romloader cleanup 2020-07-12 08:09:50 -04:00
nattthebear 80793836d3 Use CoreLoadParameters on dual gambatte 2020-07-12 07:28:06 -04:00