diff options
| author | Sanky <gsanky@gmail.com> | 2012-07-20 11:01:25 +0200 | 
|---|---|---|
| committer | Sanky <gsanky@gmail.com> | 2012-07-20 11:01:25 +0200 | 
| commit | 7bf2c3d7589a46f512f3364376bb917cdcab9a42 (patch) | |
| tree | 40f8ae626f6d1ed267d3124622b0f4d504a7cdbd | |
| parent | b76ffb99ab6c86736fbaf4dc1f77f3e3d7e038a0 (diff) | |
Disasm FarCopyBytes and FarCopyBytesDouble.
| -rw-r--r-- | main.asm | 49 | 
1 files changed, 48 insertions, 1 deletions
| @@ -77,7 +77,54 @@ EnableLCD: ; 58a  	ret  ; 0x591 -INCBIN "baserom.gbc",$591,$ff1 - $591 +INCBIN "baserom.gbc",$591,$e8d - $591 + +; copy bc bytes from a:hl to de +FarCopyBytes: +	ld [$ff00+$8b], a +	ld a, [$ff00+$9d] ; save old bank +	push af +	ld a, [$ff00+$8b] +	rst $10 +	call CopyBytes +	pop af +	rst $10 +	ret +; 0xe9b + +; copy bc*2 source bytes from a:hl to de, doubling each byte in process +FarCopyBytesDouble: ; e9b +	ld [$ff00+$8b], a +	ld a, [$ff00+$9d] ; save current bank +	push af +	ld a, [$ff00+$8b] +	rst $10 ; bankswitch +	ld a, h ; switcheroo, de <> hl +	ld h, d +	ld d, a +	ld a, l +	ld l, e +	ld e, a +	inc b +	inc c +	jr .dec ; 0xeab $4 +.loop +	ld a, [de] +	inc de +	ld [hli], a ; write twice +	ld [hli], a +.dec +	dec c +	jr nz, .loop +	dec b +	jr nz, .loop +	pop af +	rst $10 +	ret +; 0xeba + + +INCBIN "baserom.gbc",$eba,$ff1 - $eba  TextBoxBorder: ; ff1  ; draw a text box | 
