Commit Graph

466 Commits

Author SHA1 Message Date
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
stephena 8dbd5d7f48 Converted more new/delete pairs to unique_ptr. This actually made me notice
a memory leak where the Console was never being deleted.

For FSNode read, change 'uInt8[]' arrays to BytePtr, which is an alias to
a unique_ptr array.  Again, this enables automatic deletion when the object
goes out of scope.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3173 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-06-14 20:02:32 +00:00
stephena e9517a4d54 Updated libpng to latest stable release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3169 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-06-13 00:40:24 +00:00
stephena 1c9de2abbd Final changes for 4.6.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3162 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-04-22 22:19:43 +00:00
stephena 439325e911 Update version # for upcoming release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3160 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-04-22 15:09:43 +00:00
stephena 72ec5f2371 Finally fixed text-entry bug in the debugger. In the process, moved to
C++11 lambdas for enabling per-widget text filtering.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3159 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-04-22 15:02:17 +00:00
stephena 651204df32 Final updates for 4.6 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3154 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-03-21 00:16:30 +00:00
stephena 7c0fc50a2f Fixed sound corruption upon starting the app; we need to continuously
write 'silence' to the sound card until there is available data to use.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3152 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-03-17 17:45:08 +00:00
stephena 5c23739f00 Snapshots now work in PAUSE mode.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3150 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-03-15 21:53:28 +00:00
stephena 31e59f12dc Updated PNG library to latest release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3149 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2015-03-15 17:58:16 +00:00
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
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 ecacdcf5f2 The 'usemouse' option now allows to use the mouse as a controller
only for analog-type devices (paddle, trackball, etc).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2819 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-24 18:40:02 +00:00
stephena 8aa736b35a Added ability to use bold fonts in the debugger.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2816 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-24 15:51:37 +00:00
stephena ae4e87a51c Added ability to start directly in the debugger to 'Power-on options'.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2809 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-20 20:48:58 +00:00
stephena edd488eac6 Getting ready for the 3.9.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2808 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-20 20:08:09 +00:00
stephena b0d243fef9 Pressing 'Default' in "Power-on options" now saves the settings.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2807 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-20 20:04:33 +00:00
stephena 4ef0416e26 When loading symbol files, strip leading numbers from names using the
number.name convention (which seem to be pass #'s for DASM).  Initially
having this info in Stella was simply visually inconsistent, but now
it also interferes with recompiling when saving the disassembly (IOW,
the data put into the symbol file by DASM can't be fed back into DASM
again in these cases).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2803 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-20 14:29:28 +00:00
stephena 30a3f3742c TIA graphics registers now more closely illustrate how they're drawn
to the screen (inactive pixels are 'transparent' in the UI).  In the
case where there is only one possible object below the register, a
'blank' uses the underlying colour (ie, in normal priority, a blank
PF is 'coloured' using COLUBK).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2797 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-19 14:35:58 +00:00
stephena 8ea92e67ef In the debugger TIA output, set inactive pixels in GRPx and PFx to
COLUBK instead of always using colour 0 (black).  This is more
informative, as it displays how the registers actually work when
being drawn to the screen.  Thanks to Tjoppen of AtariAge for this.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2796 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-16 12:25:42 +00:00
stephena 60dd213a0a Added preliminary support for DASM lst files (currently to differentiate
symbol names in the DASM symbol file).  This partly fixes a deficiency in
symbol files, whereby two names could have the same address (one has an
address, the other as a constant), and Stella would use whichever one
occurred in the file last.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2795 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-15 16:07:58 +00:00
stephena 5d026334d6 Version # updates for the upcoming release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2787 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-10 20:34:52 +00:00
stephena 7758e0deb4 Better autodetection for EF and EFSC ROMs generated by the latest version
of bB, thanks to RevEng.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2784 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-09 21:53:31 +00:00
stephena 893bfd4a41 Override properties dialog is now called 'Power-on options', and includes
extended abilities (see changelog and docs for more info).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2783 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-09 13:09:47 +00:00
stephena ed49f9ba1d Event mappings weren't being saved when exiting the ROM launched from
the commandline (different code paths were taken).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2782 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-08-04 17:00:46 +00:00
stephena 33ec369d3b Added "Princess Rescue" properties info, now that the ROM has been released.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2780 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-07-31 18:59:33 +00:00
stephena 189f10f201 InputTextDialog used in debugger RamWidget wasn't closing properly
on exit; it attempted to close the debugger dialog instead!


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2775 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-07-30 21:43:20 +00:00
stephena 20b9253430 Moved TIA frame count update code to beginning of frame (instead of the end).
Once a frame has started, it means a new frame should be added.  This
fixes a bug in the debugger UI whereby the frame count showed the previous
value, since sometimes you could enter the debugger (with a cond BP)
before the end of the frame was technically reached.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2773 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-07-30 16:45:23 +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 33bcec92be Startup notification protocol patch for the UNIX desktop file,
from Dan Fandrich.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2769 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-07-21 13:47:33 +00:00
stephena a1ac026cbc Added 'cpurandom' commandline argument and associated UI item, to randomize
the CPU registers (A/X/Y/PS) on ROM load.

Added 'INTIM Clks' to the debugger I/O tab, showing the number of clocks
before the current INTIM value decreases by 1.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2768 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-07-21 00:27:52 +00:00
stephena 13c3ca9964 TIA position counters (POSP0, POSM0, etc) in the debugger now show values
in decimal, not hex.

All DataGridWidgets (ie, most of the inputs in the debugger) have more
strict input filtering, allowing to use $,#,\ specifiers for different
bases, as well as restricting input based on the specifier used (ie, if
you've entered a '\', only '0' and '1' are allowed, etc).

Updated libpng to latest version.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2767 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-07-19 13:43:42 +00:00
stephena 04f6a16f97 Fixed error tracking PC changes in disassembly when the PC and bank mirror
didn't match.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2766 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-07-17 23:00:55 +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 1f4cf1c0b1 We're close to the 3.9 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2757 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-06-26 21:34:48 +00:00
stephena 8f8c85250c Preparation for 3.9 release, updated documentation.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2756 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-06-26 16:03:08 +00:00
stephena f5ed7ccf5c When patching code in the disassembly list, the current base is now used.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2755 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-06-23 00:22:16 +00:00
stephena f3d412fce7 Improved the new Snapshot Settings dialog with more informative text.
Added option to save snapshots using either internal database name
(the default) or actual ROM filename.

Extended FSNode API for parsing filenames and adding/removing extensions,
which was previously being done in different ways throughout the codebase.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2753 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-06-21 12:15:32 +00:00
stephena c179a00725 Added specific dialog for changing Distella settings to disassembler.
This will eventually grow to include all relevant options in Distella.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2747 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-06-17 15:57:41 +00:00
stephena 969d4b5fe2 Some more work on the debugger ROM UI area. Changed previous bank
selection widget to a display of current bank state, taking into
account the more esoteric bank schemes.  Currently, some functionality
is disabled/removed for now; I'll work on this for the next commit.

The format for displaying disassembler GFX/PGFX (binary or hex) is now
obeyed in the disassembly file output as well.

Changed various comments/enums/etc referring to 'preliminary' code to
'tentative' code, matching the actual intended meaning and the current
documentation.

Small API change for EditTextWidget; changed method name to setText, since
that's what I keep typing for some reason.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2743 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-05-29 16:27:12 +00:00
stephena e76066c051 Updated ROM properties database to include RomHunter v9 info.
Fixed bug after pressing Enter/Return in EditTextWidgets; it was exiting
from edit mode, which locked out certain key handling (these widgets
are always editable, and should not be exited in such a way).

Also, I just noticed the changelog file is exactly 2600 lines long :)


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2742 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-05-28 21:46:45 +00:00
stephena e053ed4e0e Rearranged disassembly file output header to be output after an
initial pass of the disassembler.  This was required in certain cases,
notably when issuing 'savedis' when the code was currently running from
zero-page.

Fixed missed labels for zero-page RAM when running ZP code.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2740 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-05-20 21:53:25 +00:00
stephena 09d7ec7eb9 *Many* improvements to the debugger disassembly, both in-GUI and in saving
to an external file.

  - RIOT/TIA mirrors are now used whenever possible.  This includes *all*
    possible mirrors in the entire 64K address space.  This was needed to
    make the disassembly byte-exact when recompiling the ROM.

  - Disassembly to a file now includes all required defined constants
    (RIOT/TIA, non-locatable labels, user-defined, etc).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2737 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-05-19 20:55:25 +00:00
stephena 9d421d93f7 Added better error messages for reading missing/zero-byte/invalid ROM
files, and update ZLIB to latest version (1.2.8).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2723 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-05-07 14:44:50 +00:00
stephena d05bca9734 Oops, forgot the changelog.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2717 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-05-03 10:47:53 +00:00
stephena b9fece9cde More work on BrowserWidget, and further cleanup of the enum's in
various GUI code.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2714 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-05-02 17:06:36 +00:00
stephena b97b643d17 Added SB scheme to the debugger ROM tab.
Improved keyboard and mouse navigation for PopupWidget and associated
ContextMenu dialogs.

Tweaked bankswitch autodetection for 29K ROMs; the only possibilities
are ARM (FA2) or DPC+.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2692 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-04-15 16:17:51 +00:00
stephena fbf239798d Updated PNG library to version 1.6.1.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2677 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-30 15:34:31 +00:00
stephena 7643dccb87 Test commit from OSX.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2672 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-13 22:21:35 +00:00
stephena f572c8405e Updated changelog, and a test to see if commit still works.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2670 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-13 21:34:33 +00:00
stephena 467ac0a280 Sub2K ROMs now show only the actual data in the binary. This allows
the saved disassembly to be compiled to the exact same binary.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2669 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-13 21:16:14 +00:00
stephena 895fd7b263 Changed PC indicator colour on the advice of someone who is partly
colour-blind; the old (light) colour was very hard to see.  Actually,
I agree with that assessment, even though I'm not colour-blind myself.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2668 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-12 17:30:42 +00:00
stephena 1173b88c79 Only mark actual undefined opcodes as defined by DASM as being
undefined.  The rest are defined but illegal, which is different
(mostly because many ROMs released in the past 10 years make
extensive use of illegal opcodes).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2667 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-12 17:14:00 +00:00
stephena 1ade2900e4 More fixes to debugger disassembly for DASM. The code now prints
out-of-range labels for cases where a label is in the middle of a
multi-byte instruction (Kool Aid Man), and properly indicates
mirrors of TIA read/write addresses (Meltdown).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2666 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-11 19:43:19 +00:00
stephena 3c801a7dd4 Updated properties database for BasketBall; it needed joysticks swapped.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2664 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-10 19:53:52 +00:00
stephena 2bde61558d Fixed "new console created" messages appearing when loading a ROM
from the launcher.  This message should only appear when *reloading*
a ROM, not creating a new one completely.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2662 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-07 17:41:19 +00:00
stephena ffc99a9345 First pass at adding diassembly output from the debugger. It's already
working quite well for a single-bank ROM, but more work is required for
multi-bank.  Output is currently sent to the console, as I'm still in
the formatting phase.  Saving to a file will be easy once the format
is nailed down.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2657 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-04 23:35:26 +00:00
stephena 5c4b6defd9 Added properties info for "Extra Terrestrials", and bumped version #
for 3.8.1 release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2648 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-03 21:05:43 +00:00
stephena 68424c9222 Fixed file modtimes in OSX build script; it was using dates from when
the archive was first created (~2009).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2645 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-01 20:33:14 +00:00
stephena 63a598fb7f Fixed PPC big-endian sound issues.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2644 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-03-01 14:03:12 +00:00
stephena e823ffe03f Updated changelog.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2642 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-02-28 16:03:56 +00:00
stephena 0650c48977 Implemented TIA RSYNC write functionality thanks to Omegamatrix.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2626 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-02-24 01:46:14 +00:00
stephena 0d9673a4d5 Final updates for the 3.8 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2618 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-02-21 22:34:33 +00:00
stephena 5a65d64538 Final changes to the TIA code for the 3.8 release. I've added
TODOs and pointed out areas where improvements are likely needed,
in preparation for asking for help in the implementation.

Turned off 'resolvedata' in the debugger when disassembly ZP RAM.
It seems to be buggy in certain cases, and it's easier to just
leave it off in that mode, since (a) not many games run from ZP,
and (b) it's only at most 128 instructions.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2617 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-02-21 21:57:42 +00:00
stephena b6ec874778 Updated FA2 autodetection for Harmony ROMs (29/32K). Basically these
are detected and the ARM code discarded.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2616 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-02-20 18:16:34 +00:00
stephena 4610fd608d Fixed INTIM/TIMINT multiple reads in the debugger, which changed the
state of the registers and messed up further emulation.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2614 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-02-17 22:33:53 +00:00
stephena 6279c24b57 Renamed 'eepromdir' option to 'nvramdir', and have it default to
'BASEDIR'/nvram.  Previously it defaulted to BASEDIR, which was getting
filled with many such files.

Unfortunely, all files will have to moved manually, but it's an easy
one-time operation.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2613 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-02-17 00:19:14 +00:00
stephena c11c7724ad Added ability to specify separate directories for saving
and loading snapshot files.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2612 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-02-16 19:56:09 +00:00
stephena c31f53654c Loading from ZIP files now works in all cases, and then some.
That is, it has all the functionality of past versions, as well
as improvements to launching from the commandline (an archive
containing multiple ROMs will now open the virtual directory
in the ROM launcher.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2610 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-02-15 19:04:52 +00:00
stephena ba0ebf3ecb Updated ZLIB to latest version (1.2.7).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2594 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-30 19:08:54 +00:00
stephena 130e5efb37 Updated include PNG library to latest version.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2593 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-30 12:13:30 +00:00
stephena 9aef5bdcae Updated changelog.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2592 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-29 21:16:45 +00:00
stephena 1f16369487 Fixed ZIP handling in Windows; the '/' vs. '\' curse strikes again.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2591 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-29 21:12:37 +00:00
stephena a5cb67551f Final updates to the sound code (resampling seems to be working fine).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2585 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-27 15:08:04 +00:00
stephena b7df9deeb6 Reverted INTIM handling to version 3.7.2, which fixes hangs in Mr. Roboto.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2584 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-26 21:17:38 +00:00
stephena 753d096f48 Updated bankswitch detection for 0840, F8 and FE schemes.
Removed various 'Image' and 'Greeting Card' ROM info from the database;
the info was incomplete, and there's no way that I'm going over 7000+
ROMS to add them all.  Eventually, I'd like the database to be for valid
ROMs only.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2581 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-05 01:12:25 +00:00
stephena e467441c37 Improved X07 autodetection.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2580 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-04 20:19:01 +00:00
stephena e6044426ec Updated sound system with ideas from z26 and MESS. To me at least,
the sound is now much more accurate in "Space Rocks", and there aren't
any regressions that I'm aware of.

Removed 'clipvol' setting, since the sound is now 16-bit and clipping
is no longer required.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2578 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2013-01-04 19:13:30 +00:00
stephena ca0f20fdff Updated log functionality slightly; you no longer have to supply
a new line as part of the message.

Updates for impending 3.7.5 release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2572 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-12-22 20:17:33 +00:00
stephena 2aca70e19e Fixed PAL autodetection regression.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2571 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-12-17 22:04:20 +00:00
stephena 0616691bc5 Fixed a PNG load crash, and added more PNG text chunks when saving snapshots.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2570 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-11-11 23:32:25 +00:00
stephena 2b27e23276 Fixed regression with missing VSYNC in certain ROMs, and bumped
version # for next release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2566 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-10-30 22:21:09 +00:00
stephena 940a0bf066 Fixed more sound issues wrt irregular scanline counts. Even
Quadrun sounds better now :)

Preparing for the 3.7.3 release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2562 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-10-25 20:39:55 +00:00
stephena b67625bfec Fixed scanline calculation when out-of-spec ROMS don't use VSYNC at all.
In this case, the frame runs to the limits of the virtual 'TV' (342 scanlines).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2559 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-10-25 13:07:18 +00:00
stephena 7e198cb34d Preparing for upcoming 3.7.3 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2557 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-10-22 23:23:32 +00:00
stephena 192ad0bf81 Fixed music bug in DPC+ scheme.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2555 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-10-02 14:56:31 +00:00
stephena 803083e51a Removed some debugging info from RIOT class.
Updated PNG library to latest release.

I hope to get back to Stella development soon, and do a new release
in perhaps the next month or so.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2554 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-09-27 22:17:27 +00:00
stephena faa78ad56a Added emulation of D6 (interrupt flag) to the Interrupt Flag register
of the RIOT chip.  This flag is related to the edge-detect circuitry, and
set on active transition of PA7 pin, cleared upon reading from TIMINT (but
only *after* its result is included in the TIMINT read).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2553 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-09-16 17:32:45 +00:00
stephena 756a47bcf8 Fixes for 'illegal' VSYNC behaviour wrt 'short' frames.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2547 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-07-14 18:56:57 +00:00
stephena 8228639ec8 Fixed bug in handling '~' character, do immediate 3.7.2 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2537 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-10 00:34:46 +00:00
stephena b9df070ab2 Final updates for 3.7.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2534 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 21:08:33 +00:00
stephena 3dfceb8b32 Reverted new zlib code, since it causes major breakage in Windows.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2531 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 19:11:22 +00:00
stephena 21f25d1553 Added 64in1 and 128in1 multicart bankswitch schemes, although for
the latter you'll probably require the patience of Job.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2529 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 14:09:11 +00:00
stephena ed5aad268d Fixes for relative filename handling on the commandline
(more work required for Windows), and updated zlib to latest
version.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2528 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 13:29:56 +00:00
stephena 6353d118b7 Control-f now cycles between NTSC/PAL/SECAM/NTSC50/PAL60/SECAM60
display modes wrt both palette and display properties (# of scanlines,
size of window, etc).  This means you can now dynamically switch
between these modes at runtime.

Also added 'Shift-Control-f', which cycles through the modes in
reverse order.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2527 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-05 16:32:35 +00:00
stephena 02ebafaf7d TIA emulation is now more accurate wrt irregular scanline counts.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2524 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-04 15:52:56 +00:00
stephena 2145c38087 Fixed bugs in DPC+ scheme; reset wasn't actually resetting the
Harmony RAM, and state saving wasn't working at all.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2523 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-03 18:05:14 +00:00
stephena 9b8155b29d And so the cycle begins again. Fixed changelog so that lines don't
wrap when opening in the default text editor in OSX.  Yes, I *am*
that picky (OCD would probably be a better description).

Bumped version #.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2519 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-30 16:02:03 +00:00
stephena 4b4b1c9447 Updated changelog and ROM properties for Star Castle 2600 ROMs.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2515 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-29 17:09:27 +00:00
stephena efb620dca8 Stella now requires Windows XP and above; support for Win98/ME/2K has
been removed.  Sorry to anyone still using these systems, but this
decision is final.  It's time to move on, folks.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2511 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-28 19:48:33 +00:00
stephena 01d8c298ae Added 'dis.relocate' commandline argument, which passes the
Distella '-r' option (Relocate calls out of address range) to
the disassembler core.  Also added UI item to dynamically
change the setting.

Renamed 'resolvedata', 'showaddr' and 'gfxformat' commandline
arguments to start with 'dis', indicating that they're part
of the disassembler.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2504 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-27 19:27:55 +00:00
stephena 60912d6f38 Updated changelog for debugger bugfixes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2503 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-27 13:18:24 +00:00
stephena 4750c64a17 Phosphor mode now works with Blargg TV effects! It takes an extra 2-3 MB
RAM to do so, which I agonized over for about a week, but I feel it's
a fairly good tradeoff for the features we get.  Eventually, I may come
up with a more accurate phosphor mode which eliminates this approach
entirely.

Reverted OpenGL framebuffer to 32-bit colour mode.  We're using Blargg
effects, so we may as well get the full fidelity out of it.  Besides,
testing has shown that there's not much speed difference between 16
and 32 bit modes, making me think that 16-bit is probably be swizzled
to 32-bit anyway.

Bumped release date to June 1, version to rc1.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2501 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-26 22:18:13 +00:00
stephena 3a2865981a Reverted OpenGL framebuffer code to 16-bit colour, and removed blending
for phosphor effects.  It's just not ready to go yet, more research is
needed, and I just don't have the time to fix it.  Besides, it's been
two months since the last release, and I need a vacation.

Because of this, the release date is changed to May 25.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2494 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-24 16:26:33 +00:00
stephena b200260d85 Huge speedup in OpenGL rendering, by only updating part of the texture
instead of the entire area.  This fixes the speed regression from 3.6,
since the main TIA texture is now larger than before.  Previously it
was 160 pixels wide out of 256 total (rounded to power of two), now
it's 560 wide out of 1024 total.  In 3.6 it was updating a buffer 256
pixels wide, in the latest beta releases it was sending 4 times as
much data (256 -> 1024).  Now it sends only 160/560.  Similar
improvements happened with the height as well (210 lines vs 256).
On my test systems at least, this is an extremely large win,
resulting in similar speeds as 3.6 even though we've moved to a 32-bit
framebuffer.

Bumped version # for next beta release.

Pushed release date to June 1, to make absolutely sure I have
everything fixed and ready to go.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2493 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-22 15:22:02 +00:00
stephena 4281ac2436 Removed a few redundant FIXME and TODO's.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2488 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-20 18:26:59 +00:00
stephena 01c9bc30c3 More work on Chetiry bankswitch scheme. Preliminary version can
now load and play test ROMs, complete with emulation of timing delays
due to slow accesses on real Harmony hardware.  Still TODO is the tunes,
DPC+ stuff, which is stubbed out at this point.

Fixed bug in EFSC bankswitching; state files didn't contain extended RAM
information.

Cleaned up the Serializer API, resulting in slightly faster operation
and smaller state files.  Because of this, the state file format
has changed for this release (old state files will no longer work).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2487 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-20 14:23:48 +00:00
stephena f14d47f042 Updated Changelog for ZP-RAM fixes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2486 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-19 19:34:40 +00:00
stephena 0b133867bc Bumped release date to next week, since we're not ready yet.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2481 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-18 10:52:39 +00:00
stephena d5b2d62c90 Some documentation updates for the upcoming release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2469 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-13 00:35:24 +00:00
stephena 973a8edf30 Added ability to descend into multi-ROM ZIP archives.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2450 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-04-27 13:34:30 +00:00
stephena e3ba9f0ec2 TIA objects and collisions are now toggle with the Alt-period keys,
instead of having different keys to turn them on and off separately.
This brings the functionality in line with the rest of the objects/
collision key-combos, which were also toggle-only.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2449 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-04-20 21:32:24 +00:00
stephena 6737091149 Replaced 'uselauncher' with 'exitlauncher', which specifies how the
ROM launcher should be used when exiting from a ROM.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2448 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-04-20 20:47:53 +00:00
stephena f853518540 Fixed ghost key issue with the CompuMate emulation. It seems that mixing
SDL keyboard events and the static GetKeyState() method doesn't always
work as you'd expect.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2447 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-04-19 20:11:16 +00:00
stephena 822a378182 A fairly large overhaul of the mouse-emulates-controller functionality,
fixing bugs too numerous to mention.  The end result is that using
Control-0 to switch between mouse modes is much more understandable.

Updated properties database for Telepathy ROM, which now uses the
MindLink controller.  Also updated Astroblast ROMs to use paddles
by default.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2444 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-04-19 13:00:02 +00:00
stephena 967fb73d2d Load/save from Harmony cart flash RAM is now supported for the FA2
bankswitch scheme (currently, only the 256 internal RAM is used).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2439 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-04-12 23:23:12 +00:00
stephena fc11e6ec30 Updated included PNG library to 1.5.10.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2433 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-29 22:00:58 +00:00
stephena db6e1c7c81 Added Mindlink controller emulation. Based on research, it seems that
only Bionic Breakthrough ever used this scheme, not Mind Maze and
Telepathy (as the properties database previously indicated).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2429 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-25 14:42:09 +00:00
stephena ea74f6dbe3 Updated CompuMate keyboard handler to be more friendly,
and use keys on a real keyboard more effectively.

Bumped version number, so we start all over again.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2426 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-18 01:40:27 +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 82a048a086 Using the Control key in CompuMate mode will no longer interfere with
normal control functions (ie, pressing Ctrl-q will not quit, but send
this combo directly to CompuMate).

Mapped Func-Space to the Backspace key for CompuMate keyboard.
Func-space (which is actually Ctrl-space is still supported).

Updated documentation for CompuMate changes and system requirements.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2418 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-16 17:57:23 +00:00
stephena 92cda788c4 Fixed missing 'Enter' key in CompuMate emulation. It seems that the
z26 code never actually implemented this, so I'm not sure how people
actually entered Basic code.  I guess not many people have played 
with and tested this before.

Added more sensible keys for the CompuMate 'space' and 'enter' keys.
They're still mapped to '/' and ';' respectively (to keep locations
on the keyboard the same), but are also mapped to the actual 'Space'
and 'Enter' keys (to make usage much easier).  I'll probably also
map 'Shift-;' to Backspace as well.

Updated documentation for CompuMate emulation.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2415 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-15 23:40:36 +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 d0b8bd57e5 Fixed potential bug in dynamically swapping Stelladaptor devices;
events generated by one device would never receive the 'turn off'
event when it was swapped out.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2407 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-11 14:25:47 +00:00
stephena 2ff4226e67 Fixed bug in BoosterGrip controller handling; the functionality
for analog pins 4 and 9 was swapped.

Renamed various 'Fire' button events to prevent the above problem
from happening again.

In BoosterGrip games, the right mouse button now sends the 'booster'
event, allowing one to play Omega Race fully with the mouse.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2405 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-04 19:20:29 +00:00
stephena a799541267 Updated changelog.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2404 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-03 19:18:16 +00:00
stephena 1e396f8408 Added preliminary support for 2600-daptor II, which accepts 7800 Pro-line,
BoosterGrip, and keypad controllers.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2400 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-03-02 23:01:28 +00:00
stephena 225e6c0b1c Update include PNG library,
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2390 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-02-19 13:47:38 +00:00
stephena 8fffaa6d95 Final updates for the 3.5.5 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2384 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-02-04 20:07:13 +00:00
stephena 009fb5c91a Getting ready for the next point release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2381 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-02-04 15:17:30 +00:00
stephena 723d95cba2 Updated screenshot for new mouse axis functionality.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2375 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-29 22:20:08 +00:00
stephena 6029835618 The mouse can now emulate Sega Genesis controllers. In this mode, the B/C
buttons use the mouse left/right buttons, respectively.

Updated changelog and documentation.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2373 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-29 18:44:45 +00:00
stephena 3e4d82472b Added 'FA2' bankswitch support (from cdw) for upcoming Star Castle ROM.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2361 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-21 13:11:08 +00:00
stephena 16ad78f468 Fixed bug in cheatcode handling; disabled cheats weren't actually being
correctly disabled.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2360 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-20 23:56:49 +00:00
stephena 08ae1c3fe8 Updated how the debugger is created, and protected against using the
debugger before it has been initialized.

Tweaked the format auto-detection by also looking at the TIA scanline
at which drawing first occurs.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2359 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-17 22:20:20 +00:00
stephena 6f5f0c3558 Updated the changelog for patches from R. Canavan.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2347 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-08 20:14:18 +00:00
stephena 5f0bfc2a9f A few documentation updates.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2345 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-08 19:06:42 +00:00
stephena 293a8a69b4 Added TIA INPTx and VBLANK D6/D7 items to the debugger I/O tab.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2343 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-08 16:55:10 +00:00
stephena 76e3ba8ec0 Updated documentation for SWCHB debugger changes, and updated
the changelog.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2330 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-01-02 22:09:54 +00:00
stephena af9e1075d4 Final updates for the 3.5 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2314 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-12-29 21:38:40 +00:00
stephena a99e0d7499 Updated changelog for DonationWare status.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2309 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-12-29 00:59:02 +00:00
stephena aeb8d27746 Added 'mcontrol' commandline argument, which allows to map mouse axes
separately to different paddles.

Updated documentation for impending 3.5 release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2296 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-12-26 21:40:28 +00:00
stephena b6cab4e626 Removed redundant 'audiofirst' commandline argument, and fixed displaying
of RAM addresses in debugger RamWidget.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2295 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-12-23 00:04:58 +00:00
stephena 56694b5934 The sound system is now opened once per program invocation, and paused
when it isn't needed.  According to SDL this shouldn't be necessary, but
some combinations of video modes and audio hardware cause sound to stop
working if it's repeatedly opened and closed.  So we have to keep it open.

Always attempt to use 2 channels (aka stereo) when opening the SDL audio
device.  This is now required, since ROMs can request mono or stereo mode,
and the sound system can no longer be closed and re-opened with the
desired settings.  So we need to always use 2 channels to accommodate
when it might be needed.  This actually more closely emulates the 2600,
which does have two audio channels.  The 'mono' vs 'stereo' ROM property
basically controls whether these channels are exposed (ie, does the
virtual console have two-channel audio hardware installed).  In that sense,
these settings control how the channels are mixed.

Updated some settings to have more reasonable defaults.

Added acknowledgement for people that have donated hardware to help with
development.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2291 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-12-21 17:18:53 +00:00
stephena d35c220953 Huge restructuring of the joystick handling code. Event mapping is now
saved per device, so that unplugging and replugging a joystick won't cause
the previous mappings to be lost.

All attributes of a joystick (ie, number of sticks, number of axes, buttons,
hats on each stick) are dynamic, meaning that hardcoded values are no
longer used, making the handling more robust.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2285 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-11-29 22:12:13 +00:00
stephena e8776a79d6 The default snapshot dir is much saner, defaulting to the users'
desktop on OSX and Windows, and the home directory in Linux.
The associated commandline has been changed to 'snapdir'.

Added 'GL VBO' toggle button to the Video Settings UI, and in
general cleaned up its interface.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2282 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-11-25 14:17:05 +00:00
stephena faa0789727 Updated some code comments and the documentation.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2280 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-11-19 18:28:17 +00:00
stephena 377765f565 Removed all traces of the OpenGL TV filters. This is due to be replaced by
Blargg NTSC filtering, but we need to revert to base functionality first.

Cleaned up the debugger API wrt converting values from integers to strings
(and vice-versa).  There is now only one method for each of these functions,
rather than several ways to do so.  In the process, convert from unsafe
sprintf functions into snprintf (eliminate potential buffer overflows).

The debugger 'print' command now indicates if any assigned label represents
a read-only location (R), a write-only location (W), or a read/write location
(R/W).

Fixed bug in DataGridWidgets (used in debugger ROM and CPU registers), where
scrolling the mouse-wheel would cause a segfault.  Scrolling the mousewheel
now changes these items as expected.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2260 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-07-03 17:08:42 +00:00
stephena dbdfb2f320 Final changes for 3.4.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2256 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-06-11 23:55:53 +00:00
stephena 2d9d487300 Fixed bug with autoexec.stella debugger file not actually executing its
contents.  The file was being accessed and read, but the commands it contained
weren't being executed!  This bug appeared in April 2010, so it looks like
not many people are using this feature (or at least they're not reporting it).

Cleaned up a few compiler warnings in DebuggerParser class.

Bumped version # for beta release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2254 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-06-11 22:45:50 +00:00
stephena cb3f0e96ba Zero-byte ROMs are now rejected, instead of being loaded as Supercharger ROMs.
Fixed bug in handling analog axes with jitter; they were overriding events from
digital, hat and keyboard input.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2251 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-06-09 20:50:19 +00:00
stephena df71aa03d1 Cleaned up the FilesystemNode API a little, removing some redundant code.
The debugger 'saverom' command now uses absolute filenames, and by default
will save data in the users home directory if a proper path isn't included
in the filename.  This fixes a major bug where ROMs were being saved to
the current or application directory, which in some cases were invalid
locations.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2250 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-06-09 14:00:30 +00:00
stephena 4c59d810f1 Grabmouse now has a hotkey (again). Fixed mouse motion handling in
several cases (fixes problems when moving the mouse too fast or
when changing between video modes).  Added extra signature to the
bankswitch autodetection for the 4A50 scheme.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2249 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-06-07 13:40:59 +00:00
stephena 2b9f625f76 Re-enabled 'grabmouse' functionality with a few changes:
- it doesn't have a hotkey any more
  - it is changed in the "Input Settings' UI, not in 'Video Settings'
  - it only has meaning while in emulation mode
  - it is enabled by default


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2245 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-06-02 20:53:01 +00:00
stephena 0eff1696a0 Final updates for the impending 3.4 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2237 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-05-27 15:48:35 +00:00
stephena 4e6d4cb1c6 Cleaned up some inlines that weren't needed.
Updated documentation with info about 2600-daptor, including
usage and its creator.  Also included more in-depth explanation
for the various controller types.

Errors from the Thumb ARM emulation code are now caught as exceptions,
and thrown to the parent class instead of calling exit() and simply
crashing Stella.  For now, the messages are simply printed and
emulation continues.  This will be expanded to show a detailed crash
log in the debugger, and offer the option to exit the ROM.

Removed most of the menus from the OSX port.  They weren't being
maintained anyway, and most of them didn't work.  I've modelled this
on the way other cross-platform OSX programs work (notably, ScummVM).
Basically, there are menus for exit and help, but otherwise you
should use the menuing system in the application itself.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2231 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-05-10 15:04:19 +00:00
stephena 2da201c4a2 Added controller types 'Paddles_IAxis', 'Paddles_IDir' and 'Paddles_IAxDr',
which are specialized paddles classes that invert the axis, direction,
and axis+direction, respectively.  Updated all applicable ROMs in the
properties database.

Cleaned up the menus in the OSX port; some of them weren't even tied
to anything.  I'm seriously considering removing them all, except for
the Help and Quit items. 


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2230 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-05-06 19:58:56 +00:00
stephena 264145a939 Huge improvements to paddle and mouse handling:
- mouse can now emulate joystick, booster-grip and driving controllers
 - digital and mouse sensitivity for paddles can now be tweaked
   separately, and have a greater range
 - the mouse now correctly honours its controller setting, and only
   controls a device on one one port (not both at the same time)

Added support for 2600-daptor device.  Credit for creator of device
is forthcoming.  This device is basically an updated Stelladaptor,
with improved handling for paddle data.

Grabmouse functionality is no longer user-definable; the mouse is
always grabbed while playing a game, and released otherwise.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2228 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-05-06 14:29:39 +00:00
stephena 26e5f0157f Oops, forgot to mention the main point of this test release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2211 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-01-30 13:43:17 +00:00
stephena fc44b175b2 Updated some dates to 2011. Hopefully I'll find some time over the
next week or so to get back to Stella development.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2209 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-01-28 16:18:35 +00:00
stephena 5d4de8291e Added mouse-as-joystick code from z26. This basically allows the mouse to
act as a controller in joystick-only games.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2200 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2011-01-01 19:25:27 +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 6478176abb Upon opening the ROM audit dialog, the current directory from the ROM
launcher is selected, not the actual ROM directory.  This speeds up
access, because generally you'll want to audit the directory you're
actually looking at.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2196 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-12-21 18:42:53 +00:00
stephena f1bb09d8ac Updated internal ROM database with info from RomHunter 6 set.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2195 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-12-19 23:51:16 +00:00
stephena af181e925a Updated built-in PNG lib to version 1.4.5 (current latest release).
Hopefully this marks a return to Stella development, as I haven't had
much free time over the past month or so.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2194 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-12-14 20:29:05 +00:00
stephena 267d379c99 Final changes for 3.3 release, and moving up release date to today.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2186 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-11-12 13:35:09 +00:00
stephena 603793a6c5 Updated changelog now that all bankswitch schemes support the new emulation
core address tracking.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2185 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-11-11 22:28:27 +00:00
stephena fca261c4e3 Updated debugger documentation for recent disassembly changes.
Removed reference to disassembly 'SKIP' command, since it isn't implemented
yet.

Decided on Nov. 15 for the 3.3 release date, and updated all relevant files.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2181 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-11-10 22:38:16 +00:00
stephena 192ab931f2 Updated 'type' command to show information from all sources (directive list,
emulation core, and distella).  This allows to better see exactly how an
address is marked in the disassembly.

Updated Changelog with changes I forgot that I made (you know it's time
for a new release when you forget what's been added since the last one).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2170 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-11-07 18:10:58 +00:00
stephena 0f63b49bd6 Started documentation updates for the next release. All the changes
haven't been made yet, but they will be soon enough.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2167 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-11-01 20:58:51 +00:00
stephena f3483ca8b1 When in 'small' window mode and attempting to open PAL ROMs larger than the
screen size (vertically), the window will open in partially truncated mode,
where the top of the PAL image is cut off.  This normally won't be a problem,
as it's mostly blank space anyway.

App window centering is now honoured when changing video zoom levels, not
just when changing eventhandler states.

Bumped version # for another test release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2135 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-09-21 19:39:30 +00:00
stephena b81bb187b7 Final commits for the 3.2.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2111 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-23 11:09:04 +00:00
stephena 2f9ee65822 Updated various files for upcoming 3.2.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2110 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-21 23:20:42 +00:00
stephena 26b1654aa2 Some minor UI improvements to the InputSettings dialog; renamed the
'Virtual Devs' tab to 'Devices & Ports'.  Updated documentation and
snapshots for this change.

Added Halo 2600 ROM info to internal properties database.

Increased default setting for 'joydeadzone' from 0 to 13.  This means
the default deadzone is somewhere around half the axis range (~16500).

Fixed behaviour of hat events; events weren't actually being turned off
until the stick was centered.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2108 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-21 23:08:44 +00:00
stephena 1b4cea5cdc I forgot to update the changelog with the very last commit.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2106 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-20 14:13:25 +00:00
stephena b2ed949082 Some final changes for the 3.2 release, including documentation updates.
Added 'ramrandom' commmandline argument, used to toggle randomizing or
zeroing or all RAM in the system (both zero-page and SARA).

Disassembler now properly supports all test cases, including rewinding
within the debugger.

Added preliminary support for disassembling from zero-page RAM.

Bumped version # for final release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2100 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-19 21:48:28 +00:00
stephena 0a7726cb9f Fixed bug in handling illegal TIA reads; the value returned should always
'clipped' to the unused TIA bits.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2099 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-16 19:49:32 +00:00
stephena d007c3502f Several big improvements to the debugger:
The disassembler now accepts a range of start addresses and remembers
old entry points, so the disassembly becomes more complete each time
the debugger is used.

Changes to address offsets within the same bank are now supported
(ie, changing from $fxxx to $dxxx within the same bank properly
updates the display).

Re-added ability to manually change banks from the debugger prompt
and the disassembly UI.  This now works correctly with the Distella
code.

Cleanup of the Cartridge::bank(...) API: if a bank cannot be changed,
the calling code will now know about it.  This fixes confusion with
some ROMs, whereby changing a bank in the debugger prompt would print
a success message even if the operation failed.

Note that these changes have broken rewind in the debugger.  Actually,
it only exposes problems that the rewind functionality already had :)


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2098 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-16 16:41:24 +00:00
stephena 764e598536 Fixed debugger 'runto' command; it was case sensitive, so it never
matched anything most of the time.  Also, as this operation can take
a somewhat long time on slower systems, a progress bar is now shown.

Fixed handling of bit 6 in VBLANK TIA register, which is related to
how INPT4 and INPT5 are handled.  This fixes at least one ROM that
should have failed in Stella, but didn't.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2096 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-12 16:55:47 +00:00
stephena 259e3091f0 Updated changelog for recent additions.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2095 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-11 23:00:53 +00:00
stephena 6a5998c684 Multiple events can now be assigned to combo events from the UI. Still TODO
is update the documentation for this.

Fixed bug reported by Buzbard from AtariAge concerning very large images
in the RomInfoWidget being clipped too small.

Reworked 'center window' functionality.  Using the SDL_VIDEO_CENTERED
environment variable was always a hack, and a bug was introduced in X11
OpenGL mode in version 1.2.14.  However, since SDL is now in maintenance
mode and won't be receiving any further updates, we have to bypass it
entirely.  Added infrastructure for OSystem to center the application
window.  For now, only Linux X11 mode is supported.  Still TODO is add
support for Windows.  OSX was never supported anyway.  This also means
that the center window variable no longer requires the application to
be restarted.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2091 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-11 21:53:19 +00:00
stephena 9089351412 Updated changelog for most recent changes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2086 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-08-08 12:45:19 +00:00
stephena f136363226 Updated changelog, and set preliminary release date for version 3.2
to Monday, August 16.  We'll see how well that goes ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2078 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-07-29 17:06:51 +00:00
stephena 5ca6d8c49d Removed 'uselauncher' from the UI, as it really shouldn't be there
(ie, disabling from the UI kills the UI on future runs, so you can't
enable it again).  This should fix problems where users go
'click-happy' in the UI, turning options on and off just to see what
happens.

Added 'showinfo' to the UI, so you don't have to drop to the
commandline to use it.

Updated all release files and bumped version number for 3.1.2
release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2031 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-05-03 12:01:43 +00:00
stephena f8adf5c314 Final changes for the 3.1.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2027 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-25 23:33:49 +00:00
stephena 3c01d9f72e Getting ready for the 3.1.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2025 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-24 18:03:57 +00:00
stephena 31d3233dc0 Fixed timing bug reported on AtariAge, also noticed on several versions
of OSX.  It was partially caused by 'negative time', or successive
calls to SDL_GetTicks() returning smaller values than previous calls.
This obviously totally confused the timing logic, which was never
designed for time to go backwards.  Related to this, setting the
framerate to 0 from the VideoDialog UI (indicating that auto-frame
should be used) ended up setting the time-per-frame to approx. 71
minutes, resulting in a delay of 71 minutes to the next frame
(which is what caused the 'lockup').

Changed all references to the Intel OSX build to also mention OSX
Snow Leopard (10.6), since the build won't run on 10.4 or 10.5.

Bumped version number to 3.1 (again).  Hopefully this is good to go.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2016 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-21 15:45:44 +00:00
stephena 506f5357b1 OK, hopefully this is the final commit for 3.1 (yeah right!).
Updated all remaining issues with the documentation and
changelog, and bumped the version # to 3.1.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2013 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-14 23:49:02 +00:00
stephena f94ebed340 Some improvements to continuous snapshot mode:
1) the interval between snapshots can be configured within the
'File Settings' dialog

2) the commandline option is now named 'ssinterval' instead of 'ssdelay'

3) the action is tied to the 'Alt/Cmd-s' key instead of a function key

There's just one more small issue to take care of in the Windows port,
and the next release should be ready.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2011 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-14 20:27:59 +00:00
stephena d0391c28f2 Added 'continuous snapshot mode', currently tied to the Shift-F12
key.  This enables automatically taking snapshots every X seconds
while in emulation mode.  The interval (in seconds) can be set
with the 'ssdelay' commandline argument.

Some minor cleanups to the EventHandler methods, making them
const when possible.

Added latest DPC+ changes from Spiceware.

Fixed issue with ROMs that run entirely from ZP RAM; no disassembly
was being generated when entering the debugger.  For now, this
special case is detected, and the disassembly is generated for
the code that ran before the PC entered ZP RAM space.  Eventually,
this will go away when the Distella fully supports disassembling
below 0x1000.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2009 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-14 15:41:42 +00:00
stephena e37fa7f520 Yet more fixes to the OSX menus; it seems the actions tied to the
Control key weren't being passed to the core code.

Yet more tweaks to the documentation.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2008 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-13 16:24:44 +00:00
stephena b65adcd49b Removed some debugging code, and tweaked the docs a little.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2006 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-12 22:44:30 +00:00
stephena 452b22d9f8 Updated various files, changing version from 3.0 to 3.1.
Bumped state file header for 3.1 release, indicating that all older
state files will no longer work.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2000 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-10 20:29:51 +00:00
stephena ea6ea9a7bd Renamed 'autocode' commandline argument and associated UI item
to 'resolvedata', since that more accurately describes what it does.
Also, it now accepts arguments as strings (never, always, auto)
instead of 0, 1, 2.

Updated main documentation for changes in OSX port 'basedir'.

Updated debugger documentation for recent command additions, and
provided new snapshots where the UI has changed.

It seems to be getting close to a new release - perhaps this
coming Friday.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1999 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-10 20:00:16 +00:00
stephena b781611925 Some updates to the PromptWidget and DebuggerParser.
The descriptions for the debugger commands are more streamlined
and better explained, and are neater when output.

Added 'cls' debugger command, which actually isn't for the debugger
at all, but for the prompt.  This erases all showing text and history.

Removed 'bank' debugger command, since it was already removed from
the RomWidget UI.

Removed 'listwatches' debugger command, since it wasn't implemented
anyway.  Besides, any watches are printed on every command access,
so it was pointless to have another function to do it.

Removed 'poke' debugger command; 'ram' and 'rom' do the same thing.

Fixed bugs in 'function' debugger command; it now correctly adds
functions without crashing.  Related to this, added 'listfunctions'
and 'delfunction' debugger commands for user-defined commands.

Fixed bug in completions for functions; it was including user-defined
functions twice.

Some general code cleanups in DebuggerParser (use ostringstream
instead of constantly creating new strings) and Expression
classes (make some methods const, for safety).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1998 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-10 00:52:47 +00:00
stephena 10c82a9457 Removed 'md5instate' commandline argument (it was previously added
post-3.0), and reworked how state files are accessed.  The cart type
now determines if a state file is valid, meaning developers can use
one state file across multiple builds of their program.

Added 'runtopc' debugger command, and associated UI item in the
RomWidget area.  This steps the code until the PC matches the given
value.

Added '16in1' bankswitch scheme, which is useful for ROMs named
'128-in-1' in RomHunter database.  Also, all multicart schemes now
show the current ROM onscreen while switching between them.

Fixed bug in Serializer class when accessing files in read-only mode.
Such files would be created and set to zero size, even if only
reading was requested.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1997 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-09 20:13:12 +00:00
stephena af14afd274 Praise be to $DEITY, I figured out a way to sort the files in Xcode.
This means I no longer have to scan every single file when looking
for a certain one.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1996 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-09 13:10:30 +00:00
stephena f22fbb3ca9 Some more removal/reassignment of FIXME and TODO.
Changed 'basedir' location of OSX port to
'~/Library/Application Support/Stella', which is more in line
with Apple guidelines (not to mention it's not a hidden
directory, so it can be seen in Finder).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1995 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-09 11:54:25 +00:00
stephena 56b6e74f04 Finally updated the Changelog, which should have been done way before
this.  That's the main problem with long delays between releases; I
forget exactly what's changed.

Fixed bug in Distella in handling relative addressing.  Wraparound
was potentially occuring on a 32-bit integer, which caused a crash
when accessing a 4K array.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1990 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2010-04-06 21:47:46 +00:00