📄 makefile
字号:
# Copyright 1996-1997, ESS Technology, Inc.
# SCCSID @(#)makefile 1.386 3/2/98
#
# $LOG$
#
# The following FLAG is set for VCD jumping to GAME
# If Jumping
# set JGAME = -DJUMPGAME
# And if 512K game VCD switch, set JGAME = $(JGAME) -D512K_JUMP
# else JGAME = (void)
# JGAME = -DJUMPGAME -DJUMP_512K
JGAME =
vcdgame := JGAME = -DJUMPGAME
vcdndgame := JGAME = -DJUMPGAME
vcd30game := JGAME = -DJUMPGAME -DJUMP_512K
#
#
# Compiler and Tools that we are using
#
COMPILE = /fsc/soft/src/tools/compiler
BIN = /fsc/soft/src/tools/bin
TOOLS = /fsc/soft/src/tools/bin # New tools
AX = $(TOOLS)/ax
CPP = $(TOOLS)/cpp
LD = $(TOOLS)/ld
RLD = $(TOOLS)/mvdrld
EVDRLD = $(TOOLS)/evdrld
ROM = $(TOOLS)/mvdrom
UNCOMPDIR = /fsc/soft/src/tools/mvd
GCC = gcc -ldl
RM = rm -f
SED = sed
COFF2EXE = echo # Dummy
SCCSCMD = sccs get
INCLUDES = -I$(COMPILE)/h
LIBC = /fsc/soft/src/tools/lib
ECHO = echo
#
# Flags for ESS' C compile (for all targets)
#
FLAGS= -DVCB -O -S -DDVC -fcall-saved-r27 -muse_store_zero=0 -muse_far=1 \
-mcpu=RISCiit $(TRACE)
#
# VP microcode related macros.
#
# (Since some dependency stuff depends on these guys, they have to
# appear before the included files)
#
UCODE_H = uc3208.h # MPEG1 + MUSICAM
dss := UCODE_H = m2vram2.h # MPEG2 + MUSICAM
dvd := UCODE_H = m2vram2.h ac3all.h # MPEG2 + AC3
VPH = vp.h
VPUCODEH = vpucode.h $$(UCODE_H)
# memmap related
DISPINFO_H = dispinfo.h
#
# Original startup.
#
# svcddat2 for dvd2 board.
STARTUP_S = startup.s
fdvdvcd fdvdvcd2 := STARTUP_S = dvdstart.s
svcddat svcddat2 custdvd := STARTUP_S = vstartup.s #vcd 2nd boot code.
#
# System Options;
# Please make sure you customize for your target.
#
# Current options:
# 1) Specify VFD controller:
# One of $(VFDCTL16312), $(VFDCTL12510), or $(VFDCTL2872)
# 2) Remote control type:
# One of -DIR_NEC, -DIR_SAYNO, -DIR_PHILIPS
# 3) Remote control
# Default is the original remote controller. Can also be
# -DNEW_ESS_REMOTE -DESS_REMOTE or -DSAST_REMOTE (debugging version)
#
# IR_SYSCODE is in microvfd.c (2.0) or po4tact.c (1.1) or
# custvfd.c(customer)
# 4) NEW_EMULATOR
# Specify NEW_EMULATOR if you are using the new emulator that allows
# debugging of 256K code (i.e. use A2, A3, and CS1 for ROM emulator
# access)
# 5) VFD display:
# Default is VFD28-0901. Can also be -DVFD_FUTABA (6-BT-267GK)
#
# 6) OSD font
# Use -DOSD_COMPRESS to specify using compressed OSD (handled
# automatically; therefore, this flag should always be specified)
#
# Use -DFOUR_LINE_OSD to specify using the new OSD layout. This
# flag is required when compiling without BF_FLAGS
#
# 7) VCD system
# Use -DVD_VCD for vcd tartgets in dvd system
# 8) Nintendo game
# Use -DNGAME (if you are not planning to use this, please remove
# the flag.) Since ngame.c is a protected module, when ESS makes
# distribution, this flag must be enabled.
SYSOPTIONS = $(VFDCTL16312) -DIR_NEC -DOSD_COMPRESS -DVFD_FUTABA \
$(NEW_EMULATOR) -DNGAME
#
# Batch file for PC make, only for game target
#
BATFILES = mkgame30.bat mkgame.bat
#
# Include common make stuff for UNIX and PC
#
include make.sh
#
# Include make stuff for AC3
#
include make.ac3
#
# Application related defines
#
#
# For DVDVCD targets, default emulator is old.
#
NEW_EMULATOR = -DNEW_EMULATOR
$(DVDVCD1) $(DVDVCD2) $(CUSTDVDVCD) := NEW_EMULATOR =
#
# For DVDVCD targets, don't adjust the stack even if 4-line OSD is used.
#
$(DVDVCD1) $(DVDVCD2) := ADJUST_STACK = 0 # DVD stack is different!
$(CUSTDVDVCD) := ADJUST_STACK = 0 # DVD stack is different!
# Where is the application
EXTDIR = ./game
$(VCD30GAME) $(VCDROMTARGETS) := DRIVEDIR = ./driver
# What is the application target
EXTENSION = vcdgame
$(VCDROMTARGETS) := EXTENSION = vcdrom
vcdndgame := EXTENSION = monitor
$(VCD30GAME) := EXTENSION1 = vcdrom
$(VCD30GAME) := EXTENSION2 = vcd30game
# What is the boot code of the application target
BOOT = boot
$(VCDROMTARGETS) := BOOT = vcdboot
SPU = spu
SPU_C = $(SPU)/spu.c
$(SPU)/spu.o: mvd.h common.h debug.h spoolint.h buffer.h fsosd.h \
$(SPU)/spu.h $(SPU)/spudec.h $(SPU)/spuosd.h
#
# Options for making ROM
#
ROMSIZE = 128
$(VCD20) vcdndgame := ROMSIZE = 256
v20 v20r iv20 iv20r v20nr v20cnr pv20 f20r := ROMSIZE = 256
dvc90 := ROMSIZE = 256
$(VCD30GAME) $(VCDROMTARGETS) := ROMSIZE = 256
$(DVDVCD1) $(DVDVCD2) := ROMSIZE = 256
$(CUSTDVDVCD) := ROMSIZE = 256
#
# MEMWIDTH
#
# Startup code has auto detction for 3210. For 3210, since we have
# SRAM based developing version, we need to set MEMWIDTH according
# to SRAM configuration.
#
# bank0->DRAM bank1: 32b bank2: 8b bank3: 8b (standard)
MEMWIDTH = 0xe
# bank0: 32b bank1: 32b bank2: 8b bank3: 8b (SRAM based)
v20 iv20 := MEMWIDTH = 0x00f
p4o3 ip4o3 := MEMWIDTH = 0x00f
pv20 := MEMWIDTH = 0x00f
pv20 := MEMWIDTH = 0x00f
$(STANFORD) := MEMWIDTH = 0x002
$(DVDVCD1) := MEMWIDTH = 0x00f
$(DVDVCD2) := MEMWIDTH = 0x00d #(16b SRAM 0x0d )
$(CUSTDVDVCD) := MEMWIDTH = 0x00d #(16b SRAM 0x0d )
# bank0->DRAM bank1: 8b bank2: 32b bank3: 32b (Browser board)
p4o3ar := MEMWIDTH = 0x0f2
p4o3ar := 3210_WIDTH = 0xc1
#
# MEMDELAY
#
MEMDELAYH = 0x001d # 3208 + wait state
MEMDELAYL = 0x001e # 1d001e (0x1a, 0, 0, 0x1e)
# Bank3: 5 wait states
# Bank2: 32 wait states
# Bank1: 32 wait states
# Bank0: 1 wait state
$(DVDVCD1) $(DVDVCD2) := MEMDELAYH = 0x000d
$(CUSTDVDVCD) := MEMDELAYH = 0x000d
$(DVDVCD1) $(DVDVCD2) := MEMDELAYL = 0x013e
$(CUSTDVDVCD) := MEMDELAYL = 0x013e
#
# Width assuming 3210 (1 for everybody, but 0xc1 for the browser board;
# bank3 is 8b for everybody except the browser board, which is 32b)
#
WIDTH10 = 0x01
p4o3ar := WIDTH10 = 0xc1
#
# ROM related defines
#
ROMBANK = 3 # Bank3 for everybody
p4o3ar := ROMBANK = 4 # "Bank4" for the browser board
# (code location is special)
# Bank3 is 4 wait state (54MHz clock)
iv20 iv20r := MEMDELAYL = 0x801e
ip4o3 ip4o3r := MEMDELAYL = 0x801e
# c001d (0x18, 0, 0, 0x1d). Bank3 is 110ns flash.
# Bank3: 7 wait states Bank2: 32 wait states
# Bank1: 32 wait states Bank0: 2 wait states
p4o3ar := MEMDELAYH = 0x000c
p4o3ar := MEMDELAYL = 0x001d
#
# ROM Related
#
ROMBASE = 40000 # Include emulator
BOOT_START = cfffd64
$(DVDVCD1) := STACKBASE = 0x7ffc
$(DVDVCD2) := STACKBASE = 0xfffc
$(CUSTDVDVCD) := STACKBASE = 0xfffc
svcddat svcddat2 custdvd:= BOOT_START = cfff96c
#
# Heap only used in targets with printf()
#
HEAPL = 0x5000
HEAPH = 0x0
#
# B-Frame flags
#
# Original default is with -DBF43 -DBF43PLUS
#
# Some of the newer targets are compiled without these defines. Memory
# consumption for display will increase in that case (so occasionally,
# you can only have 2-line OSD.) However, video quality will be better.
#
# We only support 4-line OSD when BF43 and BF43PLUS are not defined.
#
#
# Tradeoffs:
# 1) With -DBF43 and -DBF43PLUS: always 5-line OSD
# 2) Without -DBF43 and -DBF43PLUS: 4-line OSD most of the time; occasionally
# 2-line OSD (more stack space due to 4-line OSD)
#
BF_FLAGS = -DBF43 -DBF43PLUS
bxf20cnr bxf30cnr := BF_FLAGS = -DFOUR_LINE_OSD
bp4o3cnr bf20cnr := BF_FLAGS = -DFOUR_LINE_OSD
$(STANFORD) := BF_FLAGS = -DFOUR_LINE_OSD
$(DVDVCD1) $(DVDVCD2) := BF_FLAGS = -DFOUR_LINE_OSD
$(CUSTDVDVCD) := BF_FLAGS = -DFOUR_LINE_OSD
#
# Audio/video encoder set up
#
# For MVD2 board
#vcd dss dvd := ENCODERFLAGS = $(BT866) $(PCM1717) $(ES3208A)
vcd dss dvd := ENCODERFLAGS = $(BT856) $(PCM1717) -DAUDIOCLK \
$(ES3208A)
p4o play := ENCODERFLAGS = $(BT856) $(PCM1717) -DAUDIOCLK \
$(ES3208A)
p4o3 p4o3r := ENCODERFLAGS = $(RICOH) $(PCM1717) $(ES3208A)
v20 v20r sv20r := ENCODERFLAGS = $(RICOH) $(PCM1717) $(ES3208A)
ip4o3 ip4o3r iv20 iv20r := ENCODERFLAGS = $(RICOH) $(PCM1717) -DPIXCLK -DFS384\
$(ES3208A)
p4o3nr := ENCODERFLAGS = $(BT852) $(PCM1718) -DFS384 \
$(ES3210A)
f20nr sf20nr := ENCODERFLAGS = $(GL3201) $(PCM1718) -DFS384 \
$(ES3210A)
sv20nr v20nr := ENCODERFLAGS = $(BT852) $(PCM1718) -DFS384 \
$(ES3210A)
isv20nr := ENCODERFLAGS = $(BT852) $(PCM1717) -DAUDIOCLK \
$(ES3210A)
f20cnr v20cnr := ENCODERFLAGS = $(ES3207) $(ES3207A) $(ES3210E)
xf20cnr vcdgame := ENCODERFLAGS = $(ES3207) $(ES3207A) -DECHO \
$(ES3210E)
bf20cnr := ENCODERFLAGS = $(ES3207) $(ES3207A) $(ES3210E)
vcdndgame bxf20cnr := ENCODERFLAGS = $(ES3207) $(ES3207A) -DECHO \
$(ES3210E)
$(STANFORD) := ENCODERFLAGS = $(IGS) $(ES3207A) -DECHO \
$(ES3208A) -DIGNORE_POWERDOWN \
-DBILINGUAL_OSD
sxf20cnr := ENCODERFLAGS = $(ES3207) $(PCM1717) -DFS384 -DSERVO\
-DIRQSHARE -DECHO -DBILINGUAL_OSD $(ES3210E)
sf20cnr sv20cnr := ENCODERFLAGS = $(ES3207) $(ES3207A) $(ES3210E) -DBILINGUAL_OSD
xf30cnr bxf30cnr := ENCODERFLAGS = $(ES3207) $(ES3207A) $(ES3210E) \
-DECHO -DBILINGUAL_OSD
$(VCD30GAME) := ENCODERFLAGS = $(ES3207) $(ES3207A) $(ES3210E) \
-DECHO -DBILINGUAL_OSD
se20cnr := ENCODERFLAGS = $(ES3207) $(ES3207A) $(ES3210E) -DBILINGUAL_OSD
p4o3cnr := ENCODERFLAGS = $(ES3207) $(ES3207A) $(ES3210A) -DBILINGUAL_OSD
bp4o3cnr := ENCODERFLAGS = $(ES3207) $(ES3207A) $(ES3210A) -DECHO
xp4o3cnr := ENCODERFLAGS = $(ES3207) $(ES3207A) -DECHO \
$(ES3210E) -DBILINGUAL_OSD
p4o3ar := ENCODERFLAGS = $(PCM1717) -DAUDIOCLK $(ES3208A)
f20r := ENCODERFLAGS = $(RICOH) $(PCM1717) -DPIXCLK \
-DFS384 $(ES3208A)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -