Commit Graph

49 Commits

Author SHA1 Message Date
Stephen Anthony 9ad47ae5f3 Updated copyright to 2020. Happy New Year to anyone reading this! 2019-12-31 13:48:56 -03:30
Stephen Anthony 36683adec1 And yet more fixes for warnings from clang-tidy. 2019-12-28 00:45:09 -03:30
Stephen Anthony 7d17df05dd Changed Base::Format to Base::Fmt, and made it a scoped enum. 2019-12-21 21:27:18 -03:30
thrust26 d7c4b1a7b9 Add considering addresses for current bank. This is important for types where the 4K ROM address space is segmented into smaller slices, so there can be more than one bank at a time.
This addresses #536.
2019-09-07 14:29:33 +02:00
Thomas Jentzsch 109e6c1065 disabled unreachable code 2019-08-16 11:07:16 +02:00
Stephen Anthony 275666b0af The annual copyright year update. 2019-01-01 11:35:51 -03:30
Stephen Anthony 69fb08e30c Remove '_rwport' from the debugger.
The new way of detecting RWP is superior, and we don't have time to rework _rwport to use it.
This may come back in the future (if required), but I honestly don't see a need for it.
2018-12-18 20:56:19 -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
thrust26 0d609f6845 renamed '_cycles' into '_icycles' (fits better) 2017-12-15 19:12:46 +01:00
thrust26 9f7270a70d '_cycles' pseudo register added (returns cycles of last instruction) 2017-12-15 18:13:29 +01:00
thrust26 53d4745479 pseudo-op "_scycles" (cycles into current scanline) added 2017-10-12 21:08:24 +02:00
Stephen Anthony fdf813cf06 Fixed nullptr vs. 0 issues in Debugger; removed nasty C-style char pointers. 2017-10-12 00:08:52 -02:30
Stephen Anthony 10bdcd58d2 Third pass at fixing warnings:
- added very stringent checks when compiling under clang; for now, there will still be warnings,
  since I haven't addressed the specific code yet (probably issues in OSX too)
- no issues when compiling with gcc; still need to check VS.
2017-10-11 21:49:31 -02:30
Stephen Anthony be48e643e6 Second pass at cleanups from increased warning level. 2017-10-11 18:18:07 -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
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 d15690f5f1 added mirrors 2017-10-08 10:43:26 +02:00
thrust26 f862e1c97d progress... 2017-10-07 14:17:34 +02:00
thrust26 ba764fdc06 added _cyclesLo and _cyclesHi to debugger prompt 2017-09-19 20:49:48 +02:00
Stephen Anthony b6907d0d8a Added '_fcycles' debugger pseudo-op (gives cycles since frame started). 2017-09-08 17:59:33 -02:30
Stephen Anthony 3aeae9b6f6 Improvements to the debugger prompt
- commands are now properly range checked (byte, short, etc)
  - better error messages
  - internally, use 16-bit/8-bit instead of 32-bit when necessary
2017-04-15 19:00:50 -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
stephena eb56efc3d5 Convert BSPF C-style macros to C++ namespace equivalent.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3302 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-04-02 23:47:46 +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 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 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 e9e3670134 Fixed shadowing of local variables.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3165 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-04-28 20:18:44 +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 6c900cdec5 Some minor code cleanups, and converting 0 to nullptr.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3106 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-12-13 21:00:33 +00:00
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 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 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 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 95fe213f3a Consolidated the code for converting integers to strings in various
bases into a Common::Base class.  Previously, this functionality was
spread across several classes, and used different approaches to formatting.
While the code still mixes C++ streams and C-style sprintf's, at least
it will now be easier to modify it all in one place.

Related to the above, added ability to use upper or lower case
characters for HEX output in the debugger.  This is toggled by the
new debugger prompt command 'uhex', which is also tied to a new
commandline argument, 'dbg.uhex'.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2770 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-07-27 22:28:41 +00:00
stephena 3f4085f8b9 Added ability to change 'tiadriven' and 'ramrandom' to the debugger UI.
Cleaned up the class comments wrt ScummVM; the attributions only needed to
be in the base classes, since all the derived stuff was written later.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2763 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-06-29 00:02:49 +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 c95d5f804d Updated all files to copyright 2012. Happy New Year to anyone reading
these logs!

Moved TODO and Credits info directly to the webpage, where it will hopefully
be easier to maintain.

Fixed 'crackling' sound when loading a new ROM, introduced with the 3.5
sound restructuring.  It looks like stale data was being loaded by the
sound processing callback.  As well, moved the computation of certain
division variables from the sound callback to the framerate re-calculator
(where it's recomputed 1/5 of the time or less).

Updated AboutDialog with info about Stella DonationWare status, and active
members of Stella development.

Updated OSX in-app HTML documentation about Stella DonationWare status.

Bumped version # to 3.5.1_svn, and the process starts again.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2318 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-12-31 21:56:36 +00:00
stephena 3339dc276d Updated copyright info for 2011. Happy New Year to anybody reading
these logs :)


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2199 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-01-01 16:04:32 +00:00
stephena 7411867290 Decided to take a little break from the debugger stuff, and clean up
the various header files.  Basically, I'm following advice from
Effective C++, and including only what's absolutely necessary.  For
definitions that don't need to be included, the designation 'class xxx'
is used instead.  This could potentially lead to faster compile times.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2155 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-10-18 18:39:57 +00:00
stephena d664beb45d Several changes to make entering commands at the debugger prompt
case-insensive.  Currently supported are all commands and
pseudo-registers.  Equates/labels and user-defined functions are
still a WIP, since they're stored in various hashtables accessible
by name, which is still a case-sensitive operation.  In general,
tab completion is mostly case-insensitive.

Changed the delimiter for surrounding lines with spaces from curly
braces ({}) to the apostrophe (').


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2115 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-23 16:19:17 +00:00
stephena 2193c94b12 Updated boilerplate on top of each source file to include
'Stephen Anthony' (aka, me) in addition to Brad Mott as copyright
holders for Stella.  I think I've been with the project long
enough now (almost 10 years) to justify being specifically mentioned
above and beyond 'the Stella Team'.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2001 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-10 21:37:23 +00:00
stephena 5294859e6d Removed some redundant 'FIXME' and 'TODO' items.
Removed final traces of SpeakJet emulation (the SpeakJet class).
It doesn't look this is ever going to be resurrected.

Tab completion results in the debugger prompt widget are now sorted.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1993 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-08 21:22:15 +00:00
stephena 1103f1dfbb Some cleanups to various classes, removing some debug print statements.
Partial cleanup of the debugger 'help' command, making the output line
up a little nicer.  More work is required in this area.

Fixed bug in EditableWidget; setEditString now implies that editing will
be started (if it's been enabled).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1987 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-03 17:11:23 +00:00
stephena 7bd307ebc8 First pass at getting function parsing working again in the debugger.
Added latest DPC+ code from Spiceware.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1986 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-03 12:45:20 +00:00
stephena 28114a8c51 OK, this is the first pass at a huge reorganization of the debugger
classes.  First off, the distella code has been integrated into a
DiStella class.  This code isn't yet tied to the debugger, but it does
at least compile and generate valid output.

The RamDebug class has been replaced by a CartDebug class, which
takes responsibility for the previous RamDebug stuff as well as 
things related to Cart address space (read from write ports,
disassembly, etc).

Fixed E7 bankswitching when reading from the write port in the upper
256byte area.

Fixed 'read from write port functionality' in general for all carts
that supported it previously.  Basically, if _rwport is enabled, the
address is checked to be an actual read (vs. one that's part of a
normal write cycle), *and* it's actually an illegal access (each
cart/bankswitch type now provides a hint to indicate this condition).

Still TODO is clean up the rework, properly integrate DiStella, and
fix labels and defines (which seem to be completely broken).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1922 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-01-17 16:48:45 +00:00
stephena e234139a3c Updated Stella headers in all files:
The license file is actually named 'License.txt', not 'license'
  The 'Stella Team' has a capital T, not lowercase.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1921 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-01-10 03:23:32 +00:00
stephena d372671277 Updated copyright dates to 2010.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1920 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-01-10 02:58:28 +00:00
stephena 54a5d77542 Added '_rwport' debugger directive, which can be used in conditional
breaks to test whether an illegal read to the write port of cartridge
RAM has occurred.  It can be used as follows:

  breakif {_rwport == 100}   // break if read was done at wport address 100
  breakif {_rwport}  // break if read was done at *any* wport address

This currently works for all extended RAM carts that worked before.
Specifically, 4A50, DPC, AR and possibly several others aren't supported
yet.  More testing is required.

Renamed CartFASC and CartMB to CartFA and CartF0, respectively.  This
naming now matches that used in other emulators.

CartMC now properly handles read from write port, by using random
values instead of just zero.  However, no test ROMs are available for
this scheme, so there may still be issues.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1896 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2009-11-08 16:46:10 +00:00
stephena 6a74dfb863 Repo reorganization: move main Stella files directly into 'trunk'.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1732 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2009-05-21 12:53:06 +00:00