Commit Graph

1121 Commits

Author SHA1 Message Date
stephena 1a09d37d1b Speed up accesses to System by using constants. It's fine to make
a class more generic, but when it's never used, all it does it slow
things down.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3016 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-26 00:40:27 +00:00
stephena ba926bc4f6 Made some more methods const.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3015 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-25 20:14:09 +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 4de4fc5152 It appears that Linux sometimes needs the app-icon after all.
So we disable it only for OSX.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3013 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-22 16:26:52 +00:00
stephena ebf44d2631 A few more const and method cleanups.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3012 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-22 14:54:25 +00:00
stephena 920dcdb8a5 More const cleanups.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3011 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-21 23:02:20 +00:00
stephena f8be548312 Fixed bug in initial size for the debugger; it would sometimes try to use a size larger
than the desktop.

Some code cleanups; add const and optimize some methods.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3010 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-21 22:12:50 +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 fe1713ee87 Fixed some warning that showed up in gcc but not clang++, and vice
versa (I guess it's useful to test under multiple compilers).

Bumped version # for next test release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3008 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-18 15:57:03 +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 7247f64b8d Updated OSX project file for recent joystick changes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3004 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-13 23:44:51 +00:00
stephena cb78339693 Added missing class to Visual Studio for recent joystick changes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3003 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-10-13 23:36:35 +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 ab2e086fe0 Minor cleanup of d'tor in various classes, removing d'tors with no
implementation, and using virtual d'tor only when absolutely necessary.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3000 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-29 20:39:28 +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 0df666bb6e And work continues in trunk ...
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2998 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-14 20:25:50 +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 56d84a3c04 Fixed some dead code warnings generated by llvm scan-build.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2992 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-06 00:33:17 +00:00
stephena 2cb4d31c5b Fixed only minor compiler warning.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2991 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-04 20:34:58 +00:00
stephena b7cdaad634 Fixed minor compiler warning, and bumped version #.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2990 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-03 15:23:36 +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 adce15f86e MDM carts were only working with 16 banks, due to overflow in a 16-bit int.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2985 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-09-01 14:56:06 +00:00
stephena 5714bfc815 Updated OSX project file for class additions.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2984 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-31 23:29:45 +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 f5c967d2ac Updated VS project file for new MDM Widget class, and fixed a minor compile warning.
Bumped version # for a test release.

git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2982 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-29 23:30:18 +00:00
stephena ddafc3a650 Added cart debugger tab for 'MDM'.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2981 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-29 15:33:04 +00:00
stephena 04ee72521d Changed 'zoomlevel' to a GUI::Size object to more clearly reflect its intent.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2980 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-28 15:29:35 +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 8da55d8eac Added infrastructure to attach a surface to a dialog, so that it can be rendered
on top of the dialog surface.  This is useful when the surfaces are using
different resolutions, and we don't want to draw the exact overlaying surface
pixels directly into the the dialog surface.

For now, this is most useful for rendering snapshots in the ROM launcher, and 
eventually it will allow arbitrarily-sized images to be scaled (in hardware)
to the picture area of the launcher.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2978 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-24 21:47:51 +00:00
stephena 5a89990cc1 Add some extra logging to SDL Init and joystick handling, in an attempt
to debug joystick issues that some users are having.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2977 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-15 15:13:00 +00:00
stephena bd8728271f Updated VS project file for MDM bankswitching scheme.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2975 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-14 00:33:58 +00:00
stephena fa6127d53a Added 'MDM' bankswitch scheme from Edwin Blink, as documented in the AtariAge thread:
http://atariage.com/forums/topic/56073-cheap-2k4k-x-in-1-menu-driven-multicart-for-atari-2600

Fixed declaration of bankswitch type so it isn't in two places, which necessitated
modiying two files and keeping them in sync.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2974 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-14 00:03:56 +00:00
stephena a7aece9d36 Improved DASH bank state display in the debugger; it now shows info from
all 8 'slots'.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2973 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-08-09 01:04:46 +00:00
stephena 740dcc168e Updated OSX project files for DASH class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2971 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-31 21:50:26 +00:00
stephena 9b864cc9c1 Updated VS project file for DASH class additions.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2970 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-31 19:47:54 +00:00
stephena adbd8f673d Bumped version # for test release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2969 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-31 19:31:02 +00:00
stephena 05f455789e Changing banks in the DASH debugger tab is now working.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2968 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-31 17:05:21 +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 cced0aef33 The DASH debugger tab now correctly shows the state of all banks/segments
currently in use.  Still TODO is activate the 'Commit' buttons, so that
the banks can be changed from the UI.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2966 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-29 22:37:17 +00:00
adavie 301926ebfc Implemented autodetect for DASH scheme.
Requires 'TJAD' to be present in ROM.

git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2965 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-29 13:25:23 +00:00
stephena 21eff3b800 First version of DASH debugger tabs. The bankswitching tab is still a WIP.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2964 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-29 00:29:02 +00:00
stephena 9f172cbb42 Fixed potential bug in Cartridge API; renamed bank() to getBank(),
since there are issues with mixing overloading and virtual functions.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2963 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-28 13:40:37 +00:00
stephena 82ef198585 Fixed DASH scheme to work according to spec; it now works with the
test ROM from Thomas.  Still TODO is work on patch support, and add
debugger tabs for bankswitching and extra RAM.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2962 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-26 20:32:33 +00:00
adavie 756a55fd82 Updated the comment/explanation of the bankswitch scheme so that it reflects our current thinking on how the scheme should work.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2961 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-25 11:03:27 +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 ef183beab7 Slight cleanup of the System::PageAccess API. Since all c'tor calls will
*always* pass in 0,0,0 for the various bases, it is redundant to pass that
data in on each invocation.  So now the c'tor does it automatically.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2959 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-24 16:24:27 +00:00
adavie fd88ec3f59 Changed 'Boulder Dash' type explanation to 'Experimental'
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2958 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-24 13:22:49 +00:00
adavie 818adab9ed Changed 'Boulder Dash' type explanation to 'Experimental'
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2957 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-24 13:21:43 +00:00
adavie c83b8f7d7e Fixed RAM crash. I had neglected to allocate RAM after 'myImage' ROM section. Whoops. Now passes my very simple write stuff to a few locations, and read back.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2956 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-24 11:41:19 +00:00
stephena 06e99c8719 For now, disable entering menu mode on window minimize, since it
may be causing problems.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2952 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-02 11:57:27 +00:00
stephena 979417bd00 Fixed last-minute compiler warning.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2950 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-07-01 13:43:19 +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 c8eed372db Updated Windows code to specifically load an icon, otherwise the default window title icon is used.
For the Windows release packages, the VS 2013 runtime libraries are now installed with Stella, so the user doesn't need to manually install vcredist.

git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2944 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-30 22:46:33 +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 6ea7f60c90 Change default ROM launcher settings to 1000x600 and 1x ROM viewer.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2941 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-30 13:45:25 +00:00
stephena 16be8f8a8e Added 'Cart RAM' debugger tab for DPC/Pitfall2 scheme. It is quite similar
to the DPC+ scheme, so I suspect its omission was an oversight.  Other than
the more esoteric types, the only scheme left needing a cartram tab is
DASH, but that one is still in development ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2940 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-30 01:23:23 +00:00
stephena 9b99e414aa Added debugger controller widgets to Xcode, and fixed minor
compile warning.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2939 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-30 00:54:30 +00:00
stephena 10283cb75b Added new debugger controller widgets for VS, and fixed an error when converting an 8-bit hex value into a 4-bit one. Granted, I was calling the method incorrectly, but it's strange that Windows and Linux have different behaviour for snprintf.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2938 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-30 00:31:36 +00:00
stephena e3cc672368 Added an oft-requested debugger feature: add buttons to the AtariVox/SaveKey
controller area to reset the EEPROM to default values.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2937 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-29 23:25:53 +00:00
stephena 81d0dfdbdc Some final fixes for the new cartram debugger tab. In cases where
the RAM is always mapped into the same place in ROM, the ram grid
now shows addresses with the correct read port address, and
ram labels are properly accessed.  In cases where the RAM is hidden
from the 6507 or not mapped into the same place at the same time,
the addresses show actual real addresses of the RAM from the POV of
the cart itself (ie, RAM location zero is labeled 0, not as $1xxx).
This is necessary since quiescent RAM doesn't actually have a 6507
address.  Also, labels are disabled in this case.

Fixed bug with incorrect offsets when reading cart RAM labels;
it seems to be a copy/paste issue, since all such methods were
written as if the cart was SaraChip-based.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2936 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-29 18:37:55 +00:00
stephena 2dccc2df15 Partially reverted FrameBuffer changes, since it *still* didn't fully
fix issues in Ubuntu Unity, and caused CPU usage to spike to 100% in
all other tested platforms.  So for now, I'm putting it back to low
CPU usage for all other platforms (Linux w/o Unity, OSX, Windows, etc),
and treating this as a Unity bug (which isn't unheard of).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2935 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-23 15:34:25 +00:00
stephena da86a3b175 Removed the last remains of dirty-rect updating from the FrameBuffer.
This code was originally there for software mode, where it was very
expensive to update pixels, so it was done as little as possible.
However, it was also a bit of a hack, and sometimes interfered with
double-buffered hardware rendering.  So now showing the various UI's
will burn slightly more CPU, but will be guaranteed to work under
all conditions.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2934 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-21 20:51:08 +00:00
stephena 23a2e2d7ee More documentation updates.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2933 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-21 01:45:23 +00:00
stephena 12e727ae4e The 'savesnap' command in the debugger prompt now actually saves a
snapshot of the TIA image, including partial rendering (if applicable)
and scanline indicator.  Previously it only saved the TIA image, which
basically made it useless from the debugger POV.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2931 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-20 23:01:11 +00:00
stephena 6f366846fe More OSX Xcode 5 updates. The project file now builds both
32 and 64-bit Universal Binaries, and there is now a development
and deployment target.  Finally, the build DMG script now
works again.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2930 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-20 14:29:05 +00:00
stephena 41ea059483 VS 2013 doesn't like declaring arrays on the stack.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2929 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-20 00:28:57 +00:00
stephena 78f5a2acef Reworked the PNG save code a little, making it more abstract and not
having to know about TIA, Properties, etc.  Basically, it now saves
a snapshot of either the FrameBuffer or an FBSurface, and adds 
text comments passed into it.  The contents of the surface and comments
are no longer calculated (or known) by the PNG code.

This is in preparation for saving FBSurface from anywhere, which will
help in the debugger for taking snapshots.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2928 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-19 16:45:07 +00:00
stephena 2d32f3d39a Fixed rendering issues in OSX, by never destroying and re-creating the window.
This sometimes results in a window resize being visible, but better that than
an outright crash.  This issue has been reported to the SDL mailing list,
so this fix may be backed out in the future.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2927 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-17 11:49:38 +00:00
stephena 61972b350a Finally some love for the OSX port. The Xcode project now compiles and runs,
and contains only one Objective-C warning (more research required).  There
are also some fixes for minor warnings.

There are still some issues, though.  First, SDL2.0.3 has to compiled
manually, as the public binaries don't work (this is documented and
a bug reported on the SDL mailing list).  Second, fullscreen->window
transition is causing a crash, which I still need to track down.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2926 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-16 16:34:48 +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 f7254488dc Updated VS project file for recent patch from SpiceWare, and fixed some minor compile errors for VS 2013.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2924 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-13 22:43:54 +00:00
stephena 815e0b2d33 Cleaned up the Rect class, which is something I've been meaning to do
for a long time.  Changed to unsigned int everywhere, and removed
functions that I will never use (the class originally came from
ScummVM).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2923 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-13 19:53:44 +00:00
stephena 05c007cbae Made StellaMod an actual enum, rather than simply typedef'ing
to SDL mod.

Added a hack/fix for Alt-key combos being printed in the debugger
prompt (ie, when stepping though a frame with Alt-f, the 'f' character
was shown in the prompt).  This will be fixed when PromptWidget
becomes an EditableWidget (not for the 4.0 release).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2922 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-13 19:34:35 +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 791c908d8c Fixed bug in mouse scrolling due to differences in handle mouse
scroll events from SDL1 to SDL2.

Bumped version #.  It looks like the current code is now bug-fixed
and equivalent to release 3.9.3.  Now on to committing some backlogged
patches and adding new functionality.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2920 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-13 14:49:01 +00:00
stephena d275773413 OK, I originally intended to fix FrameBuffer::scanline for SDL2,
which I though a just a one or two-liner equivalent to glReadPixels.
Turns out that SDL2 doesn't return 24-bit RGB data (only 16 or 32-bit),
so the PNGLibrary had to massage the data.  In the process, converted
the PNG saving functions to actually use PNG library functions, which
greatly simplified converting packing from 32 -> 24-bit.  Historically,
the PNG save functions were written before libpng was a requirement,
so they were hand-rolled.  Once libpng was integrated into the codebase,
it didn't make much sense to not use it anymore.

So an expected two-line code fix became this commit ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2919 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-13 13:35:41 +00:00
stephena a0aa1c8e0a Updated PNG library to latest version.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2918 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-12 16:25:32 +00:00
stephena 6cb3b5c58a Fixed typo in default assignment of key mapping for keypad 0.
It looks like this bug has been present for a long time.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2917 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-11 16:11:10 +00:00
stephena 0b74f63a44 Some more removal of SDL-specific code from the emulation core.
The EventHandler now queries EventHandlerSDL2 for names of keys
instead of keeping a list itself.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2916 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-11 16:06:17 +00:00
stephena 53edeb9171 Text input is now working in the debugger prompt (a rewrite of the
PromptWidget class to use EditableWidget will probably happen after
release 4.0).

All text input now seems to be working as in Stella 3.9.3.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2915 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-10 21:53:02 +00:00
stephena aa6c1b3d58 Text input is now working in all classes inheriting from EditableWidget
(specifically, DataGridWidget and RomListWidget are now working).

More work is required for PromptWidget, since it was created before
EditableWidget existed, and hence duplicates a lot of that classes code.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2914 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-10 21:04:36 +00:00
stephena 90248b2701 First pass at converting text input to the new SDL2 scheme. Basically,
the old way mixed both single-key events and Unicode input into one
method, and the new way separates them (using a new handleText method).

Currently it seems to be working fine in the ROM launcher (yay!, I
can now quickly jump to ROMs by name again).  There are still some
issues in the debugger, which I'll work on next.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2913 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-10 16:43:35 +00:00
stephena d66226c210 Fixed 'magic number' issues when creating a System for the Console.
Technically, the magic numbers are still being used, but now they're
no longer exposed outside the System class by default.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2912 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-09 16:35:19 +00:00
adavie d0092580e0 Bankswitching for ROM banks now working OK.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2911 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-06 23:29:00 +00:00
adavie 68c3c42254 first "working" DASH code
resolved "access" initialisaation. Bizarre stuff and a bit of handwaving magic, but at least it runs the test ROM as a "DASH" version now.

git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2910 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-06 14:52:10 +00:00
stephena 3ab3c879be Updated VS project file for new DASH bankswitch scheme.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2909 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-04 17:24:24 +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
adavie f7f80ff05b fixed shift for ROM bank size
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2907 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-04 15:29:51 +00:00
adavie f99afe12dd rewrite 3E/3F functionality and optimal usage of ROM when RAM blocks overwrite.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2906 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-04 14:29:33 +00:00
stephena a583ea7532 Forgot to increase version # in last commit.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2905 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-04 12:17:23 +00:00
stephena d09ac569e5 Finally have fullscreen/windowed mode switching working.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2904 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-04 12:15:54 +00:00
adavie 053ce36518 fixed a minor bank usage init inconsistency
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2903 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-03 21:21:11 +00:00
adavie abdd770e38 Adjusted bank() and bankCount() functions according to advice from SA.
removed 'myCurrentBank' -- this has no meaning in this scheme.
Adjusted load() to switch in each bank as it is loaded
removed comment/questions to SA and replaced per advice.
added a few TODO comments.
reformatted some of the comments back, as per discussion

git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2902 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-03 21:17:54 +00:00
adavie cacecbeddd Must remember to build before commits. Sorry.
Fixed erroneous constant duplicate

git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2901 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-03 14:11:01 +00:00
adavie 40c8c81245 autoformatted. still stabilising to stella standard.
Tabs removed, replaced with 2-char spacing. 
constants for bit masking added
corrected the patch code for the bit-allocations for RAM/ROM banks switch


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2900 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-03 13:53:49 +00:00
adavie 6d6dd7632f modified poke to handle the new bank encoding (a single byte, with the RAM/ROM bit encoded).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2899 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-03 13:04:35 +00:00
adavie d4bed6da4b Comment fixes, and modifcation to a single hotspot for banswitching.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2898 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-03 12:06:12 +00:00
adavie 009b36bd5c Modified for a single hotspot, as the bank switching is encoded in the value written to the bank address anyway.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2897 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-03 12:05:00 +00:00
stephena c774f19fd0 Changed enum back to static const, as per the authors original intent.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2896 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-03 11:39: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 8f2123a5bf Aspect ratio correction is now properly applied to the TIA in windowed
and (simulated) fullscreen mode.

Fullscreen mode is now simulated in that it creates a window that matches
what would appear in fullscreen.  The next thing to do is actually have
the backend create this fullscreen mode correctly.

Changed 'gl_fsscale' to 'tia.fsfill' to more properly indicate what the
option does.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2894 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-06-02 14:34:12 +00:00
stephena 38b586ae7b Fixed missing initialization of FBSurface attributes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2892 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-14 22:29:53 +00:00
stephena d04c42580b TIA rendering and Blargg/scanline effects are now working again.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2891 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-14 22:04:59 +00:00
stephena b7ae007093 Updated VS project files for recent class additions.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2890 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-13 23:16:54 +00:00
stephena c8b27ec114 Some pretty huge changes right across the board.
Changed pointers to references in c'tor calls, making things a little safer.

Removed FBSurfaceTIA, since it was tied too closely to SDL itself.  Added a
class called TIASurface that is functionally very similar, but is more generic
and accessible by the FrameBuffer directly.  Eventually, this class will take
responsibility for all things related to rendering the TIA image (Blargg TV
effects, phosphor mode, etc).

TIA rendering is currently borked; fixes will follow ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2889 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-12 23:34:25 +00:00
stephena d57184a4fc Fixed loading of PNG images in the ROMInfoWidget.
Added fallback to FBSurface::drawSurface() in case certain ports don't
want to implement it natively.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2888 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-09 17:44:04 +00:00
stephena e31274c753 When obtaining FBSurface bounding rects, use references instead of constantly
creating new instances of GUI::Rect.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2887 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-07 20:21:07 +00:00
stephena 3a60412706 Fixed framebuffer overlay display; the messages weren't being scaled correctly.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2886 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-07 20:02:47 +00:00
stephena b068b3299f Removed some obsolete references to OpenGL.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2885 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-07 11:15:00 +00:00
stephena 68df6fe891 Move the scaling, streaming and blending options directly into FBSurfaceSDL2,
making this class more robust, and enabling it to be used for either UI
surfaces or TIA surfaces.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2884 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-04 20:21:16 +00:00
stephena b418d5a4f5 Changed FBSurface API to access/modify source and destination rendering
rectangles.  Now that the underlying rendering is hardware accelerated,
this API more closely matches what is actually occurring.  As well, it
makes things easier comprehend: 'src' rect is the actual surface data,
and 'dst' rect is its final output onscreen (scaling, etc being applied).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2883 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-04 16:59:11 +00:00
stephena 0110cd829e Fixed some minor compile issues, and updated UNIX build files to
actually use SDL2.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2882 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-03 17:48:25 +00:00
stephena bf283001ee Some API comment fixes, and renamed FBSurface::update() to render(),
to more clearly indicate its intent.  It looks like
FBSurface::drawSurface() is essentially the same thing, and will
probably be removed.

Fixed header issue in OSX code, that wasn't detected until moving
to Xcode 5.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2881 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-02 15:58:57 +00:00
stephena 3914b15e9b Yet more upheaval of the FrameBuffer/surface code. Moved most of the
functionality of FBSurfaceUI into FBSurface directly, since there was
absolutely no need of the SDL-specific code to know about underlying
FrameBuffer-specific stuff.  This makes a clear separation between
SDL and the core code, making porting easier in the future.  As a
result, renamed FBSurfaceUI as FBSurfaceSDL2.

Eventually, FBSurfaceTIA will disappear completely, being integrated
into FBSurface and FBSurfaceSDL2.  Again, the logic for drawing the
TIA and using Blargg, etc has absolutely no place in SDL-specific
areas of the code.

When this conversion is complete, I see FrameBufferSDL2 and FBSurfaceSDL2
as being thin wrappers around SDL-specific functions that simply push
pixel data to the video system.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2880 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-02 13:17:24 +00:00
stephena 4654975341 Some updates for compiling in the latest version of Visual Studio (2013).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2879 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-05-01 23:15:17 +00:00
stephena e7719c334e And now that the FrameBuffer class is partially working, time to break
things again :)  Work continues on refactoring the FBSurface code, and
moving thing out of the xxxSDL classes that don't really have anything
to do with SDL.  This will also make it easier to port Stella to other
graphical toolkits.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2878 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-04-30 16:53:21 +00:00
stephena 61689a9563 The TIA windowed zooming modes now work (using Alt-minus and Alt-equals).
Rearranged some of the desktop size code, to be more consistent with the
new API.

Beginning to remove the old assumptions that a smaller screen than 640x480
could be used.  In the 4.0 release, the smallest (internal) screen
supported will actually be 640x480, and if the real desktop can't display
it, then it will be scaled down.  This is one of the nice benefits of
killing pure software rendering support, and letting the hardware just
draw the screen as it likes.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2877 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-04-29 14:52:35 +00:00
stephena 0c3b9f1443 OK, just checking in to let everyone know that I haven't abandoned the SDL2
conversion.

There are changes all over the FrameBuffer classes.  Still TODO is
TIA resizing in windowed mode, and all fullscreen modes.  The infrastructure
is close to completion, and it should be pretty easy to get the framebuffer
stuff done in the next week or so.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2876 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-04-28 16:47:10 +00:00
stephena 18a467062a Oops, a few settings changes I forgot in the last commit.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2874 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-12 17:00:52 +00:00
stephena bc9e50f0f1 Updated some documentation.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2873 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-12 16:56:15 +00:00
stephena d0d04948c7 The keyboard now works in TIA emulation mode. Still TODO is get ASCII
characters working, so the UI can be used.

SDL Window events are now sent to the EventHandler core.  For now, only
the window expose event is handled (redraws window if it's been hidden).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2872 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-09 19:22:04 +00:00
stephena 0b3bf4b659 The framebuffer now recognizes double-buffering based on whether the render backend is accelerated, and the refresh method uses this to refresh buffers. This fixes the flashing that appears in OpenGL in Windows and OSX. Interestingly, Direct3D in Windows and OpenGL in Linux didn't exhibit this issue.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2871 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-08 22:57:16 +00:00
stephena c878fd926d More work on FrameBuffer, to fix flashing issues in some renderers.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2870 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-08 22:15:02 +00:00
stephena 28a335b9ea The OSX build files now support (and probably require) Xcode 5!
There's still quite a few issues to fix, but at least it compiles
and runs Stella correctly.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2869 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-08 00:44:30 +00:00
stephena cde5c2ed9c Disabled icon loading completely, since Linux/OSX didn't need it, and Windows uses the icon from the project file.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2868 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-07 22:34:48 +00:00
stephena 9da99f56d2 The 'video' commandline option now allows to select between different
renderer backends (in SDL).  This allows to select software mode (not
recommended) or Direct3D/OpenGL in Windows.

The app icon is now loaded in Windows.

Cleaned up the VideoDialog UI, removing references to double-buffering
and OpenGL-specific settings.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2867 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-07 22:12:39 +00:00
stephena 81347af093 Fixed joystick messages, to properly indicate when no joysticks are present.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2866 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-07 18:19:09 +00:00
stephena 90fbea8286 More fixes to VS project file for SDL2 update.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2865 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-07 17:45:49 +00:00
stephena 2ac3042d09 Updated Windows build scripts for SDL2.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2864 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-06 23:09:27 +00:00
stephena 2a0da329f2 Added FrameBuffer::about(), so we can actually see if hardware acceleration
is being used.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2863 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-06 22:36:31 +00:00
stephena fdf9ed708a Removed concept of 'base' surfaces, which was an optimization for software rendering.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2862 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-02 02:02:00 +00:00
stephena cf50b4f1b6 Updated VS project file to support SDL2. The Windows port is now at the same level as Linux (IOW, it can compile and run, but many things are still broken).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2861 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-02 01:35:37 +00:00
stephena 2d64643d8f A few fixes for texture/scanline filtering.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2860 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-03-01 18:28:57 +00:00
stephena dbddad068c Scanline effects and texture filtering settings are now honoured.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2859 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-28 23:34:50 +00:00
stephena a58fb7165e The 'center' and 'vsync' options are now honoured. Many commandline
options have changed names.  In particular, all tia-related options
now start with 'tia.'.  This includes most of the old options that
started with 'gl_'.

Changed the names of all tv-effects options from starting with 'tv_'
to 'tv.', to match the name changes elsewhere.

Some work on the documentation to reflect the latest changes.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2858 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-28 21:21:50 +00:00
stephena 7bebe7263d Some more work on Blargg scanlines; it's still not correct, but closer
than before.

Fixed compile issue for joystick support (thanks to email from D. Church).
Joystick support still isn't tested, so no guarantees it will work.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2857 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-22 17:31:16 +00:00
stephena ca59c8bd29 A few minor improvements in the SDL TIA handling code.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2856 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-19 21:30:52 +00:00
stephena 6c562f49b8 Blargg effects now work, but the scanlines aren't quite right yet.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2855 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-19 18:57:14 +00:00
stephena a1ea1b0c96 OK, SDL2 is in the building! This is the first pass at porting the code
to SDL2.  For now, there are many things broken, namely keyboard handling
and fullscreen modes.  But the launcher does show up, allows to start a
game and enter/exit the debugger, etc.

The code will only compile on Linux for now, and sometimes maybe not even
then.  Expect breakage on a regular basis over the next month or so.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2854 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-19 15:34:22 +00:00
stephena 46733e32c0 Fixed some minor compile warnings for OSX.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2853 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-17 00:11:01 +00:00
stephena 14c8546ce1 Updated VS project files for new EventHandler class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2852 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-16 20:52:45 +00:00
stephena b2370205ca Fixed minor compile issue for OSX build, and removed the non-Intel
build files (sorry, there's no PPC support for Stella 4.0 using
SDL2).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2851 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-15 22:55:36 +00:00
stephena 5a48bf0311 Fairly large reorganization of the EventHandler class, separating out
SDL-specific code into its own EventHandlerSDL2 class.  This is part
of a larger reorganization of the codebase, to completely remove
SDL-specific code from src/emucore, and make it easier to port to SDL2.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2850 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-15 21:37:29 +00:00
stephena 32199509b3 Updated internal PNG files to latest release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2848 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-07 00:23:35 +00:00
stephena e7d2b67ceb Updated OSX project file for recent FrameBuffer changes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2847 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-05 23:07:51 +00:00
stephena 45d0740819 Some reorganization of the FrameBuffer classes, to move all SDL-related stuff
into FrameBufferSDL2 only.  This will make conversion to actual SDL2 code much
easier, since it won't be touching any of the core emulation code in src/emucore.
Next TODO is something similar for EventHandler (which uses SDL heavily and is
too tied to a core class).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2846 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2014-02-05 22:09:57 +00:00