Commit Graph

2688 Commits

Author SHA1 Message Date
Christian Speckner 2f9fc4f525 Bug fixing, harcode min ystart to 0. 2018-09-13 23:23:49 +02:00
Stephen Anthony 5bc84bca52 Add 'Cartridge.StartBank' ROM property, to specify the startup bank for a ROM to use.
For now, this only modifies the properties database.  Still TODO is have the app use the information.
2018-09-11 10:23:39 -02:30
thrust26 27022ad3a9 fixes #376 2018-09-11 10:54:39 +02:00
Christian Speckner e129391dbd Fixes, properly handle TV format any ystart changes from GUI. 2018-09-09 23:30:20 +02:00
Christian Speckner ab0e4d6bba Properly handle TV and ystart autodetection during runtime. 2018-09-06 23:47:17 +02:00
thrust26 adc948d806 missed a blank 2018-09-06 17:28:45 +02:00
thrust26 76e3e8305a added current stereo mode and units to logging 2018-09-06 16:49:18 +02:00
thrust26 71eeba70ae aligned the log order to AudioDialog 2018-09-06 16:39:18 +02:00
thrust26 228f57b108 Merge branch 'release/6.0' of https://github.com/stella-emu/stella into release/6.0 2018-09-06 15:39:25 +02:00
thrust26 503d861c2e optimized some tickmarks (number now based on value range) 2018-09-06 15:39:08 +02:00
Stephen Anthony 3df644ecff Buffer size and headrom in sound logging now match that shown in AudioDialog. 2018-09-06 10:38:32 -02:30
Stephen Anthony ce9b832f68 Improvements to logging for sound settings.
- Now shows all settings from AudioSettings (preset, resampler, etc)
- Only logs sound info when the settings have actually changed (similar to Framebuffer info)
2018-09-05 14:05:56 -02:30
Stephen Anthony b4dc729559 Added 'Arkyology' prototype ROM to properties database. 2018-09-05 12:48:11 -02:30
Stephen Anthony ee643e818b Final refactoring of ZipHandler class. 2018-09-05 12:21:55 -02:30
Stephen Anthony cacb1e3341 Make ZipHandler 64-bit throughout.
- although we will probably never deal with 4GB+ files, the underlying stream-reading code is 64-bit anyway
- fixes warnings in 32 <-> 64 bit conversions in OSX.
2018-09-05 11:14:28 -02:30
Stephen Anthony d04dc49c3d Fix signed/unsigned warning. 2018-09-04 17:23:39 -02:30
Stephen Anthony e625a2f8ab Added C++ version of ZipHandler.
- code is almost completely rewritten, making use of proper C++11
- fixes warning in VS compile about unsafe 'strncpy' function
2018-09-04 17:15:01 -02:30
Stephen Anthony b0aba8ae26 Fix crash when opening ZIP files containing errors (including zero-byte files).
This fixes a regression in behaviour from 5.1.
2018-09-04 11:23:10 -02:30
Stephen Anthony 4edd626a3a Ignore '__MACOSX' directories stored in ZIP files.
Note that this seems to duplicate functionality in ZipHandler; that code is in the process of being rewritten.
2018-09-04 10:17:55 -02:30
thrust26 eee99a43dc Revert "fixed merge error"
This reverts commit 00544ddbe9.
2018-09-02 18:41:52 +02:00
thrust26 00544ddbe9 fixed merge error 2018-09-02 17:53:35 +02:00
Christian Speckner 28f8dcc312 Get rid of strlen_s and strnlen_s, don't drive audio if sound is disabled. 2018-09-01 23:12:52 +02:00
thrust26 492596011a fixed two warnings 2018-09-01 14:20:30 +02:00
Stephen Anthony fe0d29a795 Fix ZIP handling wrt what is a valid filename (take new extensions into account). 2018-08-31 23:29:19 -02:30
Stephen Anthony dce16d6f7c Make all Bankswitch types detectable with specific ROM filename extensions.
Use a map instead of linear search in Bankswitch class.
2018-08-31 22:04:31 -02:30
Stephen Anthony 09b3d980f3 Fixed 'stuck' notes when changing video modes.
This is most apparent in OSX, where toggling windowed/fullscreen mode can sometimes take up to one second,
and any sounds playing from the ROM become stuck until the operation completes.
Also present on other systems to some extent.
Sound is now muted until the operation is complete.
2018-08-31 20:52:56 -02:30
Stephen Anthony baadecc866 Update VS project file for recent classes. 2018-08-31 20:19:13 -02:30
Stephen Anthony 01a7e71faf Updated Xcode project file for recent classes. 2018-08-31 20:07:56 -02:30
Stephen Anthony 404ab8ffcc Minor optimization in settings file parsing; don't copy a few strings. 2018-08-31 16:32:12 -02:30
Stephen Anthony 6b76031234 Fix error in parsing settings file for 'empty' values. 2018-08-31 16:15:38 -02:30
Stephen Anthony 020d8b18c2 Remove ellipses from LauncherDialog options that don't lead to a dialog. 2018-08-31 15:46:33 -02:30
Stephen Anthony 65d23b4a6e Removed 'launcherexts' and associated LauncherFilterDialog.
Introduced 'launcherroms' argument, which specifies to show only ROMs or all files in the launcher.
This functionality is tied to a RMB context menu in the launcher; eventually we may add a checkbox to the UI for it.
2018-08-31 13:51:42 -02:30
thrust26 70ec216d1a updated VS project file 2018-08-31 14:46:00 +02:00
Stephen Anthony f098636965 Fairly large restructuring of the 'BSType' code
- class has been renamed to 'Bankswitch'
- it is now a proper (static) class with namespacing

'Bankswitch' now contains all logic for determing what a proper ROM filename is.
So some functions have moved from LauncherFilterDialog to here (that class will be removed soon).

In the process, implemented issue 261 (file extension determines BS type to use).
2018-08-31 09:18:35 -02:30
Stephen Anthony 731a76e1a9 Make dynamically resizeable dialogs take 95% of available space. 2018-08-29 13:36:01 -02:30
thrust26 6099530ca4 Merge branch 'release/6.0' of https://github.com/stella-emu/stella into release/6.0 2018-08-29 16:41:22 +02:00
thrust26 3b00fe45cd Revert "aspect ration now affects height instead of width"
This reverts commit 0b61a71e58.
2018-08-29 16:39:18 +02:00
Stephen Anthony a2d7ac188b Dynamic dialogs are now correctly sized according to the current window size.
- This fixes issue 367, and allows Logger and Browser dialogs to be displayed
2018-08-29 11:40:21 -02:30
thrust26 0b61a71e58 aspect ration now affects height instead of width
fixes #368
2018-08-29 16:01:01 +02:00
thrust26 dc630b4dd6 Revert "fixed #367"
This reverts commit 79fd588f8a.
2018-08-29 15:37:10 +02:00
thrust26 e9a6deee70 reversed aspect ratio settings for NTSC50, PAL60 and SECAM60 2018-08-29 15:28:24 +02:00
thrust26 7dd433a116 fixed size of `BrowserDialog` (may be refactored) 2018-08-29 15:05:36 +02:00
thrust26 79fd588f8a fixed #367
made logger dialog slightly smaller (95%)
2018-08-29 14:50:31 +02:00
thrust26 5365fc5c5e removed (*) in AudioDialog and screenshots 2018-08-29 14:04:16 +02:00
Stephen Anthony fb07d250d9 Simplify AudioSettings class a little.
- Use only one c'tor, which fixes some warnings from Coverity
- Fix large compile times when AudioSettings class is changed
2018-08-29 09:10:55 -02:30
Stephen Anthony dc4fc5c8d2 More fixes from cppcheck. 2018-08-29 08:55:07 -02:30
Stephen Anthony 6093bf8375 Fix signed/unsigned conversion warning in VS. 2018-08-28 22:32:56 -02:30
Stephen Anthony 46b07d14b5 Fixes for warnings from Coverity. 2018-08-28 22:13:02 -02:30
Stephen Anthony 0f8dc1f2bb Yet more fixes for warnings from cppcheck. 2018-08-28 17:00:00 -02:30
Stephen Anthony 7e4dc350f0 More fixes for suggestions from cppcheck. 2018-08-28 16:19:50 -02:30
Stephen Anthony 558b071fbb Some more fixes for warnings from cppcheck. 2018-08-28 14:21:01 -02:30
Stephen Anthony e5fb010631 Allow sound sample rate/fragment size to change dynamically.
- Move sound debugging output to logging facilities
- This should fix issue #348, but more testing is required

Bumped version # for beta release.
2018-08-28 11:01:52 -02:30
Stephen Anthony 13b9bbe5a4 More M6502 micro-optimizations. 2018-08-27 13:47:22 -02:30
Stephen Anthony c901f282bb A few micro-optimizations in the 6502 emulation (found by cppcheck). 2018-08-27 12:17:22 -02:30
Stephen Anthony 8c7488914d Fix some warnings generated by cppcheck (a C++ linter). 2018-08-27 11:09:03 -02:30
Stephen Anthony 409fa49aae Removed WIP experimental code that causes a crash with Ctrl-c/v. 2018-08-26 09:12:46 -02:30
Christian Speckner eacfb41584 Remove debug code. 2018-08-26 11:14:18 +02:00
Stephen Anthony 2db48ae38b Fixes #332. 2018-08-24 10:12:34 -02:30
Stephen Anthony 7bc320964e Added TimerManager to Xcode project file.
Fixed a few warnings.
2018-08-23 20:37:34 -02:30
thrust26 f58d28089e updated VS project files 2018-08-23 16:50:29 +02:00
Stephen Anthony 2e2984864d Add timer/callback functionality to OSystem.
Previously this was done by SDL_AddTimer, but the new approach is much better:
- it is proper C++ (using std::thread and lambdas)
- It is not tied to the SDL toolkit, which is C-based
Also, re-added logic to reset events ~0.5 seconds after starting ROM emulation; this resets 'hold' events
2018-08-23 11:48:24 -02:30
thrust26 7a94ad0a8c fixed a warning 2018-08-22 15:29:35 +02:00
Stephen Anthony 12b18e5b71 Fix issue #363; too eager pruning in previous commit. 2018-08-22 10:17:53 -02:30
thrust26 90f893b71d aligned help wording to changed dialog wording 2018-08-22 11:54:40 +02:00
thrust26 21b8fa133f dirty fix for #355 2018-08-22 11:10:45 +02:00
thrust26 858d6991ca fixes reversed dev.settings 2018-08-22 09:19:07 +02:00
Stephen Anthony 59fb2214ed Minor code cleanup and fix a warning. 2018-08-21 20:19:55 -02:30
thrust26 797ced56b0 fixes #359 2018-08-21 21:11:25 +02:00
thrust26 5f07ad3cdf more doc updates 2018-08-20 14:01:06 +02:00
thrust26 15e6e50293 fixed #356 2018-08-20 12:35:34 +02:00
thrust26 fb6c827470 added global stereo option to AudioDialog (TODO: use it)
removed '(*)' from AudioDialog (TODO: make everything immediate)
updated -help (this seems broken!)
2018-08-20 11:55:13 +02:00
Stephen Anthony 915e62f466 Fixed a few more warnings, and marked some code for later research. 2018-08-19 22:40:57 -02:30
Stephen Anthony c006b08a6d Disable suggestion to use 'constexpr' IF in VS.
It requires C++17, and we're only up to C++14 for now.
2018-08-19 21:53:57 -02:30
Stephen Anthony 6184d8e130 Improved Common::Base hexadecimal handling:
- Fixed warnings generated by clang about 'nonliteral' format specifiers
- Upper/lowercase hex output (uhex command) now works for BUS/CDF schemes
2018-08-19 21:32:47 -02:30
Stephen Anthony 9037af617d Fix warning in snprintf and g++7 and above. 2018-08-19 20:46:05 -02:30
Stephen Anthony f87e5d73f1 Remove debugging code; it seems like the testing is complete for redraws. 2018-08-19 20:39:55 -02:30
Stephen Anthony 6d5278fe0c Well, that solves the problem of 'constexpr' IF.
This is not supported in C++14, and this is the maximum we can use for now.
2018-08-19 20:23:43 -02:30
Stephen Anthony 24cd6cb219 Use proper C++ code for localtime and related functions. 2018-08-19 19:53:47 -02:30
thrust26 e425d8065f fixed warning in AtariNTSC.cxx 2018-08-19 22:22:05 +02:00
Stephen Anthony 6cd5c9d327 Fix API for TogglePixelWidget to properly use ColorId datatypes. 2018-08-19 17:03:54 -02:30
Stephen Anthony 4a2a07d5a7 Fix warning in VS; make comparison use constexpr. 2018-08-19 17:03:09 -02:30
Stephen Anthony 51b27340fd Fix warnings detected by clang. 2018-08-19 16:27:59 -02:30
Stephen Anthony e3bf1ffbd5 More updates to Visual Studio compiler settings:
- Increase warning level to 4, and fix a few new warnings
- Globally, all files are now explictly compiled in C++ mode
- For png and zlib code (that we didn't write), drop back to level 2
warnings and explicitly compile in C mode
2018-08-19 15:01:03 -02:30
Stephen Anthony 56437c38e6 Increased warning level in Visual Studio compiles.
Also fixed some new warnings that VS now finds.
2018-08-19 12:34:40 -02:30
thrust26 8b156dc43d minor GlobalPropsDialog polishing 2018-08-19 13:58:05 +02:00
thrust26 73733801e4 small design fixes for GlobalPropsDialog 2018-08-19 10:09:37 +02:00
thrust26 67785c34c5 made upper and lower case more consistent 2018-08-19 10:08:11 +02:00
thrust26 eefa196f0d updated doc for moved lauchner snapshot path widgets
renamed "image" into "snapshot" (this may have to be repeated when the lib gets updated)
2018-08-18 21:56:47 +02:00
thrust26 810b854428 Merge branch 'release/6.0' of https://github.com/stella-emu/stella into release/6.0 2018-08-17 21:02:42 +02:00
thrust26 f12c4bb485 adjusted SnapshotDialog size to removed widget 2018-08-17 21:02:31 +02:00
Stephen Anthony c05fa1989f Fix compile error in clang; something to do with unique_ptr can't have default d'tor. 2018-08-17 16:31:05 -02:30
thrust26 13c616c4c8 moved ROM viewer image path settings into UIDialog 2018-08-17 20:44:50 +02:00
Stephen Anthony 7ae6d84739 Completely remove ability to use a per-ROM properties file.
This 'feature' now seems unnecessary, and it complicates the code by having it.
2018-08-17 13:56:08 -02:30
thrust26 77c8da55f3 fixed UI dialog defaults
updated UI dialog docs
2018-08-16 19:20:14 +02:00
Stephen Anthony 31acc92bbe Fix crashes when changing toggling fullscreen/windowed mode.
- Only allow such changes when in emulation mode, or a few other common ones (launcher, debugger)
  The idea is here that some dialogs have to be resized/repositioned when such a mode change occurs, and the UI core doesn't currently support that.
- Only render surfaces when they are visible (sounds logical enough, but the code didn't check for it).
2018-08-15 13:33:08 -02:30
Stephen Anthony c2ce29ed78 Fix minor warning from clang. 2018-08-15 12:25:57 -02:30
thrust26 9ec6b0816d fixed #351 2018-08-15 15:28:09 +02:00
thrust26 f03af75c2c renamed 'Frame stats' into 'Console info overlay' 2018-08-15 14:46:37 +02:00
thrust26 9082eefd62 minor polishing to auto-detected value display 2018-08-13 15:45:28 +02:00
thrust26 c566256373 display auto-detected values in GameInfoDialog 2018-08-13 13:12:29 +02:00