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