home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 6 / AACD06.ISO / AACD / Emulation / Atari800 / CHANGES < prev    next >
Text File  |  1998-02-27  |  29KB  |  740 lines

  1. Changes in 0.9.2
  2. ----------------
  3.  
  4. o Rewrote ANTIC emulation, supports changes of the character set within a
  5.   mode line now.
  6.  
  7. o Added FORMAT and 815 N and O commands in the SIO module.
  8.  
  9. o Rewrote DLI logic completely.
  10.  
  11. Changes in 0.9.1
  12. ----------------
  13.  
  14. o Rewrote Player/Missile logic
  15.  
  16. o Rewrote priority engine. Works now, with all modes.
  17.  
  18. o Rewrote vertical & horizontal scrolling logic
  19.  
  20. o Redesigned color fiddling logic
  21.  
  22. o Added color artefacting (-artefacts) switch and routines. Still a bit "beta"
  23.  
  24. o Rewrote "MMU" support, new module mem.c designed.
  25.  
  26. o Redesigned loading of Os modules and external cartridges
  27.  
  28. o Debugged 5200 support. Should work now, but still something to do.
  29.  
  30. o Added almost all extra instructions, with the exception of some messy
  31.   ones that depend on the external bus state.
  32.  
  33. Changes in 0.9.0
  34. ----------------
  35.  
  36. o Made -private_cmap flag really working (jhs)
  37.  
  38. o Updated X11 support (jhs)
  39.  
  40. o debugged PIA support (thor)
  41.  
  42. o debugged POKEY support (thor)
  43.  
  44. o GTIA emulation highly updated (thor)
  45.  
  46. o FIDDLED Antic_2,_3 and _F mode rewritten, resulting in
  47.   much cleaner simulation without wrong colors.
  48.  
  49. o some undocumented player/missle "mixing" priorities are now supported (thor)
  50.  
  51. o Added simulation of Atari XL CartCtrl (GTIA-3) pin (thor)
  52.  
  53. o Added better DLI timing (thor)
  54.  
  55. o Added sprites on top of GTIA modes 0x40 0x80 0xc0 (thor)
  56.  
  57. o Removed DIRECT_VIDEO support (thor)
  58.  
  59. o Correct handling of CPU interrupt bit (thor), LucasFilms keyboard parsing
  60.   works now.
  61.  
  62. o Correct (checked!) support of direct (non-SIO) I/O (thor), SIOPatch no
  63.   longer needed (though RECOMMENDED for speed).
  64.  
  65. o Corrected bug in vertical fine scrolling. (thor)
  66.  
  67. o Correct emulation of a bug in the 6502 ZPage addressing (thor)
  68.  
  69. Changes in 0.8.1
  70. ----------------
  71.  
  72. o Added -private_cmap flag for X11 version.
  73.  
  74. o Correction to handling of 6502 V flag during ADC and SBC operations.
  75.  
  76. Changes in 0.8.0
  77. ----------------
  78.  
  79. o Added Ron Fries Pokey Emulation routines for sound in Linux.
  80.   A million thanks to Ron for releasing these routines - I've
  81.   put off using sound for ages but it took less than an evening
  82.   to add sound using these routines :-)
  83.  
  84.   Sound is setup for Linux using /dev/dsp but it also seems to
  85.   produce something using /dev/audio, which leads me to believe
  86.   that it should work on most Unix boxes with a little work.
  87.   Patches welcomed :-)
  88.  
  89.   In order to support sound I've added a few new command line
  90.   options:-
  91.  
  92.   -sound and -nosound do what you'd expect.
  93.  
  94.   -dsp_divisor takes a decimal value which alters the quality of
  95.                the sound output. It is used to work out how much
  96.                sound should be created each time the screen is
  97.                refreshed. Ideally it should be 50 (PAL) or 60 (NTSC)
  98.                but I've found that the best value to use is about
  99.                5 less than the emulators screen refresh rate WITH
  100.                SOUND DISABLED. If the values is to high you will
  101.                get gaps in the sound. If the value is to low the
  102.                emulator will run slower than it should.
  103.  
  104.                I strongly suggest you experiment with this parameter
  105.                in order to get both the best sound and performance.
  106.  
  107. o Support for an Experimental New Cartridge Format - with the use of
  108.   OSS Super Cartridges there is no way of automatically
  109.   distinguishing standard 16K cartridges from the various Super
  110.   Cartridges. Hopefully this format will do for cartridges what ATR
  111.   files did for disk images. Feedback and view would be welcomed
  112.   especially from the other Emulator Authors.
  113.  
  114.   The current format is :-
  115.  
  116.   first 4 bytes containing 'C' 'A' 'R' 'T'.
  117.   next 4 bytes containing cartridge type in MSB format.
  118.  
  119.     Type 1 - Standard 8K Cartridge
  120.     Type 2 - Standard 16K Cartridge
  121.     Type 3 - OSS Super Cartridge (I heard rumours that there are two
  122.              different types of OSS Cartridges)
  123.     Type 4 - Atari 5200 Cartridge
  124.  
  125.     Note: There is probably a case for extra cartridge types
  126.           indicating the system that needs to be emulated.
  127.           e.g. Standard 8K Cartridge (800 Mode Only).
  128.  
  129.   next 4 bytes containing cartridge checksum in MSB format (ROM only).
  130.   next 4 bytes are currently unused.
  131.   followed immediately with the ROM data, typically 8, 16 or 32K.
  132.  
  133.   In the next version I'm intending on adding:-
  134.     32 bytes for Cartridge Name
  135.     32 bytes for Cartridge Serial Number
  136.     32 bytes for Manufacturer
  137.  
  138.   The current version of the emulator includes options in the
  139.   Cartridge Management screen to Create Cartridges in the above
  140.   format but be warned this format is likely to change.
  141.  
  142. Changes in 0.7.1
  143. ----------------
  144.  
  145. o Note: I now consider the new Menu System that runs in the Emulated
  146.         Atari's window to be the prefered User Interface. I have no
  147.         intention of doing any further development for XVIEW
  148.  
  149. o Cartridge Management added to Menu.
  150.  
  151. o Removed FFP Code.
  152.  
  153. Changes in 0.7.0
  154. ----------------
  155.  
  156. o F1 enters Menu System at any time. ESC returns you to the previous
  157.   screen. Items are lcoated using the cursor keys and selected by
  158.   either RETURN, SPACE, TAB or BACKSPACE. In most cases these keys
  159.   can be used interchangeably, the exception is in the Disk Management
  160.   Screen where RETURN is used to select a new disk and SPACE, TAB and
  161.   BACKSPACE are used to eject a disk - If there is no disk in the
  162.   virtual drive then SPACE, TAB and BACKSPACE will switch the drive
  163.   off (Useful for Shamus).
  164.  
  165. o X11, SVGALIB & DOS - F5 is now Warmstart and Shift F5 is Coldstart.
  166.  
  167. o X11 - F8 Single Shot Screen Dump, Shift F8 continuous Screen Dumps.
  168.  
  169. o MS-DOS version runs about three times quicker now that the emulator is
  170.   synchronising with a high resolution timer.
  171.  
  172. o MS-DOS version resets the screen back to text mode when finished.
  173.  
  174. Changes in 0.6.2
  175. ----------------
  176.  
  177. o Antic Modes 2, 3 and f now display the normal Atari Colour and
  178.   Luminance by default. Extended Antic Modes 2, 3 and f are enabled
  179.   by starting the emulator with the "-xcolpf1" command line option.
  180.   This allows two completely different colours to be displayed in
  181.   these modes - as previously.
  182.  
  183. o Improved Run-Time Configuration. Starting emulator with the "-configure"
  184.   command line option allows configuration of several items:-
  185.  
  186.      1. Location of OS Roms
  187.      2. Default Directory for Disk Images
  188.      3. Default Directory for ROM Images
  189.      4. Default Directory for H1, H2, H3 and H4 pseudo devices
  190.      5. Command Print File (for Printer Support)
  191.      6. Default Screen Refresh Ratio
  192.      7. Default Startup System (OS/A, OS/B, XL, XE, 5200)
  193.      8. Default TV Mode (PAL, NTSC)
  194.      9. Hold Option during Coldstart
  195.     10. Enable C000-CFFF RAM in Atari 800 mode
  196.     11. Enable SIO Patch
  197.     12. Enable FFP Patch
  198.     13. Enable Extended COLPF1 (Two true colours in Antic Modes 2, 3 & F)
  199.  
  200.   The emulator writes a file called "atari800.cfg" in your default
  201.   directory. When reading the configuration the emulator first checks
  202.   to see if you've specified a configuration on the command line with
  203.   the "-config" option otherwise it first tries to read a configuration
  204.   file from your default directory, failing this it then tries to read
  205.   a configuration file from "/etc/atari800.cfg".
  206.  
  207. o JoyMouse for Toshiba Portables running SVGALIB - Probably also
  208.   suitable for Trackball devices with minor modifications.
  209.  
  210. Changes in 0.6.1
  211. ----------------
  212.  
  213. *** IMPORTANT MESSAGE for EXISTING Users of Atari800 (Source Versions)
  214.  
  215. You will need to make some changes during the sytem configuration
  216. stage - the emulator now expects the full path to each of the system
  217. ROM images to be explicitly stated. If you don't have all the ROM
  218. images then just pretend you have!
  219.  
  220. o FPS and SIO Monitor are no longer compile time configuration options.
  221.   Enabled by "-fps" or "-sio" command line option or via an XVIEW
  222.   pulldown menu.
  223. o Motif fileselector retains state from one invocation to the next.
  224. o Configuration program detects if longwords need to be aligned.
  225. o Modification to X11 Paddle Emulation.
  226. o Removed hardcoded paths in MOTIF code.
  227. o Various fixes for curses mode.
  228. o Correction to Colours in Antic Modes 4&5 causing Incorrect colours
  229.   in Rally Speedway, Galactic Chase and Mr. DO)
  230. o Disabled DiskChange KEY (F8) in X11 version.
  231. o Added "-nobasic" command line parameter.
  232. o Added "-osa_rom", "-osb_rom", "-xlxe_rom", "-5200_rom" and "-basic_rom".
  233.   These command line options are used to specify the location of
  234.   various system ROMs on mis-configured systems or binary distributions.
  235.  
  236. Note: To prevent cluttering up the CHANGES file all credits are listed
  237.       in the CREDITS file.
  238.  
  239. Changes in 0.6.0
  240. ----------------
  241.  
  242. - Emulator can now be compiled for DOS using the DJGPP port of GCC (Thanks
  243.   to Ivo van Poorten)
  244.  
  245. Thanks to Maximum Entropy for the following Changes:-
  246. - Implementation of Disable Drive menu item for Motif.
  247. - Fixed scrolling problem for machines that can't access longwords on word
  248.   boundaries (e.g. SGI and SPARC).
  249. - Added FPS Monitor to X11 and Motif versions.
  250. - Changes to pattern matching for H: device.
  251.  
  252. Changes in 0.5.5
  253. ----------------
  254.  
  255. Thanks to Maximum Entropy for the following Changes:-
  256. - Various corrections to MOTIF code.
  257. - MOTIF callbacks for Insert Disk, Eject Disk and Insert ROM
  258. - Bug Fixes in sio.c
  259. - Bug Fix to devices.c allowing DOS 2.5 to get a directory of H:
  260. - Bug Fix to monitor.c (EOF on INPUT + Blank Lines)
  261. - Undocumented commands added to monitors HELP command.
  262.  
  263. Changes in 0.5.4
  264. ----------------
  265.  
  266. - Made Emulator C++ Friendly.
  267. - BASIC version has not been working since CPU cycles were allocated during
  268.   scanlines processing. This problem was caused because the BASIC version
  269.   doesn't generate any scanlines and therefore didn't execute any
  270.   instructions. This version fixes the problem.
  271.  
  272. Changes in 0.5.3
  273. ----------------
  274.  
  275. - Removed GetWord macro from cpu.c
  276. - Added XVIEW option to disable drive (via SIO_DisableDrive()). This
  277.   allows SHAMUS to work. The drive is automatically re-enabled next
  278.   time a disk is inserted.
  279.  
  280. Changes in 0.5.2
  281. ----------------
  282.  
  283. - Made CPU timing more accurate: It now issue 114 clock cycles per scanline
  284.   instead of 48 instructions.
  285. - Removed obsolete functions: GetBinaryWord() and BinaryLoad().
  286. - Handle PORTA Direction Control Register. Fixes Joystick problem in Caverns
  287.   of Mars 1.
  288. - The atari_basic array was incorrectly defined in pia.c as [8129]. This
  289.   has now been corrected to [8192] (Thanks to Chris Palmer).
  290.  
  291. Changes in 0.5.1
  292. ----------------
  293.  
  294. - Changed handling of CONSOL for X11 versions - previously it was hard
  295.   to start some games.
  296. - Changed address of 5200 POKEY chip. The information I have states that
  297.   it is located in page $eb, but evidence in a disassembled cart suggests
  298.   its at $e8. Of course it could appear in both pages, does anyone
  299.   know for sure?
  300. - CPU time allocation is now performed entirely within "antic.c". This is
  301.   a pre-condition for switchable PAL/NTCS modes.
  302. - Compile time configurable to either PAL [default] or NTCS system.
  303. - "-countdown" option has been removed.
  304.  
  305. Changes in 0.5.0
  306. ----------------
  307.  
  308. - Simplified interface to CPU module.
  309. - DIRECT_VIDEO now works with PMG collision detection. This option increases
  310.   performance by about 28% but can result in different colours being displayed.
  311.   This is because this option relies on COLPF0, COLPF1, COLPF2, COLPF3 and
  312.   COLBK all having different values, hence the emulator sometimes modifies
  313.   the colours :-( This option can be enabled during the configuration phase.
  314. - Correction to ANTIC Mode 5 Vertical Scrolling.
  315. - Correction to PMG DMA Code - Demon Attack now works OK.
  316. - Added code to limit the emulator to 50fps - this will not have any
  317.   effect if your machine can't run the emulator greater than 50fps.
  318.   F10 in X11, XVIEW, MOTIF and SVGALIB versions toggles the limit on/off.
  319.   When the limit is off the emulator will go as fast as it can.
  320. - Path to directory containing the OS ROM images is now defined during
  321.   the configuration phase (Declaration of ATARI_LIBRARY has been removed
  322.   from the Makefile).
  323. - Correction to handling of PMG DMA - Pitfall II now Works.
  324. - The unused bits in PMBASE are now ignored correcting errors in Atari Chess
  325.   and Frogger.
  326.  
  327. Changes in 0.4.5
  328. ----------------
  329.  
  330. - Added a compile time configuration option to control the default
  331.   screen refresh rate. In previous version of the emulator the default
  332.   rate has been 4 frame: draw 1 skip 3. From this version you will
  333.   be prompted for the default during the compile stage (except VMS and
  334.   AMIGA which still default to 4). A value of 1 is required for the
  335.   most accurate emulation. Values other than one can produce some
  336.   collision detection problems on a few programs (e.g. Burried Bucks).
  337. - Split Custom Chip code into seperate files.
  338. - Added 5200 Emulation Code - Runs program but needs modifications to
  339.   support 5200 controllers. The 2K OS ROM must be called "atari5200.rom"
  340.   and placed in the same directory as the other OS ROMS.
  341. - Linux Joystick enabled by configuration program. There are nolonger
  342.   any makefile targets containing "joystick".
  343. - Removed code relating to Emulated Operating System.
  344. - Added option that displays the number of Frames per Second. This option
  345.   is enabled within the configuration program and currently only works
  346.   with the XVIEW version.
  347.  
  348. Changes in 0.4.4
  349. ----------------
  350.  
  351. - SpartaDOS 3.2 works for both Read and Write Access.
  352. - Alternate Reality "The City" now works.
  353. - Added interrupt timings for Invalid SIO commands.
  354. - Support for Direct Serial I/O Write and Put sectors commands.
  355. - Correction for Double Density ATR files.
  356.  
  357. Changes in 0.4.3
  358. ----------------
  359.  
  360. - Corrected a Bug that prevented DOS 2.5 from copying files to/from H:
  361. - Re-instated F8 Disk Change function for non XVIEW/MOTIF/AMIGA Systems.
  362.  
  363. Changes in 0.4.2
  364. ----------------
  365.  
  366. - Test code for faster screen generation, enabled by defining DIRECT_VIDEO
  367.   within "atari_custom.c". It needs a little more thought with respect to
  368.   collision detection, hence it is disabled by default.
  369. - Better PMG Priority Handling.
  370. - Tidied up code accessing hardware registers
  371. - Changed handling of B, D and I flags.
  372. - Changed handling of NMIs.
  373.  
  374. Changes in 0.4.1
  375. ----------------
  376.  
  377. - Flashes background colour while performing direct Serial I/O
  378. - Minor optimisation to Player/Player collision detection
  379. - Minor changes in CPU emulation
  380. - Correction to new cartridge code causing it to fail under XL/XE
  381.   emulation (Thanks to Neil Shipp)
  382. - New targets in the Makefile for freebsd systems (Thanks to Ivo
  383.   van Poorten)
  384.  
  385. Changes in 0.4.0
  386. ----------------
  387.  
  388. - Added MOTIF User Interface
  389. - Support for DEC-Windows under VMS (Thanks to Chris F Chiesa)
  390. - Removed dependency on 'ncycles' global variable.
  391. - Support for direct access to serial port hardware - The emulator will
  392.   now run Alternate Reality "The Dungeon" (I haven't tried the others)
  393. - Modified handling of XL/XE memory.
  394. - Fixed the GTIA modes which broke after X Window shared memory support
  395.   was added in version 0.3.0
  396. - Correction allowing Montezumas Revenge to work again.
  397.  
  398. Changes in 0.3.3
  399. ----------------
  400.  
  401. - New System menu in XVIEW version allowing selection of operating
  402.   system etc.
  403. - Amiga: Iconify working.
  404. - Amiga: System menu contains options for Insert ROM, Remove ROM,
  405.   Enable PILL, Selection of Operating System and all previous disk
  406.   options.
  407. - Amiga: Help menu option is now working using Multiview.
  408.  
  409. Changes in 0.3.2
  410. ----------------
  411.  
  412. - Modified BRK instruction to take account of the I flag. The BRK
  413.   instruction is ignored if the I flag is set.
  414. - Added all unofficial NOP opcodes.
  415. - New cartridge handling. The XVIEW version provides menu items
  416.   enabling the insertion and removal of cartridges.
  417.  
  418. Changes in 0.3.1
  419. ----------------
  420.  
  421. - Defined PRINT_COMMAND in devices.c for Amiga
  422. - Minor optimisation to PMG handling
  423. - Modified DLI Handling and ScanLine processing
  424.  
  425. Changes in 0.3.0
  426. ----------------
  427.  
  428. - Support for Atari 130XE memory banks (Antic currently accesses the
  429.   same bank as the CPU)
  430. - XVIEW Exit item on the Disk menu.
  431. - Printer device calls tmpnam() to allocate a temporary filename for
  432.   the spool file.
  433. - XView version didn't enable HELP key for XL and XE emulation.
  434. - X11 Backspace keys works in the same ways as the Delete key.
  435.   (Thanks to Cyrus Malek)
  436. - Reset and Coldstart now work during XL and XE emulation.
  437. - Added OK button to XVIEW controller and performance dialog boxes.
  438. - Optional support for X11 Shared Memory Images resulting in a 32%
  439.   speed improvement. This option can only be used in conjunction
  440.   with the small screen display. Type make by itself to obtain
  441.   the new list of targets. "-shm" target extension enables this
  442.   option.
  443. - Simple configuration program to avoid editing the Makefile as ofter.
  444.   make will invoke it the first time and afterwards "make config" can
  445.   be used. It currently handles the directories for the H: device, the
  446.   disk image directory for the XVIEW file chooser and the command used
  447.   to send a file to the printer. The print command should contain a %s
  448.   character sequence where a filename is expected (only the first %s
  449.   is relevant).
  450.  
  451. Changes in 0.2.7
  452. ----------------
  453.  
  454. - Renamed atari_h_device.c to a more general devices.c
  455. - Emulator (private) opcode ESCRTS ($d2) added to support patching of OS.
  456. - Printer device supported via Unix lpr command.
  457. - Moved from RCS to CVS and added rcs Id keyword to all C files.
  458. - Emulated OS: Better handling of Keyboard and ATASCII to screen
  459.   code conversion. Editor uses LMARGN, RMARGN, ROWCRS and COLCRS.
  460. - Many other changes to EmuOS including implementation of SETVBV
  461.   COLDSV and WARMSV.
  462. - Detection of X11 server supporting the MIT Shared Memory Extension in
  463.   preperation for shared memory pixmaps.
  464. - Corrected bug in H: device (filename extraction routine).
  465.  
  466. Changes in 0.2.6
  467. ----------------
  468.  
  469. - Corrected calculation of number of sectors and reading of double
  470.   density ATR files (Thanks to Preston Crow)
  471. - Correction for Linux ELF systems.
  472. - XVIEW and NAS work under Linux/ELF
  473. - Default directory for XVIEW Disk File Chooser is set within the
  474.   Makefile. By default it is pointing to /usr/local/lib/atari/DISKS
  475. - Corrected bug in Missile 0 to Playfield collision detection.
  476. - Corrected WSYNC bug (multiple stores to WSYNC during one scanline).
  477.   River Raid now runs correctly.
  478. - -emuos to enable emulated operating system. Users without the
  479.   necessary atari OS ROMs can use this option to boot disk images/ROMs.
  480.   Currently this is very experimental and runs very little without
  481.   problems. Defender runs perfectly but if you haven't got the OS it's
  482.   unlikely you'll be able to get this either!
  483. - H0: device accesses the current directory on your Unix Machine.
  484. - H1: through H4: can access four directories specified either within
  485.   the Makefile or via the -H1, -H2, -H3 and -H4 command line options.
  486.   By default they are set to /usr/local/lib/atari/Hx where x is 1, 2,
  487.   3 or 4.
  488. - H5: through H9: duplicate H0 through H4 but have automatic ATASCII
  489.   to ASCII translation. They are not suitable for binary files.
  490. - All files accessed via the H: device have Unix filenames consisting
  491.   entirely of lowercase letters.
  492.  
  493. Changes in 0.2.5
  494. ----------------
  495.  
  496. - Network Audio System support on Unix Systems [incl. Linux]. Waveform
  497.   can be selected via the -sinewave or -squarewave options. At the
  498.   moment it doesn't support the Atari Distortion values and switches
  499.   channels using distortion off. This is available in XVIEW, X Window
  500.   and Linux SVGALIB versions. The Network Audio System is freely
  501.   available on the Internet - I used nas-1.2p2.tar.gz. Any Linux XVIEW
  502.   version do not work when built with the Network Audio System.
  503.   *** See BUGS file for more information ***
  504. - Support for /dev/sequencer removed since it didn't look like it
  505.   would ever produce satisfactory results.
  506. - Introduced -help option that lists all options available in the
  507.   emulator.
  508. - Added LAX unofficial opcodes
  509. - Corrected Vertical Fine scrolling in Antic Mode 7.
  510. - Enhanced DLIST command in "monitor.c" which now displays the display
  511.   list using mnemonics.
  512. - Updated VMS command file.
  513.  
  514. Changes in 0.2.4
  515. ----------------
  516.  
  517. - Corrected mask in Atari800_GetByte() and Atari800_PutByte()
  518. - In Atari800_PutByte(), only switch on cartridge type when an
  519.   access is made to page $d5
  520. - Screen generation using word access where possible.
  521. - merged main.c with atari.c
  522. - Fixed SVGALIB Escape and cursor keys.
  523. - Emulated Floating Point Library which performs floating point
  524.   arithmetic directly on your host computer - bypasses 6502 CPU
  525.   emulation. Enabled by the -ffp option.
  526.  
  527. Changes in 0.2.3
  528. ----------------
  529.  
  530. - ADC and SBC functions are nolonger implemented as functions.
  531. - 6502 PC, S, A, X, and Y register now handled using local
  532.   variables. Copied to global variables on exit from cpu and
  533.   restored on re-entry.
  534. - Took advantage of a GCC feature: goto array[opcode]. Other compilers
  535.   still use a switch statement.
  536. - Amiga: DisplayScreen() tidied up
  537. - Added DLIST command to monitor. This command shows the address of
  538.   the display list (from hardware registers).
  539. - Major recode of all Antic Graphics Modes. Now allows Horizontal and
  540.   Vertial fine scrolling.
  541. - Added an -interlace option to the SVGALIB version, giving a
  542.   performance increase of about 10%. You would use this option to
  543.   increase the speed of programs that must be run with a screen
  544.   refresh rate of 1 (e.g. Burried Bucks)
  545. - In the SVGALIB version, the F11 and F12 keys can be used to modify
  546.   the vertical positioning of the emulated screen. F11 moves the screen
  547.   down while F12 moves the screen up.
  548. - Corrected a BUG causing River Raid to have corrupt screen display.
  549.  
  550. Changes in 0.2.2
  551. ----------------
  552.  
  553. - Made GetByte, GetWord and PutByte macros local to cpu.c
  554. - Added some 386 inline asm() for some 6502 addressing modes
  555. - Simplified Keyboard Handling
  556. - Assembly routines for Amiga AGA screen handling
  557.  
  558. Changes in 0.2.1
  559. ----------------
  560.  
  561. - Created a new Makefile for Unix. The Amiga support is now in
  562.   Makefile.amiga
  563. - Sorry, but I renamed the ATARI800 environment variable to ATARI_LIBRARY
  564.   which points to /usr/local/lib/atari by default.
  565. - Control + Shift + Key combination for Linux SVGALIB implementation.
  566. - SVGALIB version can be restarted after entering the monitor.
  567. - HELP Key available in XL/XE mode
  568. - Optional XVIEW (V3) Interface for X Window version. Allows disk changes
  569.   using a file selector, controller configuration and access to performance
  570.   variables.
  571. - BREAK Key fixed
  572. - PC Joysticks can be used with Linux (svgalib, x11 and xview) through the
  573.   /dev/js0 and /dev/js1 devices. Second button activates the space bar
  574.   which is very useful in Defender :-) Build with "make <system>" where
  575.   <system> is one of:- linux-x11-joystick, linux-xview-joystick or
  576.   linux-svgalib-joystick
  577. - X11 Joystick emulation using keyboard re-implemented. Straight X11 can
  578.   use either numeric keypad or cursor keys + space. XVIEW can only use
  579.   cursor keys + space (Problem using keypad in xview!)
  580. - Disk selector for Amiga version + controller configuration menu
  581. - Started code to emulate SERIN and SEROUT registers. At the moment this
  582.   is ongoing and does not work. New startup option -nopatch disables the
  583.   SIO patch leaving the normal SIO routine in place.
  584.  
  585. Changes in 0.2.0
  586. ----------------
  587.  
  588. - Separated Playfield Scanlines from Player Missile Scanlines
  589. - Corrected playfield colour errors in Antic modes 8 & 10
  590. - Horizontal Fine Scrolling
  591. - Playfield and Player/Missile Priorities
  592. - Allow Emulator to run either as an Amiga Screen or Window
  593. - Added Paddle support for Amiga
  594.  
  595. Changes in 0.1.9
  596. ----------------
  597.  
  598. - Corrected bug in IRQST and IRQEN
  599. - Corrected minor bug in player missile collision detection
  600. - Amiga version is now full screen + Menus
  601. - Faster disk I/O
  602. - Added ATARI800 environment variable. This allows the emulator to be
  603.   run from different directories. If ATARI800 is unset it will still
  604.   try to load the OS images from object/ below the current working
  605.   directory.
  606. - colours.h replaces colours.dat
  607. - Added man page.
  608. - New way of handling Joysticks, Triggers, Paddles and Console Keys
  609. - Corrected handling of CHBASE which was causing K-RAZY ANTIKS to
  610.   display garbage.
  611. - Corrected handling of VCOUNT which was causing screen handling
  612.   errors in Star Raiders (galactic map) and Henri (game screen).
  613. - Added Sound API. A test sound implementation is available for
  614.   the Linux SVGALIB version via /dev/sequencer - It's not very good
  615.   and has only been used to test the API. It is enabled by starting
  616.   the program with the -sound option. Listen to the title screens
  617.   of Necromancer, K-Razy Antiks and Henri (these are the best
  618.   I've heard).
  619. - argc and argv are passed to the platform specific initialisation
  620.   code - Atari_Initialise(). This allows platform specific options
  621.   like -sound on the Linux SVGALIB version.
  622. - Extra Amiga options -ocs -ecs and -aga. Currently the default is
  623.   AGA. The -ocs and -ecs have been tested on an A1200 with the
  624.   OCS and ECS emulation modes enabled. At the moment it is not
  625.   guaranteed to work on real OCS or ECS equiped machines since it
  626.   has only been tested under Workbench 3.0. Hopefully someone will
  627.   provide some feedback.
  628. - Another two Amiga options -grey and -colour. The -grey option
  629.   produces a grey scale display on OCS, ECS and AGA machines. The
  630.   -colour option produces a full colour display on AGA machines and
  631.   up to 32 simultaneous colours on OCS and ECS machines.
  632. - The DOUBLE_SIZE compilation flag for the X11 version has been
  633.   replaced by a runtime options. The runtime options are -small,
  634.   -large and -huge.
  635.  
  636. Changes in 0.1.8
  637. ----------------
  638.  
  639. - Allows direct use of GRAFP0, GRAFP1, GRAFP2, GRAFP3 and GRAFM without
  640.   using DMA.
  641. - -rom16 option to load standard 16K ROMs.
  642. - -a option to load object/atariosa.rom
  643. - -b [default] option to load object/atariosb.rom
  644. - Simplified screen generation for host - Player missile graphics
  645.   collision detection has been moved into 'atari_custom.c'
  646. - Corrected read from PORTB (XL/XE emulation)
  647. - GTIA support for *all* antic modes.
  648.   i.e. GTIA can be enabled in graphics mode 0 (antic mode 2) just like
  649.        a real 800. POKE 623 with 64, 128 or 192 to test.
  650. - Amiga version can be compiled using either DICE C or GNU C - see Makefile
  651.  
  652. Changes in 0.1.7
  653. ----------------
  654.  
  655. - Issue cpu cycles during screen update (corrects VCOUNT problem)
  656.     As a result DLI are not occuring on the correct mode line.
  657. - Support for 256 bytes/sector ATR files
  658. - Handle Insert, Delete and Tab keys properly
  659. - Handle Shift + Control + A-Z properly (X11 only)
  660. - Cartridge support tidied up (Thanks to Dave Bennett)
  661.  
  662. Changes in 0.1.6
  663. ----------------
  664.  
  665. - Correct Colours (Thanks to Chris Lam)
  666. - Fetch correct number of screen bytes with horizontal scrolling enabled
  667. - Speed improvements for Antic Display Modes
  668. - Support for ATR files (128 bytes sectors only)
  669. - Support for XL/XE ROM (Reset etc. do not work???)
  670. - Corrected Bug in BCD SBC instruction.
  671. - Added X11 window Expose event (Thanks to Ivo van Poorten)
  672. - Control characters within CURSES (Thanks to Ivo van Poorten)
  673. - Improved Portability
  674. - Remove '-b' flag (Use -rom object/ataribas.rom instead)
  675. - Graphical Support for Amiga 1200
  676. - Faster 6502 Emulation
  677. - X11 Joystick emulation now uses the mouse
  678.  
  679. Changes in 0.1.5
  680. ----------------
  681.  
  682. - CURSES text only mode (Support for various terminals)
  683. - Display list jump instruction corrected.
  684. - Fixed SIO module (It didn't update DSTATS)
  685.  
  686. Changes in 0.1.4
  687. ----------------
  688.  
  689. - Changed GetByte and PutByte to macros
  690. - Added SVGALIB support for Linux which is much quicker than X11.
  691. - Added support for OSS Super Cartridges (Thanks to Dave Bennett)
  692. - -rom option to specify alternative cartridges
  693. - -oss option to specify alternative OSS Super Cartridges
  694.  
  695. Changes in 0.1.3
  696. ----------------
  697.  
  698. - Compilation option for double size screen
  699. - Trigger now initialises to not pressed
  700. - Joystick now initialises to central
  701. - Fifth Player support added
  702. - Support for Paddle 0
  703. - Preparation for changing GetByte and PutByte to macros.
  704.  
  705. Changes in 0.1.2
  706. ----------------
  707.  
  708. - Now include <stdlib.h>  in atari_custom.h
  709.  
  710. - Resets count to countdown as soon as it reaches zero. This was causing
  711.   problems with the RESET Key - count went negative.
  712.  
  713. - Removed XImage structure. I am now updating only the pixels that have
  714.   changed within a Pixmap. XCopyArea is used to move the Pixmap onto
  715.   the Window. XCopyArea is not called if no pixels are changed. As a
  716.   result I am trying a higher refresh rate.
  717.  
  718. - Correction for BASIC version - I left some X11 stuff in resulting in
  719.   unresolved sybols.
  720.  
  721. - Remove unused status variable from atari_h_device.c
  722.  
  723. - Added some test Amiga Intuition Code - not usable (No Colour or Keyboard)
  724.   It manages to get the 'READY' prompt up! Atari Basic Blue is one colour
  725.   and everything else is the other. When keyboard support is added you
  726.   will be able to use Atari Basic.
  727.  
  728. - Registers are now allocated variables within atari_custom.c. They are
  729.   nolonger stored in main memory area.
  730.  
  731. Changes in 0.1.1 
  732. ----------------
  733.  
  734. - Outputs an error message when ROM images are not available.
  735.  
  736. Version 0.1.0
  737. -------------
  738.  
  739. - Initial Release
  740.