diff options
| author | xCrystal <rgr.crystal@gmail.com> | 2016-01-26 20:13:32 +0100 | 
|---|---|---|
| committer | xCrystal <rgr.crystal@gmail.com> | 2016-01-26 20:13:32 +0100 | 
| commit | 22846d42c053777e079f3ebdfc5f105bfb379c4a (patch) | |
| tree | 5bbbd764ee5e724276f2ff8d242874d8a0fb3399 | |
| parent | 5428dd5b63aff95421bbc770562efbd15d7d367c (diff) | |
wDoFrameFunction
| -rwxr-xr-x | src/engine/bank3.asm | 4 | ||||
| -rwxr-xr-x | src/engine/bank7.asm | 4 | ||||
| -rwxr-xr-x | src/engine/home.asm | 13 | ||||
| -rwxr-xr-x | src/wram.asm | 5 | 
4 files changed, 15 insertions, 11 deletions
| diff --git a/src/engine/bank3.asm b/src/engine/bank3.asm index a4e64d7..df77e61 100755 --- a/src/engine/bank3.asm +++ b/src/engine/bank3.asm @@ -209,11 +209,11 @@ Func_c184: ; c184 (3:4184)  Func_c199: ; c199 (3:4199)  	ld hl, Func_380e -	call Func_3bd2 +	call SetDoFrameFunction  	ret  Func_c1a0: ; c1a0 (3:41a0) -	call Func_3bdb +	call ResetDoFrameFunction  	ret  Func_c1a4: ; c1a4 (3:41a4) diff --git a/src/engine/bank7.asm b/src/engine/bank7.asm index 59b74a6..44f2408 100755 --- a/src/engine/bank7.asm +++ b/src/engine/bank7.asm @@ -179,7 +179,7 @@ Func_1d078: ; 1d078 (7:5078)  	call $52dd  	jr c, Func_1d078  .asm_1d0f3 -	call Func_3bdb +	call ResetDoFrameFunction  	call Func_3ca0  	ret  ; 0x1d0fa @@ -307,7 +307,7 @@ Credits_1d6ad: ; 1d6ad (7:56ad)  	call DisableLCD  	ld hl, $cabb  	set 1, [hl] -	call Func_3bdb +	call ResetDoFrameFunction  	ret  ; 0x1d705 diff --git a/src/engine/home.asm b/src/engine/home.asm index 9c4466a..195641e 100755 --- a/src/engine/home.asm +++ b/src/engine/home.asm @@ -723,7 +723,7 @@ DoFrame: ; 053f (0:053f)  	push hl  	push de  	push bc -	ld hl, $cad3 +	ld hl, wDoFrameFunction ; context-specific function  	call CallIndirect  	call WaitForVBlank  	call ReadJoypad @@ -5090,17 +5090,18 @@ Func_3aed: ; 3aed (0:3aed)  INCBIN "baserom.gbc",$3b11,$3bd2 - $3b11 -Func_3bd2: ; 3bd2 (0:3bd2) +; writes from hl the pointer to the function to be called by DoFrame +SetDoFrameFunction: ; 3bd2 (0:3bd2)  	ld a, l -	ld [$cad3], a +	ld [wDoFrameFunction], a  	ld a, h -	ld [$cad4], a +	ld [wDoFrameFunction + 1], a  	ret -Func_3bdb: ; 3bdb (0:3bdb) +ResetDoFrameFunction: ; 3bdb (0:3bdb)  	push hl  	ld hl, $0000 -	call Func_3bd2 +	call SetDoFrameFunction  	pop hl  	ret  ; 0x3be4 diff --git a/src/wram.asm b/src/wram.asm index 8408200..ea3a9d3 100755 --- a/src/wram.asm +++ b/src/wram.asm @@ -216,7 +216,10 @@ wLCDCFunctiontrampoline:: ; cacd  wVBlankFunctionTrampoline:: ; cad0  	ds $3 -	ds $1d +	 +wDoFrameFunction:: ; cad3 +	ds $3 +	ds $1a  wBufPalette:: ; caf0 - cab7f  	ds $80 | 
