MIKALLEG WITH ALLEGRO 2.2 (May-18-1997)
    A game programming and mod library for DJGPP compiler

Allegro 2.2 is by Shawn Hergreaves, Mikmod 2.10 is by Jean-Paul Mikkers and
Mikalleg with allegro 2.2 is by Guan Foo Wah.


===========================================
=========== IMPORTANT !!!!!!!! ============
===========================================
I do not accept responsibility for any effects, adverse or otherwise, 
that this code may have on you, your computer, your sanity, your dog, 
and anything else that you can think of. Use it at your own risk."


===========================================
========= Copyright information ===========
===========================================
Please read \allegro\readme.txt and \mikm210\mikmod.txt for copyright
information on Allegro and Mikmod respectively.


=========================================
=== What is Mikalleg with Allegro 2.2 ===
=========================================
Mikalleg is a game programming and mod libraries for DJGPP compiler. It also
means  

Mikalleg = ( Allegro 2.2 - SAMPLE + ASAMPLE) )
            + ( Mikmod 2.10 - SAMPLE + MSAMPLE) )

In otherwords, Mikalleg is the combination and modification of Allegro 2.2
and Mikmod 2.10 so that it can compile together without any problems. Period.


======================================================
=== Changes to Mikmod and Allegro that I have done ===
======================================================
Set the variable md_dmabufsize in mikmod.c from 20000 to 8000. The original
size is too large. It won't work(99.9%) most of the time on my stupid sound
card. If 8000 still refuse to work on your machine, set it lesser. Make
sure you tell me the number too !

The original version of Allegro and Mikmod has a SAMPLE structure each.
I just change it to something else. Allegro's SAMPLE to ASAMPLE and
Mikmod's SAMPLE to MSAMPLE. It is just that simple.


============================================
=========== Installing MIKALLEG ============
============================================
    Make a directory for Mikalleg (eg. c:\mikalleg) and unzip everything into
    it. Mikalleg contains several subdirectories, so you must specify the -d
    flag to pkunzip.

    Go to your Mikalleg directory and run make.bat. Then so something
    interesting while everything compiles (eg watch a couple of movies, then
    sleep for a year). If all goes according to plan you will end up having
    the liballeg.a, libmik.a and test.exe files. Make.bat will automatically
    run the test.exe after both libraries has been compiled successfully. If
    you missed it, rerun the test.exe

    Note: To run make.bat, make.exe is required. Make.exe is not a part of
          Mikalleg, it is part of djgpp. It is in
          v2gnu/mak*b.zip (whatever the latest version number is) in the same 
          place as the rest of djgpp.
    
    Copy libmik.a to the lib directory of djgpp (eg. c:\djgpp\lib). Then
    copy mikmod.h, mtypes.h and allegro.h to the include directory of djgpp
    (eg. c:\djgpp\include). Libmik.a, mikmod.h, mtypes.h and allegro.h are all located
    at the same directory (only if the compilation is successfull). Although
    Allegro will automatically copy \allegro\allegro.h to the djgpp's include
    directory, it is better to copy the one I have just stated.

    Compile your mikalleg programs with the option -lalleg -lmik.

    REMEMBER : Always include allegro.h after mikmod.h. It will still work
               but you will get a EOF redefined warning during compiling.


===========================================
==== Changes from Allegro to Mikalleg =====
===========================================
    Change all the SAMPLE structure to ASAMPLE structure.
    (eg SAMPLE *XXX to ASAMPLE *XXX) in your program . You can do this easily
    by using find and replace function that you text editor has (or
    it probably has!).


===========================================
==== Changes from MIKMOD to Mikalleg ======
===========================================
    Change all the SAMPLE structure to MSAMPLE structure.
    (eg SAMPLE *XXX to MSAMPLE *XXX) in your program . You can do this easily
    by using find and replace function that you text editor has (or
    it probably has!).


=============================================
========== Sound related issues =============
=============================================
    Don't try to use allegro's install_sound(...) and mikmod's MD_Init()
    at the same time. If you do, the computer will hang !! You can't load
    a wav and mod file from Allegro's DAT and play it on Mikmod's sound
    library. It will not work. If someone can make one and sent it to me,
    that will be highly appreciated.

    In order Mikmod to detect your sound card, make sure the enviroment
    for your sound card has been set (eg. the BLASTER enviroment for your
    Sound Blaster and compatibles). Otherwise you wont able to hear any
    sounds at all.


===========================================
============ About TEST.EXE ===============
===========================================
    TEST.EXE is the simplified version of MIKMOD.EXE and with some allegro
    functions. It will load 7th.s3m which is at the same directory.


=======================================================================
== Will I make Mikalleg with Allegro 3.0 when Allegro 3.0 is out ?? ===
=======================================================================
    If I can, then yes ! Unless the new version also support mod music
    and it as good as mikmod.


==================================
========== My wish list ==========
==================================
    1) Functions to load wav and mod files from Allegro's .DAT files and
       play it using MIKMOD functions. I have tried this but unsuccessfull and
       was so so so so so frustrated. So can anyone volunteer ??? You can
       start by making a loader for UNI or WAV format (all format supported by
       mikmod can be converted to UNI by using the mikcvt.exe).

    2) Someone could write a makefile for mikalleg

    3) Any contribution from anyone is highly appreciated

    4) Allegro 3.0 is out today !!!!

    5) Any suggestion

    6) bug reports(*sigh*) etc.......


===========================================
============ My thanks list ===============
===========================================
    Shawn Hergreaves    -> for Allegro 2.XX library, instructions for making
                           Mikalleg
    Jean-Paul Mikkers   -> for Mikmod 2.10 library
    Dj Deloire          -> for his wonderful DJGPP compiler   


===========================================
============ How to contact me ============
===========================================
   Email:               jgfw@usa.net

   WWW:                 http://www.geocities.com/siliconvalley/vista/8890

   Mikalleg homepage:   http://www.geocities.com/siliconvalley/vista/8890

   Snail mail:          Guan Foo Wah
                        18, SS 17 / 1H,
                        Subang Jaya,
                        47500 Petaling Jaya,
                        Selangor,
                        Malaysia.

   Telephone:           I AM NOT TELLING !!!! 

   On Foot:             ONLY GOD KNOWS  !!!!

   If all else fails:   Jump down from the 20th floor and then ask god for
                        me !!!

