Major updates!
This commit is contained in:
@@ -1,182 +1,183 @@
|
||||
#Copyright (C) 1997-2001 ZSNES Team ( zsknight@zsnes.com / _demo_@zsnes.com )
|
||||
#
|
||||
#This program is free software; you can redistribute it and/or
|
||||
#modify it under the terms of the GNU General Public License
|
||||
#as published by the Free Software Foundation; either
|
||||
#version 2 of the License, or (at your option) any later
|
||||
#version.
|
||||
#
|
||||
#This program is distributed in the hope that it will be useful,
|
||||
#but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
#GNU General Public License for more details.
|
||||
#
|
||||
#You should have received a copy of the GNU General Public License
|
||||
#along with this program; if not, write to the Free Software
|
||||
#Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
CHIPDIR=chips
|
||||
CPUDIR=cpu
|
||||
DOSDIR=dos
|
||||
GUIDIR=gui
|
||||
VIDEODIR=video
|
||||
WINDIR=linux
|
||||
OBJDIR=obj
|
||||
ZIPDIR=zip
|
||||
|
||||
CHIPSOBJ=${CHIPDIR}/sfxproc.o ${CHIPDIR}/fxemu2.o ${CHIPDIR}/dsp1proc.o\
|
||||
${CHIPDIR}/fxemu2b.o ${CHIPDIR}/fxemu2c.o ${CHIPDIR}/fxtable.o\
|
||||
${CHIPDIR}/sa1proc.o ${CHIPDIR}/sa1regs.o ${CHIPDIR}/dsp1emu.o
|
||||
|
||||
CPUOBJ=${CPUDIR}/addrni.o ${CPUDIR}/dma.o ${CPUDIR}/dsp.o ${CPUDIR}/dspproc.o\
|
||||
${CPUDIR}/execute.o ${CPUDIR}/irq.o ${CPUDIR}/memory.o \
|
||||
${CPUDIR}/spc700.o ${CPUDIR}/stable.o ${CPUDIR}/table.o\
|
||||
${CPUDIR}/tableb.o ${CPUDIR}/tablec.o
|
||||
|
||||
GUIOBJ=${GUIDIR}/gui.o ${GUIDIR}/menu.o
|
||||
|
||||
VIDEOBJ=${VIDEODIR}/makev16b.o ${VIDEODIR}/makev16t.o ${VIDEODIR}/makevid.o\
|
||||
${VIDEODIR}/mode716.o ${VIDEODIR}/mode716b.o ${VIDEODIR}/mode716d.o\
|
||||
${VIDEODIR}/mode716e.o ${VIDEODIR}/mode716t.o ${VIDEODIR}/mode7.o\
|
||||
${VIDEODIR}/mode7ext.o ${VIDEODIR}/mv16tms.o ${VIDEODIR}/newg162.o\
|
||||
${VIDEODIR}/newgfx16.o ${VIDEODIR}/newgfx2.o ${VIDEODIR}/newgfx.o\
|
||||
${VIDEODIR}/m716text.o ${VIDEODIR}/2xsaiw.o\
|
||||
${VIDEODIR}/procvid.o ${VIDEODIR}/sw_draw.o
|
||||
|
||||
WINOBJ=${WINDIR}/copyvwin.o ${WINDIR}/sdlintrf.o ${WINDIR}/sdllink.o \
|
||||
@GL_DRAW@ ${WINDIR}/sw_draw.o \
|
||||
${WINDIR}/zloaderw.o ${WINDIR}/ztcp.o ${WINDIR}/zipxw.o \
|
||||
${WINDIR}/zfilew.o ${WINDIR}/protect.o
|
||||
|
||||
WINDOSOBJ=${DOSDIR}/debug.o ${DOSDIR}/joy.o ${DOSDIR}/modemrtn.o ${DOSDIR}/vesa2.o\
|
||||
${DOSDIR}/initvid.o ${DOSDIR}/sw.o ${DOSDIR}/gppro.o ${DOSDIR}/vesa12.o
|
||||
|
||||
#PREOBJ=${OBJDIR}/unzip.o ${OBJDIR}/zzip.o ${DOSDIR}/zsipx.o
|
||||
|
||||
ZIPOBJ=${ZIPDIR}/zzip.o ${ZIPDIR}/unzip.o ${ZIPDIR}/zpng.o
|
||||
|
||||
MAINOBJ=cfgload.o endmem.o fixsin.o init.o ui.o vcache.o water.o smoke.o burn.o
|
||||
|
||||
OBJS=${CHIPSOBJ} ${CPUOBJ} ${WINOBJ} ${WINDOSOBJ} ${GUIOBJ} ${VIDEOBJ} ${ZIPOBJ} ${MAINOBJ}
|
||||
|
||||
.SUFFIXES: .c .asm
|
||||
|
||||
%.o: %.c
|
||||
@CC@ @CFLAGS@ -o $@ -c $<
|
||||
|
||||
%.o: %.asm
|
||||
@NASMPATH@ @NFLAGS@ -o $@ $<
|
||||
|
||||
ALL: @ZSNESEXE@
|
||||
|
||||
@ZSNESEXE@: ${OBJS}
|
||||
@CC@ -o @ZSNESEXE@ ${OBJS} @CFLAGS@ @LDFLAGS@
|
||||
|
||||
${ZIPDIR}/zpng.o: ${ZIPDIR}/zpng.c ${ZIPDIR}/zpng.h
|
||||
${ZIPDIR}/unzip.o: ${ZIPDIR}/unzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zzip.o: ${ZIPDIR}/zzip.c ${ZIPDIR}/zunzip.h
|
||||
fixsin.o: fixsin.c
|
||||
water.o: water.c
|
||||
smoke.o: smoke.c
|
||||
burn.o: burn.c
|
||||
${VIDEODIR}/procvid.o: ${VIDEODIR}/procvid.asm macros.mac ${VIDEODIR}/copyvid.inc ${VIDEODIR}/2xsaimmx.inc
|
||||
${CHIPDIR}/dsp1proc.o: ${CHIPDIR}/dsp1proc.asm macros.mac
|
||||
${CHIPDIR}/sa1regs.o: ${CHIPDIR}/sa1regs.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
${CHIPDIR}/sfxproc.o: ${CHIPDIR}/sfxproc.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
|
||||
${CHIPDIR}/dsp1emu.o: ${CHIPDIR}/dsp1emu.c
|
||||
ui.o: ui.asm macros.mac
|
||||
cfgload.o:cfgload.asm macros.mac
|
||||
init.o:init.asm macros.mac
|
||||
${DOSDIR}/debug.o: ${DOSDIR}/debug.asm macros.mac
|
||||
${CPUDIR}/execute.o: ${CPUDIR}/execute.asm macros.mac
|
||||
${CPUDIR}/table.o: ${CPUDIR}/table.asm ${CPUDIR}/65816d.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816.inc\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regs.inc ${CPUDIR}/regsw.mac\
|
||||
${CPUDIR}/regsw.inc macros.mac
|
||||
${CPUDIR}/tableb.o: ${CPUDIR}/tableb.asm ${CPUDIR}/65816db.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816b.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/tablec.o: ${CPUDIR}/tablec.asm ${CPUDIR}/65816dc.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816c.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/stable.o: ${CPUDIR}/stable.asm ${CPUDIR}/s65816d.inc\
|
||||
${CPUDIR}/saddress.inc ${CPUDIR}/saddrni.inc ${CPUDIR}/se65816.inc\
|
||||
macros.mac
|
||||
${CPUDIR}/memory.o: ${CPUDIR}/memory.asm macros.mac
|
||||
${CPUDIR}/dma.o: ${CPUDIR}/dma.asm macros.mac
|
||||
${DOSDIR}/dosintrf.o: ${DOSDIR}/dosintrf.asm macros.mac
|
||||
vcache.o:vcache.asm macros.mac
|
||||
${DOSDIR}/initvid.o:${DOSDIR}/initvid.asm macros.mac
|
||||
${VIDEODIR}/makevid.o: ${VIDEODIR}/makevid.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16b.o: ${VIDEODIR}/makev16b.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16t.o: ${VIDEODIR}/makev16t.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mv16tms.o: ${VIDEODIR}/mv16tms.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7.o: ${VIDEODIR}/mode7.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716.o: ${VIDEODIR}/mode716.asm ${VIDEODIR}/mode716.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716b.o:${VIDEODIR}/mode716b.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716t.o:${VIDEODIR}/mode716t.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716d.o:${VIDEODIR}/mode716d.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7ext.o:${VIDEODIR}/mode7ext.asm macros.mac
|
||||
${VIDEODIR}/mode716e.o:${VIDEODIR}/mode716e.asm macros.mac
|
||||
${VIDEODIR}/m716text.o:${VIDEODIR}/m716text.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${CPUDIR}/irq.o: ${CPUDIR}/irq.asm macros.mac
|
||||
${CPUDIR}/dspproc.o: ${CPUDIR}/dspproc.asm macros.mac
|
||||
${CPUDIR}/spc700.o:${CPUDIR}/spc700.asm macros.mac\
|
||||
${CPUDIR}/regsw.mac ${CPUDIR}/spcdef.inc ${CPUDIR}/spcaddr.inc
|
||||
${CPUDIR}/dsp.o: ${CPUDIR}/dsp.asm macros.mac
|
||||
${DOSDIR}/vesa2.o: ${DOSDIR}/vesa2.asm macros.mac
|
||||
${DOSDIR}/vesa12.o: ${DOSDIR}/vesa12.asm macros.mac
|
||||
${DOSDIR}/joy.o: ${DOSDIR}/joy.asm macros.mac
|
||||
${DOSDIR}/sw.o: ${DOSDIR}/sw.asm macros.mac
|
||||
${GUIDIR}/gui.o: ${GUIDIR}/gui.asm ${GUIDIR}/guitools.inc\
|
||||
${GUIDIR}/guimisc.inc ${GUIDIR}/guimouse.inc ${GUIDIR}/guiwindp.inc\
|
||||
${GUIDIR}/guinetpl.inc ${GUIDIR}/guikeys.inc ${GUIDIR}/guicheat.inc\
|
||||
${GUIDIR}/guicombo.inc ${GUIDIR}/guiload.inc macros.mac
|
||||
${GUIDIR}/menu.o: ${GUIDIR}/menu.asm macros.mac
|
||||
${VIDEODIR}/newgfx.o:${VIDEODIR}/newgfx.asm ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx2.mac ${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx2.o:${VIDEODIR}/newgfx2.asm ${VIDEODIR}/newgfxwn.mac\
|
||||
${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx16.o: ${VIDEODIR}/newgfx16.asm macros.mac ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx16.mac ${VIDEODIR}/newg162.mac
|
||||
${VIDEODIR}/newg162.o: macros.mac ${VIDEODIR}/newg162.asm ${VIDEODIR}/newg162.mac\
|
||||
${VIDEODIR}/vidmacro.mac ${VIDEODIR}/newg16wn.mac
|
||||
${CHIPDIR}/fxemu2.o: ${CHIPDIR}/fxemu2.asm ${CHIPDIR}/fxemu2.mac\
|
||||
macros.mac
|
||||
${CHIPSDIR}/fxemu2b.o: ${CHIPDIR}/fxemu2b.asm ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac
|
||||
${CHIPSDIR}/fxemu2c.o: ${CHIPDIR}/fxemu2c.asm macros.mac ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac ${CHIPDIR}/fxemu2c.mac
|
||||
${CHIPDIR}/fxtable.o: ${CHIPDIR}/fxtable.asm macros.mac
|
||||
${DOSDIR}/gppro.o: ${DOSDIR}/gppro.asm macros.mac
|
||||
${DOSDIR}/zsipx.o: ${DOSDIR}/zsipx.asm
|
||||
${CHIPDIR}/sa1proc.o: ${CHIPDIR}/sa1proc.asm macros.mac
|
||||
endmem.o: endmem.asm macros.mac
|
||||
${DOSDIR}/modemrtn.o: ${DOSDIR}/modemrtn.asm macros.mac
|
||||
|
||||
install:
|
||||
@INSTALL@ -m 0755 @ZSNESEXE@ @prefix@/bin
|
||||
@INSTALL@ -m 0644 linux/zsnes.1 @prefix@/man/man1
|
||||
|
||||
uninstall:
|
||||
rm -f @prefix@/bin/$(notdir @ZSNESEXE@) @prefix@/man/man5/zsnes.5
|
||||
|
||||
clean:
|
||||
rm -f ${CHIPDIR}/*.o ${CPUDIR}/*.o ${VIDEODIR}/*.o ${GUIDIR}/*.o ${DOSDIR}/*.o ${WINDIR}/*.o ${ZIPDIR}/*.o *.o @ZSNESEXE@
|
||||
|
||||
distclean:
|
||||
rm -f ${CHIPDIR}/*.o ${CPUDIR}/*.o ${VIDEODIR}/*.o ${GUIDIR}/*.o ${DOSDIR}/*.o ${WINDIR}/*.o ${ZIPDIR}/*.o *.o @ZSNESEXE@ Makefile config.cache config.log config.status config.h
|
||||
|
||||
#Copyright (C) 1997-2001 ZSNES Team ( zsknight@zsnes.com / _demo_@zsnes.com )
|
||||
#
|
||||
#This program is free software; you can redistribute it and/or
|
||||
#modify it under the terms of the GNU General Public License
|
||||
#as published by the Free Software Foundation; either
|
||||
#version 2 of the License, or (at your option) any later
|
||||
#version.
|
||||
#
|
||||
#This program is distributed in the hope that it will be useful,
|
||||
#but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
#GNU General Public License for more details.
|
||||
#
|
||||
#You should have received a copy of the GNU General Public License
|
||||
#along with this program; if not, write to the Free Software
|
||||
#Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
CHIPDIR=chips
|
||||
CPUDIR=cpu
|
||||
DOSDIR=dos
|
||||
GUIDIR=gui
|
||||
VIDEODIR=video
|
||||
WINDIR=linux
|
||||
OBJDIR=obj
|
||||
ZIPDIR=zip
|
||||
|
||||
CHIPSOBJ=${CHIPDIR}/sfxproc.o ${CHIPDIR}/fxemu2.o ${CHIPDIR}/dsp1proc.o\
|
||||
${CHIPDIR}/fxemu2b.o ${CHIPDIR}/fxemu2c.o ${CHIPDIR}/fxtable.o\
|
||||
${CHIPDIR}/sa1proc.o ${CHIPDIR}/sa1regs.o ${CHIPDIR}/dsp1emu.o
|
||||
|
||||
CPUOBJ=${CPUDIR}/addrni.o ${CPUDIR}/dma.o ${CPUDIR}/dsp.o ${CPUDIR}/dspproc.o\
|
||||
${CPUDIR}/execute.o ${CPUDIR}/irq.o ${CPUDIR}/memory.o \
|
||||
${CPUDIR}/spc700.o ${CPUDIR}/stable.o ${CPUDIR}/table.o\
|
||||
${CPUDIR}/tableb.o ${CPUDIR}/tablec.o
|
||||
|
||||
GUIOBJ=${GUIDIR}/gui.o ${GUIDIR}/menu.o
|
||||
|
||||
VIDEOBJ=${VIDEODIR}/makev16b.o ${VIDEODIR}/makev16t.o ${VIDEODIR}/makevid.o\
|
||||
${VIDEODIR}/mode716.o ${VIDEODIR}/mode716b.o ${VIDEODIR}/mode716d.o\
|
||||
${VIDEODIR}/mode716e.o ${VIDEODIR}/mode716t.o ${VIDEODIR}/mode7.o\
|
||||
${VIDEODIR}/mode7ext.o ${VIDEODIR}/mv16tms.o ${VIDEODIR}/newg162.o\
|
||||
${VIDEODIR}/newgfx16.o ${VIDEODIR}/newgfx2.o ${VIDEODIR}/newgfx.o\
|
||||
${VIDEODIR}/m716text.o ${VIDEODIR}/2xsaiw.o\
|
||||
${VIDEODIR}/procvid.o ${VIDEODIR}/sw_draw.o
|
||||
|
||||
WINOBJ=${WINDIR}/copyvwin.o ${WINDIR}/sdlintrf.o ${WINDIR}/sdllink.o \
|
||||
@GL_DRAW@ ${WINDIR}/sw_draw.o \
|
||||
${WINDIR}/zloaderw.o ${WINDIR}/ztcp.o ${WINDIR}/zipxw.o \
|
||||
${WINDIR}/zfilew.o ${WINDIR}/protect.o
|
||||
|
||||
WINDOSOBJ=${DOSDIR}/debug.o ${DOSDIR}/joy.o ${DOSDIR}/modemrtn.o ${DOSDIR}/vesa2.o\
|
||||
${DOSDIR}/initvid.o ${DOSDIR}/sw.o ${DOSDIR}/gppro.o ${DOSDIR}/vesa12.o
|
||||
|
||||
#PREOBJ=${OBJDIR}/unzip.o ${OBJDIR}/zzip.o ${DOSDIR}/zsipx.o
|
||||
|
||||
ZIPOBJ=${ZIPDIR}/zzip.o ${ZIPDIR}/unzip.o ${ZIPDIR}/zpng.o
|
||||
|
||||
MAINOBJ=cfgload.o endmem.o fixsin.o init.o initc.o ui.o vcache.o water.o smoke.o burn.o
|
||||
|
||||
OBJS=${CHIPSOBJ} ${CPUOBJ} ${WINOBJ} ${WINDOSOBJ} ${GUIOBJ} ${VIDEOBJ} ${ZIPOBJ} ${MAINOBJ}
|
||||
|
||||
.SUFFIXES: .c .asm
|
||||
|
||||
%.o: %.c
|
||||
@CC@ @CFLAGS@ -o $@ -c $<
|
||||
|
||||
%.o: %.asm
|
||||
@NASMPATH@ @NFLAGS@ -o $@ $<
|
||||
|
||||
ALL: @ZSNESEXE@
|
||||
|
||||
@ZSNESEXE@: ${OBJS}
|
||||
@CC@ -o @ZSNESEXE@ ${OBJS} @CFLAGS@ @LDFLAGS@
|
||||
|
||||
${ZIPDIR}/zpng.o: ${ZIPDIR}/zpng.c ${ZIPDIR}/zpng.h
|
||||
${ZIPDIR}/unzip.o: ${ZIPDIR}/unzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zzip.o: ${ZIPDIR}/zzip.c ${ZIPDIR}/zunzip.h
|
||||
fixsin.o: fixsin.c
|
||||
water.o: water.c
|
||||
smoke.o: smoke.c
|
||||
burn.o: burn.c
|
||||
${VIDEODIR}/procvid.o: ${VIDEODIR}/procvid.asm macros.mac ${VIDEODIR}/copyvid.inc ${VIDEODIR}/2xsaimmx.inc
|
||||
${CHIPDIR}/dsp1proc.o: ${CHIPDIR}/dsp1proc.asm macros.mac
|
||||
${CHIPDIR}/sa1regs.o: ${CHIPDIR}/sa1regs.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
${CHIPDIR}/sfxproc.o: ${CHIPDIR}/sfxproc.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
|
||||
${CHIPDIR}/dsp1emu.o: ${CHIPDIR}/dsp1emu.c
|
||||
ui.o: ui.asm macros.mac
|
||||
cfgload.o:cfgload.asm macros.mac
|
||||
init.o:init.asm macros.mac
|
||||
initc.o:init.c
|
||||
${DOSDIR}/debug.o: ${DOSDIR}/debug.asm macros.mac
|
||||
${CPUDIR}/execute.o: ${CPUDIR}/execute.asm macros.mac
|
||||
${CPUDIR}/table.o: ${CPUDIR}/table.asm ${CPUDIR}/65816d.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816.inc\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regs.inc ${CPUDIR}/regsw.mac\
|
||||
${CPUDIR}/regsw.inc macros.mac
|
||||
${CPUDIR}/tableb.o: ${CPUDIR}/tableb.asm ${CPUDIR}/65816db.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816b.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/tablec.o: ${CPUDIR}/tablec.asm ${CPUDIR}/65816dc.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816c.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/stable.o: ${CPUDIR}/stable.asm ${CPUDIR}/s65816d.inc\
|
||||
${CPUDIR}/saddress.inc ${CPUDIR}/saddrni.inc ${CPUDIR}/se65816.inc\
|
||||
macros.mac
|
||||
${CPUDIR}/memory.o: ${CPUDIR}/memory.asm macros.mac
|
||||
${CPUDIR}/dma.o: ${CPUDIR}/dma.asm macros.mac
|
||||
${DOSDIR}/dosintrf.o: ${DOSDIR}/dosintrf.asm macros.mac
|
||||
vcache.o:vcache.asm macros.mac
|
||||
${DOSDIR}/initvid.o:${DOSDIR}/initvid.asm macros.mac
|
||||
${VIDEODIR}/makevid.o: ${VIDEODIR}/makevid.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16b.o: ${VIDEODIR}/makev16b.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16t.o: ${VIDEODIR}/makev16t.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mv16tms.o: ${VIDEODIR}/mv16tms.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7.o: ${VIDEODIR}/mode7.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716.o: ${VIDEODIR}/mode716.asm ${VIDEODIR}/mode716.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716b.o:${VIDEODIR}/mode716b.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716t.o:${VIDEODIR}/mode716t.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716d.o:${VIDEODIR}/mode716d.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7ext.o:${VIDEODIR}/mode7ext.asm macros.mac
|
||||
${VIDEODIR}/mode716e.o:${VIDEODIR}/mode716e.asm macros.mac
|
||||
${VIDEODIR}/m716text.o:${VIDEODIR}/m716text.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${CPUDIR}/irq.o: ${CPUDIR}/irq.asm macros.mac
|
||||
${CPUDIR}/dspproc.o: ${CPUDIR}/dspproc.asm macros.mac
|
||||
${CPUDIR}/spc700.o:${CPUDIR}/spc700.asm macros.mac\
|
||||
${CPUDIR}/regsw.mac ${CPUDIR}/spcdef.inc ${CPUDIR}/spcaddr.inc
|
||||
${CPUDIR}/dsp.o: ${CPUDIR}/dsp.asm macros.mac
|
||||
${DOSDIR}/vesa2.o: ${DOSDIR}/vesa2.asm macros.mac
|
||||
${DOSDIR}/vesa12.o: ${DOSDIR}/vesa12.asm macros.mac
|
||||
${DOSDIR}/joy.o: ${DOSDIR}/joy.asm macros.mac
|
||||
${DOSDIR}/sw.o: ${DOSDIR}/sw.asm macros.mac
|
||||
${GUIDIR}/gui.o: ${GUIDIR}/gui.asm ${GUIDIR}/guitools.inc\
|
||||
${GUIDIR}/guimisc.inc ${GUIDIR}/guimouse.inc ${GUIDIR}/guiwindp.inc\
|
||||
${GUIDIR}/guinetpl.inc ${GUIDIR}/guikeys.inc ${GUIDIR}/guicheat.inc\
|
||||
${GUIDIR}/guicombo.inc ${GUIDIR}/guiload.inc macros.mac
|
||||
${GUIDIR}/menu.o: ${GUIDIR}/menu.asm macros.mac
|
||||
${VIDEODIR}/newgfx.o:${VIDEODIR}/newgfx.asm ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx2.mac ${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx2.o:${VIDEODIR}/newgfx2.asm ${VIDEODIR}/newgfxwn.mac\
|
||||
${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx16.o: ${VIDEODIR}/newgfx16.asm macros.mac ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx16.mac ${VIDEODIR}/newg162.mac
|
||||
${VIDEODIR}/newg162.o: macros.mac ${VIDEODIR}/newg162.asm ${VIDEODIR}/newg162.mac\
|
||||
${VIDEODIR}/vidmacro.mac ${VIDEODIR}/newg16wn.mac
|
||||
${CHIPDIR}/fxemu2.o: ${CHIPDIR}/fxemu2.asm ${CHIPDIR}/fxemu2.mac\
|
||||
macros.mac
|
||||
${CHIPSDIR}/fxemu2b.o: ${CHIPDIR}/fxemu2b.asm ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac
|
||||
${CHIPSDIR}/fxemu2c.o: ${CHIPDIR}/fxemu2c.asm macros.mac ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac ${CHIPDIR}/fxemu2c.mac
|
||||
${CHIPDIR}/fxtable.o: ${CHIPDIR}/fxtable.asm macros.mac
|
||||
${DOSDIR}/gppro.o: ${DOSDIR}/gppro.asm macros.mac
|
||||
${DOSDIR}/zsipx.o: ${DOSDIR}/zsipx.asm
|
||||
${CHIPDIR}/sa1proc.o: ${CHIPDIR}/sa1proc.asm macros.mac
|
||||
endmem.o: endmem.asm macros.mac
|
||||
${DOSDIR}/modemrtn.o: ${DOSDIR}/modemrtn.asm macros.mac
|
||||
|
||||
install:
|
||||
@INSTALL@ -m 0755 @ZSNESEXE@ @prefix@/bin
|
||||
@INSTALL@ -m 0644 linux/zsnes.1 @prefix@/man/man1
|
||||
|
||||
uninstall:
|
||||
rm -f @prefix@/bin/$(notdir @ZSNESEXE@) @prefix@/man/man5/zsnes.5
|
||||
|
||||
clean:
|
||||
rm -f ${CHIPDIR}/*.o ${CPUDIR}/*.o ${VIDEODIR}/*.o ${GUIDIR}/*.o ${DOSDIR}/*.o ${WINDIR}/*.o ${ZIPDIR}/*.o *.o @ZSNESEXE@
|
||||
|
||||
distclean:
|
||||
rm -f ${CHIPDIR}/*.o ${CPUDIR}/*.o ${VIDEODIR}/*.o ${GUIDIR}/*.o ${DOSDIR}/*.o ${WINDIR}/*.o ${ZIPDIR}/*.o *.o @ZSNESEXE@ Makefile config.cache config.log config.status config.h
|
||||
|
||||
|
||||
11134
zsnes/src/gui/gui.asm
11134
zsnes/src/gui/gui.asm
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
13144
zsnes/src/init.asm
13144
zsnes/src/init.asm
File diff suppressed because it is too large
Load Diff
318
zsnes/src/initc.c
Executable file
318
zsnes/src/initc.c
Executable file
@@ -0,0 +1,318 @@
|
||||
/*
|
||||
Copyright (C) 2003 ZSNES Team ( zsknight@zsnes.com / _demo_@zsnes.com )
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later
|
||||
version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
|
||||
//C++ style code in C
|
||||
#define bool unsigned char
|
||||
#define true 1
|
||||
#define false 0
|
||||
|
||||
#define Lo 0x7FC0
|
||||
#define Hi 0xFFC0
|
||||
#define EHi 0x40FFC0
|
||||
|
||||
|
||||
//I want to port over the more complicated
|
||||
//functions from init.asm, or replace with
|
||||
//better versions from NSRT. -Nach
|
||||
|
||||
|
||||
//init.asm goodnes
|
||||
extern unsigned int NumofBanks;
|
||||
extern unsigned int NumofBytes;
|
||||
extern unsigned int *romdata;
|
||||
extern unsigned char romtype;
|
||||
extern unsigned char Interleaved;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
unsigned int infoloc;
|
||||
|
||||
//Deinterleave functions
|
||||
bool validChecksum(unsigned char *ROM, int BankLoc)
|
||||
{
|
||||
if (ROM[BankLoc + 28] + (ROM[BankLoc + 29] << 8) +
|
||||
ROM[BankLoc + 30] + (ROM[BankLoc + 31] << 8) == 0xFFFF)
|
||||
{
|
||||
return(true);
|
||||
}
|
||||
return(false);
|
||||
}
|
||||
|
||||
void swapBlocks(char *blocks)
|
||||
{
|
||||
int i,j,k;
|
||||
for (i = 0; i < NumofBanks; i++)
|
||||
{
|
||||
for (j = 0; j < NumofBanks; j++)
|
||||
{
|
||||
if (blocks[j] == i)
|
||||
{
|
||||
char b;
|
||||
unsigned int temp,
|
||||
*loc1 = romdata + blocks[i]*0x2000,
|
||||
*loc2 = romdata + blocks[j]*0x2000;
|
||||
for (k = 0; k < 0x2000; k++)
|
||||
{
|
||||
temp = loc1[k];
|
||||
loc1[k] = loc2[k];
|
||||
loc2[k] = temp;
|
||||
}
|
||||
b = blocks[j];
|
||||
blocks[j] = blocks[i];
|
||||
blocks[i] = b;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void deintlv1()
|
||||
{
|
||||
int i, numblocks = NumofBanks/2;
|
||||
char blocks[256];
|
||||
for (i = 0; i < numblocks; i++)
|
||||
{
|
||||
blocks[i * 2] = i + numblocks;
|
||||
blocks[i * 2 + 1] = i;
|
||||
}
|
||||
swapBlocks(blocks);
|
||||
}
|
||||
|
||||
void CheckIntl1(unsigned char *ROM)
|
||||
{
|
||||
unsigned int ROMmidPoint = NumofBytes / 2;
|
||||
if (validChecksum(ROM, ROMmidPoint + Lo) &&
|
||||
!validChecksum(ROM, Lo) &&
|
||||
ROM[ROMmidPoint+Lo+25] < 14) //Country Code
|
||||
{
|
||||
deintlv1();
|
||||
Interleaved = true;
|
||||
}
|
||||
else if (validChecksum(ROM, Lo) && !validChecksum(ROM, Hi) &&
|
||||
ROM[Lo+25] < 14 && //Country code
|
||||
//Rom make up
|
||||
(ROM[Lo+21] == 33 || ROM[Lo+21] == 49 || ROM[Lo+21] == 53))
|
||||
{
|
||||
if (ROM[Lo+20] == 32 ||//Check that Header name did not overflow
|
||||
!(ROM[Lo+21] == ROM[Lo+20] || ROM[Lo+21] == ROM[Lo+19] ||
|
||||
ROM[Lo+21] == ROM[Lo+18] || ROM[Lo+21] == ROM[Lo+17]))
|
||||
{
|
||||
deintlv1();
|
||||
Interleaved = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//It would be nice to find a way to eliminate the 2MB here
|
||||
//Then we can also drop the includes of these two
|
||||
#include <string.h>
|
||||
#include <malloc.h>
|
||||
void deintToP()
|
||||
{
|
||||
int i;
|
||||
char blocks[256];
|
||||
char *ROM = (char *)romdata;
|
||||
char *ROMSwap = (char *)malloc(0x200000);
|
||||
if (ROMSwap)
|
||||
{
|
||||
memmove(ROMSwap, ROM, 0x200000); //Copy Small ROM to RAM
|
||||
memmove(ROM, &ROM[0x200000], 0x400000); //Move Large ROM to front
|
||||
memmove(&ROM[0x400000], ROMSwap, 0x200000); //Place Small ROM after
|
||||
free(ROMSwap);
|
||||
}
|
||||
|
||||
//Deinterleave the 4MB ROM first
|
||||
NumofBanks = 128;
|
||||
deintlv1();
|
||||
|
||||
//Now the 2MB one
|
||||
NumofBanks = 64;
|
||||
romdata += 0x100000; //Ofset pointer
|
||||
deintlv1();
|
||||
|
||||
//Now fix the data and we're done
|
||||
NumofBanks = 192;
|
||||
romdata -= 0x100000;
|
||||
}
|
||||
|
||||
|
||||
//ROM loading functions, which some strangly enough were in guiload.inc
|
||||
bool AllASCII(char *b, int size)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < size; i++)
|
||||
{
|
||||
if (b[i] < 32 || b[i] > 126)
|
||||
{
|
||||
return(false);
|
||||
}
|
||||
}
|
||||
return(true);
|
||||
}
|
||||
|
||||
int InfoScore(char *Buffer)
|
||||
{
|
||||
int score = 0;
|
||||
if (Buffer[26] == 0x33) { score += 2; }
|
||||
if ((Buffer[21] & 0xf) < 4) { score += 2; }
|
||||
if (!(Buffer[61] & 0x80)) { score -= 4; }
|
||||
if ((1 << (Buffer[23] - 7)) > 48) { score -= 1; }
|
||||
if (Buffer[25] < 14) { score += 1; }
|
||||
if (!AllASCII(Buffer, 20)) { score -= 1; }
|
||||
return(score);
|
||||
}
|
||||
|
||||
extern unsigned char ForceHiLoROM;
|
||||
extern unsigned char forceromtype;
|
||||
|
||||
void BankCheck()
|
||||
{
|
||||
unsigned char *ROM = (unsigned char *)romdata;
|
||||
infoloc = 0;
|
||||
Interleaved = false;
|
||||
|
||||
if (NumofBytes >= 0x500000)
|
||||
{
|
||||
if (validChecksum(ROM, 0x207FC0))
|
||||
{
|
||||
deintToP();
|
||||
Interleaved = true;
|
||||
}
|
||||
if (validChecksum(ROM, EHi))
|
||||
{
|
||||
romtype = 2;
|
||||
infoloc = EHi;
|
||||
}
|
||||
}
|
||||
|
||||
if (!infoloc)
|
||||
{
|
||||
int loscore, hiscore;
|
||||
|
||||
//Deinterleave if neccesary
|
||||
CheckIntl1(ROM);
|
||||
|
||||
loscore = InfoScore(ROM+Lo);
|
||||
if (validChecksum(ROM, Lo)) { loscore += 3; }
|
||||
|
||||
hiscore = InfoScore(ROM+Hi);
|
||||
if (validChecksum(ROM, Hi)) { hiscore += 3; }
|
||||
|
||||
switch(ROM[Lo + 21])
|
||||
{
|
||||
case 32: case 35: case 48: case 50:
|
||||
case 128: case 156: case 176: case 188: case 252: //BS
|
||||
loscore += 1;
|
||||
break;
|
||||
}
|
||||
switch(ROM[Hi + 21])
|
||||
{
|
||||
case 33: case 49: case 53:
|
||||
case 128: case 156: case 176: case 188: case 252: //BS
|
||||
hiscore += 1;
|
||||
break;
|
||||
}
|
||||
|
||||
if(ForceHiLoROM)
|
||||
{
|
||||
//asm volatile("int $3");
|
||||
if (forceromtype == 1) { loscore += 50; }
|
||||
else if (forceromtype == 2) { hiscore += 50; }
|
||||
}
|
||||
|
||||
if (hiscore > loscore)
|
||||
{
|
||||
romtype = 2;
|
||||
infoloc = Hi;
|
||||
}
|
||||
else
|
||||
{
|
||||
romtype = 1;
|
||||
infoloc = Lo;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
//Checksum functions
|
||||
unsigned short sum(unsigned char *array, unsigned int size)
|
||||
{
|
||||
unsigned short theSum = 0;
|
||||
unsigned int i;
|
||||
for (i = 0; i < size; i++)
|
||||
{
|
||||
theSum += array[i];
|
||||
}
|
||||
return(theSum);
|
||||
}
|
||||
|
||||
//Not entirely accurate pow, but good for our needs and very fast
|
||||
unsigned int npow(register unsigned int base, register unsigned int exponent)
|
||||
{
|
||||
register unsigned int total = base;
|
||||
register unsigned int i;
|
||||
for (i = 1; i < exponent; i++)
|
||||
{
|
||||
total *= base;
|
||||
}
|
||||
return(total);
|
||||
}
|
||||
|
||||
extern unsigned char SPC7110Enable;
|
||||
extern unsigned char BSEnable;
|
||||
extern unsigned short Checksumvalue;
|
||||
void CalcChecksum()
|
||||
{
|
||||
unsigned char *ROM = (unsigned char *)romdata;
|
||||
unsigned short Mbit = NumofBanks >> 2, Checksum;
|
||||
unsigned int ROMSize = NumofBytes;
|
||||
unsigned int Bank = infoloc;
|
||||
|
||||
|
||||
if ((Mbit == 10 || Mbit == 20 || Mbit == 40) && !SPC7110Enable)
|
||||
{
|
||||
unsigned int P1Size = npow(2, ROM[Bank + 23] - 7) * 65536;
|
||||
unsigned short part1 = sum(ROM, P1Size),
|
||||
part2 = sum(ROM+P1Size, ROMSize-P1Size);
|
||||
Checksumvalue = part1 + part2*4;
|
||||
}
|
||||
else if ((Mbit == 12 || Mbit == 24 || Mbit == 48) && !SPC7110Enable)
|
||||
{
|
||||
unsigned int P1Size = npow(2, ROM[Bank + 23] - 7) * 65536;
|
||||
unsigned short part1 = sum(ROM, P1Size),
|
||||
part2 = sum(ROM+P1Size, ROMSize-P1Size);
|
||||
Checksumvalue = part1 + part2 + part2;
|
||||
}
|
||||
else
|
||||
{
|
||||
Checksumvalue = sum(ROM, ROMSize);
|
||||
if (BSEnable)
|
||||
{
|
||||
Checksumvalue -= sum(&ROM[Bank - 16], 48); //Fix for BS Dumps
|
||||
}
|
||||
else if (Mbit == 24)
|
||||
{
|
||||
Checksumvalue += Checksumvalue; //Fix for 24Mb SPC7110 ROMs
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,198 +1,199 @@
|
||||
#Copyright (C) 1997-2001 ZSNES Team ( zsknight@zsnes.com / _demo_@zsnes.com )
|
||||
#
|
||||
#This program is free software; you can redistribute it and/or
|
||||
#modify it under the terms of the GNU General Public License
|
||||
#as published by the Free Software Foundation; either
|
||||
#version 2 of the License, or (at your option) any later
|
||||
#version.
|
||||
#
|
||||
#This program is distributed in the hope that it will be useful,
|
||||
#but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
#GNU General Public License for more details.
|
||||
#
|
||||
#You should have received a copy of the GNU General Public License
|
||||
#along with this program; if not, write to the Free Software
|
||||
#Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
CHIPDIR=chips
|
||||
CPUDIR=cpu
|
||||
DOSDIR=dos
|
||||
GUIDIR=gui
|
||||
VIDEODIR=video
|
||||
WINDIR=win
|
||||
OBJDIR=obj
|
||||
ZIPDIR=zip
|
||||
|
||||
CHIPSOBJ=${CHIPDIR}/dsp1emu.o ${CHIPDIR}/fxemu2.o ${CHIPDIR}/sfxproc.o\
|
||||
${CHIPDIR}/fxemu2b.o ${CHIPDIR}/fxemu2c.o ${CHIPDIR}/fxtable.o\
|
||||
${CHIPDIR}/sa1proc.o ${CHIPDIR}/sa1regs.o ${CHIPDIR}/dsp1proc.o
|
||||
|
||||
CPUOBJ=${CPUDIR}/addrni.o ${CPUDIR}/dma.o ${CPUDIR}/dsp.o ${CPUDIR}/dspproc.o\
|
||||
${CPUDIR}/execute.o ${CPUDIR}/irq.o ${CPUDIR}/memory.o\
|
||||
${CPUDIR}/spc700.o ${CPUDIR}/stable.o ${CPUDIR}/table.o\
|
||||
${CPUDIR}/tableb.o ${CPUDIR}/tablec.o
|
||||
|
||||
GUIOBJ=${GUIDIR}/gui.o ${GUIDIR}/menu.o
|
||||
|
||||
VIDEOBJ=${VIDEODIR}/makev16b.o ${VIDEODIR}/makev16t.o ${VIDEODIR}/makevid.o\
|
||||
${VIDEODIR}/mode716.o ${VIDEODIR}/mode716b.o ${VIDEODIR}/mode716d.o\
|
||||
${VIDEODIR}/mode716e.o ${VIDEODIR}/mode716t.o ${VIDEODIR}/mode7.o\
|
||||
${VIDEODIR}/mode7ext.o ${VIDEODIR}/mv16tms.o ${VIDEODIR}/newg162.o\
|
||||
${VIDEODIR}/newgfx16.o ${VIDEODIR}/newgfx2.o ${VIDEODIR}/newgfx.o\
|
||||
${VIDEODIR}/m716text.o ${VIDEODIR}/procvid.o
|
||||
|
||||
DOSOBJ= ${DOSDIR}/dosintrf.o ${DOSDIR}/gppro.o ${DOSDIR}/debug.o\
|
||||
${DOSDIR}/initvid.o ${DOSDIR}/modemrtn.o ${DOSDIR}/sw32.o\
|
||||
${DOSDIR}/joy.o ${DOSDIR}/sound.o ${DOSDIR}/sw.o ${DOSDIR}/vesa12.o\
|
||||
${DOSDIR}/vesa2.o ${DOSDIR}/zloader.o ${DOSDIR}/zsipx.o\
|
||||
${DOSDIR}/zfile.o
|
||||
|
||||
WINOBJ=${WINDIR}/copywin.o ${WINDIR}/winintrf.o ${WINDIR}/winlink.o\
|
||||
${WINDIR}/zloaderw.o ${WINDIR}/ztcp.o ${WINDIR}/zipxw.o
|
||||
|
||||
PREOBJ=${OBJDIR}/dosbuff.o ${OBJDIR}/ipx.o ${OBJDIR}/zipx.o
|
||||
|
||||
ZIPOBJ=${ZIPDIR}/zzip.o ${ZIPDIR}/unzip.o ${ZIPDIR}/zpng.o
|
||||
|
||||
MAINOBJ=cfgload.o endmem.o fixsin.o init.o ui.o vcache.o water.o smoke.o burn.o
|
||||
|
||||
|
||||
OBJS=${CHIPSOBJ} ${CPUOBJ} ${DOSOBJ} ${GUIOBJ} ${VIDEOBJ} ${PREOBJ} ${MAINOBJ} ${ZIPOBJ}
|
||||
LIBS=-lz -lm -lpng
|
||||
#CFLAGS=-O2 -Wall -Wno-unused -D__MSDOS__
|
||||
CFLAGS=-O3 -march=i586 -fno-rtti -fno-exceptions -ffast-math\
|
||||
-fomit-frame-pointer -fno-unroll-loops -Wall -Wno-unused -D__MSDOS__
|
||||
ASM=nasm
|
||||
ASMFLAGS=-O1 -f coff -D__MSDOS__
|
||||
CC=gcc
|
||||
PP=gpp
|
||||
|
||||
|
||||
.SUFFIXES: .c .cpp .asm
|
||||
|
||||
%.o: %.c
|
||||
${CC} ${CFLAGS} -o $@ -c $<
|
||||
|
||||
%.o: %.cpp
|
||||
${PP} ${CFLAGS} -o $@ -c $<
|
||||
|
||||
%.o: %.asm
|
||||
${ASM} ${ASMFLAGS} -o $@ $<
|
||||
|
||||
ALL: zsnes.exe
|
||||
|
||||
debug: zsnesd.exe
|
||||
|
||||
zsnes.exe: ${OBJS}
|
||||
${CC} -Ws -s -o zsnes.exe ${OBJS} ${LIBS}
|
||||
|
||||
zsnesd.exe: ${OBJS}
|
||||
${CC} -Ws -o zsnesd.exe ${OBJS} ${LIBS}
|
||||
|
||||
${DOSDIR}/zloader.o: ${DOSDIR}/zloader.c
|
||||
fixsin.o: fixsin.c
|
||||
water.o: water.c
|
||||
smoke.o: smoke.c
|
||||
burn.o: burn.c
|
||||
${DOSDIR}/zfile.o: ${DOSDIR}/zfile.c
|
||||
${ZIPDIR}/unzip.o: ${ZIPDIR}/unzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zzip.o: ${ZIPDIR}/zzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zpng.o: ${ZIPDIR}/zpng.c ${ZIPDIR}/zpng.h
|
||||
${VIDEODIR}/procvid.o: ${VIDEODIR}/procvid.asm macros.mac ${VIDEODIR}/copyvid.inc ${VIDEODIR}/2xSaImmx.inc
|
||||
${CHIPDIR}/dsp1proc.o: ${CHIPDIR}/dsp1proc.asm macros.mac
|
||||
${CHIPDIR}/sa1regs.o: ${CHIPDIR}/sa1regs.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
${CHIPDIR}/sfxproc.o: ${CHIPDIR}/sfxproc.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
${CHIPDIR}/dsp1emu.o: ${CHIPDIR}/dsp1emu.c
|
||||
ui.o: ui.asm macros.mac
|
||||
cfgload.o:cfgload.asm macros.mac
|
||||
init.o:init.asm macros.mac
|
||||
${DOSDIR}/debug.o: ${DOSDIR}/debug.asm macros.mac
|
||||
${CPUDIR}/execute.o: ${CPUDIR}/execute.asm macros.mac
|
||||
${CPUDIR}/table.o: ${CPUDIR}/table.asm ${CPUDIR}/65816d.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816.inc\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regs.inc ${CPUDIR}/regsw.mac\
|
||||
${CPUDIR}/regsw.inc macros.mac
|
||||
${CPUDIR}/tableb.o: ${CPUDIR}/tableb.asm ${CPUDIR}/65816db.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816b.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/tablec.o: ${CPUDIR}/tablec.asm ${CPUDIR}/65816dc.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816c.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/stable.o: ${CPUDIR}/stable.asm ${CPUDIR}/s65816d.inc\
|
||||
${CPUDIR}/saddress.inc ${CPUDIR}/saddrni.inc ${CPUDIR}/se65816.inc\
|
||||
macros.mac
|
||||
${CPUDIR}/memory.o: ${CPUDIR}/memory.asm macros.mac
|
||||
${CPUDIR}/dma.o: ${CPUDIR}/dma.asm macros.mac
|
||||
${DOSDIR}/dosintrf.o: ${DOSDIR}/dosintrf.asm macros.mac
|
||||
vcache.o:vcache.asm macros.mac
|
||||
${DOSDIR}/initvid.o:${DOSDIR}/initvid.asm macros.mac ${DOSDIR}/vga.inc
|
||||
${VIDEODIR}/makevid.o: ${VIDEODIR}/makevid.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16b.o: ${VIDEODIR}/makev16b.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16t.o: ${VIDEODIR}/makev16t.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mv16tms.o: ${VIDEODIR}/mv16tms.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7.o: ${VIDEODIR}/mode7.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716.o: ${VIDEODIR}/mode716.asm ${VIDEODIR}/mode716.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716b.o:${VIDEODIR}/mode716b.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716t.o:${VIDEODIR}/mode716t.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716d.o:${VIDEODIR}/mode716d.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7ext.o:${VIDEODIR}/mode7ext.asm macros.mac
|
||||
${VIDEODIR}/mode716e.o:${VIDEODIR}/mode716e.asm macros.mac
|
||||
${VIDEODIR}/m716text.o:${VIDEODIR}/m716text.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${CPUDIR}/irq.o: ${CPUDIR}/irq.asm macros.mac
|
||||
${CPUDIR}/dspproc.o: ${CPUDIR}/dspproc.asm macros.mac
|
||||
${CPUDIR}/spc700.o:${CPUDIR}/spc700.asm macros.mac\
|
||||
${CPUDIR}/regsw.mac ${CPUDIR}/spcdef.inc ${CPUDIR}/spcaddr.inc
|
||||
${CPUDIR}/dsp.o: ${CPUDIR}/dsp.asm macros.mac
|
||||
${DOSDIR}/vesa2.o: ${DOSDIR}/vesa2.asm macros.mac
|
||||
${DOSDIR}/vesa12.o: ${DOSDIR}/vesa12.asm macros.mac
|
||||
${DOSDIR}/joy.o: ${DOSDIR}/joy.asm macros.mac
|
||||
${DOSDIR}/sw.o: ${DOSDIR}/sw.asm macros.mac
|
||||
${GUIDIR}/gui.o: ${GUIDIR}/gui.asm ${GUIDIR}/guitools.inc\
|
||||
${GUIDIR}/guimisc.inc ${GUIDIR}/guimouse.inc ${GUIDIR}/guiwindp.inc\
|
||||
${GUIDIR}/guinetpl.inc ${GUIDIR}/guikeys.inc ${GUIDIR}/guicheat.inc\
|
||||
${GUIDIR}/guicombo.inc ${GUIDIR}/guiload.inc macros.mac
|
||||
${GUIDIR}/menu.o: ${GUIDIR}/menu.asm macros.mac
|
||||
${VIDEODIR}/newgfx.o:${VIDEODIR}/newgfx.asm ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx2.mac ${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx2.o:${VIDEODIR}/newgfx2.asm ${VIDEODIR}/newgfxwn.mac\
|
||||
${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx16.o: ${VIDEODIR}/newgfx16.asm macros.mac ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx16.mac ${VIDEODIR}/newg162.mac
|
||||
${VIDEODIR}/newg162.o: macros.mac ${VIDEODIR}/newg162.asm ${VIDEODIR}/newg162.mac\
|
||||
${VIDEODIR}/vidmacro.mac ${VIDEODIR}/newg16wn.mac
|
||||
${CHIPDIR}/fxemu2.o: ${CHIPDIR}/fxemu2.asm ${CHIPDIR}/fxemu2.mac\
|
||||
macros.mac
|
||||
${CHIPSDIR}/fxemu2b.o: ${CHIPDIR}/fxemu2b.asm ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac
|
||||
${CHIPSDIR}/fxemu2c.o: ${CHIPDIR}/fxemu2c.asm macros.mac ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac ${CHIPDIR}/fxemu2c.mac
|
||||
${CHIPDIR}/fxtable.o: ${CHIPDIR}/fxtable.asm macros.mac
|
||||
${DOSDIR}/gppro.o: ${DOSDIR}/gppro.asm macros.mac
|
||||
${DOSDIR}/zsipx.o: ${DOSDIR}/zsipx.asm
|
||||
${CHIPDIR}/sa1proc.o: ${CHIPDIR}/sa1proc.asm macros.mac
|
||||
endmem.o: endmem.asm macros.mac
|
||||
${DOSDIR}/modemrtn.o: ${DOSDIR}/modemrtn.asm macros.mac
|
||||
|
||||
clean:
|
||||
del *.o
|
||||
del ${CHIPDIR}\*.o
|
||||
del ${CPUDIR}\*.o
|
||||
del ${VIDEODIR}\*.o
|
||||
del ${GUIDIR}\*.o
|
||||
del ${DOSDIR}\*.o
|
||||
del ${ZIPDIR}\*.o
|
||||
del zsnes.exe
|
||||
|
||||
#Copyright (C) 1997-2001 ZSNES Team ( zsknight@zsnes.com / _demo_@zsnes.com )
|
||||
#
|
||||
#This program is free software; you can redistribute it and/or
|
||||
#modify it under the terms of the GNU General Public License
|
||||
#as published by the Free Software Foundation; either
|
||||
#version 2 of the License, or (at your option) any later
|
||||
#version.
|
||||
#
|
||||
#This program is distributed in the hope that it will be useful,
|
||||
#but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
#GNU General Public License for more details.
|
||||
#
|
||||
#You should have received a copy of the GNU General Public License
|
||||
#along with this program; if not, write to the Free Software
|
||||
#Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
CHIPDIR=chips
|
||||
CPUDIR=cpu
|
||||
DOSDIR=dos
|
||||
GUIDIR=gui
|
||||
VIDEODIR=video
|
||||
WINDIR=win
|
||||
OBJDIR=obj
|
||||
ZIPDIR=zip
|
||||
|
||||
CHIPSOBJ=${CHIPDIR}/dsp1emu.o ${CHIPDIR}/fxemu2.o ${CHIPDIR}/sfxproc.o\
|
||||
${CHIPDIR}/fxemu2b.o ${CHIPDIR}/fxemu2c.o ${CHIPDIR}/fxtable.o\
|
||||
${CHIPDIR}/sa1proc.o ${CHIPDIR}/sa1regs.o ${CHIPDIR}/dsp1proc.o
|
||||
|
||||
CPUOBJ=${CPUDIR}/addrni.o ${CPUDIR}/dma.o ${CPUDIR}/dsp.o ${CPUDIR}/dspproc.o\
|
||||
${CPUDIR}/execute.o ${CPUDIR}/irq.o ${CPUDIR}/memory.o\
|
||||
${CPUDIR}/spc700.o ${CPUDIR}/stable.o ${CPUDIR}/table.o\
|
||||
${CPUDIR}/tableb.o ${CPUDIR}/tablec.o
|
||||
|
||||
GUIOBJ=${GUIDIR}/gui.o ${GUIDIR}/menu.o
|
||||
|
||||
VIDEOBJ=${VIDEODIR}/makev16b.o ${VIDEODIR}/makev16t.o ${VIDEODIR}/makevid.o\
|
||||
${VIDEODIR}/mode716.o ${VIDEODIR}/mode716b.o ${VIDEODIR}/mode716d.o\
|
||||
${VIDEODIR}/mode716e.o ${VIDEODIR}/mode716t.o ${VIDEODIR}/mode7.o\
|
||||
${VIDEODIR}/mode7ext.o ${VIDEODIR}/mv16tms.o ${VIDEODIR}/newg162.o\
|
||||
${VIDEODIR}/newgfx16.o ${VIDEODIR}/newgfx2.o ${VIDEODIR}/newgfx.o\
|
||||
${VIDEODIR}/m716text.o ${VIDEODIR}/procvid.o
|
||||
|
||||
DOSOBJ= ${DOSDIR}/dosintrf.o ${DOSDIR}/gppro.o ${DOSDIR}/debug.o\
|
||||
${DOSDIR}/initvid.o ${DOSDIR}/modemrtn.o ${DOSDIR}/sw32.o\
|
||||
${DOSDIR}/joy.o ${DOSDIR}/sound.o ${DOSDIR}/sw.o ${DOSDIR}/vesa12.o\
|
||||
${DOSDIR}/vesa2.o ${DOSDIR}/zloader.o ${DOSDIR}/zsipx.o\
|
||||
${DOSDIR}/zfile.o
|
||||
|
||||
WINOBJ=${WINDIR}/copywin.o ${WINDIR}/winintrf.o ${WINDIR}/winlink.o\
|
||||
${WINDIR}/zloaderw.o ${WINDIR}/ztcp.o ${WINDIR}/zipxw.o
|
||||
|
||||
PREOBJ=${OBJDIR}/dosbuff.o ${OBJDIR}/ipx.o ${OBJDIR}/zipx.o
|
||||
|
||||
ZIPOBJ=${ZIPDIR}/zzip.o ${ZIPDIR}/unzip.o ${ZIPDIR}/zpng.o
|
||||
|
||||
MAINOBJ=cfgload.o endmem.o fixsin.o init.o initc.o ui.o vcache.o water.o smoke.o burn.o
|
||||
|
||||
|
||||
OBJS=${CHIPSOBJ} ${CPUOBJ} ${DOSOBJ} ${GUIOBJ} ${VIDEOBJ} ${PREOBJ} ${MAINOBJ} ${ZIPOBJ}
|
||||
LIBS=-lz -lm -lpng
|
||||
#CFLAGS=-O2 -Wall -Wno-unused -D__MSDOS__
|
||||
CFLAGS=-O3 -march=i586 -fno-rtti -fno-exceptions -ffast-math\
|
||||
-fomit-frame-pointer -fno-unroll-loops -Wall -Wno-unused -D__MSDOS__
|
||||
ASM=nasm
|
||||
ASMFLAGS=-O1 -f coff -D__MSDOS__
|
||||
CC=gcc
|
||||
PP=gpp
|
||||
|
||||
|
||||
.SUFFIXES: .c .cpp .asm
|
||||
|
||||
%.o: %.c
|
||||
${CC} ${CFLAGS} -o $@ -c $<
|
||||
|
||||
%.o: %.cpp
|
||||
${PP} ${CFLAGS} -o $@ -c $<
|
||||
|
||||
%.o: %.asm
|
||||
${ASM} ${ASMFLAGS} -o $@ $<
|
||||
|
||||
ALL: zsnes.exe
|
||||
|
||||
debug: zsnesd.exe
|
||||
|
||||
zsnes.exe: ${OBJS}
|
||||
${CC} -Ws -s -o zsnes.exe ${OBJS} ${LIBS}
|
||||
|
||||
zsnesd.exe: ${OBJS}
|
||||
${CC} -Ws -o zsnesd.exe ${OBJS} ${LIBS}
|
||||
|
||||
${DOSDIR}/zloader.o: ${DOSDIR}/zloader.c
|
||||
fixsin.o: fixsin.c
|
||||
water.o: water.c
|
||||
smoke.o: smoke.c
|
||||
burn.o: burn.c
|
||||
${DOSDIR}/zfile.o: ${DOSDIR}/zfile.c
|
||||
${ZIPDIR}/unzip.o: ${ZIPDIR}/unzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zzip.o: ${ZIPDIR}/zzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zpng.o: ${ZIPDIR}/zpng.c ${ZIPDIR}/zpng.h
|
||||
${VIDEODIR}/procvid.o: ${VIDEODIR}/procvid.asm macros.mac ${VIDEODIR}/copyvid.inc ${VIDEODIR}/2xSaImmx.inc
|
||||
${CHIPDIR}/dsp1proc.o: ${CHIPDIR}/dsp1proc.asm macros.mac
|
||||
${CHIPDIR}/sa1regs.o: ${CHIPDIR}/sa1regs.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
${CHIPDIR}/sfxproc.o: ${CHIPDIR}/sfxproc.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
${CHIPDIR}/dsp1emu.o: ${CHIPDIR}/dsp1emu.c
|
||||
ui.o: ui.asm macros.mac
|
||||
cfgload.o:cfgload.asm macros.mac
|
||||
init.o:init.asm macros.mac
|
||||
initc.o:initc.c
|
||||
${DOSDIR}/debug.o: ${DOSDIR}/debug.asm macros.mac
|
||||
${CPUDIR}/execute.o: ${CPUDIR}/execute.asm macros.mac
|
||||
${CPUDIR}/table.o: ${CPUDIR}/table.asm ${CPUDIR}/65816d.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816.inc\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regs.inc ${CPUDIR}/regsw.mac\
|
||||
${CPUDIR}/regsw.inc macros.mac
|
||||
${CPUDIR}/tableb.o: ${CPUDIR}/tableb.asm ${CPUDIR}/65816db.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816b.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/tablec.o: ${CPUDIR}/tablec.asm ${CPUDIR}/65816dc.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816c.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/stable.o: ${CPUDIR}/stable.asm ${CPUDIR}/s65816d.inc\
|
||||
${CPUDIR}/saddress.inc ${CPUDIR}/saddrni.inc ${CPUDIR}/se65816.inc\
|
||||
macros.mac
|
||||
${CPUDIR}/memory.o: ${CPUDIR}/memory.asm macros.mac
|
||||
${CPUDIR}/dma.o: ${CPUDIR}/dma.asm macros.mac
|
||||
${DOSDIR}/dosintrf.o: ${DOSDIR}/dosintrf.asm macros.mac
|
||||
vcache.o:vcache.asm macros.mac
|
||||
${DOSDIR}/initvid.o:${DOSDIR}/initvid.asm macros.mac ${DOSDIR}/vga.inc
|
||||
${VIDEODIR}/makevid.o: ${VIDEODIR}/makevid.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16b.o: ${VIDEODIR}/makev16b.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16t.o: ${VIDEODIR}/makev16t.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mv16tms.o: ${VIDEODIR}/mv16tms.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7.o: ${VIDEODIR}/mode7.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716.o: ${VIDEODIR}/mode716.asm ${VIDEODIR}/mode716.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716b.o:${VIDEODIR}/mode716b.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716t.o:${VIDEODIR}/mode716t.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716d.o:${VIDEODIR}/mode716d.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7ext.o:${VIDEODIR}/mode7ext.asm macros.mac
|
||||
${VIDEODIR}/mode716e.o:${VIDEODIR}/mode716e.asm macros.mac
|
||||
${VIDEODIR}/m716text.o:${VIDEODIR}/m716text.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${CPUDIR}/irq.o: ${CPUDIR}/irq.asm macros.mac
|
||||
${CPUDIR}/dspproc.o: ${CPUDIR}/dspproc.asm macros.mac
|
||||
${CPUDIR}/spc700.o:${CPUDIR}/spc700.asm macros.mac\
|
||||
${CPUDIR}/regsw.mac ${CPUDIR}/spcdef.inc ${CPUDIR}/spcaddr.inc
|
||||
${CPUDIR}/dsp.o: ${CPUDIR}/dsp.asm macros.mac
|
||||
${DOSDIR}/vesa2.o: ${DOSDIR}/vesa2.asm macros.mac
|
||||
${DOSDIR}/vesa12.o: ${DOSDIR}/vesa12.asm macros.mac
|
||||
${DOSDIR}/joy.o: ${DOSDIR}/joy.asm macros.mac
|
||||
${DOSDIR}/sw.o: ${DOSDIR}/sw.asm macros.mac
|
||||
${GUIDIR}/gui.o: ${GUIDIR}/gui.asm ${GUIDIR}/guitools.inc\
|
||||
${GUIDIR}/guimisc.inc ${GUIDIR}/guimouse.inc ${GUIDIR}/guiwindp.inc\
|
||||
${GUIDIR}/guinetpl.inc ${GUIDIR}/guikeys.inc ${GUIDIR}/guicheat.inc\
|
||||
${GUIDIR}/guicombo.inc ${GUIDIR}/guiload.inc macros.mac
|
||||
${GUIDIR}/menu.o: ${GUIDIR}/menu.asm macros.mac
|
||||
${VIDEODIR}/newgfx.o:${VIDEODIR}/newgfx.asm ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx2.mac ${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx2.o:${VIDEODIR}/newgfx2.asm ${VIDEODIR}/newgfxwn.mac\
|
||||
${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx16.o: ${VIDEODIR}/newgfx16.asm macros.mac ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx16.mac ${VIDEODIR}/newg162.mac
|
||||
${VIDEODIR}/newg162.o: macros.mac ${VIDEODIR}/newg162.asm ${VIDEODIR}/newg162.mac\
|
||||
${VIDEODIR}/vidmacro.mac ${VIDEODIR}/newg16wn.mac
|
||||
${CHIPDIR}/fxemu2.o: ${CHIPDIR}/fxemu2.asm ${CHIPDIR}/fxemu2.mac\
|
||||
macros.mac
|
||||
${CHIPSDIR}/fxemu2b.o: ${CHIPDIR}/fxemu2b.asm ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac
|
||||
${CHIPSDIR}/fxemu2c.o: ${CHIPDIR}/fxemu2c.asm macros.mac ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac ${CHIPDIR}/fxemu2c.mac
|
||||
${CHIPDIR}/fxtable.o: ${CHIPDIR}/fxtable.asm macros.mac
|
||||
${DOSDIR}/gppro.o: ${DOSDIR}/gppro.asm macros.mac
|
||||
${DOSDIR}/zsipx.o: ${DOSDIR}/zsipx.asm
|
||||
${CHIPDIR}/sa1proc.o: ${CHIPDIR}/sa1proc.asm macros.mac
|
||||
endmem.o: endmem.asm macros.mac
|
||||
${DOSDIR}/modemrtn.o: ${DOSDIR}/modemrtn.asm macros.mac
|
||||
|
||||
clean:
|
||||
del *.o
|
||||
del ${CHIPDIR}\*.o
|
||||
del ${CPUDIR}\*.o
|
||||
del ${VIDEODIR}\*.o
|
||||
del ${GUIDIR}\*.o
|
||||
del ${DOSDIR}\*.o
|
||||
del ${ZIPDIR}\*.o
|
||||
del zsnes.exe
|
||||
|
||||
|
||||
@@ -1,220 +1,221 @@
|
||||
#Copyright (C) 1997-2001 ZSNES Team ( zsknight@zsnes.com / _demo_@zsnes.com )
|
||||
#
|
||||
#This program is free software; you can redistribute it and/or
|
||||
#modify it under the terms of the GNU General Public License
|
||||
#as published by the Free Software Foundation; either
|
||||
#version 2 of the License, or (at your option) any later
|
||||
#version.
|
||||
#
|
||||
#This program is distributed in the hope that it will be useful,
|
||||
#but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
#GNU General Public License for more details.
|
||||
#
|
||||
#You should have received a copy of the GNU General Public License
|
||||
#along with this program; if not, write to the Free Software
|
||||
#Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
#This file depends on link.win32 so if you modify this makefile,
|
||||
#don't forget to update link.win32
|
||||
#it is quite ugly but without that trick, the compilation didn't
|
||||
#work for me (command line too long)
|
||||
|
||||
#put the correct path to your directx sdk here
|
||||
DXDIR=c:\mssdk
|
||||
|
||||
CHIPDIR=chips
|
||||
CPUDIR=cpu
|
||||
DOSDIR=dos
|
||||
GUIDIR=gui
|
||||
VIDEODIR=video
|
||||
WINDIR=win
|
||||
OBJDIR=obj
|
||||
ZIPDIR=zip
|
||||
|
||||
CHIPSOBJ=${CHIPDIR}/sfxproc.obj ${CHIPDIR}/fxemu2.obj ${CHIPDIR}/dsp1proc.obj\
|
||||
${CHIPDIR}/fxemu2b.obj ${CHIPDIR}/fxemu2c.obj ${CHIPDIR}/fxtable.obj\
|
||||
${CHIPDIR}/sa1proc.obj ${CHIPDIR}/sa1regs.obj ${CHIPDIR}/dsp1emu.obj
|
||||
|
||||
CPUOBJ=${CPUDIR}/addrni.obj ${CPUDIR}/dma.obj ${CPUDIR}/dsp.obj ${CPUDIR}/dspproc.obj\
|
||||
${CPUDIR}/execute.obj ${CPUDIR}/irq.obj ${CPUDIR}/memory.obj\
|
||||
${CPUDIR}/spc700.obj ${CPUDIR}/stable.obj ${CPUDIR}/table.obj\
|
||||
${CPUDIR}/tableb.obj ${CPUDIR}/tablec.obj
|
||||
|
||||
GUIOBJ=${GUIDIR}/gui.obj ${GUIDIR}/menu.obj
|
||||
|
||||
VIDEOBJ=${VIDEODIR}/makev16b.obj ${VIDEODIR}/makev16t.obj ${VIDEODIR}/makevid.obj\
|
||||
${VIDEODIR}/mode716.obj ${VIDEODIR}/mode716b.obj ${VIDEODIR}/mode716d.obj\
|
||||
${VIDEODIR}/mode716e.obj ${VIDEODIR}/mode716t.obj ${VIDEODIR}/mode7.obj\
|
||||
${VIDEODIR}/mode7ext.obj ${VIDEODIR}/mv16tms.obj ${VIDEODIR}/newg162.obj\
|
||||
${VIDEODIR}/newgfx16.obj ${VIDEODIR}/newgfx2.obj ${VIDEODIR}/newgfx.obj\
|
||||
${VIDEODIR}/m716text.obj ${VIDEODIR}/2xsaiw.obj\
|
||||
${VIDEODIR}/procvid.obj ${VIDEODIR}/sw_draw.obj
|
||||
|
||||
WINOBJ=${WINDIR}/copyvwin.obj ${WINDIR}/winintrf.obj ${WINDIR}/winlink.obj\
|
||||
${WINDIR}/zloaderw.obj ${WINDIR}/ztcp.obj ${WINDIR}/zipxw.obj\
|
||||
${WINDIR}/zfilew.obj
|
||||
|
||||
WINDOSOBJ=${DOSDIR}/debug.obj ${DOSDIR}/joy.obj ${DOSDIR}/modemrtn.obj ${DOSDIR}/vesa2.obj\
|
||||
${DOSDIR}/initvid.obj ${DOSDIR}/sw.obj ${DOSDIR}/gppro.obj ${DOSDIR}/vesa12.obj\
|
||||
${DOSDIR}/zsipx.obj
|
||||
|
||||
PREOBJ=
|
||||
|
||||
ZIPOBJ=${ZIPDIR}/zzip.obj ${ZIPDIR}/unzip.obj ${ZIPDIR}/zpng.obj
|
||||
|
||||
MAINOBJ=cfgload.obj endmem.obj fixsin.obj init.obj ui.obj vcache.obj water.obj smoke.obj burn.obj
|
||||
|
||||
OBJS=${CHIPSOBJ} ${CPUOBJ} ${WINOBJ} ${GUIOBJ} ${VIDEOBJ} ${ZIPOBJ} ${MAINOBJ} ${WINDOSOBJ}
|
||||
LIBS=
|
||||
CFLAGS=/Ox /G6 /c /D__WIN32__
|
||||
ASM=nasm
|
||||
ASMFLAGS=-O1 -f win32 -D__WIN32__
|
||||
CC=cl
|
||||
|
||||
.SUFFIXES: .c .cpp .asm
|
||||
|
||||
%.obj : %.c
|
||||
${CC} ${CFLAGS} /Fo$@ $<
|
||||
|
||||
%.obj: %.cpp
|
||||
${CC} ${CFLAGS} /Fo$@ $<
|
||||
|
||||
%.obj: %.asm
|
||||
${ASM} ${ASMFLAGS} -o $@ $<
|
||||
|
||||
ALL: zsnesw.exe
|
||||
|
||||
zsnesw.exe: ${OBJS} ${WINDIR}/zsnes.res
|
||||
cl @link.win32 ${WINDIR}/zsnes.res /link /libpath:${DXDIR}\lib
|
||||
|
||||
${WINDIR}/zsnes.res: ${WINDIR}/zsnes.rc
|
||||
rc ${WINDIR}/zsnes.rc
|
||||
${WINDIR}/copyvwin.obj: ${WINDIR}/copyvwin.asm macros.mac
|
||||
${WINDIR}/winintrf.obj: ${WINDIR}/winintrf.asm macros.mac
|
||||
${WINDIR}/zfilew.obj: ${WINDIR}/zfilew.c
|
||||
${WINDIR}/zipxw.obj: ${WINDIR}/zipxw.c
|
||||
${WINDIR}/zloaderw.obj: ${WINDIR}/zloaderw.c
|
||||
${WINDIR}/ztcp.obj: ${WINDIR}/ztcp.c
|
||||
${WINDIR}/winlink.obj: ${WINDIR}/winlink.cpp ${WINDIR}/resource.h
|
||||
${ZIPDIR}/unzip.obj: ${ZIPDIR}/unzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zzip.obj: ${ZIPDIR}/zzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zpng.obj: ${ZIPDIR}/zpng.c ${ZIPDIR}/zpng.h
|
||||
${DOSDIR}/initvid.o:${DOSDIR}/initvid.asm macros.mac
|
||||
${DOSDIR}/modemrtn.o: ${DOSDIR}/modemrtn.asm macros.mac
|
||||
${DOSDIR}/zsipx.o: ${DOSDIR}/zsipx.asm
|
||||
${DOSDIR}/debug.obj: ${DOSDIR}/debug.asm macros.mac
|
||||
${DOSDIR}/joy.obj: ${DOSDIR}/joy.asm macros.mac
|
||||
${DOSDIR}/vesa2.obj: ${DOSDIR}/vesa2.asm macros.mac
|
||||
${DOSDIR}/gppro.o: ${DOSDIR}/gppro.asm macros.mac
|
||||
${DOSDIR}/sw.o: ${DOSDIR}/sw.asm macros.mac
|
||||
${DOSDIR}/vesa12.o: ${DOSDIR}/vesa12.asm macros.mac
|
||||
fixsin.obj: fixsin.c
|
||||
water.obj: water.c
|
||||
smoke.obj: smoke.c
|
||||
burn.obj: burn.c
|
||||
${VIDEODIR}/2xsaiw.obj: ${VIDEODIR}/2xsaiw.asm macros.mac
|
||||
${VIDEODIR}/procvid.obj: ${VIDEODIR}/procvid.asm macros.mac ${VIDEODIR}/copyvid.inc ${VIDEODIR}/2xSaImmx.inc
|
||||
${CHIPDIR}/sa1regs.obj: ${CHIPDIR}/sa1regs.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
${CHIPDIR}/sfxproc.obj: ${CHIPDIR}/sfxproc.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
|
||||
${CHIPDIR}/dsp1emu.obj: ${CHIPDIR}/dsp1emu.c
|
||||
${CC} ${CFLAGS} /Fo$@ $<
|
||||
${CHIPDIR}/dsp1proc.obj: ${CHIPDIR}/dsp1proc.asm macros.mac
|
||||
ui.obj: ui.asm macros.mac
|
||||
cfgload.obj:cfgload.asm macros.mac
|
||||
init.obj:init.asm macros.mac
|
||||
${DOSDIR}/debug.obj: ${DOSDIR}/debug.asm macros.mac
|
||||
${CPUDIR}/addrni.obj: ${CPUDIR}/addrni.asm
|
||||
${CPUDIR}/execute.obj: ${CPUDIR}/execute.asm macros.mac
|
||||
${CPUDIR}/table.obj: ${CPUDIR}/table.asm ${CPUDIR}/65816d.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816.inc\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regs.inc ${CPUDIR}/regsw.mac\
|
||||
${CPUDIR}/regsw.inc macros.mac
|
||||
${CPUDIR}/tableb.obj: ${CPUDIR}/tableb.asm ${CPUDIR}/65816db.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816b.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/tablec.obj: ${CPUDIR}/tablec.asm ${CPUDIR}/65816dc.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816c.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/stable.obj: ${CPUDIR}/stable.asm ${CPUDIR}/s65816d.inc\
|
||||
${CPUDIR}/saddress.inc ${CPUDIR}/saddrni.inc ${CPUDIR}/se65816.inc\
|
||||
macros.mac
|
||||
${CPUDIR}/memory.obj: ${CPUDIR}/memory.asm macros.mac
|
||||
${CPUDIR}/dma.obj: ${CPUDIR}/dma.asm macros.mac
|
||||
${DOSDIR}/dosintrf.obj: ${DOSDIR}/dosintrf.asm macros.mac
|
||||
vcache.obj:vcache.asm macros.mac
|
||||
${DOSDIR}/initvid.obj:${DOSDIR}/initvid.asm macros.mac
|
||||
${VIDEODIR}/makevid.obj: ${VIDEODIR}/makevid.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16b.obj: ${VIDEODIR}/makev16b.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16t.obj: ${VIDEODIR}/makev16t.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mv16tms.obj: ${VIDEODIR}/mv16tms.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7.obj: ${VIDEODIR}/mode7.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716.obj: ${VIDEODIR}/mode716.asm ${VIDEODIR}/mode716.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716b.obj:${VIDEODIR}/mode716b.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716t.obj:${VIDEODIR}/mode716t.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716d.obj:${VIDEODIR}/mode716d.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7ext.obj:${VIDEODIR}/mode7ext.asm macros.mac
|
||||
${VIDEODIR}/mode716e.obj:${VIDEODIR}/mode716e.asm macros.mac
|
||||
${VIDEODIR}/m716text.obj:${VIDEODIR}/m716text.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${CPUDIR}/irq.obj: ${CPUDIR}/irq.asm macros.mac
|
||||
${CPUDIR}/dspproc.obj: ${CPUDIR}/dspproc.asm macros.mac
|
||||
${CPUDIR}/spc700.obj:${CPUDIR}/spc700.asm macros.mac\
|
||||
${CPUDIR}/regsw.mac ${CPUDIR}/spcdef.inc ${CPUDIR}/spcaddr.inc
|
||||
${CPUDIR}/dsp.obj: ${CPUDIR}/dsp.asm macros.mac
|
||||
${DOSDIR}/vesa2.obj: ${DOSDIR}/vesa2.asm macros.mac
|
||||
${DOSDIR}/vesa12.obj: ${DOSDIR}/vesa12.asm macros.mac
|
||||
${DOSDIR}/joy.obj: ${DOSDIR}/joy.asm macros.mac
|
||||
${DOSDIR}/sw.obj: ${DOSDIR}/sw.asm macros.mac
|
||||
${GUIDIR}/gui.obj: ${GUIDIR}/gui.asm ${GUIDIR}/guitools.inc\
|
||||
${GUIDIR}/guimisc.inc ${GUIDIR}/guimouse.inc ${GUIDIR}/guiwindp.inc\
|
||||
${GUIDIR}/guinetpl.inc ${GUIDIR}/guikeys.inc ${GUIDIR}/guicheat.inc\
|
||||
${GUIDIR}/guicombo.inc ${GUIDIR}/guiload.inc macros.mac
|
||||
${GUIDIR}/menu.obj: ${GUIDIR}/menu.asm macros.mac
|
||||
${VIDEODIR}/newgfx.obj:${VIDEODIR}/newgfx.asm ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx2.mac ${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx2.obj:${VIDEODIR}/newgfx2.asm ${VIDEODIR}/newgfxwn.mac\
|
||||
${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx16.obj: ${VIDEODIR}/newgfx16.asm macros.mac ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx16.mac ${VIDEODIR}/newg162.mac
|
||||
${VIDEODIR}/newg162.obj: macros.mac ${VIDEODIR}/newg162.asm ${VIDEODIR}/newg162.mac\
|
||||
${VIDEODIR}/vidmacro.mac ${VIDEODIR}/newg16wn.mac
|
||||
${CHIPDIR}/fxemu2.obj: ${CHIPDIR}/fxemu2.asm ${CHIPDIR}/fxemu2.mac\
|
||||
macros.mac
|
||||
${CHIPDIR}/fxemu2b.obj: ${CHIPDIR}/fxemu2b.asm ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac
|
||||
${CHIPDIR}/fxemu2c.obj: ${CHIPDIR}/fxemu2c.asm macros.mac ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac ${CHIPDIR}/fxemu2c.mac
|
||||
${CHIPDIR}/fxtable.obj: ${CHIPDIR}/fxtable.asm macros.mac
|
||||
${DOSDIR}/gppro.obj: ${DOSDIR}/gppro.asm macros.mac
|
||||
${DOSDIR}/zsipx.obj: ${DOSDIR}/zsipx.asm
|
||||
${CHIPDIR}/sa1proc.obj: ${CHIPDIR}/sa1proc.asm macros.mac
|
||||
endmem.obj: endmem.asm macros.mac
|
||||
${DOSDIR}/modemrtn.obj: ${DOSDIR}/modemrtn.asm macros.mac
|
||||
|
||||
clean:
|
||||
del *.obj
|
||||
del ${CHIPDIR}\*.obj
|
||||
del ${CPUDIR}\*.obj
|
||||
del ${VIDEODIR}\*.obj
|
||||
del ${GUIDIR}\*.obj
|
||||
del ${WINDIR}\*.obj
|
||||
del ${WINDIR}\zsnes.res
|
||||
del ${ZIPDIR}\*.obj
|
||||
del ${DOSDIR}\*.obj
|
||||
del zsnesw.exe
|
||||
|
||||
|
||||
|
||||
#Copyright (C) 1997-2001 ZSNES Team ( zsknight@zsnes.com / _demo_@zsnes.com )
|
||||
#
|
||||
#This program is free software; you can redistribute it and/or
|
||||
#modify it under the terms of the GNU General Public License
|
||||
#as published by the Free Software Foundation; either
|
||||
#version 2 of the License, or (at your option) any later
|
||||
#version.
|
||||
#
|
||||
#This program is distributed in the hope that it will be useful,
|
||||
#but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
#GNU General Public License for more details.
|
||||
#
|
||||
#You should have received a copy of the GNU General Public License
|
||||
#along with this program; if not, write to the Free Software
|
||||
#Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
#This file depends on link.win32 so if you modify this makefile,
|
||||
#don't forget to update link.win32
|
||||
#it is quite ugly but without that trick, the compilation didn't
|
||||
#work for me (command line too long)
|
||||
|
||||
#put the correct path to your directx sdk here
|
||||
DXDIR=c:\mssdk
|
||||
|
||||
CHIPDIR=chips
|
||||
CPUDIR=cpu
|
||||
DOSDIR=dos
|
||||
GUIDIR=gui
|
||||
VIDEODIR=video
|
||||
WINDIR=win
|
||||
OBJDIR=obj
|
||||
ZIPDIR=zip
|
||||
|
||||
CHIPSOBJ=${CHIPDIR}/sfxproc.obj ${CHIPDIR}/fxemu2.obj ${CHIPDIR}/dsp1proc.obj\
|
||||
${CHIPDIR}/fxemu2b.obj ${CHIPDIR}/fxemu2c.obj ${CHIPDIR}/fxtable.obj\
|
||||
${CHIPDIR}/sa1proc.obj ${CHIPDIR}/sa1regs.obj ${CHIPDIR}/dsp1emu.obj
|
||||
|
||||
CPUOBJ=${CPUDIR}/addrni.obj ${CPUDIR}/dma.obj ${CPUDIR}/dsp.obj ${CPUDIR}/dspproc.obj\
|
||||
${CPUDIR}/execute.obj ${CPUDIR}/irq.obj ${CPUDIR}/memory.obj\
|
||||
${CPUDIR}/spc700.obj ${CPUDIR}/stable.obj ${CPUDIR}/table.obj\
|
||||
${CPUDIR}/tableb.obj ${CPUDIR}/tablec.obj
|
||||
|
||||
GUIOBJ=${GUIDIR}/gui.obj ${GUIDIR}/menu.obj
|
||||
|
||||
VIDEOBJ=${VIDEODIR}/makev16b.obj ${VIDEODIR}/makev16t.obj ${VIDEODIR}/makevid.obj\
|
||||
${VIDEODIR}/mode716.obj ${VIDEODIR}/mode716b.obj ${VIDEODIR}/mode716d.obj\
|
||||
${VIDEODIR}/mode716e.obj ${VIDEODIR}/mode716t.obj ${VIDEODIR}/mode7.obj\
|
||||
${VIDEODIR}/mode7ext.obj ${VIDEODIR}/mv16tms.obj ${VIDEODIR}/newg162.obj\
|
||||
${VIDEODIR}/newgfx16.obj ${VIDEODIR}/newgfx2.obj ${VIDEODIR}/newgfx.obj\
|
||||
${VIDEODIR}/m716text.obj ${VIDEODIR}/2xsaiw.obj\
|
||||
${VIDEODIR}/procvid.obj ${VIDEODIR}/sw_draw.obj
|
||||
|
||||
WINOBJ=${WINDIR}/copyvwin.obj ${WINDIR}/winintrf.obj ${WINDIR}/winlink.obj\
|
||||
${WINDIR}/zloaderw.obj ${WINDIR}/ztcp.obj ${WINDIR}/zipxw.obj\
|
||||
${WINDIR}/zfilew.obj
|
||||
|
||||
WINDOSOBJ=${DOSDIR}/debug.obj ${DOSDIR}/joy.obj ${DOSDIR}/modemrtn.obj ${DOSDIR}/vesa2.obj\
|
||||
${DOSDIR}/initvid.obj ${DOSDIR}/sw.obj ${DOSDIR}/gppro.obj ${DOSDIR}/vesa12.obj\
|
||||
${DOSDIR}/zsipx.obj
|
||||
|
||||
PREOBJ=
|
||||
|
||||
ZIPOBJ=${ZIPDIR}/zzip.obj ${ZIPDIR}/unzip.obj ${ZIPDIR}/zpng.obj
|
||||
|
||||
MAINOBJ=cfgload.obj endmem.obj fixsin.obj init.obj initc.obj ui.obj vcache.obj water.obj smoke.obj burn.obj
|
||||
|
||||
OBJS=${CHIPSOBJ} ${CPUOBJ} ${WINOBJ} ${GUIOBJ} ${VIDEOBJ} ${ZIPOBJ} ${MAINOBJ} ${WINDOSOBJ}
|
||||
LIBS=
|
||||
CFLAGS=/Ox /G6 /c /D__WIN32__
|
||||
ASM=nasm
|
||||
ASMFLAGS=-O1 -f win32 -D__WIN32__
|
||||
CC=cl
|
||||
|
||||
.SUFFIXES: .c .cpp .asm
|
||||
|
||||
%.obj : %.c
|
||||
${CC} ${CFLAGS} /Fo$@ $<
|
||||
|
||||
%.obj: %.cpp
|
||||
${CC} ${CFLAGS} /Fo$@ $<
|
||||
|
||||
%.obj: %.asm
|
||||
${ASM} ${ASMFLAGS} -o $@ $<
|
||||
|
||||
ALL: zsnesw.exe
|
||||
|
||||
zsnesw.exe: ${OBJS} ${WINDIR}/zsnes.res
|
||||
cl @link.win32 ${WINDIR}/zsnes.res /link /libpath:${DXDIR}\lib
|
||||
|
||||
${WINDIR}/zsnes.res: ${WINDIR}/zsnes.rc
|
||||
rc ${WINDIR}/zsnes.rc
|
||||
${WINDIR}/copyvwin.obj: ${WINDIR}/copyvwin.asm macros.mac
|
||||
${WINDIR}/winintrf.obj: ${WINDIR}/winintrf.asm macros.mac
|
||||
${WINDIR}/zfilew.obj: ${WINDIR}/zfilew.c
|
||||
${WINDIR}/zipxw.obj: ${WINDIR}/zipxw.c
|
||||
${WINDIR}/zloaderw.obj: ${WINDIR}/zloaderw.c
|
||||
${WINDIR}/ztcp.obj: ${WINDIR}/ztcp.c
|
||||
${WINDIR}/winlink.obj: ${WINDIR}/winlink.cpp ${WINDIR}/resource.h
|
||||
${ZIPDIR}/unzip.obj: ${ZIPDIR}/unzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zzip.obj: ${ZIPDIR}/zzip.c ${ZIPDIR}/zunzip.h
|
||||
${ZIPDIR}/zpng.obj: ${ZIPDIR}/zpng.c ${ZIPDIR}/zpng.h
|
||||
${DOSDIR}/initvid.o:${DOSDIR}/initvid.asm macros.mac
|
||||
${DOSDIR}/modemrtn.o: ${DOSDIR}/modemrtn.asm macros.mac
|
||||
${DOSDIR}/zsipx.o: ${DOSDIR}/zsipx.asm
|
||||
${DOSDIR}/debug.obj: ${DOSDIR}/debug.asm macros.mac
|
||||
${DOSDIR}/joy.obj: ${DOSDIR}/joy.asm macros.mac
|
||||
${DOSDIR}/vesa2.obj: ${DOSDIR}/vesa2.asm macros.mac
|
||||
${DOSDIR}/gppro.o: ${DOSDIR}/gppro.asm macros.mac
|
||||
${DOSDIR}/sw.o: ${DOSDIR}/sw.asm macros.mac
|
||||
${DOSDIR}/vesa12.o: ${DOSDIR}/vesa12.asm macros.mac
|
||||
fixsin.obj: fixsin.c
|
||||
water.obj: water.c
|
||||
smoke.obj: smoke.c
|
||||
burn.obj: burn.c
|
||||
${VIDEODIR}/2xsaiw.obj: ${VIDEODIR}/2xsaiw.asm macros.mac
|
||||
${VIDEODIR}/procvid.obj: ${VIDEODIR}/procvid.asm macros.mac ${VIDEODIR}/copyvid.inc ${VIDEODIR}/2xSaImmx.inc
|
||||
${CHIPDIR}/sa1regs.obj: ${CHIPDIR}/sa1regs.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
${CHIPDIR}/sfxproc.obj: ${CHIPDIR}/sfxproc.asm macros.mac\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regsw.mac
|
||||
|
||||
${CHIPDIR}/dsp1emu.obj: ${CHIPDIR}/dsp1emu.c
|
||||
${CC} ${CFLAGS} /Fo$@ $<
|
||||
${CHIPDIR}/dsp1proc.obj: ${CHIPDIR}/dsp1proc.asm macros.mac
|
||||
ui.obj: ui.asm macros.mac
|
||||
cfgload.obj:cfgload.asm macros.mac
|
||||
init.obj:init.asm macros.mac
|
||||
initc.obj:initc.c
|
||||
${DOSDIR}/debug.obj: ${DOSDIR}/debug.asm macros.mac
|
||||
${CPUDIR}/addrni.obj: ${CPUDIR}/addrni.asm
|
||||
${CPUDIR}/execute.obj: ${CPUDIR}/execute.asm macros.mac
|
||||
${CPUDIR}/table.obj: ${CPUDIR}/table.asm ${CPUDIR}/65816d.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816.inc\
|
||||
${CPUDIR}/regs.mac ${CPUDIR}/regs.inc ${CPUDIR}/regsw.mac\
|
||||
${CPUDIR}/regsw.inc macros.mac
|
||||
${CPUDIR}/tableb.obj: ${CPUDIR}/tableb.asm ${CPUDIR}/65816db.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816b.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/tablec.obj: ${CPUDIR}/tablec.asm ${CPUDIR}/65816dc.inc\
|
||||
${CPUDIR}/address.inc ${CPUDIR}/addrni.inc ${CPUDIR}/e65816c.inc\
|
||||
${CPUDIR}/regs.mac macros.mac
|
||||
${CPUDIR}/stable.obj: ${CPUDIR}/stable.asm ${CPUDIR}/s65816d.inc\
|
||||
${CPUDIR}/saddress.inc ${CPUDIR}/saddrni.inc ${CPUDIR}/se65816.inc\
|
||||
macros.mac
|
||||
${CPUDIR}/memory.obj: ${CPUDIR}/memory.asm macros.mac
|
||||
${CPUDIR}/dma.obj: ${CPUDIR}/dma.asm macros.mac
|
||||
${DOSDIR}/dosintrf.obj: ${DOSDIR}/dosintrf.asm macros.mac
|
||||
vcache.obj:vcache.asm macros.mac
|
||||
${DOSDIR}/initvid.obj:${DOSDIR}/initvid.asm macros.mac
|
||||
${VIDEODIR}/makevid.obj: ${VIDEODIR}/makevid.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16b.obj: ${VIDEODIR}/makev16b.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/makev16t.obj: ${VIDEODIR}/makev16t.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mv16tms.obj: ${VIDEODIR}/mv16tms.asm ${VIDEODIR}/vidmacro.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7.obj: ${VIDEODIR}/mode7.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716.obj: ${VIDEODIR}/mode716.asm ${VIDEODIR}/mode716.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716b.obj:${VIDEODIR}/mode716b.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716t.obj:${VIDEODIR}/mode716t.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode716d.obj:${VIDEODIR}/mode716d.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${VIDEODIR}/mode7ext.obj:${VIDEODIR}/mode7ext.asm macros.mac
|
||||
${VIDEODIR}/mode716e.obj:${VIDEODIR}/mode716e.asm macros.mac
|
||||
${VIDEODIR}/m716text.obj:${VIDEODIR}/m716text.asm ${VIDEODIR}/mode7.mac\
|
||||
macros.mac
|
||||
${CPUDIR}/irq.obj: ${CPUDIR}/irq.asm macros.mac
|
||||
${CPUDIR}/dspproc.obj: ${CPUDIR}/dspproc.asm macros.mac
|
||||
${CPUDIR}/spc700.obj:${CPUDIR}/spc700.asm macros.mac\
|
||||
${CPUDIR}/regsw.mac ${CPUDIR}/spcdef.inc ${CPUDIR}/spcaddr.inc
|
||||
${CPUDIR}/dsp.obj: ${CPUDIR}/dsp.asm macros.mac
|
||||
${DOSDIR}/vesa2.obj: ${DOSDIR}/vesa2.asm macros.mac
|
||||
${DOSDIR}/vesa12.obj: ${DOSDIR}/vesa12.asm macros.mac
|
||||
${DOSDIR}/joy.obj: ${DOSDIR}/joy.asm macros.mac
|
||||
${DOSDIR}/sw.obj: ${DOSDIR}/sw.asm macros.mac
|
||||
${GUIDIR}/gui.obj: ${GUIDIR}/gui.asm ${GUIDIR}/guitools.inc\
|
||||
${GUIDIR}/guimisc.inc ${GUIDIR}/guimouse.inc ${GUIDIR}/guiwindp.inc\
|
||||
${GUIDIR}/guinetpl.inc ${GUIDIR}/guikeys.inc ${GUIDIR}/guicheat.inc\
|
||||
${GUIDIR}/guicombo.inc ${GUIDIR}/guiload.inc macros.mac
|
||||
${GUIDIR}/menu.obj: ${GUIDIR}/menu.asm macros.mac
|
||||
${VIDEODIR}/newgfx.obj:${VIDEODIR}/newgfx.asm ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx2.mac ${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx2.obj:${VIDEODIR}/newgfx2.asm ${VIDEODIR}/newgfxwn.mac\
|
||||
${VIDEODIR}/newgfx.mac macros.mac
|
||||
${VIDEODIR}/newgfx16.obj: ${VIDEODIR}/newgfx16.asm macros.mac ${VIDEODIR}/vidmacro.mac\
|
||||
${VIDEODIR}/newgfx16.mac ${VIDEODIR}/newg162.mac
|
||||
${VIDEODIR}/newg162.obj: macros.mac ${VIDEODIR}/newg162.asm ${VIDEODIR}/newg162.mac\
|
||||
${VIDEODIR}/vidmacro.mac ${VIDEODIR}/newg16wn.mac
|
||||
${CHIPDIR}/fxemu2.obj: ${CHIPDIR}/fxemu2.asm ${CHIPDIR}/fxemu2.mac\
|
||||
macros.mac
|
||||
${CHIPDIR}/fxemu2b.obj: ${CHIPDIR}/fxemu2b.asm ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac
|
||||
${CHIPDIR}/fxemu2c.obj: ${CHIPDIR}/fxemu2c.asm macros.mac ${CHIPDIR}/fxemu2.mac\
|
||||
${CHIPDIR}/fxemu2b.mac ${CHIPDIR}/fxemu2c.mac
|
||||
${CHIPDIR}/fxtable.obj: ${CHIPDIR}/fxtable.asm macros.mac
|
||||
${DOSDIR}/gppro.obj: ${DOSDIR}/gppro.asm macros.mac
|
||||
${DOSDIR}/zsipx.obj: ${DOSDIR}/zsipx.asm
|
||||
${CHIPDIR}/sa1proc.obj: ${CHIPDIR}/sa1proc.asm macros.mac
|
||||
endmem.obj: endmem.asm macros.mac
|
||||
${DOSDIR}/modemrtn.obj: ${DOSDIR}/modemrtn.asm macros.mac
|
||||
|
||||
clean:
|
||||
del *.obj
|
||||
del ${CHIPDIR}\*.obj
|
||||
del ${CPUDIR}\*.obj
|
||||
del ${VIDEODIR}\*.obj
|
||||
del ${GUIDIR}\*.obj
|
||||
del ${WINDIR}\*.obj
|
||||
del ${WINDIR}\zsnes.res
|
||||
del ${ZIPDIR}\*.obj
|
||||
del ${DOSDIR}\*.obj
|
||||
del zsnesw.exe
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user