Commit Graph

254 Commits

Author SHA1 Message Date
stephena 6d8b115b34 Removed concept of single vs. double buffering, and simply update the frame
on every call to FrameBuffer::update().  This will the same CPU usage for TIA mode,
and a slight increase CPU usage for launcher and debugger modes.  The code to do
this was just too fragile, and not worth the extra effort.

This fixes several rendering issues, such as garbage in fullscreen mode in Linux
when using Intel GPU, triple-buffering issues in Windows, etc.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3148 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-03-15 17:36:46 +00:00
stephena 6f194fcd76 DataGridWidget now supports keypad +/-.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3147 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-02-09 19:32:28 +00:00
stephena 5dece736b1 Added per-textfield character filtering, and enabled it for CheatCodeDialog.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3146 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-02-09 17:14:28 +00:00
stephena 2549e4f4c1 Fixed error messages in state loading, and reverted some C++11 features
so that Stella is supported in GCC 4.8.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3144 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-02-06 16:34:01 +00:00
stephena ebfc207d3e Fixed bug in closing SerialPort explicitly; it takes care of closing itself.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3142 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-01-24 16:28:06 +00:00
stephena df5f3c1c5a Updated ROM properties database to RomHunter v/10.
Added a specific closeConsole method, since the test for hasConsole was returning
true in cases where it shouldn't have.

Fixed PERL PropSet saving so that properties are always saved in sorted order
(by MD5).  This isn't technically necessary, but it will eliminate huge changelogs
when only a small part of the file has changed.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3134 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-01-01 16:21:30 +00:00
stephena 0afe070d9c Fixed crash on loading state files; try/catch was missing for the first
bit of data loaded from the file.

Changed Serializer class to unique_ptr, eliminating d'tor.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3130 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-01-01 03:23:06 +00:00
stephena abd4c9efa8 ZIP files now show nested files and directories instead of everything
being compressed into one level.  In the process, moved all ZIP-related
functionality from OSystem into FSNodeZIP, since it's the only thing
that actually uses it.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3129 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-01-01 02:05:28 +00:00
stephena 4642183745 Expose 'ctrlcombo' through the UI.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3120 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-12-24 18:49:26 +00:00
stephena 7f321a9628 The 'listdelay' option now allows 0, meaning to completely disable list-skipping.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3119 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-12-24 18:17:00 +00:00
stephena 233fd75522 Added dialog showing internal joystick database, with ability to
completely remove (currently unplugged) sticks from it.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3115 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-12-23 00:44:09 +00:00
stephena 7fee57808c Dynamic joystick add/remove/mapping is now working again. Or at least
it is on all my test systems with 4 different controllers.  We still
need bugtesters for this ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3112 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-12-21 00:42:52 +00:00
stephena 693862c32f Updated requirements for compiler version.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3090 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-19 13:45:22 +00:00
stephena 0d5ae3acf5 Added ability to save continuous snapshots per frame to Shift-Alt-s.
Eventually this may lead to proper movie output.  Thanks to SvOlli
for the code.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3087 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-19 00:03:11 +00:00
stephena d5a470cbcc Debugger reset command now does a full system reset.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3082 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-11-17 12:47:33 +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 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 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 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 877f2c9f3c Final updates for 4.2 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3026 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-28 16:44:18 +00:00
stephena 6d753fd335 CPU registers can be selectively randomized with cpurandom option.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3014 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-23 15:52:39 +00:00
stephena 42dec8321d Changed debugger shortcuts to Control-combos to match the old
Alt-comboes, as these are easier to remember than function keys.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3009 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-19 14:55:48 +00:00
stephena 2d9eb76510 Updated OSX app icon to include 32x32 and 16x16 versions. Still TODO is
add 256x256 and 512x512 versions (I'll need help with this one, since it
requires artistic skills which I definitely don't have :) )


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3007 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-17 14:30:55 +00:00
stephena 964e1d7d88 Text input is all parts of the UI will now use the users own
keyboard layout.  This means that non-US layouts can finally
enter (ASCII-only) text with Alt-Gr key-combos.  Because of these
changes, the global debugger keys for rewind/step/trace/scan+1/frame+1
are now the function keys F4 to F8, respectively.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3006 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-17 14:02:53 +00:00
stephena 537eef7384 'cpurandom' includes the SP register, and is now turned off by default.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3005 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-13 23:59:49 +00:00
stephena c21220ce2c Joysticks are now detected dynamically, meaning that they can be added/removed
while the emulator is running.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3002 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-13 22:37:15 +00:00
stephena 5959f69405 MDM scheme now uses hotspots from $800-$BFF instead of $800-$FFF.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3001 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-01 22:36:15 +00:00
stephena 33047a286b MDM now triggers a bankswitch on hotspot writes, which was
actually in the original spec.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2999 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-29 19:34:24 +00:00
stephena 9ac1244706 Updates for 4.1.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2995 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-14 19:58:37 +00:00
stephena 3108b7a696 Fixed beeping when using the debugger in Windows. It was due to a bug
in SDL2 that was fixed in SDL1 but wasn't ported over.  For now I will
included a patched SDL2.dll; eventually it will be integrated into SDL2
properly.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2993 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-07 21:50:35 +00:00
stephena 4b6f589a4e Re-added 'uipalette' option.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2989 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-03 13:27:33 +00:00
stephena 8c3c668276 Applied multi-monitor fix from Magnus Lind.
Bumped version # for 4.1 release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2987 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-01 21:17:33 +00:00
stephena f9f423bf25 Fixed bug in 'MDM' debugger tab; it was always showing bank 0.
Updated docs for upcoming 4.1 release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2983 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-31 23:16:57 +00:00
stephena f6dd1ba27b The ROM launcher now uses a separate FBSurface for snapshots, so that
any-sized PNG can be loaded and then scaled to the available space.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2979 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-28 14:21:44 +00:00
stephena e9a0bee314 Forgot to add info for 'MDM' in last commit.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2976 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-14 14:04:05 +00:00
stephena 4bc632644c Updated docs and changelog for DASH improvements.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2972 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-31 23:46:01 +00:00
stephena af254b3d85 Fixed DASH bug when changing banks; the debugger didn't recognize the change,
and hence didn't re-disassemble.

Fixed long-standing bug in the debugger disassembly; addresses marked as $F000
(or equivalent) were never being highlighted in the disassembly view.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2967 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-31 15:54:14 +00:00
stephena 2f4a3e7966 Cleaned up the Cartridge::bankXXX API. Carts which are non-bankswitched
or those which implement their own unique scheme no longer have to
implement bank and bankCount; this base class versions will be used
instead.

Removed the debugger 'bank' command, since it didn't work for all cart
types, and is obsolete now that the UI allows to change banks for
all cart types.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2960 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-24 17:15:28 +00:00
stephena db5867e345 Updated configure to support newer versions of Hurd, thanks to S. Kitt.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2953 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-02 12:16:16 +00:00
stephena 6bba77e3d6 I'm going to release 4.0 now, since the two remaining features may take
another month to complete, and it's already been 6 months since the last
release.  And those remaining features have nothing to do with the SDL2
conversion ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2947 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-01 13:32:22 +00:00
stephena 534f7680e6 Updated changelog and some dates.
Updated to latest PNG code.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2942 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-30 14:38:18 +00:00
stephena 8fbbadd2e3 Various changelog updates for 4.0 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2925 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-15 19:25:46 +00:00
stephena 5c75ff1c15 Finally added a large patch from SpiceWare which adds an extended
cart RAM tab to the debugger.  This is tailored to each respective
cart bankswitch type, allowing much more information to be shown than
you'd see in the normal RAM area.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2921 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-13 16:28:28 +00:00
stephena 80bbfadb4c Fixed grabmouse and show cursor to match Stella 3.9.3 functionality.
Added 'hidecursor' commandline option, to always disable showing the
mouse cursor (useful for fullscreen-only frontends).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2908 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-04 16:01:45 +00:00
stephena e81f2b0ffd Added preliminary support for DASH bankswitching scheme by A. Davie.
This hasn't been tested yet, since no ROMs currently exist.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2895 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-02 20:41:19 +00:00
stephena 37b30e7b66 Some cleanups of the FrameBuffer class; 'uipalette' is no longer suported.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2845 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-01-31 16:23:10 +00:00
stephena 53c053a2d9 Ported 3.9.3 changes to trunk.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2844 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-01-20 21:02:20 +00:00
stephena e4dce0d897 Updated included PNG library.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2826 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-09-13 10:46:21 +00:00
stephena c5f011f1fe Added 'savesnap' debugger command, on the request of Spice from AtariAge.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2825 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-09-12 22:37:01 +00:00
stephena fa9951e95f Final updates for 3.9.2 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2822 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-31 13:49:19 +00:00