Commit Graph

209 Commits

Author SHA1 Message Date
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