X-Mame History:

by Juan Antonio Martinez (mame@drake.dit.upm.es)

Release 0.30.1
	- Just a patched Mame-0.30 version

Release 0.29.3
	- Added GGI ( General Graphics Interface support )
	- Added zlib support
	- Preliminary autoconf support
	- Some minor fixes

Release 0.29.2
	- Now osd_clearbitmap() uses named pen instead of default 0
          this solves several color bugs in atari vector games
	- Added xmame.man manual page. Thanks to Donald Burr
          Moved src/unix/xmamerc.dist to doc
	- Added "bindist" and "srcdist" options to makefile, for easy 
	  making of a source/binary distribution
	- Fixed missaligned integer pointer bug in src/sndhrdw/pokey.c
	- Some incongruent items in Copyright license has been changed
	- Created and moved documentation to doc directory
	- Intensive work of cleanning non-ansi and warnning items
	- Added UnZip-on-the-fly support for ROM's and Samples.
	  Thanks to Tomi Ollila for the unzipper code
	- Support for dirty lines speedup strategy in X
	  via -DUSE_DIRTY and -DDIRTY_RFSH makefile.unix options
	- Added support for Linux/X11/PowerPC. Thanks to Andreas Varga
	- Now "-list" and "-listfull" options writes to stdout, to 
	  allow interface with loaders
	- fixed bug in sndhrdw/starforc.c that makes sound too slow
	- fixed bug in src/unix/xdep.c that made incorrect graphics and
	  cores in swaped-xy games when X & Y scale differs

Release 0.29.1
	- Original Mame-029 sources ported to UNIX by Hans de Goede
	- Added "-[no]xsync" and "use_xsync" commandline/config option
	  To select between XFlush() or XSync() screen refresh method
	- Added "spooldir makefile/config/commandline configurable option
          to store high scores
	- Now .xmamerc and per-game user configurations parameters are moved
	  and stored into ${HOME}/xmame/ directory
	- New file update_dsp.c to code video update routines
	- Added -devdsp and -devaudio options to allow selection of audio
          device in those systems that has no /dev/audio
	- Added -showconfig cmdline option to display current running parameters
	  in a xmamerc-like style 
	- Now -DUSE_TIMER works on svgalib. Thanks Hans

Release 0.28.2
	- Added Solaris/ix86 support
	- Added Linux/Alpha support
	- Fixed several bugs in 8910intf.c to makes core in init sound
	- Changed Keyboard code to reset key table when entering/leaving
	  XMame window
	- Lots of porting errors solved
	- Solved (again) missalingned int problems in src/common.c:drawgfx()
	  Blames to Intel for trying to correct programmer errors instead a
	  clean core

Release 0.28.1
	- A Mix between official 0.28 Mame and XMame 0.27.2
	- Changed "static char *single" for "static char *_single" in 
	  src/sndhrdw/starforc.c due to a solaris varname conflict
	- Added -ror, -rol -flipx, -flipy, -cheat commandline options
	- Changed osd_obtain_pen() to use double-indexed color array for
	  cell allocation. This makes pseudocolor mode as slow than truecolor
	  but no esay way to bypass problem ( private colorcell is a color
	  waster strategy )
	- New fix.c code to make port easy. Thanks Hans
	- Added ultrix support

Release 0.27.2
	- Created new directory contrib. Waitting for your works...
	- Added support for ix86/BSDi. Thanks Tom <tom@toetag.com> for Patches
	- AUDIO_TIMER_FREQ #define moved to makefile sound options
	- Finally I got xmame running for 8bpp, 16bpp, 24bpp and 32bpp Xservers
	  No easy way to get 1 ( monocrhome ) and 4 ( 16 colors ). Sorry
	- Solved Audio bug in non-i386 machines ( audio buffer mixer works in
	  unsigned char fashion, and every others audio devices likes signed 
          ones )
	- Support for trackball emulation and mouse
	- Universal Joystick support:
	    - Patch for FM-TOWN game key pad joystick emulation (Linux)
	    - i386 joystick driver rewwriten. ( finally does diagonal correctly )
	    - Joystick support via X11 Input Extensions for "any" XServer that
	      supports them
	- Changed common.c to solve unaligment problem that causes SISEGV cores
	- makefile.unix changes. Lots of new switches ( perhaps it's time to
	  create a configuration script.. )
	- Solved bug that make change settings not to work ( TAB key )

Release 0.27.1
	- Hans de Goede did the work during my little holidays. Every one
	  thank's him
	- Linux SVGALIB support
	- Now osd_play_streamed_sample() works (yes, finally !!! )
	- src/sndhrdw/starforc.c static char *single changed to _single due
	  to solaris previous definition
	- Added samplefreq and videomode command line options ( only have 
	  sense in linux .... )
	- Changed (again) every PI items to POSIX M_PI .Mirko, please...
	
Release 0.26.3
	- Changes in makefile.unix and readme.unix. 
	- src/drivers/digdug.c bug fixed ( but still remain a bug: if
          no key pressed soundtrack stops.... )
	- New commandline options
	- Support sound on netbsd_i386 and freebsd
	- xdep.c scaling bug fixed
	- Added missing function in system-dependent code
	- osd_play_streamed_sample() in src/unix/sound.c improved 
	  ( needs further work... )

Release 0.26.2
	- Now timer based audio works again
	- Fixed several non-linux related audio bugs
	- Changed src/mame.c to optimize arg search and make unix help
	  available
	- readme.unix updated . READ CAREFULLY before trying to compile
	- X-Events scanning routine changed and optimized 
	- Several minor bugs and ANSI warnnigs fixed

Release 0.26.1
	- Original sources from Mame0.26.1 patched for Hans De Goede
	- Entire code "ANSI'ed" 
	- Added global xmamerc file parsing
	- Makefile structure changed. READ AND EDIT CAREFULLY BEFORE COMPILE
	- New Sound Code!! no more timer in those systems that allows query
	  free space in sound driver 
	- Improved mixer. Settable FANCY_SOUND to perform a linear interpolation
	  Play it!! you'll see the difference
	- Optimized video code for 2x and 3x scales

Release 0.23.3 

	- Added Joystick support under NetBSD
	- Fixed bug to bypass upper/lowercase names ROM filenames
	- Lot of portability bugs fixed
	- An optional sound.c.new code included. Perhaps you'll want to
	  test and improve...

Release 0.23.2

	(Thanks to entropy@zippy.bernstein.com for patches)
	- Fixed stupid bug in src/common.c:readbit();
	- Added support for i386/NetBSD ( No sound. sorry )
	- Now MAME-023 new games doesn't core

Release 0.23.1

	- Patched from Official MAME 0.23
	- Now you can make snapshots ( needed Xpm Library )
	- MAME-023 FM music synthesis doesn't work (yet)
	- New makefile.unix to allow enable/disable sound in IRIX and SGI
	- Lot of improvements and bugfixes
	- NOTE: some newer games dumps core in fgx routines. still
	  working on it. sorry :-(

Release 0.22.1
	
	- Patched from Official MAME 0.22
	- Included unix code from 0.21.7

Release 0.21.7

	- Added AIX sound support. Thanks to Chris Sharp
	- Added "-privatecmap" command line option and "private_colormap"
	  .xmamerc parameter to enable use of private color maps
	- Now sounds works again ( more work on sound server included )
	- Lots of bugs and **IX porting problems solved
	- New readme.unix with FAQ and installation guide

Release 0.21.6

	- Patched from Official MAME 0.21.5
	
Release 0.21.1

	- Mixed 0.20.3 with official MAME 0.21 sources
	- Makefile.unix changed
	- UNSTABLE. needs further work

Release 0.20.3

	- Support for HP-UX and AIX
	- Adecuate use of DISPLAY and MAMEDIR environment variables
	- Support for -help command line option
	- Support for ${HOME}/.xmamerc configuration file
	- Support for keyboard remapping

Release 0.20.2

	- Directory src/unix rewritten. no longer a big unix.c
	- A src/unix/Makefile is provided to create osdepend.a library 
	- ( Now I can start doing real work in a clean environment )
	- File makefile.unix adapted to new src/unix structure
	- changed macro PI ( non-posix ) for M_PI in some files under
	  directory src/sndhrdw
 
Release 0.20.1

	- Check for available 8bit depth Visual. if no, warns and quit
	- Check for available and runable MIT-SHM. 
	- Added command line -display "displayname"
	- Added command line -nomitshm to disable use of MIT shared memory
	- Rewritten most of video code
	- Several bugs fixed

Release 0.20
	
	- Finally Mame and X-Mame converges!!!
	- osd_update_display() rewritten. Should work at least two times
	  faster
	- osd_poll_joystick() patched to allow simultaneous x&y movements
	  when really desired ( Linux )

Release 0.19.1
May-2-1997
	- Corrected 0.19 sources to compile & run unde UNIX
	- Some POSIX'ing work
	- Corrected 0.19 bug that makes phoenix and pleiads unrunables if
	  not sound samples availables

Release 0.19 
April-29-1997

	- Official 0.19 sources. Due to a bug in building distribution doesn't
	work neither compile under UNIXes

Release 0.18 patch level 2
April-25-1997

	- Modify Makefile.UNIX, to support simultaneous multi-architecture
	  compiling
	- Set up hierachies obj.arch
	- Correct source files to support non-gcc ansi compilers
	- Added -DINLINE=static to specific irix native compiler CFLAGS in 
	  Makefile.UNIX
	- Added support for Sparc SUNW,dbri audio chipset

Release 0.18 patch level 1
April-24-1997

	- Added support for Audio on SGI Irix machines ( tested on a SGI Indy )
	- Corrected posix undefined PI macro in math.h

Release 0.18

	- Original sources from repository

SOUND TESTED ON:
	linux (i586/133) sounds acceptable
	Irix  (SGI Indy ) near nice
	Solaris ( Sparc5 SUNW,CS4231 ) poor, but usable
		( Sparc1+ SUNW,am79c30 ) horrible, better dont use
		( Sparc10 SUNW,dbri ) need more work ( too delayed and tickly )
	AIX	( Reported by Chris Sharp <sharp@hursley.ibm.com> )
		
KNOWN BUGS ( ONLY UNIX SPECIFIC INCLUDED ):
	- AUDIO_TIMER_FREQ is machine dependent
	- Cannot correctly control audio channels in Sparc ( doc wrong :-( )
	- Low quality in audio
	- Some games send long sound samples ( like soundtracks ) that overruns 
	  buffers and make core : -( 
	- Some games dump core when exiting. Don't know why...

TODO:
	- Make it runnable in servers that has no support for 8-bit depht
	  Visuals ( Actually warns and exit )
	- Support for kernel in-built n-channel mixer in Irix
	- Joystick support under Irix ( using the analog input port )
	- Rewrite mixer and buffering sound module
	- Full support of Sparc sound ( lots of bugs in actual one )

Please send patches, bugfixes, suggestions, blames, and money :-) to i
mame@drake.dit.upm.es

See X-Mame http://www.dit.upm.es/~ejantonio/mame

	Enjoy!!!!
