-
Notifications
You must be signed in to change notification settings - Fork 113
/
Changes.txt
4301 lines (2925 loc) · 172 KB
/
Changes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
===========================================================================
SSSS tt lll lll
SS SS tt ll ll
SS tttttt eeee ll ll aaaa
SSSS tt ee ee ll ll aa
SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator"
SS SS tt ee ll ll aa aa
SSSS ttt eeeee llll llll aaaaa
===========================================================================
Release History
===========================================================================
7.0 to 7.1 (xxx x, 202x)
* Added developer option for disabling PlusROM support (TODO: Doc)
6.7.1 to 7.0 (October 5, 2024)
* Enhanced ROM launcher to allow multiple images per ROM.
* Made heaps of additional images available for the ROM launcher.
* Added searching by filename for ROM launcher images.
* Added option to start random ROM.
* Added automatically enabled phosphor modes.
* Enhanced Game Properties dialog for multigame ROMs.
* Added 2nd UI theme and hotkey for toggling UI theme.
* Added bezel support (incl. Sinden Lightgun).
* Added optional type format detection based on colors used.
* Added Joy2B+ controller support.
* Added auto detection for QuadTari attached controllers.
* Enhanced Kid Vid support to play tape audio.
* Added port selection, used for controller default mapping.
* Added missing PlusROM support for E7 bankswitching.
* Enhanced movie cart (MVC) support.
* Accelerated emulation up to ~15% (ARM).
* Added limited GameLine Master Module bankswitching support.
* Added 03E0 bankswitching for Brazilian Parker Bros ROMs.
* Added WF8 bankswitching used by some certain Coleco white carts.
* Added JANE bankswitching used by Coleco's Tarzan prototype.
* Added ELF mapper for Mattress Monkeys.
* Added BUS bankswitching support for some older demos.
* Fixed broken 7800 pause key support.
* Added developer option for random hotspot peek values.
* Added user defined CPU cycle timers to debugger.
* Removed 'launcherroms' option, since it was causing some issues.
* Codebase now uses C++20 features, which means a minimum of gcc-11
or clang-10 for Linux/Mac, and Visual Studio 2022 for Windows.
-Have fun!
6.7 to 6.7.1 (January 15, 2024)
* Fixed broken mouse and Stelladaptor input for Driving Controller.
* For UNIX systems: Now defaults to using system-installed libsqlite3
when available, and fixes delay on exiting app experienced on some
systems.
6.6 to 6.7 (June 13, 2022)
* IMPORTANT NOTES:
- Because of fixes to JSON handling, all remappings will be reset
to defaults; if you had custom mappings, they will need to be
re-entered again.
- Because of internal changes, all state files are now invalid.
* Completely reworked the file launcher:
- Redesigned user interface
- Added tracking of user favorites, recently played and most popular
games
- Added virtual directories for selecting tracked games
- Added quick path navigation
- Added navigation history
- Added icons for files and directories
- Added option to show/hide file extensions
- Extended context menu and shortcuts
- Fixed sluggish behaviour when reading large and/or invalid files
* Added hotkey display to tooltips.
* Added option to automatically pause emulation when focus is lost.
* Added option to toggle autofire mode.
* Improved controller mappings for Paddles.
* Improved controller mappings for Driving controllers.
* Improved Mindlink support.
* Added another oddball TIA glitch option for score mode color.
* Enhanced TV jitter emulation (TODO: doc).
* Enhanced support for CDFJ+ bankswitching type.
* Added 0FA0 bankswitching for Fotomania ROMs.
* Added ARM chip auto detection.
* Extended support for older BUS (experimental) ROMs that worked
with an older, obsolete version of the BUS scheme; special thanks
to SpiceWare for the code.
* Fixed Stella crash due to invalid ZIP files.
* Fixed TV mode auto detection in some ARM ROMs.
* Fixed color loss when switching TV mode from/to PAL.
* Fixed score mode glitch emulation corner case.
* Fixed state messages staying on screen forever.
* Added M1 support for the macOS build.
* Debugger improvements:
- added PlusROM information
- fixed patching code in ZP-RAM
- improved bank origin detection
* Updated internal ROM properties database to ROM-Hunter version 17
(thanks go to RomHunter for his tireless research in this area).
Related to this, updated the snapshot collection.
6.5.3 to 6.6 (November 16, 2021)
* Added preliminary PlusROM support for saving high scores.
* Added preliminary support for 'MVC' bankswitching scheme by
Rob Bairos.
* Added web links for many games.
* Added dead zone and linearity settings for analog controllers.
* Added 'Check for Update' button to Help dialog.
* Added different mask patterns for scanline emulation.
* Fixed MindLink controller.
* Fixed SaveKey not working with QuadTari.
* Added TIA randomization on startup option.
* Added different debug color luminances for player and missile copies.
* Added hotkeys for TV roll speed and toggling 'Developer settings' sets.
* Debugger: enhanced prompt's auto complete and history.
* Debugger: added optional logging of breaks and traps.
* Debugger: added Thumb cycle counting.
6.5.2 to 6.5.3 (April 20, 2021)
* Added context-sensitive help.
* Improved support of multiple monitors with different resolutions.
* Improved analog input reading (Paddles, Keyboards...).
* Fixed QuadTari support for controller types other than Joysticks.
* Fixed palette and TV effects saving for Retron77.
* Fixed immediate disassembling when switching options in debugger.
6.5.1 to 6.5.2 (February 25, 2021)
* Fixed broken Driving Controller support for Stelladaptor/2600-daptor
devices.
* Fixed missing QuadTari option in UI.
* Improved QuadTari timing.
* Added CPU usage stats to ARM cart classes debug widgets.
6.5 to 6.5.1 (January 24, 2021)
* Fixed paddle button bug for jittering controllers.
* Improved switching between joysticks and paddles on Retron77 port.
* Improved memory usage on Retron77 port.
6.4 to 6.5 (January 9, 2021)
* Added high scores saving.
* Improved text editing functionality (except PromptWidget):
- Enhanced selection and cut/copy/paste from keyboard.
- Added undo and redo support.
- Added mouse support (selection, cut/copy/paste).
- All actions have keyboard shortcuts.
* Various improvements to the ROM launcher:
- Added wildcard support to the dialog filter
- Added option to search subdirectories
* Added static tooltips to some UI items.
* Added dynamic tooltips to most debugger items.
* Added sound to Time Machine playback.
* Added browser dialogs for user saved files.
* Extended global hotkeys for input devices & ports settings.
* Moved to using an SQLite database for storing user settings, properties
and highscores. More work will follow in future releases.
* Increased sample size for CDFJ+.
* Fixed autofire bug for trackball controllers.
* Fixed bug in TV autodetection in filenames; a filename containing
'PAL' inside a word would sometimes misdetect as a PAL ROM.
* Fixed Stelladaptor/2600'daptor devices sometimes not being assigned
correct default mappings.
* Codebase now uses C++17 features, which means a minimum of gcc7
or clang5 for Linux/Mac, and Visual Studio 2019 for Windows.
6.3 to 6.4 (November 2, 2020)
* Added basic (entire and single line only) text cut/copy and paste.
* Added color parameters to 'Custom' palette.
* Some improvements to AtariVox-USB adaptor functionality:
- Made serial port used for an AtariVox-USB adaptor editable.
- Autodetection of serial ports no longer messes up devices plugged
into other serial ports.
* Added CPU load stats to debugger. Related to this, added debugger
pseudo-registers '_ftimreadcycles' and '_fwsynccycles' to show the
number of cycles since the start of frame under certain circumstances
(see manual for more details).
* Fixed bug with aspect correction and fullscreen mode; snapshots from
such a mode are now pixel-exact.
* Fixed a bug that caused CDF ROMs to crash on the Retron77 and reduced
ARM emulation performance for CDF ROMs on other platforms.
* Fixed crash with missing or incorrectly sized SaveKey data file, and
with certain functions not working (erase pages, erase entire EEPROM).
* Fixed Atari mouse autodetection.
* Fixed bug in ROM launcher, with last ROM selected not being remembered
when exiting and re-entering a directory.
6.2.1 to 6.3 (October 7, 2020)
* Added adjustable autofire.
* Added 'Dark' UI theme.
* Extended global hotkeys for debug options.
* Added option to playback a game using the Time Machine.
* Allow taking snapshots from within the Time Machine dialog.
* Added the ability to access most files that Stella uses from within a
ZIP file. This includes the following:
- Per-ROM properties file (so one can distribute a ROM and its
associated properties).
- Debugger symbol (.sym) and list (.lst) files, etc.
- Several others, as we extend the support.
Basically, you are now able to put many files that Stella uses inside
one ZIP file, and distribute just that file.
* Extended AtariVox support to handle flow control, so that long phrases
are no longer corrupted/cut off. This includes properly supporting the
2600-daptor II, which is flashable to an AVox-USB converter.
* Added auto-detection of the serial port used for an AtariVox-USB adaptor.
* Added QuadTari controller support.
* Added option to select the audio device.
* Added support for CDFJ+ bankswitching type.
* Further enhanced UA bankswitching to support more Brazilian carts.
* Added option to display detected settings info when a ROM is loaded.
* Added another oddball TIA glitch option for delayed background color.
* Added option to disable aspect ratio correct scaling.
* Added debugger pseudo-registers '_timwrapread' and '_timwrapwrite',
which are set when the RIOT timer is read/written on timer wraparound,
respectively.
* Bankswitching schemes BUS, DPC+ and CDFx now work when startup bank
randomization is enabled (these schemes now ignore that setting).
* Replaced "Re-disassemble" with "Disassemble @ current line" in debugger.
* Fixed bug when taking fullscreen snapshots; the dimensions were
sometimes cut off.
6.2.1 to 6.2.2 (August 25, 2020)
* Fixed a bug in initial controller mapping.
6.2 to 6.2.1: (June 20, 2020)
* Fixed Pitfall II ROM not working correctly.
* Fixed crashes when using some combinations of bankswitching schemes on
incorrect ROMs, or when using invalid ROM file sizes, etc.
* Fixed RIOT timer behaviour on reading/writing at the wraparound cycle.
* Fixed incorrectly setting D6 bit on TIA reads in some cases. Related
to this, improve 'tiadriven' option to randomize only D5..D0 bits.
* Fixed custom palette and TV effects adjustable slider rounding issue.
* Fixed some bugs in 3E+ scheme when using non-standard ROM sizes.
* Fixed crash in Audio & Video dialog when opened from debugger, and the
debugger window sometimes being resized when using the Options dialog.
* Make NTSC custom phase shift not affect Yellow anymore.
* Fixed '1x' snapshot mode; TV effects are now disabled. This mode
now generates a clean, pixel-exact image.
* Fixed mappings sometimes not being saved in the Retron77 port.
* A ROM properties file may now be placed next to the ROM (with the same
name as the ROM, except ending in .pro), and Stella will automatically
apply the properties to the ROM. [NOTE: this was present in 6.2, but
was mistakenly left out of the changelog]
* Added button to Game Info dialog to save properties of the currently
loaded ROM to a separate properties file (in the default save directory).
This is useful in conjunction with the previous item.
* Allow changing custom palette and TV effects adjustables in 1% steps
again.
* Updated documentation for changes in ROM properties key names.
* The codebase now compiles under gcc6 again. Future versions will
require gcc7, though.
6.1.2 to 6.2: (June 7, 2020)
* Added interactive palette to Video & Audio settings.
* Added 'Custom' palette, generated from user controlled phase shifts.
* Added that adjustable audio & video settings are displayed as gauge bars.
* Added four global hotkeys which allow selecting and changing numerous
audio & video settings without having to remember the dedicated hotkeys.
* Added 'Turbo' mode, runs the game as fast as the computer allows.
* Added that paddle centering (per ROM) and sensitivity can be adjusted.
* Added that mouse sensitivity for Driving controller can be adjusted.
* Added paddle filtering in UI to avoid unwanted navigation events.
* Added selectable dialog fonts.
* Added separate positioning of launcher, emulator and debugger.
* Added optional display to game refresh rate adaption in fullscreen mode.
* Added option which lets default ROM path follow launcher navigation.
* Added debugger 'saveaccess' function, which saves memory access counts to
a CSV file.
* Added displaying last write address in the debugger.
* Added debugger pseudo-register '_scanend', which gives the number of
scanlines at the end of the last frame.
* Added detection of color and audio data in DiStella.
* Restored 'cfg' directory for Distella config files.
* Added TV Boy and 3EX bank switching types.
* Removed unused CV+ and DASH bank switching types.
* Added support for loading grayscale PNG images in the ROM launcher.
6.1.1 to 6.1.2: (April 25, 2020)
* Fixed bug with remapped events not being reloaded in certain cases.
* Fixed bug in debugger for 3E scheme when displaying active RAM bank.
* Fixed bug in "Dragon Defender" ROM being misconfigured for Mindlink
controller.
6.1 to 6.1.1: (April 4, 2020)
* Fixed crash in 3E bankswitching scheme when writing to ROM addresses.
* Fix snapshots on Retina HiDPI displays capturing only the top-left
corner.
* Fixed wrong color for BK (background) swatch in the debugger.
* Fixed 'Right Diff' button in Command menu changing left difficulty
instead.
* Fixed compilation of libretro port on Debian Buster.
6.0.2 to 6.1: (March 22, 2020)
* IMPORTANT NOTES:
- Because of major event remapping changes, all remappings will be reset
to defaults; if you had custom mappings, they will need to be
re-entered again.
- Because of major internal changes, all state files are now invalid.
- Support for Windows XP has been discontinued as of this version. WinXP
is now completely out of support from Microsoft, so we are doing the
same.
* Major improvements to display mode handling in NTSC vs. PAL. The window
is now the same size for both modes, and scaling is applied to simulate
the height of scanlines (in PAL mode, there are more scanlines and hence
each is narrower). This more properly emulates how the display would look
on a real TV.
* Removed the 'Display_Height' property, changing it to 'Display_VCenter'.
This new feature, along with the display mode changes above, almost
completely eliminate having to manually tweak each ROM so that it will
not have part of the image cut off.
* Removed the 'Display_YStart' property and all automatic detection of
ystart. It caused problems on some ROMs, and was not the way a real
console would work anyway. Related to this, ROMs now load much faster.
* Major improvements to event remapping:
- Allow mapping of modifier-key and button-direction combinations
- Physical controllers can map the same action to different events on
different virtual controllers
- Many more events can be remapped
- Events can be filtered by type in UI
* Paths have been simplified:
- The following file/directory locations are no longer configurable
(statedir, nvramdir, cheatfile, palettefile, propsfile); they are
now all under the base directory
- Removed cfgdir; Distella config files are now placed with their
associated ROMs
- Added 'basedir' commandline argument, which allows to change the
base directory where almost all config-related items are stored;
related to this, discontinued the 'basedir.txt' functionality
- Added 'baseinappdir' commandline argument, which sets the base
directory to the application folder (Windows only for now); this
replaces the functionality of 'basedir.txt'
* Added automatic controller detection.
* Controllers can be changed during emulation (no ROM reload required
anymore).
* Added support for Light Gun controller.
* Added limited KidVid support (8, 9 and 0 start the games).
* Removed superfluous controller option 'PADDLES_IDIR'.
* Added configurable paddle dejittering.
* Key-repeat mode improved; entering Time Machine by holding down a key
combo continues to send events (previously, you had to release and then
press the combo again).
* Certain buttons in the UI can now be activated repeatedly by holding
down the mouse button (Time Machine, debugger step/trace/frame advance,
etc.)
* Added option to configure mouse double click speed.
* Added option to configure controller input repeat speed.
* Added high quality scaling.
* Made scanlines better aligned to scaling.
* Added 'HiDPI' mode, which scales the UI by 2x when enabled. This is
meant for 4k and above monitors, but can actually be used at any
lower resolution that is large enough to display the scaled UI.
* Fixed TIA 'Center' option, Stella now remembers the last windowed position.
* Added fractional (25% increments) TIA zooms.
* Removed 'tia.fsfill' option, replacing it with 'tia.fs_stretch'. This
new option allows to preserve TIA image aspect ratio in fullscreen
mode, or stretch to fill the entire screen.
* Added configurable 'Overscan' option for fullscreen modes.
* Fullscreen TIA modes no longer assume that desktop taskbars, etc
are present, hence they are scaled to the proper fullscreen size.
* Added option to display dialogs in screen corners.
* Added hotkey for sound on/off.
* Enhanced 'Command' menu to display current state and more commands.
* Added option to save and load all TimeMachine states at once.
* Added option to automatically load/save states when entering/exiting
emulation.
* Added option to change pitch of Pitfall II music.
* ROM Info Viewer size is not limited to fixed zoom steps anymore.
* ROM Info Viewer can now display multiple lines per property and the
bank switching type.
* In file listings, you can now select directories by holding 'Shift' on
the first character entered. Entering characters in lowercase still
selects files, as before.
* Fixed bug when starting ROMs via MacOS finder.
* Added various developer options for oddball TIAs:
- stuffed player, missiles and ball move
- delayed playfield bits and color
- delayed players and ball VDEL swap
* Disabled some developer options for 'Player settings'.
* Writes to RAM read ports are ignored now.
* Added Developer setting, which breaks on writes to read ports.
* Improved breakpoints to now consider the banks.
* Improved debugger's TIA display and zoom windows.
* Improved hotkeys, now many emulation keys work in debugger too.
* Fixed display of negative values in debugger; sometimes they were
shown as positive.
* Reworked ROM properties database, making it load faster in certain cases.
* Updated internal ROM properties database to ROM-Hunter version 16
(thanks go to RomHunter for his tireless research in this area).
Related to this, updated the snapshot collection.
* Fixed 'Dancing Plate (Unknown) (PAL)' to use joystick.
* Fixed cheatcode handling in 2K and 4K ROMs.
* Fixed bug where ROMs smaller than 64 bytes were not recognized.
* Fixed bug where frying one ROM was continued with the next ROM.
* Fixed not working 7800 pause key.
* Enhanced UA bankswitching to support certain Brazilian carts.
* Fixed WD bankswitching.
* Added FC bankswitching for Amiga's Power Play Arcade Video Game Album.
* Added auto-detection of display format based on filename.
* Auto-detection of bankswitch scheme by file extension now includes
more human-readable formats (not restricted to DOS 3-char length).
See the documentation for the new names.
* Fixed bug in DPC+ scheme; 'fast fetch mode' was enabled at startup,
when it should be disabled by default.
* Some more work on DPC+ playfield 'jitter' effect for certain older DPC+
driver versions; more ROMs are now detected properly. Special thanks
to SpiceWare for his research in this area.
* Added proper Retron77 port.
* Added proper libretro port, and fixed display for OpenGLES renderers.
* PNG/ZIP image support is now conditionally compiled into Stella.
All major ports (Linux/macOS/Windows) have it enabled by default.
* SDL/GUI support is now conditionally compiled into Stella. All major
ports (Linux/macOS/Windows) have it enabled by default. This is
currently needed by the libretro port.
* Updated included PNG library to latest stable version.
* Updated UNIX configure script to work with the gcc version 10 and
above.
6.0.1 to 6.0.2: (October 11, 2019)
* Updated properties database for Pink Panther ROM.
6.0 to 6.0.1: (June 5, 2019)
* Added support for CDFJ bankswitching type (Galaga, Wizard of War, etc).
* Allow the DPC+ scheme to not enable playfield 'jitter' effect for
certain older DPC+ driver versions; this allows 'Epic Adventure' ROM
to finally work in Stella.
5.1.3 to 6.0: (December 23, 2018)
* Note: because of major TIA sound changes, the state file format has
changed, and old state files will not work with this release.
* New cycle exact audio core based on work by Chris Brenner (crispy);
greatly improved audio emulation accuracy (i.e. E.T., Ms. Pacman).
* Full rewrite of the audio subsystem; resample TIA output to target
sample rate directly in Stella.
* Added option to force stereo sound for all ROMs, or to use the
setting on a per-ROM basis.
* Threading: decouple emulation from frame rendering.
* Main loop rewritten; emulating speed and timing is now much more
faithful (i.e. speed in Pick'n'Pile).
* Added preliminary support for 'CTY' bankswitching scheme and recently
released 'Chetiry' ROMs. Special thanks to SpiceWare for adding music
support to this scheme.
* UI modernization (new widget look, dialog titles added, dialogs
refactored).
* The bankswitch scheme can now be forced by naming the ROM with a
specific extension (ie: .f8s for F8SC, .fe for FE, etc). The
supported extensions are the same as the ones from HarmonyCart and
UnoCart.
* Audio settings replaced with new 'audio.xxx' settings.
* FPS setting replaced with speed setting for adjusting emulation speed.
* Extra functionality for Time Machine dialog (start/stop recording;
minor fixes).
* When logging messages to the System Logger, condense similar messages
that arrive in batches into fewer messages (including timestamps).
* Fixes for collision corner cases (during HBlank).
* Fixed excessive CPU usage while in UI modes (ROM launcher, debugger,
etc).
* The 'launcherexts' option has been replaced by a true/false option
named 'launcherroms', which specifies to show only ROMs or all files
in the ROM launcher.
* Changes in 'Game Properties' dialog
- 'Default' button now affects only current tab like in all other
dialogs.
- 'Display' and 'Console' tab changes are now immediate.
- Fixed bug when selecting 'Auto-detect' format for 50Hz ROMs
* Fixed bug in autodetecting Genesis controllers.
* Fixed bug with 'thumb.trapfatal' commandline argument; sometimes Stella
would lock up when encountering a fatal error instead of entering the
debugger and displaying a message.
* Fixed bug in reading from settings file with entries that were empty;
the parsing was failing. This affected the 'cpurandom' argument; when
all options in it were turned off, they were all turned on again during
the next program run.
* Fixed bug with 'hold' events; they are now released a short time after
starting a ROM.
* When starting Stella for the first time, the first ROM selected will
determine which path to use by default for subsequent runs.
* Fixed emulator crash when starting SaveKey ROMs from commandline with
SaveKey messages enabled.
* Fixed missing TV format update in frame stats dialog when switching
display type.
* Fixed missing debug color update when switching display type.
* 'Fill to scanline' now works for scanlines above current scanline too.
* The debugger 'uhex' command is now honoured in CDF and BUS schemes.
* When switching screenmodes, the sound is now paused and later resumed.
This fixes popping and cracking sounds apparent on some systems, notably
OSX when toggling windowed/fullscreen mode.
* State file format has been optimized to be smaller, and faster loading
and saving. This affects both the files saved to your computer as well
as Time Machine functionality.
* The ROM name saved in a PNG tEXt chunk now honours the 'snapname'
setting.
* Improved snapshots when phosphor is enabled.
* Updated PAL palette.
* Added 'Cartridge.StartBank' ROM property, to force a ROM to use a
specific bank for its reset vector.
* Added Developer setting, which breaks on reads from write ports. It
now detects such conditions in many more cases. This new way of
detecting RWP errors obsoletes the old '_rwport' debugger command,
which has now been removed.
* Added recently released 'Arkyology' prototype ROM to the database.
* Added 'Amoeba Jump' and 'Flappy' ROMs (from the Retron77) to the
database.
* Fixed 'Street Racer' and 'Video Olympics' ROMs to use paddles in both
ports.
* If using SDL 2.0.5 or above, the calculated desktop size now takes
the taskbar/dock into account (so windows should no longer overlap
those areas).
* For UNIX systems: in the ROM launcher, when using symlinks use the
symlink pathname instead of the underlying filesystem pathname.
* The UNIX builds now use the system-installed PNG and ZLIB libraries
by default.
* The Macintosh builds are now named 'macOS' throughout the codebase to
reflect the new naming from Apple.
* For better compatibility, the Windows 32-bit version does not require
SSE2 anymore.
* Updated included PNG library to latest stable version.
5.1.2 to 5.1.3: (June 10, 2018)
* Fixed crash in OpenBSD when quitting the app, which can also be
happening on other systems (no reports yet, but the problem is now
fixed for good).
* Fixed configure/build scripts to work natively under OpenBSD.
5.1.1 to 5.1.2: (May 20, 2018)
* Fixed bug with SaveKey autodetection; some ROMs were not correctly
detecting that a virtual SaveKey device was plugged in. This notably
fixes issues in "Super Cobra" and "Scramble" ROMs.
* Make previously mentioned ROMs use the SaveKey device by default.
* Fixed bug in UI navigation with joystick hat movement.
5.1 to 5.1.1: (February 21, 2018)
* Fixed bug in Stargunner ROM starting with a blank screen.
5.0.2 to 5.1: (February 4, 2018)
* Added "Time Machine" mode, which automatically creates save states
in user-defined intervals. The user can navigate back and forth within
these states inside the emulator and the debugger.
* Huge improvements to the disassembly view in the debugger and
disassembly files created:
- reformatting in debugger for better space utilization
- much improved code and data detection
- access tracking and indicators for TIA/IO/RAM adresses in disassembly
- break vector is tracked (if used)
- improved cycle count (page penalties, sums created in disassembly)
- improved handling of instruction masking opcodes (e.g. BIT)
* Fixed change tracking bug during rewind; changes were accumulated
instead of being displayed only for the last rewind step.
* Extended 'rewind' to take a second parameter which allows rewinding
multiple states.
* Added 'unwind' command, which undoes the latest rewind(s)
* Added '<' (unwind) button to debugger.
* Thumbulator support is not conditional any more.
* Moved various developer related settings in new Developer Settings
dialog. These settings now come in two groups (player/developer) and
allow switching all settings at once.
* Don't trap write accesses to the datastream pointers in CDF and BUS.
This fixes -dev.thumb.trapfatal 1.
* Complete rework of TV mode and ystart autodetection. The new
implementation is more robust and reduces startup time.
* Add two "grace lines" of black to the top of the frame when
autodetecting ystart.
* Fixed Genesis controller autodetect (Stay Frosty 2, Scramble, etc).
* Fixed a bug in ystart autodetection that could cause screen jumps.
* Fixed several bugs in holdselect, holdreset and holdjoyX commandline
arguments; these now work as expected.
* Fixed bug in TIA collision handling; it is now disabled in VBlank.
* Improve TIA PF collision handling during hblank; this fixes a bug in
Thrust ROM.
* Fixed wrong display of HM values in debugger after 'HMCLR' has been
executed.
* Fixed bug with the debugger 'savedis' command in Windows; it wasn't
actually saving the files at all. This has never been reported
before, so I guess it shows how many people use that functionality.
* The debugger 'savedis', 'saverom' and 'saveses' now save files in
a default, user-visible directory (see the documentation for more
information). In the case of 'saveses', the filename is now named
based on the date and time of when the command was entered.
* Fixed bug with saving snapshots in 1x mode; there was graphical
corruption in some cases. Such snapshots also now include any TV
effects / phosphor blending currently in use.
* Fixed regular-sized snapshots when phosphor effect was enabled;
sometimes the image was 'double-blended', resulting in a snapshot that
was too dark.
* Fixed crash when selecting 'CompuMate' as a controller type for a non-
CompuMate ROM; this controller type can no longer be manually
selected, and will be used automatically used for CompuMate ROMs.
* Fixed cheat codes, so 7 digits codes are now accepted as described in
the doc.
* Fixed swapped ports being displayed wrong in System Logs and debugger.
* Added options to erase the AtariVox/Savekey flash memory, either for
all ROMs or only the current one. Also added a message (configurable)
when the flash memory is accessed.
* Access to the AtariVox/SaveKey can be signaled with a message.
* Added new interface palette 'Light'.
* Frame stats display made transparent. Also it now displays the real
frame rate and if the developer settings group is enabled.
* Improved tab auto-complete in debugger.
* Added conditional traps and savestate creation to debugger.
* Added 'Options...' button to debugger which gives access to the options
menu during debugging.
* Added debugger pseudo-register '_cyclesLo' and '_cyclesHi', which give
the number of CPU cycles that have occurred since emulation started.
* Added debugger pseudo-register '_fcycles', which gives the number of
CPU cycles that have occurred since the frame started.
* Added debugger pseudo-register '_icycles', which gives the number of
CPU cycles of the last instruction.
* Extended debugger 'dump' command to take a second argument, indicating
the end of the range to dump data.
* Improved change tracking; more values are tracked and change tracking
now works in case of a break too.
* Added widgets for trackball and SaveKey/AtariVox controllers.
* Improved emulation of 'FE' bankswitch scheme (no user-visible changes,
but internally the emulation is much more accurate compared to the
real thing). Related to this, improved the debugger support for this
scheme (you can now switch banks in the debugger view).
* Added emulation of 7800 initial RAM values and Pause key.
* Added ROM properties for 'Scramble' ROMs, and updated info for all
"Champ Games" ROMs.
* Added ROM properties for 'Zippy the Porcupine' ROMs, and updated
info for all "Chris Spry (Sprybug)" ROMs.
* Support UNIX style builds (configure / make) on OSX with both
XCode / clang and g++.
* Fixed error when building with uClibc-ng for ARM (thanks to Sergio
Prado).
* Updated included PNG library to latest stable version.
5.0.1 to 5.0.2: (August 20, 2017)
* Improved emulation of Trakball controller, eliminating bias in left/
right directions. Thanks to Thomas Jentzsch for the idea and code.
Related to this, added 'tsense' commandline argument and associated
UI item, to allow changing sensitivity of mouse trackball emulation.
* Added preliminary support for multi-threading in the Blargg TV effects
code. This is still a WIP; more improvements are coming. Related to
this, further optimized the TIA rendering code. Also added 'threads'
commandline argument and associated UI item to enable/disable
multi-threading. Thanks to Thomas Jentzsch for the bulk of the work
in this area.
* Blargg TV effects now no longer cut off the right side of the image
(by several pixels) in certain cases.
* Updated CDF scheme to latest version from Spiceware. In addition,
this scheme now supports versioning, so older and newer ROMs will
continue to work.
* Fixed an annoying bug in Linux, where Alt-Tab'ing out of a window and
then back again would pass a 'Tab' key event to the app, which in
most cases would navigate to the next UI element.
* Fixed potential issue with state file saving and the debugger; under
certain circumstances a rewind would give a different state than
before (note that the state file format has changed because of this).