AS	=as
LD	=ld
LDFLAGS	=-s -x -M
CC	=gcc
CFLAGS	=-Wall -fno-builtin -nostdinc -nostdlib
HEADERS =prototypes.h
# main.o must be firts, modules.o must be last !!!
SYSOBJS	=main.o idt.o crt.o debug.o descriptor.o exec.o hex.o page.o pages.o string.o mymenu.o menu.o tss.o modules.o

.s.o:
	$(AS) -o $*.o $<
.c.o: $(HEADERS)
	$(CC) $(CFLAGS) -c -o $*.o $<

Image:	boot system zero
	cat boot system zero > Image

system:	$(SYSOBJS)
	$(LD) --oformat binary -Ttext 0x10000 $(LDFLAGS) $(SYSOBJS) -o system > system.map
#	$(LD) -T prot386.lds $(LDFLAGS) $(SYSOBJS) -o system

.PHONY: clean loop floppy

boot.o: boot.s
	as86 -2 -o boot.o boot.s

boot: boot.o
	ld86 -0 -d -o boot boot.o

clean:
	rm -f *.o *~ Image system boot

loop:
	./makeloop

zero:
	dd if=/dev/zero of=zero bs=1024 count=20

floppy: Image
	dd if=Image of=/dev/fd0 bs=512
