Commit Graph

63 Commits

Author SHA1 Message Date
adelikat 6a25679ae3 remove trailing comma in various places in Emuhawk probject 2020-03-21 16:04:08 -05:00
SuuperW c59d8130bb
DS Hawk (#1884)
* Add MelonDS.cs, support opening (but not really) .nds files.

* init MelonDS

* MelonDS: Load selected ROM.

* MelonDS: FrameAdvance and frame counter.

* MelonDS: IVideoProvider

* MelonDS: Add DLL files.

* MelonDS: IInputPollable

* MelonDS: IStatable (and add forgotten file MelonDS_InputPollable.cs)

* update libmelonDS.dll

* MelonDS: ISoundProvider

* Add NDS to Global.SystemInfo, and convert screen coords when running NDS.

* set up default NDS controller

* MelonDS: ISaveRam

* MelonDS: remove romlist.bin

* MelonDS: ISettable

* Create firmware folder if it doesn't exist on Windows; otherwise, an exception is thrown.

* Add database entries for NDS bios/firmware files.

* MelonDS: Use the bios/firmware files selected in BizHawk's "Firmwares" dialog.

* MelonDS: Re-work sync settings a bit.

* NDS's firmware file contains user settings; these are over-written by sync settings, so we shouldn't allow them to impact the hash

* MelonDS: Add (currently unused) bootToFirmware sync setting, and NDSSettings dialog.

* Update NDS firmware hash; it seems I had somehow corrupted mine.

* MelonDS: Use boot to firmware sync setting.

* MelonDS: Allow user to set some firmware user settings via the NDS settings dialog.

* MelonDS: Add singleInstance attribute to core.

* MelonDS: IMemoryDomains

* update libmelonDS.dll

* MelonDS: Set up default sync settings if none are provided.

* MelonDS: Allow user to reset settings to default.

* MelonDS: bios+firmware files are recommended

* libmelonDS.dll

* MelonDS: Don't use real time.

* MelonDS: Update to reflect new way of handling RTC in MelonDS.

* MelonDS: Notify if savestate load failed.

* update MelonDS.dll

* MelonDS: Allow user to set startup date/time in settings dialog.

* MelonDS: Create melon directory if it doesn't already exist.

* Don't include Designer's "fixes" in PR (partially reverts 56b474c00)

* Don't show a broken console window; alert user of need to restart instead.
This fixes an error related to MelonDS trying to use the broken stdout stream.

* update default NDS controls to match other updated controls

* Implement a system bus, using ARM9 read/writes.

* MelonDS: Allow BizHawk to change the contents of the frame buffer.

* update libmelonDS.dll

* fix stuff that was merged incorrectly, or was broken by merge

* update libmelonDS.dll
(includes memory leak fix)

* update libmelonDS.dll
(fixes memory leak and an occasional savestate crash)

* fix stuff that broke with the merge

* cleanups, remove stuff that is no longer needed by service interaces

* simplify DS MemoryDomains

* DS - fix order of controller buttons to be consistent with other consoles.  This probably breaks any existing movies made on this core, but those would have been experiments, right?

* NDSSettings - make min value for day and month 0, whiel those aren't "valid" values they are the default values in the core for whatever reason, better to not crash on load and not show a value that isn't actually the setting.  This can easily be reverted if the core changes to default to 1

Co-authored-by: YoshiRulz <OSSYoshiRulz@gmail.com>
Co-authored-by: adelikat <adelikat@tasvideos.org>
2020-03-21 10:53:30 -05:00
adelikat 80c36d8155 FirmwareManager - don't use Global, pass in actual dependencies 2020-03-15 16:31:37 -05:00
adelikat 348cbd18df
Remove PathManager code that had dependencies on Globals (#1881)
* move one usage of Firwmare method into Firmware config where it is better suited

* PathManager - remove unused code

* move some PathEntry specific logic out of PathManger and into PathEntryCollection extension methods

* PathManager - detangle some exe pathing logic from Global.Config usage, clarify what a completely broken method should actuall do

* move more logic from PathManager to PathEntryCollection extension method

* move absolute path creation to PathEntryCollection, lots of refactoring and simplifying of PathEntries usage

* simplify PathEntryColleciton usage more

* simplify PathEntryCollection more

* break PathEntry classes into separate files, a bit of cleanup

* move Rom path logic out of PathManager into PathEntryCollectionExtensions

* move config UseRecentForRoms and LastRomPath into PathEntries, note that this is a breaking change for previous configs, those values will revert back to default values

* move SaveRamPath logic from PathManager to PathEntryCollections

* move cheats path logic from PathManager to PathEntryCollection

* move another method out of PathManager

* move some Retro hacks to PathEntryCollections, exposes more implicit dependencies

* move savestate logic out of PathManager to PathEntryCollection

* move more logic out of PathManager

* move some savestate logic out of PathManager, move most to MainForm where it is used, detangle some implicit dependencies from SaveSlotManager

* rename method

* move more logic from PathManager to PathCollectionEntry

* movie final Global.Config.PathEntries logic out of PathManager and into PathEnties
2020-03-15 15:12:36 -05:00
adelikat 16781fa212 FirmwareManager - don't depend on Global.Config 2020-03-14 12:20:28 -05:00
adelikat d1623c32b7 Firmwares manager - depend on Global.Config less 2020-03-14 12:10:53 -05:00
adelikat dff8a536f0 address some typos 2020-02-28 13:09:05 -06:00
adelikat c7ed6015a2 use null propagation in Client.EmuHawk 2020-02-28 11:32:51 -06:00
adelikat 29cddca49a use globals a bit less 2020-02-08 09:12:45 -06:00
adelikat 626efe8caf put control extension methods into the EmuHawk names space isntead of a custom one. We want these to be found and used, and most dialogs use them 2020-02-03 12:54:32 -06:00
adelikat c2bec296e6 simplify some repeated boilerplate on the DragEnter event by consolidating it to an extension method 2020-02-03 12:42:28 -06:00
zeromus 6377d78098 firmwares open folder:
don't know what was going on here, but we can't browse to a folder without it existing.
I think the best thing to do in this case is to prompt the user if it doesnt exist and offer to create it
But we don't really do this in very many places so it isnt worth the trouble to make a nice solution for it.
Anyway this commit will make it stop CRASHING on new bizhawk installs, generally, which is an improvement
2020-01-19 18:43:54 -05:00
alyosha-tas 46d0818f09 MSXHawk: Core interface stuff 2020-01-10 15:51:56 -05:00
adelikat dc26b67446 path config - pass in config dependency 2019-12-16 19:42:42 -06:00
adelikat 3bf8029e67 FirmwaresConfig - cleanup 2019-12-16 19:08:03 -06:00
YoshiRulz 8c059aa43c
Replace helper methods with readonly bool IsUnixHost and cleanup 2019-11-04 14:30:05 +10:00
J.D. Purcell fec63fb66a Spaces -> tabs, fix mixed newlines. 2019-11-03 20:58:36 -05:00
adelikat 942d9fc75e Simplify OS checks with some helpful methods 2019-11-03 16:04:42 -06:00
J.D. Purcell 39b54f7202 Fix missing UI usings. 2019-11-02 00:38:50 -04:00
alyosha-tas f058933342 Vectrex: Fix firmware 2019-08-03 09:26:30 -04:00
YoshiRulz df232e6184
Add additional CurrentOS checks 2019-05-19 14:46:50 +10:00
Asnivor f0384b7e83 ChannelF: Extreme WIP! I promise nothing... 2019-04-16 16:10:56 +01:00
YoshiRulz e6374ef477
Use string interpolation 2019-03-19 00:06:37 +10: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
Asnivor f149413df3 FirmwaresConfig: kick checkbox over to the right 2018-09-21 18:06:26 +01:00
Asnivor 3273d37ce5 FirmwareConfigs: small fix 2018-09-21 17:45:23 +01:00
Asnivor 84eea580c2 FirmwareConfig: Added 'allow unknown import' checkbox 2018-09-21 17:44:17 +01:00
Asnivor 35afeb2b3d FirmwaresConfig: set customization file chooser now incorporates ArchiveChooser - if an insidefile is selected this is copied to the global firmwares folder 2018-09-14 09:46:39 +01:00
Asnivor a04ad91b2c FirmwaresConfig: Stop indescriminate importing (and some other things) - #314 2018-09-13 15:07:52 +01:00
Asnivor 531833c7b0 CPCHawk: Initial project outline (may or may not come to something eventually) 2018-07-03 14:53:09 +01:00
Asnivor d012472999 Initial commit. 48K spectrum only. 2017-11-23 17:26:15 +00:00
zeromus a0b2a04cd5 fix firmwareconfig categorization FIXMES 2017-07-11 21:13:36 -05:00
zeromus 44d284acd4 tooltips for main firmwares view 2017-07-11 21:05:14 -05:00
zeromus 010c9d262f firmwaresinfo tooltips 2017-07-11 21:02:24 -05:00
adelikat 078dc4ddb1 misc cleanups in remaining config files 2017-05-31 10:28:06 -05:00
adelikat ebe001b526 Cleanup FirmwareManager, and some other Emulation.Common nitpicks 2017-04-27 10:55:22 -05:00
adelikat eba11b259e HawkFile - fix exception when a file has no extension, and also simplify the logic 2016-12-06 12:21:05 -06:00
zeromus 1e928c6b17 add sha1: label to hashes in firmwares config info sub-window 2016-01-31 16:39:54 -06:00
zeromus 529ec876a2 firmwares config - escape should exit dialog 2015-10-15 19:47:38 -05:00
scrimpeh 7b25254b72 Firmware Manager - Change wording to "Close and reload ROM" instead of "Close and load ROM", add tool tip displaying ROM path. 2015-07-15 08:31:03 +02:00
scrimpeh 667e4273f3 Firmware Manager - Add option to reload ROM if ROM load has failed before 2015-07-12 21:30:26 +02:00
zeromus 283de943d7 dont fail importing firmwares when target directory doesnt exist 2015-07-11 14:06:28 -05:00
adelikat f4140de3f7 Apple II - get necessary firmware files from the firmwares system instead of a hardcoded path, added entries to the firmware database for the files I have, no idea what other files are compatible 2015-04-09 00:18:01 +00:00
goyuken f2ff432b3a helpful mouseover tooltips in firmwares config 2014-12-04 00:37:06 +00:00
adelikat d64be5ed76 SystemID is Lynx not LYNX, cuz I said so 2014-11-21 01:32:15 +00:00
zeromus a7432a1e52 firmwaremanager now tracks filesizes, and filesizes of known firmwares are used to restrict scope of scanning 2014-11-13 00:09:16 +00:00
zeromus 4d5b25600e add a GC.Collect() call to workaround a .net slow-GC problem, and fix an old bug related to firmware scans occurring several times actually every time you think it should happen once, which probably wasn't helping things 2014-11-12 00:04:08 +00:00
zeromus 5cf5894329 firmware importer now supports archives 2014-10-26 14:22:26 +00:00
zeromus 2f374d9199 add firmware import option (copies firmwares into firmware directory through toolbar or drag&drop) 2014-10-26 04:23:56 +00:00
goyuken 28a37a57da lynx mah boi https://www.youtube.com/watch?v=bNpLXo55yfw 2014-09-15 20:12:11 +00:00