Misc notes - MAME Project files for VC2003.NET (MSVC V7.1)
=====================================================================

These project files lay beside the source tree, in a separate
directory called project.  This was done to keep the root MAME
directory clean from any files created from the build.

The resulting directory tree when unzipping the project archive
should look like this:

project    - the project files
patches    - any source patches needed to compile
             (may be empty, or non-existent)
src/osd/vc - global include file vcmame.h

And additional include file, vcmame.h lives in src/osd/vc, which is
the only addition to the mame source tree.

The patches directory, contains any patches that need to be made to
the main sources, to allow MAME to properly compile.  Any patches in
this directory should be applied from the top directory using the
following command:

patch -p0 <patches/patchname.diff

Where patchname.diff is the name of the patch to apply.

The main solution file is the one that ends in .sln.  This is the
file that you click on to load the project into Visual Studio.

The VC Mame project files are set up to compile either Mame or
Mame32, and will build the entire suite of MAME programs and
utilities.

1. Set your startup project as "mame"
2. Choose your configuration 
3. To build, select Build->Build Solution from the main menu


Binaries are deposited relative to the project files:

ConfigName/ - where configname is the configuration being built.
For example, if you set the Configuration to Debug, the programs
will end up in the Debug directory.  This keeps all the builds
separated nicely, is more in line with the way MSVC does things
by default, and is much easier for me to maintain.

Configurations:

Debug      - MAME Debug build
Release    - MAME Release build

Debug32    - MAME32 Debug Build
Release32  - MAME32 Release Build


Projects:

c68000
chdman
expat
file2str
jedutil
ledutil
libosd
libutil
mamemeta
mkhelp
png2bdc
romcmp
src2html
srcclean
verinfo
zlib
mame


Library projects:

expat     - Expat Lib (XML Library)
libosd    - OSD Lib (Core OSD Library)
libutil   - UTIL Lib (Core Utilities Library)
zlib      - ZLib Lib (Zip Library)


Build Tools: Used in the build process to build MAME

c68000    - Creates opcodes source files for m68000 cpu
file2str  - Create C include files from binary data
            Used for built-in font and layouts
png2bdc   - Create BDC Font from a PNG
            Used for creating the BDC font that is fed to file2str
verinfo   - Create VERSION resource for MAME/MAME32/MESS


Utility Projects:  Part of the MAME distribution, but optional.

chdman    -  Builds CHDMan utility
jedutil   -  Builds JEDUtil
ledutil   -  Builds LEDUtil (windows specific)
mamemeta  -  Builds mamemeta utility
romcmp    -  Builds ROM Compare utility
src2html  -  Builds SRC to HTML utility
srcclean  -  Builds SRC Clean utility


Project dependacies:

c68000:   NONE
chdman:   expat, libosd, libutil, zlib
expat:    NONE
file2str: libosd
jedutil:  expat, libosd, libutil, zlib
ledutil:  libosd
libosd:   NONE
libutil:  NONE
makemeta: expat, libosd, libutil, zlib
png2bdc:  expat, libosd, libutil, zlib
romcmp:   expat, libosd, libutil, zlib
src2html: expat, libosd, libutil, zlib
srcclean: expat, libosd, libutil, zlib
verinfo:  NONE
zlib:     NONE

mame:     c68000, expat, file2str, libosd, ibutil, png2bdc, zlib, mkhelp(Mame32), verinfo


 - Mike -