p0TP            p0TP                      I wrote two programs, AMS2MMS and AMS2MMSV,  to  convert          ADVANCED MUSICSYSTEM II (AMS II) files to Midi  Music  System          (MMS) format. All of my personal music files are  in  AMS  II          format, so I wrote the programs to only  support  that  input          format. However, most files are in AMS (the original  product          from APX) format. My programs would not properly handle those          files. Therefore, I wrote AMS1AMS2, which converts files from          AMS to AMS II format.               It is written in Action!, and is heavily  based  on  the          original programs. It looks  and  acts  the  same.  The  only          meaningful differences are that the message prompts will have          changed slightly and  the  output  files  will  have  a  file          extender of AM2, to identify them as AMS II files.               To run the program, simply load it from the DOS menu (or          from a menu program). Select 1 to convert  a  file  or  2  to          quit. From this point, just follow the prompts.  The  program          will default to drive 1 if you do not specify a drive. You do          not need to specify a  file  extender  for  the  output  file          because it will always be set to AM2 by the program.               The files produced by this program can then be processed          by AMS2MMS or AMS2MMSV, allowing you to  listen  to  some  of          those great old AMS files on your synthesizer using MMS.               The main difference between the file formats in the  two          versions of AMS relates to how tied notes are handled. In AMS          II, the note is flagged as being tied by having 128 added  to          the note number. In AMS, a non-tied note  is  stored  with  a          duration value 3 less than normal, and a short rest (also  of          duration 3) is inserted after the note. My  program  searches          out the existence of these  short  rests  and  deletes  them,          adding 3 to the duration of the previous note. If the rest is          missing and the two adjacent notes are the  same  tone,  then          the first note is assumed to be tied to the second, and so  I          add 128 to the note number and extend its duration by 3.               One other difference causes problems with  some  of  the          converted files. There are 10 numbers on the front of an  AMS          file; the first 8 hold the number of measures and offsets  to          the last notes in each of the four voices, the  ninth  number          is the tempo and the tenth is usually 30. If this last number          is higher, then the music plays faster than the  tempo  value          would imply (e.g. a 60 causes it to play twice as fast).  AMS          II files also have  10  numbers,  but  the  last  one  has  a          different meaning. When reading the AMS file, I check to  see          if the tenth number is 30, and issue  a  warning  message  if          not. It turns out that most of the demo files on the original          AMS disk do not convert properly because of this  problem.  I          have not found any other files as yet which do not have a  30          as the tenth number.               I have used this program to convert dozens of  excellent          AMS files. I hope you will find it as useful as I do.