Commit Graph

3123 Commits

Author SHA1 Message Date
stephena a7f4b76b3b Modified Stack class to use std::array instead of a raw array pointer.
This allows to remove assert statements (and instead use exceptions),
as well as fix a bug issued by Coverity.

Fix final bug reported by Coverity in ComboDialog class, where array
contents weren't being initialized.  This isn't really a bug at all,
since the lambda takes care of initialization, but Coverity doesn't
support lambdas yet.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3238 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-12-11 15:24:29 +00:00
stephena fd8eb1aa1d Fixed more Coverity-reported errors. We're now down to a 0.02 defect
rate (0.5 or so is the average for a codebase of this size)!


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3237 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-12-10 16:34:24 +00:00
stephena 336536745f More Coverity fixes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3236 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-12-09 17:08:52 +00:00
stephena 8b7043d74a More bugfixes as indicated by Coverity.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3235 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-12-06 18:12:17 +00:00
stephena 9e23bc3580 Some bugs indicated by running Stella through Coverity. Note that many
of these aren't actually bugs per-se, but are to follow good programming
practices.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3234 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-12-05 01:30:17 +00:00
stephena 47911eff21 Some cleanup of redundant spacing. Now that I'm free for basically the next month,
I'll be starting work on Stella again.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3233 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-12-04 19:08:14 +00:00
stephena bfdaeadd55 Updated various files for next point release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3231 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-10-28 19:52:12 +00:00
stephena 3517259982 Fixed bug in reading paddle input from Stelladaptor; I was a little too
eager in code cleanup from 4.6.1.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3229 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-10-28 15:27:34 +00:00
stephena 23cfae3025 Fixed error in MDM scheme; an IF condition was always true.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3228 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-10-12 15:49:55 +00:00
stephena d36a3ce44b Updated files for 4.6.6 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3226 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-10-11 15:19:16 +00:00
stephena c4b94f008d Fixed MDM bankswitch bug; it was only looking for addresses below $C00,
and ignoring mirrored addresses.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3225 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-10-11 14:51:50 +00:00
stephena f5eca188ce And the process starts again.
Added shortcut key to toggle TV scanline jittering, and have it default
to off.  I'd really like to enable it again eventually, or perhaps use some
of the code in the case where scanline jumps are *really* large (since it
seems to emulate the output for every TV I've ever seen).

Bumped version #.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3221 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-29 21:14:12 +00:00
stephena f367b3a9a6 Final commit for 4.6.5 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3219 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-25 23:08:08 +00:00
stephena 573570c1c8 Fairly large overhaul of the OSX SDLmain.m file, removing redundant
code that was used for SDL 1.2, etc.  It is now much easier to
understand and modify (but I *still* hate Objective-C).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3217 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-25 22:45:44 +00:00
stephena eb8e1666c3 Updated OSX build files for Xcode 7, eliminating all warnings.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3216 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-25 20:42:33 +00:00
stephena 55a37262e0 Updated Windows build script so that the Stella icon is shown in the Control Panel remove software window.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3215 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-24 22:52:41 +00:00
stephena 8c9c9e97ee Bumped 4.6.5 release date to Friday, September 25.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3213 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-22 17:53:28 +00:00
stephena 75acbe8aac Getting ready for the 4.6.5 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3212 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-21 13:27:25 +00:00
stephena 75c189f38b Updated VS project to remove warning that always used to appear at the end of a compile.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3211 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-20 21:55:35 +00:00
stephena 82f413cfe5 Enable a few extra compiler checks in the Linux build script,
and fix a few warnings that gcc caught and clang missed.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3210 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-20 01:13:53 +00:00
stephena ef5f1bad4d More clang warning cleanups.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3209 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-15 15:50:25 +00:00
stephena 75893a6a3e Fixed some more C 'old-style-cast' code.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3208 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-15 12:39:07 +00:00
stephena ffc9ac65a7 A few more fixes wrt the recent pruning for Visual Studio.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3207 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-14 22:18:55 +00:00
stephena 2ccebc9720 Oops, a little too much pruning, detected by compiling in OSX.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3206 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-14 21:44:24 +00:00
stephena d83d91570e More clang warnings fixed; these apply mostly to 'old-style-C' casts.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3205 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-14 21:33:50 +00:00
stephena 687b638437 Second pass at cleaning up warnings generated by -Weverything in clang.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3204 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-14 18:14:00 +00:00
stephena f539cef173 I decided to turn on '-Weverything' compiler flag in Clang++ to
see what errors are present in the code.  This is the first pass
in cleaning up the errors it found.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3203 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-13 23:23:12 +00:00
stephena 5620c270bc Finally fixed the annoying warning when building under OSX.
It was referring to Objective-C categories vs. subclasses.
I'm really glad I don't have to know anything further about
Objective-C :)


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3202 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-12 21:28:30 +00:00
stephena 92fcba53a5 Fixed a few code warnings in the new jitter code.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3201 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-12 18:51:35 +00:00
stephena 3c691a91ec Updated VS project file for new RiotRamWidget class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3200 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-12 18:12:15 +00:00
stephena a331fb228b Added emulation for frame 'jitter' based on inconsistent scanline
counts.  Thanks to Spiceware for the idea and implementation.

Tweaked 'MDM' autodetection; the identifying string can be in
either bank 0 or bank 1 (or both).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3199 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-11 22:46:13 +00:00
stephena 20251f6a9f Updated OSX prject file for new debugger class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3198 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-10 00:04:05 +00:00
stephena 70e40a10c9 Updating various files for 4.6.5 release, sometime this month.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3197 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-09 16:58:41 +00:00
stephena 4e1b4c95f9 Fixed incorrect bankswitch hotspots for 'MDM' scheme in the debugger.
Changed next version # to 4.6.5; 4.7 will include improved paddle
emulation, but it's not ready yet.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3196 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-09 16:54:39 +00:00
stephena cc7943610d Created a new class RiotRamWidget, which takes the place of the
old RamWidget.  Class RawWidget is now an abstract base class
to RiotRamWidget and CartRamWidget, allowing to share quite a lot
of code.  In the process, both classes now implement input from
the binary and decimal widgets, not just the DataGridWidget.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3195 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-09-07 23:12:00 +00:00
stephena 62fa17b7fa Fixed PNG library compile error on OSX (and possibly Windows).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3194 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-08-11 14:33:55 +00:00
stephena 74b2a209e2 Cleaned up some code in Thumb ARM emulator, and clearly marked compiler
warnings that should eventually be fixed.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3193 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-08-09 21:19:10 +00:00
stephena 3312ea5b70 Updated include PNG library to latest version.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3192 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-08-09 20:16:48 +00:00
stephena 38dce5194e Some minor improvements, self-documentation, etc.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3191 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-08-09 18:07:04 +00:00
stephena 237f0e5d35 The debugger CPU area now has editable decimal and binary fields for the
registers.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3189 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-07-26 17:28:57 +00:00
stephena 36ef5cd112 Enable extra warnings for VS build.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3188 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-07-14 20:34:47 +00:00
stephena f1a10c3143 Eliminated superfluous drawTIA() method, made it inline.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3187 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-07-13 17:33:38 +00:00
stephena e456406b69 Fixed OSX snapshot bug; the TIA image wasn't being completely drawn before
taking a snapshot.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3186 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-07-13 14:46:52 +00:00
stephena 05623c52eb Remove several BSPF defines that are obsolete.
Changed valid() method Serializer to an explicit bool() operator,
to function similar to C++ streams.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3185 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-07-11 22:03:12 +00:00
stephena 4c8fb3c17d Added 'override' keyword to Windows and OSX-specific classes,
even though their respective compilers don't yet support detecting
errors with inconsistent override usage.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3184 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-07-11 00:12:19 +00:00
stephena 84b225206d Turn on more warnings in the OSX build. Unfortunately the latest
version of Xcode doesn't warn about 'override' issues, so adding
override to the codebase doesn't help compilation in OSX.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3183 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-07-10 23:40:23 +00:00
stephena 4792b534d5 Fairly large commit, but basically it is only enabling the 'override'
C++11 keyword.  This makes developing/maintaining class hierarchies
more manageable.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3182 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-07-10 18:59:03 +00:00
stephena 74cf5e6f5f Changed 'Swap' to 'Toggle' in the names of the Event class for toggling
certain other events.  A small change to be sure, but the name more
appropriately describes what the event does.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3181 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-06-29 11:41:22 +00:00
stephena 7350e8f6c1 Added mappable events for toggling TV color type and left/right A/B difficulty.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3180 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-06-28 22:32:36 +00:00
stephena 26e9f15b86 Changed 'hidecursor' to 'cursor', and allowed it to set cursor visibility
for UI and emulation modes separately.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3179 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-06-28 18:16:33 +00:00