forked from cuttl/wii2600
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Changes.txt
1462 lines (972 loc) · 57.4 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
===============================================================================
2.7.6 to 2.7.7: (May 1, 2009)
* Corrected emulation of CPU opcodes involving 'decimal' mode (ADC/RRA
and SBC/ISB). Special thanks to SeaGtGruff and others on the Stella
mailing list for in-depth discussion and creation of test ROMs.
* Fixed bug in F4SC bankswitching mode; writes to bankswitch addresses
weren't triggering a bank switch.
* Changed internal sound frequency of Pitfall 2 from 15.75KHz to 20KHz,
as this sounds much more authentic when compared to a real cartridge.
-Have fun!
2.7.5 to 2.7.6: (April 14, 2009)
* Added support for 'EF' bankswitching (Paul Slocum Homestar Runner),
as well as auto-detection of this format.
* Added support for 'EFSC' bankswitching, as well as auto-detection of
this format. This is similar to the 'EF' scheme, but also includes
128 bytes SuperChip RAM.
* Added autodetection for '0840' and 'SB' bankswitching formats.
* Improved autodetection for 'UA' bankswitching format.
* Fixed bug in selecting video modes larger than the current screen;
the resulting video mode will now be the largest one available
(previously it selected the smallest one available).
* The currently selected CPU register now displays its value in
decimal and binary (in addition to hex) in the debugger.
2.7.3 to 2.7.5: (Mar. 27, 2009)
* After about 2 years, finally fixed the infamous 'red screen' issue when
using ATI video cards in OpenGL mode in Windows. In the end, it was
determined to be a bug in the ATI drivers. Special thanks go to
Ant (https://aqfl.net) for bugtesting and constant feedback wrt this bug.
* Fixed bug in TIA SCORE mode emulation when the Priority bit is also
set. This fixes a very noticable graphical glitch in 'Swordquest
Waterworld', as well as minor glitches in several other ROMs such
as 'Space Shuttle'.
* Treat spaces as normal characters in the ROM launcher. This means
that ROMs with spaces can be located with quick selection (ie,
typing characters will automatically jump to a ROM with that name,
and typing 'space' won't cause the launcher to jump back to the top
of the list).
* The debugger window can now have a minimum height of 620 lines
(previously the minimum was 690), but you lose access to the TIA 'RAM'
bytes when using this resolution. This should allow it to work
better on devices with small displays.
2.7.2 to 2.7.3: (Feb. 9, 2009)
* Fixed rendering issues in software mode when using 24-bit colour depth.
This isn't as fast as 16 or 32-bit modes, so you're recommended to use
one of those whenever possible.
* For the Win32 port: re-added ability to change the default location
for storing Stella config files. To use this, simply create a file
named 'basedir.txt' in the application directory containing the full
path where all Stella-related items should be stored.
* Tweaked the TIA info statistics overlay to be smaller while still
including all relevant information.
2.7.1 to 2.7.2: (Jan. 27, 2009)
* Fixed major bug in ROM Audit functionality; renaming ROMs would create
files without an extension.
2.7 to 2.7.1: (Jan. 26, 2009)
* Partial workaround for sound not working in OpenGL video mode in
Windows with ATI video hardware. Sound will now work for the first ROM
selected, but not for subsequent ones (you will have to quit and
restart Stella for sound to work again). Related to this, added
'-audiofirst' commandline argument, which initializes audio before video
when emulating a ROM. Further work is required to completely fix
this bug.
* Fixed bug where volume wasn't being saved in 'Audio Settings' when
started from the ROM launcher.
* Fixed crash which sometimes occurred when viewing snapshots in the
ROM Info viewer.
* Allow setting window sizes for the ROM launcher and debugger to be larger
than your desktop resolution. Be careful with this feature, as switching
to fullscreen mode may cause problems in such cases.
* Made the ROM launcher filename filtering be case-insensitive. This fixes
a bug whereby ROMs with uppercase extensions were marked as invalid.
* Added a pattern matching textbox to the ROM launcher, used to
further filter the files shown in the listing. For now, this filters
files only (directories are not filtered, and are always shown).
* The location of EEPROM files used for AtariVox/Savekey emulation can
now be changed with the '-eepromdir' commandline argument as well as
in the UI.
* Added '-gl_aspectn' and '-gl_aspectp' commandline arguments (and
associated UI items), which replace the previous '-gl_aspect' setting.
The aspect modes can now be set separately for NTSC and PAL mode.
Related to this, the range of values is now 80 - 120.
* Fixed bug with hold-select/reset/button0 when overriding ROM properties;
the checkboxes in the UI weren't actually doing anything.
* The 'grabmouse' option is now configurable from the UI; previously
it was only accessible from the commandline or its shortcut key.
* Removed 'Emulation_HmoveBlanks' ROM property and associated UI item.
You can no longer optionally turn off HMOVE blanking; it is always
enabled when necessary.
2.6.1 to 2.7: (Jan. 19, 2009)
* Totally reworked the built-in UI to be font-sensitive and use higher-
resolution fonts. Stella now requires a minimum screen size of 640x480.
If used in a resolution smaller than that, the fonts will be reduced
accordingly. Related to this, switching between software and OpenGL
rendering now requires an application restart.
* Added three different sized fonts (small, medium, large) which can be
used in the ROM launcher.
* Added ability to temporarily override ROM properties from the UI. This
is tied to a right mouse button context menu in the ROM launcher, and
is very useful when you want to use a set of properties for all
subsequent ROMs without having to manually change each one.
* Added ability to filter the files shown in the ROM launcher. Currently,
the choices are 'all files', 'all roms', or 'roms ending with a certain
extension'. This functionality is tied to a right mouse button context
menu in the ROM launcher. Extensions can also be set with the
'-launcherexts' commandline argument.
* Added ability to reload the listing in the ROM launcher, either from
a right mouse button context menu or pressing the Control/Cmd-R key.
* Made the ROM info viewer in the ROM launcher configurable to show
snapshots in 1x or 2x mode.
* Made the delay between consecutive keys being recognized as one word
configurable in the ROM launcher. This is useful if you find that you
have to press keys too quickly to jump to a specific ROM. This can be
set in the UI or using the '-listdelay' commandline argument.
* Updated internal ROM properties database to ROM-Hunter version 4
(thanks go to RomHunter for his tireless research in this area).
* Expanded the statistics overlay for the TIA image to also show
Display Format and Bankswitch type information.
* Added '-ss1x' commandline argument and associated UI item, used to
generate snapshots in 1x mode, independent of the filtering/scaling
currently in use.
* Various path textboxes in the UI now recognize './' (or '.\') to mean
the current directory and '~/' (or '~\') to mean your home directory
(for Windows, home directory will be your 'My Documents' folder).
* Large speedup in loading directories with many files in the ROM launcher.
* Fixed reset issue in 3E, 4A50, AR, CV, E7, F4SC, F6SC, F8SC, FASC and MC
ROMs; the internal RAM wasn't being randomized after the initial reset.
* M6532/RIOT RAM is now randomized at every reset, not just when the
emulation starts.
* Fixed bug in _diff pseudo-registers in the debugger; they were actually
defined backwards.
* Added fix for 'Challenge/Surfers Delight' ROM; the startup bank was
incorrect. Combined with the new 'Override Properties' functionality,
you can now play both games directly from the UI (no need to use the
commandline).
* Fixed paddle issue with Activision Casino ROM; the last card in game 4
can now be reached.
* Added new pseudo-registers to the debugger, useful for conditional
breakpoints (_fcount, _cclocks, _vsync, _vblank).
* Added 'timing' commandline argument functionality to the UI, so you no
longer need to use the commandline to set it.
* Size restrictions on the TIA image are now strictly enforced. The
maximum height of a 1x TIA image is now 256 lines.
* Added a new setting to the 'fullres' option named 'auto'. Using
'auto' will let Stella decide the best videomode to use in fullscreen.
* Changed 'gl_fsmax' option to mean 'scale TIA image in fullscreen'. It
will have no effect on UI modes.
* Changed 'gl_aspect' option to range 80-100 (previously, it was 50-100).
* Removed 'ui_zoom' and 'tia_zoom' options, replacing them with
'tia_filter' (which can be zoom1x, zoom2x, etc). There is no equivalent
for ui_zoom, since the UI can no longer be scaled.
* Added experimental 64-bit version for Vista64 (may also work on WinXP64).
This hasn't been extensively tested, and is probably quite a bit slower
than the 32-bit version.
* OSX port now requires at least 10.3 and XCode 3.0 to compile. Sorry,
but I no longer have access to older systems to compile for 10.2.
* Huge updates to the documentation, particularly concerning the debugger.
Many features that have been in Stella for a while are now documented for
the first time.
2.6 to 2.6.1: (May 22, 2008)
* Introduced more accurate timing for NTSC vs. PAL modes, where the
framerate is based on the number of scanlines per frame. This should
eliminate 'clicking' sounds when emulating ROMs that don't follow
the exact NTSC or PAL scanline specs.
* Added ability to see the current number of scanlines and corresponding
framerate to the TIA emulation. This can be set with the '-stats'
commandline argument, or dynamically turned on and off with the
'Alt-l' key combo.
* Modified '-framerate' commandline argument, where a non-zero value
overrides the automatic framerate calculation (based on number of
scanlines). Setting 'framerate' to zero re-enables auto-frame
calculation. Also, re-enabled changing the framerate from within the
UI.
* Added '-timing' commandline argument, which sets the type of waiting
between processing frames. Setting it to 'sleep' emulates the
previous behaviour in Stella; setting it to 'busy' emulates z26,
and can in some cases eliminate screen tearing (at the expense of
using all available CPU time).
* Fixed issue with debugger disassembly and mirrored $40 TIA write
addresses. They were actually defined at $30, and generating incorrect
labels.
* Fixed issue in AtariVox and SaveKey controllers where accessing the
EEPROM sometimes failed after the first write.
* Changed AtariVox and SaveKey EEPROM emulation to default to $FF for
a blank EEPROM.
* Fixed regression in cart auto-detection logic; some F6 ROMs were being
misdetected as E7.
* Fixed issue with M6532/RIOT timer initialization; it was causing some
ROMs to hang (most notably Summer Games). Related to this, reworked
the built-in random number generator to generate 'more' random numbers.
* Fixed bug in CommandMenu where console buttons (Select, Reset, etc)
weren't doing anything.
2.5.1 to 2.6: (May 16, 2008)
* Added AtariVox support using a real AtariVox device, where Stella
sends data directly to the AtariVox. For now, this is supported in
Linux/UNIX, OSX, and Win32 only. You'll obviously need a real
AtariVox, and a serial<->USB adaptor to connect it to your system.
Added '-avoxport' commandline argument used to set the serial port
to which the AtariVox is connected. Special thanks to Al Yarusso
and Richard H. for providing sample hardware.
* Added AtariVox and SaveKey EEPROM emulation. This reads/writes data
to a 32KB file, not to the actual hardware. Very useful for testing
EEPROM support without actually wearing out the real device. Special
thanks to J. Payson for providing the EEPROM emulation code, and A.
Herbert for answering many driver-related questions.
* Added support for CX-22, CX-80, and AmigaMouse trackball controllers.
* Improved debugger symfile handling so that addresses accessed as
read-only won't use write-only labels (and vice-versa). More work
is still needed in this area.
* Added M6532/RIOT tab to the debugger. This will be expanded on in a
future release.
* Added TIA emulation fixes for graphical glitches in Escape from the
Mindmaster, Mission Survive, Solaris, and SWOOPS!
* Fixed bug where fullscreen OpenGL scaling wasn't working on 4:3 monitors.
* Further improvements to the M6532/RIOT emulation, which unfortunately
have broken old state files (again).
* Added deadzone setting, for adjusting the deadzone amount for
analog joysticks. This can be set using the commandline argument
'-joydeadzone' or dynamically within the UI.
* Make ROM disassembly in debugger take advantage of a wide window.
* Fixed bug in 6507 BCD handling introduced in the last release.
* For the Win32 port; Win9x should be fully supported again.
2.5 to 2.5.1: (April 9, 2008)
* Fixed M6532 RIOT timer emulation. More testing is needed, but the
changes so far have fixed several ROMs that didn't work before.
* Fixed issue with weird characters in the debugger disassembly when
loading .lst files.
* Fixed bug where entering the debugger for 4A50 and E0 carts caused
the ROM to be frozen afterwords.
* Removed logic whereby starting a ROM from something other than the
built-in launcher wouldn't allow the user to go back to the ROM launcher.
* Fixed bug (hopefully) with the app icon not showing on the Stella window.
Further testing is needed, since I can't duplicate the error myself.
* Fixed default snapshot folder issues; the folder will now be
automatically created in the same place as state folders, ini files,
etc (whereever that may be for your platform).
* Re-added 'lastrom' functionality, where Stella will remember and
auto-select the last ROM that was successfully launched in the ROM
launcher.
* For Stella developers, fixed SpeakJet emulation so it compiles again.
No improvements have been made to the emulation itself, though.
2.4.2 to 2.5: (March 28, 2008)
* Added RomInfo widget to the ROM launcher, which shows properties
information and a snapshot of the currently selected ROM. Updated the UI
and added '-romviewer' commandline argument to activate this setting.
Note that the ROM launcher will have to be sized at least 640x480 for this
to be used. Also note that the snapshots must be in 1x mode with a
maximum size of 320x260. This will be expanded on in a future release.
* Added ROM audit functionality, whereby ROMs can be physically renamed
according to their properties' name.
* Added bankswitching support for 0840, SB, X07 and 4A50. A special thanks
to Eckhard Stolberg for much help in this area.
* Removed "non-browse" functionality from the ROM launcher; it now always
uses browse/filesystem mode. The previous 'pretty' names can now be
seen by renaming all your ROMs with the new ROM audit feature.
* Huge overhaul of controller handling and Stelladaptor support, making it
much easier to add new controller types in a future release.
* Fixed paddle issues in Night Driver; paddle emulation speed should be
much better.
* Fixed several 6507 emulation bugs related to BCD handling.
* Updated ROM properties based on info from RomHunter.
* ROM properties can now be edited from the ROM launcher; you no longer
have to start a ROM to do so.
* Added support for configurable font to ROM launcher (currently only
'small' and 'large'). Updated the UI and added -launcherfont' commandline
argument to change this setting.
* Added SECAM, NTSC50, PAL60 and SECAM60 to the list of formats that can
be used. Also, switching between these modes with 'Ctrl-f' now switches
the palette only; the number of scanlines won't change.
* Fixed crash when switching between software and OpenGL mode with a
Stelladaptor plugged in.
* Added '-tiafloat' commandline argument, which determines whether or not
the TIA pins are in a 'floating' state. This is useful for testing on
certain CMOS EPROM chips where the unused TIA pins on a read are not
floating but pulled high.
* Fixed issue in debugger where once a .sym file was loaded, it was used
in all ROMs loaded after that.
* Fixed issue in debugger where equate names weren't showing up in the RAM
and CPU widgets. Note that this still isn't perfect, and needs support
from DASM for proper functionality.
* Updated state file format, creating smaller files (and in preparation
for state rewinding in a future release). Old state saves will no longer
work.
* Added '-bs' commandline argument, which is an alias for '-type' (which
is still present).
* Removed -pXspeed' commandline arguments, and replaced them with a
single '-pspeed'.
* Removed '-paddle' commandline argument. The paddle currently emulated
by the mouse can still be changed with Ctrl-0..3 or within the UI, but
the setting is no longer saved.
* Reworked UI for specifying that the console ports have been swapped,
hopefully making it easier to understand.
* Added 'Ctrl-c' & 'Ctrl-v' to EditTextWidgets, allowing to copy and paste
the text widget contents. More work in this area is coming in a future
release.
* Added 'Ctrl-leftarrow' and 'Ctrl-rightarrow' to EditTextWidgets, to move
to the first character of previous and next words (respectively).
* For the Win32 port: fixed OpenGL crashes in Vista. Graphical updates
are still slower in Vista compared to XP, though.
* For the Win32 port: default folder for Stella config files is now
'My Documents\Stella'; this can be disabled if necessary. This should
fix issues with losing settings when launching Stella from an IDE,
and the creation of stella.ini and 'state' directories in many
different places.
* For the Win32 port: several fixes to the Visual Studio project files,
allowing building in debug or release mode, for both i386 and x86_64.
The project files have been upgraded to Visual Studio 2008, and Stella
can now be built and distributed without the VS runtime libraries.
* Updated configure script for cross-compiling Win32 version in Linux.
2.4.1 to 2.4.2: (September 17, 2007)
* Made usage of 'GL_TEXTURE_RECTANGLE_ARB' extension configurable, and
have it default to off. This should take care of the black/white
screen many people were experiencing with ATI video hardware. This
is accessible using the 'gl_texrect' commandline argument). Set it to
'true' or 'false' to enable/disable the extension.
2.4 to 2.4.1: (August 27, 2007)
* Re-added OpenGL aspect ratio setting ('gl_aspect' commandline argument).
* Re-added non-browser mode to the ROM launcher.
* For the Linux/UNIX port; fixed OpenGL vsync issue with Nvidia video cards.
2.3.5 to 2.4: (August 20, 2007)
* Added new video sub-system where fullscreen and windowed modes are treated
differently. Windowed modes now use '-zoom_tia' and '-zoom_ui' arguments,
while fullscreen modes can be specified by resolution using the new
'-fullres' argument.
* Widescreen video modes are now supported; Stella will simply center the
image with surrounding black borders.
* Many UI-related changes, including resizable ROM launcher and debugger
windows, and a new UI palette (the previous 'classic' palette is still
available). This is still a work in progress.
* The locations of all major config files (statedir, palette file,
cheat file, properties file, etc) are now configurable from the
commandline and within the UI.
* Updates to TIA palette support. Added SECAM support, and removed the
built-in 'original' palette. Standard, z26, and user are still
available.
* Various bugfixes to some debugger commands. The 'run' command no
longer causes a crash, and several others have better error-checking.
* Added more complete cartridge auto-detection for Commavid (CV), 3E,
3F and Activision (FE) formats.
* Removed XStart and Width ROM properties, since the forthcoming TIA
rework won't be using them.
* Reworked internal storage of ROM properties to be faster and take up
less space.
* Added several different ways of stretching the OpenGL image to the
'-gl_fsmax' argument, for more flexibility.
* Removed OpenGL aspect ratio setting favour of the previously mentioned
video changes. We'll see how this goes.
* Removed dirty-rect support from software rendering, since it was actually
sub-optimal in Windows and OSX and defaulted to off in previous versions.
* Added support for gzipped ROMs.
* Re-added pause support.
* Re-added support for Windows 98.
* Removed support for 'STELLA_BASEDIR' environment variable, since each
config file can be now configured separately.
* Removed '-fastscbios' argument, since it must always be turned on.
* Removed PSP support, since it hasn't been updated in over a year, and
someone else is maintaining another port elsewhere.
* For the Unix/Linux port; fixed 'make install' issues, and changed icon to
PNG format.
2.3 to 2.3.5: (January 17, 2007)
* Greatly improved cartridge bankswitch type auto-detection. Stella
can now (mostly) autodetect cartridge types 'E0', 'E7', '3E', '3F' and
Superchip carts. Obviously, this autodetection is not infallible, but
relies on patterns in the ROM data, and how it was compiled. Because
of the auto-detection types already supported, almost all bankswitch
info was removed from internal ROM properties. Set the ROM property
"Cartridge.Type" to "Auto-detect" for this to take effect.
* Added auto-detection of display type (NTSC or PAL). Currently, PAL60
ROMs will be detected as NTSC. This is almost 100% accurate, and fails
in very few cases (for those that are mislabeled, the ROM properties
can be set specifically). Set the ROM property "Display.Format" to
"Auto-detect" for this to take effect.
* Improved emulation timing when exiting one ROM and starting another.
Previously, this could result in the second ROM having its sound start
later than it should have.
* Removed pause functionality from the core, since it's been superceded
by the other event states. You can now enter one of the menus for a
similar effect (options, command, debugger, etc).
* Added toggle for PAL color-loss emulation, which defaults to off.
Previous versions of Stella always used color-loss emulation.
Related to this, added 'colorloss' commandline argument.
* Added rudimentary support for configuring the UI palette ('uipalette'
commandline argument) and ability to change the size of the launcher window
('launchersize' commandline argument). This will be expanded on in future
releases.
* Reworked options menu so it's now accessible from the ROM launcher as
well as while playing a ROM.
* Re-added ability to change the width and height of a Console. Related to
this, changing XStart/YStart/Width/Height dynamically no longer resets
the ROM.
* Removed 'tiadefaults' commandline argument, since Stella will now default
to using accurate positioning, and not use 'tweaks'.
* Joystick code now allows all 4 directions; 'Bumper Bash' now works
correctly.
* Improved Keypad emulation; 'Alpha Beam with Ernie', 'Oscars Trash Race'
and 'Magicard' now work correctly.
* Reworked GUI code, so that all dialog boxes are automatically centered.
* Added 'rominfo' commandline argument, which prints some detailed info for
a ROM.
* For the OSX port; fixed crashes in OpenGL mode.
* For the GP2X port; some improvements to the sound code.
* For the GP2X port; added vertical centering of the TIA image (when possible).
2.2 to 2.3: (December 22, 2006)
* NOTE: Because of the many changes in this release, all settings
will be reset to defaults. If this doesn't happen for you, it will be
necessary to manually delete your previous settings.
* Potentially huge speedups in software rendering mode, both in emulation
and UI modes. Deactivating 'dirty rects' uses these new modes, which
can be 2-3 times faster for many configurations.
* For UI navigation, changed from using 'joymouse' to the more familiar
'tabbing' functionality, where you move from object to object by use of
some tab key. As a result, completely removed the 'joymouse' commandline
argument and all associated functionality.
* Added event remapping for UI events, separate from events while in
emulation mode.
* Added support for PAL60 ROMs, which use the PAL palette and resolution
but run at NTSC timing (60Hz). Added ROM property for this, and updated
the internal properties database for many PAL60 ROMs.
* Added support for user-definable palettes. For now, only one extra palette
is supported, but in the future we may have them specified per-ROM.
* Fixed bug in PAL colour-loss emulation, which wasn't actually being done
for the original Stella and z26 palettes.
* Fixed several TIA-related emulation bugs as reported on AtariAge. More
fixes will come with the TIA rewrite, due in the next release.
* Added new scaler infrastructure, replacing the '-zoom' commandline argument
with '-scale_ui' and '-scale_tia'. This means the UI and emulation can now
be scaled independently.
* Added '-gl_vsync' commandline argument and associated UI elements, which
uses synchronization to vertical blank interrupt in OpenGL on supported
systems. This eliminates tearing in OpenGL rendering.
* Changed naming of snapshots and state files. These files are now
named based on the names given in the properties database, and no longer
use the 'md5sum' name. As a result, state files from previous versions
will no longer work unless they're manually renamed. Related to this,
removed the '-ssname' commandline argument.
* Fixed bug where 'Snapshot saved' appeared when taking snapshots in
succession.
* Added a 'Previous directory' entry to the top of each listing while
in ROM Browse mode, which is equivalent to the 'Go Up' button. This makes
it easier to navigate the filesystem, since you never have to 'tab out'
of the ROM listing.
* Added all sound related commandline options to the UI, so you no
longer have to use the commandline to set those options.
* Added new property to ROM properties specifying whether to swap paddles
plugged into a virtual port. This eliminates the need to manually set the
paddle mode for those ROMs that don't use paddle zero by default.
* Added a 'Defaults' button to the Game Properties dialog, which resets
the ROM properties to the internal defaults, deleting that ROMs properties
from the external properties file.
* Fixed bug whereby modified ROM properties weren't being reloaded when
restarting a ROM.
* Made 'phosphor' and 'phosphor blend' a ROM property, meaning it can be
set per-ROM.
* Added support for relocating the base Stella directory, by setting the
environment variable 'STELLA_BASEDIR'. This must be done each time before
Stella starts.
* Added '-fastscbios' commandline argument, which speeds up loading of
vertical bars in Supercharger ROMs, and made it the default.
* Added '-autoslot' commandline argument, which automatically switches
to the next available slot after saving a state. This defaults to off,
and must be set from the commandline.
* Fixed bug in debugger command 'runto', which could enter an infinite
loop under some conditions.
* Updated configure/build toolchain so patching is no longer required for
Debian packages.
* Removed dependency on PNG library (PNG snapshots are still present, but the
actual library is no longer required).
* For the OSX port, improved OpenGL performance on Mac Mini using Intel
GMA950 video hardware.
* For the GP2X port, added support for PAL ROMs, and updated SDL to use
hardware scaling.
2.1 to 2.2: (April 7, 2006)
* Added new ROM browser option which works like a normal filesystem
browser, allowing navigation throughout the filesystem.
The old mode of browsing is still present, and can be toggled at
runtime. Related to this, fixed bug whereby sorting in the ROM
launcher sometimes didn't work.
* Integrated stella.pro properties into the application, resulting in
faster startup time. Now Stella can be redistributed as a single
binary; no external files are needed, but they will still be used
if present.
* Reworked ROM properties files once again. The 'user.pro' file has
been removed, and all user-defined properties are stored in
'stella.pro' instead. You should delete all properties files when
upgrading to this version, to take advantage of the speed increases.
* Reworked settings files once again. Removed all references to a
global settings file. Each user now gets a user-specific settings
file only. If that file doesn't exist, the built-in defaults are
used.
* Added 'conditional saving' of the cheatcode and settings files, so
that these files are only written to disk when absolutely
necessary. This doesn't really affect desktop systems, but is very
useful for systems with flashram-based storage (GP2X, WinCE, etc).
* Reworked Settings class, hopefully fixing a bug whereby settings
weren't being saved in certain cases (most evident in the OSX port).
* Added 'tiadefaults' commandline option, which can also be toggled
from within the GUI. This option disables all TIA positioning
'tweaks' that typically make a game look better, and present the
image exactly as it would appear on a real 2600.
* Added jitter-detection code for the paddle emulation, which should
eliminate an annoying 'jittering' effect when using paddles with
a Stelladaptor.
* Related to jitter-detection, added '-pthresh' commandline option
and GUI entry, which sets a bound below which the emulation detects
jitter.
* Fixed crash when adding one-shot cheats.
* Fixed bug in RAM comparitive searches in the debugger.
* Fixed bug with setting snapshot naming type from the GUI (it was
always being set to 'romname').
* Re-added low compatibility CPU emulation mode, since it benefits
some slower systems. This is activated with the commandline argument
'-cpu low'.
* For the OSX port, added Universal binary support.
* For the OSX port, reworked the menu handling, so that certain menu
options are only enabled when it makes sense to do so.
* For the GP2X port, fixed joystick deadzone issues and scroll bug in
ROM launcher.
* For the GP2X port, fixed issue with PAL ROMs causing a crash because of
screen size. A message is now shown indicating that PAL ROMs are not
yet supported.
2.0.1 to 2.1: (January 29, 2006)
* Added phosphor effect, similar to z26. Useful on ROMs which alternate
sprites from one frame to another, resulting in an annoying flicker.
When using phosphor mode, a pixels colour is mixed with its previous value,
resulting in a blended image that doesn't flicker, emulating the
phosphoresence effect on a real television.
* Added 'pp' developer commandline argument to set the "Display.Phosphor"
property, and 'ppblend' to set the amount to blend pixels in phosphor
mode. Also added 'Alt p' key to enable/disable phosphor effect while
ROM is emulated. By default, phosphor mode is only used when necessary,
as specified in the stella.pro file.
* Renamed 'cheetah' commandline argument to 'cheat'.
* Added per-frame cheatcodes (4 characters long), which are evaluated
each frame.
* Added cheatcode GUI, where cheats can be named, edited, saved, etc.
* Cheat codes are now saved to stella.cht file and are automatically
reloaded when Stella starts.
* Improved 'joymouse' functionality. While in GUI mode, any axis will
simulate mouse movement, and any button will simulate a mouse click.
So the GUI can be completely navigated without a mouse.
* Improved CommandDialog and LauncherDialog wrt joymouse functionality.
These dialogs are used more than any other on devices without a mouse,
so joystick axis movement switches between GUI objects, rather than
simulating the mouse. This leads to much faster selection of objects.
* Added mapping of multiple SDL joystick axis to Event Mapping.
* Added joystick hat support, and mapping of multiple hats to Event Mapping.
* Added remapping of paddle emulation to the keyboard or joystick axis
(the mouse is still used by default for paddles). Related to this,
use more precise analog values when analog axis are mapped to
analog-type events (such as paddles).
* Treat joystick events as other types of controllers based on the virtual
port entry in stella.pro. This means that mappings for a joystick will
emulate other devices when necessary.
* Added 'sp' developer commandline argument, which sets the
"Console.SwapPorts" property and swaps the arrangement of the virtual
ports. Useful for games like "Raiders of the Lost Ark", where the
joysticks are normally swapped.
* Added ability to set which Stelladaptor device emulates which virtual
joystick port ('sa1' and 'sa2' commandline arguments, which accept
'left' or 'right').
* Fixed issues with jittering joysticks/mice causing weird events when
starting Stella.
* Added 'freq', 'tiafreq' and 'clipvol' commandline arguments, which
affect the sound subsystem (see manual for further info).
* Made state files completely cross-platform, both in terms of endianness
as well as CPU size (32 vs. 64 bit).
* Fixed crash with using 'cheat' and 'break' from the commandline.
* Implemented dynamic loading of OpenGL library.
2.0 to 2.0.1: (October 24, 2005)
* Added 'dirtyrects' support, which speeds up rendering for some Windows users.
* Fixed bug where taking snapshots would fail if the snapshot directory
wasn't specified.
* Made ROM launcher case-insensitive, so upper and lowercase names are now
mixed in the correct order.
* Fixed ZIP ROM support to search the archive for ROMs ending with either
.bin or .a26 (case insensitive).
* ROMs which don't have an associated properties entry are no longer named
'Untitled' in the Stella window or when taking snapshots. The actual
ROM name is now used.
* Changed minimum height of debugger to be 27 lines in the prompt, or approx.
700 pixels high. This should make using the debugger easier for users
with lower resolution monitors. Related to this, the RomWidget now uses
all possible vertical space when changing the debugger height.
* Fixed bug related to upgrading Stella and event mappings being incorrect.
Stella now detects this, and uses the default mappings. So upgrading
to version 2.0.1 means your event mappings will be reset.
* Fixed bug in loading debugger symbol files generated on different
operating systems.
* For the Windows port; added exe installer based on InnoSetup.
* For the Windows port; compiled icon into Stella, so it now looks like
a real Win32 application.
* For the OSX port, reverted window resize key combos back to 'Cmd =' and
'Cmd -' to match the 1.4.2 release.
1.4.2 to 2.0: (October 16, 2005)
* Added integrated GUI. Stella is now a fully graphical application, and all
settings can be changed dynamically while the application is running. That
means the commandline is no longer required (but support is still there
for those who want to use it).
* Added ROM launcher. You can now exit a game and start playing another one
from directly within Stella (you no longer have to quit Stella and
restart it).
* Because of the integrated GUI and ROM launcher, StellaX and KStella
(the Windows and Linux frontends) have been discontinued. The OSX
port now uses the launcher as well.
* Added an integrated debugger for game developers. This is currently
the first version of a debugger in Stella, but it's already quite
usable.
* Added new sound subsystem, which is much faster and more accurate.
Related to this, added stereo sound output (used by some homebrew games).
* Added ZIP support. Stella can now open ROM's compressed in zip
format.
* Added cartridge 'frying', thanks to Fred "batari" Quimby. This
emulates the action of turning the power button on and off on a
real Atari, often resulting in some strange effects.
* Added ability to edit current ROM properties from directly within
Stella, which can then be saved directly into the 'user.pro' file.
So creating a properties entry for a new ROM can be done without
any external tools.
* Added initial support for using Stella in an 'arcade-box'
environment without a keyboard. This consists of an in-game
menu for choosing common actions in Stella, as well as using the
joystick navigate the mouse pointer.
* Reworked properties system to use both a system-wide 'stella.pro' and
a per-user 'user.pro' properties files. Changes made by the user
and stored in 'user.pro' are no longer erased when upgrading Stella.
* Added support for cartridges with 3E bankswitching format.
* Added preliminary Cheat support.
* Added 'Alt/Shift-Cmd' z, x, c, v, b, n keys to enable/disable the
P0, P1, M0, M1, BL, PL bits in the TIA, respectively.
* Added 'Alt/Shift-Cmd .' key to disable all bits in the TIA.
* Added 'Alt/Shift-Cmd /' key to enable all bits in the TIA.
* Added 'Alt/Shift-Cmd g' key to switch dynamically switch between
software and OpenGL modes while Stella is running.
* Added 'Ctrl/Cmd r' key to reload the ROM currently being emulated.
* Added 'Alt/Shift-Cmd s' key to merge the current game properties
into the properties file.
* Added 'help' commandline argument. Launching Stella from the
commandline with no options now starts Stella in ROM launcher mode,
instead of showing help (as in previous versions).
* Added the following commandline arguments for developers:
"pro, type, ld, rd, tv, lc, rc, bc, format, xstart, ystart, width
height, cpu, hmove". Developers can consult the manual for
further details.
* Removed 'mergeprops' commandline argument, since there are now
dedicated keys to either save or merge game properties.
* Removed 'hidecursor' commandline argument. Stella will now
automatically decide when to use this setting.
* Fixed framerate when switching between NTSC and PAL modes. Stella
now uses the correct framerate based on the format of the ROM,
in terms of both video and audio.
* Added 'configure' support to the build process for both Linux and
Win32 (using MinGW). Developers can now use the familiar 'configure;
make; make install' commands to compile Stella.
* Further consolidation and integration of SDL. This should lead to
faster operation and a more consistent look for all ports.
* Fixed some 64-bit issues. Stella now compiles and runs correctly
on AMD64 and PPC64 Linux systems.
* Updated the Stella manual with pictures of the new integrated GUI.
1.4.2a to 1.4.2b: MacOSX version only (February 27, 2005)
* Added fix to mute sound while user is loading a new cartridge, or using
the Preferences window.
1.4.2 to 1.4.2a: MacOSX version only (February 21, 2005)
* Fixed problem in timing loop which was causing crashes after 15-30
minutes.
* Turned optimization on in compiler settings, which had somehow gotten
turned off.
1.4.1 to 1.4.2: (February 19, 2005)
* Updated the sound system. All popping and cracking sounds that previously
occurred at program start/stop and when entering/exiting menu or pause
mode have been eliminated.
* Fixed the gl_fsmax argument to mean "switch to desktop resolution on
fullscreen OpenGL", instead of to the maximum possible resolution (the two
are not always the same).
* Added Alt [ and Alt ] keys to dynamically adjust the sound volume during
emulation.
* Added Control 0, Control 1, Control 2, Control 3 keys to dynamically change
which paddle the mouse should emulate.
* Added video_driver argument. This accepts the different options that can be
specified for SDL_VIDEODRIVER (see SDL homepage for more information).
Basically, it eliminates the need to set the SDL_VIDEODRIVER environment
variable.
* Made sure screen is refreshed before taking a snapshot. This eliminates
the problem with new snapshots containing the text "Snapshot saved".