Commit Graph

3831 Commits

Author SHA1 Message Date
Stephen Anthony a468201745 Updated Visual Studio for addition of PhosphorHandler class. 2019-12-26 20:37:45 -03:30
Stephen Anthony 43fe10ac9d Refactored phosphor calculations into a new PhosphorHandler class.
This class is accessible from both TIASurface and AtariNTSC, so there's no more code duplication.
Testing is required to see if this results in any slowdowns.  It shouldn't, since the relevant code is inlined ...
2019-12-26 20:26:39 -03:30
Stephen Anthony 1618095695 libretro: Fix error with user-defined vs. default c'tor. 2019-12-26 17:53:26 -03:30
Stephen Anthony 8ab2de692f Fix crash when combomap isn't defined in config file. 2019-12-26 17:51:08 -03:30
Stephen Anthony cd4c54400e Huge refactoring of the palette-related code.
This has been developed ad-hoc over the years, with different subsystems (TIA, UI, phosphor, Blargg, etc).  This is an attempt to consolidate the code, and also move to C++-style arrays.
Still TODO is look into refactoring phosphor stuff out of TIASurface and AtariNTSC classes, since the code is exactly the same, and doesn't really belong in either.
This is a major change, so some testing is definitely required.
2019-12-26 17:28:55 -03:30
Stephen Anthony 1f17711cd0 A few more cleanups from clang-tidy. 2019-12-26 11:55:25 -03:30
Thomas Jentzsch 94a18431d2 add Draconian to properties 2019-12-26 09:53:21 +01:00
Stephen Anthony 1844e85581 Fix potential divide by zero. 2019-12-25 21:49:07 -03:30
Stephen Anthony 9247b5c9c3 Fix size_t vs int issue. 2019-12-25 20:53:21 -03:30
Stephen Anthony 88c9c15bfa More fixes for warnings from clang-tidy.
Mostly converting C-style arrays to C++.
2019-12-25 20:40:01 -03:30
Stephen Anthony 0960105c32 First pass at converting Blarrg code to proper C++. This mostly involves getting rid of macros. 2019-12-25 20:39:04 -03:30
Stephen Anthony dddd0fd4a5 Activate properties from last commit. 2019-12-25 14:15:39 -03:30
Thomas Jentzsch ca4c83a819 Merge branch 'master' of https://github.com/stella-emu/stella 2019-12-25 17:49:46 +01:00
Thomas Jentzsch 04e36fd5a0 update properties for HES dual games. 2019-12-25 17:49:18 +01:00
Stephen Anthony fa55a76197 Use logical OR instead of bitwise OR. 2019-12-25 13:07:03 -03:30
Stephen Anthony 95d9ae92d9 A few items that slipped through the last commit. 2019-12-24 22:26:44 -03:30
Stephen Anthony 7e7348b07c Many more fixes for suggestions from clang-tidy. 2019-12-24 22:11:36 -03:30
Stephen Anthony 504235afea Replace 'atoi' with the C++11 equivalent: 'stoi'. 2019-12-24 17:58:46 -03:30
Stephen Anthony 55b7394144 More fixes for warnings from clang-tidy.
Sorry if these are all over the place; I'm fixing them in the order that the tool finds them.
2019-12-24 17:50:27 -03:30
Stephen Anthony c38ef3c423 Handle case where a ROM doesn't have a name in its properties entry. 2019-12-24 16:52:44 -03:30
Stephen Anthony 810d8450f3 Updated ROM properties to RomHunter v16. 2019-12-23 22:32:00 -03:30
Thomas Jentzsch dbac5aad02 fix for #552 (analog/digital part) (TODO: test!) 2019-12-23 17:08:51 +01:00
Stephen Anthony 357b29b5ec Deadcode elimination in M6502 emulation.
A minor improvement, but every little bit counts.
2019-12-22 23:33:20 -03:30
Stephen Anthony 963cec1880 More cleanups from clang-tidy. 2019-12-22 22:46:27 -03:30
Stephen Anthony db096b911c Convert joystick handler to use vectors and eliminate raw new/delete. 2019-12-22 21:43:50 -03:30
Stephen Anthony faf16e0fe3 Remove virtual designation for FSNode::setFlags, since it's never needed. 2019-12-22 21:00:50 -03:30
Stephen Anthony c057e1d0c8 Move all logging facilities from OSystem directly into the Logger class. 2019-12-22 17:36:06 -03:30
Thomas Jentzsch 8ba4bae4a7 add "Mickey" to properties 2019-12-22 18:39:07 +01:00
Stephen Anthony c9a23cd02f Some more refactoring based on advice from clang-tidy.
- Eliminate virtual calls in c'tor/d'tor
- Eliminate some redundant calls in d'tor
- Don't reinitialize blitter unless absolutely necessary
2019-12-22 11:56:24 -03:30
Stephen Anthony 51f704d769 Fix more fallout from code refactoring. 2019-12-22 10:18:03 -03:30
Stephen Anthony 0bf2c53818 Fix compile error in Windows port from recent code refactoring. 2019-12-22 10:14:39 -03:30
Stephen Anthony 6d8bd87db6 Eliminate superfluous 'setDirty' call. 2019-12-21 22:41:01 -03:30
Stephen Anthony ffdb301a36 Some cleanups suggested by clang-tidy. 2019-12-21 22:38:01 -03:30
Stephen Anthony 414607ce26 Changed Base::Format to Base::Fmt, and made it a scoped enum. 2019-12-21 21:27:18 -03:30
Stephen Anthony eebba63b58 Remove redundant comment. 2019-12-21 19:29:30 -03:30
thrust26 b6d3ab0f83 removed ARM RAM dump code again, redundant 2019-12-21 15:17:32 +01:00
thrust26 23cc2cc49c fix MessageBox height calculation
add first 0.5K RAM to ARM fatal error message
2019-12-21 11:59:07 +01:00
thrust26 2477b7fdaf add missing register 0 to ARM dump 2019-12-21 08:20:19 +01:00
Stephen Anthony b04c35e2a2 libretro: Fix VS project for recent removal of ystart handler. 2019-12-20 10:57:51 -03:30
Stephen Anthony 7fdc5e9ec6 Fix minor warning in Xcode. 2019-12-20 10:23:54 -03:30
Stephen Anthony 969911d398 libretro: Fix build file for recent removal of ystart handler. 2019-12-20 09:16:48 -03:30
Stephen Anthony 394ebd15f3 Removed all reference to 'ystart' from built-in properties database.
Note that the info is still in 'stella.pro', until we finalize what the values should be.
Then we will update the built-in properties again.
2019-12-19 18:42:23 -03:30
thrust26 8cd4115050 correct silencing fix 2019-12-19 19:54:09 +01:00
Christian Speckner ff29f63f7d Add missing initialization. 2019-12-19 19:28:33 +01:00
Christian Speckner 991f29b179 Don't try to access the palette before it has been initialized. 2019-12-19 18:39:39 +01:00
thrust26 9ede2456bd silence compiler 2019-12-19 18:34:21 +01:00
thrust26 e344848bdb adjust VS project 2019-12-19 18:14:16 +01:00
thrust26 1563e4c5c3 Merge branch 'master' of https://github.com/stella-emu/stella 2019-12-19 18:13:50 +01:00
thrust26 bdba1809da updated Super Soccer 2019-12-19 18:13:24 +01:00
Christian Speckner 7dd2103c89 Safety belt. 2019-12-19 18:12:20 +01:00
Christian Speckner 4e6df63bcd Adapt XCode project file. 2019-12-19 18:08:43 +01:00
Christian Speckner 30350ec2c4 Ystart is sleeping with the fishes. 2019-12-19 18:01:54 +01:00
thrust26 dea2e43b1e add hotkey for toggling interpolation (ctrl+i) 2019-12-18 20:38:52 +01:00
Stephen Anthony 6013620a5d Fix minor warning from clang. 2019-12-18 15:56:39 -03:30
thrust26 a894d325d3 reverted video dialog and settings changes 2019-12-18 19:55:58 +01:00
thrust26 307e73c7a1 small improvement on FC bankswitching 2019-12-18 19:12:04 +01:00
Stephen Anthony 52c7d83532 Fixed minor issues reported by cppcheck. 2019-12-17 21:06:08 -03:30
Christian Speckner a1df24b52d Precisely align scanlines with TIA scanlines. 2019-12-17 22:51:08 +01:00
Christian Speckner 4378b9eab4 Be ready for fractional scaling factors, performance improvements. 2019-12-17 21:31:08 +01:00
Christian Speckner bd4e076461 Native retina support. 2019-12-17 19:34:41 +01:00
Christian Speckner c61fb8f597 Update scaling in video dialog instead of framebuffer. 2019-12-17 17:16:37 +01:00
Christian Speckner 0334ae7bad Rename HqBlitter -> QisBlitter 2019-12-17 17:16:37 +01:00
Christian Speckner 5cc9c9eb78 Re-add filter setting to PNG metadata. 2019-12-17 17:16:37 +01:00
Christian Speckner 80bbea4640 Connect tia.filter. 2019-12-17 17:16:37 +01:00
Stephen Anthony 0556090a09 First pass at converting part of 'ystart' to 'vcenter'.
The logic here is somewhat convoluted.  I suggest renaming 'ystart' to 'startline',
and having it internal to TIA only.  The 'vcenter' option will then modify that value
from certain default constants (for NTSC and PAL).
2019-12-16 23:26:57 -03:30
thrust26 216916a313 Reimplement y-start as "V-Center" in dialog and messages
Limit v-center range to +/-15 pixel
2019-12-16 12:41:39 +01:00
thrust26 338e2604d5 Fixed my merge chaos (sorry) 2019-12-16 09:47:56 +01:00
thrust26 f66ba4fdd5 reimplemented ystart (TODO: GameInfoDialog) 2019-12-16 09:03:42 +01:00
thrust26 c061d3a4d3 removed redundant check
fixed superfluous ';' bug
2019-12-15 17:40:32 +01:00
thrust26 82314ecb21 improved logging and display of auto detected controllers and bankswitching types 2019-12-15 17:19:08 +01:00
Stephen Anthony 83c2e8486f More fixes for issues reported by cppcheck. 2019-12-15 12:32:49 -03:30
Stephen Anthony 56a6ef1a60 Some fixes for issues found in cppcheck. 2019-12-15 11:23:14 -03:30
thrust26 cbb8ba4494 added logging of available full screen modes 2019-12-15 10:28:14 +01:00
Christian Speckner 33172f34e4 Fix blitter reinitialization, always call Blitter::free on surface reload 2019-12-15 00:43:49 +01:00
thrust26 cc72f12574 prepare VideoDialog for new filter mode 2019-12-14 21:48:23 +01:00
Christian Speckner 17d5e153ca Stab at fixing memory issues. 2019-12-14 10:04:36 +01:00
thrust26 dbe763a770 spelling :) 2019-12-14 08:47:52 +01:00
Stephen Anthony c3a8543dc4 Properly handle 'Cart.StartBank' set to 'AUTO' in the ROM properties. 2019-12-13 20:21:20 -03:30
Stephen Anthony f1d18b6f0d Revert what I thought was a minor change in properties handling.
I need to go over this a little more, since it's causing ROMs to crash.
2019-12-13 20:11:14 -03:30
Stephen Anthony 2bc5c4336a Use make_unique/make_shared to eliminate raw pointers. 2019-12-13 19:24:36 -03:30
Christian Speckner c5f3c84236 Get rid of smoothing in favor of scaling settings. 2019-12-13 22:46:31 +01:00
Stephen Anthony 80f9fc6156 Updated VS project for QIS blitter class. 2019-12-13 17:34:23 -03:30
Christian Speckner 4c18f66250 Fix memory leak. 2019-12-13 21:47:30 +01:00
Christian Speckner d40e9011cf The gods made heavy metal... 2019-12-13 21:12:51 +01:00
Christian Speckner cd6f8b3498 More sophisticated detection whether qis is supported. 2019-12-13 21:00:23 +01:00
Christian Speckner 9b164c11bd Merge fallout. 2019-12-10 23:23:46 +01:00
Christian Speckner b9cf593023 Update XCode project. 2019-12-10 23:23:46 +01:00
Christian Speckner e83a943ab9 Cleanup. 2019-12-10 23:23:46 +01:00
Christian Speckner fd36f18061 Fall back to bilinear filtering if rendertargets are not supported. 2019-12-10 23:23:46 +01:00
thrust26 186576b825 updated VS project file 2019-12-10 23:23:46 +01:00
Christian Speckner 1d7d3a4edc Clear intermediate texture before blitting. 2019-12-10 23:23:46 +01:00
Christian Speckner 67b88fd370 Add HQ blitter. 2019-12-10 23:23:46 +01:00
Christian Speckner 79356ac8c4 Fix attributes -> blitter works. 2019-12-10 23:23:46 +01:00
Christian Speckner fa28fe82d3 Factor out rendering / texture juggling from surface handling. Defuct. 2019-12-10 23:23:46 +01:00
Christian Speckner 6d80f7c354 Work around what looks like a bug in XCode 11.2 in -O0 and -O1. 2019-12-10 23:23:46 +01:00
Stephen Anthony 8c74a73f37 Visual Studio doesn't support std::getenv, so we use Windows-specific
code.
2019-12-10 17:56:12 -03:30
Christian Speckner 4f396efb9a Comments. 2019-12-08 21:02:29 +01:00
Christian Speckner 34e0b4bcc7 Work around what looks like a bug in XCode 11.2 in -O0 and -O1. 2019-12-08 21:01:08 +01:00
Christian Speckner 8d68aaece1 Fix segfault. 2019-12-08 21:01:00 +01:00
Stephen Anthony 1f3ca56ee2 Added 'Mean Santa' ROM properties to the database. 2019-12-07 20:18:05 -03:30
Stephen Anthony 8bf39568ab Fix missing bounds checking, reported by Coverity.
This area of the code could also use some named constants, which are also used in DeveloperDialog.
2019-11-30 22:06:38 -03:30
Stephen Anthony f3e2c401c0 Dead code elimination found by Coverity. 2019-11-30 17:24:19 -03:30
Stephen Anthony 8757e1b1ca Fix coverity complaining about unrestricted use of getenv. 2019-11-29 18:06:43 -03:30
thrust26 df21ade60e updated event mapping screenshots and text
made green debug color for missile 1 a bit brighter (NTSC+PAL)
2019-11-24 08:44:24 +01:00
Stephen Anthony b52dae4176 Convert some raw arrays to std::array.
Some fixes for warnings from Coverity.
2019-11-14 20:12:45 -03:30
Stephen Anthony b6e2a591f1 libretro: Fix Linux/macOS builds. 2019-11-02 19:50:41 -02:30
thrust26 8bcfc2b689 improve FC detection and bank switching 2019-11-02 19:23:38 +01:00
Stephen Anthony f77e891c28 Updated xcode project for recent class additions. 2019-11-02 11:27:18 -02:30
Stephen Anthony f974c07daa Fix issues with VS project, minor warning from clang, and autoformat
code.
2019-11-02 11:03:15 -02:30
Stephen Anthony 30eeb9d1be libretro: Fix Windows build for recent class addition. 2019-11-02 10:53:57 -02:30
thrust26 84e0e67a07 add missing files 2019-11-02 13:23:23 +01:00
thrust26 66456e0418 adds FC bankswitching for Amiga's Power Play Arcade cart #1 2019-11-02 12:23:03 +01:00
thrust26 ddfc065c4b display debugger cart type info disabled
align further options to cart type info
2019-11-02 11:57:50 +01:00
Stephen Anthony 85362e30fd Fix segfault on shutdown in certain cases (mostly if OSystem creation failed). 2019-10-29 12:13:51 -02:30
Stephen Anthony 58fc631c2f Updated master with 6.0.2 changelog. 2019-10-16 22:30:37 -02:30
thrust26 36322474ed updated WD bankswitching (incl. detection) 2019-10-16 22:05:33 +02:00
Stephen Anthony 66f69a7177 Updated properties database for imminent release of a highly anticipated prototype. 2019-10-11 12:30:06 -02:30
Stephen Anthony d063929522 Fix typo. 2019-10-07 18:24:03 -02:30
Stephen Anthony 3594931701 Potentially fix compile errors for a few libretro ports.
I can't test this, so I don't know for sure if it fixes anything.
2019-09-27 22:58:07 -02:30
Stephen Anthony 4a39181934 Eliminate conversion to pointer when it's not necessary. 2019-09-27 22:50:24 -02:30
Stephen Anthony 52e3bab745 One final fix for clang warning. 2019-09-24 10:36:32 -02:30
Stephen Anthony 0353e49fe1 Fixed minor warnings in Windows. 2019-09-23 20:18:54 -02:30
Stephen Anthony 84428a7bbc A few more std::array updates. 2019-09-22 20:42:46 -02:30
Stephen Anthony 7271438980 Some more std::array and size_t updates. 2019-09-18 10:27:32 -02:30
Thomas Jentzsch 177311b698 replace some odd decimal numbers with hexadecimals 2019-09-17 09:38:47 +02:00
Stephen Anthony 3941f1894e Fixed remaining size_t vs. uInt32 issues in Windows. 2019-09-16 21:36:30 -02:30
Stephen Anthony 4a25a72814 Changed uInt32 to size_t where necessary.
Finally decided to stop fighting C++, and just use size_t everywhere an
array is used.
Even though this is a 64-bit value, it seems that C++/STL expects it
when dealing with arrays, so I guess we will too.
2019-09-16 21:29:08 -02:30
Stephen Anthony 020c18e74b Add missing include; hopefully fixes compile error. 2019-09-16 20:14:35 -02:30
Stephen Anthony 9958ad040e Fixed gcc warnings wrt getBank virtual methods.
Converted many C-style arrays to C++ std::array.  In the process, cleaned up a lot of magic constants.

Replaced most C-style memset/memcpy operations with C++ equivalents: std::fill/std::copy.
std::copy in particular fixes a few potential bugs, since it operates on the datatype size,
and not just on raw bytes.
2019-09-16 19:46:15 -02:30
Stephen Anthony 3a0cb028d3 Fixed minor warnings from clang. 2019-09-15 19:24:28 -02:30
thrust26 d7b4152bd9 add option to break on RAM writes to read ports 2019-09-15 17:04:25 +02:00
thrust26 8e43d96b38 more types for partial fix for issue #537 (RAM writes to read port) 2019-09-15 11:52:43 +02:00
thrust26 cf826148c1 fix for RAM writes to read port commit (offsets reversed) 2019-09-15 11:36:46 +02:00
Yoshi Sugawara af0c01eba7 Libretro: support building using tvOS SDK 2019-09-14 10:09:58 -02:30
Thomas Jentzsch 77c00f0f68 partial fix for issue #537 (RAM writes to read port) 2019-09-12 11:08:26 +02:00
thrust26 87f43e23b2 some fixes for last commit 2019-09-07 14:36:13 +02:00
thrust26 3ff6a95314 Add considering addresses for current bank. This is important for types where the 4K ROM address space is segmented into smaller slices, so there can be more than one bank at a time.
This addresses #536.
2019-09-07 14:29:33 +02:00
Christian Speckner 2f24bcbb4f Fix MacOS build. 2019-09-04 15:54:17 +02:00
Thomas Jentzsch 3e59f5d5f4 fix left and right paddles defaults 2019-09-01 11:04:51 +02:00
Thomas Jentzsch 18ac612647 Revert "prevent menu navigation with analog input"
This reverts commit cce980a4d4.
(breaks editing mappings for analog devices)
2019-09-01 10:44:48 +02:00
Thomas Jentzsch cce980a4d4 prevent menu navigation with analog input 2019-09-01 09:50:04 +02:00
Thomas Jentzsch 0d8b53d004 add 'breaklabel' command for 16 bit address breaks in all banks 2019-08-31 11:37:29 +02:00
Thomas Jentzsch 5b67967e6e add a quick fix for #532
fix comment for FE detection
2019-08-31 10:21:30 +02:00
Stephen Anthony 24421fa9ee Removed 'cfgdir', and have Distella config files placed with the ROM file they refer to.
Updated docs for removal of statedir, propsfile, etc.
Added 'basedir' and 'baseinappdir' to the docs.
Updated changelog for above changes.
2019-08-30 23:32:57 -02:30
Stephen Anthony 5ec4cf8870 Add file/dir locations to logging. 2019-08-30 22:34:11 -02:30
Thomas Jentzsch 5e288dc075 improve 'break' command output 2019-08-27 23:27:28 +02:00
Thomas Jentzsch a3eb2a3598 return sorted list of breakpoints 2019-08-26 10:11:41 +02:00
Thomas Jentzsch dd3fea5f96 refine 'break' command (using ff instead of -1, which indicates an invalid argument) 2019-08-26 09:44:30 +02:00
Thomas Jentzsch 1fe3886cca Merge branch 'master' of https://github.com/stella-emu/stella 2019-08-24 14:12:32 +02:00
Thomas Jentzsch 72e50fa099 forgot the new files, oops again! 2019-08-24 14:12:07 +02:00
Stephen Anthony 314cfc9e3f Fix build file for Linux. 2019-08-24 09:17:24 -02:30
Thomas Jentzsch 47f193610f small fix `listbreaks` for single bank ROMs 2019-08-24 12:21:17 +02:00
Thomas Jentzsch 913649766e Merge branch 'master' of https://github.com/stella-emu/stella 2019-08-24 12:00:04 +02:00
Thomas Jentzsch 5785371915 reworked breakpoints to use hash map (and % $1fff addresses) 2019-08-24 11:59:31 +02:00
Stephen Anthony 19c1f3f5a3 Entering an uppercase char (ie, hold Shift) on the first character in
file listings now selects among directories; use lowercase to select among
files (fixes #160).

Refactored relevant code from ListWidget to FileListWidget, where it more
properly belongs.

Updates to docs (new info, typo's, etc).
2019-08-23 22:08:06 -02:30
Thomas Jentzsch 91875f1ae9 fixed some breakpoint issues regarding #512 2019-08-21 10:23:54 +02:00
Stephen Anthony a897e398e2 Update Xcode project for removed file. 2019-08-20 21:15:19 -02:30
Christian Speckner 9bda794323 Take power-on state into account during autodetection. 2019-08-20 23:44:30 +02:00
Christian Speckner 14d2c9d595 Revert "pretty hacked and ugly fix for #501"
This reverts commit a023846734.
2019-08-20 23:44:19 +02:00
Stephen Anthony ad4c7142a1 Make launcher minimum size in UI match what is used in the actual code. 2019-08-20 13:21:41 -02:30
Thomas Jentzsch dcbab3af3a improve breakpoint calculation, only consider low 13 bit for PC 2019-08-20 15:33:41 +02:00
Thomas Jentzsch 6a11cb3d44 add some more keypad keys support 2019-08-20 12:09:31 +02:00
Thomas Jentzsch e1b9982944 add commands from 'exec' script to prompt history 2019-08-20 10:27:42 +02:00
Thomas Jentzsch 92d39501a0 make breakpoints consider banks (fixes #512) 2019-08-19 22:12:49 +02:00
Thomas Jentzsch a023846734 pretty hacked and ugly fix for #501 2019-08-19 09:33:21 +02:00
Stephen Anthony 14aac39eb3 Updated files for upcoming release (whenever that may be).
Added info from 6.0.1 branch.
2019-08-18 19:09:18 -02:30
Thomas Jentzsch aaafa43b99 Merge branch 'master' of https://github.com/stella-emu/stella 2019-08-18 23:11:17 +02:00
Thomas Jentzsch 1a706ab2f1 Ha, found a way to detect analog vs digital axis input 2019-08-18 23:10:51 +02:00
Christian Speckner 77ac5b13a7 Remove unecessary cwd logic. 2019-08-18 22:10:24 +02:00
Thomas Jentzsch 2f9bb04eb8 prevent simultaneous mapping of analog and digital events on the same axis (until we find a way to how to detect analog or digital input)
remove joystick events from Paddles, these can now be mapped separately
2019-08-18 22:09:48 +02:00
Thomas Jentzsch 31c5b2ff47 minor updates to props 2019-08-18 21:00:13 +02:00
Thomas Jentzsch 3534804e7a Merge branch 'master' of https://github.com/stella-emu/stella 2019-08-18 20:33:45 +02:00
Thomas Jentzsch d187d30e0e updates some props 2019-08-18 20:33:26 +02:00
Aaron Kling 0691940058 libretro: allow mingw cross compile 2019-08-18 15:23:22 -02:30
snes2600 ac15909e34 libretro: fix missing JoyMap class 2019-08-18 15:21:46 -02:30
Thomas Jentzsch 5d296ff5a9 remove unused ConsoleOn/Off events 2019-08-18 18:19:16 +02:00
Thomas Jentzsch e420495cdf update props info (part 2) 2019-08-18 12:31:03 +02:00
Thomas Jentzsch 3b75753164 update props info 2019-08-18 11:01:36 +02:00
Thomas Jentzsch ece43e2515 add minor mapping code enhancements 2019-08-18 09:59:16 +02:00
Stephen Anthony 3cc16626e8 All functionality now restored to FileListWidget (pattern matching, ROMs only, etc).
This now uses a lambda function, which is more versatile.  Eventually we may even add regular expressions.
2019-08-17 21:13:15 -02:30
Christian Speckner 05b35320c8 Don't try to detect launch from finder. 2019-08-17 23:48:19 +02:00
Christian Speckner b281426c41 Fix MacOS build. 2019-08-17 22:46:47 +02:00
Stephen Anthony 4b00fd6571 Fixed selection of previous dir in FileListWidget.
I was going to have it remember descending directories too, but it's just too much fooling
around for a minor feature.  Maybe someone else can take a stab at it ...
2019-08-17 18:13:15 -02:30
Thomas Jentzsch c4a2c138f9 Implement event filter in InputDialog (resolves #517) 2019-08-17 15:42:39 +02:00
Thomas Jentzsch b6a9c7baf6 change hat mapping display 2019-08-17 06:44:17 +02:00
Thomas Jentzsch e9b1ec3d16 minor fixes for KidVid, one can start the games with 8, 9, 0 now if right controller is KidVid 2019-08-16 20:53:18 +02:00
Thomas Jentzsch 07e7d0c5b9 enable KidVid controller option 2019-08-16 14:32:56 +02:00
Thomas Jentzsch 429c4ae4be disabled unreachable code 2019-08-16 11:07:16 +02:00
Thomas Jentzsch aebb5ba13e replace magic controller strings with enums
automatic detected controller update in GameInfoDialog & StellaSettingsDialog
2019-08-16 11:05:55 +02:00
Thomas Jentzsch ae14b9eb7b minor refactoring 2019-08-16 06:54:17 +02:00
Thomas Jentzsch 35fb657e06 allow changing controllers during emulation 2019-08-15 20:17:57 +02:00
Thomas Jentzsch 331bf832b2 improve JoyMap hashing 2019-08-15 14:52:43 +02:00
Stephen Anthony f9ef05ac14 Remove redundant variable. 2019-08-15 07:59:54 -02:30
Stephen Anthony b4b43a8f0f Fix minor clang warnings. 2019-08-15 07:57:53 -02:30
Thomas Jentzsch 49c148d7d9 rename some variables 2019-08-15 12:20:10 +02:00
Thomas Jentzsch 2356b22490 convert int into JoyAxis/JoyDir 2019-08-15 11:53:15 +02:00
Thomas Jentzsch b95197e4cc first pass on converting int into JoyAxis/JoyDir 2019-08-15 10:58:11 +02:00
Thomas Jentzsch bd03895556 made EventMode an enum class 2019-08-15 10:12:37 +02:00
Thomas Jentzsch 4c430556b3 fix (partially) #494 (ToDo: Stelladaptor) 2019-08-15 09:32:01 +02:00
Stephen Anthony b532d5a6ee Fix compile warning for strncpy in Visual Studio.
Hopefully this will make Thomas happy :)
2019-08-14 18:10:56 -02:30
Stephen Anthony b9e6a69de8 Fix opening ZIP files that don't contain any ROMs. 2019-08-14 15:05:21 -02:30
Stephen Anthony 3763431064 Working on FileListWidget, and keep forgetting to commit this bit. 2019-08-14 13:43:32 -02:30
Thomas Jentzsch fd7d3ca5dd Merge branch 'master' of https://github.com/stella-emu/stella 2019-08-14 17:26:02 +02:00
Thomas Jentzsch bef7bbdded propagate 'repeated' to dialogs 2019-08-14 17:25:42 +02:00
Stephen Anthony de4e6a28fc Convert remaining Logger functions to new API: fixes #515. 2019-08-14 12:02:04 -02:30
Thomas Jentzsch a5fff857e9 fix #513
support using ESC to exit debugger
2019-08-14 14:52:28 +02:00
Thomas Jentzsch 2c1c48f176 oops 2019-08-14 12:11:32 +02:00
Thomas Jentzsch ac87d3faa5 refactored logging and removed magic numbers 2019-08-14 12:01:15 +02:00
Thomas Jentzsch 96a8ccc814 remove some debugging output
refactored controller mapping loading
2019-08-14 09:47:34 +02:00
Stephen Anthony 6041f983eb libretro: fix minor compile warning. 2019-08-13 16:58:17 -02:30
Stephen Anthony 6c83bf5e84 Fixed minor compile warning. 2019-08-13 16:54:38 -02:30
Thomas Jentzsch c9634766e0 fix #393 by using one-shot breakpoints 2019-08-13 17:27:23 +02:00
Thomas Jentzsch d38c0db833 allow RomInfoWidget text to fill multiple lines 2019-08-13 14:38:40 +02:00
Thomas Jentzsch 063308ac09 add long button press to launcher for power on options
note: currently this feels more like a hack
2019-08-13 14:06:27 +02:00
Thomas Jentzsch b2452a81ee fix some joystick mapping bugs
update R77 readme with button combos
2019-08-12 16:26:35 +02:00
Thomas Jentzsch 2564e95421 rename paddle events
update input mapping doc
remove abbreviation from InputDialog tab
2019-08-12 11:09:00 +02:00
Thomas Jentzsch b624dc3a0f make startup bank available in GameInfoDialog
add bankswitching type detection in GameInfoDialog when started from launcher
2019-08-12 09:22:36 +02:00
Stephen Anthony 0b791a311b Fix minor compile warnings in gcc and clang. 2019-08-11 21:53:06 -02:30
Thomas Jentzsch 2efe6f1486 add start bank option to GameInfoDialog 2019-08-11 22:21:28 +02:00
Thomas Jentzsch ca9e567e7b fix TiaInfoWidget display 2019-08-10 22:39:02 +02:00
Thomas Jentzsch a0c0490a49 fix #511 2019-08-10 18:08:53 +02:00
Thomas Jentzsch 2bb2eedb9d Merge branch 'master' of https://github.com/stella-emu/stella 2019-08-10 17:46:16 +02:00
Thomas Jentzsch 71423c5ffe make controller repeats configurable in UIDialog 2019-08-10 17:45:50 +02:00
Stephen Anthony 63fe07d926 Fix minor clang warnings. 2019-08-10 09:48:57 -02:30
Thomas Jentzsch bd4e34b4d3 improve controller remapping
stop input repeats during remapping
2019-08-10 13:56:32 +02:00
Thomas Jentzsch 09e9402075 change joystick mode mapping string delimiter 2019-08-10 11:30:35 +02:00
Thomas Jentzsch 22acedee5f fix display of unmapped events in HelpDialog 2019-08-10 08:51:03 +02:00
Thomas Jentzsch e8b4ac190d change key mapping strategy: left and right modifier key are not considered separately except when pressed alone 2019-08-09 08:42:46 +02:00
Thomas Jentzsch cfc9217230 Merge branch 'master' of https://github.com/stella-emu/stella 2019-08-08 11:47:07 +02:00
Thomas Jentzsch 3a3700e927 improve mapping with modifier keys 2019-08-08 11:46:43 +02:00
Stephen Anthony 1c0b95fd88 libretro: fix compile errors. 2019-08-07 14:54:11 -02:30
Thomas Jentzsch a31e4c6184 add multi line string drawing (used in Input Dialog) 2019-08-07 15:17:19 +02:00
Stephen Anthony 718fb756d1 Fix minor compile warnings in clang. 2019-08-05 09:27:38 -02:30
Thomas Jentzsch 38088619ee Merge remote-tracking branch 'remotes/origin/feature/controller-mapping' 2019-08-05 10:01:43 +02:00
Thomas Jentzsch f9f965d376 use ellipsis in non-editable EditTextWidget 2019-08-05 09:47:05 +02:00
Thomas Jentzsch 8a86f247cc added some computer keypad keys to default mappings 2019-08-05 09:21:05 +02:00
Thomas Jentzsch 196ce90a29 enhanced keyboard detection for "Laser Keyboard" game 2019-08-04 12:25:33 +02:00
Stephen Anthony a5d2086830 libretro: Final fix for 32-bit framebuffer alignment issues (hopefully). 2019-08-03 19:22:33 -02:30
Thomas Jentzsch 8b7248dc56 clear left 2 pixel 2019-08-03 16:06:22 +02:00
Thomas Jentzsch 8da53e05b6 fix the unrolled phosphor code 2019-08-03 15:48:31 +02:00
Thomas Jentzsch 1b9f11028f fix #504 (please test with video effects and phosphor on and off) 2019-08-03 10:24:25 +02:00
Thomas Jentzsch 9adb63e59f add mouse wheel zooming to TIA zoom widget in debugger
fix coordinates for handleMouseWheel()
2019-08-02 14:07:05 +02:00
thrust26 0faeb0c257 experiments with mapping 2019-07-29 18:59:02 +02:00
Thomas Jentzsch 470f432ac9 allow dragging debugger zoom widget with mouse 2019-07-29 13:40:43 +02:00
Thomas Jentzsch 669af8d1b8 Improve zooming 2019-07-28 19:55:36 +02:00
Thomas Jentzsch add8142f1f implement left button zoom and extra options in zom window (#506) 2019-07-28 14:15:03 +02:00
Thomas Jentzsch aae8a107f1 implement swapped hotspot option for UA (for Mickey) 2019-07-28 11:11:27 +02:00
Thomas Jentzsch 068a33a9f7 adapted UA bankswitching to new Brazilian carts (except Mickey) 2019-07-28 09:58:38 +02:00
Thomas Jentzsch ee5c89fc78 fixed hotspot address 2019-07-28 08:19:24 +02:00
Thomas Jentzsch 83acfe03c2 fix #507 2019-07-27 11:45:50 +02:00
Thomas Jentzsch 375abda24b Merge branch 'master' of https://github.com/stella-emu/stella 2019-07-26 15:46:45 +02:00
Thomas Jentzsch b561336991 add load and save all states commands to debugger 2019-07-26 15:46:24 +02:00
Stephen Anthony edc5516367 Fix a few files that have Windows CR-LF endings. 2019-07-25 12:33:54 -02:30
Thomas Jentzsch c30dcea9a8 fixed wording 2019-07-25 16:49:02 +02:00
Stephen Anthony 1a477a70b9 Fix old C-style casting.
There's a lot of code here that seems to change, but it's actually only one line.
I think newline differences are messing things up.
2019-07-25 10:14:57 -02:30
Thomas Jentzsch a76d1be0fd implement variable DPC pitch 2019-07-25 11:09:02 +02:00
Stephen Anthony 8ccf37fb24 Sometimes going up one directory didn't highlight the directory name. 2019-07-19 15:32:33 -02:30
Stephen Anthony cfb62862c1 Going upwards in file list now selects each previous directory.
Still TODO is determine if it's worth the effort to do the same when descending directories.

Finally getting back to development again.
2019-07-19 13:52:57 -02:30
softtwo 9a40f4e925 libretro: fbo alignment 2019-07-04 18:07:40 -02:30
softtwo 1c78a1f269 libretro: load user palette 2019-06-30 21:24:15 -02:30
softtwo 277d9fdd11 libretro: writable save files 2019-06-30 21:24:04 -02:30
thrust26 9b63a1e3d4 fix several bugs 2019-06-30 11:43:36 +02:00
Stephen Anthony f2004458e2 libretro: TV effects setting wasn't loading proper effect.
Note: raw ints are bad, enums are good.  Whenever Stella uses enums, libretro should use them too.
2019-06-29 23:35:10 -02:30
thrust26 0adc8f2002 remove SA specific events 2019-06-29 14:48:54 +02:00
thrust26 a693d67515 refactor into mapping into single class
add paddle mappings
2019-06-23 20:22:10 +02:00
Stephen Anthony 509f26a57a Use smart pointer in Windows FSNode stuff. 2019-06-23 15:38:16 -02:30
Stephen Anthony 92bc1da9dd Fix file selector with certain ZIP files not containing any ROMs. 2019-06-23 14:43:09 -02:30
thrust26 bd0fbcc1e1 add controller dependent mappings 2019-06-23 14:42:04 +02:00
Stephen Anthony 56d2b797aa Fixed Xcode project for recent file selector changes. 2019-06-22 21:37:09 -02:30
Stephen Anthony 0beffd01cf Fixed Windows build for latest file selector changes. 2019-06-22 21:25:40 -02:30
Stephen Anthony 4f30a183ec More reworking of the file selection mechanism.
- removed GameList, and integrated functionality directly into 'FSList' (which was mostly doing the same thing)
- have FSNode::getChildren() relabel directories, instead of Browser and Launcher dialogs
- MD5 calculations in ROM launcher are now cached, instead of being recalculated each time a directory is left and re-entered

Windows and macOS likely broken for a moment; this will be fixed next.
2019-06-22 21:09:42 -02:30
thrust26 ee62e0ae95 fix button modifier mappings
Stelladaptor specific code removeDialog
code cleanup
2019-06-22 16:54:21 +02:00
thrust26 95f9398d9e Merge branch 'master' of https://github.com/stella-emu/stella into feature/controller-mapping 2019-06-22 10:55:21 +02:00
thrust26 6b4645485b allow button as modifier for direction and hat
load/save controller mappings
2019-06-22 10:37:42 +02:00
thrust26 d4ae525baf implement rudimentary mapping 2019-06-21 21:11:52 +02:00
Stephen Anthony 3daa042576 First pass at converting LauncherDialog to use FileListWidget, similar to BrowserDialog.
- FileListWidget is a newer development, and LauncherDialog duplicates some (but not all) of its functionality
- Similarly, BrowserDialog has some functionality that LauncherDialog does not
- We will implement all required functionality in FileListWidget, and have both classes use it.

BrowserDialog is currently slightly broken; not all functionality is reimplemented yet.
2019-06-21 14:51:55 -02:30
thrust26 9b210cd861 refactor into two separate maps for stick and hats 2019-06-21 10:35:45 +02:00
thrust26 e36003a403 initial changes 2019-06-20 14:13:59 +02:00
thrust26 a83e9e0aa8 eliminating some magic numbers in joystick handlers 2019-06-19 21:58:39 +02:00
thrust26 ad3e1e9a65 Merge branch 'master' of https://github.com/stella-emu/stella 2019-06-17 21:05:48 +02:00
thrust26 d2f6ae67d9 fix #353 2019-06-17 21:05:31 +02:00
Stephen Anthony 5bffbb5046 Minor refactor for PKeyboardHandler WRT 'Alt' functionality. 2019-06-17 11:58:37 -02:30
Stephen Anthony 9b04d70a98 Refactoring: remove obsolete 'myEvent' from PKeyboardHandler. 2019-06-16 17:47:52 -02:30
thrust26 0b80e82cfd remove superfluous includes 2019-06-16 20:05:01 +02:00
thrust26 5704589004 Merge branch 'master' of https://github.com/stella-emu/stella 2019-06-16 19:52:29 +02:00
thrust26 f05804844a refactor CompuMate key handling (uses events now too) 2019-06-16 19:52:14 +02:00
Stephen Anthony 3da04a63c0 Some UI code refactoring.
Since 'repeat' is now enabled below the UI level, we no longer need to track key presses.
2019-06-15 19:58:45 -02:30
thrust26 e0be318154 make prompt tab initial tab in debugger
fix Dialog class for R77
2019-06-15 14:47:12 +02:00
thrust26 bf0f6800f9 fix #492 2019-06-15 13:10:02 +02:00
thrust26 2703143bcd Merge branch 'master' of https://github.com/stella-emu/stella 2019-06-15 12:10:28 +02:00
thrust26 42d6e70dfd refactor controller dependent mappings 2019-06-15 12:10:00 +02:00
Stephen Anthony 8cabc33723 Fix minor warnings from clang.
Minor formatting fixes.
2019-06-14 17:31:04 -02:30
thrust26 f1dd411a8f fix #490 2019-06-14 21:49:39 +02:00
thrust26 c575dfd803 enable mapping start on double-click code 2019-06-14 20:03:58 +02:00
thrust26 c621073718 improve hash function (~33% less collisions) 2019-06-14 17:49:30 +02:00
Thomas Jentzsch a8b1df2bd8 fix broken VS project filter file 2019-06-14 09:32:34 +02:00
Thomas Jentzsch a236ea34eb fix missing UI event display 2019-06-14 09:07:42 +02:00
thrust26 42906c2a95 align help wording to other code and doc 2019-06-13 21:45:37 +02:00
thrust26 142f1e285c HelpDialog display remapped keys 2019-06-13 21:39:03 +02:00
thrust26 d12db9a421 fix Event::VERSION (no reason for a change) 2019-06-13 00:01:37 +02:00
thrust26 5bd648bd62 add autoslot event and default mapping
fix autoslot message
2019-06-12 23:58:44 +02:00
Stephen Anthony 1d8cf77442 Fix invalid C++ code (use range-based FOR loop). 2019-06-12 13:10:02 -02:30
thrust26 98a8553f23 implement separate keyboard mappings for joystick, paddles and keyboard controllers
update doc accordingly
2019-06-12 16:48:41 +02:00
Stephen Anthony d21bfe2fec Fix initialization error in DPC+ scheme (fixes #489). 2019-06-12 09:54:40 -02:30
Stephen Anthony d12b937f24 File extensions used by BS autodetect can now use longer that 3-char extensions. 2019-06-11 14:35:01 -02:30
Stephen Anthony de42b6b791 Fix signed/unsigned warning in clang. 2019-06-11 13:37:55 -02:30
Stephen Anthony c6525e201c Fix dirty framebuffer issues in fullscreen TIA mode.
This requires some testing, since it potentially causes slowdowns on older systems.
I cannot find any difference on my test system (and documentation I've read seems to imply
that you should clear the screen before each update, and that it is very fast on most hardware).
2019-06-08 23:01:59 -02:30
Stephen Anthony 91312de167 PopupWidget/ContextMenu is now dynamic; one can add items after it is created. 2019-06-08 22:30:19 -02:30
funbars 6155e150ae libretro: avoid windows lto crash 2019-06-08 18:59:06 -02:30
Stephen Anthony fef18503e5 Make sure properties database is correctly read on startup (fixes #475). 2019-06-08 18:17:25 -02:30
Stephen Anthony c2c3c973ed Fix PopupWidget/ContextMenu not positioned correctly in fullscreen mode.
Refactored Rect class.
2019-06-03 19:28:56 -02:30
thrust26 4f28ad5b03 add option to automatically save states when exiting emulation 2019-06-03 21:55:40 +02:00
Stephen Anthony 3c5da50a9f Fix UI drawing modes when overlaid on TIA image. 2019-06-03 17:09:07 -02:30
Stephen Anthony c4c735372b libretro: fix build for obsolete method. 2019-06-03 16:09:45 -02:30
Stephen Anthony 689b736fda Dialogs drawn outside the underlying basedialog area no longer leave parts around.
There is still some work TODO for TIA mode; that is coming next.
2019-06-03 14:32:59 -02:30
Stephen Anthony d62912a0e2 Fix parsing of stella.pro => DefProps: joystick entries were being removed. 2019-06-02 17:08:30 -02:30
Stephen Anthony 637f7648a3 Updated properties database. 2019-06-02 16:52:36 -02:30
thrust26 b815cabf0e remove now superfluous "hardcoded" message in InputDialog 2019-06-02 18:45:53 +02:00
Stephen Anthony 97886474d4 Fix compiler warning. 2019-06-02 10:22:26 -02:30
thrust26 4bc1b5a768 enhance Rewind/UnwindPause events 2019-06-02 14:07:42 +02:00
thrust26 c8d7054c96 handle debugger relevant keys which cannot be remapped first 2019-06-02 12:57:04 +02:00
thrust26 03483f4b82 Enable switches handling in debugger 2019-06-02 12:32:25 +02:00
thrust26 510ea2bcb5 fix #486 2019-06-02 12:15:13 +02:00
thrust26 e3af5f70a5 make emulation key mappings available in debugger 2019-06-02 11:41:37 +02:00
thrust26 974db3b67d fix #295 2019-06-02 10:34:46 +02:00
thrust26 1560edc95f add overscan message
fix scanlines message
2019-06-02 09:32:26 +02:00
thrust26 9dc91bd38b add overscan hotkeys
remove ystart hotkeys
update doc
2019-06-02 09:21:20 +02:00
thrust26 1df63a6410 several debugger buttons repeat 2019-06-02 00:21:49 +02:00
thrust26 d352068a03 wind buttons in TimeMachineDialog repeat 2019-06-02 00:15:27 +02:00
thrust26 3e4ff679c2 Merge branch 'master' of https://github.com/stella-emu/stella 2019-06-01 23:13:08 +02:00
thrust26 b54b7db92b prevent that repeated keys are going to emulation core 2019-06-01 23:12:50 +02:00
Stephen Anthony 7d23884bf3 Remove key repeat functionality from DialogContainer.
It is now provided by the backend (SDL) directly.
2019-06-01 18:41:38 -02:30
thrust26 ebb1bad61c change scanlines hotkey delta to 2
fix scanline underflow
2019-06-01 22:38:16 +02:00
thrust26 b5eb32fbbf allow repeat for selected keyboard events 2019-06-01 22:29:18 +02:00
thrust26 210b4a1011 add 4th modifier key (windows/option) to allowed mappings 2019-06-01 19:05:33 +02:00
thrust26 b3aa34964c fix MacOS modifier naming, 2nd try 2019-06-01 00:36:11 +02:00
thrust26 8b4c3c9115 fix MacOS modifier naming 2019-06-01 00:33:19 +02:00
thrust26 613c442144 attempt to fix CMD key mapping in MacOS 2019-06-01 00:23:38 +02:00
thrust26 af45bdaa3a doc update
save all states now saves ALL states
2019-05-31 22:30:56 +02:00
thrust26 de5677b4e4 fix crash when TM is disabled 2019-05-31 16:26:52 +02:00
Stephen Anthony fe825c5cc1 Update recent commit to use C++ functionality (unique_ptr and streams).
- fixes compile error in Linux and some libretro builds
- fixes issue #485
2019-05-31 11:38:19 -02:30
thrust26 33c7377f76 implement saving/loading all TM states to/from disk 2019-05-31 14:44:46 +02:00
thrust26 354bb068fc refactor 'ctrlcombo' into 'modcombo', suppresses all modifier key combinations 2019-05-30 12:31:34 +02:00
thrust26 2dda6c24df use event version check for joymap too 2019-05-30 11:16:07 +02:00
thrust26 50cf100d58 allow all events for combos
check event list version when loading keymaps & combomap
2019-05-30 10:18:35 +02:00
thrust26 6485c5932a add new StartPause event (e.g. useful for combos)
fix some code
2019-05-30 08:59:33 +02:00
Stephen Anthony 334e9b0108 Revert "Make Common::Point use non-negative dimensions, like the other classes in Rect."
Seems I should do more testing before committing code ...

This reverts commit e89b5c4245.
2019-05-29 10:52:39 -02:30
Stephen Anthony e89b5c4245 Make Common::Point use non-negative dimensions, like the other classes in Rect. 2019-05-29 09:16:13 -02:30
thrust26 5290878ac2 fix ComboDialog width 2019-05-28 23:28:47 +02:00
thrust26 0ea18178c6 redefine a few default keys (in TV effects and toggle bits/collisions)
reorder listing of emulation actions according to documentation
update documentation
2019-05-28 23:02:02 +02:00