Commit Graph

2066 Commits

Author SHA1 Message Date
Stephen Anthony 1223958d91 Move all logging facilities from OSystem directly into the Logger class. 2019-12-22 17:36:06 -03:30
Thomas Jentzsch 60c9839541 add "Mickey" to properties 2019-12-22 18:39:07 +01:00
Stephen Anthony 6ec46b9836 Fix more fallout from code refactoring. 2019-12-22 10:18:03 -03:30
Stephen Anthony 67273e9df8 Eliminate superfluous 'setDirty' call. 2019-12-21 22:41:01 -03:30
Stephen Anthony fdee5ba642 Some cleanups suggested by clang-tidy. 2019-12-21 22:38:01 -03:30
Stephen Anthony 06094820b6 Remove redundant comment. 2019-12-21 19:29:30 -03:30
thrust26 b1b9e493f4 removed ARM RAM dump code again, redundant 2019-12-21 15:17:32 +01:00
thrust26 c65b9c6709 fix MessageBox height calculation
add first 0.5K RAM to ARM fatal error message
2019-12-21 11:59:07 +01:00
thrust26 99ec454fd4 add missing register 0 to ARM dump 2019-12-21 08:20:19 +01:00
Stephen Anthony 68a2ca3a24 Removed all reference to 'ystart' from built-in properties database.
Note that the info is still in 'stella.pro', until we finalize what the values should be.
Then we will update the built-in properties again.
2019-12-19 18:42:23 -03:30
thrust26 1b14ed21a9 correct silencing fix 2019-12-19 19:54:09 +01:00
Christian Speckner ef10482291 Don't try to access the palette before it has been initialized. 2019-12-19 18:39:39 +01:00
thrust26 fccee3e672 silence compiler 2019-12-19 18:34:21 +01:00
thrust26 2df61b542b Merge branch 'master' of https://github.com/stella-emu/stella 2019-12-19 18:13:50 +01:00
thrust26 b306f35d54 updated Super Soccer 2019-12-19 18:13:24 +01:00
Christian Speckner c324f1ce82 Safety belt. 2019-12-19 18:12:20 +01:00
Christian Speckner ec35026329 Ystart is sleeping with the fishes. 2019-12-19 18:01:54 +01:00
thrust26 356f06598d add hotkey for toggling interpolation (ctrl+i) 2019-12-18 20:38:52 +01:00
Stephen Anthony 8782a39ce7 Fix minor warning from clang. 2019-12-18 15:56:39 -03:30
thrust26 8a93e70cc9 reverted video dialog and settings changes 2019-12-18 19:55:58 +01:00
thrust26 7ae5b49633 small improvement on FC bankswitching 2019-12-18 19:12:04 +01:00
Christian Speckner d0054b831d Precisely align scanlines with TIA scanlines. 2019-12-17 22:51:08 +01:00
Christian Speckner c38febc2c1 Update scaling in video dialog instead of framebuffer. 2019-12-17 17:16:37 +01:00
Christian Speckner 032f0b0b7c Re-add filter setting to PNG metadata. 2019-12-17 17:16:37 +01:00
Christian Speckner 5977c8561a Connect tia.filter. 2019-12-17 17:16:37 +01:00
Stephen Anthony fd136e0d49 First pass at converting part of 'ystart' to 'vcenter'.
The logic here is somewhat convoluted.  I suggest renaming 'ystart' to 'startline',
and having it internal to TIA only.  The 'vcenter' option will then modify that value
from certain default constants (for NTSC and PAL).
2019-12-16 23:26:57 -03:30
thrust26 c2fc39f44d Reimplement y-start as "V-Center" in dialog and messages
Limit v-center range to +/-15 pixel
2019-12-16 12:41:39 +01:00
thrust26 980f5b92fa Fixed my merge chaos (sorry) 2019-12-16 09:47:56 +01:00
thrust26 8d321de90d reimplemented ystart (TODO: GameInfoDialog) 2019-12-16 09:03:42 +01:00
thrust26 ebbfc258a6 improved logging and display of auto detected controllers and bankswitching types 2019-12-15 17:19:08 +01:00
Stephen Anthony b6122f136f More fixes for issues reported by cppcheck. 2019-12-15 12:32:49 -03:30
thrust26 9aa027f4fd prepare VideoDialog for new filter mode 2019-12-14 21:48:23 +01:00
Stephen Anthony 112ed29e94 Properly handle 'Cart.StartBank' set to 'AUTO' in the ROM properties. 2019-12-13 20:21:20 -03:30
Stephen Anthony 666b13593c Revert what I thought was a minor change in properties handling.
I need to go over this a little more, since it's causing ROMs to crash.
2019-12-13 20:11:14 -03:30
Stephen Anthony d129ffc12a Use make_unique/make_shared to eliminate raw pointers. 2019-12-13 19:24:36 -03:30
Christian Speckner c4d1473f81 Get rid of smoothing in favor of scaling settings. 2019-12-13 22:46:31 +01:00
Christian Speckner a966295e9b Cleanup. 2019-12-10 23:23:46 +01:00
Christian Speckner 1c798bd567 Factor out rendering / texture juggling from surface handling. Defuct. 2019-12-10 23:23:46 +01:00
Christian Speckner 1ac4f8e362 Comments. 2019-12-08 21:02:29 +01:00
Christian Speckner 15154eafaf Work around what looks like a bug in XCode 11.2 in -O0 and -O1. 2019-12-08 21:01:08 +01:00
Stephen Anthony ff7ac2de65 Added 'Mean Santa' ROM properties to the database. 2019-12-07 20:18:05 -03:30
Stephen Anthony 8a0491f3d3 Fix coverity complaining about unrestricted use of getenv. 2019-11-29 18:06:43 -03:30
thrust26 7cc49b4ff1 updated event mapping screenshots and text
made green debug color for missile 1 a bit brighter (NTSC+PAL)
2019-11-24 08:44:24 +01:00
Stephen Anthony 025eeba38c Convert some raw arrays to std::array.
Some fixes for warnings from Coverity.
2019-11-14 20:12:45 -03:30
thrust26 8fb8c6a451 improve FC detection and bank switching 2019-11-02 19:23:38 +01:00
Stephen Anthony e0f7051e5c Fix issues with VS project, minor warning from clang, and autoformat
code.
2019-11-02 11:03:15 -02:30
thrust26 12fffa1690 add missing files 2019-11-02 13:23:23 +01:00
thrust26 ed42374644 adds FC bankswitching for Amiga's Power Play Arcade cart #1 2019-11-02 12:23:03 +01:00
Stephen Anthony 6f1b0b0783 Fix segfault on shutdown in certain cases (mostly if OSystem creation failed). 2019-10-29 12:13:51 -02:30
thrust26 0dbd505b9b updated WD bankswitching (incl. detection) 2019-10-16 22:05:33 +02:00
Stephen Anthony eb2fdd71ba Updated properties database for imminent release of a highly anticipated prototype. 2019-10-11 12:30:06 -02:30
Stephen Anthony 4cd530e048 Fix typo. 2019-10-07 18:24:03 -02:30
Stephen Anthony 9593de911a Potentially fix compile errors for a few libretro ports.
I can't test this, so I don't know for sure if it fixes anything.
2019-09-27 22:58:07 -02:30
Stephen Anthony 91148d299a Eliminate conversion to pointer when it's not necessary. 2019-09-27 22:50:24 -02:30
Stephen Anthony 700fbd9c91 Some more std::array and size_t updates. 2019-09-18 10:27:32 -02:30
Thomas Jentzsch b00a438608 replace some odd decimal numbers with hexadecimals 2019-09-17 09:38:47 +02:00
Stephen Anthony 0f0c86de41 Fixed remaining size_t vs. uInt32 issues in Windows. 2019-09-16 21:36:30 -02:30
Stephen Anthony 218969eb59 Changed uInt32 to size_t where necessary.
Finally decided to stop fighting C++, and just use size_t everywhere an
array is used.
Even though this is a 64-bit value, it seems that C++/STL expects it
when dealing with arrays, so I guess we will too.
2019-09-16 21:29:08 -02:30
Stephen Anthony 354d5aa35a Fixed gcc warnings wrt getBank virtual methods.
Converted many C-style arrays to C++ std::array.  In the process, cleaned up a lot of magic constants.

Replaced most C-style memset/memcpy operations with C++ equivalents: std::fill/std::copy.
std::copy in particular fixes a few potential bugs, since it operates on the datatype size,
and not just on raw bytes.
2019-09-16 19:46:15 -02:30
Stephen Anthony a1fa3a57ba Fixed minor warnings from clang. 2019-09-15 19:24:28 -02:30
thrust26 9a44366f85 add option to break on RAM writes to read ports 2019-09-15 17:04:25 +02:00
thrust26 4b0f255b8d more types for partial fix for issue #537 (RAM writes to read port) 2019-09-15 11:52:43 +02:00
thrust26 15426a31e0 fix for RAM writes to read port commit (offsets reversed) 2019-09-15 11:36:46 +02:00
Thomas Jentzsch f0ddb8caa8 partial fix for issue #537 (RAM writes to read port) 2019-09-12 11:08:26 +02:00
thrust26 279e54378d some fixes for last commit 2019-09-07 14:36:13 +02:00
thrust26 d7c4b1a7b9 Add considering addresses for current bank. This is important for types where the 4K ROM address space is segmented into smaller slices, so there can be more than one bank at a time.
This addresses #536.
2019-09-07 14:29:33 +02:00
Thomas Jentzsch 0048beaa89 add a quick fix for #532
fix comment for FE detection
2019-08-31 10:21:30 +02:00
Stephen Anthony 5f660383e5 Removed 'cfgdir', and have Distella config files placed with the ROM file they refer to.
Updated docs for removal of statedir, propsfile, etc.
Added 'basedir' and 'baseinappdir' to the docs.
Updated changelog for above changes.
2019-08-30 23:32:57 -02:30
Stephen Anthony 2215b2dee6 Add file/dir locations to logging. 2019-08-30 22:34:11 -02:30
Thomas Jentzsch 5042c4635f Merge branch 'master' of https://github.com/stella-emu/stella 2019-08-24 12:00:04 +02:00
Thomas Jentzsch f4a0c38e59 reworked breakpoints to use hash map (and % $1fff addresses) 2019-08-24 11:59:31 +02:00
Stephen Anthony 2540d0d803 Entering an uppercase char (ie, hold Shift) on the first character in
file listings now selects among directories; use lowercase to select among
files (fixes #160).

Refactored relevant code from ListWidget to FileListWidget, where it more
properly belongs.

Updates to docs (new info, typo's, etc).
2019-08-23 22:08:06 -02:30
Christian Speckner 09bd0f817e Take power-on state into account during autodetection. 2019-08-20 23:44:30 +02:00
Christian Speckner d105a833b6 Revert "pretty hacked and ugly fix for #501"
This reverts commit 0215cda991.
2019-08-20 23:44:19 +02:00
Thomas Jentzsch 9aecdf3873 improve breakpoint calculation, only consider low 13 bit for PC 2019-08-20 15:33:41 +02:00
Thomas Jentzsch c3f379b45d make breakpoints consider banks (fixes #512) 2019-08-19 22:12:49 +02:00
Thomas Jentzsch 0215cda991 pretty hacked and ugly fix for #501 2019-08-19 09:33:21 +02:00
Thomas Jentzsch 17f5180682 prevent simultaneous mapping of analog and digital events on the same axis (until we find a way to how to detect analog or digital input)
remove joystick events from Paddles, these can now be mapped separately
2019-08-18 22:09:48 +02:00
Thomas Jentzsch feb4a07bb2 minor updates to props 2019-08-18 21:00:13 +02:00
Thomas Jentzsch 18786cf997 updates some props 2019-08-18 20:33:26 +02:00
Thomas Jentzsch 14ad7d95cf remove unused ConsoleOn/Off events 2019-08-18 18:19:16 +02:00
Thomas Jentzsch 3498004616 update props info (part 2) 2019-08-18 12:31:03 +02:00
Thomas Jentzsch b19ac8ee24 update props info 2019-08-18 11:01:36 +02:00
Thomas Jentzsch ecbc04f287 add minor mapping code enhancements 2019-08-18 09:59:16 +02:00
Stephen Anthony ad9b0e6e75 All functionality now restored to FileListWidget (pattern matching, ROMs only, etc).
This now uses a lambda function, which is more versatile.  Eventually we may even add regular expressions.
2019-08-17 21:13:15 -02:30
Thomas Jentzsch 019f4ae247 Implement event filter in InputDialog (resolves #517) 2019-08-17 15:42:39 +02:00
Thomas Jentzsch 82c6b5544d change hat mapping display 2019-08-17 06:44:17 +02:00
Thomas Jentzsch 364137d20d minor fixes for KidVid, one can start the games with 8, 9, 0 now if right controller is KidVid 2019-08-16 20:53:18 +02:00
Thomas Jentzsch 48836e849e replace magic controller strings with enums
automatic detected controller update in GameInfoDialog & StellaSettingsDialog
2019-08-16 11:05:55 +02:00
Thomas Jentzsch d531d8e686 minor refactoring 2019-08-16 06:54:17 +02:00
Thomas Jentzsch af84fbccc5 allow changing controllers during emulation 2019-08-15 20:17:57 +02:00
Stephen Anthony 22b4f36bbc Remove redundant variable. 2019-08-15 07:59:54 -02:30
Thomas Jentzsch 9f51b8caa0 rename some variables 2019-08-15 12:20:10 +02:00
Thomas Jentzsch b47234f776 convert int into JoyAxis/JoyDir 2019-08-15 11:53:15 +02:00
Thomas Jentzsch 80a5c5c6bf first pass on converting int into JoyAxis/JoyDir 2019-08-15 10:58:11 +02:00
Thomas Jentzsch 55d3c9106f made EventMode an enum class 2019-08-15 10:12:37 +02:00
Thomas Jentzsch b21a821ccc fix (partially) #494 (ToDo: Stelladaptor) 2019-08-15 09:32:01 +02:00
Stephen Anthony 359244c66d Fix opening ZIP files that don't contain any ROMs. 2019-08-14 15:05:21 -02:30
Thomas Jentzsch 950068ba60 fix #513
support using ESC to exit debugger
2019-08-14 14:52:28 +02:00
Thomas Jentzsch 05cecb95b9 refactored logging and removed magic numbers 2019-08-14 12:01:15 +02:00
Thomas Jentzsch a36e01ac71 remove some debugging output
refactored controller mapping loading
2019-08-14 09:47:34 +02:00
Stephen Anthony f7c70e46f5 libretro: fix minor compile warning. 2019-08-13 16:58:17 -02:30
Stephen Anthony a04a310944 Fixed minor compile warning. 2019-08-13 16:54:38 -02:30
Thomas Jentzsch c68e8f1c30 fix #393 by using one-shot breakpoints 2019-08-13 17:27:23 +02:00
Thomas Jentzsch c769d22b54 allow RomInfoWidget text to fill multiple lines 2019-08-13 14:38:40 +02:00
Thomas Jentzsch e236b0ce95 rename paddle events
update input mapping doc
remove abbreviation from InputDialog tab
2019-08-12 11:09:00 +02:00
Thomas Jentzsch 28c3d126be make startup bank available in GameInfoDialog
add bankswitching type detection in GameInfoDialog when started from launcher
2019-08-12 09:22:36 +02:00
Thomas Jentzsch 0b2ca6572a fix #511 2019-08-10 18:08:53 +02:00
Thomas Jentzsch 30f0b03e82 Merge branch 'master' of https://github.com/stella-emu/stella 2019-08-10 17:46:16 +02:00
Thomas Jentzsch 1ecf55ffc0 make controller repeats configurable in UIDialog 2019-08-10 17:45:50 +02:00
Stephen Anthony bab08b2660 Fix minor clang warnings. 2019-08-10 09:48:57 -02:30
Stephen Anthony a7c138c13d libretro: fix compile errors. 2019-08-07 14:54:11 -02:30
Thomas Jentzsch 7cd45ec32a add multi line string drawing (used in Input Dialog) 2019-08-07 15:17:19 +02:00
Stephen Anthony 0ab31bcec4 Fix minor compile warnings in clang. 2019-08-05 09:27:38 -02:30
Thomas Jentzsch 36cc239066 Merge remote-tracking branch 'remotes/origin/feature/controller-mapping' 2019-08-05 10:01:43 +02:00
Thomas Jentzsch 9f59b99525 enhanced keyboard detection for "Laser Keyboard" game 2019-08-04 12:25:33 +02:00
Thomas Jentzsch db7def887d implement swapped hotspot option for UA (for Mickey) 2019-07-28 11:11:27 +02:00
Thomas Jentzsch bd39c0836f adapted UA bankswitching to new Brazilian carts (except Mickey) 2019-07-28 09:58:38 +02:00
Thomas Jentzsch 61d9f26bc6 implement variable DPC pitch 2019-07-25 11:09:02 +02:00
Stephen Anthony 898f00dff0 Going upwards in file list now selects each previous directory.
Still TODO is determine if it's worth the effort to do the same when descending directories.

Finally getting back to development again.
2019-07-19 13:52:57 -02:30
thrust26 b5ae1284ca fix several bugs 2019-06-30 11:43:36 +02:00
thrust26 ee47db85c1 remove SA specific events 2019-06-29 14:48:54 +02:00
thrust26 4334d00d6d refactor into mapping into single class
add paddle mappings
2019-06-23 20:22:10 +02:00
Stephen Anthony e8ed2fa1dd Fix file selector with certain ZIP files not containing any ROMs. 2019-06-23 14:43:09 -02:30
Stephen Anthony bcca945951 More reworking of the file selection mechanism.
- removed GameList, and integrated functionality directly into 'FSList' (which was mostly doing the same thing)
- have FSNode::getChildren() relabel directories, instead of Browser and Launcher dialogs
- MD5 calculations in ROM launcher are now cached, instead of being recalculated each time a directory is left and re-entered

Windows and macOS likely broken for a moment; this will be fixed next.
2019-06-22 21:09:42 -02:30
thrust26 b2f285d723 fix button modifier mappings
Stelladaptor specific code removeDialog
code cleanup
2019-06-22 16:54:21 +02:00
thrust26 bb7bebb79f allow button as modifier for direction and hat
load/save controller mappings
2019-06-22 10:37:42 +02:00
thrust26 8210a25f40 implement rudimentary mapping 2019-06-21 21:11:52 +02:00
thrust26 7176d291b3 initial changes 2019-06-20 14:13:59 +02:00
thrust26 d7e9c95fb0 eliminating some magic numbers in joystick handlers 2019-06-19 21:58:39 +02:00
Stephen Anthony 4ae491dd6c Refactoring: remove obsolete 'myEvent' from PKeyboardHandler. 2019-06-16 17:47:52 -02:30
thrust26 168833e000 remove superfluous includes 2019-06-16 20:05:01 +02:00
thrust26 c20035ccce refactor CompuMate key handling (uses events now too) 2019-06-16 19:52:14 +02:00
thrust26 65cb17e736 refactor controller dependent mappings 2019-06-15 12:10:00 +02:00
thrust26 d969d9152b fix #490 2019-06-14 21:49:39 +02:00
thrust26 73052e1351 HelpDialog display remapped keys 2019-06-13 21:39:03 +02:00
thrust26 219c4b0483 fix Event::VERSION (no reason for a change) 2019-06-13 00:01:37 +02:00
thrust26 43537c868b add autoslot event and default mapping
fix autoslot message
2019-06-12 23:58:44 +02:00
thrust26 a14d1c275d implement separate keyboard mappings for joystick, paddles and keyboard controllers
update doc accordingly
2019-06-12 16:48:41 +02:00
Stephen Anthony 2cfffd48fe Fix initialization error in DPC+ scheme (fixes #489). 2019-06-12 09:54:40 -02:30
Stephen Anthony 33c65103d6 File extensions used by BS autodetect can now use longer that 3-char extensions. 2019-06-11 14:35:01 -02:30
Stephen Anthony 9191f63da2 Fix dirty framebuffer issues in fullscreen TIA mode.
This requires some testing, since it potentially causes slowdowns on older systems.
I cannot find any difference on my test system (and documentation I've read seems to imply
that you should clear the screen before each update, and that it is very fast on most hardware).
2019-06-08 23:01:59 -02:30
Stephen Anthony 4745b6a240 Make sure properties database is correctly read on startup (fixes #475). 2019-06-08 18:17:25 -02:30
Stephen Anthony 4a8f2f80b6 Fix PopupWidget/ContextMenu not positioned correctly in fullscreen mode.
Refactored Rect class.
2019-06-03 19:28:56 -02:30
thrust26 0eb7cd70da add option to automatically save states when exiting emulation 2019-06-03 21:55:40 +02:00
Stephen Anthony 58b8c3458b Fix UI drawing modes when overlaid on TIA image. 2019-06-03 17:09:07 -02:30
Stephen Anthony d7754aee77 Dialogs drawn outside the underlying basedialog area no longer leave parts around.
There is still some work TODO for TIA mode; that is coming next.
2019-06-03 14:32:59 -02:30
Stephen Anthony 6153b8aa6c Fix parsing of stella.pro => DefProps: joystick entries were being removed. 2019-06-02 17:08:30 -02:30
Stephen Anthony 46b79a3a2d Updated properties database. 2019-06-02 16:52:36 -02:30
thrust26 ce5a935d49 remove now superfluous "hardcoded" message in InputDialog 2019-06-02 18:45:53 +02:00