Commit Graph

3439 Commits

Author SHA1 Message Date
stephena f0539ae7e1 Cleaned up function calling from expressions for various debugger subsystems.
I'd hoped to use std::function, but I don't want to dive any further into the
arcane YACC syntax.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3080 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-17 01:36:44 +00:00
stephena 021e0caa55 Changed to std::function in DebuggerParser.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3079 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-17 00:08:23 +00:00
stephena a6eded9c65 Cleaned up cheat classes, replacing pointers with smart_ptr.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3078 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-16 21:08:21 +00:00
stephena 2707e4e4e0 Updated OSX project file for class removal.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3077 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-16 17:22:56 +00:00
stephena f12732042a Updated Visual Studio for recent class removal.
Removed constexpr, since VC++ 2013 doesn't support it yet.

git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3076 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-16 16:50:46 +00:00
stephena 29fe39dd99 Made M6502 own all breakpoint/trap info instead of sharing pointers to
it with the debugger (this eliminates more new's and empties another d'tor.

Re-wrote PackedBitArray to use a bitset instead of home-made code.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3075 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-16 16:13:58 +00:00
stephena c997fc3001 Converted M6502 class to use unique_ptr Expressions, and removed some dead code.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3074 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-16 00:28:39 +00:00
stephena 526fbed5e6 Some reorganization of debugger Expression classes, and using unique_ptr.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3073 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-15 23:10:58 +00:00
stephena 690b681fe7 Convert FrameBuffer/FBSurface to use shared_ptr instead of raw pointers.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3072 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-15 18:29:13 +00:00
stephena 4544f59b53 Replaced #define'd macros with lambdas where possible. Did I mention
I also love lambdas?

Minor cleanups to other parts of the code (missing virtual, cleanup
d'tors, move methods from public to private, etc).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3071 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-10 23:35:24 +00:00
stephena 49eadb7463 More conversions from normal for to range-based for. Yes, I really love
range-based for that much.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3070 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-10 21:59:56 +00:00
stephena e352b3a6bb Updated PNG library to latest version
Decided that the next version will be 4.5, since it requires new compilers
and, in the OSX case, a newer version of the OS.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3069 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-10 20:27:29 +00:00
stephena 2095b29873 Updated docs for C++11 requirements.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3067 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-10 16:55:01 +00:00
stephena b863b55594 Some more optimizations and small code cleanups.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3066 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-10 16:13:28 +00:00
stephena 1d1851dc3c Updated OSX project file for class rearrangement.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3065 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-10 01:33:48 +00:00
stephena 218e153793 Updated Visual Studio project file for recent class rearrangement.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3064 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-09 22:23:11 +00:00
stephena 4c9e139fcc Cleaned up the OSystem code for managing Console and Debugger, removing
stuff from destructors and using unique_ptr.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3063 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-09 22:03:50 +00:00
stephena db139bef1a Converted FrameBuffer surface storage to unique_ptr. In the process,
I realized that they didn't need to be stored in a map, since the integer
ID was never actually being used.  This must have been part of a proposed
API that I've since deleted??


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3062 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-09 15:10:47 +00:00
stephena 5d927915ab A few more unique_ptr instances which I missed.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3061 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-09 13:41:55 +00:00
stephena 1b7635649c More conversions to unique_ptr, so deletes can be removed.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3060 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-09 04:01:31 +00:00
stephena 92aa5c2e36 Just when I thought there were no more cleanups to do ...
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3059 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-09 03:05:19 +00:00
stephena 4f91fd96ed A few more optimizations. It looks to be close to the end of the conversion.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3058 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-08 23:50:23 +00:00
stephena b89dfa7436 Updated OSX project file, fixed some minor compile warnings,
and bumped version # to 4.5 for the next release (whenever it
may happen).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3057 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-08 22:40:50 +00:00
stephena 874c88a9d2 Updated Visual Studio project file for recent Array restructuring.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3056 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-08 22:09:18 +00:00
stephena 7b9169c18d Convert all arrays in the codebase to vectors, so that we get all
the advantages of C++11 (move semantics, list initialization, etc).
I'd hoped to somehow wrap a vector behind Common::Array and not have
to change the codebase to this extent, but it didn't work out.  And
I've since read that it's bad form to extend from std::vector anyway.
This is *THE LAST* bit of work I'm doing with arrays; everything is
now a proper vector.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3055 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-08 21:27:36 +00:00
stephena 740eeed579 You know what's better than adding move semantics and initializer
lists to the Array class?  Completely deleting all that code and
using a std::vector directly :)


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3054 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-07 23:28:40 +00:00
stephena 9cf9b41989 Fixed some yacc issues, and a memory leak in debugger expressions.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3053 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-07 19:32:54 +00:00
stephena f54118226c Some formatting/nullptr fixes for src/debugger.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3052 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-07 15:52:24 +00:00
stephena a9aa84e3a3 Some more nullptr and formatting cleanups.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3051 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-07 14:26:56 +00:00
stephena 5d6ca08617 Updated OSX project file for recent class renaming.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3050 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-07 01:02:02 +00:00
stephena 17f328fd41 Updated Visual Studio project file for recent class renaming.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3049 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-07 00:49:43 +00:00
stephena 35478c6d3f Renamed all Blargg-related files as .hxx and .cxx, since I'm tired
of the compiler always complaining about it.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3048 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-07 00:41:42 +00:00
stephena a165c48fab Some NULL/nullptr and formatting cleanups in src/common.
Renamed mainSDL.c to main.c, since it is no longer dependent on SDL,
and I'm trying to encapsulate SDL-specific code into as few places
as possible.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3047 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-07 00:31:46 +00:00
stephena 08649b2069 Implemented move semantics and initializer list for Array class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3046 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-06 23:27:01 +00:00
stephena 5bc3737a2b Updated OSX project file for SharedPtr changes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3045 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-05 23:26:43 +00:00
stephena affd95d94e Removed home-grown sharedptr class for the real thing.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3044 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-05 15:56:27 +00:00
stephena 0ebe8d3f57 Updated OSX project file for NullDev class removal.
Now that 10.7 is the minimum supported version for OSX, we can
also move to 64bit-only binaries.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3043 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-05 01:39:26 +00:00
stephena 73badae2d0 OK, this is the last commit about pointers for the CompuMate stuff.
Again, still learning the best way to use C++11 here.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3042 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-04 23:26:23 +00:00
stephena 51737b9720 Still learning the difference between shared and unique pointers.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3041 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-04 22:03:40 +00:00
stephena 829d049385 Updated Visual Studio for removal of NullDev class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3040 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-04 01:06:04 +00:00
stephena 7e25d13b13 OK, this is the last pointer change for Console; the d'tor is now empty.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3039 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-04 00:52:00 +00:00
stephena a48c4fc6a8 A slight restructuring of the Controller classes, to fix CompuMate
support broken in rev 3034.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3038 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-04 00:34:56 +00:00
stephena 03f760cceb A few more nullptr and unique_ptr fixes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3037 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-03 17:36:28 +00:00
stephena 3949101fb7 Some 'nullptr' updates to Cart classes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3036 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-03 17:16:43 +00:00
stephena 6f5c5b2df5 Integrated NullDevice into one header file.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3035 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-03 16:39:26 +00:00
stephena 5dbb2e4261 More pointer rearrangment for Console class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3034 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-03 16:24:05 +00:00
stephena a21f3be6e4 Turned variable into static constant in M6502, since it has never changed
since Stella was created.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3033 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-03 13:22:57 +00:00
stephena 49bc759bee The OSX build now works for C++11. From this point on,
OSX 10.7 is the minimum version supported.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3032 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-03 00:03:33 +00:00
stephena 79ada8685c The long march to converting Stella to C++11 has finally started. Already,
I've found and fixed a few memory leaks.  You will need an up-to-date compiler.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3031 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-02 23:40:20 +00:00
stephena bd1a391eb3 Fix warning in VC++.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3030 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-02 23:02:02 +00:00