VLOGS = 7seg.v Framebuffer.v GBZ80Core.v Interrupt.v LCDC.v Sound1.v \
- Sound2.v Soundcore.v System.v Timer.v Uart.v
+ Sound2.v Soundcore.v System.v Timer.v Uart.v Buttons.v
VLOGS_ALL = $(VLOGS) insn_call-callcc.v insn_incdec16.v insn_jr-jrcc.v \
insn_ld_reg_hl.v insn_ld_reg_reg.v insn_nop.v insn_ret-retcc.v \
CPUDCM.v insn_alu_a.v insn_halt.v insn_jp-jpcc.v insn_ld_hl_reg.v \
insn_ld_reg_imm8.v insn_ldx_ahl.v insn_push_reg.v insn_vop_intr.v \
insn_ldm8_a.v insn_ldm16_a.v insn_ldbcde_a.v insn_alu_ext.v \
- insn_bit.v insn_two_byte.v insn_incdec_reg8.v
+ insn_bit.v insn_two_byte.v insn_incdec_reg8.v insn_add_hl.v
-all: CoreTop.svf CoreTop.twr
+all: CoreTop.svf
sim: CoreTop_isim.exe
-CoreTop.ngc: CoreTop.xst CoreTop.prj $(VLOGS_ALL) rom.mem
+CoreTop.ngc: CoreTop.xst CoreTop.prj $(VLOGS_ALL) fpgaboot.hex gbboot.hex
xst -ifn CoreTop.xst -ofn CoreTop.syr
CoreTop.ngd: CoreTop.ngc foo.bmm CoreTop.ucf
%.mem: %.bin mashrom
./mashrom < $< > $@
+fpgaboot.hex: fpgaboot.bin mashrom
+ ./mashrom 256 < $< > $@
+
+
CoreTop.svf: CoreTop.bit impact.cmd
sed -e s/XXX/$(subst .bit,,$<)/ < impact.cmd > tmp.cmd
impact -batch tmp.cmd