Commit Graph

27 Commits

Author SHA1 Message Date
Stephen Anthony c2302c2e71 Cart::getImage refactoring: use uInt32, since sizes are never negative. 2017-09-01 10:23:17 -02:30
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 68f80f04d9 Peek/poke refactoring for next batch of bankswitch schemes. 2017-08-30 20:44:18 -02:30
Stephen Anthony 9972af022a Fairly huge refactoring of the cart autodetection code.
This has been in patch form for about a year, and I'm finally
getting around to applying it.  Basically, we separate the Cart
class into 3 classes:
  - Cart: stuff specific to cartridge emulation
  - BSTypes: various bankswitch types, both as enum and strings
  - CartDetector: actual bankswitch auto-detection code

Also made more use of smart pointers, and added const in a few
more places.

I promise to get back to the phosphor stuff soon.  This is just
to clear my head a little.
2017-07-02 19:27:27 -02:30
Stephen Anthony abb7097cb7 Removed $Id$ stuff from codebase, since it's Subversion-specific.
Whitespace cleanup and update copyright to 2017.
2016-12-29 20:30:30 -03:30
Stephen Anthony 760d889478 Fixed crash in auto-detecting Compumate ROM.
The PAL version is still mistakenly detected as NTSC, though.
2016-12-13 20:03:12 -03:30
stephena 755611a5c1 In my quest to remove all d'tors, converted many more raw pointers to
unique_ptr.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3258 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-23 22:56:16 +00:00
stephena 2aec7bc1b1 Converted classes in src/emucore to properly use C++11 '= default'
for destructors.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3240 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-12-29 21:28:10 +00:00
stephena 8f2d3a6cbb Updated copyright to 2016, even though it's a few days early.
To anyone reading this, Merry (belated) Christmas and Happy New Year!


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3239 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-12-29 19:22:46 +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 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 e7fb7318fb Bumped version #.
Introduce namespace to class MD5, so the method call is now MD5::hash()
instead of simply MD5().

Added C++11 '= delete' constructors to most classes, to more clearly
indicate the intent of the class.  Note that this isn't absolutely
necessary, but is considered good form.  I will be teaching a C++ class
over the summer using Stella for examples, so it makes sense to follow
the standard and the textbook recommendations :)


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3164 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-04-26 19:02:42 +00:00
stephena 0afb189322 Updated copyright to 2015. Happy New Year to anyone reading these logs :)
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3131 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-01-01 03:49:32 +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 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 9f172cbb42 Fixed potential bug in Cartridge API; renamed bank() to getBank(),
since there are issues with mixing overloading and virtual functions.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2963 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-28 13:40:37 +00:00
stephena aa5691af8a OK, it looks like I'm back to Stella development, after a several month
break.  First thing to do is update the year.  Happy new year to anyone
reading these commit logs.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2833 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-01-12 17:23:42 +00:00
stephena 963c5d621b Changed 'dbg.boldfont' to dbg.fontstyle', which allows to use a combination
of bold and normal fonts within the debugger UI.  Because of the # of changes
this requires, this is as far as I'll willing to go with UI configurability.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2820 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-26 13:01:29 +00:00
stephena 9a8dc860c0 Added Compumate to the debugger ROM tab, but there are still
a few UI items left to complete.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2704 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-04-22 16:41:05 +00:00
stephena c4e5360a18 Updated copyright dates to 2013.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2579 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-04 19:49:01 +00:00
stephena b7d8099ed0 Changed release date to today; there's no point waiting for next week.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2422 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-16 20:31:31 +00:00
stephena 44b5cf66b9 The CompuMate emulation now correctly processes normal and
shifted keys from the keyboard.  Most control-keys are
supported too, but still TODO is allow the Control key to
pass to the CompuMate controller and not pre-process it
by the EventHandler (so pressing Ctrl-q) shouldn't quit
emulation in that case).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2414 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-15 15:22:57 +00:00
stephena 82a4bc13b1 More work on the CompuMate scheme. The logic for the Controllers is
now complete; I just need to define how to pass actual keyboard keys
through the Event system.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2413 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-14 22:24:54 +00:00
stephena 80c43f175d Started work on the controller side of the CompuMate emulation.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2411 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-12 23:33:50 +00:00
stephena b80a0ecdc9 Updated CompuMate emulation. This bankswitching side of things seems to be
working fine.  Still TODO is the controller side, so you can actually input
some data.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2408 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-11 23:26:12 +00:00
stephena c1e171ee44 Added skeleton class for CompuMate bankswitching.
Updated all bankswitch schemes for potential buffer overflow
issues.  Copying was being done without regard for the size of the
ROM buffer.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2325 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-02 20:31:42 +00:00