Commit Graph

3744 Commits

Author SHA1 Message Date
adelikat 943789c543 move Get/SetCputRegisters logic from Vectrex to MC6809 2020-02-18 16:18:15 -06:00
adelikat 0b388d669d PCE - implement IDebuggable.SetCpuRegister, and add flags to IDebuggable.GetCpuFlagsAndRegisters(), move logic to HuC6280 2020-02-18 15:58:39 -06:00
adelikat ae872d5c4f move Get/Set Register logic from Intellivision to CP1610 2020-02-18 15:45:49 -06:00
adelikat 8e261a7ddb move get/set cpu registers logic from O2Hawk to Intel8048 2020-02-18 15:40:57 -06:00
adelikat cdcc1eabde use inline out variables in Emulation.Cores 2020-02-18 15:10:29 -06:00
adelikat 4e03e14eea GBHawk - implement Get/SetCpuFlagsAndRegisters 2020-02-18 14:54:59 -06:00
adelikat a751aab744 GBLink 1,3,4 -> Implement Get/SetCpuFlagsAndRegisters, underlying GBHawk doesn't yet have it though so this technically does nothing 2020-02-18 14:08:23 -06:00
adelikat 8fbd375fd5 delete more ReadMe.txt files that just say TODO 2020-02-18 13:59:21 -06:00
adelikat 734dd9297d cleanup GBHawkLink4x 2020-02-18 13:56:44 -06:00
adelikat 721b150f78 cleanup GBHawkLink 2020-02-18 13:48:23 -06:00
adelikat 9418a57b54 cleanup GBHawkLink3x 2020-02-18 13:40:00 -06:00
adelikat 176b846f3b delete not so useful subneshawk ReadMe.txt 2020-02-18 13:23:38 -06:00
adelikat dedd618db4 subneshawk - delete a bunch of code by using the underlying core for services, cleanup, and implement some services that were missing 2020-02-18 13:19:17 -06:00
YoshiRulz 3afcf416e8
Follow attribute class best practices, cleanup docs on attributes 2020-02-19 03:54:50 +10:00
adelikat 0ff2539da7 subneshawk - support DatachBarcode service 2020-02-18 11:52:24 -06:00
adelikat 09f90cc0a2 subneshawk - implement IDIsassemb 2020-02-18 11:46:34 -06:00
adelikat 3a7977413c subnheshawk - implement IBoardInfo 2020-02-18 11:42:41 -06:00
adelikat 3bf8752ab3 delete unused ElfRunner and ElfSharp dependency since we don't expect to use it for waterbox going forward, if we ever need to for some reason, we can ressurect it from this commit 2020-02-18 11:29:57 -06:00
adelikat 54ba1e12eb set get only properties in Emulation.Cores, and a few other simplfiications 2020-02-18 11:11:59 -06:00
adelikat 2ccf03fd44 use property initializers in some cores and some constructor cleanups 2020-02-18 10:54:39 -06:00
adelikat 665b331797 simplify AmstradCPC constructor and related code 2020-02-18 10:42:14 -06:00
James Groom 46a4d8ffa9
Retargetting non-executable projects to .NET Standard (#1801)
* Retarget BizHawk.Emulation.* to .NET Standard 2.0

* Retarget BizHawk.Bizware.BizwareGL to .NET Standard 2.0

In practice this mostly involves moving classes to BizHawk.Client.EmuHawk.
2020-02-18 10:31:49 -06:00
adelikat d3c048c13c simplify atari 7800 mapper code 2020-02-18 07:23:21 -06:00
adelikat 48c9ada3e7 some misc cleanups in atari 2600 mappers 2020-02-18 07:23:21 -06:00
adelikat 606c3bf1c2
use more advanced language features in Emulation.Cores (#1852)
* Use expression bodies in Emulation.Cores, and a few other misc cleanups

* remove unused usings in Emulation.Common

* cleanups in Tables_Direct.cs

* some cleanups in nes boards - redundant code

* remove some redundant array initializers in Emulation.Cores

* cleanup AmstradCPC.Controllers

* use object initializers in a lot of places

* nes mappers - remove disch's notes comments in favor of the nesdev wiki link

* cleanup CdtConverter.cs, mostly use of object initializers

* remove redundant .ToString() calls in Emulation.Cores

* using var in Emulation.Cores

* AmstradCPC/ZXSpectrum - simplify some linq, tabs instead of spaces, a few other misc cleanups

* Use null-propagation in Emulation.Cores
2020-02-17 16:54:51 -06:00
alyosha-tas dd2b3509e5 O2Hawk: fix some colors 2020-02-16 21:55:21 -05:00
alyosha-tas b3fac6ba12 O2Hawk: fix color output 2020-02-16 21:04:28 -05:00
adelikat aa5cd2165b and oops 2020-02-16 18:07:12 -06:00
adelikat fe3b55f953 uh, what happened to this code in the merge? 2020-02-16 18:06:17 -06:00
adelikat 27352a6f8e add Get/SetCpuFlagsAndRegisters to Z80, and remove all the boilerplate from related cores 2020-02-16 17:55:40 -06:00
adelikat 969642b6c7 add Get/SetCpuFlagsAndRegisters to MOS6502X, and have cores point to that, instead of the same boilerplate in each core 2020-02-16 17:44:52 -06:00
adelikat 384f514445 misc cleanups in ZXSpectrum class files 2020-02-16 16:21:07 -06:00
adelikat b03b6eb9de convert spaces to tabs in some ZXSpectrum files 2020-02-16 16:10:26 -06:00
alyosha-tas 25d19cdb81 O2Hawk: sprite fix 2020-02-16 16:42:31 -05:00
adelikat ef4c2119ba Odyssey2 - duplicate audio channel 2020-02-16 13:52:47 -06:00
adelikat d1266aa82d fix coleco and oddessy2 text states 2020-02-16 13:41:10 -06:00
adelikat 8a5c3f443b subneshawk - opt out of text states 2020-02-16 13:40:43 -06:00
adelikat fb37ebc71e fix ti-83 savestates 2020-02-16 13:33:47 -06:00
adelikat d72dabd732 fix vectrex text states 2020-02-16 13:32:26 -06:00
adelikat c29136cacb fix intellivision text states - another duplicate value saved 2020-02-16 13:30:17 -06:00
adelikat 77598ce2b2 GBHawkLink cores - opt out of text states 2020-02-16 13:25:44 -06:00
adelikat da8199160d GGHawkLink - opt out of custom text states 2020-02-16 13:21:28 -06:00
adelikat 06d92f9824 if sms text states 2020-02-16 13:15:59 -06:00
adelikat 04a185101a fix gbhawk text states, had to leave duplicate data just with a different key name, in order to keep backwards compatibiliy with old binary states 2020-02-16 12:55:32 -06:00
adelikat aa6654cf9d fix a7800hawk text savestates 2020-02-16 12:51:55 -06:00
adelikat 027dc01c8b
create StateSerializer as a base implementation of IStatable (#1850)
* create StateSerializer, an ITextStatable implementation using the Serializer class, and wire it up to the TI83 core

* wire StateSerializer to A2600 core

* wire up StateSerializer to AmstradCPC, C64, and ZXS

* wire up StateSerializer to MSX, A27800, and Coleco

* wire up state serializer to ChannelF, Vectrex, Intellivision

* fix GambatteLink to implement ITextStatable, implement TextSerializer in O2

* StateSerializer - wire up a loadstate callback and implement StateSerializer for NesHawk, a bit of rework to subNesHawk as a result

* fix subneshawk text savestates

* StateSerializer - implement byte[] buffer storing (optionally), wire up to PCE

* implement StateSerializer to SMS, tweak GGLink accordingly

* implement StateSerializer in GBHawk, fix link cores accordingly

* StateSerializer - use Serializer static methods to create serializers
2020-02-16 12:05:57 -06:00
alyosha-tas b8614dc3d4 O2Hawk: Misc bug fixes 2020-02-16 10:51:07 -05:00
alyosha-tas eb03f28e99 O2Hawk: fix noise bit 2020-02-15 21:38:57 -05:00
alyosha-tas 54542ffd6d O2Hawk: fix collision detection 2020-02-15 18:06:54 -05:00
adelikat 656f2b814e Move IEmulator extensions to the Emulation.Common namespace, the intent is that these are used and serve as built in functionality, so it's overly tedious to when most situations require both Common and an additional extensions namespace 2020-02-15 12:33:15 -06:00
adelikat 4b7a7dd293
Make Binary states default and Textstates opt-in for cores (#1848)
* Rewind & State config - remove the default option

* remove the savestate type of default, not that this is a breaking config change for anyone that had specifically set savestates to text

* remove BinaryStatesPreferred from IStatable and use config setting when starting movies from "Now" in record movie dialog

* remove BinaryStatesPreferred from cores

* make text savestates an extension method off of IStatable and an inteface ITextStatable it uses if the core implements it. This will allow cores to opt in to text states if desired

* make cores with actual text savestate impleemntations get ITextStatable, remove text state logic from cores that just have a binary as as text implementation
2020-02-15 10:22:26 -06:00
adelikat 8d662fcee3 more nitpicks in nes savestate code 2020-02-14 10:20:27 -06:00
adelikat e57be44fd0 nes savestates - dispose of IDisposables, simplify a bit 2020-02-14 10:12:52 -06:00
adelikat b3a80965af
Virtu cleanup (#1846)
* virtu - tabs instead of spaces

* virtu - use nooget for Newtonsoft.Json

* virtu - target .net 4.8

* resharper - target C# 8

* virtu - remove unused usings

* virtu - remove some unused code

* virtu - cleanups

* virtu - trace logging - add flags to trace logs

* virtu - cleanups

* virtu - misc cleanups

* virtu - make some stuff internal and simplify the api some

* virtu - clock down more things and simplify api more

* virtu - lock api down more

* virtu- simplify, breaks older savestates however

* virtu - simplify more

* virtu - cleanup

* virtu- more cleanup

* virtu - reorg some files

* virtu - more cleanup

* virtu - more reorg

* virtu - more reorg

* virtu - make more things internal instead of public

* virtu - make more things internal

* virtu - update dll

* cleanup

* virtu - reorg

* virtu - remove unitialize from machine component since nothing was utilizing it

* virtu - simplify api

* virtu - cleanup

* virtu - cleanup and lock things down

* virtu - lock down and cleanup

* virtu - cleanup

* virtu - simplify - breaks savestates

* virtu - make PeripheralCard an interface with default implementation, breaks savestates

* virtu - minimize use of machine component

* virtu - cleanup

* virtu - start minimizing dependencies

* virtu - cleanup

* virtu - simplify

* apple II - simplify

* virtu - move some biz logic into bizhawk

* virtu - git rid of MachineComponent

* virtu - delete no longer needed code

* virtu - reorg

* move serialization logic out of virtu and into bizhawk, this was our shenanigans

* virtu - some small cleanups

* virtu - simplify

* virtu - dependency minimization

* virtu - minimize dependencies

* minimize dependencies

* virtu - move drivelight property into component that controls it

* virtu - minimize dependencies

* virtu - minimize depenencies

* move some machine logic to memory class

* move some initialize logic into constructor

* move initialize logic to constructor

* move logic from Initialize to constructor

* move initialize logic to constructor, simplify api to bizhawk

* dll

* virtu - movie some logic back into bizhawk

* virtu - move Lagged property from machine to memory component

* move more biz logic from virtu to biz

* virtu - slight reorg

* virtu - move some reset logic to constructor

* virtu - move some stuff around

* virtu - declare dependencies in memory class, no more dependencies on the machine class

* move slots from machine to memory class

* move some properties from machine to memory

* move more things into the memory class

* remove Machine.cs from virtu and make an equivalent container in bizhawk

* virtu - cleanup

* interface the cassette class and create a biz empty cassette "implementation"

* move some more dummy logic from virtu to biz and put an interface in virtu

* virtu - use an interface for a dependency

* virtu - interface more things

* virtu - more interfacing of things

* virtu - interface more things

* apple II/virtu - some reorg

* virtu - cleanup

* virtu - remove unused usages of disk name in disk classes

* virtu- cleanup and simplify api

* virtu - remove unused BootDrive property

* virtu - cleanup and interface more

* cleanup

* update virtu dll
2020-02-14 09:54:35 -06:00
adelikat d7f97b1539 actually delete things instead of removing them from the project 2020-02-08 13:09:27 -06:00
adelikat 9d4ef3a3af cleanup WonderSwan.ISettable 2020-02-08 11:23:58 -06:00
adelikat 01640e8c0b cleanup CoreInventory.cs 2020-02-08 10:07:54 -06:00
alyosha-tas 9d0f7568d4 A2600 finish keyboard controller 2020-02-07 16:18:50 -05:00
alyosha-tas d9243fe15d MSX: fix 2020-02-06 06:56:29 -05:00
alyosha-tas 6d93fe03f5 MSXHawk: more testing options 2020-02-05 07:55:01 -05:00
alyosha-tas 71d68e4bea MSX: use JP bios for now 2020-02-03 17:32:32 -05:00
alyosha-tas 7b55157e10 MSX: add some starting firmware options 2020-02-03 17:28:45 -05:00
feos 340fe48f3a finish mgba tracer 2020-02-03 22:23:35 +03:00
feos b1be2f5937 bump mgbahawk version 2020-02-03 12:55:19 +03:00
feos 335a55306f mGBA trace logging 2020-02-03 12:50:41 +03:00
feos d6a74e4493 mame: test 2020-02-02 18:34:16 +03:00
alyosha-tas 8cb19ede1c MSXHawk: controller selection 2020-01-30 20:18:24 -05:00
alyosha-tas ca4ff674ec Vectrex: duplicate audio channel 2020-01-29 16:32:08 -05:00
YoshiRulz 2c74b1a693
Properly fix assembly loading issue, retarget BizHawk.Common again
temp fix was 9ffef2531
2020-01-29 00:23:10 +10:00
alyosha-tas 0c46a6908f MSXHawk: keyboard 2020-01-28 07:50:29 -05:00
adelikat 3287a0c465 account for new name of PSX controller in controller config, delete standard controller image since we no longer have variable name controllers anyway, fixes #1814 2020-01-26 13:27:57 -06:00
adelikat e6e1962b54
Convert SMS settings to use GenericCoreConfig (#1816)
* refactor Sms settings including naming conventions and fix a typo, breaks configs with SMS settings already saved

* convert SMS controller type setting to an enum

* convert SMS Region setting to an enum

* Move SMS display type setting to an enum

* convert sms settings to properties

* SMS - wire up generic core config to a settings menu item

* remove some SMS menu items that are redundant to generic settings config

* remove more SMS menu items that are now redundant to generic core config

* remove more redundant SMS settinsg including SMSGraphicsConfig dialog, add descriptions and display names to SMS settings objects
2020-01-26 12:56:54 -06:00
alyosha-tas 551a7e2893 MSXHawk: cleanup and bug fixes 2020-01-25 19:10:48 -05:00
YoshiRulz 24e6cc14f0
Enable SA1206 and fix noncompliance
"Declaration keywords should follow order"
2020-01-25 19:37:28 +10:00
YoshiRulz 19b1578df9
Enable SA1200 and fix noncompliance
"Using directives should be placed correctly"
i.e. before and outside namespaces as per .stylecop.json
2020-01-25 19:36:49 +10:00
YoshiRulz b2a3477f52
Enable SA1123 and fix noncompliance
"Do not place regions within elements"
2020-01-25 18:06:56 +10:00
YoshiRulz d9d6ed76f4
Enable SA1115 and fix noncompliance
"Parameter should follow comma"
i.e. no newlines in param list
2020-01-25 18:06:54 +10:00
YoshiRulz b1e02fbdce
Enable SA1106 and fix noncompliance
"Code should not contain empty statements"
i.e. don't put a semicolon there
2020-01-25 18:06:34 +10:00
YoshiRulz 6f3f01125c
Enable SA1504 and fix noncompliance
"All accessors should be single-line or multi-line"
i.e. no block form on one line
2020-01-25 14:56:56 +10:00
alyosha-tas ca73e769ed MSXHawk: joystick controls 2020-01-24 22:30:48 -05:00
alyosha-tas 263fdfebc3 MSXHawk: audio 2020-01-24 19:47:16 -05:00
YoshiRulz bfde89b9f3
Enable SA1139 and fix noncompliance
"Use literal suffix notation instead of casting"
2020-01-25 07:55:48 +10:00
alyosha-tas 5152e47b5e MSXHawk:Start loading roms 2020-01-23 20:09:45 -05:00
YoshiRulz 4ed402fc59
Cleanup some more files 2020-01-24 09:37:15 +10:00
YoshiRulz 3ae58fd9d6
Use SolutionDir to make relative paths absolute
No need for warning of relative paths in filename anymore
2020-01-24 04:59:27 +10:00
alyosha-tas 7da04e2bf2 MSXHawk: allocate memory because pointers may be bad due to garbage collection somehow 2020-01-23 09:01:44 -05:00
YoshiRulz ff2efca658
Cleanup Util 2020-01-23 14:54:34 +10:00
YoshiRulz c7801b8ce2
Move BizHawk.Common.BizInvoke namespace to separate project 2020-01-23 14:54:23 +10:00
alyosha-tas c171505d64 MSXHawk: start converting to actual msx machine 2020-01-22 19:26:08 -05:00
YoshiRulz df5a382b76
Move disc hashing to PSX class, remove unused project dependency 2020-01-22 05:56:59 +10:00
alyosha-tas 679efd91c4 MSXHawk: minor cleanup 2020-01-20 19:50:32 -05:00
YoshiRulz b1ef7bcbbb
Retarget .NET Framework from 4.6.1 to 4.8 2020-01-21 04:42:09 +10:00
YoshiRulz ebfccf51de
Add DependentUpon and SubType modifiers to globbed files 2020-01-20 10:29:27 +10:00
zeromus c2c526e84b CDL: fix bsnes SGB cdl totally not working (fixes #1344) 2020-01-19 18:43:54 -05:00
alyosha-tas 0dbd6e7481 MSHawk: inputs 2020-01-19 09:08:20 -05:00
alyosha-tas 59a22415d2 MSXHawk: working savestates 2020-01-19 08:39:21 -05:00
alyosha-tas eaf8e52746 MSXHawk: Audio 2020-01-18 17:04:55 -05:00
YoshiRulz e435fb807b
Migrate to "new csproj", remove unnecessary tags/info, and dedupe
Didn't want to mess with resource generation so the execuable projects didn't
get migrated, just cleaned up
2020-01-19 01:43:39 +10:00
alyosha-tas c27bea3272 MSXHawk: Finish trace logger and add some memory domains 2020-01-16 20:08:50 -05:00
alyosha-tas 6637510379 MSXHawk: More trace logger and bug fixes 2020-01-16 18:53:11 -05:00
alyosha-tas ce7d6cdcf5 MSXHawk: Tracer Support 2020-01-15 20:47:50 -05:00
alyosha-tas 1e195243be MSXHawk: frameadvance, no video or sound yet 2020-01-15 14:25:24 -05:00
alyosha-tas 3f59a704a2 GBHawk: correct frame rate to 59.72 (same as gambatte) 2020-01-14 18:32:26 -05:00
alyosha-tas 5521f0cf19 MSXHawk: properly load roms and memory map 2020-01-13 22:08:36 -05:00
alyosha-tas 8fed99456a GBlink: fix some 4x bugs and route CGBGBA to cores 2020-01-13 16:55:07 -05:00
alyosha-tas 2c019794f5 GBHawk: remove DIV offset as a sync setting, leave it always at 8. 2020-01-13 09:37:54 -05:00
alyosha-tas 6ec1ce4d45 A2600: fix pitfall 2, needs a second look at some point though 2020-01-13 09:16:33 -05:00
YoshiRulz a8170ca183
Fix mismatching namespaces 2020-01-13 07:19:06 +10:00
YoshiRulz c3a359a58c
Rename PSX front panel name in def (from #971) 2020-01-13 00:22:11 +10:00
YoshiRulz c38fb09d3c
Fix typos in strings and comments (from #971) 2020-01-13 00:22:01 +10:00
adelikat 6cb2ac635d GGHawkLink - fix bug in Saveram creation 2020-01-11 13:19:51 -06:00
adelikat f83261c116 misc cleanups in emulator core service logic 2020-01-11 13:19:51 -06:00
alyosha-tas 46d0818f09 MSXHawk: Core interface stuff 2020-01-10 15:51:56 -05:00
alyosha-tas 2fa22c2505 MSXHawk: Give DLL a C interface, start making core constructor 2020-01-09 19:37:59 -05:00
alyosha-tas 3e0fd4a2d9 MSXHawk: Blank core 2020-01-09 17:21:58 -05:00
alyosha-tas 6bd0fbccef NESHawk: scanline timing and audio fix 2020-01-07 18:28:12 -05:00
YoshiRulz 4a5ece2076
Use ranges in MemoryBlock* 2020-01-03 23:35:07 +10:00
alyosha-tas f76db6202a O2Hawk: a few more bug fixes 2020-01-02 20:13:11 -05:00
alyosha-tas f6695ad87c Atari 2600: fix audio in commando raid 2020-01-02 19:28:28 -05:00
alyosha-tas dd419e6768 Atari 2600: fix haunted house, read from invalid TIA address and expected open bus 2020-01-02 17:59:24 -05:00
YoshiRulz e7d0fb8299
Refactor/genericise MutableIntRange, add immmutables, add more methods
call now and I'll throw in not one but two float equality extensions for free
2020-01-03 03:32:51 +10:00
alyosha-tas edefd123d5 O2Hawk: DAA work, might still be wrongfor some cases. 2019-12-31 21:46:59 -05:00
alyosha-tas 8548859a67 Atari 2600: start work on keyboard controller (incomplete) 2019-12-31 18:37:10 -05:00
alyosha-tas 5fcc13f5ed Vectrex: fix analog controller 2019-12-30 17:59:19 -05:00
alyosha-tas a66530cd3c GBHawkLink: allow only one screen to be displayed 2019-12-29 18:22:57 -05:00
Asnivor 91008590cf ZXHawk: Implement more faithful AY port decoding (fixes #1767) 2019-12-29 22:23:20 +00:00
alyosha-tas 2d8d8cc1cd O2Hawk: debuggable stuff 2019-12-29 09:06:39 -05:00
feos cf666228b3 comments 2019-12-29 00:21:27 +03:00
feos 8599946bb4 #region 2019-12-29 00:17:18 +03:00
feos 3a464eed60 mame_lua_get_bool() doesn't work with gcc for whatever reason... 2019-12-29 00:13:31 +03:00
feos 4ef8c8e34c mame: ram domains 2019-12-28 15:21:06 +03:00
alyosha-tas 6f53ad1af7 Fix settings initialization for several other cores 2019-12-27 17:45:37 -05:00
alyosha-tas cef44657e2 O2Hawk:fix settings ini 2019-12-27 17:27:02 -05:00
alyosha-tas 49fc6839e6 O2Hawk: collision bug fix 2019-12-27 16:47:17 -05:00
alyosha-tas 9015d36862 O2Hawk: cpu cleanup and display work 2019-12-27 16:18:26 -05:00
YoshiRulz 50373ac1ad Move conditional PackageReferences to conditional .targets import
Fixes build system bug introduced by c31050feb
2019-12-27 16:35:47 +10:00
alyosha-tas 0caf12f25e O2Hawk: more display work 2019-12-26 20:17:07 -05:00
YoshiRulz c31050feb6
Migrate from packages.config to PackageReference 2019-12-26 16:54:33 +10:00
feos 1dc33e074f mame cleanup 2019-12-23 20:18:42 +03:00
feos a0dd2e1314 mame: better load error text 2019-12-23 19:41:20 +03:00
feos 7f4cb4fe51 try a string instead 2019-12-23 19:28:51 +03:00
feos d375b1c2e0 mame system bus 2019-12-22 23:51:10 +03:00
YoshiRulz 264b27475e
Fix default referring to non-nullable type 2019-12-23 04:12:02 +10:00
James Groom 78fcde9480
Merge branch 'master' into winhacksbgone 2019-12-22 17:01:10 +00:00
alyosha-tas cba08040f7 O2Hawk: color and display work 2019-12-22 11:18:38 -05:00
alyosha-tas d0e6441f7b O2Hawk: more bug fixes to timing and interrupts 2019-12-21 20:59:09 -05:00
alyosha-tas b5090b5a63 O2Hawk: bug fixes
and a2600 db update
2019-12-21 12:49:28 -05:00
YoshiRulz 7cd29c0f54
Finish moving Win32 imports to BizHawk.Common, organise, and cleanup 2019-12-21 18:33:11 +10:00
YoshiRulz 580aa2eaf9
Refactoring and cleanup of dynamic lib loading
Also fixed error reporting in WindowsLLManager, and fixed bug in
MednaDisc.CheckLibrary
2019-12-21 18:22:58 +10:00
YoshiRulz 7ea8fb185a
Congregate, organise, and cleanup some Win32 imports and their usages 2019-12-21 18:21:51 +10:00
alyosha-tas 6e699d576a O2Hawk: more bug fixes 2019-12-17 18:58:20 -05:00
alyosha-tas 4619e7a862 O2Hawk: cleanup and bug fixes 2019-12-17 17:40:57 -05:00
alyosha-tas c6c5217c97 O2Hawk: initial functionality, also remove O2EM 2019-12-17 12:09:58 -05:00
alyosha-tas 89c87b0581 O2Hawk: More display work 2019-12-16 11:50:00 -05:00
adelikat e84fd17784 support subneshawk for VS menu items, pass dependencies into VSSettings 2019-12-15 16:55:40 -06:00
adelikat 8cc02b8956 NesSyncSettingsForm - pass dependencies in and support SubNesHawk 2019-12-15 16:47:48 -06:00
adelikat 71aaf349b5 Fix GPGX one off hack to fix trace logger, and instead do a less bad hack in CallbackBasedTraceBuffer 2019-12-15 12:13:10 -06:00
adelikat a5d7c98daf some gpgx code cleanups 2019-12-15 11:50:21 -06:00
alyosha-tas d3c04bcd4e O2Hawk: Keyboard support 2019-12-15 09:24:32 -05:00
alyosha-tas ef046d60c8 O2Hawk: Bug Fixes, controller support 2019-12-14 11:46:45 -05:00
adelikat a84213562f vandal cleanups 2019-12-14 18:50:11 +03:00
feos dfa73eceef mame syncsettings 2019-12-14 18:50:11 +03:00
alyosha-tas bd7233f2cd O2Hawk: start displaying stuff and making sound 2019-12-13 20:43:33 -05:00
YoshiRulz 185337d1c5 Replace assembly references with NuGet packages where possible 2019-12-12 03:56:46 +00:00
alyosha-tas 804bde9aa0 O2Hawk: Start displaying stuff, and bug fixes 2019-12-10 13:52:33 -05:00
alyosha-tas 8e139b4b5b O2Hawk: Get interrupts working 2019-12-09 16:45:36 -05:00
adelikat 85be6af3d3 Convert spaces to tabs in ZX Spectrum and AmstradCPC cores 2019-12-06 17:47:59 -06:00
adelikat fef746dffa properly dispose of IDisposables in core savestate code, and a few other places 2019-12-06 17:33:17 -06:00
feos b5db6a7df6 mame
- put system and game names to emuhawk caption
- fix loading from recent menu
- temp fix for audio drift
2019-12-06 21:34:20 +03:00
James Groom fcc0bc19a4
Change build config to support the Core build system (for #1415)
squashed PR #1702
2019-12-03 16:58:33 +00:00
alyosha-tas ecc9899f92 O2Hawk: begin ppu work 2019-11-30 09:28:53 -05:00
feos 5ca08b6c29
Camhack support (#1725)
for the camhack to work we have to save a state, hack memory, advance twice to see the changes, then load the state to prevent desync. since we can omit the framebuffer in savestates, loading them can happen without updating the screen, so the hacked camera remains visible.

advancing 2 frames automatically is done like tastudio does it when it seeks to a frame, only from lua now.

and the most questionable part is "invisible emulation", which is how Gens calls this IIRC, when everything that can distract or slow us down is skipped: sound, video, tools updates.

new lua functions:
- client.invisibleemulation()
- client.seekframe()

* for a test, mGBA core uses fake video and audio buffers and renders to them when we want to "skip" rendering. proper setup would involve actually skipping rendering those inside the core.
* allow disabling video and audio updates for gpgx too (proper approach, no fake buffers involved)
* add the script for Sonic Advance
2019-11-23 12:27:14 +03:00
alyosha-tas 2fbf3c3b19 O2Hawk: system management work 2019-11-18 22:17:29 -05:00
alyosha-tas 8b2150dbd3 O2Hawk; Start cleaning up bugs 2019-11-18 18:36:51 -05:00
alyosha-tas 61038a13ae O2Hawk: Expose Core and start running code 2019-11-18 17:33:55 -05:00
alyosha-tas 8b9968da60 O2Hawk: more groundwork 2019-11-17 22:29:17 -05:00
adelikat c854ea90b9 remove some obsolete BufferExtensions, and unused ones 2019-11-16 16:55:28 -06:00
adelikat eb1d87933b Fix Nintento (breaking config change but we've already thoroughly broken compatibility since last release), partially addresses #971 2019-11-16 12:42:18 -06:00
adelikat 641c3e9f82 convert .smv importer to new style, also convert to bsnes instead of snes9x 2019-11-12 14:59:07 -06:00
alyosha-tas 138a2bcef5 O2Hawk: Finish disasm, start execution 2019-11-11 22:19:41 -05:00
alyosha-tas c427d280ba O2Hawk: Start disassembly 2019-11-10 20:22:38 -05:00
alyosha-tas 67d4bea0d9 O2Hawk: more cpu work 2019-11-09 10:10:35 -05:00
alyosha-tas aced228b43 O2Hawk: more CPU work 2019-11-08 10:44:00 -05:00
alyosha-tas 558171d949 GBHawk: Fix a regression 2019-11-04 20:37:38 -05:00
alyosha-tas bc45386467 GBHawk: fix spirou scrolling 2019-11-04 15:32:22 -05: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
alyosha-tas 2750a420ef A2600: audio bug fix (Space Jockey) 2019-11-03 20:21:25 -05:00
J.D. Purcell 6eb44acd4f Fix noise from last merge. 2019-11-03 18:04:31 -05:00
adelikat b9ade1a555 Merge branch 'master' into MoreUnixMonoCompatWork 2019-11-03 12:55:53 -06:00
alyosha-tas 0de16bc8b9 A2600: journey escape fixes #1614 2019-11-03 07:41:22 -05:00
adelikat 6c7653e158 Merge branch 'master' into MoreUnixMonoCompatWork
This doesn't compile because of Input.cs, didn't know what to do. Also search for Merge TODO for some commenting things that probably need to be deleted
# Conflicts:
#	BizHawk.Client.EmuHawk/BizHawk.Client.EmuHawk.csproj
#	BizHawk.Client.EmuHawk/CustomControls/InputRoll.Drawing.cs
#	BizHawk.Client.EmuHawk/CustomControls/InputRoll/InputRoll.cs
#	BizHawk.Client.EmuHawk/Program.cs
#	BizHawk.Client.EmuHawk/tools/Lua/LuaConsole.cs
#	BizHawk.Client.EmuHawk/tools/TAStudio/TAStudio.cs
#	BizHawk.Client.EmuHawk/tools/ToolHelpers.cs
#	BizHawk.Client.EmuHawk/tools/ToolManager.cs
#	BizHawk.Client.EmuHawk/tools/TraceLogger.Designer.cs
#	BizHawk.Client.EmuHawk/tools/TraceLogger.cs
#	BizHawk.Client.EmuHawk/tools/Watch/RamSearch.Designer.cs
#	BizHawk.Client.EmuHawk/tools/Watch/RamSearch.cs
#	BizHawk.Common/BizInvoke/DynamicLibraryImportResolver.cs
2019-10-31 17:01:19 -05:00
alyosha-tas d6f46104dd O2hawk: internal graphics table 2019-10-31 13:29:18 -04:00
alyosha-tas 520ba97caa O2Hawk start 2019-10-31 09:43:25 -04:00
YoshiRulz f8379d9fd4
Bump ReSharper analysis to C# 8.0 2019-10-31 03:30:00 +10:00
feos 0247a8f1a8
mame core wip (#1705)
* add MAME to OpenAdvanced
* make mame launch games
limited to arcades that only need rom name. other devices require machine name and rom name, and won't run. nor they are meant to be supported anyway: we have enough emulators that do the job better for particular devices.
dunno if direct disk access will be avoidable, there are quite some files it might want to load other than the rom (parent rom, bios, artwork). trapping all of these might be a future task.
it is also known that mame can load "romname.zip" file just as well as "romname" folder, which would represent an unarchived zip. I make use of it to send it zip name with extension. it's easy, and we're not obliged to recognize mere folder paths in the mame-advanced-loader logic.
* ability to run lua code inside mame
2019-10-29 18:37:27 +03:00
J.D. Purcell 69edada441 Set LangVersion to 8.0. Requires Visual Studio 2019 with 16.3+ update installed. 2019-10-27 12:14:19 -04:00
adelikat 924618ee8f Set resharper language level to 7, add some emulator lingo to the resharper dictionary 2019-10-27 10:54:29 -05:00
YoshiRulz 8c7862aa8a
Fix .so versioning 2019-10-25 21:33:05 +10:00
YoshiRulz 9946f2ff16
Re-add FPU precision, enabled only on Windows 2019-10-25 21:27:05 +10:00
YoshiRulz 60cf4e6c02
Remove FPU precision (probably not needed according to natt) 2019-10-25 21:21:56 +10:00
YoshiRulz b904d3d71c
Look for libquicknes.dll/.so better 2019-10-25 19:21:36 +10:00
J.D. Purcell c956b5993b Small FFT change I had stashed. 2019-10-21 00:10:28 -04:00
YoshiRulz db020e499e
Extract superclass from MemoryBase and start on a Unix implementation 2019-10-19 15:20:31 +10:00
alyosha-tas 9da739eaeb GBHawk: TAMA5 initial work 2019-10-18 17:35:59 -04:00
alyosha-tas 4324e1b309 GBHawk: sync settings fix 2019-10-14 08:58:54 -04:00
alyosha-tas 2e31d38568 GBHawk: fix a register 2019-10-13 19:27:14 -04:00
James Groom 90b0574bc3
Remove unnecessary calls to ToList (e.g. in foreach)
squashed PR #1591
2019-10-13 15:50:57 +00:00
YoshiRulz 7df71f2c86
Properly fix lib loading (builds upon 77bbc4128)
Also cleaned up OSTailoredCode.cs and fixed qualifiers in Program.cs
2019-10-13 15:23:14 +10:00
J.D. Purcell 77bbc41286 Fix prerequisites dialog (broken by 42764f00 and 436b6452). 2019-10-12 17:56:20 -04:00
alyosha-tas d7ee6ba579 GBHawk: Misc cleanup 2019-10-12 16:04:13 -04:00
alyosha-tas 8384f4298d GBHawk: another mbc3 fix 2019-10-11 21:28:46 -04:00
alyosha-tas 1c51f09e65 GBHawk: add RTC offset setting 2019-10-11 13:19:40 -04:00
alyosha-tas 06d53a106a GBHawk: RTC update 2019-10-11 09:31:21 -04:00
alyosha-tas 5916b9af17 GBHawk: minor bug fixes 2019-10-10 20:12:44 -04:00
alyosha-tas 931a4dcde9 GBHawk: window timing fixes 2019-10-10 09:57:40 -04:00
alyosha-tas 78cbb9aac5 GBHawk: fix window timing, special cases still need work 2019-10-09 16:37:09 -04:00
alyosha-tas f765e42578 GBHawk: more IRQ timing 2019-10-09 12:46:48 -04:00
alyosha-tas 724a3783f1 GBHawk: more hdma work 2019-10-08 20:26:24 -04:00
alyosha-tas a8080d129d GBHawK: HDMA and IRQ work 2019-10-08 19:21:40 -04:00
alyosha-tas 1c07d3d2ad GBHawk: fix IRQ clear timing 2019-10-08 08:54:50 -04:00
alyosha-tas 8beb0a9ae5 GBHawk: MBC3: fix RTC 2019-10-07 20:04:57 -04:00
YoshiRulz 4e5b763c38
Reenable OpenTK gamepad functionality 2019-10-07 03:08:41 +10:00
alyosha-tas d2fe217869 GBHawk: expose 4x core 2019-10-04 13:52:29 -04:00
alyosha-tas 71527da3ed GBHawk: Start 4x support 2019-10-03 22:04:36 -04:00
alyosha-tas 211e65dbf5 GBHawk: IR comm working 2019-10-01 21:03:30 -04:00
alyosha-tas 9bfe61a9d4 GBHawk: more bug fixes 2019-10-01 18:36:39 -04:00
alyosha-tas 5cfda44cbf GBHawk: linking improvements 2019-09-30 11:17:15 -04:00
alyosha-tas 1520529acf GBHawk: Serial port cleanup 2019-09-29 21:08:05 -04:00
alyosha-tas 9b161ced56 GBHawk: Clean up frame display routines 2019-09-29 20:15:49 -04:00
alyosha-tas 96fa7feb09 GBHawk: Fix Worms Armaggedon 2019-09-28 21:46:55 -04:00
alyosha-tas 49ec644f71 GBHawk: Add in IR transfer support 2019-09-24 13:09:17 -04:00
alyosha-tas 514635c127 GBHawk: Fix pokemon Crystal (HDMA bug) 2019-09-23 20:13:08 -04:00
alyosha-tas 815145c939 GBHawk: Clean up and PPU seperation. 2019-09-22 21:09:47 -04:00
alyosha-tas 2c575dd91a GBHawk: Update frame definitions 2019-09-18 10:28:54 -04:00
alyosha-tas 32c2c4b78e GBHawk: Begin to seperate GBC and GBC-in-GB-compatibility-mode ppus. 2019-09-15 22:51:50 -04:00
alyosha-tas d5c9f32095 GB3x: update saveram and memory domains 2019-09-15 16:19:48 -04:00
alyosha-tas 0bd3553c27 NESHawk : fix dendy mode 2019-09-14 10:30:18 -04:00
alyosha-tas 42f9b817d2 GBHawk3x: Add center audio 2019-09-11 09:45:48 -04:00
alyosha-tas 9f8eaa87de GBhawkLink3x: linking 2019-09-09 14:06:37 -04:00
MrCheeze 4d49dc5d30 ALL n64 memory domains need to be byteswapped, not only rdram/rom 2019-09-09 00:16:43 -04:00
MrCheeze 3f26d14eaa added SRAM and FlashRAM memory domain support for N64 2019-09-08 23:20:35 -04:00
alyosha-tas 79c4b1e846 GBHawkLink3x: Initial Commits 2019-09-08 16:35:39 -04:00
alyosha-tas a01c205d62 GBHawk: don't try to read 0 samples. 2019-09-03 10:38:53 -04:00
alyosha-tas 76df4758db A2600: update ball emulation
A7800: update m6532 to match 2600
2019-08-03 19:17:28 -04:00
alyosha-tas f058933342 Vectrex: Fix firmware 2019-08-03 09:26:30 -04:00
alyosha-tas 6948b999f1 A2600: Fix ram buffer 2019-08-01 08:51:32 -04:00
alyosha-tas dce8db231b GBHawk: color regs writable 2019-07-29 14:09:51 -04:00
Tony Konzel 58513ea22f
Merge pull request #1607 from TASVideos/c64-refactor
C64: General improvements (disk writing, CIA/VIA timers, 6502X decimal mode fixes)
2019-07-22 09:29:22 -05:00
alyosha-tas fca98ffe34 Various code cleanup 2019-07-21 09:05:07 -04:00
alyosha-tas 6a773ac272 Atari 2600: more bug fixes 2019-07-20 14:47:36 -04:00
SaxxonPike 1e5fe55f30 C64: Don't reallocate the SID filter buffer every time (purely perf) 2019-07-19 19:09:08 -05:00
alyosha-tas cf6cdf4ecc A2600: Bug fixes and Improvements 2019-07-19 20:03:30 -04:00
SaxxonPike a119420c79 C64: VC count enable seems to need to be delayed by 1 cycle after badline
- which doesn't affect normal operation
- which DOES affect VSP
2019-07-14 20:22:07 -05:00
SaxxonPike 4d6ed8d6c8 C64: Savestate should include the new variables 2019-07-14 16:32:53 -05:00
SaxxonPike ad7cae8b71 Merge branch 'master' into c64-refactor 2019-07-14 10:45:44 -05:00
SaxxonPike 8e8d3a6a1b C64: Writes to some registers on the VIC in phase 2 by the CPU should only take effect on the following cycle 2019-07-14 10:44:56 -05:00
SaxxonPike e8902b829a C64: Apparently the 6502X core needs interrupts delayed by a cycle, do that with IRQ and NMI 2019-07-14 10:43:52 -05:00
SaxxonPike 3bbfb98fc2 C64: Split out VIC IRQ delays 2019-07-13 19:28:44 -05:00
alyosha-tas 7df8ed1f27 A2600: Add HMCLR delay 2019-07-13 18:33:54 -04:00
SaxxonPike 154eefd2ad C64: Give BA/IRQ counting another go, seems to resolve many issues 2019-07-13 16:51:30 -05:00
SaxxonPike db38d5e65b C64: Try counting IRQ and BA correctly 2019-07-13 15:28:57 -05:00
SaxxonPike f22c9b7abd C64: CPU reads open bus when !AEC is asserted 2019-07-13 15:25:40 -05:00
SaxxonPike 894adbb610 C64: Remove an unused variable 2019-07-13 15:02:18 -05:00
SaxxonPike 76679bc8bc C64: Use the correct background color in bitmapped modes for 0 2019-07-13 15:01:11 -05:00
SaxxonPike bd20b355f0 C64: Writing to CPU port writes open bus data to 00/01 2019-07-13 14:06:23 -05:00
SaxxonPike f18e7c8833 C64: Make the system debuggable for once 2019-07-13 13:15:50 -05:00
SaxxonPike cae3340946 C64: No need to expose these with the CPU link in place 2019-07-13 12:53:34 -05:00
SaxxonPike 3369dbf43f C64: IRQ is implemented as a delay line; no delay added (yet) 2019-07-13 12:51:39 -05:00
SaxxonPike d39f3e2e61 6502X: pending IRQs are not delayed when !RDY is asserted 2019-07-13 12:31:09 -05:00
SaxxonPike bf2cba0e23 6502X: remove a comment (this is indeed a dummy fetch) 2019-07-13 11:38:03 -05:00
SaxxonPike d62f2ac3fe C64: 0F7 is a badline eligible raster (fixes 26-line text demo in Frodo test suite) 2019-07-13 01:41:58 -05:00
SaxxonPike e6871b2cc3 C64: Move VIC raster IRQ to phase 1 2019-07-13 00:27:08 -05:00
SaxxonPike dbf6b39e7f C64: Split out VIC phase1/phase2 2019-07-12 23:51:55 -05:00
SaxxonPike 85bc92b688 Merge remote-tracking branch 'origin/c64-refactor' into c64-refactor
# Conflicts:
#	BizHawk.Emulation.Cores/Computers/Commodore64/MOS/Chip6510.cs
2019-07-12 22:10:08 -05:00
alyosha-tas 66cf00a917 Vectrex: Add frame buffer to state an set to released 2019-07-12 18:15:25 -04:00
alyosha-tas 5e2b097902 MC6809: fix DAA 2019-07-10 19:30:17 -04:00
alyosha-tas fd51934ea4 Vectrex: Fix some bugs 2019-07-10 15:42:01 -04:00
alyosha-tas 9fe277a3ff Vectrex: a bit more controller and frame cleanup 2019-07-10 06:58:41 -04:00
SaxxonPike 0a7dc52aa0 C64: BA and raster IRQ cleanup 2019-07-09 22:41:12 -05:00
SaxxonPike 3a135c7c26 C64: Raster interrupt bit can be set even if not enabled, just won't actually assert IRQ 2019-07-09 21:40:03 -05:00
SaxxonPike e63d10b608 C64: Interrupts generated in phase 2 by the VIC won't trigger for the CPU until next cycle, also buffer BA 2019-07-09 20:55:14 -05:00
SaxxonPike b471fdc692 C64: The CPU can trigger VIC badlines on its own (needed for VSP) 2019-07-09 20:53:54 -05:00
SaxxonPike 2abe832289 C64: AEC does not prohibit the CPU from functioning, only BA (RDY) does 2019-07-09 20:52:51 -05:00
SaxxonPike 9758efe604 6502X: CPU does a read or write regardless if the result is trashed, even during reset and dummy pushes 2019-07-09 19:46:33 -05:00
alyosha-tas 84b0917f65 Vectrex: Add schema and do some miscellanous clean up 2019-07-09 20:01:45 -04:00
SaxxonPike a8fd85157c VIC: Use correct color mapping for non-multicolor bitmap mode 2019-07-09 08:02:55 -05:00
SaxxonPike 83b6553749 VIC: Respect idle state background color registers, plus black in undocumented gfx mode 2019-07-09 06:58:13 -05:00
SaxxonPike 89fa153477 VIC: Resolve background color registers separately to color matrix memory 2019-07-09 06:55:55 -05:00
SaxxonPike 9f733d3e7a VIC: More accurate pixel pipeline 2019-07-09 05:26:26 -05:00
SaxxonPike 3efea15038 6502X: When !RDY is asserted, still do other operations. Plus, do dummy reads on stack ops 2019-07-09 05:24:47 -05:00
alyosha-tas f544c044bf NES MMC3: Mapper test indicates IRQ was happening one ppu tick too late. 2019-07-08 08:16:43 -04:00
alyosha-tas 5b2ed7e4ff MC6800: disassembler and cleanup 2019-07-07 17:32:14 -04:00
alyosha-tas 53dd500875 MC6800: More cleanup 2019-07-07 09:08:26 -04:00
alyosha-tas e2014ba3f5 MC6800 work and MC6809 bug fix 2019-07-07 08:22:01 -04:00
alyosha-tas a4b38aa7a5 MC6800: Initial commit 2019-07-06 20:16:48 -04:00
SaxxonPike d36e02045b C64: Optimize the RNG for 1541 flux transitions. (same output) 2019-07-06 16:32:21 -05:00
SaxxonPike 3bf37f1c17 C64: No need for LagCycles anymore. 2019-07-06 16:29:14 -05:00
alyosha-tas 475702c1e8 Vectrex: code cleanup 2019-07-06 16:44:46 -04:00
SaxxonPike 6ed11de85b C64: Soft/Hard reset: it's about time 2019-07-06 01:19:58 -05:00