thrust26
7973140c5a
refactored and split CartCDFWidget.cxx (see CartCDFInfoWidget.cxx)
2019-03-19 20:44:38 +01:00
Christian Speckner
a794bb983a
Silence compiler.
2019-03-18 22:43:31 +01:00
Christian Speckner
383424983a
Update memory layout for CDFJ, adapt debugger widget.
2019-03-18 22:30:46 +01:00
Stephen Anthony
12d8ed570d
Fix minor warning in VS.
2019-03-16 16:24:24 -02:30
Stephen Anthony
b8393a22a1
Updated Xcode for recent class additions.
2019-03-16 16:08:17 -02:30
Christian Speckner
59a7cbbc5e
Support CDFJ / fastjmp2
2019-03-13 22:30:20 +01:00
Stephen Anthony
93a07b4517
Remove setting 'fixed' height from frame-manager completely.
2019-03-10 16:49:11 -02:30
Stephen Anthony
d09b6329c9
Consolidate some constants into actual enumerations/namespaces.
...
- Certain parts of the code referred to int literals, when they should use named constants instead
- Different classes had enumerations for the same quantities; this is now fixed
- Basically, TIAConstants and FrameBufferConstants now contain all constants, and their relationship is clearly indicated (previously it wasn't as clear)
2019-03-10 15:19:30 -02:30
Stephen Anthony
9a8e5a3a33
Fix Thumbulator conditional handling of some opcodes.
2019-03-10 11:59:07 -02:30
Stephen Anthony
0e9915823d
Remove redundant check for controller 'Auto' type.
2019-03-09 20:04:51 -03:30
Stephen Anthony
e61caf069b
Fix warnings under gcc and clang, both in normal compilation and R77 mode.
2019-03-09 19:40:45 -03:30
Stephen Anthony
14567207ff
Fix minor warnings that come up in g++ and not clang, and fixes for which cause warnings in the other compiler.
2019-03-09 18:01:38 -03:30
Fabrice Fontaine
74450028fc
undef PAGE_SIZE
...
PAGE_SIZE is sometimes already defined by the toolchain so undef it:
/home/naourr/work/instance-3/output/host/bin/x86_64-linux-g++ -MMD -MF "src/debugger/.deps/CpuDebug.d" -MQ "src/debugger/CpuDebug.o" -MP -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -x c++ -Wall -Wextra -Wno-unused-parameter -Wno-ignored-qualifiers -Wno-multichar -Wunused -fno-rtti -Woverloaded-virtual -Wnon-virtual-dtor -std=c++14 -fomit-frame-pointer -D_GLIBCXX_USE_CXX11_ABI=1 -DUNIX -DBSPF_UNIX -DWINDOWED_SUPPORT -DSOUND_SUPPORT -DDEBUGGER_SUPPORT -DJOYSTICK_SUPPORT -DCHEATCODE_SUPPORT -Isrc/emucore -Isrc/common -Isrc/common/tv_filters -Isrc/gui -Isrc/emucore/tia -Isrc/emucore/tia/frame-manager -I/home/naourr/work/instance-3/output/host/x86_64-buildroot-linux-musl/sysroot/usr/bin/../../usr/include/SDL2 -D_REENTRANT -Isrc/unix -Isrc/debugger -Isrc/debugger/gui -Isrc/yacc -Isrc/cheat -c src/debugger/CpuDebug.cxx -o src/debugger/CpuDebug.o
In file included from /home/naourr/work/instance-3/output/host/x86_64-buildroot-linux-musl/sysroot/usr/include/limits.h:8:0,
from /home/naourr/work/instance-3/output/host/opt/ext-toolchain/x86_64-buildroot-linux-musl/include/c++/7.4.0/climits:42,
from src/common/bspf.hxx:28,
from src/debugger/CartDebug.cxx:18:
src/emucore/System.hxx:64:29: error: expected unqualified-id before numeric constant
static constexpr uInt16 PAGE_SIZE = (1 << PAGE_SHIFT);
Fixes:
- http://autobuild.buildroot.org/results/22a9b009749af2a0862750a1fb2b2dc7167cd589
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2019-03-09 17:02:47 -03:30
Stephen Anthony
a5ca6b8ca5
Start of purging 'Display_Height' from the codebase.
...
- We've already removed it from the UI, now it's removed from consideration altogether
- For now, NTSC ROMS use 240, PAL 250; this will change when we get aspect ratio working
2019-03-09 16:27:33 -03:30
Stephen Anthony
91c98ceed2
Converted another plain enum to 'enum class'.
2019-03-09 16:02:43 -03:30
Stephen Anthony
51981d633d
When compiled for R77, use 'minimal_ui' mode.
2019-03-09 14:35:22 -03:30
Stephen Anthony
fa59b6b9d2
Updated R77 audio settings.
2019-03-09 13:23:07 -03:30
Stephen Anthony
374a318556
More R77 improvements.
...
- Don't allow ROM launcher to go above '/mnt/games'
- Remember 'lastrom' selected in ROM launcher
2019-03-09 12:48:39 -03:30
Stephen Anthony
f508ca2634
First pass at porting R77-specific changes to mainline.
...
- more work is required here, since I'm unable to test on a real R77 yet
- changes will also be required in the manually generated config.mak
2019-03-09 12:22:33 -03:30
thrust26
9b6cae5684
Minor fixes for 3E+
2019-03-05 20:22:08 +01:00
Stephen Anthony
61828ac695
Don't create an empty 'stella.pro' file when possible.
...
- Not a big deal, but several people are complaining when 'ghost' files are created
- If file doesn't already exist and there is nothing to add, simply don't create one
- Alternatively, we should delete the file if it's zero-sized, but that requires changes to FSNode.
2019-03-04 20:12:21 -03:30
Stephen Anthony
9f6b91cff6
Completely remove OSystem/FrameBuffer/Settings dependency on AVox/SaveKey.
...
- Added a new callback that enables sending messages back to the parent (Console)
2019-03-03 22:03:44 -03:30
Stephen Anthony
3b15f8da5d
Move SerialPort declaration/instantiation directly into AtariVox.
...
- This is the only class that uses it, so it makes no sense for OSystem to even care about it
2019-03-03 21:30:53 -03:30
Stephen Anthony
784793cae3
Fix compile warnings from clang8; this class still needs more work though.
2019-03-03 15:18:58 -03:30
Stephen Anthony
8856789438
Fixed minor compile error in Linux.
2019-03-02 15:28:00 -03:30
thrust26
21da4a6388
move ROM path selection into UIDialog
...
deleted ConfigPathDialog class (TODO: update non VS project files)
2019-03-02 19:04:18 +01:00
Stephen Anthony
7bd355d759
Fix another warning from clang8.
...
- This one isn't serious at all, but my OCD doesn't allow any warnings to pass :)
2019-03-02 12:17:07 -03:30
Stephen Anthony
abc3b3a32b
Fix warnings generated by clang 8.
...
- Several more still exist, and are mostly related to C-style code
- It has long been my intent to remove as much C-style code as possible
2019-03-02 12:06:08 -03:30
Christian Speckner
d04b5dd64b
More inlining for performance.
2019-03-02 00:08:22 +01:00
Christian Speckner
2a9bfd6b23
Optimizations to TIA movement mode.
2019-03-01 23:35:52 +01:00
Christian Speckner
2b19f4ab5e
Use ystart / layout autodetection and real FrameManager in profiling run.
2019-02-28 23:56:02 +01:00
Christian Speckner
ac398ac31b
Profiling.
2019-02-27 23:41:08 +01:00
Christian Speckner
1ba1332501
Fix fallout from rebase.
2019-02-27 22:44:11 +01:00
Christian Speckner
05260ca006
More refactoring: remove dependency of System on OSystem.
2019-02-27 22:40:25 +01:00
Stephen Anthony
b93c95e041
Updated VS project for new profiling classes.
2019-02-26 22:23:22 -03:30
Stephen Anthony
e7169ac010
Completely removed OSystem dependency for Cart classes.
2019-02-26 21:37:35 -03:30
Stephen Anthony
61cf68cb98
Move `getTicks()` from OSystem to TimerManager.
...
- This allows OSystem dependency to be removed in a few places (WIP).
- It more properly belongs in TimerManager, which has other functionality related to std::chrono.
- Historically this was a virtual method in OSystem, since different ports implemented it differently. Now that we use proper C++11 code, it doesn't need to be there anymore.
- Changed from a virtual call to a static call, so it's probably even a little faster.
2019-02-26 19:20:28 -03:30
Christian Speckner
85acaef8cd
Refactoring: remove dependency of TIA and M6532 on Console.
2019-02-26 23:43:22 +01:00
Christian Speckner
806045cb1c
Open ROMs for profiling, refactoring.
2019-02-26 22:46:54 +01:00
Christian Speckner
58d7846f6b
Profiling CLI. Wip.
2019-02-25 23:56:57 +01:00
Christian Speckner
6709b43f9c
Remove (u)Int32 vs. (u)Int64 for R77.
2019-02-25 23:54:49 +01:00
thrust26
37afed9778
Merge branch 'master' of https://github.com/stella-emu/stella
2019-02-25 19:50:47 +01:00
thrust26
a251ccf3d6
another small unsafe optimization
2019-02-25 19:50:33 +01:00
Stephen Anthony
ae589e1655
Some fixes to last commit
...
- if autodetection fails, we still want to see what was set in properties
- if type is not set to 'AUTO', we don't want to autodetect at all
2019-02-25 09:31:14 -03:30
Stephen Anthony
f15d1ec7a5
Fixed crash in ROM launcher when openROM failed (typically on 0-byte file).
2019-02-25 09:17:06 -03:30
thrust26
d716f42b5c
one small unsafe optimization for register 15
2019-02-25 11:36:42 +01:00
Stephen Anthony
42f9fc88f1
Fixed macOS compilation
...
- Like Windows, the 'basedir' stuff isn't implemented yet
2019-02-24 20:03:29 -03:30
Stephen Anthony
c5099cf292
Windows port compiles again, but 'basedir.txt' functionality removed
...
- Still need to work on '-basedir' and '-baseinappdir'.
2019-02-24 19:50:30 -03:30
Stephen Anthony
88afab2d22
More restructuring of the OSystem and derived class interaction
...
- Each derived class no longer calls methods from the base class
- The base class now directly queries the derived class with a pure virtual method, making sure it is called
- Implemented 'basedir' commandline argument for Linux
Windows and macOS currently won't compile. I'll work on those next.
2019-02-24 19:14:55 -03:30
thrust26
28d1113523
Thumbulator::fetch16 can fetch only ROM when optimized
2019-02-24 14:39:52 +01:00
thrust26
6f94174989
Merge branch 'master' of https://github.com/stella-emu/stella
2019-02-24 09:24:11 +01:00
thrust26
bb3075947b
segfault Stella protection added
...
some more small optimizations (fetch32 removed)
2019-02-24 09:23:57 +01:00
Stephen Anthony
d5180ba649
Improve variable/method naming in Settings class.
2019-02-23 17:07:50 -03:30
Stephen Anthony
032b08cca1
Fixed compilation errors in macOS. I still need to think about the Settings stuff, though.
2019-02-23 16:02:13 -03:30
Stephen Anthony
814977e968
Cleaned up Settings API, and moved to C++ maps instead of vectors.
2019-02-23 15:21:11 -03:30
thrust26
d188b5024f
one more missing optimization
2019-02-23 19:02:25 +01:00
thrust26
b32d3eba49
oops
2019-02-23 16:09:39 +01:00
thrust26
486494eb7a
defined UNSAFE_OPTIMIZATIONS in Thumbulator
2019-02-23 16:09:00 +01:00
thrust26
bac5a86832
minor Thumbulator optimizations and code cleanup
2019-02-23 12:05:53 +01:00
thrust26
9910398be8
added profiling targets
2019-02-23 12:03:21 +01:00
thrust26
e245655747
Revert "optimized Thumbulator.cxx"
...
This reverts commit 9a09675e55
.
2019-02-22 20:11:19 +01:00
thrust26
38366b65bb
optimized complex conditional branches in Thumbulator (affects ~5% instructions)
2019-02-22 14:50:52 +01:00
Stephen Anthony
324ba22180
Updated comments.
2019-02-21 22:18:46 -03:30
Stephen Anthony
130fcf1dfc
Fairly large refactoring of Settings class
...
- Completely separate Settings and OSystem; the former no longer uses the latter at all
- Moved separate Settings methods directly into that class, exposing less info outside the class
- Reworked loading/saving config files; this may break macOS port (not tested yet)
- Next thing TODO is convert Settings class to use map instead of vectors
2019-02-21 21:55:08 -03:30
thrust26
9a09675e55
optimized Thumbulator.cxx
2019-02-21 22:56:18 +01:00
thrust26
330f4d8f29
mini project update
2019-02-21 17:38:28 +01:00
Stephen Anthony
904821cff9
Refactoring of settings load/save functionality
...
- commandline parsing is now done in main function
- loading of settings is handled by OSystem
- settings that are used only in main are not accessible globally
- beginnings of converting Settings class to use map instead of linear arrays
2019-02-20 23:43:29 -03:30
Christian Speckner
092c32cda5
Always reserve one thread for emulation.
2019-02-21 00:58:00 +01:00
Stephen Anthony
8808f7b5e0
Check in WIP on config paths before I screw something up (already happened multiple times).
2019-02-20 14:06:39 -03:30
Christian Speckner
e80e15538b
Thumbulator optimizations.
...
Pre-decode ROM image and turn instruction dispatch into a switch.
2019-02-20 00:32:48 +01:00
Stephen Anthony
9735806b2f
Partially revert commit for #368 ; we need more work before this can be enabled.
...
Fixes issue with fullscreen TIA image disappearing.
2019-02-18 18:17:08 -03:30
Christian Speckner
f511f9fbe7
Use and alternate between two textures for TIA image.
...
* Avoids blocking if the texture is still locked in the rendering pipeline
and fixes framerates on the R77.
2019-02-18 21:17:16 +01:00
thrust26
2d0221ae1f
improvement for hardcoded keys in Inputdialog
2019-02-18 20:20:14 +01:00
Stephen Anthony
8f800d97b9
First pass at cleaning up the various config file location mess
...
- only 'romdir' is configurable; the rest are now always under the 'basedir'
- next step is to allow 'basedir' to be configurable, and optionally use the APP dir
- ConfigPathDialog dialog is now almost empty (only contains romdir), so perhaps this can move elsewhere
2019-02-16 15:26:24 -03:30
Stephen Anthony
90e6cfa26b
Fixed minor compile warnings in clang
...
- method with same name but different parameter mirroring one in base class
- missing newline, etc.
2019-02-16 12:10:52 -03:30
thrust26
3c6b8339e1
a bit controller detection refactoring
2019-02-16 11:46:42 +01:00
thrust26
9580385f21
2nd push for last commit
2019-02-15 23:47:33 +01:00
thrust26
e81326eefb
auto detect controller in GameInfoDialog when started from Launcher
2019-02-15 23:46:09 +01:00
thrust26
9fba356d8b
RomInfoWidget auto detects controllers and displays results
2019-02-15 22:19:19 +01:00
thrust26
ccee7e4dc6
enable "Swap Paddles" when paddles are auto detected
2019-02-15 19:41:55 +01:00
thrust26
e3d40f9285
corrected controller labels in GameInfoDialog/Controller
2019-02-15 18:29:35 +01:00
thrust26
83636b9791
updated Stella.pro for some of my own games
2019-02-15 17:58:47 +01:00
thrust26
2cc035e4eb
improved keyboard controller detection
...
small doc update
2019-02-15 16:29:13 +01:00
Stephen Anthony
f94fd34f99
Updated macOS project files to Xcode 10, fixing any remaining warnings.
2019-02-14 19:07:05 -03:30
Stephen Anthony
7c88c372ac
Fixed negative values shown as positive in debugger ( fixes #414 ).
2019-02-14 18:32:23 -03:30
thrust26
481c63f980
defined default hotkey for sound on/off
2019-02-14 19:01:21 +01:00
Thomas Jentzsch
40e12f0465
Merge branch 'master' of https://github.com/stella-emu/stella
2019-02-14 18:49:04 +01:00
Stephen Anthony
6d550793f8
Fix minor compile warning in clang.
2019-02-14 12:02:13 -03:30
Thomas Jentzsch
7215f2bbeb
changed volume hotkey handling
...
changing volume also enables sound
changing phoshor also enables phosphor mode
2019-02-14 11:07:17 +01:00
Thomas Jentzsch
fa66711c8a
moved SaveKey detection to a safer spot
2019-02-14 08:46:50 +01:00
Thomas Jentzsch
6bb4d67efd
Merge branch 'master' of https://github.com/stella-emu/stella
2019-02-14 08:40:54 +01:00
thrust26
b5fce21b2f
implemented mute Hotkey (TODO: default key)
...
small improvement for Amiga mouse detection
minor Windows project file fix
2019-02-13 20:03:58 +01:00
Thomas Jentzsch
a0ab78fcfc
fixed Windows project file
2019-02-13 14:45:04 +01:00
thrust26
9857fa888b
improve trackball controller detection
2019-02-12 22:18:19 +01:00
thrust26
8855804635
improved SaveKey detection
2019-02-12 19:24:36 +01:00
thrust26
3c2549d348
slightly improved Genesis detection
...
corrected tab widgets in GameInfoDialog
2019-02-11 23:02:08 +01:00
thrust26
a4456e6af8
improved controller detection and added Genesis
...
adapted GameInfoDialog to controller detection
moved detection from OSystem to Console
2019-02-11 22:10:30 +01:00
Stephen Anthony
854a891a36
Minor fixes for compile warnings/errors in Linux.
2019-02-11 11:36:13 -03:30
thrust26
b6b5930a2d
Merge branch 'master' of https://github.com/stella-emu/stella
2019-02-11 15:53:07 +01:00
thrust26
c1067fde83
first shot at automatic controller detection
2019-02-11 15:52:51 +01:00
Christian Speckner
1d5ff5322b
Retron77: use 32bit integers everywhere for performance.
2019-02-10 22:40:58 +00:00
Christian Speckner
13cedefc8f
Fix build without debugger support.
2019-02-10 21:59:23 +00:00
Stephen Anthony
9d31d4a519
Fixed 'F8' autodetection to be a little more robust.
2019-02-10 10:39:54 -03:30
Stephen Anthony
0c8478d842
Various fixes to 'evdev-joystick'
...
- Added extra udev rules from Tom Hafner (2600-daptor)
- Make code compile without any warnings under maximum clang settings
2019-02-07 21:11:36 -03:30
thrust26
25eb9cd4ab
cosmetic change (labeled A/B difficulties)
2019-02-03 12:26:46 +01:00
Stephen Anthony
a1342afe34
Fixed bug in peek handling for 2K and 4K ROMs.
...
This fixes cheatcode handling for those schemes.
2019-01-27 13:13:08 -03:30
thrust26
c3671ac095
each tab can now have a defined width (see DeveloperDialog)
2019-01-26 23:34:12 +01:00
thrust26
532b629a93
redesign of TIA options
2019-01-17 09:08:31 +01:00
thrust26
46f7668216
added missing oddball TIA options
2019-01-16 17:58:02 +01:00
thrust26
bd0984fc98
renamed player inverted HMOVE phase clock option, methods and keys
...
added missile inverted HMOVE phase clock option
2019-01-14 22:52:30 +01:00
thrust26
fad141b5de
some code cleanup
2019-01-13 09:58:26 +01:00
thrust26
0449e24146
defined various TIA types in developer options
2019-01-12 15:51:38 +01:00
thrust26
da78065996
fixed view of disabled checkbox
2019-01-12 12:14:14 +01:00
thrust26
fee5f57179
disabled some developer options for 'Player settings'
...
updated doc and changes
2019-01-12 12:00:35 +01:00
thrust26
f80f291cec
minor optimizations and formatting
2019-01-10 21:08:12 +01:00
thrust26
cadfbdd767
fixed changing debug colors status without confirmation
2019-01-06 20:13:04 +01:00
thrust26
e2dabba309
updated serializers
...
added some game names to new TIA settings
2019-01-06 18:04:19 +01:00
thrust26
da269fefed
added TIA tab to developer options with 5 options for oddball TIAs
...
started disabling some options for player settings
2019-01-06 13:48:53 +01:00
thrust26
b5de674c58
added missing prefixes
2019-01-05 23:01:21 +01:00
thrust26
11c90f296e
reverts unwanted change
2019-01-05 16:07:35 +01:00
thrust26
5e89b4d02b
started to eliminate magic numbers in new TIA code
2019-01-05 15:34:19 +01:00
Stephen Anthony
2806c0da58
When we update/change serialization, we need to update the header too.
2019-01-04 19:52:08 -03:30
thrust26
5fd3c017f6
added missing serializing
2019-01-05 00:07:45 +01:00
thrust26
f4de083a2b
Extra playfield delay added as Developer option.
2019-01-04 14:18:35 +01:00
thrust26
3f9e82ab79
some minor typo fixes/alignments
2019-01-03 22:46:35 +01:00
thrust26
9a8afd5e7b
preliminary extra buttons for CommandDialog
2019-01-03 09:53:13 +01:00
thrust26
9e81ad4c13
enabled TimeMachine by default and increased defaults
2019-01-02 10:53:46 +01:00
Stephen Anthony
ebfff85cb6
Fixed nasty C-style string conversion to upper/lower-case.
2019-01-01 15:22:30 -03:30
Stephen Anthony
3e85ae4d47
Bumped version number.
2019-01-01 12:32:39 -03:30
Stephen Anthony
275666b0af
The annual copyright year update.
2019-01-01 11:35:51 -03:30
thrust26
fdea8aa82e
Made console type change immediate
2019-01-01 14:35:14 +01:00
thrust26
1f64eecf4e
fixed #401
...
added 7800 related messages for color/pause switches
2019-01-01 13:49:09 +01:00
thrust26
dc978b041a
removed PADDLES_IDIR option (superfluous)
...
fixed properties for 'Dancing Plate (Unknown) (PAL)'
2018-12-31 12:23:23 +01:00
thrust26
0b77a5e140
Merge branch 'master' of https://github.com/stella-emu/stella
2018-12-30 18:47:50 +01:00
thrust26
e2a0fe9ffb
Dialogs do remember their wanted size, so that OptionsDialog's dialogs are recreated only when necessary.
2018-12-30 18:47:35 +01:00
Stephen Anthony
ae69545056
Classes that have unique_ptr in headers can't also have defaulted d'tors.
...
I haven't figured out exactly why this is yet, but compilation fails in gcc and clang otherwise.
2018-12-30 10:23:16 -03:30
thrust26
b1811f5a9f
Dialogs remember and restore their previous focus when being reopened
2018-12-30 11:13:36 +01:00
thrust26
33f7c5b7e8
Remember and restore focus for all tabs of a Dialog
2018-12-30 10:37:59 +01:00
thrust26
cd8d7498d3
Dialogs are only recreated if their size is LARGER than the current framebuffer
2018-12-30 10:29:20 +01:00
thrust26
c1d5020ea0
Partial fix for #399 , sometimes(!) the initial tab has the correct widget focused
2018-12-29 23:30:12 +01:00
thrust26
c5c3014819
Merge branch 'master' of https://github.com/stella-emu/stella
2018-12-29 23:22:10 +01:00
thrust26
7dd4242e63
some code improvements and fixes for #326
2018-12-29 23:21:56 +01:00
Stephen Anthony
04030757f0
Updated properties to RomHunter v15.
2018-12-28 17:55:15 -03:30
thrust26
b5f5ddefad
(mostly) implemented #326
...
TODO: use empty buttons
2018-12-28 17:42:19 +01:00
thrust26
84300914cc
fixed #397
...
Added SET_LAST_POKE for STA/STX/STY using absolute addressing (frequently used wasting 1 cycle) and PHA.
2018-12-28 12:36:00 +01:00
thrust26
6987c06337
reorganized GameInfoDialog
2018-12-28 11:17:56 +01:00
thrust26
fe810826ca
Implemented #369
2018-12-27 21:29:43 +01:00
thrust26
f86ba39c88
initial update for #368
2018-12-27 11:47:41 +01:00
Stephen Anthony
e4a1ba50e6
Final updates for 6.0 release (we hope).
2018-12-22 11:46:54 -03:30
Christian Speckner
b466393712
x kSamples -> xk samples
2018-12-21 08:54:45 +01:00
Christian Speckner
098a2a5fb1
Parse strings and float in the same locale in which they were serializwd.
2018-12-20 23:48:52 +01:00
Stephen Anthony
b40a614cee
Rework `Cartridge::initializeStartBank()` to require a specific starting bank.
...
Randomization and reading from properties still work too.
Fixes issues in several ROMs that essentially were getting bank randomization even though it was disabled.
2018-12-20 18:37:27 -03:30
Stephen Anthony
497bfc92db
Added ROM properties for a few ROMs included with the R77.
2018-12-19 17:02:30 -03:30
Stephen Anthony
9c1b9ae00e
Fix bug when taking snapshots in 1x mode; once started, it never stopped.
2018-12-19 14:26:15 -03:30
Stephen Anthony
933c4d7d3c
Mac-related files/folders are now using 'macOS' naming scheme.
2018-12-19 11:46:09 -03:30
Stephen Anthony
6a17467e99
Slight space savings for load/save state.
2018-12-19 10:46:16 -03:30
Stephen Anthony
ae3df81967
Use 'SDL_GetDisplayUsableBounds' if available (gives dimensions with dock/taskbar taken into account)
...
- This still needs some testing on Windows/OSX, so docs aren't updated yet
- If it ends up not working, I will '#if 0' it for the 6.0 release.
2018-12-18 23:07:34 -03:30
nanochess
a92cf466cb
Desired desktop resolution minus dock for Mac OS X (requires SDL-2.0.5 or higher)
2018-12-18 23:01:13 -03:30
Stephen Anthony
f33ac273dd
Remove debugging code.
2018-12-18 22:00:01 -03:30
Stephen Anthony
269fc7bc19
Updated OSX project file for new classes.
2018-12-18 21:53:40 -03:30
Stephen Anthony
9c64a8fdad
Update libpng to latest version.
2018-12-18 21:30:34 -03:30
Stephen Anthony
3423bf15c7
Set release date for 6.0 for Dec. 23. We'll see if we actually make it ...
2018-12-18 21:15:32 -03:30
Stephen Anthony
69fb08e30c
Remove '_rwport' from the debugger.
...
The new way of detecting RWP is superior, and we don't have time to rework _rwport to use it.
This may come back in the future (if required), but I honestly don't see a need for it.
2018-12-18 20:56:19 -03:30
Stephen Anthony
d7e9cfc4d0
Fix some warnings from cppcheck.
...
I'll admit that some of these suggestions are of dubious importance, but at least we shut up the tester :)
2018-12-18 20:06:55 -03:30
Christian Speckner
521e5dc51d
Document audio settings, fix units for fragment size, fix audio dialog width.
2018-12-18 23:18:40 +01:00
Stephen Anthony
471cf1ad4d
Updated RWP stuff for 'E7' scheme.
2018-12-18 14:32:49 -03:30
Stephen Anthony
a26288c788
Updated RWP stuff for DASH scheme.
...
Again, this is a relatively untested BS scheme, with only one test ROM available.
2018-12-18 14:04:25 -03:30
Stephen Anthony
70fcd0f3b5
Updated RWP stuff for '3E+' scheme.
...
This is currently mostly untested, since this scheme isn't widespread and has only a few test ROMS.
2018-12-18 10:59:29 -03:30
Stephen Anthony
56669c5449
Convert Cart classes to receive 'md5' parameter.
...
That's an *awful* lot of work to simply pass info to each class :)
2018-12-18 10:24:40 -03:30
Stephen Anthony
dea62573f8
More carts converted to new RWP code.
2018-12-17 21:25:08 -03:30
Stephen Anthony
9aaf8b22b5
Fix wrong address in poke methods in 'SC' schemes.
2018-12-17 20:41:39 -03:30
Stephen Anthony
4ff613b4e9
Converted all the class 'SC' carts to new RWP scheme.
2018-12-17 20:15:11 -03:30
Stephen Anthony
ebe18877f9
Fairly large refactoring of RWP functionality.
...
- abstracted RWP code into Cart base class (only F8SC converted for now)
- RWP now works by analysing RAM accesses before and after each instruction, catching all occurrences
Fixes for compiling without debugger support.
2018-12-17 19:51:28 -03:30
Christian Speckner
8cb235bf19
Hack around race condition in timers.
2018-12-17 00:30:42 +01:00
Christian Speckner
9b22c6afa7
Rewrite StaggeredLogger with a timer.
2018-12-15 23:59:21 +01:00
thrust26
06c20103af
fixed crash in StringListwidget when scrolling with mouse
...
fixed #398
2018-12-15 10:17:14 +01:00
thrust26
b8e53d76af
updated VS project files
...
updated change log
2018-12-15 09:41:27 +01:00
Christian Speckner
d981ed71f3
Fix missing include -> fixes windows build.
2018-12-15 09:22:00 +01:00
Christian Speckner
d5d9618def
Use actual time since the current log window started for log messages.
2018-12-15 00:15:44 +01:00
Christian Speckner
5b0b8cd5cb
Summarize audio buffer errors and log them to the main log.
2018-12-15 00:04:38 +01:00
Stephen Anthony
d941ebca09
Added new approach for values used when reading from the write port.
...
Previously these values were from whatever was on the databus, but new testing
indicates that they are semi-random (ie, random, but with some pattern).
The new code bases the values in part on the md5sum of the ROM (for randomization),
but also pre-generates a set number of values (for a pattern).
Currently only F8SC scheme is implemented. The remainder will be done once
we test this one.
2018-12-08 18:05:05 -03:30
Stephen Anthony
5f91532d95
Fix minor clang warning in last commit.
2018-12-08 11:43:35 -03:30
thrust26
1dfc221a1a
fixed RWP by using the last access type
2018-12-08 15:51:16 +01:00
thrust26
d3b270dea8
fixed trapping on 'read from write port' functionality for CPU dummy peeks
2018-12-08 09:53:00 +01:00
Stephen Anthony
b6dcd110f0
Updated VS project for recent exception classes.
2018-12-07 21:50:07 -03:30
Stephen Anthony
7b4c3dc6b8
In the case of 'read from write port', make sure RAM is modified before exception is thrown.
2018-12-07 21:45:28 -03:30
Stephen Anthony
abfc01b483
Rework trapping on 'read from write port' functionality.
...
The new code introduces a generic 'EmulationWarning' exception that can
be thrown for any reason. The RWP functionality has been ported to use
this, with the main benefit that if we ever have to add new exceptional
cases, we no longer need to modify M6502 class; it will pick up on the
new exceptions and pass them to the EmulationWorker as necessary.
Functionally, the RWP stuff works the same as before, just with a
different implementation behind the scenes.
2018-12-07 21:19:44 -03:30
Stephen Anthony
6a9ae2e3a1
Added exception class for general warnings, separate from the one for fatal errors.
2018-12-07 20:56:48 -03:30
thrust26
14501b8a94
Fixed exception when FatalEmulationError message was too short.
2018-12-07 22:02:16 +01:00
thrust26
ecb6c7a508
Implemented solution for #396
2018-12-07 20:47:06 +01:00
Stephen Anthony
a7f8d67211
Some refactoring of snapshot code for future reference.
2018-12-07 15:22:39 -03:30
thrust26
979977befa
fully implemented #395
2018-12-06 18:51:46 +01:00
thrust26
3733adb39c
better snapshots, part 2 (buggy!)
2018-12-06 16:38:41 +01:00
thrust26
251449cacf
Merge branch 'release/6.0' of https://github.com/stella-emu/stella into release/6.0
2018-12-06 14:25:41 +01:00
thrust26
dd81940e3d
1st part of implementing blended screenshots (see #395 )
2018-12-06 14:24:36 +01:00
thrust26
bef5caafa5
1st part of implementing blended screenshots (see #395 )
2018-12-06 14:24:07 +01:00
Stephen Anthony
198ecd9fdc
Updated Xcode project for recent class additions.
2018-12-05 20:07:06 -03:30
Stephen Anthony
26faaa8cce
Minor updates for suggestions from clang.
2018-12-04 20:40:50 -03:30
Stephen Anthony
540e0fb0b3
Added latest classes to VS project file.
...
Added 'DEBUG_BUILD' define to Windows debug builds.
2018-12-04 20:29:48 -03:30
Christian Speckner
b58d843732
Clear fatal error flag on enetering the CPU main loop; code beautification.
2018-12-05 00:00:01 +01:00
Christian Speckner
f08ba16acb
Handle fatal errors on main thread.
2018-12-04 21:45:14 +01:00
Christian Speckner
8ac66e7929
Add threading sanity checks before critical SDL API calls.
2018-12-04 19:45:22 +01:00
Stephen Anthony
b06893d384
Potential fix for issue #392 (input locked after exiting the debugger).
2018-12-04 13:19:57 -03:30
thrust26
2e4340911b
fixed #394
...
extended trace step count to 10000 (preliminary fix for #393 )
2018-12-02 11:20:10 +01:00
Stephen Anthony
e36692bee3
Minor refactoring in CartDetector class.
2018-11-20 15:39:30 -03:30
Stephen Anthony
f3a185f04a
Fixes for minor warnings from cppcheck.
2018-11-19 11:08:44 -03:30
Stephen Anthony
a8a0c57deb
Updated ROM properties database for missing paddle controllers.
2018-11-19 10:38:34 -03:30
Stephen Anthony
ae2bb58f0b
Added ROM properties for various trakball hacks, thanks to alex_79.
2018-11-16 11:14:10 -03:30
Stephen Anthony
e3873cce73
Moved final remaining bits of SDL-specific code out of src/emucore.
2018-11-13 20:43:12 -03:30
Stephen Anthony
2b3e2dc385
Specifically initialize and quit each SDL subsystem.
...
- Now video/timer and joystick subsystems are opened and closed in the
proper SDL2 way
- SDL_Quit() is also done at the very end, to clean up any remaining SDL
state
- Hopefully this fixes the issues with RPi not exiting cleanly.
2018-11-10 17:30:44 -03:30
Stephen Anthony
bf8b0b3a88
Updated ROM properties database for several ROMs
...
- Major update is adding 'Chetiry' 60K ROMs info.
2018-10-21 10:11:57 -02:30
Stephen Anthony
cbd30fad02
Fix final clang warnings in Thumbulator.
...
It ended up being much easier than I realized.
2018-09-22 22:58:57 -02:30
Stephen Anthony
56aa439dc7
Remove deleted file from OSX build.
2018-09-22 20:39:58 -02:30
Stephen Anthony
f8f3805dae
Fix minor warning from cppcheck.
2018-09-20 22:00:32 -02:30
Stephen Anthony
1bb19a05ba
Restore const for Event class by using 'mutable' mutex.
2018-09-20 21:51:10 -02:30
thrust26
c475072455
adjusted docs for last commit
2018-09-20 10:58:07 +02:00
thrust26
c038df6343
fixed #383
...
if globally enabled, disable game specific stereo and phosphor elements
changed global phosphor value label (Default -> Blend)
2018-09-20 10:20:12 +02:00
Christian Speckner
6d0614ef35
Guard Event.hxx against races.
2018-09-19 23:36:26 +02:00
thrust26
a6a762bbb4
reworked Stereo for all ROMs setting in AudioDialog
2018-09-19 22:24:25 +02:00
Christian Speckner
27956cff15
Fix switching between auto and manual ystart in GUI.
2018-09-17 22:19:33 +02:00
Stephen Anthony
1a86c8c3be
Updated VS project for CTY scheme updates.
2018-09-17 17:02:46 -02:30
Stephen Anthony
508102b56e
Fix crash when force-exiting a ROM from debugger.
2018-09-17 12:24:38 -02:30
Stephen Anthony
ea31d4b464
Fix crash in BUS/CDF/CM schemes.
...
- bank initialization must happen in Cart::reset(), not the individual c'tors.
2018-09-17 09:38:23 -02:30
Stephen Anthony
9890c648cb
For UNIX-only, use version-specific config file if it already exists.
...
- I'm tired of switching between version 5.x and 6.x, and constantly having to reset sound settings :(
- Backporting this to a local copy of 5.x, so both can co-exist, and going forward too
- Not quite ready to advertise this functionality yet ...
2018-09-17 08:36:31 -02:30
Stephen Anthony
56d9bdc163
Add autodetection for 32KB variant of CTY ROM.
2018-09-16 23:13:37 -02:30
Stephen Anthony
7982f7cb9b
Various updates to the 'CTY' scheme, all by SpiceWare:
...
- music support
- autodetection support
- creation of 60K ROMs
For the latter, I still need to see how we will distribute those ROMs, and get them added to the database.
2018-09-16 22:49:33 -02:30
Stephen Anthony
8f03a48f11
Partially restore a reverted commit.
...
- Since changing ystart/height no longer needs to call `TIA::frameReset()`, the method is no longer valid
- Remove the method, and all documentation that says it is necessary to call it
2018-09-16 21:44:17 -02:30
Christian Speckner
888556b124
Another pass at resolving ystart issues. Reverts 02b0c13a
and b9bbbe1
.
2018-09-17 00:23:06 +02:00
Stephen Anthony
31f6dba87d
'Cartridge.StartBank' ROM property is now used by the core.
2018-09-14 20:57:36 -02:30
thrust26
f0889a26dd
improved detection of unchanged ystart and height
2018-09-14 19:25:51 +02:00
thrust26
02b0c13aca
fixes #381
2018-09-14 19:00:45 +02:00
Stephen Anthony
b32c71d6f4
ROM name in PNG tEXt chunk now uses 'snapname' setting.
2018-09-13 22:01:37 -02:30
Stephen Anthony
b9bbbe1381
Fix blank screen after exiting from GameInfoDialog.
2018-09-13 21:38:21 -02:30
Stephen Anthony
d18f11afa2
Remove Serializable::name() method, and all reference to it in state files.
...
- this both speeds up load/save of state files, and makes them smaller
- affects both on-disk files, and Time Machine functionality
2018-09-13 20:50:23 -02:30
Christian Speckner
524943354e
Remove unnecessary frame resets.
2018-09-14 00:34:21 +02:00
Christian Speckner
1a4e95604c
Fix typo, naming.
2018-09-13 23:35:21 +02:00
Christian Speckner
2f9fc4f525
Bug fixing, harcode min ystart to 0.
2018-09-13 23:23:49 +02:00
Stephen Anthony
5bc84bca52
Add 'Cartridge.StartBank' ROM property, to specify the startup bank for a ROM to use.
...
For now, this only modifies the properties database. Still TODO is have the app use the information.
2018-09-11 10:23:39 -02:30
thrust26
27022ad3a9
fixes #376
2018-09-11 10:54:39 +02:00
Christian Speckner
e129391dbd
Fixes, properly handle TV format any ystart changes from GUI.
2018-09-09 23:30:20 +02:00
Christian Speckner
ab0e4d6bba
Properly handle TV and ystart autodetection during runtime.
2018-09-06 23:47:17 +02:00
thrust26
adc948d806
missed a blank
2018-09-06 17:28:45 +02:00
thrust26
76e3e8305a
added current stereo mode and units to logging
2018-09-06 16:49:18 +02:00
thrust26
71eeba70ae
aligned the log order to AudioDialog
2018-09-06 16:39:18 +02:00
thrust26
228f57b108
Merge branch 'release/6.0' of https://github.com/stella-emu/stella into release/6.0
2018-09-06 15:39:25 +02:00
thrust26
503d861c2e
optimized some tickmarks (number now based on value range)
2018-09-06 15:39:08 +02:00
Stephen Anthony
3df644ecff
Buffer size and headrom in sound logging now match that shown in AudioDialog.
2018-09-06 10:38:32 -02:30
Stephen Anthony
ce9b832f68
Improvements to logging for sound settings.
...
- Now shows all settings from AudioSettings (preset, resampler, etc)
- Only logs sound info when the settings have actually changed (similar to Framebuffer info)
2018-09-05 14:05:56 -02:30
Stephen Anthony
b4dc729559
Added 'Arkyology' prototype ROM to properties database.
2018-09-05 12:48:11 -02:30
Stephen Anthony
ee643e818b
Final refactoring of ZipHandler class.
2018-09-05 12:21:55 -02:30