
 C Y M P L A Y
 = = = = = = =
 
     v0.21
     ~~~~~

 Firstly..
 ~~~~~~~~~
 CYMPLAY supports all the soundcards supported by the Seal audio
 library 1.05. I'm only able to test it on a AWE32 and AWE64.. so I 
 can't tell if it works on other cards.

 Also, the output is ONLY 16-Bit @ 44100Hz, MONO

 I've set this, and I have a sneaky feeling that trying to run 
 CYMPLAY on, say, a SB 8-Bit card will result in a mess.

 In all reality, you should all be on 16-Bit, 44100Hz cards by now!

 Introduction
 ~~~~~~~~~~~~
 As you probably know, the CPS-1 emulator "CALLUS" (by Bloodlust) can
 dump the YM2151 registers & values into a .CYM file. You see the 
 CPS-1 arcade machine uses a YM2151 to generate the FM musics (along
 with a OKIM6295 DAC to produce digital samples).

 Now, the .CYM file therefore contains the music data you dump.

 CYMPLAY plays these .CYM files.

 Use
 ~~~
 Using CYMPLAY is simple. Just run it from a DOS-BOX command line 
 and give it a .CYM file!

 e.g. CYMPLAY KENSTAGE.CYM {return}

 You will first be asked what sound card you have. CYMPLAY uses v1.05
 of the Seal audio library, so it can use the newer PCI cards.
 Once you provide your soundcard, it'll go off and play the file!

 Hey! Its darn slow/scratchy!
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Yep, thats because your PC isn't fast enough! ;-) Remember, the 
 YM2151 emulation is MAME's and is written entirely in C!
 
 Here are some quick comparisons :-

 Pentium-75     - Slow playback, very scratchy
 Pentium-233MMX - Perfect playback, scratches a little when intensive

 Err, why are there no drums/beats/samples?
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 OK, .CYM files only contain data on the YM2151, the FM music chip. As 
 I said above, digital samples (this includes drums/beats etc.) are
 played using the DAC.. CYMPLAY doesn't playback this. (there is no
 information in the .CYM file regarding the DAC at all)

 CYM File Format
 ~~~~~~~~~~~~~~~
 if byte == 0x00
 { vblank, update_ym2151, update_audio }
 if byte != 0x00
 { byte = register, next byte = value, write_this_to_ym2151 }

 You can always look in the CALLUS documentation for more info.
 
 History
 ~~~~~~~
 v0.21 (18/Dec/98)   -    Yes, two updates in one code-sesh ;)
 -----------------        Got rid of Allegro totally (EXE now half-size!)
                          Rewritten some comments ;)

 v0.2  (18/Dec/98)   -    A minor update to this DOS version; Fixed the
 -----------------        seg fault in pure-dos.. it was due to not
                          malloc'ing my sound buffer to init it! :) nutz!
                          I can't believe I missed that!! Thanks to
                          Chipmunk who told me! & check out his Win32 ver!

 v0.1  (13/Dec/98)   -    Plays the CYM file back fine. Is extremely slow
 -----------------        however! It needs at least a P233MMX to play the
                          sound properly (no scratching, full-speed).
                          Audio streams working OK, I think. (Seal rulez!)
                          Emulation working great, no probs! (MAME yeah!)
 
 Credits/Authors
 ~~~~~~~~~~~~~~~
 YM2151 emulation (C)M.A.M.E team, (C)Jarek Burczynski, (C)Tatsuyuki Satoh and so on..
 CYMPLAY (DOS original) program (c)NEON
 CYMPlay32 (Win32 port) program (c)Chipmunk

 Contact
 ~~~~~~~
 Web   : http://members.tripod.com/~t_maniak/
 Email : jfd@cs.bham.ac.uk

 Future?
 ~~~~~~~
 Here are some ideas :-
  - someone could port it all to Win9x (Seal Audio Library supports a
    Win32 environment)
  - maybe zipped files should be supported? (Unzip/Inflate code)
  - maybe a GYM player.. if only the YM2612 code was as easy to
    understand!
  - stereo?.. was the YM2151 stereo? maybe not..








  
