Commit Graph

1769 Commits

Author SHA1 Message Date
Christian Speckner 3df449603e Delay queue widget: Finishing touches
* Reorder widgets in TIA tab
    * Change background color to readonly
    * Pacify compiler warning in iterator
    * Fix typo in TiaDebug
2017-04-04 21:55:16 +02:00
Stephen Anthony 96bbba223a Various improvements to the debugger prompt:
- 'cls' now only clears the screen, and not the command history
  - 'help' accepts another command as an argument, to give more info
    about the command (ie, help breakif is now valid)
  - command completion now works on built-in functions and pseudo-ops
2017-04-04 14:17:10 -02:30
Christian Speckner 467c45e7b2 Delay queue widget: replace mock.
* Add an iterator for interating over delay queue entries
    * Dynamically build delay queue widget content from iterator
    * Refactor shadow registers to reflect a possible delay
2017-04-04 00:39:55 +02:00
Christian Speckner 8275b1a9d6 Add DelayQueue widget (mocked content). 2017-04-04 00:39:55 +02:00
Stephen Anthony 157f25eba9 Updated Visual Studio project files for VS 2017. 2017-04-02 13:13:52 -02:30
Stephen Anthony 2d8ddd3296 DataGridWidgets now show different background colour by default in
read-only mode.  This allows classes that were previously written
to auto-magically work, instead of having to manually edit them.
2017-04-01 20:39:00 -02:30
Stephen Anthony faba2540f9 The debugger 'cls' no longer erases history. 2017-04-01 20:37:39 -02:30
Stephen Anthony ae65f95848 Updated debugger read-only UI items background colour. 2017-04-01 19:11:59 -02:30
Stephen Anthony 3e5df9c7bc Non-editable UI items in the debugger are now shown with a different background color. 2017-04-01 17:04:40 -02:30
Stephen Anthony 58f93c1930 Fixed inheritance issue with Widget::wantsFocus() and child classes.
Changed some code in TIA class to eliminate function calls.

Minor code refactoring wrt d'tors.
2017-04-01 15:41:34 -02:30
Stephen Anthony f041de441f Bumped state version #, since recent changes have made old
state files invalid (and cause a crash on my system, at least).
2017-03-30 14:51:31 -02:30
Stephen Anthony 4a8ff43fe2 Match override to virtual method, to stop compiler from complaining.
Also, if we don't know if a method should be const, then it needs
to be :)
2017-03-29 19:59:01 -02:30
Christian Speckner 988b36010b Positioning for missiles and ball. 2017-03-29 22:53:42 +02:00
Christian Speckner d00698c3e4 Better naming, implement player position setters 2017-03-29 22:02:15 +02:00
Christian Speckner a7fc82cbea Position readout for players. 2017-03-29 20:14:43 +02:00
Christian Speckner f1eb76303c Finish introduction of shadow registers:
* Reenable all register readouts
    * Refer to shadow registers in all readouts
    * (De)serialize shadow registers
2017-03-29 19:32:57 +02:00
Christian Speckner b3bfc86ccc Introduce shadow registers, start refactoring TIADebug to use them. 2017-03-29 18:18:35 +02:00
Christian Speckner eb209ee1dd Fix sign error with myXDelta. 2017-03-29 17:58:28 +02:00
Christian Speckner d6fbc23b60 Fix cursor in frame preview. 2017-03-29 17:46:25 +02:00
Stephen Anthony d819f9c7b8 Fixed overflow of text/UI items in large font mode in the debugger;
we need just a little more height.  There's similar issues for the
smallest font, but I need to think about that one a little more,
since many people are affected if we change the window size at the
smallest setting.
2017-03-28 15:18:20 -02:30
Stephen Anthony 3a8967f349 Fixed minor warnings in Xcode build. 2017-03-27 16:54:19 -02:30
Stephen Anthony 2e4849411b Bumped version for next test release. 2017-03-27 16:30:34 -02:30
Stephen Anthony 94cd456076 Final state load/save updates for DelayQueue. 2017-03-25 21:29:43 -02:30
Stephen Anthony 73beb8cb40 Re-enabled TIA::saveDisplay() and TIA::loadDisplay().
This means the debugger rewind feature is working again.  More testing
is required to make sure this is the same as Stella 4.x functionality.
2017-03-25 19:32:58 -02:30
Stephen Anthony fd4122e017 Re-abled state loading/saving.
There's still a few final items to fix, but it's 99% complete.
2017-03-25 17:58:58 -02:30
Stephen Anthony 0976fb1d93 Updated VS project file for BUS/CDF class additions. 2017-03-24 23:12:31 -02:30
Stephen Anthony 4b56a178d8 Re-enabled 'tia' command in debugger prompt. 2017-03-24 21:27:01 -02:30
Stephen Anthony 90aa152f59 Re-enable viewing TIA sound output in the debugger.
This code is only temporary, until we more properly deal with it
in the new sound core.
2017-03-24 21:13:31 -02:30
Stephen Anthony 7a0f322224 Remove all references to CX22/CX80 for trakball-like controllers.
Applicable controllers are now (consistently) named either
Amigamouse, Atarimouse or Trakball.
2017-03-24 20:29:30 -02:30
Christian Speckner 6c41bf6405 Don't start missile decodes while RESMPx is set. Fixes #83. 2017-03-24 22:29:09 +01:00
Stephen Anthony 9fb45a0a88 Add 'TODO', to make sure we come back to this at some point. 2017-03-24 18:54:01 -02:30
Stephen Anthony 95c7b30a45 Some updates to the last BUS/CDF commit:
- update some code to the '5.0' way of doing things
  - allow compilation in Linux
  - whitespace/tab fixes to match main codebase
  - add some extra comments
  - test compile under gcc 6 and clang 5, and fix some warnings
2017-03-24 18:02:08 -02:30
Darrell Spice, Jr 6227186feb Preliminary support for BUS and CDF
Preliminary support for new Harmony/Melody drivers BUS and CDF.  Work remains for the 3-Voice Audio, Digital Sample playback, and some additional revisions to the debugger widgets.
2017-03-23 21:25:33 -05:00
Stephen Anthony db3ce957a5 Implemented console timing changes in a more general way.
There is now a virtual consoleChanged() method called on
a device when the console changes.  If the device is
interested in this notification, it simply has to implement
the method.

Updated DPC+ scheme to implement this method, so that the
Thumbulator object is automatically told whenever the console
changes, and can adjust its internal timing accordingly.
2017-03-22 15:46:48 -02:30
Unknown 97a229dd92 ARM Timer 1 support
Implemented ARM Timer 1 support in Thumbulator.  Revised DPC+ to use it.
2017-03-20 21:55:27 -05:00
Christian Speckner 25261fff78 Fix a small ommission. 2017-03-20 00:40:42 +01:00
Christian Speckner 7325cd8034 Fully match missile starfield to hardware. 2017-03-20 00:31:29 +01:00
Christian Speckner 3b45bbd238 Fix RIOT load / save. 2017-03-19 22:39:54 +01:00
Christian Speckner 317169c59a Properly emulate interrupt flag behavior of INITM read on wraparound. 2017-03-19 22:26:00 +01:00
Stephen Anthony 471db61254 Updated OSX project file for class name change. 2017-03-18 21:44:59 -02:30
Stephen Anthony 2a9372b7c6 Updated VS project file for class name change. 2017-03-18 20:36:55 -02:30
Stephen Anthony a07a607c76 Console timing info is now available through Console::timing()
and TIA::consoleTiming().  This allows to query the TIA about
specific version of the console being emulated, which can be
distinct from the frame layout used by the TIA itself.
2017-03-18 19:50:48 -02:30
Christian Speckner 41e2f77333 Adapt missile starfield to match my own hardware. 2017-03-18 14:15:11 +01:00
Stephen Anthony 0c7b9aa079 Fixed comment error: Superchip is only 128 bytes RAM (but 256 bytes
of address space taken).
2017-03-16 20:59:52 -02:30
Stephen Anthony 0e712b39e1 Optimized Cart::isProbablySC. Perhaps a small change, but more
efficiency never hurts.
2017-03-16 20:41:37 -02:30
Stephen Anthony 02a399a8aa Fixed Superchip autodetect for Dig Dug as discussed on AtariAge. 2017-03-16 18:46:43 -02:30
Stephen Anthony 3950f80a30 Refactoring, convert TvMode to FrameLayout as per AtariAge thread. 2017-03-15 20:57:03 -02:30
Stephen Anthony 59a6f8f9d1 Made formatting for new code in M6532 class match what was already there
(just an OCD thing).  Updated changelog for new RIOT changes.
2017-03-14 19:32:33 -02:30
Christian Speckner 05b10bec6b Rework RIOT timer to match real hardware behavior. 2017-03-14 01:27:11 +01:00
Stephen Anthony 7cbec18f5a Updated ROM properties; remove some default values, add missing entries. 2017-03-12 21:08:39 -02:30
Stephen Anthony 68f9831061 Make sure that every frame draws all scanlines in the height of the window.
If the ROM doesn't reach that far, blank out all further scanlines.

Optimize FrameManager::height() method.
2017-03-11 16:53:04 -03:30
Christian Speckner 4a71e48a07 NUSIZ player improvements.
Match NUSIZ during draw / decode and hblank to hardware behavior.
2017-03-10 09:18:14 +01:00
Stephen Anthony 2057b1421c Set ROM launcher framerate to 30fps. There's no need for it to be
a full 60fps, and it reduces CPU usage up to 30% on some systems.
2017-03-08 18:13:01 -03:30
Christian Speckner e02166092d Improve player NUSIZ during hblank. 2017-03-08 00:01:41 +01:00
Stephen Anthony a2c98e2409 Fixed 'read past end of array' crash. 2017-03-06 18:11:10 -03:30
Stephen Anthony acd5b3c813 Final set of ystart adjustments (hopefully), taking care of corner cases
for weird ROMs, etc.
2017-03-06 13:32:28 -03:30
Christian Speckner d429b79d78 Improve ystart detection:
* Fix transition locked -> floating
    * Lock detected value after 30 stable frames
2017-03-06 00:28:31 +01:00
Stephen Anthony e18fe2005d Add DK VCS to properties database. 2017-03-05 15:20:56 -03:30
Christian Speckner c7da6c5b26 New frames always start on line 0. 2017-03-05 14:41:28 +01:00
Stephen Anthony ebe50a1eca Updated version to pre5. 2017-03-04 16:09:38 -03:30
Stephen Anthony bb18b3e777 Updated properties to RomHunter v12. 2017-03-04 16:06:53 -03:30
Stephen Anthony 185119eed9 When manually changing ystart from auto-detect mode, note when the
manually selected ystart line matches the auto-detected one, and reset
it in the ROM properties.  This makes sure that auto-detected values
are actually stored as '0', and not the auto-detected value.

Fixed ystart for 'Swoops' ROM.
2017-03-04 14:41:05 -03:30
Stephen Anthony 37774e08b8 Re-sync load() and save() methods in TIA class. 2017-03-03 22:04:30 -03:30
Stephen Anthony b5b058c615 Made VblankManager::ystart() always return a valid ystart, either
autocalculated or fixed.  This fixes selecting a scanline with the
mouse in TIA output widget in the debugger.

Made various methods inline for issue #7.
2017-03-03 21:57:36 -03:30
Stephen Anthony 517ac713ad Fixed approx. 100 ROMs that no longer need explicit ystart data
in the ROM properties file (due to fix to ystart autodetection).
2017-02-28 19:55:32 -03:30
Stephen Anthony 2a2797cbaf Fixed 'mystery constant' in M6532 in two other places. 2017-02-26 20:29:18 -03:30
Christian Speckner 10245ea102 Tentatively remove the legacy kludge in RIOT timer handling. 2017-02-27 00:25:06 +01:00
Christian Speckner 8f93704559 Frame manager fixes
* Don't wait until next line before starting frame after vblank is
      deactivated -> fixes white line on top of time pilot
    * Make ystart match stella 4 conventions
2017-02-27 00:15:03 +01:00
Stephen Anthony 5114a8e88e CX22/CX80 trakball controller has half the resolution of an
Atari/Amiga mouse, so do an extra divide by 2 for the counters.
2017-02-24 18:38:26 -03:30
Christian Speckner 38b452e1a0 Make sure that the resistance read from paddle controllers is always in the physical range. 2017-02-24 08:48:52 +01:00
Christian Speckner 41ec98c6c1 Fix small RSYNC regression. 2017-02-22 01:27:16 +01:00
Christian Speckner b173da05a0 Init S to 0xFD on reset. 2017-02-21 22:21:53 +01:00
Stephen Anthony 6846aadadf Fixed 'Maze Craze' NTSC ROMs to not use format autodetection. 2017-02-20 21:18:28 -03:30
Stephen Anthony 0d86649b47 Oops, used incorrect names in inptx serializable name() methods. 2017-02-20 21:10:24 -03:30
Stephen Anthony 8263eb1e7c Implemented Serializable for TIA inptx registers (LatchedInput
and PaddleReader).  For now, PaddleReader is stubbed out, since
it needs to save double values and Serializer can't do that yet.

Fixed bug in Ball, Background and Playfield serialization; they
were correctly saving data, but returning false (indicating failure).
2017-02-20 21:05:54 -03:30
Stephen Anthony 30e1996d5b Fixed reading of VBLANK register in debugger. 2017-02-20 20:42:33 -03:30
Stephen Anthony c99cb33cda The TIA image in the debugger is now correctly rendered in greyscale
below the current electron beam position.

Fix long-standing bug whereby entering the debugger for the first time
and tracing/scanline advancing, the TIA image was blanked, and didn't
work correctly until you exited and re-entered the debugger.

Minor refactoring optimizations, and renaming of methods.
2017-02-20 19:51:59 -03:30
Christian Speckner 39f756f821 Fix paddle input if no paddles are not connected.
Don't charge cap if resistance is maxed.
2017-02-20 00:49:54 +01:00
Christian Speckner 75bd732525 Fix artifacts due to varying frame height and doublebuffering.
Duplicate myLastFrameHeight and swap the values
2017-02-19 22:28:47 +01:00
Christian Speckner 146d0afe4f Set undefined bits on TIA read from last data bus value. 2017-02-19 15:39:54 +01:00
Christian Speckner 0efbbdec45 Debugger fixes:
* Fix scanline stepping during blank
    * Fix start of visible range
2017-02-16 22:58:24 +01:00
Stephen Anthony ad81f2b5d7 Updated OSX project file for trakball class changes. 2017-02-11 23:28:05 -03:30
Stephen Anthony af5374a586 Updated VS project file for new trakball classes. 2017-02-11 22:53:39 -03:30
Stephen Anthony d9304fa06b Forgot to re-initialize on load() in Playfield. 2017-02-11 22:37:11 -03:30
Stephen Anthony c73c606638 Implemented Serializable for Background, Ball and Playfield classes,
since it looks like they won't be heavily modified any further.
2017-02-11 22:30:58 -03:30
Stephen Anthony 52d3bd9df3 Separated the various trakball-compatible controllers into their
own class, preparing for further work on issue #70.

The 3 classes are now named more appropriately, as mentioned in
issue #70.
2017-02-11 21:07:42 -03:30
Stephen Anthony c80f72b367 Allow configure script to run with clang-5, and fixed a minor
warning when compiling with clang++-5.
2017-02-10 21:32:58 -03:30
Christian Speckner c0a3a5394d Minor RSYNC fixes. 2017-02-09 01:36:47 +01:00
Christian Speckner fd95231722 Refine NUSIZ during draw decode. 2017-02-07 23:55:29 +01:00
Christian Speckner 00bfd088d3 Refactoring, add some buffering to improve performance. 2017-02-06 22:43:35 +01:00
Christian Speckner cef5fb4da0 Avoid side effects if the divider is unchanged by a NUSIZ write. 2017-02-06 21:12:41 +01:00
Christian Speckner 1a7ac60232 Match NUSIZ during player decode or draw to real hardware. 2017-02-06 00:30:39 +01:00
Stephen Anthony 8b4096e1ef Grabmouse is not used when using a virtual controller that doesn't output
analog data (ie, not a mouse).  This fixes the issue of mouse grabbing
when a ROM isn't even using the mouse.
2017-01-28 19:45:30 -03:30
Stephen Anthony d99f83580f Updated Linux/UNIX port to use XDG_CONFIG_HOME for storing settings
file.  For most people, that means the files are now stored in
'~/.config/stella' instead of '~/.stella'.  Manually moving the directory
will be necessary if you wish to keep the old settings.
2017-01-28 19:14:11 -03:30
Stephen Anthony 94e77d3b94 Partially implemented step by scanline in the debugger; I still have
some questions for DirtyHairy before I can finish it.
2017-01-28 18:33:44 -03:30
Christian Speckner f1d503a0ef Cleanup. 2017-01-27 01:12:34 +01:00
Christian Speckner 94292bbbd1 Even more accurate RESMx. 2017-01-26 01:02:33 +01:00
Christian Speckner 990fac5895 RESMx simplification and improvements. 2017-01-25 00:11:33 +01:00
Christian Speckner 72b8f6491e More accurately model RESMx during decode or draw. 2017-01-24 22:28:31 +01:00
Stephen Anthony 5033e8bfe6 Updated OSX project file for VBlankmanager class. 2017-01-22 19:24:27 -03:30
Stephen Anthony 0c50df546b Updated VS project file for VBlankManager class. 2017-01-21 13:42:10 -03:30
Christian Speckner efc881a284 Correct slight blunder ;) 2017-01-21 16:10:57 +01:00
Christian Speckner ac14e40bff Fix an oversight. 2017-01-21 00:59:29 +01:00
Christian Speckner 6070291769 Slight improvement of the description of NUSIZ during draw. 2017-01-21 00:45:00 +01:00
Christian Speckner d521a230bd Introduce a one clock delay on ENAM. Fixes Midnight Magic. 2017-01-20 01:02:52 +01:00
Christian Speckner 6bb64d55e2 Fix naming. 2017-01-19 00:25:44 +01:00
Christian Speckner 517b0d167a Refactoring: move ystart detection logic into separate class. 2017-01-18 01:17:19 +01:00
Christian Speckner f189906813 Remove _6502TS_CORE from include guards now that we have just one core. 2017-01-18 00:15:18 +01:00
Stephen Anthony 6c73c11961 Updated OSX project to always use internal zlib library,
and changed the preferences file to 'Stella-emu.plist'.
2017-01-15 17:38:27 -03:30
Stephen Anthony ac226eb6eb Updated ROM properties for Coke Zero demos. 2017-01-15 15:05:16 -03:30
Stephen Anthony e60e3ac9d2 Create zlib defines in a cleaner cross-platform way. 2017-01-15 14:57:56 -03:30
Stephen Anthony 7ee1ccbbc9 Fixed latest zlib stuff to compile in Windows. 2017-01-15 13:54:44 -03:30
Stephen Anthony 49a11e2ce1 Updated PNG and ZLIB libraries to latest released versions.
Since Zlib 1.2.10, it seems that zlib and png need to be paired
together.  The UNIX 'configure' script has been updated to either use
system png and zlib libraries, or both as built-in libraries.  This
shouldn't affect Windows (which uses both built-in anyway), but it
does require changes to OSX (which currently doesn't build at all).
2017-01-15 13:28:41 -03:30
Stephen Anthony 6a5b8adc06 Forgot to include updated release info for tagged release. 2017-01-15 11:54:36 -03:30
Stephen Anthony 96567dfd4d A few ROM properties updates that I missed before. 2017-01-14 22:42:37 -03:30
Stephen Anthony 46d3532816 Merge branch 'master' of github.com:stella-emu/stella 2017-01-14 21:40:39 -03:30
Stephen Anthony 42122c3465 First pass to get debugger stuff working for TIA display. 2017-01-14 21:39:45 -03:30
Christian Speckner 3303f0560a Finalize and start frames right after vsync -> stabilizes algorithm. 2017-01-15 01:34:05 +01:00
Stephen Anthony c0aa5c83f5 Minor refactoring. 2017-01-14 13:18:12 -03:30
Christian Speckner b0b807407a Fix vsync locked -> floating transition. 2017-01-14 14:08:44 +01:00
Stephen Anthony bf1ff1aae0 Change YStart and Display widgets in GameInfoDialog to be sliders
instead of textboxes.  This allows to eliminate error checking,
since the widget will only allow sane values.

Added YStart/Display min/max variables to FrameManager, and
refactor for other parts of the codebase to use these variables.
2017-01-13 22:49:38 -03:30
Stephen Anthony 6c33dda9dd Updated ROM properties for a few ROMs I missed before. 2017-01-13 21:08:42 -03:30
Christian Speckner 0a8b1debfc Fix PAL autodetection:
* Be more tolerant when waiting for vsync during TV mode autodetect.
  * Count PAL and NTSC frames during autodetect, use the mode with
    more statistics.
2017-01-13 09:20:56 +01:00
Stephen Anthony 2ccb559138 Finalized update of Display.YStart in ROM properties. 2017-01-12 20:31:36 -03:30
Stephen Anthony 3cccb8bc57 Partial update of ROM properties for Display.YStart removal. 2017-01-12 14:23:32 -03:30
Christian Speckner aba48e85cf Limit the number of lines FrameManager waits for frame with large scanlines, refactoring. 2017-01-10 23:59:36 +01:00
Christian Speckner a6725f2436 Enable manual TV mode selection:
* Make mode autodetection in FrameManager conditional, disable by
      default
    * Add glue for externally setting up TV mode
    * Properly setup TIA TV mode in Console
    * Refactoring
2017-01-10 01:22:25 +01:00
Christian Speckner ef000d2ae5 Support manual height, remove vertical centering logic (no easy way to get this to work with ystart autodetect). 2017-01-10 00:12:25 +01:00
Christian Speckner bd46bb4174 Implement RSYNC. 2017-01-09 00:10:55 +01:00
Christian Speckner df1b2a99ce Fix invalid access in FrameManager. 2017-01-09 00:10:26 +01:00
Christian Speckner 7b733d6126 Start removing ystart from props where it isn't required. 2017-01-08 00:57:27 +01:00
Christian Speckner 452f083fc1 Support fixed ystart, change ystart default to 0 = autodetect. 2017-01-08 00:31:35 +01:00
Christian Speckner 602b7b9d0d Improve NUSIZ during player draw counter decode. 2017-01-06 00:52:25 +01:00
Christian Speckner 14ebb9772a Fix RESM during draw counter decode. 2017-01-05 21:07:41 +01:00
Christian Speckner eb1fe88176 Fix player decode logic reset during hblank. 2017-01-05 14:43:26 +01:00
Christian Speckner 6a2259ef2f Avoid possible issues during bogus vsync writes. 2017-01-02 00:10:06 +01:00
Christian Speckner a5f1a8624f Fix what looks like an inconsistency in the calculation of scanline count. 2017-01-01 22:34:28 +01:00
Christian Speckner a83e7eb26d Fix garbage for ROMs with varying visible frame heights:
* Keep track of max frame height
  * Blank out any missing scanlines
  * Refactoring
2017-01-01 22:28:13 +01:00
Stephen Anthony 8815a6f027 Updated all references to new stella-emu webpage. 2016-12-31 17:19:29 -03:30
Stephen Anthony abb7097cb7 Removed $Id$ stuff from codebase, since it's Subversion-specific.
Whitespace cleanup and update copyright to 2017.
2016-12-29 20:30:30 -03:30
Stephen Anthony 26f4aa91a6 Updated libpng to latest release. 2016-12-29 17:24:45 -03:30
Christian Speckner cbb3c46461 Tentatively adjust RESMPx for 32 pixel players by one pixel. 2016-12-21 22:39:51 +01:00
Christian Speckner 0d37bbe132 Movement from starfield effect does only affect objects less four pixels wide. 2016-12-21 21:54:40 +01:00
Stephen Anthony 44acd10973 Updated ROM properties:
- Star Castle Arcade (Thomas J.)
 - Meltdown and Mega Bitmap Demo (fully working for the first time)
2016-12-19 18:11:57 -03:30
Stephen Anthony a6bc247852 WSYNC should only work when the last access was a read. 2016-12-19 15:56:26 -03:30
Stephen Anthony 07287fe761 Fixed trap'm' debugger commands when setting TIA addresses. 2016-12-19 14:26:35 -03:30
Christian Speckner f66a61f3b7 Tweak immediate ball rendering after RESBL -> fixes Keystone Kappers 2016-12-19 01:05:42 +01:00
Christian Speckner 17c0007c51 Bump version to 5.0.0-pre3. 2016-12-18 23:35:45 +01:00
Christian Speckner 7d7c0f6c9e Refine and unify late RESx during hblank, comments. 2016-12-18 22:47:24 +01:00
Christian Speckner f4932b8bf5 Fix INPT5. 2016-12-18 21:58:33 +01:00
Christian Speckner b700149cde Add a 1 cycle delay to ENABL (including delayed mode) -> fixes Super Challenge Football. 2016-12-18 14:39:24 +01:00
Stephen Anthony afcaf8581f Make the compiler happy. 2016-12-17 21:21:09 -03:30
Christian Speckner 7b7f8767aa Emulate final movement counter reset -> fixes Masters of the Universe. 2016-12-18 00:48:17 +01:00
Christian Speckner 39ee43ee66 Fix wide player positioning, adjust NUSIZx during decode to better match real hardware. 2016-12-17 21:46:52 +01:00
Stephen Anthony e618a6c72c Fixed display of FPS in the TIA message window. This also fixes sound
issues, since the correct framerate is being communicated to the
emulation core.
2016-12-17 13:06:56 -03:30
Christian Speckner d77d2f2e61 Try to implement side effects of nusiz after draw dispatch -> fixes meltdown. 2016-12-17 15:17:40 +01:00
Christian Speckner 48d90768f3 Fix wide player dispatch after resp -> fixes missile command. 2016-12-16 23:40:26 +01:00
Christian Speckner a982a334a8 Fix RESMP for 8 pixel players. Fixes frostbite ice pans. 2016-12-15 01:01:20 +01:00
Christian Speckner 65008135b8 Fix CompuMate TV mode detect
* Make sure that compumate runs with the proper controllers attached
    * Make sure that CompuMate::myKeyTable is always valid
    * Whitespace fix
2016-12-14 21:02:52 +01:00
Christian Speckner e742686f90 Bump to 5.0.0-pre2 . 2016-12-14 00:40:36 +01:00
Christian Speckner b4eb78b127 Yet another adjustment to positionining during extended hblank. 2016-12-14 00:40:36 +01:00
Stephen Anthony 760d889478 Fixed crash in auto-detecting Compumate ROM.
The PAL version is still mistakenly detected as NTSC, though.
2016-12-13 20:03:12 -03:30
Christian Speckner 839ba71f20 Effectively fix the mystery positioning bug. 2016-12-14 00:03:17 +01:00
Christian Speckner 12fe183890 Simplify FrameManager state machine, smarter ystart / vblank detection. 2016-12-13 22:28:20 +01:00
Christian Speckner f0828c597d Checkpoint. 2016-12-13 22:28:20 +01:00
Stephen Anthony f982f0257f Enabled viewing TIA collision and playfield info in the debugger. 2016-12-13 12:03:54 -03:30
Stephen Anthony 7b0a82f04a Enabled some more TIA stuff in the debugger. 2016-12-13 10:57:15 -03:30
Christian Speckner b28dfaa31f Add call to resetCycles. 2016-12-12 22:51:42 +01:00
Christian Speckner a35f378d87 Improve TV mode detection logic:
* Skip the first view frames
    * Change the algorithm to be more eager to accept mode changes until the
      mode has settled for at least five frames
    * If in doubt, assign odd frames to NTSC
2016-12-12 22:25:47 +01:00
Christian Speckner b9e2fc9022 Fix VSYNC during kernel, retain conditional debug logging for later use. 2016-12-11 20:50:12 +01:00
Christian Speckner 18c31ebc2b Add a 1 clock delay to vblank. 2016-12-11 01:27:09 +01:00
Stephen Anthony 137c5b5e54 Updated Visual Studio project files for removal of old TIA core. 2016-12-10 20:40:49 -03:30
Stephen Anthony 510c103030 More of the TIA stuff in the debugger is now enabled. 2016-12-10 16:37:47 -03:30
Stephen Anthony ac7670225b Updated OSX project files for removal of old TIA core.
Re-added comments to TIA class header.
2016-12-10 14:43:46 -03:30
Stephen Anthony 4d0147f3d1 Made new TIA core the default (code now compiles). 2016-12-10 13:38:28 -03:30
Stephen Anthony 4b5a02903e Delete old TIA core (files are only moved for now). 2016-12-10 12:45:00 -03:30
Stephen Anthony f7e712386b Fixed bug with SaveKey and AtariVox not properly closing their
memory files before starting another instance of the same ROM.
2016-12-09 19:04:14 -03:30
Christian Speckner b3c0993dcc Delay REFP[01] by one clock. 2016-12-09 12:50:26 +01:00
Christian Speckner f360e7fba2 Fix iniital player width --- fixes Yar's revenge. 2016-12-09 08:27:31 +01:00
Christian Speckner 400b333386 Effective discription of starfield width modulation for missiles and ball. 2016-12-09 00:47:52 +01:00
Christian Speckner a9d1ed3741 Fix undeflow in RESMP. 2016-12-08 22:20:51 +01:00
Christian Speckner 38d8d893aa Fix RESMP for 16 and 32 pixel players. 2016-12-08 21:17:56 +01:00
Christian Speckner afae00a654 Fix analog I/O:
* Premature optimization killed the cat --- approximated exponentioal does
      not converge fast enough, replace with real thing
    * Make sure that the readout circuit is updated before read
2016-12-08 00:37:12 +01:00
Christian Speckner 3287cd06fc Bump version to 5.0.0-pre1 . 2016-12-07 21:48:09 +01:00
Stephen Anthony 072015c82a Removed toggling of displaying HMOVE blanks. With the old core, what
it drew in that area was sometimes garbage, and with the new core it
draws nothing at all (which is the correct behaviour).  Hence the
feature is obsolete.
2016-12-06 16:36:04 -03:30
Stephen Anthony 12bdff67b6 Missing newline at end of file (compilers complain about this). 2016-12-05 19:35:02 -03:30
Stephen Anthony 6d33db8646 Writes to TIA GFX registers are now seen in the ROM disassembly. 2016-12-05 16:55:31 -03:30
Christian Speckner 61155ace46 First stab at getting retriggering delays correct. 2016-12-05 20:32:47 +01:00
Stephen Anthony 4025b00ce0 Updated OSX project files for 6502ts TIA classes. 2016-12-05 14:23:22 -03:30
Stephen Anthony 1f54f3e263 Updated Visual Studio project file for new 6502ts TIA core classes. 2016-12-04 18:45:33 -03:30
Stephen Anthony b9630f5e2a Re-enable compilation with DEBUGGER_SUPPORT. The TIA stuff in the
debugger is currently broken, but at least the code compiles (needed
for the Windows and OSX test releases, as they aren't set up to be
compiled without the debugger.
2016-12-04 16:05:21 -03:30
Stephen Anthony 0de35eab7e For some reason, the top comment header is missing in some files. 2016-12-04 14:50:36 -03:30
Stephen Anthony c526d260a0 Re-enable fixed debug colors. 2016-12-04 14:48:17 -03:30
Stephen Anthony 9ca6f89778 When the new TIA core is enabled in a build, set it to the default when no
defaults have been specified.  The reason being, testers will be running old
and new versions of Stella, and with the previous settings, they would have
to continually reset 'tia.core' every time they run a new build.  Besides,
the point is for the new core to be the default, so we may as well enforce that
in the code.
2016-12-02 10:43:46 -03:30
Stephen Anthony 7bfaf10e80 Turning off HMOVE display doesn't work in the new TIA core, and really was
only a hack in the old core.  We will eventually remove this.
2016-12-02 10:22:59 -03:30
Stephen Anthony 3bb21cdbf3 Restored TIA::height functionality, otherwise the window won't be properly sized. 2016-12-02 10:16:49 -03:30
Stephen Anthony b34514e7f4 Implemented TIA::scanlines(), which now shows the proper scanline count in
the info window in the upper-left of the screen.  Still TODO is tie it to the
framerate, so that when the scanline count changes, it also auto-calculates
the framerate.

Some formatting cleanups in various classes.
2016-12-02 10:07:25 -03:30
Christian Speckner a8a4545222 Typo, more concise variable names. 2016-12-02 09:30:40 +01:00
Christian Speckner a717890c29 Microoptimization: pre-invert collision bitmasks. 2016-12-02 09:05:35 +01:00
Christian Speckner a1eb8fd9ab Add toggle logic to all sprites. 2016-12-02 08:58:19 +01:00
Christian Speckner 920787aa9f Sprite toggeling for missiles. 2016-12-02 01:11:54 +01:00
Christian Speckner 042dc72e66 Paddles / analog input. 2016-11-28 12:54:46 +01:00
Christian Speckner 3e4b975489 Add missing file. 2016-11-26 21:08:23 +01:00
Christian Speckner d66a58557b Always trigger draw during resbl, even during hblank. 2016-11-26 21:05:03 +01:00
Christian Speckner 34810ab25e Fix uninitialized value. 2016-11-26 15:36:43 +01:00
Christian Speckner 4fd2c71510 Merge remote-tracking branch 'remotes/upstream/git-svn' 2016-11-26 14:48:40 +01:00
Christian Speckner 92ec526d68 Simplify priority logic in score mode. 2016-11-26 13:37:19 +01:00
Stephen Anthony 1924013daf Fixed write to CTRLPF with score mode enabled and playfield priority disabled;
the priority as well as the colours change from left/right screen.

Made getPixel method from each of the TIA objects inline, since they're called
so often.
2016-11-25 22:02:00 -03:30
Christian Speckner 7fad9b7cfa Fix fractiona counter initial value. 2016-11-26 00:18:18 +01:00
Christian Speckner 2bd5074828 Add latched input. 2016-11-26 00:08:32 +01:00
Christian Speckner e786b3307e Add resmp. 2016-11-25 23:23:04 +01:00
Stephen Anthony 6818da1566 Added savestate 'plumbing', for when the new TIA classes are finalized.
Bumped lowest version of state file format to 4.8, to make sure old
state files will not be loaded.
2016-11-25 14:58:07 -03:30
Christian Speckner eebf8c046f Collisions, basic input (no lateched input, no paddles). 2016-11-25 01:31:57 +01:00
Christian Speckner d2c9813da1 Fix timing to properly account for "fractional" system clocks -> bang! runs glitch free. 2016-11-23 23:59:32 +01:00
Christian Speckner cac9bf76c7 Delay queue fixes --- should be academic. 2016-11-23 23:55:10 +01:00
Christian Speckner d02c985a91 Add ball. 2016-11-22 23:22:16 +01:00
Christian Speckner 95c1d2b08c CS. 2016-11-22 21:56:50 +01:00
Christian Speckner 3a4827e0b8 Add a missing line cache invalidation -> fixes bang! plasma field. 2016-11-22 21:56:12 +01:00
Stephen Anthony ec2ee2c570 Added some 'Stella-isms' to the new TIA core code, like brace placement,
comment lines above each method, deleting new/d'tors whenever possible, etc.

Rename Missile.cpp to Missile.cxx.
2016-11-22 15:44:20 -03:30
stephena e43e56f8ab Updated version for 4.7.3 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3320 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-11-21 19:21:25 +00:00
Christian Speckner 14b701ef72 Fix accidential fallthrough in switch -> fixes funky space invaders. 2016-11-20 23:39:47 +01:00
Christian Speckner d9f91caab3 Don't reset autodetected TV mode on reset -> fixes TV mode autodetection. 2016-11-20 22:22:07 +01:00
stephena 81844dbf7f Preparing for 4.7.3 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3319 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-11-20 21:13:42 +00:00
Christian Speckner ac4520917e Add players. 2016-11-20 22:07:10 +01:00
Christian Speckner 87b24a5bba Coding style, hmmClocks can be 8bit. 2016-11-18 00:08:12 +01:00
Christian Speckner 594c460bc7 CS. 2016-11-17 23:25:13 +01:00
Christian Speckner 666028b66d TODO. 2016-11-17 23:24:38 +01:00
Christian Speckner baecc4e3a1 Fix timing glitch, port missiles. 2016-11-17 23:24:12 +01:00
Christian Speckner c8dc5e2db9 Fix delay queue, add delay to pfx writes. 2016-11-16 23:19:54 +01:00
Christian Speckner cdafe8d0a4 Playfield. 2016-11-16 01:18:44 +01:00
Christian Speckner 2d76b7fb98 Hook up audio. 2016-11-15 21:24:20 +01:00
Christian Speckner 6d76d65d82 Add wsync, vsync and vblank, fix bugs and connect the dots -> main loop + tv mode detection work. 2016-11-15 21:16:36 +01:00
Christian Speckner 70dc29f077 Port main loop. 2016-11-15 19:26:23 +01:00
Christian Speckner b6a2e266aa CS. 2016-11-13 22:56:58 +01:00
Christian Speckner ea6abb0fe6 Implement delay queue. 2016-11-13 22:56:02 +01:00
Christian Speckner b874269065 Replace executor class with a template --- we've got closures, after all :) 2016-11-13 00:10:40 +01:00
Christian Speckner 208f630a3c Implement delay queue (untested). 2016-11-08 23:54:22 +01:00
Christian Speckner a99a4e1efd Stub implementation of new core. 2016-11-08 01:26:57 +01:00
Christian Speckner ffccc351f6 Allow to switch between TIA implementations via command line / config. 2016-10-31 00:12:52 +01:00
Christian Speckner 2075ff082a Prepare build system for new core. 2016-10-30 21:00:08 +01:00
Christian Speckner c642de2671 Remove unnecessary dependencies on TIA, namespace default core, remove friends. 2016-10-30 20:29:41 +01:00
Christian Speckner 83417e976f Isolate TIA implementation in sub-module, remove all direct references in favor of AbstractTIA. 2016-10-30 00:31:55 +02:00
Christian Speckner 9a85bf5405 Fixes, refactor TIA to extend AbstractTIA . 2016-10-26 15:25:48 +02:00
Christian Speckner cdfac18f1c Fix build w/o debugger. 2016-10-26 14:59:52 +02:00
Christian Speckner 74a840f341 First stab at abstracting the TIA interface. 2016-10-11 00:23:40 +02:00
Christian Speckner 7d072fc874 Move TIA specific enums into separate header. 2016-10-11 00:23:09 +02:00
stephena 2832fbeccb Added versions of the debugger trap commands that trap on all mirrors,
not just the specified address.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3317 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-09-04 23:03:01 +00:00
stephena 883971985e Removed some redundant includes in various Cart classes.
Introduced Cartridge::initializeRAM() method, to eliminate duplicate
blocks of code in every bankswitch scheme that uses extra RAM.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3316 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-08-24 23:57:07 +00:00
stephena b0960a5fd2 Fixed what must have been a long-standing bug; typing the 'reset' command
in the debugger wasn't actually resetting the bankswitching, since it was
being locked.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3314 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-08-22 16:53:09 +00:00
stephena 07798111cb Updated OSX project file for 3E+ bankswitching scheme.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3313 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-08-21 22:16:05 +00:00
stephena 893fcfd96a Added 3E+ bankswitching scheme to VS 2015 project files.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3312 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-08-21 21:58:10 +00:00
stephena 087d382280 Added 3E+ bankswitching scheme by Thomas Jentzsch.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3311 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-08-21 21:37:06 +00:00
stephena 1ecfee71e7 Reverted new TIA sound code until it is more mature. There are other
improvements in the pipeline waiting to be done, and are being delayed
by the sound stuff.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3310 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-08-18 18:44:57 +00:00
stephena 40cfd6a475 Cleaned up usage of 'using namespace ...'. I'm currently teaching that using
that approach is a bad idea (and using Stella as example code), so it doesn't
make sense to not do something as it's being taught; the correct way.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3308 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-05-24 16:55:45 +00:00
stephena 9d1c2085e6 Forgot to fix up TIA register writes in a few locations, so it was possible
that the register held values up to 255 (when it should only contain 0-159).
Thanks to Omegamatrix for the report and fix.

On another note, I hope to get back to Stella development soon; it's been a
rough time since the last release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3307 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-05-13 16:23:53 +00:00
stephena 81e9480100 OK, this is the first pass at adding the new TIA sound emulation
core to Stella, as outlined in a thread on AtariAge.  It's currently
not working 100% due to timing issues with the TIA class.

Expect breakage over the next few months, as this code and the TIA
code in general will be borked from time to time.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3306 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-04-03 17:15:19 +00:00
stephena c0095ca59a Last commit for bspf.hxx; cleaned up the formatting.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3305 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-04-03 01:22:13 +00:00
stephena 8dbd545433 After thinking about it a little, I wondered why we even need to wrap several
std:: functions into BSPF namespace at all.  So I removed them, and have the
calls map directly to the std:: versions.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3304 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-04-03 00:35:00 +00:00
stephena 91e3afb3bb Updated bspf.hxx for Windows build.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3303 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-04-03 00:24:24 +00:00
stephena eb56efc3d5 Convert BSPF C-style macros to C++ namespace equivalent.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3302 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-04-02 23:47:46 +00:00
stephena f431e3e3a5 A few more constexpr additions, and removal of redundant comments.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3301 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-04-02 22:52:29 +00:00
stephena abf4a4a44c I was a little too eager with the 'constexpr'; it currently doesn't work on
enum types.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3300 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-04-02 21:27:10 +00:00
stephena dd96a80e7e Updated build requirement for Windows to Visual Studio 2015. This allowa to use 'constexpr', which this patch does for a few classes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3299 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-04-02 20:46:02 +00:00
stephena 7903c52406 Documentation updates for 4.7.2 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3297 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-03-25 20:51:28 +00:00
stephena 3a5cdb2d5c Moved 'swallow backtick ket in debugger' logic out of PromptWidget and
into the parent dialog box (ie, the entire debugger window), since we
don't want to allow backtick to appear anywhere in the debugger, not
just the prompt.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3295 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-03-07 15:36:09 +00:00
stephena f3fce85633 Re-added CTY scheme to the list of selectable bankswitch schemes,
and fixed some minor warnings generated from GCC 6.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3294 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-03-05 18:35:25 +00:00
stephena dae8205029 Cleaned up a few more warnings.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3292 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-27 22:18:30 +00:00
stephena 983c6361f2 Updated thumbulator code from latest in repo.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3290 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-27 19:58:20 +00:00
stephena b43267f0dc Oops, forgot to remove some debugging code that fails in Visual Studio.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3288 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-24 21:30:13 +00:00
stephena 24051e4ddf (Hopefully) fixed bug when entering/exiting the debugger, whereby the
"`" key (or equivalent) was being shown in the prompt widget.

Added method stubs for clipboard cut/copy/paste/select.  Actually
implementing them will come next.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3287 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-24 20:49:49 +00:00
stephena 1e56f18b7e Fixed annoying warning about left-shifting negative values.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3285 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-18 00:38:21 +00:00
stephena ced55a8977 Fixed minor warning in OSX build due to signed SDL2 libs.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3281 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-13 18:14:56 +00:00
stephena ee0369255a Added E.T. hack by 'recompile' to the ROM properties database.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3280 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-13 17:46:19 +00:00
stephena 1b223368e6 Updated UI to be able to change TV jitter effect and recovery time.
Updated various files for 4.7.1 release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3279 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-13 01:21:28 +00:00
stephena c5e9d3618b Updated docs for evdev-joystick.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3278 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-12 22:03:49 +00:00
stephena 7e1e3f0b31 Changed description of tv.jitter to not mention scanlines.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3277 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-12 14:28:30 +00:00
stephena 79cfdb294c TV jitter recovery time can now be set through a commandline argument
(tv.jitter_recovery).  Next, this will be added to the UI.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3276 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-12 14:23:40 +00:00
stephena 6a91da283f Added 'evdev-joystick', a tool to modify the deadzone on 'evdev' joystick
devices under Linux.  This is needed since SDL2 doesn't currently allow
to change the deadzone, which is causing problems with the various
'daptor devices, particularly with paddles.

Removed redundant patch for SDL2 in Windows to not 'beep' when an
'Alt' key is pressed; this functionality is now upstream in SDL 2.0.4.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3275 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-11 17:43:51 +00:00
stephena a35c66e806 Fixed bug occurring when more than 2 controllers had the same name; information
was being saved about only two of them.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3273 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-06 21:06:23 +00:00
stephena 3b2f534bf7 Added 'jitter recovery' emulation from SpiceWare, in which large
scanline count differences can take multiple frames to recover.
Currently the code uses a hard-coded delay; next I'll make it a
variable, changable within the UI (and on the commandline).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3272 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-02-01 23:43:00 +00:00
stephena 65bb073968 Got rid of another d'tor. In this case, it was redundant anyway,
since when a vector is deleted it automatically calls clear on itself.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3271 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-31 03:57:08 +00:00
stephena 6dd12ef088 Got rid of nasty c-strings and with it the EventHandler d'tor.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3270 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-31 03:42:23 +00:00
stephena 0d4e8d60f0 Increased 'Medieval Mayhem' paddle range so that # of players can
actually be selected.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3269 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-30 01:59:40 +00:00
stephena 14471590cf 'Racer Prototype' F8 ROM from RomHunter v/11 has a bug, in that it
crashes if started in bank 1 (the default for Stella).  So we special-case
this ROM, and have it start in bank 0.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3268 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-30 00:57:04 +00:00
stephena bcda343aee And so it begins again ...
Updated properties database to RomHunter v11.  I would have done this in the
last release, but nobody told me that v11 had been released.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3267 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-29 19:36:12 +00:00
stephena 5cf32f4b95 Of course, there's a problem with perfectly valid C++ code in Visual Studio
at the last minute ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3264 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-25 21:16:04 +00:00
stephena 86c7b229f0 Final commit for 4.7 release, updating docs and some minor last-minute
code cleanup.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3263 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-25 20:49:21 +00:00
stephena 647aeb62b0 Fixed TIA score mode bug, as reported on AtariAge.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3261 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-25 17:28:49 +00:00
stephena 211454f699 Fixed minor warning detected in Visual Studio.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3260 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-24 22:09:35 +00:00
stephena dbd56ca03d Converted raw pointers to unique_ptr in PNGLibrary class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3259 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-24 17:42:44 +00:00
stephena 755611a5c1 In my quest to remove all d'tors, converted many more raw pointers to
unique_ptr.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3258 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-23 22:56:16 +00:00
stephena 5e1e8e7abf Updated Xcode project file for 'CV+' bankswitch scheme addition.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3257 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-23 21:36:38 +00:00
stephena a00425bb78 Update VS project file for CV+ scheme.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3256 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-23 18:27:34 +00:00
stephena e1e071c875 Oops, forgot to remove some debugging info from CV+ scheme.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3255 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-23 18:17:23 +00:00
stephena ed766b5bb2 Cleanup some whitespace issues.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3254 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-23 18:16:09 +00:00
stephena 143b22baec Added 'CV+' bankswitching scheme.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3253 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-23 17:58:00 +00:00
stephena b7cb83bffa Updated ROM properties for paddle games to properly use the MouseAxis
property for range information.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3251 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-22 22:10:55 +00:00
stephena b9d71634a7 Added ability to specify MouseAxis range from the UI, and send it to
the Paddles class to be actually used.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3250 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-18 18:33:45 +00:00
stephena a85debea63 Fixed bug in ROM launcher; hasConsole() would be true even when the console
is closed (since it's not deleted until the next console is created).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3249 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-18 16:03:22 +00:00
stephena e0676f2432 The properties database is now smarter, and automatically discards entries
if they are already present in the built-in data.  This eliminates a 'bug'
where entries were being saved to the external properties file that were
also present in the app itself.  The app still worked, but it bloated the
external file for no reason.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@3248 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2016-01-16 00:13:52 +00:00