# Ruputer conf

CYGFS = /usr/ruputer
RUPSDK = $(CYGFS)/mn10200-elf

TARGET=teclado
TARGET2=pteclado
OBJS=startup.o teclado.o
OBJS2=startup.o pteclado.o

CC = $(RUPSDK)/bin/gcc
AS = $(RUPSDK)/bin/as
LD = $(RUPSDK)/bin/ld
RANLIB = $(RUPDSK)/bin/ranlib
OBJCOPY = $(CYGFS)/bin/mn10200-elf-objcopy
SF2BIN = $(CYGFS)/bin/sf2bin

CFLAGS = -Wall -g -c -O2
#CFLAGS = -Wall -g -c -O2 -DSPANISH
CPPFLAGS = -I$(RUPSDK)/include -I$(RUPSDK)/include/rupsdk
ASFLAGS = -I$(RUPSDK)/include/rupsdk
#LDFLAGS = -relax -Ttext 0x110100 -Map $(TARGET).map
LDFLAGS = -Ttext 0x110100 -Map $(TARGET).map
LDFLAGS2 = -Ttext 0x110100 -Map $(TARGET2).map
LIBRUP = -L$(RUPSDK)/lib -lrupmenu -lruptool -lrupsys -llcdbios -lpsdos -lwbios
LIBSTD = -L$(CYGFS)/mn10200-elf/lib -lm -lc
LIBGCC = -L$(CYGFS)/lib/gcc-lib/mn10200-elf/2.8.1 -lgcc


# Para el teclado
$(TARGET).exf :         $(TARGET).elf
	$(OBJCOPY) -O srec $(TARGET).elf
	$(SF2BIN) $(TARGET).elf $(TARGET).exf

$(TARGET).elf : $(OBJS)
	$(LD) $(LDFLAGS) -o $(TARGET).elf $(OBJS) $(LIBRUP) $(LIBSTD) $(LIBGCC)

# Para el pteclado
$(TARGET2).exf :         $(TARGET2).elf
	$(OBJCOPY) -O srec $(TARGET2).elf
	$(SF2BIN) $(TARGET2).elf $(TARGET2).exf

$(TARGET2).elf : $(OBJS2)
	$(LD) $(LDFLAGS2) -o $(TARGET2).elf $(OBJS2) $(LIBRUP) $(LIBSTD) $(LIBGCC)

# Comunes
startup.o: startup.s
	$(AS) $(ASFLAGS) startup.s -o startup.o

.SUFFIX: .c
.c.o:
	$(CC) $(CFLAGS) $(CPPFLAGS) $<

clean:
	rm -f *.o *.elf *.exf *.map

upload: $(TARGET).exf
	rustart
	ruwrite $(TARGET).exf b:\\zun
	ruend

# PC conf

# CFLAGS=-Wall -O2 -g
# LDFLAGS=-lm
# TARGET=plot
# OBJS=parser.o plot.o pc_main.o
# CC=gcc

# all: $(TARGET)

# %.o:%.c
#	$(CC) $(CFLAGS) -c -o $@ $^

# $(TARGET) : $(OBJS)
# 	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^

# clean:
# 	rm -f $(OBJS) $(TARGET)

# .PHONY: clean
