shithub: pokecrystal

Download patch

ref: 726c4bc1d61ed8ac1975de12f30d34135a624d05
parent: c50b49bd6257ab6aba27210dc0e241414b723d87
author: PikalaxALT <PikalaxALT@gmail.com>
date: Fri Oct 2 18:49:26 EDT 2015

Moved time-related functions in bank 4 to engine/time.asm

--- /dev/null
+++ b/engine/time.asm
@@ -1,0 +1,464 @@
+Function113d6: ; 113d6
+	call Function114dd
+	ret
+; 113da
+
+Function113da: ; 113da
+	xor a
+	ld [wdc2d], a
+	ld [wdc3a], a
+	ld [wdc1c], a
+	ret
+; 113e5
+
+Function113e5:: ; 113e5
+	xor a
+	ld [wd464], a
+
+Function113e9: ; 113e9
+	ld a, [wd464]
+	cp 3
+	jr c, .asm_113f2
+	ld a, 3
+
+.asm_113f2
+	ld e, a
+	ld d, 0
+	ld hl, .data_113fd
+	add hl, de
+	ld a, [hl]
+	jp Function1142e
+; 113fd
+
+.data_113fd
+	db 20, 10, 5, 3
+; 11401
+
+Function11401: ; 11401
+	call Function1143c
+	ret nc
+	ld hl, wd464
+	ld a, [hl]
+	cp 3
+	jr nc, .asm_1140e
+	inc [hl]
+
+.asm_1140e
+	call Function113e9
+	scf
+	ret
+; 11413
+
+Function11413: ; 11413
+	ld a, 1
+
+Function11415: ; 11415
+	ld [hl], a
+	push hl
+	call UpdateTime
+	pop hl
+	inc hl
+	call Function11621
+	ret
+; 11420
+
+Function11420: ; 11420
+	inc hl
+	push hl
+	call Function115cf
+	call Function115c8
+	pop hl
+	dec hl
+	call Function11586
+	ret
+; 1142e
+
+Function1142e: ; 1142e
+	ld hl, wd465
+	ld [hl], a
+	call UpdateTime
+	ld hl, wd466
+	call Function1162e
+	ret
+; 1143c
+
+Function1143c: ; 1143c
+	ld hl, wd466
+	call Function115d6
+	call Function115ae
+	ld hl, wd465
+	call Function11586
+	ret
+; 1144c
+
+Function1144c: ; 1144c
+	ld hl, wdc1c
+	jp Function11413
+; 11452
+
+Function11452:: ; 11452
+	ld hl, wdc1c
+	call Function11420
+	ret nc
+	xor a
+	ld hl, DailyFlags
+rept 3
+	ld [hli], a
+endr
+	ld [hl], a
+	ld hl, wDailyRematchFlags
+rept 4
+	ld [hli], a
+endr
+	ld hl, wDailyPhoneItemFlags
+rept 4
+	ld [hli], a
+endr
+	ld hl, wDailyPhoneTimeOfDayFlags
+rept 4
+	ld [hli], a
+endr
+	ld hl, wdc58
+	ld a, [hl]
+	and a
+	jr z, .asm_11480
+	dec [hl]
+	jr nz, .asm_11483
+
+.asm_11480
+	call Function11485
+
+.asm_11483
+	jr Function1144c
+; 11485
+
+Function11485: ; 11485
+	call Random
+	and 3
+	add 3
+	ld [wdc58], a
+	ret
+; 11490
+
+Function11490: ; 11490
+	ld a, $14
+	ld [wd46c], a
+	ld a, $0
+	ld [wd46d], a
+	call UpdateTime
+	ld hl, wdc35
+	call Function11613
+	ret
+; 114a4
+
+
+Function114a4:: ; 114a4 (4:54a4)
+	ld hl, wdc35
+	call Function115db
+	ld a, [wcfd7]
+	and a
+	jr nz, .asm_114d4
+	ld a, [wcfd6]
+	and a
+	jr nz, .asm_114d4
+	ld a, [wcfd4]
+	ld b, a
+	ld a, [wd46d]
+	sub b
+	jr nc, .asm_114c2
+	add $3c
+.asm_114c2
+	ld [wd46d], a
+	ld a, [wcfd5]
+	ld b, a
+	ld a, [wd46c]
+	sbc b
+	ld [wd46c], a
+	jr c, .asm_114d4
+	and a
+	ret
+.asm_114d4
+	xor a
+	ld [wd46c], a
+	ld [wd46d], a
+	scf
+	ret
+
+
+Function114dd: ; 114dd
+	call UpdateTime
+	ld hl, wdc23
+	call Function11621
+	ret
+; 114e7
+
+Function114e7:: ; 114e7
+	ld hl, wdc23
+	call Function115cf
+	call Function115c8
+	and a
+	jr z, .asm_114fa
+
+	ld b, a
+	callba ApplyPokerusTick
+
+.asm_114fa
+	xor a
+	ret
+; 114fc
+
+Function114fc: ; 114fc
+	ld a, $2
+	ld hl, wdc3a
+	ld [hl], a
+	call UpdateTime
+	ld hl, wdc3b
+	call Function11621
+	ret
+; 1150c
+
+Function1150c: ; 1150c
+	ld hl, wdc3b
+	call Function115cf
+	call Function115c8
+	ld hl, wdc3a
+	call Function11586
+	ret
+; 1151c
+
+Function1151c: ; 1151c
+	ld hl, DailyFlags
+	set 2, [hl]
+	ret
+; 11522
+
+Function11522: ; 11522
+	and a
+	ld hl, DailyFlags
+	bit 2, [hl]
+	ret nz
+	scf
+	ret
+; 1152b
+
+Function1152b: ; 1152b
+	call Function11534
+	ld hl, wdc2d
+	jp Function11415
+; 11534
+
+Function11534: ; 11534
+	call GetWeekday
+	ld c, a
+	ld a, $5
+	sub c
+	jr z, .asm_1153f
+	jr nc, .asm_11541
+
+.asm_1153f
+	add $7
+
+.asm_11541
+	ret
+; 11542
+
+Function11542: ; 11542
+	ld hl, wdc2d
+	jp Function11420
+; 11548
+
+Function11548: ; 11548
+	ld a, BANK(s0_abfa)
+	call GetSRAMBank
+	ld hl, s0_abfa
+	ld a, [hli]
+	ld [Buffer1], a
+	ld a, [hl]
+	ld [Buffer2], a
+	call CloseSRAM
+	ld hl, Buffer1
+	call Function11420
+	jr nc, .asm_11572
+	ld hl, Buffer1
+	call Function11413
+	call CloseSRAM
+	callba Function1050c8
+
+.asm_11572
+	ld a, BANK(s0_abfa)
+	call GetSRAMBank
+	ld hl, Buffer1
+	ld a, [hli]
+	ld [s0_abfa], a
+	ld a, [hl]
+	ld [s0_abfa + 1], a
+	call CloseSRAM
+	ret
+; 11586
+
+Function11586: ; 11586
+	cp $ff
+	jr z, .asm_11595
+	ld c, a
+	ld a, [hl]
+	sub c
+	jr nc, .asm_11590
+	xor a
+
+.asm_11590
+	ld [hl], a
+	jr z, .asm_11595
+	xor a
+	ret
+
+.asm_11595
+	xor a
+	ld [hl], a
+	scf
+	ret
+; 11599
+
+Function11599: ; 11599
+	ld a, [wcfd7]
+	and a
+	jr nz, Function115cc
+	ld a, [wcfd6]
+	and a
+	jr nz, Function115cc
+	ld a, [wcfd5]
+	jr nz, Function115cc
+	ld a, [wcfd4]
+	ret
+; 115ae
+
+Function115ae: ; 115ae
+	ld a, [wcfd7]
+	and a
+	jr nz, Function115cc
+	ld a, [wcfd6]
+	and a
+	jr nz, Function115cc
+	ld a, [wcfd5]
+	ret
+; 115be
+
+Function115be: ; 115be
+	ld a, [wcfd7]
+	and a
+	jr nz, Function115cc
+	ld a, [wcfd6]
+	ret
+; 115c8
+
+Function115c8: ; 115c8
+	ld a, [wcfd7]
+	ret
+; 115cc
+
+Function115cc: ; 115cc
+	ld a, $ff
+	ret
+; 115cf
+
+Function115cf: ; 115cf
+	xor a
+	jr Function11605
+; 115d2
+
+Function115d2: ; 115d2
+	inc hl
+	xor a
+	jr Function115f8
+; 115d6
+
+Function115d6: ; 115d6
+rept 2
+	inc hl
+endr
+	xor a
+	jr Function115eb
+; 115db
+
+Function115db: ; 115db
+rept 3
+	inc hl
+endr
+	ld a, [hSeconds]
+	ld c, a
+	sub [hl]
+	jr nc, .asm_115e6
+	add 60
+.asm_115e6
+	ld [hl], c
+	dec hl
+	ld [wcfd4], a
+
+Function115eb: ; 115eb
+	ld a, [hMinutes]
+	ld c, a
+	sbc [hl]
+	jr nc, .asm_115f3
+	add 60
+.asm_115f3
+	ld [hl], c
+	dec hl
+	ld [wcfd5], a
+
+Function115f8: ; 115f8
+	ld a, [hHours]
+	ld c, a
+	sbc [hl]
+	jr nc, .asm_11600
+	add 24
+.asm_11600
+	ld [hl], c
+	dec hl
+	ld [wcfd6], a
+
+Function11605
+	ld a, [CurDay]
+	ld c, a
+	sbc [hl]
+	jr nc, .skip
+	add 20 * 7
+.skip
+	ld [hl], c
+	ld [wcfd7], a
+	ret
+; 11613
+
+Function11613: ; 11613
+	ld a, [CurDay]
+	ld [hli], a
+	ld a, [hHours]
+	ld [hli], a
+	ld a, [hMinutes]
+	ld [hli], a
+	ld a, [hSeconds]
+	ld [hli], a
+	ret
+; 11621
+
+Function11621: ; 11621
+	ld a, [CurDay]
+	ld [hl], a
+	ret
+; 11626
+
+Function11626: ; 11626
+	ld a, [CurDay]
+	ld [hli], a
+	ld a, [hHours]
+	ld [hli], a
+	ret
+; 1162e
+
+Function1162e: ; 1162e
+	ld a, [CurDay]
+	ld [hli], a
+	ld a, [hHours]
+	ld [hli], a
+	ld a, [hMinutes]
+	ld [hli], a
+	ret
+; 11639
\ No newline at end of file
--- a/main.asm
+++ b/main.asm
@@ -10284,472 +10284,8 @@
 
 INCLUDE "engine/pack.asm"
 
+INCLUDE "engine/time.asm"
 
-Function113d6: ; 113d6
-	call Function114dd
-	ret
-; 113da
-
-Function113da: ; 113da
-	xor a
-	ld [wdc2d], a
-	ld [wdc3a], a
-	ld [wdc1c], a
-	ret
-; 113e5
-
-Function113e5:: ; 113e5
-	xor a
-	ld [wd464], a
-
-Function113e9: ; 113e9
-	ld a, [wd464]
-	cp 3
-	jr c, .asm_113f2
-	ld a, 3
-
-.asm_113f2
-	ld e, a
-	ld d, 0
-	ld hl, .data_113fd
-	add hl, de
-	ld a, [hl]
-	jp Function1142e
-; 113fd
-
-.data_113fd
-	db 20, 10, 5, 3
-; 11401
-
-Function11401: ; 11401
-	call Function1143c
-	ret nc
-	ld hl, wd464
-	ld a, [hl]
-	cp 3
-	jr nc, .asm_1140e
-	inc [hl]
-
-.asm_1140e
-	call Function113e9
-	scf
-	ret
-; 11413
-
-Function11413: ; 11413
-	ld a, 1
-
-Function11415: ; 11415
-	ld [hl], a
-	push hl
-	call UpdateTime
-	pop hl
-	inc hl
-	call Function11621
-	ret
-; 11420
-
-Function11420: ; 11420
-	inc hl
-	push hl
-	call Function115cf
-	call Function115c8
-	pop hl
-	dec hl
-	call Function11586
-	ret
-; 1142e
-
-Function1142e: ; 1142e
-	ld hl, wd465
-	ld [hl], a
-	call UpdateTime
-	ld hl, wd466
-	call Function1162e
-	ret
-; 1143c
-
-Function1143c: ; 1143c
-	ld hl, wd466
-	call Function115d6
-	call Function115ae
-	ld hl, wd465
-	call Function11586
-	ret
-; 1144c
-
-Function1144c: ; 1144c
-	ld hl, wdc1c
-	jp Function11413
-; 11452
-
-Function11452:: ; 11452
-	ld hl, wdc1c
-	call Function11420
-	ret nc
-	xor a
-	ld hl, DailyFlags
-rept 3
-	ld [hli], a
-endr
-	ld [hl], a
-	ld hl, wDailyRematchFlags
-rept 4
-	ld [hli], a
-endr
-	ld hl, wDailyPhoneItemFlags
-rept 4
-	ld [hli], a
-endr
-	ld hl, wDailyPhoneTimeOfDayFlags
-rept 4
-	ld [hli], a
-endr
-	ld hl, wdc58
-	ld a, [hl]
-	and a
-	jr z, .asm_11480
-	dec [hl]
-	jr nz, .asm_11483
-
-.asm_11480
-	call Function11485
-
-.asm_11483
-	jr Function1144c
-; 11485
-
-Function11485: ; 11485
-	call Random
-	and 3
-	add 3
-	ld [wdc58], a
-	ret
-; 11490
-
-Function11490: ; 11490
-	ld a, $14
-	ld [wd46c], a
-	ld a, $0
-	ld [wd46d], a
-	call UpdateTime
-	ld hl, wdc35
-	call Function11613
-	ret
-; 114a4
-
-
-Function114a4:: ; 114a4 (4:54a4)
-	ld hl, wdc35
-	call Function115db
-	ld a, [wcfd7]
-	and a
-	jr nz, .asm_114d4
-	ld a, [wcfd6]
-	and a
-	jr nz, .asm_114d4
-	ld a, [wcfd4]
-	ld b, a
-	ld a, [wd46d]
-	sub b
-	jr nc, .asm_114c2
-	add $3c
-.asm_114c2
-	ld [wd46d], a
-	ld a, [wcfd5]
-	ld b, a
-	ld a, [wd46c]
-	sbc b
-	ld [wd46c], a
-	jr c, .asm_114d4
-	and a
-	ret
-.asm_114d4
-	xor a
-	ld [wd46c], a
-	ld [wd46d], a
-	scf
-	ret
-
-
-Function114dd: ; 114dd
-	call UpdateTime
-	ld hl, wdc23
-	call Function11621
-	ret
-; 114e7
-
-Function114e7:: ; 114e7
-	ld hl, wdc23
-	call Function115cf
-	call Function115c8
-	and a
-	jr z, .asm_114fa
-
-	ld b, a
-	callba ApplyPokerusTick
-
-.asm_114fa
-	xor a
-	ret
-; 114fc
-
-Function114fc: ; 114fc
-	ld a, $2
-	ld hl, wdc3a
-	ld [hl], a
-	call UpdateTime
-	ld hl, wdc3b
-	call Function11621
-	ret
-; 1150c
-
-Function1150c: ; 1150c
-	ld hl, wdc3b
-	call Function115cf
-	call Function115c8
-	ld hl, wdc3a
-	call Function11586
-	ret
-; 1151c
-
-Function1151c: ; 1151c
-	ld hl, DailyFlags
-	set 2, [hl]
-	ret
-; 11522
-
-Function11522: ; 11522
-	and a
-	ld hl, DailyFlags
-	bit 2, [hl]
-	ret nz
-	scf
-	ret
-; 1152b
-
-Function1152b: ; 1152b
-	call Function11534
-	ld hl, wdc2d
-	jp Function11415
-; 11534
-
-Function11534: ; 11534
-	call GetWeekday
-	ld c, a
-	ld a, $5
-	sub c
-	jr z, .asm_1153f
-	jr nc, .asm_11541
-
-.asm_1153f
-	add $7
-
-.asm_11541
-	ret
-; 11542
-
-Function11542: ; 11542
-	ld hl, wdc2d
-	jp Function11420
-; 11548
-
-Function11548: ; 11548
-	ld a, BANK(s0_abfa)
-	call GetSRAMBank
-	ld hl, s0_abfa
-	ld a, [hli]
-	ld [Buffer1], a
-	ld a, [hl]
-	ld [Buffer2], a
-	call CloseSRAM
-	ld hl, Buffer1
-	call Function11420
-	jr nc, .asm_11572
-	ld hl, Buffer1
-	call Function11413
-	call CloseSRAM
-	callba Function1050c8
-
-.asm_11572
-	ld a, BANK(s0_abfa)
-	call GetSRAMBank
-	ld hl, Buffer1
-	ld a, [hli]
-	ld [s0_abfa], a
-	ld a, [hl]
-	ld [s0_abfa + 1], a
-	call CloseSRAM
-	ret
-; 11586
-
-Function11586: ; 11586
-	cp $ff
-	jr z, .asm_11595
-	ld c, a
-	ld a, [hl]
-	sub c
-	jr nc, .asm_11590
-	xor a
-
-.asm_11590
-	ld [hl], a
-	jr z, .asm_11595
-	xor a
-	ret
-
-.asm_11595
-	xor a
-	ld [hl], a
-	scf
-	ret
-; 11599
-
-Function11599: ; 11599
-	ld a, [wcfd7]
-	and a
-	jr nz, Function115cc
-	ld a, [wcfd6]
-	and a
-	jr nz, Function115cc
-	ld a, [wcfd5]
-	jr nz, Function115cc
-	ld a, [wcfd4]
-	ret
-; 115ae
-
-Function115ae: ; 115ae
-	ld a, [wcfd7]
-	and a
-	jr nz, Function115cc
-	ld a, [wcfd6]
-	and a
-	jr nz, Function115cc
-	ld a, [wcfd5]
-	ret
-; 115be
-
-Function115be: ; 115be
-	ld a, [wcfd7]
-	and a
-	jr nz, Function115cc
-	ld a, [wcfd6]
-	ret
-; 115c8
-
-Function115c8: ; 115c8
-	ld a, [wcfd7]
-	ret
-; 115cc
-
-Function115cc: ; 115cc
-	ld a, $ff
-	ret
-; 115cf
-
-Function115cf: ; 115cf
-	xor a
-	jr Function11605
-; 115d2
-
-Function115d2: ; 115d2
-	inc hl
-	xor a
-	jr Function115f8
-; 115d6
-
-Function115d6: ; 115d6
-rept 2
-	inc hl
-endr
-	xor a
-	jr Function115eb
-; 115db
-
-Function115db: ; 115db
-rept 3
-	inc hl
-endr
-	ld a, [hSeconds]
-	ld c, a
-	sub [hl]
-	jr nc, .asm_115e6
-	add 60
-.asm_115e6
-	ld [hl], c
-	dec hl
-	ld [wcfd4], a
-
-Function115eb: ; 115eb
-	ld a, [hMinutes]
-	ld c, a
-	sbc [hl]
-	jr nc, .asm_115f3
-	add 60
-.asm_115f3
-	ld [hl], c
-	dec hl
-	ld [wcfd5], a
-
-Function115f8: ; 115f8
-	ld a, [hHours]
-	ld c, a
-	sbc [hl]
-	jr nc, .asm_11600
-	add 24
-.asm_11600
-	ld [hl], c
-	dec hl
-	ld [wcfd6], a
-
-Function11605
-	ld a, [CurDay]
-	ld c, a
-	sbc [hl]
-	jr nc, .asm_1160e
-	add 140
-.asm_1160e
-	ld [hl], c
-	ld [wcfd7], a
-	ret
-; 11613
-
-Function11613: ; 11613
-	ld a, [CurDay]
-	ld [hli], a
-	ld a, [hHours]
-	ld [hli], a
-	ld a, [hMinutes]
-	ld [hli], a
-	ld a, [hSeconds]
-	ld [hli], a
-	ret
-; 11621
-
-Function11621: ; 11621
-	ld a, [CurDay]
-	ld [hl], a
-	ret
-; 11626
-
-Function11626: ; 11626
-	ld a, [CurDay]
-	ld [hli], a
-	ld a, [hHours]
-	ld [hli], a
-	ret
-; 1162e
-
-Function1162e: ; 1162e
-	ld a, [CurDay]
-	ld [hli], a
-	ld a, [hHours]
-	ld [hli], a
-	ld a, [hMinutes]
-	ld [hli], a
-	ret
-; 11639
-
 CanLearnTMHMMove: ; 11639
 	ld a, [CurPartySpecies]
 	ld [CurSpecies], a
@@ -93615,3 +93151,4 @@
 ELSE
 INCBIN "misc/stadium2_1.bin"
 ENDC
+
--- a/maps/ElmsLab.asm
+++ b/maps/ElmsLab.asm
@@ -105,10 +105,10 @@
 	checkevent EVENT_TOLD_ELM_ABOUT_TOGEPI_OVER_THE_PHONE
 	iffalse ElmCheckTogepiEgg
 	writebyte TOGEPI
-	special Functionc284
+	special Special_FindThatSpeciesYourTrainerID
 	iftrue ShowElmTogepiScript
 	writebyte TOGETIC
-	special Functionc284
+	special Special_FindThatSpeciesYourTrainerID
 	iftrue ShowElmTogepiScript
 	writetext UnknownText_0x79a40
 	closetext
@@ -117,10 +117,10 @@
 
 ElmEggHatchedScript:
 	writebyte TOGEPI
-	special Functionc284
+	special Special_FindThatSpeciesYourTrainerID
 	iftrue ShowElmTogepiScript
 	writebyte TOGETIC
-	special Functionc284
+	special Special_FindThatSpeciesYourTrainerID
 	iftrue ShowElmTogepiScript
 	jump ElmCheckGotEggAgain
 
--- a/maps/LakeofRageMagikarpHouse.asm
+++ b/maps/LakeofRageMagikarpHouse.asm
@@ -37,7 +37,7 @@
 
 UnknownScript_0x19a6e0:
 	writebyte MAGIKARP
-	special Functionc276
+	special Special_FindThatSpecies
 	iffalse UnknownScript_0x19a6d7
 	writetext UnknownText_0x19a93e
 	closetext