StringCmp → CompareBytes; CompareLong → CompareBytesLong

hStringCmpString[1/2] → h[EnemyMon/PartyMon1]Speed
This commit is contained in:
Rangi
2018-07-23 00:25:53 -04:00
parent a1806d6e81
commit 4f0c9cecf9
10 changed files with 72 additions and 72 deletions

35
home/compare.asm Normal file
View File

@@ -0,0 +1,35 @@
CompareBytes::
; Compare c bytes at de and hl.
; Return z if they all match.
.loop
ld a, [de]
cp [hl]
ret nz
inc de
inc hl
dec c
jr nz, .loop
ret
CompareBytesLong::
; Compare bc bytes at de and hl.
; Return carry if they all match.
.loop
ld a, [de]
cp [hl]
jr nz, .diff
inc de
inc hl
dec bc
ld a, b
or c
jr nz, .loop
scf
ret
.diff:
and a
ret

12
home/queue_script.asm Normal file
View File

@@ -0,0 +1,12 @@
QueueScript::
; Push pointer hl in the current bank to wQueuedScriptBank.
ld a, [hROMBank]
FarQueueScript::
; Push pointer a:hl to wQueuedScriptBank.
ld [wQueuedScriptBank], a
ld a, l
ld [wQueuedScriptAddr], a
ld a, h
ld [wQueuedScriptAddr + 1], a
ret