diff options
| author | xCrystal <rgr.crystal@gmail.com> | 2016-01-17 20:13:35 +0100 | 
|---|---|---|
| committer | xCrystal <rgr.crystal@gmail.com> | 2016-01-17 20:13:35 +0100 | 
| commit | 79dd95d3eeccfd7d47c69f505178aade76b048b3 (patch) | |
| tree | 1b0b35b50aac217e97eac3ef0f6c31dd2251e3a6 | |
| parent | bc8350903659f0c9dad446ee7617779c78b44e2d (diff) | |
draw menu box functions and rename CallF to CallHL
| -rwxr-xr-x | src/engine/bank2.asm | 8 | ||||
| -rwxr-xr-x | src/engine/bank4.asm | 2 | ||||
| -rwxr-xr-x | src/engine/home.asm | 54 | 
3 files changed, 35 insertions, 29 deletions
| diff --git a/src/engine/bank2.asm b/src/engine/bank2.asm index e255784..0819ef1 100755 --- a/src/engine/bank2.asm +++ b/src/engine/bank2.asm @@ -568,16 +568,16 @@ Func_9168: ; 9168 (2:5168)  	call Func_8d56  	ld de, $0000  	ld bc, $1404 -	call Func_1e7c +	call DrawMenuBox  	ld de, $0003  	ld bc, $1404 -	call Func_1e7c +	call DrawMenuBox  	ld de, $0006  	ld bc, $1404 -	call Func_1e7c +	call DrawMenuBox  	ld de, $0009  	ld bc, $1404 -	call Func_1e7c +	call DrawMenuBox  	ld hl, Unknown_9242  	call Func_2c08  	ld a, $4 diff --git a/src/engine/bank4.asm b/src/engine/bank4.asm index 48d2d33..3e27c97 100755 --- a/src/engine/bank4.asm +++ b/src/engine/bank4.asm @@ -141,7 +141,7 @@ Duel_Init: ; 103d3 (4:43d3)  	ld [$ccf3], a  	ld de, $000c  	ld bc, $1406 -	call Func_1e7c ; LoadTextBoxBorder +	call DrawMenuBox  	ld a, [$cc19]  	add a  	add a diff --git a/src/engine/home.asm b/src/engine/home.asm index 084c6b8..01a89a8 100755 --- a/src/engine/home.asm +++ b/src/engine/home.asm @@ -817,7 +817,7 @@ CallIndirect: ; 05b6 (0:05b6)  	ld h, a  	pop af  	; fallthrough -CallF: ; 05c1 (0:05c1) +CallHL: ; 05c1 (0:05c1)  	jp [hl]  ; 0x5c2 @@ -2193,7 +2193,9 @@ Memcpy: ; 1dca (0:1dca)  .asm_1dd8  	jp MemcpyDEHL_hblank -Func_1ddb: ; 1ddb (0:1ddb) +; calculates $9800 + SCREEN_WIDTH * e + d to map the screen coordinates at de  +; to the corresponding BG Map 0 address in VRAM. +CalculateBGMap0Address: ; 1ddb (0:1ddb)  	ld l, e  	ld h, $0  	add hl, hl @@ -2209,7 +2211,8 @@ Func_1ddb: ; 1ddb (0:1ddb)  	ld h, a  	ret -Func_1deb: ; 1deb (0:1deb) +; Apply window correction to xy coordinates at de	 +AdjustCoordinatesForWindow: ; 1deb (0:1deb)  	push af  	ld a, [hSCX]  	rra @@ -2231,14 +2234,16 @@ Func_1deb: ; 1deb (0:1deb)  INCBIN "baserom.gbc",$1e00,$1e7c - $1e00 -Func_1e7c: ; 1e7c (0:1e7c) +; Draws a bxc text box at de to print menu data +DrawMenuBox: ; 1e7c (0:1e7c)  	ld a, [wConsole]  	cp CONSOLE_CGB -	jr z, asm_1ec9 +	jr z, DrawMenuBoxCGB  	cp CONSOLE_SGB -	jp z, Func_1f0f -Func_1e88: ; 1e88 (0:1e88) -	call Func_1ddb +	jp z, DrawMenuBoxSGB +;	fallthrough +DrawMenuBoxDMG: ; 1e88 (0:1e88) +	call CalculateBGMap0Address  	ld a, $1c  	ld de, $1819  	call Func_1ea5 @@ -2281,8 +2286,9 @@ Func_1ea5: ; 1ea5 (0:1ea5)  	add hl, de  	add sp, $20  	ret -asm_1ec9 -	call Func_1ddb +	 +DrawMenuBoxCGB: +	call CalculateBGMap0Address  	ld a, $1c  	ld de, $1819  	call Func_1efb @@ -2320,10 +2326,10 @@ Func_1efb: ; 1efb (0:1efb)  	call BankswitchVRAM_0  	ret -Func_1f0f: ; 1f0f (0:1f0f) +DrawMenuBoxSGB: ; 1f0f (0:1f0f)  	push bc  	push de -	call Func_1e88 +	call DrawMenuBoxDMG  	pop de  	pop bc  	ld a, [$ccf3] @@ -2373,7 +2379,7 @@ Func_1f5f: ; 1f5f (0:1f5f)  	push af  	push hl  	add sp, $e0 -	call Func_1ddb +	call CalculateBGMap0Address  .asm_1f67  	push hl  	push bc @@ -2647,7 +2653,7 @@ Func_22ae: ; 22ae (0:22ae)  	xor a  	ld [$ffae], a  	ld [$cd09], a -	call Func_1ddb +	call CalculateBGMap0Address  	ld a, l  	ld [$ffaa], a  	ld a, h @@ -3175,7 +3181,7 @@ Func_264b: ; 264b (0:264b)  	ld l, [hl]  	ld h, a  	ld a, [$ffb1] -	call CallF +	call CallHL  	jr nc, HandleMenuInput  .asm_269b  	call Func_270b @@ -3244,7 +3250,7 @@ asm_26ec  	inc hl  	add [hl]  	ld e, a -	call Func_1deb +	call AdjustCoordinatesForWindow  	ld a, c  	ld c, e  	ld b, d @@ -3285,7 +3291,7 @@ Func_2a3e: ; 2a3e (0:2a3e)  	call Func_2a6f  	ld a, $b  	ld de, $010e -	call Func_1deb +	call AdjustCoordinatesForWindow  	call Func_22a6  	pop hl  	ld a, l @@ -3299,7 +3305,7 @@ Func_2a59: ; 2a59 (0:2a59)  	call Func_2a9e  	ld a, $13  	ld de, $010e -	call Func_1deb +	call AdjustCoordinatesForWindow  	call Func_22a6  	call EnableLCD  	pop hl @@ -3308,8 +3314,8 @@ Func_2a59: ; 2a59 (0:2a59)  Func_2a6f: ; 2a6f (0:2a6f)  	ld de, $000c  	ld bc, $0c06 -	call Func_1deb -	call Func_1e7c +	call AdjustCoordinatesForWindow +	call DrawMenuBox  	ret  ; 0x2a7c @@ -3318,8 +3324,8 @@ INCBIN "baserom.gbc",$2a7c,$2a9e - $2a7c  Func_2a9e: ; 2a9e (0:2a9e)  	ld de, $000c  	ld bc, $1406 -	call Func_1deb -	call Func_1e7c +	call AdjustCoordinatesForWindow +	call DrawMenuBox  	ret  Func_2aab: ; 2aab (0:2aab) @@ -3401,7 +3407,7 @@ Func_2af0: ; 2af0 (0:2af0)  	ret  Func_2b66: ; 2b66 (0:2b66) -	call Func_1deb +	call AdjustCoordinatesForWindow  	ld hl, $002f  	call Func_2c1b  	ret @@ -3915,7 +3921,7 @@ TryExecuteEffectCommandFunction: ; 2fd9 (0:2fd9)  	ld a, [wce22]  	call BankswitchHome  	or a -	call CallF +	call CallHL  	push af  ; restore original bank and return	  	pop bc | 
