File: NEWS

package info (click to toggle)
atari800 5.2.0-2
  • links: PTS, VCS
  • area: contrib
  • in suites: forky, sid, trixie
  • size: 7,196 kB
  • sloc: ansic: 86,829; asm: 18,694; sh: 3,173; cpp: 2,798; java: 2,453; xml: 957; makefile: 727; perl: 334; pascal: 178
file content (1255 lines) | stat: -rw-r--r-- 50,705 bytes parent folder | download
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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
Version 5.2.0 (2023/12/29)
==========================

 New features:
 -------------
  * possibility of renaming the host device "letter" from previously hardcoded
    H: to any letter but C: (cassette), E:, K: and S:
    So if you have e.g. a program with hardcoded "D:" (as for diskette) you
    can now use it on a host device as well by renaming the host device to D:
    either via the Emulation configuration -> Host device settings menu
    or using command line option

    -Hdevicename <X>

  * little thing but useful (for me at least): tooltip in the settings
    menu that reminds users there are virtual host devices with
    automatic ATASCII<->ASCII conversions (mainly end-of-line character).

    Extremely useful for all text files including ATARI BASIC source code
    that can be stored using LIST "H6:PROGRAM.LST" and read back using
    ENTER "H6:PROGRAM.LST" (H6 = H1 with ASCII conversion, etc.).


Version 5.1.0 (2023/12/28) - released at SILK
==========================

Thanks to all the contributors (see git log for each commit author)

 New features:
 -------------
  * New command line options:

   -playbacknoexit = don't exit the emulator after playback finishes

   -joy-distinct

    Allows larger number of joysticks by not combining multiple physical
    devices into a single emulated joystick. For example this allows using
    keyboard to emulate one or two joysticks, and to use these in conjunction
    with physical SDL joysticks / controllers in order to play with more people
    than there are SDL joysticks. The same logic gets applied to LPT joysticks,
    these come after joysticks from keyboard emulation.

    Furthermore, the logic also gets applied to put SDL joysticks after LPT
    joystics even when the command line flag isn't set. Since LPT joysticks
    take precedence over SDL joysticks on the same emulated device, this takes
    a device that was completely ignored before and makes it useful now.

    The assignments are fixed at program start-up, after config file and command
    line flags have been taken into account. If the UI is used to enable or
    disable a keyboard-emulated joystick, this can cause an emulated joystick
    to be controlled by multiple physical devices, or by none.

  * Swap also SDL joysticks on AltL+J

    This swaps all physical devices connected to the first two emulated
    joysticks: the keyboard keys, the SDL devices, and the LPT devices.

    After the swap the real joystick / hat setting in the UI will appear swapped
    as well, but the keyboard setting won't (fixes #156).

  * Show all input events on a single line during recording

    This way the recording file alternates between two forms of lines: input
    lines which contain all keyboard and joystick events in one line, and output
    lines with the screen content digest. By filtering out the former, the
    latter can be aggregated nicely, e.g. using a command like this:

    zcat ${file:?} | grep -vE '^[0-9A-F]{8} *$' | uniq -c

    Consecutive frames of equal input state will be represented as a single row,
    with a repeat count giving an idea for how long the state was maintained.

  * RAM cartridges implementation (#184)
    - Many RAMCART and one SiDiCar cartridges
    - Support for writeable cartridges
    - CART monitor command
    - Make blank cartridge UI option
    - Reserved CART file ids for additional cartridge types currently unemulated by Atari800,
      added also the description of the types

  * added XEX reading in monitor (useful for patches)

  * Added H: device rename; save it in setup file (#204)

 Changes:
 --------
  * Altirra OS updated to v3.41
  * Altirra BASIC updated to v1.58
  * Fix buffer over-read in generate_partial_pmpl_colls (#165)
  * Atari ST/TT/Falcon optimizations
  * Fixed keystrokes for inserting/deleting of line/character (#179)
  * SIO now resets BRKKEY (fixes Arsantica 3 demo)
  * Fix for issue #199 (BBSB warp doesn't work)
  * Fixes CTRL and CAPS keys when using SDL12-compat library.
  * DOC/README.RPI explains clearly support for various RaspberryPis


Version 5.0.0 (2022/05/28) - released at Atariada.cz (yay!)
==========================

Big thanks to all contributors (see git log for each commit author)

 New features:
 -------------
  * AVI video recording (Alt+V hotkey) by Rob McMullen
    -vcodec command line arg can select video codec
    -aname and -vname CL args set patterns for sound and video recording
    -horiz-area & -vert-area command line args for controlling the image area
    -showstats (and -no-showstats) CL args and related config file param
    -compression-level for configuring PNG and ZMBV compression

  * MP3 audio and other audio codecs for audio recording (Alt+W hotkey)
    -acodec can select audio codec

  * New cartridge types supported:
    - 71: Super Cart 64 KB 5200 cartridge (32K banks)
    - 72: Super Cart 128 KB 5200 cartridge (32K banks)
    - 73: Super Cart 256 KB 5200 cartridge (32K banks)
    - 74: Super Cart 512 KB 5200 cartridge (32K banks)
    - 75: Atarimax 1 MB Flash cartridge (new)
    - 94: Ram-Cart 64 KB cartridge
    - 95: Ram-Cart 128 KB cartridge
    - 96: Double Ram-Cart 2x128/256 KB cartridge
    - 97: Ram-Cart 1 MB cartridge
    - 98: Ram-Cart 2 MB cartridge
    - 99: Ram-Cart 4 MB cartridge
    - 100: Ram-Cart 8 MB cartridge
    - 101: Ram-Cart 16 MB cartridge
    - 102: Ram-Cart 32 MB cartridge
    - 103: SiDiCar 32 KB cartridge
    See DOC/cart.txt for details.

  * support for remapping of all function keys (START, SELECT, OPTION etc)
  * support for comments in config file
  * tool for creating cart files from ROM files
  * support for 64-512K Atari 5200 bank-switchable carts with Bryan's design
  * support for the alternate variant of MaxFlash 1 MB.
  * support for single RaspberryPi OS package with HW specific binaries

 Changes:
 --------
  * video triple buffering changed to double buffering
  * fixed #74 by using proper getcwd()
  * gamma values in NTSC filter presets updated
  * MacOS build enables R: by default
  * fixed saving of config file
  * using zlib-provided crc32 if HAVE_LIBZ is defined (#72)
  * Altirra OS updated to v3.28
  * renamed "Switchable 5200" cartridges to "Super Cart"
  * fixed segfault when a 5200 Super Cart cartridge is removed
  * avoided unnecessary memory copying of 5200 Super Carts
  * fixed #88 issue in opening a cartridge
  * BUILD instructions and new README for Android
  * fixed segfault when exiting monitor
  * fixed BBSB's lift not working
  * avoided unnecessary memory copying in Bounty Bob cartridges
  * allow configuring --with-audio=win in non-DirectX targets
  * allow configuring --with-audio=sdl and --with-video <> sdl
  * atari_x11.c: don't auto-repeat the 'screenshot' key
  * build compatible with dash


Version 4.2.0 (2019/12/28) - released at SILK
==========================

 New Features:
 -------------
  * raw Pokey registers recording by Ivo van Poorten
  * new platform supported: FireBee
  * optional hiding of hidden files/folders in the UI file selector
  * libatari800 (Atari800 as a library) by Rob McMullen
  * R: device (many years old feature) enabled by default
 
 Fixes:
 ------
  * proper check if SDL joysticks are found (fixes #58)
  * Portrait mode for Android (related to #41)
  * RMW for Pokey
  * ROM OS path changes handled better
  * improved "Find ROM images" - now Atari800 reboots if necessary
  * fixed an old bug which caused freezing in the UI on Falcon

 New command line options:
 -------------------------
  * -pokeyrec and its children
  * -atari_files
  * -saved_files
  * -kbdjoy0 -kbdjoy1 -nokbdjoy0 -nokbdjoy1

 Plus many Atari Falcon specific fixes and improvements by Mikro.


Version 4.1.0 (2019/04/13) - release cooked at Atariada.cz (again :-)
==========================

 New Features:
 -------------
  * Atari800 now includes Altirra BIOS-es for all emulated systems: 400/800,
    XL/XE, and 5200; as well as Altirra BASIC. It is now possible to use the
    emulator without providing any ROM images.

  * The Altirra OS-es and Altirra BASIC can now be selected by users in the
    "System settings", if they want to use them. Previously Altirra OS was used
    automatically only when no other OS ROMs were found.

  * joyhat support for all four real joysticks, configurable in CLI/cfg/TUI


 Notable changes:
 ----------------
  * All documentation specific to building Atari800 on Windows has been moved
    from DOC/INSTALL to a new file, DOC/BUILD.windows. This document
    has also been expanded with a new chapter covering building Atari800 using
    MSYS2.

  * Ability to use the built-in EmuOS firmware has been removed. Users wishing
    to run Atari800 without providing OS ROMs now have an option of using the
    built-in Altirra OS-es, which are compatible with much more Atari software
    than EmuOS.
    At the same time, it is still possible to compile a version of Atari800
    without any OS ROMs built in, by means of the --disable-altirra_bios
    configure option.


 Port specific improvements:
 ---------------------------
 == Atari Falcon ==
  * More Videl/screen handling fixes
  * Ability to run Atari800 in an AES-less environment
  * Replaced C2P with MMU friendly and faster code
  * Atari800 should run on all TOS clones with XBIOS Sound API

 == Android ==
  * Fixed building of the Android target, broken in the previous release.
  * Fixed labels on console keys (unreadable on hi-res displays)
  * Fixed console keys press detection
  * Fixed "right-handed joystick" trigger press

 == Raspberry Pi ==
  * updated build documentation
  * find proper Broadcom GLes libraries
  * fixed bug in GRAPHICS 9 (shifted colors)

 == MS Windows ==
  * updated build documentation


 General Fixes:
 --------------
  * updated build documentation
  * it is possible to build atari800 out of source tree
  * unconnected host joysticks initialized properly, fixes the MULE game


Version 4.0.0 (2018/04/21) - release cooked at Atariada.cz
==========================

 This release brings four years of hard work of fellow Atari800 developers
 on improvements and bugfixes of our favorite Atari emulator.

 Ports to Atari ST/TT/Falcon, Android, Raspberry Pi and Sega Dreamcast
 have been improved (some of them greatly).

 CPU, SIO, ANTIC, GTIA, POKEY and PIA emulation has been corrected.

 Atari800 now includes Altirra BIOS so it is now possible to run *some*
 programs even without installing the original ROM files.

 The total number of changes is so huge that major version bump was necessary.

 Contrary to usual NEWS entries here follows a very incomplete list. It might
 be updated in later releases. In the meantime please read DOC/ChangeLog
 and the commit history in git for complete list of changes.

 This release contains breaking changes in color handling. Users updating from
 an earlier version should reset their color settings, or else the display
 might be unreadable. To reset the color settings, do one of these:
  * Select one of the presets available in the menu option "Display settings"->
    "Color preset"; or
  * Run atari800 with the -color-preset command-line option, e.g.:
    atari800 -colors-preset standard; or
  * Delete the emulator's config file (.atari800.cfg). Caution: you'll lose
    all Atari800 settings!


 New features:
 -------------
  * Support for loading of CAS images with "fsk" chunks - images of
    copy-protected tapes can now be loaded, with SIO patch being disabled.
  * Bit3 Full View 80 Column card emulation.
  * New cartridge type 68: "Atrax 128 KB cartridge".
    Previously existing cartridge type 17: "Atrax 128 KB cartridge" was based
    on a misconception - real Atrax cartridges have their address and data
    lines intermixed, so type 17 could not be used with actual ROM dumps. So,
    type 17 has been renamed to "Decoded Atrax 128 KB cartridge", and new type
    68 has been added, whcih now can be used for Atrax ROM chip dumps.
  * New cartridge types supported:
    - aDawliah 32 KB cartridge
    - aDawliah 64 KB cartridge

  * new command line switch "-volume" (for 16bit sound output) that can set
    the output volume of the Atari 800 emulator with value from 0 to 100.


 Notable Changes:
 ----------------
  * The Sound Settings option "Fragment size" has been renamed to less cryptic
    "Hardware buffer size".
  * Total emulator volume is lower now because the output has been shifted
    in order to fix a possible annoying humming sound in silence on some
    receivers (TV sets).


 Port specific improvements:
 ---------------------------
 == Atari ST/TT/Falcon ==
  * CPU emulation fixes for the assembly target (now synchronised with the
    mainline code, incl. the cycle exact mode)
  * Stereo POKEY support
  * Video enhancements: flicker-less rendering & RGB monitors support
  * SuperVidel support (that means much faster direct rendering using its
    8-bit chunky mode)
  * Many small fixes and optimisations

 == Android ==
  * Built-in Planetary Defense 2012 by Tom Hudson, an enhanced version of 
    the classic game with emulated touchscreen controls.
  * New feature: Native sound playback for post 2.3 devices, automatically 
    enabled. Eliminates stuttering and inconsistent timing of previous 
    implementation.


 General Fixes:
 --------------
  * Fixed computation of gamma adjustment - now it is applied to each of the
    three RGB channels separately.
  * On systems that support synchronized sound: Fixed the emulator crashing
    when Dual POKEY was enabled while High Fidelity POKEY was turned off.
  * Improve screen update routines in the Dreamcast port. They don't use
    DIRTYRECT anymore but are faster than the old routines when the whole
    screen is dirty.


Version 3.1.0 (2014/04/12) - release cooked at Atariada.cz
==========================

  Highlight of this release: Raspberry Pi port by Andrey Dj

  Hidden easter egg: on-screen keyboard in SDL by Christian Groessler

  All the following work has been done by Tomasz Krasuski:

 General new features:
 ---------------------
  * More accurate emulation of PAL colours (based on analysis of oscillograms
    of real PAL GTIA output)

  * Improved PAL blending, working on all grayscale pixels and is accurate now
    (can be enabled/disabled in "TV effect" display settings)

  * common sound layer implemented (SDL, JavaNVM, OSS, DOS) with synchro sound.

  * synchronized sound is now supported by both POKEY sound engines.

  * turbo mode (F12) is considerably faster

  * Added cartridge mapping used by "Turbo Hit"/"Atari Blizzard Hit".
  * Added MegaMax 2 MB cartridge mapping.
  * Added read-only support for the 4 MB Flash MegaCart mapping.
  * Added minimal support for The!Cart.

 General Fixes:
 --------------
  * fixed possible unnecessary cartridge bank switching
  * fixes and clean up in Java port 
  * fixed diagnostic cartridge cold start (doesn't send Start+Option)
  * fixed two old bugs in DOS sound (pitch being wrong and sound missing)
  * fixed keyboard not working for ncurses video and OSS sound


Version 3.0.0 (2013/03/03)
==========================

 New features:
 -------------
  * Option to automatically save configuration on exit
  * More settings saved in configuration:
    - currently attached tape file
    - cartridge settings, including currently attached cartridges
    - state of R-Time 8
    - system settings, including Mosaic/Axlon RAM size
  * New Tape Management menu - can now create blank tape images, switch tape
    to read/write in order to save additional data at the end of the current
    tape image, rewind/fast forward the tape, and mark it as read-only. See
    DOC/USAGE for details.
  * Displaying tape position when "Show sector/block counter" is enabled.
  * Reworked Cartridge Management menu - now displays filename of the
    attached cartridge.
  * Option to disable restarting of the machine after cartridge change.
  * When attaching a cartridge from the command line, cartridge type can now
    be specified using the new -cart-type and -cart2-type options.
  * New cartridge types supported:
    - OSS 8 KB cartridge
    - OSS two chip 16 KB cartridge (043M)
    - Blizzard 4 KB cartridge
    - AST 32 KB cartridge
    - Atrax SDX 64 KB cartridge
    - Atrax SDX 128 KB cartridge
    - Turbosoft 64 KB cartridge
    - Turbosoft 128 KB cartridge
    - Ultracart 32 KB cartridge
    - Low bank 8 KB cartridge
    - SIC! 128 KB cartridge
    - SIC! 256 KB cartridge
    - SIC! 512 KB cartridge
    - Standard 2 KB cartridge
    - Standard 4 KB cartridge
    - Right slot 4 KB cartridge
  * The configure script can now auto-detect some of the available display and
    sound interfaces before compiling.
  * Option to enable XEP80 added to The Emulator Settings menu.
  * Emulation of the 1200XL, including console LEDs, no built-in BASIC, the
    F1-F4 keys (mapped to arrow keys in the SDL version) and the on-board
    J1 jumper.
  * Emulation of the XE Game System, including the built-in game and
    detachable keyboard.
  * Revamped the Select System menu (now called System Settings). Can now
    select many system settings, including RAM expansions, OS and BASIC
    revision, and more.
  * System ROM settings moved to a separate menu. Now it stores paths to all
    known official revisions of the Atari OS, the 5200 BIOS, all BASIC
    revisions, and the XEGS built-in game. The OS revision to use is chosen
    automatically when selecting a machine type (for example, the 400/800 OS
    PAL or NTSC version is chosen depending on the selected TV system).
  * 400/800: Emulation of all RAM sizes achievable with different combinations
    of the CX852 and CX853 modules - from 8 to 48 KB.
  * Emulation of 32/48KB memory sizes in the XL/XE mode, compatible
    with memory expansions for the 600XL manufactured by RC Systems.
  * Emulation of the MapRAM hardware hack.
  * Display settings: "Hue" renamed to "Tint". Tint now configurable also in
    PAL mode.

  New Android port features:
  --------------------------
  * Renamed Atari800 Android port to "Colleen"
  * Implemented extended key remapping
  * Implemented the B: device (8-bit games can reach the web now)
  * Support for Xperia play keycodes added
  * Remapped dpad enter to break
  * Added paddle emulation
  * Optimized file selector, allow roaming outside of ext. storage dir
  * Added an exclusion border for paddle mode
  * Implemented state saving
  * Implemented Planetary Defense mode, a Koala Pad click-where-I-point mode
  * Natively supported UI on post-Honeycomb devices
  * Fixes for Jelly Bean (audio stuttering, keypad dialogs, soft keyboard)
  * Added new dialog for cartridge type selection
  * UI fine tuning

 General Fixes:
 --------------
  * Bugfixes in cassette emulation - works reliably even for tape images with
    long (> 4096 B) blocks.
  * Fixes in save states - loading of save states works correctly even with an
    attached bank-switched cartridge or with an Axlon/Mosaic RAM expansion.
    Note 1: Format of the state files has changed. Old save states can still
    be opened, but newly-created ones cannot be opened in older versions of
    Atari800.
    Note 2: Tape position is not restored on loading of save states. Do not
    save state during tape loading/saving - it won't work as expected.
  * "Disable BASIC when booting Atari" no longer emulates pressing of the
    Option key when in the 400/800 mode.
  * Fixed a bug with BASIC sometimes disabling itself when switching system
    type to 400/800
  * Minor bugfixes in file selector
  * Fixed emulation of SpartaDOS X piggyback cartridge functionality
  * "Save Screenshot" fixed - it saved an interlaced screenshot instead of a
    normal one.
  * SDL version: Swapped mapping of right and middle mouse buttons, to make it
    identical to the X11 and Win32 ports.
  * Monitor: fixed displaying/disassembling of memory area $D000-$D7FF - with
    the new supported cartridge types, code may reside on page $D5, and now it
    can be debugged.
  * SDL version: fixed a blue border when in OpenGL BGRA32 mode.
  * Minor fixes in parsing of command-line options.
  * Rewritten XEP80 emulation - now more accurate and supports switching
    between NTSC/PAL modes with correct aspect ratio. XEP80 emulation now
    requires a charset ROM image, path to which should be set in the
    XEP80_CHARSET line in the config file.
  * Fixed operating system patches not working with all official revisions of
    the OS.
  * Fixed emulation of separate ANTIC/CPU access to XE RAM when Self-Test is
    enabled.
  * Fixed the emulator menu sometimes being displayed incorrectly (missing
    font) when running without an OS ROM image.
  * Improved accuracy of generated colours in PAL mode.
  * Fixed emulation of the H: read operation - Turbo Basic's BLOAD now works
    on H: devices.


Version 2.2.1 (2011/04/28)
==========================

  Quick update fixing some annoying bugs from the previous release
  and adding some new host screen optimizations and improvements:

  * X11 target can be compiled again
  * SDL sound on *BSD should work
  * older compilers (DOS/BeOS) should compile again
  * many SDL/OpenGL workarounds for Microsoft Windows libSDL bugs
  * IDE fix and CF emulation
  * some small Android fixes and new arrow key derotation workaround
  * UI sliders used for more settings (video area/shift options)
  * several command line options renamed to be more intuitive (see the USAGE)
  * automatic detection of host screen aspect ratio
  * added option for disabling OpenGL Pixel Buffer Objects
  * added option for enabling video synchronization with vertical retrace
  * added option for selecting pixel format in OpenGL
  * now saves the Show Speed/Disk Activity/Sector Counter in the settings


Version 2.2.0 (2011/04/02)
==========================

 Another update after two long years. A lot of changes and major improvements:

 New features:
 -------------
    * SDL features synchronized sound (GTIA+POKEY digisounds play properly now)
    * SDL display enhancements (hardware accelerated using OpenGL)
    * DirectX display enhancements (also hardware accelerated)
    * Improved NTSC and PAL colours (presets: Standard/Deep Black/Vibrant)
    * Austin Franklin 80 Column card
    * Emulate the Alien Group Voice Box I and II
    * Added support for F12 turbo mode.
    * IDE emulation (compatible with MyIDE)
    * New Android port by Kostas Nakos (available in the App Market already)
    * Auto frame skip for slower devices (currently enabled for Android only)

 Fixes:
 ------
    * trak-ball (cx22) emulation fixed
    * SDL: leftmost column missing in 16/32bpp fixed
    * DirectX default for Win32 SDL

  SDL Display enhancements:
  -------------------------
1. Fullscreen resolution - this gives a list of all available resolutions from 
which a user chooses one. The default resolution is the next-bigger-than 
336x240.

2. Fullscreen: yes/no - obvious. Window size is independent from the chosen 
fullscreen resolution and can be changed by resizing the window.

3. Rotate sideways: yes/no - rotates the screen by 90 deg. Works as earlier, 
ie. only for "standard" display (no NTSC filter, no 80 column card).

4. Stretch - this option controls how display stretching (scaling) is 
performed. We can select one of:
a) none - no stretching at all
b) integer multiples (default) - width and height will be resized by 1x, 2x, 
3x etc.
c) full - stretching is unrestricted, display will cover the entire screen.

5. Keep aspect ratio - this option controls how the display's aspect ratio is 
corrected. 3 options available:
a) disabled - no aspect ratio correction, display will fill entire 
screen/window,
b) 1:1 (default) - width and height will be multipled by the same value
c) like real TV - display will be resized to reflect pixel aspect ratio of a 
real Atari connected to a TV. Atari pixels are not square; pixel width-to-
height ratio is about 0.857 for NTSC and 1.039 for PAL. This option reflects 
that.

6. Host display aspect ratio - here the user enters aspect ratio of his 
monitor. This value is used to properly compute display aspect ratio when 
"Keep aspect ratio" is set to "like real TV". Set it to 4:3 (default), 16:9, 
1.78:1 etc.

7. Horizontal view area - this option sets the size of Atari screen area 
visible horizontally. Choose one of:
a) narrow - 320 columns wide,
b) normal (default) - 336 columns wide,
c) full - 384 columns
d) custom - lets the user enter any value between 160 and 384.

8. Vertical view area - similar to above:
a) short - 200 lines high
b) normal (default) - this setting is TV-system-dependent. In PAL this makes 
all 240 lines visible, while in NTSC top and bottom 8 lines are hidden, which 
leaves 224 lines visible. I've made this as such because apparently on NTSC 
TVs not all 240 lines are visible. The value of 224 was taken by taking full 
NTSC height (480, divided by 2) and cutting top and bottom 3.5% (different 
sources say 3.5% is the "action-safe" overscan area).
c) full - 240 lines high
d) custom - any value between 100 and 240.

9. Horizontal offset - when amount of columns displayed is less than 384, this 
option "shifts" the visible screen area. Setting to higher than 0 shows more 
of the right side, and lower than 0 shows more of the left side.

10. Vertical offset - similar to above.

Additionally, the Alt+Shift+X shortcut that switches beetween standard<->80 
column display is now also available as "Display settings->80 column display 
if available: yes/no".

The Alt+B switch however has been removed - since setting black/white colours 
can be done in Display settings anyway.

All new options are also available from command line and are saveable in 
configuration.

  New Android port features:
  -------------------------
- Efficient performance
- Uses Opengl ES to handle scaling of the graphics
- Runs on Android 1.6+
- Novel on screen touch joystick control for less hand cramps & intuitive 
  control
- Supports multi touch input
- Supports hardware keyboard with key remapping for joystick input
- Supports the Wii Controller for joystick input
- Supports the "move to SD" feature
- Sound emulation very good but not perfect yet
- Bypasses the emulator UI menu completely - goes 'the android way' about it
- Available in the App Market: market://details?id=name.nick.jubanka.atari800


Version 2.1.0 (2009/03/27)

 The promised completely new next-gen Atari800 was postponed so this
 is another incremental update of the good old Atari800. Let's see
 what we have added and improved in the last 20 months:

 New features:
 -------------
    * added Axlon and Mosaic RAM expansions for Atari 400/800
    * added emulation of 1400XL, 1450XLD, MIO and Black Box
    * added support of .PRO copy-protected disk images
    * implemented tape loading with variable bitrates
    * implemented cassette writing via hardware registers
    * added switching between NTSC and PAL color palettes
    * added emulation of XEP80 and a prototype 80 column card
      for the Atari 1090 (SDL only currently)
    * added emulation of CX85 numeric keyboard (Java and SDL only)
    * event recording added (-record, -playback): save your game walkthrough
      using the "-record mygame.dat" and later impress your friends by
      your game skills or highest score using the "-playback mygame.dat"
    * NTSC Filter option added to UI
    * -directmouse added to SDL and X11 (used for -mouse pad or koala)
    * monitor supports arrow keys - e.g. up-arrow for history
    * SDL: interpolated scanlines (use -scanlinesnoint to disable)
    * SDL: added -mouse, -mousespeed, -grabmouse (also Alt+M)
    * SDL: visual configuration of keyboard joysticks layout in the UI
           (F1 -> Controller Configuration -> Define layout)
           default mapping changed to 4,8,6,5 (joy0) and A,W,D,S (joy1)
    * R: device can be serial-only, network-only or both (selectable)
    * R: device now supported on MS Windows and Dreamcast as well
    * a completely new port to Java using NestedVM, running also as an applet
    * Falcon/TT: removed Devpac dependency in asm files (now gcc friendly)

 Fixes:
 ------
    * fix for "Ilusia" demo
    * better GTIA bug mode emulation
    * POKEY sound: nonlinear mixing (not enabled by default), two-tone filter
    * fixed POKEY registers: ALLPOT, IRQEN and STIMER
    * various Atari5200 fixes
    * fixed Atrax cartridge bank switching
    * fixed sound recording to WAV
    * -showspeed fixed, now shows speed <= 100% correctly
    * major source code cleanup, compiles with -pedantic etc.
    * Save State: added support for Axlon and Mosaic (version increased to 5),
                  fixed PBIM12 restoring, fixed PAGED_MEM error with POKEY,
                  color palette restoring fixed
    * SDL: using DirectX driver on MS Windows (much faster),
           fixed stdout.txt on MS Windows,
           fixed broken Caps Lock key handling,
           -audio16 fixed
    * Dreamcast recognizes the TAB key
    * MS-Windows: Shift+Control fixes
    * dropped SVGAlib target - use SDL instead

 Thanks to Perry McFarlane and other developers for their contributions
 to this release. Enjoy Atari800!


Version 2.0.3 (2007/07/11)

 This is probably the last release that is based on the source code
 written by David Firth back in previous century.
 A completely new Atari800, written from scratch, with even better
 portability and maintainability is being planned so stay tuned!

 Changes:
 --------
 * new style of artifacting
 * corrected PMG in bizarre ANTIC/GTIA modes
 * added 128 KB SpartaDOS X cartridge type
 * added support for QVGA landscape smartphones, added the virtual keyboard
 * new command-line option "-win32keys" for keyboard layouts different from US
 * MS-Win: run the emulator in a window ("-windowed" on the command line)
 * middle button support for ST and Amiga mice in X11 and MS-Win targets


Version 2.0.2 (2006/04/08)

 There is a new NTSC emulator available thanks to Blargg (Shay Green) 
 (http://www.slack.net/~ant) and NewRisingSun who made the original algorithm.
 You can access it with -ntscemu in the SDL port only.  
 Only 640x480x16 is supported and will be invoked automatically.
 You will need a fast processor (~700 MHz or so).
 This code should be considered experimental but I hope you
 will try it and report any problems.  Please experiment with the 
 many settings and compare them with a real NTSC Atari if you have one.
 If you come up with better settings than the current defaults please provide
 feedback. Try -ntsc_burst 0.70 in Drol, Choplifter and Ultima.
 Please read DOC/USAGE and check -help.

 Changes:
 --------
 * Blargg's NTSC composite video emulator, based on NewRisingSun's Algorithm.
 * small fixes in ANTIC/GTIA emulation
 * fixed DCM image handling (broken in 2.0.0)
 * added emulation of Atari XL/XE with 192 KB RAM
 * integrated SEGA Dreamcast port
 * Atari Inverse key mapped also to "`" (backquote) in SDL port (MS Win users)
 * some minor improvements
 * much more DOC/TODO


Version 2.0.1 (2006/01/02)

 Just a quick UI bugfixes release.


Version 2.0.0 (2005/12/31) - celebrating decade of Atari800 development!

 This release brings major source code clean up, numerous bug fixes and
 many great new features and important improvements. 98% of changes since
 last release have been made by Piotr Fusik - admire his dedication
 to Atari800 project while you will be browsing through the impressive list
 of changes below.

 Run-time configuration (via the .atari800.cfg file) has been improved.
 All configuration options are now available in the User Interface.
 Remember to use "Save configuration file" when necessary.

 If you are new to Atari800, press F1 and select "Emulator Configuration"
 to configure the ROM images. This can be easily done with
 "Find ROM images in a directory".

 DISK_DIR, ROM_DIR, EXE_DIR and STATE_DIR configuration options are no longer
 supported in this version. You need to re-select your directories
 using "Emulator Configuration" -> "Configure directories".

 Changes:
 --------
 * auto-starting any file supported by the emulator
   via the command line, User Interface or Alt+R
 * direct loading of Atari Basic programs:
   - SAVEd (*.BAS) programs
   - LISTed (*.LST) programs with auto-detected Atari, LF, CR/LF or CR
     line terminators
 * numerous fixes and improvements in H: device emulation
 * fixed a bug in DMACTL emulation
 * cycle-exact Read-Modify-Write instructions for all GTIA registers
 * Atarimax cartridges
 * correct emulation of the RESET key in 400/800 (it generates RNMI)
 * improved DCM format support
 * improved PERCOM emulation (helps non-standard disk images)
 * removed questions that appeared in the console window when no configuration
   file was found; now a default configuration is written and you can
   modify it using User Interface; the easiest way to configure ROMs is
   "Find ROM images in a directory" which looks for common names of ROM images
 * DISK_DIR, ROM_DIR, EXE_DIR and STATE_DIR configuration options replaced
   with ATARI_FILES_DIR and SAVED_FILES_DIR
 * sound recording now works (was completely broken)
 * new in User Interface: "Emulator Configuration", "Controller
   Configuration", "Save Interlaced Screenshot", "Uncompress Disk Image"
 * improved "open file" selector:
   - sorts case-insensitively
   - sorts directories whose name begins with a dot
   - starts on the previously selected file
   - you can move to a file by pressing its first letter (works in menus, too)
   - path of the listed directory is shown at the top of the screen
 * improved "save file" filename selection:
  - no longer limited to 32 characters
  - directory appears in the edit box
  - Tab invokes directory browser
 * "Make Blank ATR Disk" creates standard Single Density disk image
 * shortcut keys (Alt+letter, F9, ...) work in User Interface
 * new "-screenshots <pattern>" command-line option
 * replaced "-rtime <onoff>" with "-rtime" / "-nortime"
 * replaced "-hdreadonly <onoff>" with "-hreadonly" / "-hreadwrite"
 * new monitor commands: "LABELS", "LOOP"
 * "C", "M" and "S" monitor commands support hardware registers
 * improved "SHOW", "DLIST", "D" and "A" monitor commands
 * fixed memory leaks, buffer overflows, Y2K and Y2100 bugs
 * fixed GCC 4 compilation error and warnings
 * fixed sound in X11 version (feedback is welcome)
 * much faster display in the X11 version
 * MOTIF and XVIEW versions are now compilable
 * standard key mappings for F6-F10 in DirectX, SDL, SVGALIB and X11 versions
 * implemented Atari 5200 keys in DirectX, SDL, SVGALIB and X11 versions
 * WinCE version ported to Smartphones
 * DirectX version can be compiled with MSVC 6
 * stereo now works in DOS ports
 * fixed "-rotate90" and Alt+B in SDL version
 * greatly improved BASIC version:
   - supports sound
   - supports all interrupts
   - timing much closer to real Atari
   - Clear Screen, Backspace, Tab and Bell converted from ATASCII to ASCII
   - improved "K:" input
   - much smaller executable (does not include unused code)
 * greatly improved CURSES version:
   - support for PDCurses
   - small fix for NCurses
   - generates screen basing on the Display List
   - fixed Tab, Backspace, Insert, Delete, Home, F2, F3, F4, F8 and Ctrl+letter
   - fixed "-wide2" mode
   - Alt+letter shortcuts work on PDCurses
   - bitmap graphics emulation is now disabled by default
     (smaller and faster executable), but can be enabled with "configure"
 * new experimental PlayStation 2 port
 * improved "configure" script
 * SDL keyboard joysticks can be enabled/disabled in the UI (Controller Config)
 * many small fixes and major source code clean up


Version 1.3.6 (2005/04/30)

 Changes:
 --------
 * different color palette used by default
 * PNG screenshots added
 * added sector counter and speedometer
 * F6 is Atari HELP key on Curses, Falcon and in X11
 * added missing combinations of ANTIC modes with GTIA modes
 * keyboard joystick works in more games (doesn't pause the game) in SDL
 * mouse joystick emulation works in X11
 * cassette loading by hardware registers (Ninja and Elektraglide
   are examples of games that load correctly now)
 * blank boot ATR disk image can be created in the Disk Management menu
 * many small fixes and major source code clean up


Version 1.3.5 (2004/12/30)

 Changes:
 --------
 * keyboard handling improved in SDL (working on non-US layouts, more
   keys recognized)
 * keyboard handling improved in X11 (crash fixed, auto-repeat working)


Version 1.3.4 (2004/12/27)

 Changes:
 --------
 * security fixes (buffer overflows) and compilation errors (GCC 3.4)
 * ANTIC timing fix for Timeslip game
 * fix in UI fileselector (crashed if there were no files)
 * Amiga port updated


Version 1.3.3 (2004/08/08)

 Changes:
 --------
 * ANTIC mode 2 + GTIA mode 10 - half pixel shift fix
 * Amiga port updated
 * OS/2 port updated
 * DOSVGA port updated - joystick definition read again
 * X11 port has improved keyboard support (Ctrl+Pause, left Ctrl for joy button)
 * SDL port updated: joysticks emulated on keyboard can be freely edited
   now with SDL_JOY_0_<direction> and SDL_TRIG_0 (same for JOY_1/TRIG_1)
   config file parameters that expect values from SDL keySyms.


Version 1.3.2 (2003/12/20)

 Highlights since previous release:
 ----------------------------------
 * R: can now be hooked to a real serial port (no runtime config yet)
 * various ANTIC and POKEY fixes for perfect software compatibility
 * disk and cartridge info saved in the state files
 * casette handling greatly improved
 * even more cartridges supported (40 now!)
 * some rare buffer overflows fixed


Version 1.3.1 (2003/09/04)

 Highlights since last 1.3.0 release:
 ------------------------------------
 * rewritten and much improved configure script
 * new cartridge types supported (38 types now!) - see DOC/cart.txt
 * Disk Sets - loading and saving of D1-D8 set is possible in the UI
 * R: as the Atari850 serial port emulation added - see DOC/r_device.txt
 * updated and improved m68k assembler emulation of the CPU
 * XF551 HighSpeed transfer emulation added


Version 1.3.0 (2003/02/10)

 Highlights since last 1.2.5 release:
 ------------------------------------
 * new HiFi sound (you may en/disable it in the UI)
 * new cycle-exact Antic emulation
 * "H:" emulation complete (including subfolders)
 * Paged memory implementation (fast XE bank-switching)
 * new configuration file name and location ($HOME/.atari800.cfg)

Detailed list of changes follows:

* configuration file ("atari800.cfg") related changes:

  1) configuration file is renamed to ".atari800.cfg" by default (note
     the leading dot in the name, similarly to most other configuration
     files of programs on Unix platforms). On DOS/TOS (FS 8+3 limitation)
     the old "atari800.cfg" will be supported.

  2) RT-Config (the module in Atari800) tries to search the configuration
     file in user's home folder first (environment variable HOME should
     point there). If it's found then it's used. If it's not there then
     RT-Config tries to open system wide configuration file (by default
     it's "/etc/atari800.cfg"). Please note that the system wide file is
     not updated by Save function of RT-Config because it's expected
     that this file is read-only for regular user.

  3) RT-Config can also be told where your configuration file is by
     using the "-config <filepath>" command line parameter. If the file
     is not there yet it's created. So it's quite easy to let Atari800
     create a test config file and compare it with your current config
     or to have several config files for various game/demo/application
     uses of the Atari800 emulator.

  4) Some config file options were renamed or otherwise changed some
     time ago already but they were still recognized. This is no longer
     true so better create a new config file from scratch.

  5) There are two new important switches - "ENABLE_NEW_POKEY" and
     "STEREO_POKEY" so better create new config file so you get these
     options configured properly.

* new Sound:

  The new MZ POKEY emulation is now enabled by default on all ports.
  Also the STEREO sound (Dual POKEY) is compiled in by default
  but is not enabled (so there's a single POKEY by default but you
  can enable the second one very easily in the User Interface (press F1).

  Both can be en/disabled in the configuration file (call atari800 with
  the "-configure" parameter to reconfigure these and other options).

  Win32 and SDL ports also recognize a new cmdline switch "-audio16"
  that switches to 16-bit sound.


Unreleased version 1.2.10 (2003/02/09)

* autoconf 2.5x required for building the source fetched from CVS.
  However, released source code comes with prebuilt configure script
  so you shouldn't even notice this change.

* SDL version contains the same keyboard IRQ fix that was recently
  done in the general input core. In human language: Super Pacman 5200
  will not crash after SHIFT and * keypress.

* On-the-fly change of POKEY emulation core (old Ron Fries' or new
  Michael Borisov's). Compare the new HiFi sound with the previous one.


Unreleased version 1.2.9 (2003/01/27)

* New cycle-exact ANTIC/GTIA emulation. Enabled by default, disable by
  ./configure --disable-cycleexact

Unreleased version 1.2.8 (2003/01/27)

* Paged memory implementation finished. Disabled by default, enable by
  ./configure --enable-paged

Unreleased version 1.2.7 (2003/01/27)

* Harddisk emulation now complete including support for subdirectories.

Unreleased version 1.2.6 (2003/01/27)

* New sound core and 16 bit sound support -- high sound quality but slower.
  Use -audio16 option to enable 16 bit sound and -quality <level> to set sound
  quality (level > 0 enables new sound core) on the win32 port.
  Consult port specific doc for command line details.

Version 1.2.5 (2002/12/02)

* UI - the SpaceBar in disk management switches between the RW and RO flags
  (this didn't work for a long time, now fixed). Please note that this RW/RO
  switch is just temporary and does not change the writeprotect flag of ATR
  images. Besides, it cannot override this flag so you actually can't mount
  a writeprotected ATR image read/write using this Space Bar toggle.

* Atari800 compilable under OS/2

* MultiJoy4 interface and Amiga/AtariST right mouse button supported

* 13 new cartridge types supported

* ANTIC mode E + GTIA mode 9 added (used in "Unconventional 2k", "Ass Kisiel")


Version 1.2.4 (2002/08/07)

* 576 and 1088 kB RAM supported (selection available in the UI)

* separate Antic access to extended memory for 130 XE and 320 Compy Shop

* 256K and 512K XEGS carts

* SDL version now
  - cleans up after unsuccessful initialization
  - supports "-nosound" and "-dsprate"
  - continues to run even if sound initialization failed

* command line options "-help" and "-v" ("-version") now work better
  in most supported ports.


Version 1.2.3 (2002/07/08)

* 16 kB RAM machines (Atari 400/600XL) emulated

* LPTjoy support added to the SDL port

* SDL port is generally much improved. To get list of SDL specific options
  start the SDL version of Atari800 with -help.

* casette image loading accessible from UI

* -palette option (for loading an alternate ACT color palette file) fixed.

* channel 1 in stereo mode fixed

* antic: NMIST bit 5 fixed (is always zero)

* input: second button in 5200 joystick generates "Break key" IRQ
  (you can now jump in "Moon Patrol" - use Shift)

* monitor: "DLIST" now accepts address as an argument

* antic: Dirty update scheme that allows slower machines to run Atari800
         at full speed now! See DOC/HOWTO-DIRTYRECT for more information.

* pokey: allow high-speed disk i/o (Alpha-Load works, thanks to Paul Irvine)


Version 1.2.2 (2001/12/31)

* Falcon .s files had to be renamed to .asm, otherwise the vga
  port could not be built.


Version 1.2.1 (2001/12/31)

* serious memory overflow bug fixed (caused crashing of X11 port
  and probably also other unexpected bugs or problems)

* joysticks in SDL port fixed and improved.

* RPM's .spec file fixed.


Version 1.2.1pre0 (2001/12/17)

* Falcon port configurable and buildable again

* SDL support for 32-bit display, screen width switching (LALT+g)

* documentation updated (still can be much improved :)

* util/ folder contains new sethdr and act2html utilities

* configure process is non-interactive (doesn't ask any questions)

* RPM .spec file for easy building of Atari800 from source .tar.gz


Version 1.2.0 (2001/11/29)

* completely new SDL port (use ./configure --target=sdl) that should run
  on most/all platforms/OSes SDL supports (http://www.libsdl.org/)

* completely new WinCE port

*** New features:

* support for Express, Diamond, SpartaDOS X, XEGS, Action!, BASIC XL
  and other cartridge types (see cart.txt for complete list).
  The "-cart" option runs CART files and all types of raw images.
  "-rtime 0" disables emulation of R-Time 8.
  Thanks to:
  - Jindroush, who described most of the cartridge types
  - Nir Dary, for information on 8*8 KB D50x and OSS 'M091' cartridges

* mouse can emulate following devices
  (in parentheses the option that enables emulation):
  - paddles (-mouse pad)
  - Atari Touch Tablet (-mouse touch)
  - Koala Pad (-mouse koala)
  - Light Pen (-mouse pen)
  - Light Gun (-mouse gun)
  - Amiga mouse (-mouse amiga)
  - Atari ST mouse (-mouse st)
  - Atari Trak-Ball (-mouse trak)
  - joystick (-mouse joy)
  For Atari 5200 you can use "-mouse pad" (good for Gorf and Kaboom)
  or "-mouse joy" (good for Missile Command and Super Breakout).
  Use "-mouseport <1-4>" to select the Atari port.
  Use "-mousespeed <1-9>" to select speed (default is 3).

* cassette recorder emulation! (experimental)
  Currently only reading works and only with SIO patch.
  Supported are:
  - CAS files - the digital cassette image format by Ernest Schreurs.
    The format handles different lengths of blocks, gaps, non-standard blocks,
    baud rates and more. See http://home.planet.nl/~ernest/home.html
    for the excellent WAV2CAS converter, which includes detailed description
    of the format. Atari800 supports the format only partially at the moment.
  - raw files - any file can be attached, as if it has been written
    to the C: device (standard Atari OS format).
  No UI available yet. Attach a file with "-tape filename"
  or "-boottape filename" (emulator presses Start and Space to boot the tape).

* SIO, H: and P: patches are now independent and can be toggled at run-time

* the H: device no longer replaces C:.
  The H: device is now added to HATABS in RAM, and the escape codes
  are put in 0xd100-0xd1ff, so H: doesn't modify Atari OS at all.

* "-basic" and "-nobasic" work for Atari 800 (Atari BASIC is attached
  as a cartridge in Atari 800)

* devices: added open mode 9 (append) for H: device

* input: the illegal joystick positions (e.g. left+right) are not passed
  to the emulated Atari (good for "Mario Bros.")

* monitor:
  - "C 600 ABCD" does the same as "C 600 CD AB"
  - 1 KB boundary is respected by "DLIST"
  - "POKEY" command
  - "S" without parameters repeats last search

* ui: added Atari Settings (enable/disable BASIC, R-Time 8, SIO patch, H:, P:)

*** Compatibility improvements:

* antic,gtia: the background color can be changed inside a scanline.
  Currently implemented only for blank lines without PMG.
  Try the "Partyland" part of the "Bitter Reality" demo.

* antic: corrected timing of DLISTL/H ("Spelunker" works)

* binload: 0x31 stored at 0x300 ("Studio Dream" loads now)

* cpu: Read-Modify-Write (RMW) instructions (ASL, INC, etc.) store
  the unmodified value of $D01A before they store the modified value.
  Now you can see the white dots made with INC $D01A.

* cpu: on reset, the I flag is set (now reset works if stuck in interrupts)

* devices: replaced "dGetByte(0x2e)" with "regX" in H: handler routines
  (fixes problems with Atari BASIC's GET/PUT/INPUT/PRINT)

* pia: & 0x3f on read PACTL and PBCTL

* pokey: potentiometers emulation improved: POTGO and ALLPOT registers
  and bit 2 of SKCTLS implemented, "Tree Surgeon" no longer hangs

* pokey: true RANDOM emulation (both 9- and 17-bit poly) !
  Not using rand() anymore. Try the "Bank Bang!" game.

* pokey: fixed STIMER (speech in "Mirax Force" is better, but still
  not perfect)

* pokey: a few fixes for stereo detection routines (helps "Sheol",
  "Total Daze", "Crockett's Theme"...)

* pokey: fixed SERIN ("Timeless Announcement" loads now)

* pokeysnd: added exact poly9_lookup and poly17_lookup, removed bit17
  (which was initialised with rand()) saving ca. 100 KB of memory.
  Do you hear any difference?

* sio: made double density ATR images compatible with SIO2PC

*** Bug fixes:

* cpu: fixed wrong extern

* devices: fixed Device_isvalid (problems with trailing 0x9b)

* rtime: added "byte &= 0x0f" to prevent out of bounds accesses
  to regset[]

* sio: corrected and added checks if drive number is in range 1-8

* sio: Format Disk rewritten. Now it can resize both ATR and XFD images.
  The ATR header is being updated. Double density format works.

*** Optimizations:

* antic: optimized ANTIC_Load and character modes

* atari_vga: no unnecessary Atari_DisplayScreen() calls if "-refresh" is used

* cpu: slight optimization of ROL and ROR

* gtia: optimized players in new_pm_scanline

*** Clean-ups in sources (for programmers):

* created cartridge.[ch] and rtime.[ch], removed supercart.[ch]

* created input.[ch] to handle keyboard, joysticks and mouse

* removed enable_rom_patches, added enable_h_patch and enable_p_patch.
  Original OS is saved in atari_os. Removed SetSIOEsc() and RestoreSIO().
  After changing enable_*_patch call Atari800_UpdatePatches().

* replaced following variables: machine, mach_xlxe, Ram256, os,
  default_system and enable_c000_ram with only two: machine_type and ram_size
  (ram_size is in kilobytes, and there're #define's for 320 Rambo/Compy).
  There are no more Initialise_Atari... routines. Instead, set machine_type
  and ram_size and call Atari800_InitialiseMachine().

* moved main() to platform-dependent code,
  created Atari800_Initialise and Atari800_Frame

* removed i386 asm tricks

* diskled: rewritten to be cleaner and more flexible

* pokey: SKSTAT variable renamed to SKCTLS to avoid confusions
  (it's the write-only, not the read-only Pokey register)

* pokeysnd: removed duplicates of Pokey constant definitions
  and AUDC/AUDF/AUDCTL variables, included pokey.h


Previous changes (pre 1.2.0) are in the CHANGES.OLD file.