summaryrefslogtreecommitdiff
path: root/common/delay.asm
diff options
context:
space:
mode:
Diffstat (limited to 'common/delay.asm')
-rw-r--r--common/delay.asm23
1 files changed, 23 insertions, 0 deletions
diff --git a/common/delay.asm b/common/delay.asm
new file mode 100644
index 000000000..4e8b2147c
--- /dev/null
+++ b/common/delay.asm
@@ -0,0 +1,23 @@
+DelayFrame: ; 45a
+; Wait for one frame
+ ld a, 1
+ ld [VBlankOccurred], a
+
+; Wait for the next VBlank, halting to conserve battery
+.halt
+ halt ; rgbasm adds a nop after this instruction by default
+ ld a, [VBlankOccurred]
+ and a
+ jr nz, .halt
+ ret
+; 468
+
+
+DelayFrames: ; 468
+; Wait c frames
+ call DelayFrame
+ dec c
+ jr nz, DelayFrames
+ ret
+; 46f
+