From 5bac4cf0a60acac6826eb3215e1526d48ba8f7ac Mon Sep 17 00:00:00 2001 From: Joshua Wise Date: Sun, 6 Apr 2008 18:46:27 -0400 Subject: [PATCH] New generation makefile. Code that will reliably break the machine. --- FPGABoy.ise | Bin 240844 -> 256980 bytes Makefile | 42 +++++--- diag.asm | 251 ++++++++++++++++++++++++++++++++++++++++++++++ impact.cmd | 4 +- rom.asm | 284 +++++----------------------------------------------- 5 files changed, 307 insertions(+), 274 deletions(-) create mode 100644 diag.asm diff --git a/FPGABoy.ise b/FPGABoy.ise index 3ac09a13b9814b7d8a8692afeb126383ffb7b3e3..e4050d100b69264e355502b03b45426fea86725d 100644 GIT binary patch delta 113374 zcmc${1z1&2+c!G1dhIO;Dk>@pc6WgZ(qUt_qM~A9Vr)T01Or3_0kJ!=y8~?O?(Xh5 zv-jpV&;NP9_xY}K&ikF~a9!RGv+lX$ci$6h)~v

$aD!=H1k;h{5qe^4>=kD0x&N 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¨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 CbR*aR diff --git a/Makefile b/Makefile index 0a4f411..175241d 100644 --- a/Makefile +++ b/Makefile @@ -1,12 +1,19 @@ -VLOGS=Uart.v Timer.v Interrupt.v GBZ80Core.v CPUDCM.v 7seg.v System.v allinsns.v insn_ld_reg_imm8.v +VLOGS = 7seg.v GBZ80Core.v 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 Interrupt.v Uart.v allinsns.v insn_alu8.v \ + insn_di-ei.v insn_jp_hl.v insn_ldh_ac.v insn_ld_reg_imm16.v \ + insn_ld_sp_hl.v insn_pop_reg.v insn_rst.v System.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 \ + Timer.v -all: CoreTop.svf CoreTop.twr +all: CoreTop_rom.svf CoreTop_diag.svf CoreTop.twr CoreTop.ngc: CoreTop.xst CoreTop.prj $(VLOGS) CoreTop.ucf xst -ifn CoreTop.xst -ofn CoreTop.syr -CoreTop.ngd: CoreTop.ngc foo.bmm - ngdbuild -dd _ngo -nt timestamp -i -bm "foo.bmm" -p xc3s500e-fg320-5 "CoreTop.ngc" CoreTop.ngd +CoreTop.ngd: CoreTop.ngc foo.bmm CoreTop.ucf + ngdbuild -dd _ngo -uc CoreTop.ucf -nt timestamp -bm "foo.bmm" -p xc3s500e-fg320-5 "CoreTop.ngc" CoreTop.ngd CoreTop_map.ncd: CoreTop.ngd map -p xc3s500e-fg320-5 -cm area -pr off -k 4 -c 100 -o CoreTop_map.ncd CoreTop.ngd CoreTop.pcf @@ -20,17 +27,24 @@ CoreTop.twr: CoreTop_map.ncd CoreTop.bit: CoreTop.ut CoreTop.ncd bitgen -f CoreTop.ut CoreTop.ncd -CoreTop_rom.bit: rom.hex CoreTop.bit foo_bd.bmm - data2mem -bm foo_bd.bmm -bd rom.mem -bt CoreTop.bit -o b CoreTop_rom.bit +%.o: %.asm + rgbasm -o$@ $< -CoreTop.svf: CoreTop_rom.bit rom.hex impact.cmd - impact -batch impact.cmd +%.bin: %.o rom.lnk + echo "[Objects]" > tmp.lnk + echo $< >> tmp.lnk + echo "" >> tmp.lnk + echo "[Output]" >> tmp.lnk + echo $@ >> tmp.lnk + xlink tmp.lnk + rm tmp.lnk -rom.o: rom.asm - rgbasm -orom.o rom.asm +%.mem: %.bin + ./mashrom < $< > $@ -rom.bin: rom.o rom.lnk - xlink rom.lnk +CoreTop_%.bit: %.mem CoreTop.bit foo_bd.bmm + data2mem -bm foo_bd.bmm -bd $< -bt CoreTop.bit -o b $@ -rom.hex: rom.bin - ./mashrom < rom.bin > rom.hex +CoreTop_%.svf: CoreTop_%.bit impact.cmd + sed -e s/XXX/$(subst .bit,,$<)/ < impact.cmd > tmp.cmd + impact -batch tmp.cmd diff --git a/diag.asm b/diag.asm new file mode 100644 index 0000000..68ea3f8 --- /dev/null +++ b/diag.asm @@ -0,0 +1,251 @@ + SECTION "a",HOME + +main: + ld c, $51 ; Note that we are alive. + ld a, $FF + ld [c],a + + ld sp, $DFF0 + + ld hl, signon + call puts + + call memtest + + call insntest + + call waitsw + + jr main + +signon: + db $0D,$0A,$1B,"[1mFPGABoy Diagnostic ROM",$1B,"[0m",$0D,$0A,0 + +; Memory tester: writes h ^ l to all addresses from C000 to DF80. +memtest: + ld hl,memteststr + call puts + + ld hl, $C001 ; Write loop +.wr: + ld a,h + xor l + ld [hli],a + ld a, $DF + cp h + jr nz, .wr + ld a, $80 + cp l + jr nz, .wr + + ld hl, $C001 ; Read loop +.rd: + ld a,h + xor l + ld b,a + ld a, [hli] + cp b + jr nz, .memfail + + ld a, $DF + cp h + jr nz, .rd + ld a, $80 + cp l + jr nz, .rd + + ld hl, testokstr ; Say we're OK + call puts + ret +.memfail: ; Say we failed (sadface) + ; decrement hl the easy way + ld a,[hld] + push hl + ld hl, failatstr + call puts + pop hl + ld a, h + call puthex + ld a, l + call puthex + ld a, $0A + call putc + ld a, $0D + call putc + ret +memteststr: + db "Testing memory from $C000 to $DF80...",0 +testokstr: + db " OK!",$0D,$0A,0 +failatstr: + db " Test failed at $",0 + +puthex: ; Put two hex nibbles to the serial console. + push af + rra + rra + rra + rra + ld b,$0F + and b + ld b,$30 + add b + call putc + pop af + ld b,$0F + and b + ld b,$30 + add b + call putc + ret + +; Wait for switches to be flipped on and off again. +waitsw: + ld hl,waitswstr + call puts + + ld c, $51 + xor a + ld [c],a + + ld b, $0 +.loop1: + ld a,[c] + cp b + jr z,.loop1 +.loop2: + ld a,[c] + cp b + jr nz,.loop2 + ret + +waitswstr: + db "Diagnostic ROM complete; flip switches to nonzero and then to zero to reset. Expect A.",$0D,$0A,0 + +; Core instruction basic acceptance tests. +insntest: + ld hl, .insnteststr + call puts + + ; Test PUSH and POP. + ld b, $12 + ld c, $34 + ld d, $56 + ld e, $78 + push bc + pop de + ld hl, .pushpopfail + ld a, d + cp b + jr nz,.fail + ld a, e + cp c + jr nz,.fail + + ; Test ALU (HL). + ld hl, .ff + ld a, $FF + xor [hl] + ld hl, .xorhlfail + jr nz, .fail + + ; Test JP (HL) + ld hl, .jphl + jp [hl] + ld hl, .jphlfail + jr .fail + rst $00 +.jphl: + + ; Test JR + ld a, $FF + ld b, $00 + cp b + jr nz,.jr + ld hl, .jrfail + jr .fail + rst $00 +.jr: + + ; Test inc16 + ld d, $12 + ld e, $FF + ld hl, .inc16fail + inc de + ld a, $13 + cp d + jr nz, .fail + ld a, $00 + cp e + jr nz, .fail + + ; Test CP. + ld hl, .cpfail + ld a, $10 + ld b, $20 + cp b + jr nc,.fail + ld a, $20 + ld b, $10 + cp b + jr c,.fail + + ; Test CPL + ld hl, .cplfail + ld a, $55 + ld b, $AA + cpl + cp b + jr nz,.fail + + ld hl, .ok + call puts + ret +.fail: + call puts + ld hl, .testfailed + call puts + ret +.insnteststr: + db "Testing instructions... ",0 +.pushpopfail: + db "PUSH/POP",0 +.ff: + db $FF +.xorhlfail: + db "XOR [HL]",0 +.jphlfail: + db "JP [HL]",0 +.jrfail: + db "JR",0 +.cpfail: + db "CP",0 +.cplfail: + db "CPL",0 +.inc16fail: + db "INC16",0 +.testfailed: + db " test failed.",$0D,$0A,0 +.ok: + db "OK!",$0D,$0A,0 + +; Serial port manipulation functions. +putc: + ld b, 0 + ld c, $50 + push af +.waitport: + ld a,[c] + cp b + jr nz,.waitport + pop af + ld [c],a + ret + +puts: + ld a, [hli] + ld b, $00 + cp b + ret z + call putc + jr puts diff --git a/impact.cmd b/impact.cmd index db5c851..6cbed75 100644 --- a/impact.cmd +++ b/impact.cmd @@ -1,6 +1,6 @@ setMode -bs -setCable -port svf -file "/home/joshua/projects/fpga/FPGABoy/CoreTop.svf" -addDevice -p 1 -file "/home/joshua/projects/fpga/FPGABoy/CoreTop_rom.bit" +setCable -port svf -file "/home/joshua/projects/fpga/FPGABoy/XXX.svf" +addDevice -p 1 -file "/home/joshua/projects/fpga/FPGABoy/XXX.bit" addDevice -p 2 -part xcf04s Program -p 1 -defaultVersion 0 quit diff --git a/rom.asm b/rom.asm index 512cfce..6989b2d 100644 --- a/rom.asm +++ b/rom.asm @@ -7,32 +7,27 @@ main: ld sp, $DFF0 - ld hl, $DF81 - ld a, $80 - ld [hl], a +; ld hl, $DF81 +; ld a, $80 +; ld [hl], a ; ld c, $07 -; ld a, $04 ;start timer, 4.096KHz +; ld a, $07 ;start timer, 4.096KHz ; ld [c], a -diqs:; ei - jr diqs - - ld hl, signon - call puts - - - ei - - call memtest - - call insntest +;diqs: ei +; ld a, $80 +; ld c, $51 +; ld [c], a +; jr diqs + call irqhand +coqs: jr coqs - call waitsw + section "Diq", HOME[$38] +fuqed: di + jr fuqed - jr main - - section "fuq",HOME[$50] + section "fuq",HOME[$100] irqhand: PUSH AF PUSH BC @@ -50,13 +45,16 @@ irqhand: ;ld a, $41 ; print A ;call putc - ld hl, $DF81 - ld a, [hl] +; ld hl, $DF81 +; ld a, [hl] ; ld b, 1 ; add b - ld c, $51 -; ld [c], a -; ld [hl], a + ld a, $08 + ld hl, $FF51 +; ld c, $51 + nop + nop + ld [hl], a ; ld c, $51 @@ -68,236 +66,6 @@ irqhand: POP BC POP AF RETI - -signon: - db $0D,$0A,$1B,"[1mFPGABoy Diagnostic ROM",$1B,"[0m",$0D,$0A,0 - -; Memory tester: writes h ^ l to all addresses from C000 to DF80. -memtest: - ld hl,memteststr - call puts - - ld hl, $C001 ; Write loop -.wr: - ld a,h - xor l - ld [hli],a - ld a, $DF - cp h - jr nz, .wr - ld a, $80 - cp l - jr nz, .wr - - ld hl, $C001 ; Read loop -.rd: - ld a,h - xor l - ld b,a - ld a, [hli] - cp b - jr nz, .memfail - - ld a, $DF - cp h - jr nz, .rd - ld a, $80 - cp l - jr nz, .rd - - ld hl, testokstr ; Say we're OK - call puts - ret -.memfail: ; Say we failed (sadface) - ; decrement hl the easy way - ld a,[hld] - push hl - ld hl, failatstr - call puts - pop hl - ld a, h - call puthex - ld a, l - call puthex - ld a, $0A - call putc - ld a, $0D - call putc - ret -memteststr: - db "Testing memory from $C000 to $DF80...",0 -testokstr: - db " OK!",$0D,$0A,0 -failatstr: - db " Test failed at $",0 - -puthex: ; Put two hex nibbles to the serial console. - push af - rra - rra - rra - rra - ld b,$0F - and b - ld b,$30 - add b - call putc - pop af - ld b,$0F - and b - ld b,$30 - add b - call putc - ret - -; Wait for switches to be flipped on and off again. -waitsw: - ld hl,waitswstr - call puts - - ld c, $51 - xor a - ld [c],a - - ld b, $0 -.loop1: - ld a,[c] - cp b - ei - jr z,.loop1 -.loop2: - ld a,[c] - cp b - jr nz,.loop2 - ret - -waitswstr: - db "Diagnostic ROM complete; flip switches to nonzero and then to zero to reset. Expect A.",$0D,$0A,0 - -; Core instruction basic acceptance tests. -insntest: - ld hl, .insnteststr - call puts - - ; Test PUSH and POP. - ld b, $12 - ld c, $34 - ld d, $56 - ld e, $78 - push bc - pop de - ld hl, .pushpopfail - ld a, d - cp b - jr nz,.fail - ld a, e - cp c - jr nz,.fail - - ; Test ALU (HL). - ld hl, .ff - ld a, $FF - xor [hl] - ld hl, .xorhlfail - jr nz, .fail - - ; Test JP (HL) - ld hl, .jphl - jp [hl] - ld hl, .jphlfail - jr .fail - rst $00 -.jphl: - - ; Test JR - ld a, $FF - ld b, $00 - cp b - jr nz,.jr - ld hl, .jrfail - jr .fail - rst $00 -.jr: - - ; Test inc16 - ld d, $12 - ld e, $FF - ld hl, .inc16fail - inc de - ld a, $13 - cp d - jr nz, .fail - ld a, $00 - cp e - jr nz, .fail - - ; Test CP. - ld hl, .cpfail - ld a, $10 - ld b, $20 - cp b - jr nc,.fail - ld a, $20 - ld b, $10 - cp b - jr c,.fail - - ; Test CPL - ld hl, .cplfail - ld a, $55 - ld b, $AA - cpl - cp b - jr nz,.fail - - ld hl, .ok - call puts - ret -.fail: - call puts - ld hl, .testfailed - call puts - ret -.insnteststr: - db "Testing instructions... ",0 -.pushpopfail: - db "PUSH/POP",0 -.ff: - db $FF -.xorhlfail: - db "XOR [HL]",0 -.jphlfail: - db "JP [HL]",0 -.jrfail: - db "JR",0 -.cpfail: - db "CP",0 -.cplfail: - db "CPL",0 -.inc16fail: - db "INC16",0 -.testfailed: - db " test failed.",$0D,$0A,0 -.ok: - db "OK!",$0D,$0A,0 - -; Serial port manipulation functions. -putc: - ld b, 0 - ld c, $50 - push af -.waitport: - ld a,[c] - cp b - jr nz,.waitport - pop af - ld [c],a - ret - -puts: - ld a, [hli] - ld b, $00 - cp b - ret z - call putc - jr puts + db $18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE + db $18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE + db $18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE -- 2.39.2