X-Git-Url: http://git.joshuawise.com/fpgaboy.git/blobdiff_plain/14778cde2df07491e9c2e8da0e8a1ab8724e6cec..00a4c19f8e97b088b9385af67f530c2ddecb92ce:/diag.asm?ds=inline diff --git a/diag.asm b/diag.asm index e7bb0d4..3a3d665 100644 --- a/diag.asm +++ b/diag.asm @@ -1,9 +1,8 @@ - section "end",HOME[1024] - nop - SECTION "a",HOME[$00] -start: jp main +start: ld a, $AA + ld [$FF51], a + jr start section "vbl",HOME[$40] jp vbl @@ -14,6 +13,19 @@ start: jp main section "tmro",HOME[$50] jp tmro + SECTION "b",HOME[$100] +boot: jr main ; $0100 + nop ; $0102 + nop ; $0103 + ;Nintendo Logo ; $0104 + DB $CE,$ED,$66,$66,$CC,$0D,$00,$0B,$03,$73,$00,$83,$00,$0C,$00,$0D + DB $00,$08,$11,$1F,$88,$89,$00,$0E,$DC,$CC,$6E,$E6,$DD,$DD,$D9,$99 + DB $BB,$BB,$67,$63,$6E,$0E,$EC,$CC,$DD,$DC,$99,$9F,$BB,$B9,$33,$3E + ;$0134 + DB $00,$E7,$00,$00,$00,$00,$00,$00, $00,$00,$00,$00,$00,$00,$00,$00 + ;$0144 + DB $00,$00,$00,$00,$00,$00,$00,$00, $00,$00,$00,$00,$00,$00,$00,$00 + main: ld a, $FF ld c, $51 @@ -33,6 +45,9 @@ main: ld hl, signon call puts + ld a, $91 + ld [$FF40], a + call putscreen ei @@ -88,18 +103,17 @@ tiles: db %00000000 putscreen: + LD A,$fc ; $001d Setup BG palette + LD [$FF47],A ; $001f + ; Wait for vblank call .vblwait ld hl, $8000 ; Copy two tiles. ld de, tiles ld c, $20 -.cloop: push hl - ld h, d - ld l, e - ld a, [hl] +.cloop: ld a, [de] inc de - pop hl ld [hli], a ld [hli], a dec c @@ -145,30 +159,19 @@ vbl: ld [$FF0F], a ld a, [$FF51] - ld b, a - and $80 - cp $80 - jr nz, .nothing - ld c, $0 + bit 7, a + jr z, .nothing - ld a, b - and $1 - cp c + bit 0, a call nz, .scyup - ld a, b - and $2 - cp c + bit 1, a call nz, .scydown - ld a, b - and $4 - cp c + bit 2, a call nz, .scxup - ld a, b - and $8 - cp c + bit 3, a call nz, .scxdown .nothing: @@ -330,8 +333,8 @@ waitsw: ld a,[c] cp $0 jr z,.loop1 -.loop2: - ld a,[c] + +.loop2: ld a,[c] cp $0 jr nz,.loop2 ret @@ -474,14 +477,14 @@ insntest: ; Serial port manipulation functions. putc: - ld c, $50 + ld c, $53 push af .waitport: ld a,[c] - cp $00 + and $01 jr nz,.waitport pop af - ld [c],a + ld [$FF52],a ret puts: