thrust26
24602b4f53
prevent exiting command dialog with toggle key when using minimal UI
2019-05-03 19:34:39 +02:00
Stephen Anthony
83a3bdd6cd
GUI support is now conditional in Stella. This is enabled by default for all ports except libretro.
...
- When disabled, it also disables the debugger and cheatcode support
- UI-wise, this reverts Stella to 1.x functionality (before any internal UI was added)
- Eliminates 47000 lines of code for those ports (like libretro) that don't need it.
2019-05-02 17:58:39 -02:30
Christian Speckner
ff8b9b41d4
Revert "Remove R77 save logic, make most R77 settings temporary ot exclude them from persistence."
...
This reverts commit 51f38840e0
.
2019-05-02 01:10:43 +02:00
Christian Speckner
51f38840e0
Remove R77 save logic, make most R77 settings temporary ot exclude them from persistence.
2019-05-01 23:25:15 +02:00
Christian Speckner
8e22dc52b4
Log via Logger singleton, fixes races between logging and OSystem teardown.
2019-05-01 23:14:16 +02:00
Stephen Anthony
8a0591698a
Directories need to be created on initial startup, not when loading config files.
2019-05-01 18:00:14 -02:30
thrust26
d4479f4e43
allow to position dialogs centered and in corners
2019-05-01 17:19:40 +02:00
Christian Speckner
0e6e54f15c
Save settings immediatelly on sqlite and macos.
2019-05-01 12:04:09 +02:00
Christian Speckner
017c2a7c16
Final refactoring & cleanup to generalize sqlite handling.
2019-05-01 11:42:22 +02:00
Christian Speckner
4d0da9b8e7
Merge branch 'master' into sqlite
2019-04-29 00:50:30 +02:00
trinemark
f69cc5cb6c
libretro: make getRAM const
...
use shadow ram copy for frontend
2019-04-28 18:33:44 -02:30
trinemark
3f9ca310c3
libretro: getRAM conditional compile
...
temporary workaround
2019-04-28 16:48:50 -02:30
trinemark
2284dc7f55
libretro: add achievements
...
http://retroachievements.org/gameList.php?c=25
2019-04-28 16:48:50 -02:30
thrust26
75650f1930
add option to switch settings mode in minimal UI
2019-04-27 21:07:18 +02:00
Christian Speckner
f9554ee3df
Hook up SQLite in build system, scaffold SQLite repository.
2019-04-26 23:08:55 +02:00
Stephen Anthony
35ca8edbaf
More fixes for ZIP_SUPPORT
...
- add extra commenting in FSNodeZIP concerning why another node is needed
- exclude zip files from the ROM launcher when ZIP_SUPPORT is disabled
2019-04-25 22:26:14 -02:30
Christian Speckner
126464f66f
Switch MacOS to SettingsRepository, fix clash between bspf.hxx and Cocoa.
2019-04-26 00:23:53 +02:00
Stephen Anthony
dd09187fc0
In the TIA class, isolate developer settings and re-apply them on each state load.
...
Eliminates saving of certain variables into the state file which really don't belong there.
2019-04-24 20:00:05 -02:30
Stephen Anthony
ea89ef01b4
Refactor DPC+ code wrt 'jitter'. The code and commenting now properly indicates that it is
...
a difference in mask values, and not actually jitter (TV 'jitter' effect is actually something else,
and is not causing the screen shaking here).
2019-04-24 17:11:37 -02:30
Stephen Anthony
2cf88abb99
Remove compile error in VS 2019 wrt std::min.
...
Refactor libretro code to no longer need SDL and ZLIB stub headers.
2019-04-24 16:11:30 -02:30
Stephen Anthony
00e464afc3
Enable conditional compilation for ZIP/zlib support.
2019-04-24 15:36:20 -02:30
thrust26
c3483d1553
larger fonts in all dialogs when using minimal UI
2019-04-23 20:08:03 +02:00
Christian Speckner
6c1efce278
More TIA documentation.
2019-04-22 23:24:41 +02:00
Stephen Anthony
7b2ca28306
Disable 'jitter' effect in older DPC+ driver versions ( fixes #429 ).
2019-04-21 21:56:54 -02:30
Stephen Anthony
e865cde07b
Re-enabled PNG support for Xcode, and fixed minor warnings.
2019-04-21 21:02:30 -02:30
Stephen Anthony
eb13d515fb
Enable conditional compilation for PNG support. Some ports (libretro) don't need it at all.
2019-04-21 20:07:56 -02:30
Stephen Anthony
32d90c1935
Removed '-Wno-double-promotion' from the build flags.
...
This necessitated fixing float -> double promotions in several places in the code.
In most cases, double was never being utilized anyway, so there was a slight performance hit for casting when not required.
2019-04-21 15:10:07 -02:30
Stephen Anthony
36da2bcabc
Make sure fullscreen TIA modes actually use real fullscreen dimensions.
...
Previously, they would sometimes use desktop dimensions, and on current versions of SDL,
this would exclude areas meant for taskbars, etc. So the resulting image was smaller than it should have been.
2019-04-20 18:23:50 -02:30
Stephen Anthony
efb196224a
Minor refactoring.
2019-04-20 17:34:10 -02:30
trinemark
cae32b0b3f
add libretro port
2019-04-20 17:06:25 -02:30
Stephen Anthony
bf865e37ab
Move ROM properties normal enum to 'enum class'; this actually spread to other issues:
...
- properties names for 'Cartridge' changed to 'Cart'; this can speed up processing
- fixed several bugs in stella.pro (missing newlines)
- fixed 'create_props'; now it works from either the base directory or the tools directory
Reworked properties database names
2019-04-20 15:42:46 -02:30
thrust26
18babfc7a5
Merge branch 'master' of https://github.com/stella-emu/stella
2019-04-18 22:16:14 +02:00
thrust26
ae0d2c64d8
add Genesis controller detection for Super Cobra Arcade and Scramble
2019-04-18 22:15:58 +02:00
Christian Speckner
9385117723
Move inlined sprite tick logic to improve readability.
2019-04-15 12:06:41 +02:00
Stephen Anthony
5dde762b85
Changed 'tia.fsfill' option to 'tia.fs_stretch'.
2019-04-14 14:57:28 -02:30
Christian Speckner
d394dd876d
Turn warnings in XCode to 11, pacify warnings.
2019-04-14 18:25:02 +02:00
Stephen Anthony
56ad3a6ea1
Turned off patching support in 3E+ scheme.
...
This class is still a WIP, and doesn't work for all test ROMs. So it doesn't make sense to work on this part until we can dedicate more time to it.
2019-04-14 13:16:52 -02:30
thrust26
937ecca8c1
aligned Booster Grip buttons naming
2019-04-14 16:20:09 +02:00
Stephen Anthony
d54f106a3a
And yet more 'enum' cleanups.
2019-04-13 22:44:23 -02:30
Stephen Anthony
4d99772a10
More 'enum class' conversions.
2019-04-13 22:26:53 -02:30
Stephen Anthony
535fffdc46
More conversions from 'enum' to 'enum class' and 'constexpr'.
2019-04-13 21:35:29 -02:30
Stephen Anthony
53b6a2ef89
Converted some more 'enum' to 'enum class'.
2019-04-13 20:57:46 -02:30
Stephen Anthony
c80e2340ea
Add mappings for increasing and decreasing current vidmode.
...
Map the R77 F13 key to the former.
Some refactoring of the mapping code in PKeyboardHandler and EventHandler.
Some refactoring of the VidMode handling in FrameBuffer.
Option 'tia.fsfill' is now used to select 4:3 vs. 16:9 mode in fullscreen.
2019-04-08 18:44:27 -02:30
Stephen Anthony
368159a598
Add default key mappings for R77 at a lower level
...
- this allows to always reset to known working settings
- we no longer need a specific keymap in SettingsR77, so it is removed
Add action that can switch between fullscreen normal or stretched modes
- this is the 'tia.fsfill' option, that is currently only change-able from the UI
- still need to add infrastructure to actually do this
Fixed minor compile warning.
2019-04-07 14:41:58 -02:30
thrust26
fe398360fb
fixed endless loop when saving snapshot in Pause mode
2019-04-06 19:43:15 +02:00
thrust26
372ecf0608
made 'checkBounds()' non-virtual and protected, using uInt32
2019-04-06 15:42:57 +02:00
Christian Speckner
83c8b74800
Fix regression in collision handling.
2019-04-06 12:33:50 +02:00
thrust26
0d1848dcda
added surface boundary check
2019-04-06 12:11:03 +02:00
thrust26
b62a33607c
Merge branch 'master' of https://github.com/stella-emu/stella
2019-04-06 10:50:32 +02:00
thrust26
8fe00ff523
improved joystick detection (for future games)
...
restored properties for my old Missile Command trackball hacks
added Genesis controller properties for Scramble and SuperCobra Arcade
2019-04-06 10:50:07 +02:00
Stephen Anthony
8c3741fc97
Updated ROM properties.
2019-04-06 00:20:36 -02:30
Stephen Anthony
c96d97c8e8
Set default TIA aspect to 100% for both NTSC and PAL.
...
This is in the process of being reworked, and may disappear eventually.
2019-04-06 00:05:00 -02:30
Stephen Anthony
a44e9bd80e
Added 'Amoeba Jump' to the properties database.
2019-04-05 13:32:06 -02:30
thrust26
ea4d010422
updated for Synthcart controller detection
2019-04-05 15:04:31 +02:00
thrust26
f716bc47a7
removed auto detected controllers (per game!) from Stella.pro
2019-04-05 12:50:47 +02:00
thrust26
2ad206eac1
improved joystick and genesis detection
2019-04-05 12:38:17 +02:00
thrust26
14b22d185b
updated audio docs
2019-04-05 09:48:03 +02:00
Thomas Jentzsch
3f5440bb24
some minor UI cosmetics
2019-04-04 10:56:39 +02:00
Stephen Anthony
be775b53e3
Made TIA window always open at a multiple of the minimum bounds
...
- this means that 320x240 is now the default 'base' size, and zoom levels are based on that
- the TIA image is rendered into whatever sized window is active, meaning that NTSC and PAL modes now look similar
Removed some 'small screen' dead code in FrameBuffer.
2019-04-03 20:27:30 -02:30
thrust26
285583f959
removed option to disable scanline interpolation
2019-04-03 23:37:28 +02:00
thrust26
db833249df
made scanlines available in non-Blargg modes
2019-04-03 18:32:42 +02:00
thrust26
e2f5be4725
Phosphor and scanlines levels: 0 displayed as 'off'
2019-04-02 18:16:04 +02:00
Thomas Jentzsch
ff65426954
safety fix for unusual small ROMs.
2019-04-01 16:03:14 +02:00
Christian Speckner
b289232002
Fix starfield regression.
2019-03-31 22:09:10 +02:00
Stephen Anthony
2bb633800c
First pass at getting keymap working again for R77.
2019-03-31 16:42:48 -02:30
Stephen Anthony
70748f3619
Fix off-centered TIA image on R77.
2019-03-31 16:09:14 -02:30
Stephen Anthony
76131a0e73
Minor changes in M6532 naming to match what used in other classes.
2019-03-29 22:34:27 -02:30
Stephen Anthony
e6e337cd02
Fixes for previous commit; remove indirection and inherit directly from ControllerLowLevel.
2019-03-29 21:07:20 -02:30
Stephen Anthony
cfe79ec0b1
Major changes to controller infrastructure.
...
Basically, separate high-level read/write from low-level set/getPin methods.
2019-03-29 20:47:24 -02:30
thrust26
39884db86f
refactored/renamed key state parameters (pressed vs. released)
2019-03-29 23:49:29 +01:00
Thomas Jentzsch
6f51b6039d
renamed and refined StellaSettingsDialog
...
added to OptionsDialog for testing
2019-03-29 13:42:47 +01:00
Christian Speckner
2e2b37396d
Playfield comments.
2019-03-24 21:15:02 +01:00
Stephen Anthony
0d34de269c
Finalized 'basedir' and 'baseinappdir' in Windows.
...
- This still needs some testing and doc updates, but it seems to be
working great
- Hopefully people will now stop asking for this feature
2019-03-24 16:31:16 -02:30
Christian Speckner
d7662427fc
Typo.
2019-03-19 21:23:14 +01:00
Christian Speckner
81eeec5fae
Adapt access checks to modified BSS section.
2019-03-19 21:08:35 +01:00
thrust26
7973140c5a
refactored and split CartCDFWidget.cxx (see CartCDFInfoWidget.cxx)
2019-03-19 20:44:38 +01:00
Christian Speckner
383424983a
Update memory layout for CDFJ, adapt debugger widget.
2019-03-18 22:30:46 +01:00
Stephen Anthony
12d8ed570d
Fix minor warning in VS.
2019-03-16 16:24:24 -02:30
Stephen Anthony
b8393a22a1
Updated Xcode for recent class additions.
2019-03-16 16:08:17 -02:30
Christian Speckner
59a7cbbc5e
Support CDFJ / fastjmp2
2019-03-13 22:30:20 +01:00
Stephen Anthony
93a07b4517
Remove setting 'fixed' height from frame-manager completely.
2019-03-10 16:49:11 -02:30
Stephen Anthony
d09b6329c9
Consolidate some constants into actual enumerations/namespaces.
...
- Certain parts of the code referred to int literals, when they should use named constants instead
- Different classes had enumerations for the same quantities; this is now fixed
- Basically, TIAConstants and FrameBufferConstants now contain all constants, and their relationship is clearly indicated (previously it wasn't as clear)
2019-03-10 15:19:30 -02:30
Stephen Anthony
9a8e5a3a33
Fix Thumbulator conditional handling of some opcodes.
2019-03-10 11:59:07 -02:30
Stephen Anthony
0e9915823d
Remove redundant check for controller 'Auto' type.
2019-03-09 20:04:51 -03:30
Stephen Anthony
e61caf069b
Fix warnings under gcc and clang, both in normal compilation and R77 mode.
2019-03-09 19:40:45 -03:30
Stephen Anthony
14567207ff
Fix minor warnings that come up in g++ and not clang, and fixes for which cause warnings in the other compiler.
2019-03-09 18:01:38 -03:30
Stephen Anthony
a5ca6b8ca5
Start of purging 'Display_Height' from the codebase.
...
- We've already removed it from the UI, now it's removed from consideration altogether
- For now, NTSC ROMS use 240, PAL 250; this will change when we get aspect ratio working
2019-03-09 16:27:33 -03:30
Stephen Anthony
91c98ceed2
Converted another plain enum to 'enum class'.
2019-03-09 16:02:43 -03:30
Stephen Anthony
51981d633d
When compiled for R77, use 'minimal_ui' mode.
2019-03-09 14:35:22 -03:30
thrust26
9b6cae5684
Minor fixes for 3E+
2019-03-05 20:22:08 +01:00
Stephen Anthony
61828ac695
Don't create an empty 'stella.pro' file when possible.
...
- Not a big deal, but several people are complaining when 'ghost' files are created
- If file doesn't already exist and there is nothing to add, simply don't create one
- Alternatively, we should delete the file if it's zero-sized, but that requires changes to FSNode.
2019-03-04 20:12:21 -03:30
Stephen Anthony
9f6b91cff6
Completely remove OSystem/FrameBuffer/Settings dependency on AVox/SaveKey.
...
- Added a new callback that enables sending messages back to the parent (Console)
2019-03-03 22:03:44 -03:30
Stephen Anthony
3b15f8da5d
Move SerialPort declaration/instantiation directly into AtariVox.
...
- This is the only class that uses it, so it makes no sense for OSystem to even care about it
2019-03-03 21:30:53 -03:30
Stephen Anthony
784793cae3
Fix compile warnings from clang8; this class still needs more work though.
2019-03-03 15:18:58 -03:30
Stephen Anthony
abc3b3a32b
Fix warnings generated by clang 8.
...
- Several more still exist, and are mostly related to C-style code
- It has long been my intent to remove as much C-style code as possible
2019-03-02 12:06:08 -03:30
Christian Speckner
d04b5dd64b
More inlining for performance.
2019-03-02 00:08:22 +01:00
Christian Speckner
2a9bfd6b23
Optimizations to TIA movement mode.
2019-03-01 23:35:52 +01:00
Christian Speckner
2b19f4ab5e
Use ystart / layout autodetection and real FrameManager in profiling run.
2019-02-28 23:56:02 +01:00
Christian Speckner
ac398ac31b
Profiling.
2019-02-27 23:41:08 +01:00
Christian Speckner
1ba1332501
Fix fallout from rebase.
2019-02-27 22:44:11 +01:00
Christian Speckner
05260ca006
More refactoring: remove dependency of System on OSystem.
2019-02-27 22:40:25 +01:00
Stephen Anthony
e7169ac010
Completely removed OSystem dependency for Cart classes.
2019-02-26 21:37:35 -03:30
Stephen Anthony
61cf68cb98
Move `getTicks()` from OSystem to TimerManager.
...
- This allows OSystem dependency to be removed in a few places (WIP).
- It more properly belongs in TimerManager, which has other functionality related to std::chrono.
- Historically this was a virtual method in OSystem, since different ports implemented it differently. Now that we use proper C++11 code, it doesn't need to be there anymore.
- Changed from a virtual call to a static call, so it's probably even a little faster.
2019-02-26 19:20:28 -03:30
Christian Speckner
85acaef8cd
Refactoring: remove dependency of TIA and M6532 on Console.
2019-02-26 23:43:22 +01:00
Christian Speckner
806045cb1c
Open ROMs for profiling, refactoring.
2019-02-26 22:46:54 +01:00
Christian Speckner
58d7846f6b
Profiling CLI. Wip.
2019-02-25 23:56:57 +01:00
thrust26
a251ccf3d6
another small unsafe optimization
2019-02-25 19:50:33 +01:00
thrust26
d716f42b5c
one small unsafe optimization for register 15
2019-02-25 11:36:42 +01:00
Stephen Anthony
42f9fc88f1
Fixed macOS compilation
...
- Like Windows, the 'basedir' stuff isn't implemented yet
2019-02-24 20:03:29 -03:30
Stephen Anthony
88afab2d22
More restructuring of the OSystem and derived class interaction
...
- Each derived class no longer calls methods from the base class
- The base class now directly queries the derived class with a pure virtual method, making sure it is called
- Implemented 'basedir' commandline argument for Linux
Windows and macOS currently won't compile. I'll work on those next.
2019-02-24 19:14:55 -03:30
thrust26
28d1113523
Thumbulator::fetch16 can fetch only ROM when optimized
2019-02-24 14:39:52 +01:00
thrust26
6f94174989
Merge branch 'master' of https://github.com/stella-emu/stella
2019-02-24 09:24:11 +01:00
thrust26
bb3075947b
segfault Stella protection added
...
some more small optimizations (fetch32 removed)
2019-02-24 09:23:57 +01:00
Stephen Anthony
d5180ba649
Improve variable/method naming in Settings class.
2019-02-23 17:07:50 -03:30
Stephen Anthony
032b08cca1
Fixed compilation errors in macOS. I still need to think about the Settings stuff, though.
2019-02-23 16:02:13 -03:30
Stephen Anthony
814977e968
Cleaned up Settings API, and moved to C++ maps instead of vectors.
2019-02-23 15:21:11 -03:30
thrust26
d188b5024f
one more missing optimization
2019-02-23 19:02:25 +01:00
thrust26
b32d3eba49
oops
2019-02-23 16:09:39 +01:00
thrust26
486494eb7a
defined UNSAFE_OPTIMIZATIONS in Thumbulator
2019-02-23 16:09:00 +01:00
thrust26
bac5a86832
minor Thumbulator optimizations and code cleanup
2019-02-23 12:05:53 +01:00
thrust26
e245655747
Revert "optimized Thumbulator.cxx"
...
This reverts commit 9a09675e55
.
2019-02-22 20:11:19 +01:00
thrust26
38366b65bb
optimized complex conditional branches in Thumbulator (affects ~5% instructions)
2019-02-22 14:50:52 +01:00
Stephen Anthony
130fcf1dfc
Fairly large refactoring of Settings class
...
- Completely separate Settings and OSystem; the former no longer uses the latter at all
- Moved separate Settings methods directly into that class, exposing less info outside the class
- Reworked loading/saving config files; this may break macOS port (not tested yet)
- Next thing TODO is convert Settings class to use map instead of vectors
2019-02-21 21:55:08 -03:30
thrust26
9a09675e55
optimized Thumbulator.cxx
2019-02-21 22:56:18 +01:00
Stephen Anthony
904821cff9
Refactoring of settings load/save functionality
...
- commandline parsing is now done in main function
- loading of settings is handled by OSystem
- settings that are used only in main are not accessible globally
- beginnings of converting Settings class to use map instead of linear arrays
2019-02-20 23:43:29 -03:30
Stephen Anthony
8808f7b5e0
Check in WIP on config paths before I screw something up (already happened multiple times).
2019-02-20 14:06:39 -03:30
Christian Speckner
e80e15538b
Thumbulator optimizations.
...
Pre-decode ROM image and turn instruction dispatch into a switch.
2019-02-20 00:32:48 +01:00
Stephen Anthony
9735806b2f
Partially revert commit for #368 ; we need more work before this can be enabled.
...
Fixes issue with fullscreen TIA image disappearing.
2019-02-18 18:17:08 -03:30
thrust26
2d0221ae1f
improvement for hardcoded keys in Inputdialog
2019-02-18 20:20:14 +01:00
Stephen Anthony
8f800d97b9
First pass at cleaning up the various config file location mess
...
- only 'romdir' is configurable; the rest are now always under the 'basedir'
- next step is to allow 'basedir' to be configurable, and optionally use the APP dir
- ConfigPathDialog dialog is now almost empty (only contains romdir), so perhaps this can move elsewhere
2019-02-16 15:26:24 -03:30
thrust26
3c6b8339e1
a bit controller detection refactoring
2019-02-16 11:46:42 +01:00
thrust26
9fba356d8b
RomInfoWidget auto detects controllers and displays results
2019-02-15 22:19:19 +01:00
thrust26
83636b9791
updated Stella.pro for some of my own games
2019-02-15 17:58:47 +01:00
thrust26
2cc035e4eb
improved keyboard controller detection
...
small doc update
2019-02-15 16:29:13 +01:00
Thomas Jentzsch
7215f2bbeb
changed volume hotkey handling
...
changing volume also enables sound
changing phoshor also enables phosphor mode
2019-02-14 11:07:17 +01:00
Thomas Jentzsch
fa66711c8a
moved SaveKey detection to a safer spot
2019-02-14 08:46:50 +01:00
thrust26
b5fce21b2f
implemented mute Hotkey (TODO: default key)
...
small improvement for Amiga mouse detection
minor Windows project file fix
2019-02-13 20:03:58 +01:00
thrust26
9857fa888b
improve trackball controller detection
2019-02-12 22:18:19 +01:00
thrust26
8855804635
improved SaveKey detection
2019-02-12 19:24:36 +01:00
thrust26
3c2549d348
slightly improved Genesis detection
...
corrected tab widgets in GameInfoDialog
2019-02-11 23:02:08 +01:00
thrust26
a4456e6af8
improved controller detection and added Genesis
...
adapted GameInfoDialog to controller detection
moved detection from OSystem to Console
2019-02-11 22:10:30 +01:00
Stephen Anthony
854a891a36
Minor fixes for compile warnings/errors in Linux.
2019-02-11 11:36:13 -03:30
thrust26
b6b5930a2d
Merge branch 'master' of https://github.com/stella-emu/stella
2019-02-11 15:53:07 +01:00
thrust26
c1067fde83
first shot at automatic controller detection
2019-02-11 15:52:51 +01:00
Stephen Anthony
9d31d4a519
Fixed 'F8' autodetection to be a little more robust.
2019-02-10 10:39:54 -03:30
Stephen Anthony
a1342afe34
Fixed bug in peek handling for 2K and 4K ROMs.
...
This fixes cheatcode handling for those schemes.
2019-01-27 13:13:08 -03:30
thrust26
46f7668216
added missing oddball TIA options
2019-01-16 17:58:02 +01:00
thrust26
bd0984fc98
renamed player inverted HMOVE phase clock option, methods and keys
...
added missile inverted HMOVE phase clock option
2019-01-14 22:52:30 +01:00
thrust26
fad141b5de
some code cleanup
2019-01-13 09:58:26 +01:00
thrust26
0449e24146
defined various TIA types in developer options
2019-01-12 15:51:38 +01:00
thrust26
fee5f57179
disabled some developer options for 'Player settings'
...
updated doc and changes
2019-01-12 12:00:35 +01:00
thrust26
f80f291cec
minor optimizations and formatting
2019-01-10 21:08:12 +01:00
thrust26
e2dabba309
updated serializers
...
added some game names to new TIA settings
2019-01-06 18:04:19 +01:00
thrust26
da269fefed
added TIA tab to developer options with 5 options for oddball TIAs
...
started disabling some options for player settings
2019-01-06 13:48:53 +01:00
thrust26
b5de674c58
added missing prefixes
2019-01-05 23:01:21 +01:00
thrust26
5e89b4d02b
started to eliminate magic numbers in new TIA code
2019-01-05 15:34:19 +01:00
thrust26
5fd3c017f6
added missing serializing
2019-01-05 00:07:45 +01:00
thrust26
f4de083a2b
Extra playfield delay added as Developer option.
2019-01-04 14:18:35 +01:00
thrust26
3f9e82ab79
some minor typo fixes/alignments
2019-01-03 22:46:35 +01:00
thrust26
9e81ad4c13
enabled TimeMachine by default and increased defaults
2019-01-02 10:53:46 +01:00
Stephen Anthony
ebfff85cb6
Fixed nasty C-style string conversion to upper/lower-case.
2019-01-01 15:22:30 -03:30
Stephen Anthony
275666b0af
The annual copyright year update.
2019-01-01 11:35:51 -03:30
thrust26
1f64eecf4e
fixed #401
...
added 7800 related messages for color/pause switches
2019-01-01 13:49:09 +01:00
thrust26
dc978b041a
removed PADDLES_IDIR option (superfluous)
...
fixed properties for 'Dancing Plate (Unknown) (PAL)'
2018-12-31 12:23:23 +01:00
Stephen Anthony
04030757f0
Updated properties to RomHunter v15.
2018-12-28 17:55:15 -03:30
thrust26
b5f5ddefad
(mostly) implemented #326
...
TODO: use empty buttons
2018-12-28 17:42:19 +01:00
thrust26
84300914cc
fixed #397
...
Added SET_LAST_POKE for STA/STX/STY using absolute addressing (frequently used wasting 1 cycle) and PHA.
2018-12-28 12:36:00 +01:00
thrust26
f86ba39c88
initial update for #368
2018-12-27 11:47:41 +01:00
Stephen Anthony
e4a1ba50e6
Final updates for 6.0 release (we hope).
2018-12-22 11:46:54 -03:30
Stephen Anthony
b40a614cee
Rework `Cartridge::initializeStartBank()` to require a specific starting bank.
...
Randomization and reading from properties still work too.
Fixes issues in several ROMs that essentially were getting bank randomization even though it was disabled.
2018-12-20 18:37:27 -03:30
Stephen Anthony
497bfc92db
Added ROM properties for a few ROMs included with the R77.
2018-12-19 17:02:30 -03:30
Stephen Anthony
9c1b9ae00e
Fix bug when taking snapshots in 1x mode; once started, it never stopped.
2018-12-19 14:26:15 -03:30
Stephen Anthony
933c4d7d3c
Mac-related files/folders are now using 'macOS' naming scheme.
2018-12-19 11:46:09 -03:30
Stephen Anthony
6a17467e99
Slight space savings for load/save state.
2018-12-19 10:46:16 -03:30
Stephen Anthony
f33ac273dd
Remove debugging code.
2018-12-18 22:00:01 -03:30
Stephen Anthony
69fb08e30c
Remove '_rwport' from the debugger.
...
The new way of detecting RWP is superior, and we don't have time to rework _rwport to use it.
This may come back in the future (if required), but I honestly don't see a need for it.
2018-12-18 20:56:19 -03:30
Stephen Anthony
d7e9cfc4d0
Fix some warnings from cppcheck.
...
I'll admit that some of these suggestions are of dubious importance, but at least we shut up the tester :)
2018-12-18 20:06:55 -03:30
Stephen Anthony
471cf1ad4d
Updated RWP stuff for 'E7' scheme.
2018-12-18 14:32:49 -03:30
Stephen Anthony
a26288c788
Updated RWP stuff for DASH scheme.
...
Again, this is a relatively untested BS scheme, with only one test ROM available.
2018-12-18 14:04:25 -03:30
Stephen Anthony
70fcd0f3b5
Updated RWP stuff for '3E+' scheme.
...
This is currently mostly untested, since this scheme isn't widespread and has only a few test ROMS.
2018-12-18 10:59:29 -03:30
Stephen Anthony
56669c5449
Convert Cart classes to receive 'md5' parameter.
...
That's an *awful* lot of work to simply pass info to each class :)
2018-12-18 10:24:40 -03:30
Stephen Anthony
dea62573f8
More carts converted to new RWP code.
2018-12-17 21:25:08 -03:30
Stephen Anthony
9aaf8b22b5
Fix wrong address in poke methods in 'SC' schemes.
2018-12-17 20:41:39 -03:30
Stephen Anthony
4ff613b4e9
Converted all the class 'SC' carts to new RWP scheme.
2018-12-17 20:15:11 -03:30
Stephen Anthony
ebe18877f9
Fairly large refactoring of RWP functionality.
...
- abstracted RWP code into Cart base class (only F8SC converted for now)
- RWP now works by analysing RAM accesses before and after each instruction, catching all occurrences
Fixes for compiling without debugger support.
2018-12-17 19:51:28 -03:30
Christian Speckner
9b22c6afa7
Rewrite StaggeredLogger with a timer.
2018-12-15 23:59:21 +01:00
Christian Speckner
5b0b8cd5cb
Summarize audio buffer errors and log them to the main log.
2018-12-15 00:04:38 +01:00
Stephen Anthony
d941ebca09
Added new approach for values used when reading from the write port.
...
Previously these values were from whatever was on the databus, but new testing
indicates that they are semi-random (ie, random, but with some pattern).
The new code bases the values in part on the md5sum of the ROM (for randomization),
but also pre-generates a set number of values (for a pattern).
Currently only F8SC scheme is implemented. The remainder will be done once
we test this one.
2018-12-08 18:05:05 -03:30
Stephen Anthony
5f91532d95
Fix minor clang warning in last commit.
2018-12-08 11:43:35 -03:30
thrust26
1dfc221a1a
fixed RWP by using the last access type
2018-12-08 15:51:16 +01:00
Stephen Anthony
7b4c3dc6b8
In the case of 'read from write port', make sure RAM is modified before exception is thrown.
2018-12-07 21:45:28 -03:30
Stephen Anthony
abfc01b483
Rework trapping on 'read from write port' functionality.
...
The new code introduces a generic 'EmulationWarning' exception that can
be thrown for any reason. The RWP functionality has been ported to use
this, with the main benefit that if we ever have to add new exceptional
cases, we no longer need to modify M6502 class; it will pick up on the
new exceptions and pass them to the EmulationWorker as necessary.
Functionally, the RWP stuff works the same as before, just with a
different implementation behind the scenes.
2018-12-07 21:19:44 -03:30
Stephen Anthony
6a9ae2e3a1
Added exception class for general warnings, separate from the one for fatal errors.
2018-12-07 20:56:48 -03:30
thrust26
ecb6c7a508
Implemented solution for #396
2018-12-07 20:47:06 +01:00
Stephen Anthony
a7f8d67211
Some refactoring of snapshot code for future reference.
2018-12-07 15:22:39 -03:30
thrust26
979977befa
fully implemented #395
2018-12-06 18:51:46 +01:00
thrust26
3733adb39c
better snapshots, part 2 (buggy!)
2018-12-06 16:38:41 +01:00
thrust26
251449cacf
Merge branch 'release/6.0' of https://github.com/stella-emu/stella into release/6.0
2018-12-06 14:25:41 +01:00
thrust26
bef5caafa5
1st part of implementing blended screenshots (see #395 )
2018-12-06 14:24:07 +01:00
Stephen Anthony
26faaa8cce
Minor updates for suggestions from clang.
2018-12-04 20:40:50 -03:30
Christian Speckner
b58d843732
Clear fatal error flag on enetering the CPU main loop; code beautification.
2018-12-05 00:00:01 +01:00
Christian Speckner
f08ba16acb
Handle fatal errors on main thread.
2018-12-04 21:45:14 +01:00
Stephen Anthony
b06893d384
Potential fix for issue #392 (input locked after exiting the debugger).
2018-12-04 13:19:57 -03:30
thrust26
2e4340911b
fixed #394
...
extended trace step count to 10000 (preliminary fix for #393 )
2018-12-02 11:20:10 +01:00
Stephen Anthony
e36692bee3
Minor refactoring in CartDetector class.
2018-11-20 15:39:30 -03:30
Stephen Anthony
f3a185f04a
Fixes for minor warnings from cppcheck.
2018-11-19 11:08:44 -03:30
Stephen Anthony
a8a0c57deb
Updated ROM properties database for missing paddle controllers.
2018-11-19 10:38:34 -03:30
Stephen Anthony
ae2bb58f0b
Added ROM properties for various trakball hacks, thanks to alex_79.
2018-11-16 11:14:10 -03:30
Stephen Anthony
e3873cce73
Moved final remaining bits of SDL-specific code out of src/emucore.
2018-11-13 20:43:12 -03:30
Stephen Anthony
bf8b0b3a88
Updated ROM properties database for several ROMs
...
- Major update is adding 'Chetiry' 60K ROMs info.
2018-10-21 10:11:57 -02:30
Stephen Anthony
cbd30fad02
Fix final clang warnings in Thumbulator.
...
It ended up being much easier than I realized.
2018-09-22 22:58:57 -02:30
Stephen Anthony
f8f3805dae
Fix minor warning from cppcheck.
2018-09-20 22:00:32 -02:30
Stephen Anthony
1bb19a05ba
Restore const for Event class by using 'mutable' mutex.
2018-09-20 21:51:10 -02:30
thrust26
c038df6343
fixed #383
...
if globally enabled, disable game specific stereo and phosphor elements
changed global phosphor value label (Default -> Blend)
2018-09-20 10:20:12 +02:00
Christian Speckner
6d0614ef35
Guard Event.hxx against races.
2018-09-19 23:36:26 +02:00
thrust26
a6a762bbb4
reworked Stereo for all ROMs setting in AudioDialog
2018-09-19 22:24:25 +02:00
Christian Speckner
27956cff15
Fix switching between auto and manual ystart in GUI.
2018-09-17 22:19:33 +02:00
Stephen Anthony
ea31d4b464
Fix crash in BUS/CDF/CM schemes.
...
- bank initialization must happen in Cart::reset(), not the individual c'tors.
2018-09-17 09:38:23 -02:30
Stephen Anthony
56d9bdc163
Add autodetection for 32KB variant of CTY ROM.
2018-09-16 23:13:37 -02:30
Stephen Anthony
7982f7cb9b
Various updates to the 'CTY' scheme, all by SpiceWare:
...
- music support
- autodetection support
- creation of 60K ROMs
For the latter, I still need to see how we will distribute those ROMs, and get them added to the database.
2018-09-16 22:49:33 -02:30
Stephen Anthony
8f03a48f11
Partially restore a reverted commit.
...
- Since changing ystart/height no longer needs to call `TIA::frameReset()`, the method is no longer valid
- Remove the method, and all documentation that says it is necessary to call it
2018-09-16 21:44:17 -02:30
Christian Speckner
888556b124
Another pass at resolving ystart issues. Reverts 02b0c13a
and b9bbbe1
.
2018-09-17 00:23:06 +02:00
Stephen Anthony
31f6dba87d
'Cartridge.StartBank' ROM property is now used by the core.
2018-09-14 20:57:36 -02:30
Stephen Anthony
b9bbbe1381
Fix blank screen after exiting from GameInfoDialog.
2018-09-13 21:38:21 -02:30
Stephen Anthony
d18f11afa2
Remove Serializable::name() method, and all reference to it in state files.
...
- this both speeds up load/save of state files, and makes them smaller
- affects both on-disk files, and Time Machine functionality
2018-09-13 20:50:23 -02:30
Christian Speckner
524943354e
Remove unnecessary frame resets.
2018-09-14 00:34:21 +02:00
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
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
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
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
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
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
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
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
thrust26
3b00fe45cd
Revert "aspect ration now affects height instead of width"
...
This reverts commit 0b61a71e58
.
2018-08-29 16:39:18 +02:00
thrust26
0b61a71e58
aspect ration now affects height instead of width
...
fixes #368
2018-08-29 16:01:01 +02:00
thrust26
e9a6deee70
reversed aspect ratio settings for NTSC50, PAL60 and SECAM60
2018-08-29 15:28:24 +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
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
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
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
Stephen Anthony
12b18e5b71
Fix issue #363 ; too eager pruning in previous commit.
2018-08-22 10:17:53 -02:30
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
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
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
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
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
thrust26
9ec6b0816d
fixed #351
2018-08-15 15:28:09 +02:00
thrust26
4bc3373b37
made UI theme change immediate
2018-08-12 23:01:43 +02:00
thrust26
1fe5cd2b3f
removed non implemented method
2018-08-12 22:48:35 +02:00
Christian Speckner
95867f91cd
Switch to SDL_OpenAudioDevice & friends, fix silence with very tight buffer
...
settings.
2018-08-10 00:46:39 +02:00
thrust26
efb998129b
fixes #342
2018-08-09 15:39:54 +02:00
Stephen Anthony
ae96406fd4
Fix #345 ; color-loss not correctly initialized.
2018-08-09 10:54:26 -02:30
thrust26
1571860dc0
fix #341
2018-08-09 14:55:46 +02:00
Stephen Anthony
8298ad4d26
Fixed inconsistency in passing color data to parameters.
...
- Now uses 'ColorId' as the datatype; this is currently mapped to uInt32, but can change in the future if required
- Eliminates needless and annoying casts in various places; all colors are now 'ColorId' type
2018-08-08 13:09:10 -02:30
thrust26
f7d09c772d
Fixes #339
2018-08-08 09:28:03 +02:00
thrust26
f3927b94c4
Merge branch 'release/6.0' of https://github.com/stella-emu/stella into release/6.0
2018-08-07 09:37:42 +02:00
thrust26
89b0759da5
fix #338
2018-08-07 09:37:25 +02:00
Christian Speckner
337c13882e
Remove redundant code.
2018-08-06 23:45:28 +02:00
Christian Speckner
163b5ca999
Fix a regression in collision handling -> fixes Sky Skipper.
2018-08-06 23:25:33 +02:00
Stephen Anthony
78cb878c29
Fixed minor warning in Xcode.
...
Strange that VS only picked up the other instance of this issue, and neither gcc nor clang found either one.
2018-08-06 18:12:09 -02:30
Stephen Anthony
b68f72dd50
Fix minor warning in Visual Studio.
2018-08-06 18:02:12 -02:30
Stephen Anthony
2406b8ad0f
Use our own RNG instead of C-style rand() (fixes issue #336 ).
2018-08-06 14:28:48 -02:30
Stephen Anthony
d71b33918a
Slight rework of random number generator.
...
- break dependence on OSystem; source for seed could actually be anything (doesn't have to come from OSystem)
2018-08-06 14:18:58 -02:30
Christian Speckner
86a242a8cf
Fix spurious failures of debugger breakpoints.
2018-08-06 17:53:44 +02:00
Stephen Anthony
68eec27c5c
Make FilesystemNode class non-virtual.
...
- this class is never inherited, so it's pointless for it to have virtual methods
2018-08-06 11:14:57 -02:30
Christian Speckner
af5eea286c
Fix debugger start parameters:
...
* Pass parameters from DispatchResult to debugger
* Fix default trap type (= read)
* Remove fallout from branch merge
2018-08-06 09:31:13 +02:00
Stephen Anthony
f2f952f09b
Reworking of the FSNode classes, using smart pointers.
...
- For now, I simply use shared_ptr; long term, I will look into unique_ptr for more efficiency.
2018-08-05 22:32:11 -02:30
Christian Speckner
e07617b618
Merge branch 'release/5.1' into release/6.0
2018-08-05 17:54:22 +02:00
Christian Speckner
4dde01f2f1
Typo; fixes #331 .
2018-08-04 23:38:28 +02:00
thrust26
56979052f9
made GameInfoDialog.Console settings immediate
2018-08-04 12:39:55 +02:00
thrust26
d9a1d2b7e5
trying to fix #328
2018-08-02 22:44:27 +02:00
thrust26
a24e042d1e
changed "FPS" back into "fps"
2018-07-31 17:07:51 +02:00
Stephen Anthony
78d7e9c29a
Fix minor warnings in Xcode.
2018-07-30 22:07:30 -02:30
Christian Speckner
6da398deaa
Display Hz in console time.
2018-07-31 00:07:07 +02:00
Christian Speckner
81f216872d
Update XCode project, fps -> FPS
2018-07-30 23:50:52 +02:00
Christian Speckner
9aeb40fc32
Display speed in OSD without decimals.
2018-07-30 23:40:48 +02:00
Christian Speckner
3a5572d3b9
Add measured FPS to OSD, squash a bunch of minor bugs.
2018-07-30 23:19:47 +02:00
Christian Speckner
89a6cb11d1
Remove busy waiting.
2018-07-26 20:55:47 +02:00
Stephen Anthony
e691853f0e
First pass at fixing superfluous re-draws in the UI.
...
- This addresses issue 158, and reduces CPU usage to near 0% when no changes are happening
- This returns the code to the same performance levels as version 3.x.
2018-07-25 08:48:21 -02:30
Stephen Anthony
949964bdf6
Oops, forgot something in the last commit; do not include header files twice.
2018-07-13 12:35:40 -02:30
Stephen Anthony
c2bfeb5799
Fix compile failure when debugger support is disabled.
2018-07-13 12:31:37 -02:30
Stephen Anthony
1a97c5bc93
Minor updates to Xcode project.
...
Changed uInt32 to uInt64 in several places, standardizing on uInt64 for cycle-related variables.
2018-07-01 23:23:11 -02:30
Stephen Anthony
4329eb5c37
Add missing file in VS project, and fix minor compile warnings.
2018-07-01 21:43:22 -02:30
Stephen Anthony
d8b4228ead
Fixes for minor compile warnings in clang 6 and gcc 8.
...
Sorry that this is all I've been able to contribute for the past few weeks :(
2018-07-01 21:15:15 -02:30
Christian Speckner
258fc9c106
Add missing files, fix XCode build.
2018-07-02 01:06:46 +02:00
Christian Speckner
f728a32731
More timing improvements.
2018-07-02 00:58:32 +02:00
Christian Speckner
621e0d9d79
Compile fix, more accurate timing.
2018-07-02 00:23:07 +02:00
Christian Speckner
c270a45409
Merge branch 'feature/precise-audio'
2018-07-01 23:48:26 +02:00
Christian Speckner
2b23c81126
Support variable emulation speed.
2018-06-27 23:12:50 +02:00
Christian Speckner
5656051aae
Tie in UI.
2018-06-25 00:30:52 +02:00
Christian Speckner
47bbdb679e
Remove unnecessary code, don't spam if audio is disabled.
2018-06-24 22:48:28 +02:00
Christian Speckner
176507cb46
Fix memory corruption on console reset.
2018-06-23 01:18:35 +02:00
Christian Speckner
ef5261689a
Major audio settings overhaul.
2018-06-23 00:58:28 +02:00
Christian Speckner
d127865dee
Remove a leftover from refactoring.
2018-06-19 21:37:18 +02:00
Stephen Anthony
963905759e
Controller/Genesis/Booster cleanup.
...
- Made BoosterGrip set defaults for analog pins, just like Genesis
- Removed superfluous call to update an unchangeable pin in Genesis
- Renamed Controller resistance constants to indicate that they are actually constants
2018-06-12 19:07:31 -02:30
thrust26
60519dbc6a
minor fix for Booster.cxx
...
code cleanup in Genesis.cxx
2018-06-12 20:38:48 +02:00
thrust26
a9cd833975
fixes #317
2018-06-12 20:11:29 +02:00
thrust26
337375a2b2
Merge branch 'master' of https://github.com/stella-emu/stella
2018-06-10 15:10:17 +02:00
thrust26
93e42bc15f
redefined Stella's PAL color palette
2018-06-10 15:10:04 +02:00
Christian Speckner
0fbd875783
Documentation.
2018-06-09 23:16:59 +02:00
Christian Speckner
8781889a7f
Documentation, cleaup, fix race in frame stats.
2018-06-09 00:31:20 +02:00
Stephen Anthony
6cb9efac28
Updated OSX project file for EmulationWorker class.
...
Fixed minor compile warning, and made a method const.
2018-06-07 19:56:36 -02:30
Christian Speckner
8edc597189
Hook and fix up EmulationWorker -> threading works, pick'n'pile is happy.
2018-06-07 23:38:14 +02:00
Christian Speckner
ea94f5e795
Scheduling fixes.
2018-06-07 21:02:08 +02:00
Christian Speckner
d8732c9378
Uups, fix evident error.
2018-06-07 20:59:15 +02:00
Christian Speckner
773a0cf906
Cleanup.
2018-06-07 20:55:33 +02:00
Christian Speckner
afb1e1d1e1
Emulation worker. Currently untested and disconnected.
2018-06-07 20:54:30 +02:00
Stephen Anthony
e0cf1d1dd5
Fix crash in OpenBSD framebuffer/texture cleanup.
...
- It seems that textures must be destroyed *before* the renderer is destroyed
- This isn't mentioned anywhere in the SDL docs, and it works everywhere else, but in any event it is now fixed
2018-06-07 12:46:26 -02:30
Stephen Anthony
cf34707e27
Use smart pointer to store static scanline data in FBSurface.
...
- in working on the OpenBSD crashing issue, I noticed that we can use a unique_ptr here
2018-06-06 17:57:15 -02:30
thrust26
a3955553b8
added missing auto detection for manual selected display format "Auto-detect" (50Hz ROM after 60Hz formats)
2018-06-03 11:39:42 +02:00
thrust26
f37651a46d
fixed missing ConsoleInfo.DisplayFormat update
2018-06-02 17:18:10 +02:00
Stephen Anthony
1eee879e29
Make sure onscreen messages are shown, even when a console doesn't exist.
2018-05-27 16:41:42 -02:30
Stephen Anthony
cc4bd29a03
Fix minor warning (nullptr is the proper C++ constant).
2018-05-27 16:17:12 -02:30
thrust26
f726ad0206
fix #314
2018-05-27 14:31:02 +02:00
Christian Speckner
a5ce457b72
Implement triple buffering in TIA.
2018-05-27 00:26:36 +02:00
Christian Speckner
77f149eab9
Fix stepping after breakpoint.
2018-05-24 00:19:49 +02:00
Christian Speckner
a14cf8d077
Refactoring: start debugger from dispatch loop.
2018-05-24 00:13:43 +02:00
Christian Speckner
ae0faaabfc
Fix cycle counting in CPU.
2018-05-22 00:18:07 +02:00
Stephen Anthony
ec1e65d683
Make Champ Games that use SaveKey use it by default.
2018-05-20 14:33:55 -02:30
Stephen Anthony
02dbbca861
Fixed bug with autodetecting SaveKey controller.
...
- The cycles were being reset to the current system cycles, when in the old
code they were not being updated at all (other than being normalized when the
old system cycles could be running backwards).
- This change restores behaviour to that in 5.0.2.
2018-05-20 14:33:44 -02:30
Stephen Anthony
b8978aa76e
Variables declared as uInt64 should be serialized as such.
2018-05-18 22:55:57 -02:30
Christian Speckner
ed6eae6a67
Rerender only if there is actual change.
2018-05-17 22:56:07 +02:00
Christian Speckner
639b6af1e9
Fix missing audio reset.
2018-05-16 13:09:50 +02:00
thrust26
adbde4e4db
preliminary audio dialog changes
2018-05-15 20:51:29 +02:00
Stephen Anthony
dc77f5d5f1
Variables declared as uInt64 should be serialized as such.
2018-05-12 17:04:33 -02:30
Christian Speckner
f01553bdc7
More audio queue tuning -> less lag.
2018-05-12 16:21:58 +02:00
Stephen Anthony
741515a520
Fix minor compile warnings generated by clang:
...
- mostly change pointer -> 0 to use 'nullptr'
- some commenting and formatting fixes
2018-05-11 21:01:40 -02:30
Christian Speckner
0c67bff939
Tuning, TODO
2018-05-12 00:18:09 +02:00
Christian Speckner
2da0ffa2f5
Rework available sampling rates (44100, 44800, 96000), add resampling.quality parameter.
2018-05-12 00:15:29 +02:00
Christian Speckner
3bac41dd46
Factor out resampling.
2018-05-09 00:38:01 +02:00
thrust26
1c10e590af
fixed missing prefix for "thumb.trapfatal"
2018-05-08 21:29:29 +02:00
Christian Speckner
6cc8a22978
More timing tuning, coding style.
2018-05-06 23:45:21 +02:00
Christian Speckner
a58db7e62d
Make sure that all audio samples are generated during each timeslice.
2018-05-05 01:08:09 +02:00
Christian Speckner
d2c930886b
Sanitize and match emulation timing
...
-> no more perceivable audio latency
-> fewer underruns
2018-05-05 00:47:48 +02:00
Christian Speckner
9079d77de0
Cosmetic changes, add audio todo.
2018-05-02 21:30:38 +02:00
Christian Speckner
c905b01fca
Merge branch 'master' into feature/precise-audio
2018-04-25 22:49:00 +02:00
Stephen Anthony
a978bb527e
Fix compile error when debugger support is disabled.
2018-03-31 20:33:25 -02:30
Christian Speckner
b5afa69764
Make coverty happy.
2018-03-30 22:04:42 +02:00
Stephen Anthony
382a39a6c7
More fixes for issues reported by Coverity.
2018-03-30 10:51:56 -02:30
Stephen Anthony
698beaec8b
Fixes for various issues reported by Coverity.
2018-03-24 16:58:08 -02:30
Stephen Anthony
0908a92da1
Continuing with the large refactoring of EventHandler:
...
- all keyboard-related stuff moved into PhysicalKeyboardHandler class
- all snapshot-related stuff moved directly into PNGLibrary class
- EventHandler class is now ~1300 LOC, which while still large, is much better than 2500 LOC
2018-03-24 12:36:00 -02:30
Stephen Anthony
0cde1ec4b9
Minor refactoring with Controller::isAnalog() usage.
2018-03-18 16:13:28 -02:30
Stephen Anthony
9a4b14392b
Minor refactoring of Controller class:
...
- a controller can now answer whether it is intrinsically an analog controller
2018-03-17 20:03:05 -02:30
Stephen Anthony
7eab28b2ef
Use smart pointer for joystick in PhysicalJoystickHandler.
2018-03-17 19:44:47 -02:30
Stephen Anthony
76b6026d30
First pass at reworking EventHandler, splitting it up into more manageable pieces.
...
For now, joystick-related stuff is moved into its own classes.
No improvements are made yet; just refactoring and moving code around.
This reduces EventHandler from ~2500 lines to ~2000 lines.
2018-03-17 18:00:44 -02:30
Christian Speckner
d8178f546b
Make sure that the hardware state is up to date before entering the debugger.
2018-03-13 23:38:31 +01:00
Christian Speckner
593ec2fdc9
Make sure that the hardware state is up to date before entering the debugger.
2018-03-13 22:13:35 +01:00
Christian Speckner
fbbfa222a0
Fix a detail in audio block simulation -> doctor sounds correct
2018-02-13 23:08:20 +01:00
Christian Speckner
5c1bd83904
Merge branch 'master' into feature/precise-audio
2018-02-12 23:32:03 +01:00
Christian Speckner
01c78842d6
Serialization fix.
2018-02-12 23:21:02 +01:00
thrust26
2a3bb4329e
load and update existing game specific properties file
2018-02-12 16:47:03 +01:00
Christian Speckner
d65ac4875f
Minor missile starfield fix.
2018-02-09 00:59:17 +01:00
Christian Speckner
b8af22cd67
Fix playfield signal during hblank.
2018-02-08 20:53:42 +01:00
Christian Speckner
b30fa0df98
And another collision fix.
2018-02-07 23:13:16 +01:00
Christian Speckner
6b6fb9140f
More HMOVE collision fixes.
2018-02-07 23:00:58 +01:00
Christian Speckner
07f1051be0
Tentative fixes for collisions during HBLANK.
2018-02-06 23:32:02 +01:00
Stephen Anthony
2874a7c504
Fixed some compiler warnings from clang.
...
Refactored Stack::replace() to use Stack::applyAll() lambda instead.
2018-02-06 15:11:16 -03:30
thrust26
564e014620
removed FLAT_UI code from TimeLineWidget
...
added toggle mode button to TimeMachineDialog
2018-02-06 12:46:27 +01:00
thrust26
1fa00f2372
initial wind when entering TM dialog causes message now
...
(TODO: try to propagate key into dialog instead)
2018-02-05 19:57:41 +01:00
thrust26
1569ee1c6b
minor code cleanup
2018-02-05 13:45:34 +01:00
thrust26
33756b2481
fixed a little merge error
2018-02-05 13:39:13 +01:00
Christian Speckner
7d7ebb8d03
Merge branch 'master' into feature/precise-audio
2018-02-04 23:50:16 +01:00
Christian Speckner
f7c445fb7c
Merge branch 'release/5.1'
2018-02-04 23:48:45 +01:00
Christian Speckner
ba549e1d8a
Improve PF collision handling during hblank.
2018-02-04 23:18:30 +01:00
thrust26
3ab2ddb870
fixed EventHandler logic
2018-02-04 21:00:10 +01:00
Stephen Anthony
9e53641add
Time machine rewinds are now triggered at the same time as entering the dialog.
2018-02-04 11:14:59 -03:30
Stephen Anthony
26096fcc47
Fixed some warnings, and updates for 5.1 release.
2018-02-03 19:29:27 -03:30
Stephen Anthony
6c5bddcdf8
Time Machine dialog now resizes correctly:
...
- in 2x mode, it takes up the maximum amount of space
- in larger modes, it takes up the same relative amount of space: ~80% width
2018-02-03 17:27:52 -03:30
Christian Speckner
803b85343a
Tuning.
2018-02-03 01:23:19 +01:00
Christian Speckner
cb89d09c7f
Refactoring: remove framerate from OSystem and Console.
2018-02-03 01:01:02 +01:00
thrust26
f4db8e4816
fixed zoom settings via hotkey (made persistent again)
2018-02-02 22:51:22 +01:00
thrust26
97a0638845
Added (fixed) tickmark intervals to SliderWidget
2018-02-01 18:21:57 +01:00
Christian Speckner
396dd637af
Rework dispatch loop.
2018-01-31 20:44:39 +01:00
Christian Speckner
7f83e776b2
Keep book of the number of cycles spent during emulation.
2018-01-31 19:29:37 +01:00
thrust26
f56286fac9
reordered frame stats to make more sense
2018-01-31 08:52:52 +01:00
thrust26
7970955353
aligned transparency with TimeMachineDialog
...
move slightly away from corner
2018-01-31 08:37:31 +01:00
thrust26
eb96e1ca49
reduced TimeMachineDialog transparency
...
frame stats now always displays the real frameRate
2018-01-30 09:06:03 +01:00
Christian Speckner
d70b0d8c40
Audio state serialization.
2018-01-29 22:44:06 +01:00
Christian Speckner
89f3f4c9b8
Merge branch 'master' into feature/precise-audio
2018-01-29 21:18:36 +01:00
Christian Speckner
87c59db4e0
Merge branch 'release/5.1'
2018-01-29 21:17:00 +01:00
Christian Speckner
13eefbb542
Make compiler happy.
2018-01-29 00:09:21 +01:00
Stephen Anthony
de7fd7401b
Synchronized shortcuts in TimeMachine to match those from EventHandler.
2018-01-28 12:21:22 -03:30
thrust26
966ba155ed
more response to SliderWidget added
...
units to SliderWidget added
enhanced various dialogs with slider units
2018-01-28 14:37:31 +01:00
thrust26
05d17496ab
minor wording fix
2018-01-28 11:35:14 +01:00
thrust26
d7cc2036df
some refinements for additional save states creation
2018-01-28 11:21:52 +01:00
thrust26
d2177ea610
added extra save state when starting time machine navigation
...
(some TODOs left, see EventHandler and TimeMachineDialog)
2018-01-28 10:15:39 +01:00
Christian Speckner
6b984a8563
Avoid race condition in pause, switch to shared_ptr for simpler semantics.
2018-01-28 00:27:25 +01:00
thrust26
8c0b212207
Overlapped dialogs are (partially) toned down
2018-01-26 12:55:05 +01:00
thrust26
f58e914729
focus highlighting added to more widgets
...
added some missing tab keys to debugger
fixed frame colors for CheckboxWidget and RadioButtonWidget
brightened inverted highlight color for "Light"
2018-01-26 11:33:46 +01:00
Christian Speckner
4528b9067a
Assorted fixes -> works (module timing glitches).
2018-01-25 22:48:00 +01:00
Christian Speckner
8198f6ccaf
Crackling and screeching.... but it is correlated with the TIA :)
2018-01-25 20:48:34 +01:00
thrust26
4c39fa3c68
some more focus highlighting added
...
made most sliders wider by default
2018-01-25 17:00:41 +01:00
thrust26
920b051f02
redesigned SliderWidget
...
better visual reaction of EditTextWidget and PopUpWidget
improved BrowserDialog
small refinement for ButtonWidget
2018-01-25 15:10:37 +01:00
Christian Speckner
4ec553785f
Implement and connect audio emulation.
2018-01-24 22:20:44 +01:00
thrust26
d179b8ebe8
Updated ScrollBarWidget
...
Refined LauncherDialog
Added missing Ellipsis to StellaFont.hxx
2018-01-24 20:53:00 +01:00
thrust26
5bd33885e3
title bar added to all dialogs
2018-01-24 14:37:07 +01:00
thrust26
41827e03de
removed some superfluous includes
2018-01-23 19:53:36 +01:00
thrust26
5757eccfcf
enabled FLAT_UI code, removed old code
2018-01-23 18:03:00 +01:00
Christian Speckner
f1b5421c17
Introduce and wire audio emulation core.
2018-01-23 13:41:14 +01:00
thrust26
a8b3c0d74d
reordered frame stats top line (makes more sense this way)
2018-01-21 11:05:00 +01:00
thrust26
a5e7911930
disabled test for "auto" frame rate
2018-01-21 10:19:28 +01:00
Christian Speckner
6fe5f3b197
Merge branch 'release/5.1'
2018-01-21 09:38:42 +01:00
Stephen Anthony
1055a4bd06
Minor cleanup of warnings in FrameBuffer class.
2018-01-20 20:51:46 -03:30
thrust26
2d03a2d059
aligned implementation parameter of handleEvent with definition parameter
2018-01-20 20:49:57 -03:30
thrust26
b67b795642
larger font for frame stats
2018-01-20 20:49:48 -03:30
thrust26
27291dd5d2
small fix for benchmark commit
2018-01-20 20:49:14 -03:30
thrust26
436c380a7e
benchmark: frame stats now display real frame rate when 'Auto' is not selected
2018-01-20 20:49:05 -03:30
thrust26
2e51511c80
message for SaveKey/AtariVox EEPROM access added
2018-01-20 20:41:29 -03:30
thrust26
7b8dff8e46
when strings are shortened, ellipsis is added at the END now
2018-01-20 20:12:47 -03:30
thrust26
6f7ff023a6
generic shadowed char/string drawing added
...
TimeMachineDialog fully transparent now (experimental)
info stats indicates scanline/frame rate changes in red
2018-01-20 20:12:35 -03:30
thrust26
72ff2a40fa
developer/player settings added to frame stats overlay
2018-01-20 20:11:54 -03:30
thrust26
a1b54680bd
frame stats overlay made transparent
2018-01-20 20:10:39 -03:30
Stephen Anthony
9e403826d2
Fixed compilation when '--disable-debugger' is used.
2018-01-20 18:34:19 -03:30
thrust26
40615be9be
Revert "fix repeated ESC from debugger", there is a more fundamental problem
...
This reverts commit 1b5ac9d3b5
.
2018-01-20 21:48:24 +01:00
thrust26
b3e582209f
fix the fix
2018-01-20 21:27:05 +01:00
thrust26
1b5ac9d3b5
fix repeated ESC from debugger
2018-01-20 21:22:01 +01:00
thrust26
7d9b7388c9
ESC key exits Debugger too
...
many keys are enabled now during PAUSE mode too
2018-01-20 18:40:25 +01:00
Stephen Anthony
d7bcde29dc
A different implementation of testing whether debugger can be exited.
...
- basically check whether the current dialog is the 'base' one (ie, the debugger window)
- this solution is more robust, in that we don't have to modify every dialog that can appear in the debugger
2018-01-20 11:45:07 -03:30
thrust26
9263e7c62f
refactored ESC key handling
...
prevent exiting debugger from within Options Dialog (hack)
2018-01-20 10:53:54 +01:00
Stephen Anthony
df119ba505
Minor cleanup of warnings in FrameBuffer class.
2018-01-19 18:32:11 -03:30
thrust26
78b807efba
ESC allows exiting Pause mode, TimeMachine mode and Command Menu.
2018-01-19 12:44:07 +01:00
thrust26
4c9cfad70b
aligned implementation parameter of handleEvent with definition parameter
2018-01-19 10:45:29 +01:00
thrust26
af19f9f2b8
enter debugger from time machine mode option added
2018-01-19 10:35:52 +01:00
thrust26
98fcb51819
larger font for frame stats
2018-01-18 23:06:51 +01:00
thrust26
a6bea6438f
fix #279
2018-01-17 19:29:36 +01:00
thrust26
a6ea393905
small fix for benchmark commit
2018-01-17 19:12:39 +01:00
thrust26
b111a8c127
benchmark: frame stats now display real frame rate when 'Auto' is not selected
2018-01-17 19:03:25 +01:00
thrust26
0906997d82
message for SaveKey/AtariVox EEPROM access added
2018-01-17 10:27:18 +01:00
thrust26
43be89f124
when strings are shortened, ellipsis is added at the END now
2018-01-16 18:16:56 +01:00
thrust26
802606ce29
Merge branch 'master' of https://github.com/stella-emu/stella
2018-01-16 11:14:47 +01:00
thrust26
a577b0f9c2
generic shadowed char/string drawing added
...
TimeMachineDialog fully transparent now (experimental)
info stats indicates scanline/frame rate changes in red
2018-01-16 11:14:26 +01:00
Christian Speckner
317f7391c2
Merge branch 'master' into feature/precise-audio
2018-01-15 23:53:35 +01:00
Christian Speckner
6cd7eb3821
Merge branch 'release/5.1'
2018-01-15 23:50:18 +01:00
thrust26
b22c292f3c
developer/player settings added to frame stats overlay
2018-01-15 20:25:28 +01:00
thrust26
8583883795
Merge branch 'master' of https://github.com/stella-emu/stella
2018-01-15 14:44:56 +01:00
thrust26
cef50e4368
frame stats overlay made transparent
2018-01-15 14:44:09 +01:00
thrust26
f241dfd7b7
fixed compressStates(), now, with compression enabled, the first element is always kept and the horizon matches
...
missing "framerate" added, now changes are persisted.
2018-01-10 11:48:06 +01:00
Stephen Anthony
29499775dc
Fixed compilation when '--disable-debugger' is used.
2018-01-09 23:16:50 -03:30
Christian Speckner
77158fd845
Always make sure that hardware state is consistent with a full step before dispatching the debugger.
...
* Allows to revert much of the complexity of my previous fix.
2018-01-07 00:31:24 +01:00
Christian Speckner
c0edcaf0c9
Sanitize halt and hardware state handling after CPU dispatch.
2018-01-06 23:33:52 +01:00
Stephen Anthony
f9d243e503
Fixed incorrect size in memset; this time I'll sizeof.
2018-01-05 22:03:42 -03:30
Stephen Anthony
3d879d0080
Updated copyright date to 2018. A few days early, but nobody will mind ...
2017-12-29 17:10:37 -03:30
Stephen Anthony
a15d5d8b06
Properly integrate MouseButton enum into the GUI core:
...
- The previous code used enumerations for DialogContainer, and constants for everything in src/gui
- It took me over 3 hours to determine that a '1' in the first didn't mean the same as a '1' in the second
- If ever there was a reason for strongly named constants (enum class), this was it.
2017-12-29 16:56:09 -03:30
Stephen Anthony
542fed69ed
Collapsed MouseButton enum into just buttons, removing state (pressed or released).
...
- By itself, this first patch doesn't seem to accomplish much, but it leads into patch 2
- Patch 2 will extend usage of MouseButton enum all throughout the GUI core
2017-12-29 16:05:07 -03:30
Stephen Anthony
e6dcce60de
Convert raw enum to 'enum class'.
2017-12-22 23:57:40 -03:30
Stephen Anthony
93dcc9807d
Integrate 'TIATypes' into 'TIAConstants'; they serve the same purpose.
2017-12-22 23:47:07 -03:30
Stephen Anthony
ad69e8900d
Time Machine dialog can now be toggled by pressing 'T'.
...
- Note that the dialog is currently empty
- See src/gui/CommandDialog for example of how to fill this dialog box
2017-12-22 12:28:06 -03:30
Stephen Anthony
cbb494d7ad
HiDPI fixes for framebuffer messages.
2017-12-21 23:04:17 -03:30
Stephen Anthony
44c5882920
Use 'enum class' instead of raw enum.
2017-12-21 19:53:54 -03:30
Stephen Anthony
4250f5d102
Refactor EventHandler kbdXXX functions into StellaKeys:
...
- These functions did not really have anything to do with EventHandler
- StellaKeys is the proper place, since they're testing against a StellaMod
- This removes the need to include 'EventHandler.hxx' in many header files, again reducing dependencies
2017-12-21 19:44:18 -03:30
Stephen Anthony
6181c3fbe0
Updated VS project files for recent class renames.
...
- Also fixed several classes in the wrong place compared to their
on-disk location.
2017-12-20 22:27:13 -03:30
Stephen Anthony
7890a94144
Several large infrastructure changes for upcoming Time Machine stuff:
...
- renamed Rewinder and associated dialog to TimeMachine and friends
- changed EventHandler state enum to stronger 'enum class' type (and associated changes to the codebase)
- moved EventHandlerState into separate class, allowing a few files to not need to include EventHandler.hxx (reduce compile dependency)
- plumbed EventHandlerState::TIMEMACHINE into the codebase; still TODO is activate it and add a usable dialog)
2017-12-20 21:56:22 -03:30
Stephen Anthony
6313c98fdc
Almost all ROM properties are now updated to RomHunter v14.
...
- I will take a quick look over them again, to make sure I didn't miss any new ROMs.
2017-12-20 18:41:24 -03:30
Stephen Anthony
c6acb622cc
Updated ROM properties up to 'T'.
2017-12-20 16:43:04 -03:30
Stephen Anthony
81179ab34f
Revert handling of broken F8 ROMs; we can turn off randomization to make them work.
2017-12-20 14:47:17 -03:30
Stephen Anthony
63b3b2ab1e
Updated ROM properties to 'R'.
...
Fixed F8 scheme to not randomize 'special' ROMs (those hardcoded with a certain startup bank).
Bumped state file version number.
2017-12-20 14:23:34 -03:30
thrust26
0826ce6bd6
Made collisions editable
2017-12-20 18:18:07 +01:00
Stephen Anthony
57036823ea
ROM properties updated up to 'M'.
2017-12-20 11:05:20 -03:30
Stephen Anthony
ad78fbaa07
Updated ROM properties up to 'E'.
2017-12-19 22:22:11 -03:30
thrust26
e9ef45ab0a
minor consistency fix and doc updates
2017-12-19 18:10:01 +01:00
thrust26
7259af1583
"Light" color fix
2017-12-19 16:56:01 +01:00
thrust26
d7a34ec7dd
'tab' key skips disabled widgets
...
'ghost' read traps are displayed by 'RTrapG'
2017-12-19 09:01:26 +01:00
thrust26
b280a3ed27
Merge branch 'master' of https://github.com/stella-emu/stella
2017-12-18 21:56:26 +01:00
thrust26
fabf812543
developer dialog Horizon enable fix
...
FLAT_UI fixes for disabled elements
2017-12-18 21:56:07 +01:00
Stephen Anthony
042d4bc812
Updated ROM properties for ROMs starting with 'B' and 'C'.
2017-12-18 16:10:15 -03:30
Stephen Anthony
dd5a46880e
Some updates to dialog positioning in preparation for HiDPI.
...
- note that these are fixes that are needed with or without HiDPI; testing HiDPI just exposed them as bugs
- also fixed some minor warnings and formatting
2017-12-18 15:15:57 -03:30
thrust26
481c85c0c3
added option for 'ghost' read traps
...
update documentation accordingly
removed reload requirements for Time Machine
2017-12-18 19:16:41 +01:00
thrust26
e5216d4f90
added index to conditional trapif/breakif/savestateif display
2017-12-18 13:28:23 +01:00
thrust26
50c8c5c266
fixed name resolution for trapread
2017-12-18 13:09:03 +01:00
Stephen Anthony
200b5cfe87
Updates to ROM properties from RomHunter:
...
- for now, only newly added ROMs and those starting with 'A' are included
2017-12-18 00:36:25 -03:30
thrust26
b76566e864
line drawing method added to FBSurface
...
inactive cells are displayed as crossed out in FLAT_UI
2017-12-17 16:43:05 +01:00
thrust26
7f08d9b74c
some more UI polishing
2017-12-17 13:28:23 +01:00
thrust26
eeb1491efd
polishing FLAT_UI
2017-12-17 12:16:37 +01:00
thrust26
b05d686891
'Light' palette polishing
2017-12-17 10:09:59 +01:00
thrust26
1f2062feeb
Merge branch 'master' of https://github.com/stella-emu/stella
2017-12-17 00:48:46 +01:00
thrust26
19730fa183
third 'uipalette' scheme 'Light' added
...
modernized UI via 'FLAT_UI' preprocessor define added
2017-12-17 00:48:30 +01:00
Christian Speckner
e5d7c23412
Update TIA and RIOT state in lockstep with the CPU if any debugger expressions are registered.
2017-12-16 21:29:28 +01:00
thrust26
0e5a444699
Merge branch 'master' of https://github.com/stella-emu/stella
2017-12-16 09:46:50 +01:00
thrust26
31b459ac84
fixed #269
2017-12-16 09:46:25 +01:00
Christian Speckner
8e7d0aa7b3
Fix frame manager serialization. Closes #267 .
2017-12-15 23:53:11 +01:00
thrust26
0d609f6845
renamed '_cycles' into '_icycles' (fits better)
2017-12-15 19:12:46 +01:00
thrust26
9f7270a70d
'_cycles' pseudo register added (returns cycles of last instruction)
2017-12-15 18:13:29 +01:00
thrust26
7d40d5b1f8
"Time Machine" name change
2017-12-15 18:10:40 +01:00
Stephen Anthony
bf6d28e181
Added basic infrastructure for what will become the rewind dialog.
2017-12-15 13:19:29 -03:30
Stephen Anthony
434d2dfc83
Converted some raw enum to 'enum class' in FrameBufferConstants.
2017-12-14 21:29:45 -03:30
Stephen Anthony
31da99f48b
Convert some raw enum to C++11 'enum class' in EventHandlerConstants.
2017-12-14 21:04:19 -03:30
thrust26
ba9d809109
state compression improved
...
RewindManager class refactored for multiple rewinds/unwinds
additional keys for faster rewinding added
docs updated
2017-12-14 14:25:02 +01:00
thrust26
e2301dfd5e
fine tuning on interval factor and state compression
...
rewind now displayed immediately (instead of "Paused")
two initial rewinds in continuous rewind mode fixed
Horizon widget disabled when Uncompressed size == Buffer size
fixed minimum Interval
2017-12-13 19:15:09 +01:00
thrust26
20eb97ce14
savestate position in list display in message added
...
compressStates loop fixed and slightly optimized
fixed minimal size value in Settings
2017-12-13 12:31:18 +01:00
thrust26
e465112c02
rewind/unwind basically working
...
changed values, UI and settings for rewind interval and horizon
2017-12-12 17:07:05 +01:00
Christian Speckner
6500ab0613
Compile thumbulator unconditionally.
2017-12-10 00:22:18 +01:00
thrust26
a1d0319042
corrected defaults for aspect ratio to 0.91 (NTSC)/1.09 (PAL)
...
see https://en.wikipedia.org/wiki/Pixel_aspect_ratio
2017-12-08 11:33:55 +01:00
Stephen Anthony
a79ccf400f
Minor updates to rewind:
...
- comments are now more in line with what actually happens when adding a state
- changed Serializer::reset() to Serializer::rewind(), to more accurately indicate what it does
2017-12-06 11:44:40 -03:30
thrust26
90be9bb607
fixed DTHUMB_SUPPORT error
2017-12-06 13:03:27 +01:00
thrust26
ec5a3cdec5
thumb.trapfatal added to developer settings dialog
...
restructured developer settings dialog
duplicated debug colors are changed automatically
updated doc and screenshots accordingly
2017-12-06 12:15:16 +01:00
thrust26
87d5886067
fixed #264
2017-12-06 11:01:33 +01:00
Christian Speckner
833c4de688
Silence compiler warning.
2017-12-05 21:20:27 +01:00
Christian Speckner
2b5416eade
Don't trap write accesses to datastream pointers & friends in CDF / BUS.
2017-12-05 20:29:22 +01:00
Stephen Anthony
1f43539f10
Changed Switches::update() to not evaluate settings on every call.
...
Basically, removed determination of whether we're in 2600 or 7800 mode
from the hot path, and moved it to a method that is called only when
it changes (currently that method doesn't seem to be called at all, since
it seems like 'console' setting cannot be changed dynamically).
2017-12-04 14:12:06 -03:30
Christian Speckner
ed25664c46
Add two "grace lines" of black when autodetecting ystart.
2017-12-04 00:25:54 +01:00
Christian Speckner
5736f93fcd
Add two "grace lines" of black when autodetecting ystart.
2017-12-04 00:25:03 +01:00
Christian Speckner
e88751638b
Gut current audio code.
2017-12-01 23:17:16 +01:00
Stephen Anthony
a4f33127ba
Added ROM properties for 'Super Cobra Arcade'.
2017-12-01 15:42:33 -03:30
thrust26
bd52880a46
minimal Cart class refactoring
2017-12-01 12:03:19 +01:00
thrust26
d333553ec2
startup bank for E0 bankswitch type randomized
2017-12-01 10:08:10 +01:00
thrust26
7fc1c54d4c
more E7 refactoring/cleanup
2017-11-30 17:26:58 +01:00
Stephen Anthony
178c5b4eaf
Changed 'const' to 'constexpr' in several places.
...
Note that constexpr should be preferred, since it _guarantees_ compile-time
usage, whereas 'const' alone doesn't necessarily do that. So constexpr
is guaranteed to be more efficient.
2017-11-30 10:36:31 -03:30
thrust26
1d5333969b
startup bank for 3F getting randomized
2017-11-30 11:36:21 +01:00
thrust26
3fddc7fcc3
minor merge update
2017-11-30 09:12:35 +01:00
Stephen Anthony
f7f9a8a3df
Re-generate DefProps.hxx from stella.pro changes.
2017-11-29 21:07:39 -03:30
Christian Speckner
53a2d59e02
Add a bunch of missing overrides.
2017-11-30 01:22:41 +01:00
Christian Speckner
2b285060fe
Remove dead code.
2017-11-30 01:14:22 +01:00
thrust26
2a4db8e11e
startup bank randomization info added to widgets
2017-11-29 20:48:19 +01:00
thrust26
30cb1fe14d
RewindManager fix for ROM startup rewind
...
-bankrandom support for E7(8K) added
2017-11-28 23:20:06 +01:00
thrust26
a239d94df9
E78K signature fix
2017-11-28 22:25:09 +01:00
thrust26
b3e92842e5
some more refactoring
2017-11-28 22:00:42 +01:00
thrust26
8d42af251e
some magic numbers replaced
...
(and fixed a bug regarding offset into myCodeAccessBase)
2017-11-28 16:38:01 +01:00
thrust26
b0a373285b
fixed irritating variable name
2017-11-28 14:19:04 +01:00
thrust26
5760167f31
E78K added to doc
...
missing files added
2017-11-27 22:51:41 +01:00
thrust26
053b79fc3e
E7 bankswitching classes refactored
...
E78K bankswitching added
2017-11-27 22:49:53 +01:00
thrust26
4085469dbc
VERY minor copy&paste error fix
2017-11-27 11:51:25 +01:00
Christian Speckner
35ae38572c
Clear FB before running autodetection.
2017-11-26 23:24:05 +01:00
Christian Speckner
1c10f55bb0
Mute audio while autodetection runs.
2017-11-26 23:10:43 +01:00
thrust26
cc55724d49
Revert "changed saved game properties (Control + s) path to defaultSaveDir()"
...
This reverts commit ae0a3c1ba5
.
According to documentation, the contents should overwrite stella.pro.
2017-11-25 12:36:11 +01:00
thrust26
df0a3720db
fix to developer settings dialog parameters
2017-11-25 12:33:38 +01:00
thrust26
ae0a3c1ba5
changed saved game properties (Control + s) path to defaultSaveDir()
...
Question: Should those files overwrite Stella.pro automatically?
2017-11-25 11:18:05 +01:00
thrust26
7c46f031f3
further Developer settings dialog improvements
2017-11-25 11:12:17 +01:00
thrust26
08f29ca808
two sets for developer related options defined
...
reverted some changes previous changes ("colorloss", "stats" and "grabmouse" are persisted again)
2017-11-24 20:38:21 +01:00