APP      = gview
STACK    = 4480k
MALLOC   = 1000k

TOOLPATH = ../../../z_tools/
INCPATH  = ../../../z_tools/haribote/
APILIBPATH   = ../../apilib/
HARIBOTEPATH = ../../kernel/

MAKE     = $(TOOLPATH)make.exe -r
NASK     = $(TOOLPATH)nask.exe
CC1      = $(TOOLPATH)cc1.exe -I$(INCPATH) -I../ -Os -Wall -quiet
GAS2NASK = $(TOOLPATH)gas2nask.exe -a
OBJ2BIM  = $(TOOLPATH)obj2bim.exe
MAKEFONT = $(TOOLPATH)makefont.exe
BIN2OBJ  = $(TOOLPATH)bin2obj.exe
BIM2NXE  = $(TOOLPATH)bim2nxe.exe
BIM2BIN  = $(TOOLPATH)bim2bin.exe
RULEFILE = ../apps.rul
EDIMG    = $(TOOLPATH)edimg.exe
IMGTOL   = $(TOOLPATH)imgtol.com
GOLIB    = $(TOOLPATH)golib00.exe 
COPY     = copy
DEL      = del

# ftHg

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

# t@CK

$(APP).bim : $(APP).obj bmp.obj jpeg.obj $(APILIBPATH)apilib.lib Makefile
	$(OBJ2BIM) @$(RULEFILE) out:$(APP).bim map:$(APP).map stack:$(STACK) \
		$(APP).obj bmp.obj jpeg.obj $(APILIBPATH)apilib.lib

kernel.img : ../../kernel/ipl09.bin ../../kernel/kernel.sys $(APP).nxe \
		Makefile
	$(EDIMG)   imgin:../../../z_tools/fdimg0at.tek \
		wbinimg src:../../kernel/ipl09.bin len:512 from:0 to:0 \
		copy from:../../kernel/kernel.sys to:@: \
		copy from:$(APP).nxe to:@: \
		copy from:../../data/nihongo/nihongo.fnt to:@: \
		copy from:../../data/pict/logo0.jpg to:@: \
		imgout:kernel.img

# ʋK

%.gas : %.c ../apilib.h Makefile
	$(CC1) -o $*.gas $*.c

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

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

%.org : %.bim Makefile
	$(BIM2NXE) $*.bim $*.org $(MALLOC)

%.nxe : %.org Makefile
	$(BIM2BIN) -osacmp in:$*.org out:$*.nxe

# R}h

run :
	$(MAKE) kernel.img
	$(COPY) kernel.img ..\..\..\z_tools\qemu\fdimage0.bin
	$(MAKE) -C ../../../z_tools/qemu

full :
	$(MAKE) -C $(APILIBPATH)
	$(MAKE) $(APP).nxe

run_full :
	$(MAKE) -C $(APILIBPATH)
	$(MAKE) -C ../../kernel
	$(MAKE) run

clean :
	-$(DEL) *.lst
	-$(DEL) gview.obj
	-$(DEL) *.map
	-$(DEL) *.bim
	-$(DEL) *.org
	-$(DEL) kernel.img

src_only :
	$(MAKE) clean
	-$(DEL) $(APP).nxe
