APP		 = test
STACK	 = 1k
MALLOC	 = 544k	# 32k + 512k

TOOLPATH = ../../z_tools/
INCPATH	 = $(TOOLPATH)haribote/
API		 = ../api/
KOZOS	 = ../kozos/
MAKE	 = $(TOOLPATH)make.exe -r
NASK	 = $(TOOLPATH)nask.exe
CC1		 = $(TOOLPATH)cc1.exe -I$(INCPATH) -Os -Wall -quiet
SJISCONV = $(TOOLPATH)sjisconv.exe -s
GAS2NASK = $(TOOLPATH)gas2nask.exe -a
OBJ2BIM	 = $(TOOLPATH)obj2bim.exe
BIM2BIN	 = $(TOOLPATH)bim2bin.exe
BIM2HRB	 = $(TOOLPATH)bim2hrb.exe
COPY	 = copy
DEL		 = del
RULEFILE = ../haribote.rul

default:
	$(MAKE) $(APP).hrb

$(APP).bim: $(APP).obj $(API)api.lib $(KOZOS)kozos.lib
	$(OBJ2BIM) @$(RULEFILE) out:$(APP).bim stack:$(STACK) map:$(APP).map \
	$(APP).obj $(API)api.lib $(KOZOS)kozos.lib

$(APP).org: $(APP).bim
	$(BIM2HRB) $(APP).bim $(APP).org $(MALLOC)

$(APP).hrb: $(APP).org
	$(BIM2BIN) -osacmp in:$(APP).org out:$(APP).hrb 

%.ca: %.c ../api.h
	$(SJISCONV) $*.c $*.ca

%.gas: %.ca
	$(CC1) -o $*.gas $*.ca

%.nas: %.gas
	$(GAS2NASK) $*.gas $*.nas

%.obj: %.nas
	$(NASK) $*.nas $*.obj $*.lst

# R}h
clean:
	$(DEL) *.lst
	$(DEL) *.obj
	$(DEL) *.org
	$(DEL) *.hrb
	$(DEL) *.map
	$(DEL) *.bim
