summaryrefslogtreecommitdiff
path: root/engine/link/link.asm
diff options
context:
space:
mode:
authorvulcandth <vulcandth@gmail.com>2022-04-16 19:42:06 -0500
committerGitHub <noreply@github.com>2022-04-16 20:42:06 -0400
commitf9077c6db62137288ee8e5bb086973a0c52f83b6 (patch)
tree54a0e8b756dfc8fa3e6ebee1f5150e889cc93553 /engine/link/link.asm
parentb06cfe78fd8494fbccd4186b970382c49c416b5c (diff)
Additional vc_asserts (#906)HEADmaster
Diffstat (limited to 'engine/link/link.asm')
-rw-r--r--engine/link/link.asm8
1 files changed, 8 insertions, 0 deletions
diff --git a/engine/link/link.asm b/engine/link/link.asm
index 72bc6f368..e345f893c 100644
--- a/engine/link/link.asm
+++ b/engine/link/link.asm
@@ -2310,7 +2310,15 @@ WaitForLinkedFriend:
ld a, (0 << rSC_ON) | (0 << rSC_CLOCK)
ldh [rSC], a
ld a, (1 << rSC_ON) | (0 << rSC_CLOCK)
+; This vc_hook causes the Virtual Console to set [hSerialConnectionStatus] to
+; USING_INTERNAL_CLOCK, which allows the player to proceed past the link
+; receptionist's "Please wait." It assumes that hSerialConnectionStatus is at
+; its original address.
vc_hook linkCable_fake_begin
+ vc_assert hSerialConnectionStatus == $ffcb, \
+ "hSerialConnectionStatus is no longer located at 00:ffcb."
+ vc_assert USING_INTERNAL_CLOCK == $02, \
+ "USING_INTERNAL_CLOCK is no longer equal to $02."
ldh [rSC], a
ld a, [wLinkTimeoutFrames]
dec a