Christian Speckner
23c2901d14
Hook up new ystart autodetection.
2017-10-12 00:02:31 +02:00
Stephen Anthony
be48e643e6
Second pass at cleanups from increased warning level.
2017-10-11 18:18:07 -02:30
Stephen Anthony
9fd1726824
Merge branch 'master' of github.com:stella-emu/stella
2017-10-11 12:25:00 -02:30
Stephen Anthony
35624553b6
First pass at code cleanup from enabling higher levels of warnings in clang/gcc.
2017-10-11 12:23:54 -02:30
Christian Speckner
dc5c68bb80
Factor out ystart detection.
2017-10-11 16:04:47 +02:00
thrust26
39c3ba89bf
input history works in both directions and wraps around
2017-10-11 15:13:09 +02:00
thrust26
5883f2dfcc
prevent displaying auto completes for no filter argument or only "_"
2017-10-11 11:38:38 +02:00
thrust26
c93d7e265d
PromptWidget::getCompletionPrefix refactored
2017-10-10 16:40:54 +02:00
thrust26
20ff2163ca
comment to BSPF::matches() added
...
some compiler warnings fixed
2017-10-10 15:29:14 +02:00
thrust26
d702829ed3
slightly better parser messages for breakifs and failed deletes.
2017-10-10 14:48:36 +02:00
thrust26
3cc42b1dc5
resulting string from incomplete autocomplete fixed
2017-10-10 14:47:29 +02:00
thrust26
3e6fe633f3
more characters to auto complete whitespace list added
2017-10-10 14:15:18 +02:00
thrust26
c2325decb7
advanced auto complete added; first letter has to match, following letters have to appear in correct order. examples:
...
- 'twf' finds and completes into 'trapwriteif',
- 'g0' finds and completes into 'GRP0'
- 'em' finds 'ENAM0'&'ENAM1' and completes into 'ENAM'
2017-10-10 14:03:52 +02:00
thrust26
6c95d34ae3
minimal fix for previous commit
2017-10-10 12:03:15 +02:00
thrust26
5db2d836f4
prompt is initially filled by the executed script files commands
2017-10-10 12:00:10 +02:00
Christian Speckner
12afce8c0d
Documentation, minor simplificationsDocumentation, minor simplifications.
2017-10-10 10:20:53 +02:00
Stephen Anthony
29eb553a0c
Fixed trailing space in Debugger class file.
2017-10-09 20:31:29 -02:30
thrust26
7c679fda31
Merge branch 'master' of https://github.com/stella-emu/stella
...
# Conflicts:
# src/debugger/Debugger.cxx
2017-10-09 23:56:39 +02:00
thrust26
f59ad788d7
missing address in debugger status line fixed
2017-10-09 23:49:14 +02:00
Stephen Anthony
aa755c7270
Fixed minor compile warnings with gcc/clang.
2017-10-09 19:14:49 -02:30
thrust26
3fddc03ff6
trapifs implemented (and fixed mirrors)
...
wrong port display for swapped ports fixed
error due wrong argument number now with example display
label display in status line added
2017-10-09 23:15:40 +02:00
thrust26
07d2797c62
Merge branch 'master' of https://github.com/stella-emu/stella
2017-10-09 23:09:33 +02:00
Stephen Anthony
50174483e1
Updated OSX project file for LinkedObjectPool class.
2017-10-09 18:36:37 -02:30
Stephen Anthony
63ad275b9d
Ported RewindManager to use LinkedObjectPool class.
2017-10-09 18:11:15 -02:30
Christian Speckner
4f31166e11
Cleanup.
2017-10-08 21:46:25 +02:00
Christian Speckner
398fac5c9f
Replace frame layout detection with dedicated detector.
2017-10-08 21:32:57 +02:00
thrust26
64e4153bca
Merge branch 'master' of https://github.com/stella-emu/stella
2017-10-08 19:04:48 +02:00
Stephen Anthony
741e148da5
Fixed 'save' command in debugger parser:
...
- all files are now appended with '.script' instead of '.stella'.
- files are saved in default save location, just like disassembly files
(this can be discussed/changed as necessary)
- 'exec' command has been changed to load from the same location
2017-10-08 14:24:10 -02:30
thrust26
a9910f2649
Merge branch 'master' of https://github.com/stella-emu/stella
...
# Conflicts:
# src/windows/Stella.vcxproj.filters
2017-10-08 18:52:38 +02:00
thrust26
20babc832a
Merge branch 'trapif_attempt_1'
2017-10-08 18:31:26 +02:00
Stephen Anthony
5f2e383440
Updated VS project file, adding LinkedObjectPool and removing some
...
non-existent classes.
2017-10-08 13:32:33 -02:30
Stephen Anthony
a8719f6bd6
Added LinkedObjectPool class, which will be used by RewindManager.
...
Thomas, please contact me for example usage of this class.
2017-10-08 12:42:24 -02:30
thrust26
7406c0fd2a
hides new access functions since they can only used together with traps
...
fixes listtraps formatting (trapStatus)
fixes trap addresses (in executeTrapRW, addr & XY is now always used for compares)
2017-10-08 15:59:00 +02:00
thrust26
eb2ae18ce1
added missing initialization
2017-10-08 14:18:14 +02:00
thrust26
649dada32c
added missing file to source control
2017-10-08 12:50:22 +02:00
thrust26
90705babd7
debugger start displays labels where possible
...
prevent repeated trap interrupts
some old code cleanup
2017-10-08 12:25:23 +02:00
thrust26
d15690f5f1
added mirrors
2017-10-08 10:43:26 +02:00
thrust26
7b8b121ee5
detect duplicate traps which will eliminate each other
2017-10-07 23:45:32 +02:00
thrust26
41dffe6f78
works!
...
TODOs:
- identify duplicates and trigger remove when added
- mirrored addresses
- testing
2017-10-07 20:22:54 +02:00
Christian Speckner
bff13fb008
Comment.
2017-10-07 19:50:29 +02:00
Christian Speckner
47f528c4d3
Inject FrameManager instance into TIA.
2017-10-07 19:48:06 +02:00
thrust26
15925c313c
working on formatting
2017-10-07 19:30:21 +02:00
Christian Speckner
a452d83b39
Coding style.
2017-10-07 18:48:02 +02:00
thrust26
ffacd7a5e7
missed a clear
2017-10-07 18:28:44 +02:00
Christian Speckner
6aecade2c3
Dcumentation.
2017-10-07 18:26:53 +02:00
thrust26
c6593e6c58
this should be working
2017-10-07 18:25:56 +02:00
thrust26
f862e1c97d
progress...
2017-10-07 14:17:34 +02:00
Christian Speckner
a400238c19
Refactor FrameManager to extend AbstractFrameManager.
2017-10-07 01:41:47 +02:00
Stephen Anthony
bfb79fe289
Let dialogs use all available space in LauncherDialog ( fixes #236 ).
2017-10-06 20:46:13 -02:30
g012
5cce80d908
Fixed removal of prefix of local labels (global.local -> .local).
2017-10-06 20:01:33 -02:30
Stephen Anthony
5492e86ba5
Fix spacing issues.
2017-10-06 20:00:05 -02:30
thrust26
b17542d2bf
Makes 'Cancel' default in RomAuditDialog too
2017-10-06 23:18:17 +02:00
thrust26
61bf556e5b
it compiles again
2017-10-06 23:06:59 +02:00
Stephen Anthony
8fa5ad502a
Minor spacing cleanup.
2017-10-05 20:58:39 -02:30
Stephen Anthony
f38b40415f
Minor refactoring of AVox/SaveKey classes (use delegating c'tor).
2017-10-05 20:57:02 -02:30
Stephen Anthony
55a281bf34
Allow OK/Cancel buttons to be variably focused in MessageBox.
2017-10-05 20:30:36 -02:30
thrust26
e2844f566f
added confirm dialog when erasing the whole EEPROM
2017-10-05 08:26:11 +02:00
Stephen Anthony
9fc8b9fcc0
Fixed crash when specifying an invalid controller type on the commandline.
2017-10-04 18:35:55 -02:30
Stephen Anthony
29e53093ba
Various UI classes now have their commands prefixed by class name.
2017-10-04 18:33:24 -02:30
Stephen Anthony
90a6c35061
Removed ability to manually select CompuMate controllers ( fixes #229 ).
2017-10-04 17:43:21 -02:30
Stephen Anthony
17f88515a7
Fixed compile errors in gcc/clang.
2017-10-04 13:06:28 -02:30
thrust26
486d95d951
Revert "fixed #236 by making the launcher dialogs slightly larger. Also limited emulator dialogs to the same size."
...
This reverts commit fbcab7d286
.
2017-10-04 16:22:53 +02:00
thrust26
fbcab7d286
fixed #236 by making the launcher dialogs slightly larger. Also limited emulator dialogs to the same size.
2017-10-04 16:15:46 +02:00
thrust26
0cbceda36d
added ellipsis to audit dialog
2017-10-04 12:26:11 +02:00
thrust26
af30b05734
added ellipsis to buttons which open another dialog
...
added ellipsis character to large, medium and small fonts
2017-10-04 10:42:37 +02:00
Stephen Anthony
d99d3a16f5
Fix crash when using CompuMate scheme but not using CM controllers.
...
The code now never looks at the controller type for CM ROMs, but just creates the required controllers.
This means that we no longer actually need a special CompuMate controller type anywhere in the code, since selecting it has become redundant.
2017-10-03 20:17:23 -02:30
Stephen Anthony
1fa3f0cf0d
Fixed compile warnings under clang:
...
- multiline IF statements should have braces
- override keyword not being used when overriding virtual methods
2017-10-03 19:14:07 -02:30
Christian Speckner
d52562975d
AbstractFrameManager adjustments.
2017-10-03 23:08:14 +02:00
thrust26
46f2ae0cab
While I am at it, some minor fixes to Game Properties/Cartridge dialog
2017-10-03 22:26:08 +02:00
thrust26
0839bcb8d7
minor improvement of last commit
2017-10-03 20:42:02 +02:00
thrust26
9ac4a57498
Added logic to Game Properties/Controllers to prevent invalid selections.
2017-10-03 20:25:38 +02:00
thrust26
cd189050ec
Fixed wrong display of swapped controllers in debugger
2017-10-03 18:42:46 +02:00
thrust26
9f97184d9b
Added 'EEPROM erase' buttons to Device & Ports and Game Properties dialogs
...
Slightly refactored some dialogs
Changed colors for disabled sliders and buttons
2017-10-03 16:43:50 +02:00
thrust26
8348525f14
before cleanup
2017-10-03 16:33:33 +02:00
Stephen Anthony
bec1784d18
Added infrastructure to call methods on AVox/SaveKey controllers from InputDialog.
...
Thomas, you will need to edit InputDialog::eraseEEPROM and finish the logic there.
2017-10-02 19:57:21 -02:30
thrust26
e10ca8e694
removed 'echo' and enhanced 'print' instead
2017-10-02 22:12:10 +02:00
thrust26
3ca6f5a9d3
Changed tab widget navigation to Windows and OSX standard Control-(Shift)-Tab
2017-10-02 21:12:24 +02:00
thrust26
43e9693959
added 'echo' command to debugger prompt
2017-10-02 14:23:08 +02:00
Christian Speckner
d220888474
Abstract common frame manager interface.
2017-10-02 00:52:56 +02:00
Stephen Anthony
4ecaa9a6e0
Updated OSX project file for recent class additions.
2017-10-01 17:29:37 -02:30
Stephen Anthony
05b2684421
Fixes for Visual Studio project file; minor formatting cleanups.
2017-10-01 16:49:29 -02:30
Stephen Anthony
924e92214f
Fixes for several minor issues in the last few commits:
...
- move files from src/windows to proper location
- formatting fixes to match style in other files
This fixes all compile issues in Linux; still TODO is fix Windows and OSX.
2017-10-01 16:23:53 -02:30
thrust26
c19dc0dd9f
minor code cleanup
2017-10-01 20:02:11 +02:00
thrust26
39c168fb70
made SWCHA(R) editable in debugger (somewhat ugly coding here)
2017-10-01 17:48:25 +02:00
thrust26
5bc3d9c83e
Improved value display for driving controller in debugger
2017-10-01 13:59:00 +02:00
thrust26
72f46c306f
added new classes for "Linux & friends" make
2017-10-01 13:51:58 +02:00
thrust26
00cb377c0a
finalized trackball widgets
2017-10-01 13:06:34 +02:00
thrust26
4fe9317ad2
Refactored FlashWidget, SaveKeyWidget and AtariVoxWidget
2017-10-01 12:00:07 +02:00
thrust26
f77cd9ab06
Updated VS project file, reworked SaveKey/AtariVox widget, started with implementing trackball widgets for debugger (AmigaMouse working)
2017-10-01 09:52:39 +02:00
thrust26
01449ddeec
Added few new constructors to some widgets which make creating dialogs a bit easier. There still is room for improvement here.
2017-09-30 12:07:56 +02:00
thrust26
ecd8d0ff22
Fixed and refactored controller selection
2017-09-30 12:03:45 +02:00
thrust26
a92ceed195
SaveKey/AtariVox detects EEPROM areas accessed by ROM and allows erasing only these in the debugger.
2017-09-29 20:12:41 +02:00
Christian Speckner
7965b84553
Merge branch 'master' into refactoring/frame_manager
2017-09-27 23:27:44 +02:00
Christian Speckner
b3228aaad7
Work around g++ bug on OSX.
2017-09-25 22:06:21 +02:00
Stephen Anthony
e7b732b115
Allow access to current frame count from TIA; minor formatting cleanup.
2017-09-23 10:20:36 -02:30
Stephen Anthony
e695c3b3a5
Converted RewindManager to a (currently unbounded) linked list.
...
This is in preparation for further work by Thomas J.
2017-09-22 17:37:24 -02:30
sa666666
be64a6387d
Fix memory leak in RewindManager (at least until it's rewritten).
2017-09-21 10:14:04 -02:30
thrust26
39267e2840
removed warning
2017-09-20 07:24:11 +02:00
thrust26
ba764fdc06
added _cyclesLo and _cyclesHi to debugger prompt
2017-09-19 20:49:48 +02:00
Stephen Anthony
aed2945a56
First pass at continuous state saving in emulation mode, accessible by the debugger:
...
- Toggle this with Alt-r. When enabled, state is saved each frame to memory (up to 100 slots)
- Upon entering the debugger, rewind is immediately available, allowing to rewind (for example) back past a breakpoint
- Testing is definitely required.
2017-09-18 20:29:52 -02:30
Stephen Anthony
628f981121
Various cleanups to documentation and snapshots:
...
- Changelog updated for recent fixed from Thomas J.
- Minor formatting fixes in TIASurface class
- Updated documentation for 'ss1x' mode; snapshots now have only scaling disabled, not effects removed
- Updated snapshots for change in ss1x, and also ran them all through pngcrush, to optimize size
2017-09-18 19:50:37 -02:30
thrust26
5fe51112dd
fixed #214 , now "usemouse.always" is checked too
2017-09-18 20:48:49 +02:00
thrust26
2a21b497fe
fixed #178 by replacing myUserCLabels with myUserLabels
2017-09-18 20:27:16 +02:00
thrust26
ed47816303
fixed issue #201 with new reRender method
...
in phosphor modes buffers are simply copied form phosphor buffer, else the screen is rendered again
2017-09-18 15:49:30 +02:00
thrust26
11367e6a17
1x snapshots now support all 4 phosphor/Blargg combinations
2017-09-18 09:27:51 +02:00
thrust26
8aad8afda7
fixed 1x snapshot problem when phosphor was disabled
2017-09-17 23:58:52 +02:00
thrust26
b3eaaac5ed
enable phosphor and TV effects for 1x snapshots
2017-09-17 23:38:59 +02:00
Stephen Anthony
f442fae890
Fixed graphical corrution when saving snapshots in 1x mode
...
- Phosphor is now also disabled in this mode
2017-09-17 16:46:56 -02:30
Stephen Anthony
1d01b39f87
Minor cleanup of formatting and compile warnings.
2017-09-17 16:15:17 -02:30
thrust26
5b0965ad6c
Fixed the fix.
2017-09-17 17:28:03 +02:00
thrust26
f0ced8ae4c
Fixed 1x snapshot bug with phosphor #222
2017-09-17 17:20:48 +02:00
Christian Speckner
c682dd1c27
Microoptimization: avoid function dispatch overhead.
2017-09-17 14:12:37 +02:00
thrust26
7d72265088
added TIA access tracking
...
improved ZP-RAM/Stack tracking
2017-09-17 10:35:45 +02:00
Christian Speckner
8485b0820f
Collisions are disabled during vblank.
2017-09-17 01:35:01 +02:00
thrust26
cfa40722b9
updated poke(), now CPU emulation provides the flags
...
improved ZP/stack access tracking and output
added ZP code tracking
2017-09-16 22:37:19 +02:00
thrust26
3bf809a137
refined access tracking for ZP, Stack and IO addresses
...
improved RIOT RAM output in Distella
2017-09-16 17:38:37 +02:00
Stephen Anthony
03c1ab17fd
Added access tracking to M6532 for ZP and IO addresses.
2017-09-16 10:37:42 -02:30
thrust26
7f65fad7cf
preliminary implementation for ZP-RAM access tracking
...
extra access type flag for poke()
2017-09-16 13:48:04 +02:00
thrust26
10e6d483b1
added access tracking via poke()
...
code cleanup in DiStella and CartDebug
2017-09-16 08:54:32 +02:00
Stephen Anthony
7b63dc6f22
Cleanups to System class (call methods, remove debugging code).
2017-09-15 23:42:20 -02:30
Stephen Anthony
1d99a1e5fa
Refactored various page accessing functionality:
...
- Removed System::PAGE_SHIFT from all classes (except where it's needed inside System); it is an implementation detail of that class that shouldn't be used outside the class, and was making the various calls to setPageAccess very messy
- Changed uInt32 to uInt16, and loop variable to 'addr' for all calls to setPageAccess; this is for consistency, and allows the reader to see how all the code is similar in different classes
- Updated comments in various places (mostly TIA and RIOT) to more clearly show how page accessing works.
2017-09-15 23:28:20 -02:30
Stephen Anthony
ca69e2ed73
Refactor code and comments for TIA and RIOT 'page access' stuff.
2017-09-15 21:22:10 -02:30
thrust26
5f68b0565d
2nd part of Distella updates
2017-09-15 14:56:54 +02:00
thrust26
833d0c3b0e
test
2017-09-13 22:43:49 +02:00
thrust26
7af7dd3bb6
test test test
2017-09-13 22:30:17 +02:00
thrust26
9c550d4933
test test test
2017-09-13 22:28:58 +02:00
thrust26
a798dedabf
test 2
2017-09-13 22:16:46 +02:00
thrust26
76771c2c43
Merge branch 'master' of https://github.com/stella-emu/stella
2017-09-13 22:16:07 +02:00
thrust26
a515ab67f0
test 1
2017-09-13 22:15:46 +02:00
Christian Speckner
c26372da4c
Dot.
2017-09-13 20:37:54 +02:00
thrust26
95b04b2baa
1st part of Distella improvements
2017-09-13 16:04:54 +02:00
Stephen Anthony
648ed74527
Oops, missed one variable in the 64-bit clock conversion.
2017-09-12 11:04:59 -02:30
Stephen Anthony
86f65e8e87
Show message indicating what is being done when rewinding state (ie, '1 step', '10 frames', etc).
2017-09-11 15:58:41 -02:30
Stephen Anthony
483013baa7
Make PaddleReader constants private, to guard against same variable names used elsewhere.
2017-09-09 17:28:21 -02:30
Sergio Prado
391601d238
Fix error when building with uClibc-ng for ARM
...
The uClibc-ng C library defines a type called R0 when compiling for ARM,
that conflits with a global variable called R0 from PaddleReader.cxx.
src/emucore/tia/PaddleReader.cxx:25:3: error: ‘constexpr const double R0’ redeclared as different kind of symbol
R0 = 1.5e3,
^
/home/sprado/workspace/build/buildroot/build/stella_uclibc/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/include/sys/ucontext.h:42:3: note: previous declaration ‘<anonymous enum> R0’
R0 = 0,
^~
So let's redefine R0 as a private member of the PaddleReader class.
Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com>
2017-09-09 17:25:29 -02:30
Stephen Anthony
2dc355b0d5
Debugger 'saverom' and 'saveses' now save to the default save directory.
...
The 'saveses' command now creates a filename based on the date and time when the command was entered.
2017-09-09 17:20:22 -02:30
Stephen Anthony
b54b4eb4f6
Fixed documentation on some debugger 'save' commands; they don't take
...
any parameter, and choose the name (and locations) themselves.
This needs to be fixed, and will happen when I get to issue #172
(add save file dialogs).
2017-09-09 15:50:27 -02:30
Stephen Anthony
b814296a9e
Fixed bug in Windows, where 'Documents\Stella' wasn't being created.
2017-09-09 15:40:07 -02:30
Stephen Anthony
b7bf3b79b2
First pass at a consistent default for load/saving files that don't have a
...
pre-defined location (ROM files and disassemblies, etc).
- Repurposed the snapshot load/save folders by changing OSystem::defaultSnapLoadDir to OSystem::defaultLoadDir, and similar for the save dir
- In Windows, this directory will now be 'Documents\Stella', while in Linux/OSX it will be $HOME
- Testing still required for Windows and OSX; only Linux is confirmed to work for now
2017-09-09 15:06:21 -02:30
Stephen Anthony
9190943534
Added debugging output for FSNode.
2017-09-09 14:02:36 -02:30
Stephen Anthony
73282db9fd
Fixed bug in FSNodeWindows::getParent() not always working correctly.
2017-09-09 13:57:42 -02:30
Stephen Anthony
02bae6346a
Updated PNG library to latest version.
2017-09-08 23:55:02 -02:30
Stephen Anthony
a018dc604a
Extend debugger 'dump' command to take second parameter (for end of data range).
2017-09-08 22:23:45 -02:30
Stephen Anthony
823c693a9e
Final updates for recent 64-bit cycles refactoring.
2017-09-08 18:52:03 -02:30
Stephen Anthony
c4d04ffe26
CartCDF and friends refactoring (have similar functionality):
...
- rework music fetcher code; there can never be a negative cycle count
- use get/put double Serializer methods for doubles.
2017-09-08 18:36:06 -02:30
Stephen Anthony
b6907d0d8a
Added '_fcycles' debugger pseudo-op (gives cycles since frame started).
2017-09-08 17:59:33 -02:30
Stephen Anthony
ebb8725126
Refactor System::myCycles to be 64-bit instead of 32-bit.
...
- The cycles counter is now essentially monotonically increasing (ie, we never need to worry about it going backwards and giving a negative difference, simplifying a lot of code
- There are now reset() methods in all places that keep track of system cycles, but they are used for a full reset only; not called each frame like before (which had to be done to prevent overflow).
2017-09-08 11:29:30 -02:30
Stephen Anthony
0aa55b310d
Updated OSX project file for recent refactoring.
2017-09-04 14:37:13 -02:30
Stephen Anthony
59d58f8cdf
Updated Visual Studio project file for recent refactoring.
2017-09-03 23:31:59 -02:30
Stephen Anthony
eafe102daa
Refactor StateManager and RewindManager for eventual use outside debugger.
2017-09-03 23:02:15 -02:30
Christian Speckner
5ca9b7912b
Fix a very minor timing glitch in paddle emulation.
2017-09-02 00:53:08 +02:00
Christian Speckner
2757c906cb
More TIA documentation.
2017-09-02 00:46:54 +02:00
Stephen Anthony
c2302c2e71
Cart::getImage refactoring: use uInt32, since sizes are never negative.
2017-09-01 10:23:17 -02:30
Stephen Anthony
e858ddf167
Removed reference to class for 'MC' scheme in Windows and OSX builds.
2017-08-31 22:07:40 -02:30
Stephen Anthony
754c901b5a
Fix minor typos, but also a compile error (missing closing comments).
2017-08-31 22:03:41 -02:30
Christian Speckner
cd390bcc5a
TIA documentation.
2017-09-01 00:48:28 +02:00
Stephen Anthony
4440aabc56
Final updates for bankswitch schemes, updating documentation.
...
- Some schemes are not completely documented and/or implemented, and in those cases a FIXME has been added.
2017-08-31 19:21:20 -02:30
Stephen Anthony
6cf4aa4832
Further refactoring of bankswitching schemes, and removal of 'MC' scheme.
...
- MC is being removed, since the code has never been tested, and a test ROM has never been created
2017-08-31 15:31:27 -02:30
Stephen Anthony
31907f4be1
More peek/poke refactoring, and improved comments in bankswitching schemes.
2017-08-31 13:01:45 -02:30
Stephen Anthony
68f80f04d9
Peek/poke refactoring for next batch of bankswitch schemes.
2017-08-30 20:44:18 -02:30
Stephen Anthony
a5d9550f2f
First pass at cleanup of the peek/poke API from Device class:
...
- remove peek and poke from classes where the addressing is set up such that they aren't needed
- where possible, move from using 'myCurrentBank << 12' everywhere, to precomputing the value (perhaps a small optimization, but still valid)
2017-08-30 19:45:57 -02:30
Stephen Anthony
8cf8200908
Fixed logic error in detecting 'Alt' key.
...
DirtyHairy, it looks like you removed a negation and replaced it with
a positive (ie, you removed an _ifndef_, not an _ifdef_) :)
2017-08-30 19:41:16 -02:30
Christian Speckner
fd85f9d0d5
Basic support for plain UNIX-style builds on OSX.
2017-08-30 23:13:07 +02:00
Stephen Anthony
2930e74333
Updated FE debugger support to allow changing banks dynamically.
2017-08-30 17:22:56 -02:30
Stephen Anthony
1358be402f
Update explanation of FE scheme, and minor code optimization.
2017-08-30 16:53:00 -02:30
Stephen Anthony
d37b89e2fd
Oops, for Alex I used his github username, not the AtariAge one.
2017-08-30 12:00:26 -02:30
Stephen Anthony
ae8304563d
Updated credits for recent 'FE' research.
2017-08-30 11:52:02 -02:30
Stephen Anthony
92cd739001
Added 'Zippy the Porcupine' info to ROM properties database.
2017-08-30 11:09:06 -02:30
Stephen Anthony
3a02c54b0a
Updated FE scheme to that described by the original FE patent application.
...
- This emulation is much simpler, and takes the scheme from being
esoteric to being a simple hotspot-based scheme
- The original patent application for the FE scheme describes in perfect
detail what is happening, and although the previous code worked, it
was complex and actually hid what was really happening.
Now that the scheme is hotspot-based, the debugger can be extended to
work better with it. That part comes next.
2017-08-29 22:03:11 -02:30
Stephen Anthony
792421e67d
Updated ROM properties database (Champ Games, mostly).
2017-08-23 22:12:40 -02:30
Stephen Anthony
52c16d604b
Update TIA shadow registers for HMCLR (and code cleanup). Fixes #211 .
2017-08-22 16:38:52 -02:30
Stephen Anthony
21bf401836
Commandline arguments 'holdxxx' now work correctly ( fixes #209 ).
2017-08-22 14:15:30 -02:30
Christian Speckner
5661b245c7
Fix object positions in debugger (getting + setting), documentation.
2017-08-22 15:16:13 +02:00
Stephen Anthony
11d659e5cc
Bumped version number.
2017-08-20 21:32:09 -02:30
Christian Speckner
8367ef9828
Documentation typo.
2017-08-20 23:57:11 +02:00
Christian Speckner
25bf4f55d6
Prevent ystart detection code from oscillating between 'fixed' and 'floating'. Documentation.
2017-08-20 23:54:04 +02:00
Christian Speckner
168c7ba201
Fix genesis controller initial state.
2017-08-20 23:39:30 +02:00
Stephen Anthony
ab99610950
Bumped version number for 5.0.2 release.
2017-08-20 15:01:39 -02:30
Stephen Anthony
f280e31671
Printing of traps in debugger takes into account TIA read/write address.
2017-08-19 20:59:06 -02:30
Stephen Anthony
b608c5bf88
Updates for 5.0.2 release.
2017-08-19 20:34:00 -02:30
Stephen Anthony
6e55d98ad7
Fixed inconsistent Alt-p phosphor behaviour ( fixes #196 ).
2017-08-19 19:48:41 -02:30
Stephen Anthony
a9dd2b32cb
Debugger 'listtraps' now shows all traps ( fixes #190 ).
2017-08-18 18:47:35 -02:30
Stephen Anthony
48a99c6b6b
Make Random class serializable, and save to state files.
2017-08-18 12:36:54 -02:30
Stephen Anthony
c1f7c5c90b
Fix potential app lockups when emulated CPU execution fails in the debugger.
2017-08-16 19:00:32 -02:30
Stephen Anthony
6f60437a9c
Improve Blargg filters with cutoff on right side of screen ( fixes #195 ).
2017-08-15 17:49:59 -02:30
Stephen Anthony
24e55baa2c
Expose 'threads' option through the Video Settings -> General UI.
2017-08-15 10:58:19 -02:30
Stephen Anthony
4f336eddeb
Added 'threads' commandline argument, to enable/disable multi-threading.
...
- Still TODO is expose this in the UI, but the infrastructure is there
- For now, this defaults to off
2017-08-14 21:29:48 -02:30
Stephen Anthony
f011006af1
Removed unused variable.
2017-08-14 17:51:02 -02:30
Stephen Anthony
a29d1da57b
Threaded Blargg + phosphor improvements:
...
- Handle case of only 1 or zero (!) reported cores
- Fix memory leak by using smart pointers
2017-08-14 11:57:19 -02:30
Christian Speckner
6d1a306b52
Blargg and phosphor threading by Thomas Jentzsch.
2017-08-14 09:20:42 -02:30
Stephen Anthony
7a9cde3e4d
CDF updates (with versioning) from Spiceware.
2017-08-14 09:11:54 -02:30
Stephen Anthony
f57d69a023
Fixed reading collision of ball and playfield ( fixes #189 ).
2017-08-13 14:43:31 -02:30
Stephen Anthony
193da6c845
Fix DiStella trying to process the same PC address repeatedly ( fixes #188 ).
2017-08-13 13:43:48 -02:30
Stephen Anthony
55111c4ccb
Fixed minor warning for potential uninitialized variable.
2017-08-09 22:38:39 -02:30
Stephen Anthony
1e7e4cbe20
More TIA rendering optimizations.
2017-08-08 12:11:45 -02:30
Stephen Anthony
8759f340e8
Oops, premature optimization; it broke changing phosphor blend level.
2017-08-07 18:56:13 -02:30
Stephen Anthony
1dc78a9b5b
Pre-calculate phosphor colours, and remove redundant shift parameter.
...
This leads to nice speedups in the TIASurface::render() method.
2017-08-07 18:39:30 -02:30
Stephen Anthony
322af0fb38
Fixed code where emplace_back was being used incorrectly.
2017-08-06 13:57:09 -02:30
Stephen Anthony
e2b78b6df7
Remove redundant checks for 'ramrandom'; the code is checking a boolean,
...
then calling a method and checking the boolean again.
2017-08-06 13:30:45 -02:30
Stephen Anthony
18568cfbeb
TIA performance improvements by Thomas Jentzsch.
2017-08-06 12:39:53 -02:30
Stephen Anthony
4a447290af
Reverted Decathlon and allow all 4 directions being the default.
2017-08-06 12:05:31 -02:30
Stephen Anthony
8ce4d3468e
Updated OSX project file for recent refactoring.
...
Fixed minor compile warning.
2017-08-05 13:34:56 -02:30
Stephen Anthony
025a1a7918
Minor refactoring, slight speedup of passing data in sound code.
2017-08-02 19:21:36 -02:30
Stephen Anthony
b23830487d
Minor refactoring; remove const reference where not needed.
2017-08-02 17:53:07 -02:30
Stephen Anthony
f928277430
Updated Visual Studio project for recent refactoring.
...
Fixes a few minor warnings.
2017-08-02 16:16:05 -02:30
Stephen Anthony
d22ed691b5
Updated PointingDevice (trakball and friends)
...
- changed from templates back to inheritance (sorry DirtyHairy :))
- added 'tsense' commandline argument and associated UI
- updated docs and screenshots for new functionality
2017-08-02 16:07:02 -02:30
Stephen Anthony
ace146fe52
Introduce another version of BSPF::clamp.
2017-08-02 15:26:48 -02:30
Stephen Anthony
87282e6707
Further improvements to trakball handling by Thomas Jentzsch.
2017-08-01 11:15:41 -02:30
Stephen Anthony
6e4503f762
Further improvements to the trakball and friends cursor movement.
2017-07-30 20:19:00 -02:30
Stephen Anthony
5a5c520443
Updated Visual Studio project file to be compatible for everyone.
...
Basically, removed all paths that were specific to me (stephen)
and used relative paths instead.
The development webpage will need to be updated to match this.
2017-07-30 15:09:00 -02:30
Stephen Anthony
04ce40b27c
Make sure trakball is read over entire vertical range.
2017-07-30 13:14:16 -02:30
Stephen Anthony
eaf19d2b90
Forgot to include a file in the Windows project file.
2017-07-30 12:10:52 -02:30
Stephen Anthony
7652be906d
Updated OSX project file for Controller refactoring.
...
- Minor refactoring in PointingDevice class
2017-07-30 12:02:48 -02:30
Stephen Anthony
91c5020a38
Updated Visual Studio project file for Controller refactoring.
...
- Some minor code refactoring/changes
- Updated changelog and bumped version number.
2017-07-30 11:48:52 -02:30
Christian Speckner
218da3576c
Refactor pointing devices, include Thomas' patch for movement inconsistencies.
2017-07-30 15:18:55 +02:00
Stephen Anthony
aebe8fabc6
Revert Alt-Enter handling from previous commit; it only seems to work reliably for Alt-Tab.
2017-07-27 12:15:52 -02:30
Stephen Anthony
4af7ba28fb
Fix for weird Alt-Tab behaviour in Linux.
...
- An extraneous TAB key event was being generated
- This is possibly an SDL bug in Linux only; it doesn't happen on other systems
- I've contacted the SDL mailing list for more info, so this code may be temporary
2017-07-26 21:18:08 -02:30
Christian Speckner
246b5e7596
Move frame manager to dedicated subdir, remove all external deps on it.
2017-07-27 00:33:39 +02:00
Stephen Anthony
00afc8ea4f
Final updates for 5.0.1 release.
2017-07-23 12:33:16 -02:30
Stephen Anthony
9155a10250
Merge branch 'master' of https://github.com/stella-emu/stella
2017-07-21 23:30:26 -02:30
Stephen Anthony
7c2da9512d
Updated OSX project file for C++14 changes.
2017-07-21 21:43:47 -02:30
Stephen Anthony
9bf95e9c88
Updated Visual Studio project file for C++14 changes.
2017-07-21 21:27:34 -02:30
Stephen Anthony
cd689941b6
Move to C++14, now that all the minimum required compilers support it.
...
Clang 3.8, gcc 5, Visual Studio 2017 and Xcode 8 are now the minimum
supported compilers, and they all support C++14, so we may as well use it.
- Change all make_ptr to make_unique
- Change iterator begin(), end(), etc to const versions where appropriate
- Remove UniquePtr, since C++14 supports it natively
2017-07-21 21:10:13 -02:30
Christian Speckner
0d5d3de420
Analog input refactoring and improvements
...
* Lazily update readout circuit simulation as soon as the pin
changes
* Always assume that "max resistance" means "connected to ground"
* Minor accuracy improvements
2017-07-22 00:38:02 +02:00
Stephen Anthony
706755ad7f
Fixed minor compile warning.
2017-07-20 18:58:19 -02:30
Stephen Anthony
2cc2fa6cc1
Make Decathlon ROMs always use all 4 directions on a joystick.
...
This is necessary, since the original controller was meant to be
track & field controller with two buttons, which map to left/right
on an Atari.
2017-07-20 11:15:57 -02:30
Stephen Anthony
fe7c980d93
Minor refactoring in CompuMate class.
...
While having friends in real life is good, we should minimize them
in classes :)
2017-07-20 10:56:17 -02:30
Stephen Anthony
953761e1a1
Added 'Hunchy II' to ROM properties database.
2017-07-19 21:25:35 -02:30
Stephen Anthony
02b1f7e078
Make Random::next() const, since logically it should be.
...
The fact that it updates an internal variable is an implementation
detail that shouldn't be exposed outside the class.
2017-07-18 18:17:39 -02:30
Stephen Anthony
97f1220e11
Bumped version number for next release; we start again ...
2017-07-18 18:12:05 -02:30
Stephen Anthony
86734a4c1e
Fixed formatting in changelog, and bumped version number.
2017-07-15 20:47:54 -02:30
Stephen Anthony
43c22af274
Fixed bug with missile colouring in debugger not changing colour
...
until after an instruction was executed. Also, toggle-able widgets
(pixel and bits) in the debugger can now be toggled with a single
mouse click, not a double-click. These fix issue #15 .
2017-07-15 17:36:06 -02:30
Stephen Anthony
199627f0cb
Updated Xcode project file for ColorWidget move.
2017-07-15 11:59:31 -02:30
Stephen Anthony
9f8baadb29
Some cosmetic UI changes and updated screenshots/docs.
2017-07-15 11:48:15 -02:30
Stephen Anthony
d74bbba4f9
Updated documentation and screenshots.
2017-07-14 22:39:49 -02:30
Stephen Anthony
bd759b68cb
Added ability to force-enable TV phosphor mode.
...
This is enabled in the UI or through the 'tv.phosphor' commandline
argument. Note that what was previously 'tv.phosphor' (for setting
the blend level) is now 'tv.phosblend'.
Updated documentation in various places.
2017-07-14 21:28:26 -02:30
Stephen Anthony
adddc635f2
Pressing F12 in the debugger saves snapshots (implements #161 ).
2017-07-14 20:24:29 -02:30
Stephen Anthony
c364526ff6
Made 'tv.jitter' effect enabled by default.
2017-07-14 09:27:04 -02:30
Stephen Anthony
e99cbd8956
Made ColorWidget honour disabled colors.
2017-07-14 09:24:38 -02:30
Stephen Anthony
7904f3e900
Updated Visual Studio project file for ColorWidget move.
...
Fixed crash when attempting to enter "Video Settings" from the
ROM launcher; in that case, 'Debug Colors' must be disabled, since
the widgets only take effect in emulation mode.
2017-07-13 21:45:57 -02:30
Stephen Anthony
66e5a07f20
Make 'fastscbios' option default to true.
...
This was mentioned in some thread; I forget where, but the consensus
is that this should be the default.
2017-07-13 20:53:20 -02:30
Stephen Anthony
fbb73b72f1
Erase old contents of RGB buffer when toggling phosphor and Blargg
...
effects (fixes #175 ).
Right idea, but I always forget that memset operates on bytes,
but the RGB buffer contains uInt32 (so multiply by 4).
2017-07-13 19:27:21 -02:30
Stephen Anthony
626ff450d9
Added ability to change debug colors from "Video Settings".
...
Moved ColorWidget from src/debugger/gui to src/gui, since it needs to be
compiled even when the debugger is disabled.
Minor code refactoring.
2017-07-13 18:40:42 -02:30
Stephen Anthony
d9f52599dc
Marked BUS scheme as experimental per authors request.
2017-07-12 18:07:40 -02:30
Stephen Anthony
87c1d12d1d
Fixed dynamic setting of phosphor blend to not wraparound when reaching 0.
2017-07-12 16:16:41 -02:30
Stephen Anthony
0d1481cb9d
Revert behaviour of TIA read from write-only addresses to match
...
Stella 4.x (fixes #173 ).
2017-07-11 17:18:56 -02:30
Stephen Anthony
e9acf1f1e8
Updated various docs for impending 5.0 release.
...
Finalized state file format at 5.0.0.0.
2017-07-09 22:56:16 -02:30
Stephen Anthony
d613173cd7
The default phosphor blend level can now be set globally ( fixes #144 ).
...
Added new 'tv.phosphor' commandline argument to accomplish the above,
and associated UI item in Video Settings.
Updated docs for 'tv.phosphor' and 'tia.debugcolors'. More work is
needed on this, since I need to add screenshots for this new functionality.
2017-07-09 22:40:06 -02:30
Stephen Anthony
7f6637a802
Updated ZLIB and PNG libraries to latest released versions.
2017-07-09 16:49:17 -02:30
Stephen Anthony
fadf9d5535
Updated ROM properties to RomHunter version 13.
2017-07-09 15:48:10 -02:30