From 0e34e4fb8dc685575cb55bb2acde0485b4d4ea93 Mon Sep 17 00:00:00 2001 From: Rangi Date: Tue, 20 Jan 2026 16:59:02 -0500 Subject: [PATCH] Factor out `DEF LINK_PARTY_DATA_PADDING EQU 3` --- constants/serial_constants.asm | 5 +++-- engine/link/link.asm | 8 ++++---- ram/wram.asm | 9 ++++----- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/constants/serial_constants.asm b/constants/serial_constants.asm index 90ab5fac..fdbe14df 100644 --- a/constants/serial_constants.asm +++ b/constants/serial_constants.asm @@ -36,10 +36,11 @@ DEF SERIAL_RN_PREAMBLE_LENGTH EQU 7 DEF SERIAL_PATCH_PREAMBLE_LENGTH EQU 3 DEF SERIAL_RNS_LENGTH EQU 10 +DEF LINK_PARTY_DATA_PADDING EQU 3 ; bytes unnecessarily written at the end of the data ; Gen 2 to Gen 2 link party data structure -DEF LINK_PARTY_DATA_LENGTH EQU NAME_LENGTH + (1 + PARTY_LENGTH + 1) + 2 + (PARTYMON_STRUCT_LENGTH + NAME_LENGTH * 2) * PARTY_LENGTH +DEF LINK_PARTY_DATA_LENGTH EQU NAME_LENGTH + (1 + PARTY_LENGTH + 1) + 2 + (PARTYMON_STRUCT_LENGTH + NAME_LENGTH * 2) * PARTY_LENGTH + LINK_PARTY_DATA_PADDING ; Gen 2 to Gen 1 link party data structure (Time Capsule) -DEF LINK_TIME_CAPSULE_PARTY_DATA_LENGTH EQU NAME_LENGTH + (1 + PARTY_LENGTH + 1) + (REDMON_STRUCT_LENGTH + NAME_LENGTH * 2) * PARTY_LENGTH +DEF LINK_TIME_CAPSULE_PARTY_DATA_LENGTH EQU NAME_LENGTH + (1 + PARTY_LENGTH + 1) + (REDMON_STRUCT_LENGTH + NAME_LENGTH * 2) * PARTY_LENGTH + LINK_PARTY_DATA_PADDING DEF SERIAL_MAIL_PREAMBLE_BYTE EQU $20 DEF SERIAL_MAIL_PREAMBLE_LENGTH EQU 5 diff --git a/engine/link/link.asm b/engine/link/link.asm index 78d4d16f..ea88cdcc 100644 --- a/engine/link/link.asm +++ b/engine/link/link.asm @@ -88,7 +88,7 @@ endc ld hl, wLinkSendTimeCapsuleParty ld de, wLinkReceivedPartyData - ld bc, SERIAL_PREAMBLE_LENGTH + LINK_TIME_CAPSULE_PARTY_DATA_LENGTH + 3 + ld bc, SERIAL_PREAMBLE_LENGTH + LINK_TIME_CAPSULE_PARTY_DATA_LENGTH vc_hook Wireless_ExchangeBytes_Gen2toGen1_party_structs call Serial_ExchangeBytes ld a, SERIAL_NO_DATA_BYTE @@ -120,7 +120,7 @@ endc jp nc, ExitLinkCommunications ld de, wLinkPlayerName - ld bc, LINK_TIME_CAPSULE_PARTY_DATA_LENGTH + 3 + ld bc, LINK_TIME_CAPSULE_PARTY_DATA_LENGTH call Link_CopyOTData ld de, wOTPatchLists @@ -254,7 +254,7 @@ endc ld hl, wLinkSendParty ld de, wLinkReceivedPartyData - ld bc, SERIAL_PREAMBLE_LENGTH + LINK_PARTY_DATA_LENGTH + 3 + ld bc, SERIAL_PREAMBLE_LENGTH + LINK_PARTY_DATA_LENGTH vc_hook Wireless_ExchangeBytes_party_structs call Serial_ExchangeBytes ld a, SERIAL_NO_DATA_BYTE @@ -288,7 +288,7 @@ endc ld hl, wLinkReceivedPartyData call Link_FindFirstNonControlCharacter_SkipZero ld de, wLinkPlayerName - ld bc, LINK_PARTY_DATA_LENGTH + ld bc, LINK_PARTY_DATA_LENGTH - LINK_PARTY_DATA_PADDING call Link_CopyOTData ld de, wOTPatchLists diff --git a/ram/wram.asm b/ram/wram.asm index 92f48b92..8c0292d4 100644 --- a/ram/wram.asm +++ b/ram/wram.asm @@ -497,7 +497,7 @@ wLinkDataEnd:: SECTION UNION "Overworld Map", WRAM0 ; player's party data, formatted for link transfer (Gen 2 link session) -wLinkSendParty:: ds SERIAL_PREAMBLE_LENGTH + LINK_PARTY_DATA_LENGTH + 3 +wLinkSendParty:: ds SERIAL_PREAMBLE_LENGTH + LINK_PARTY_DATA_LENGTH ds 50 ; player's party mail, formatted for link transfer, during a link session @@ -521,7 +521,7 @@ wLinkReceivedMailEnd:: SECTION UNION "Overworld Map", WRAM0 ; player's party data, formatted for link transfer (Time Capsule link session) -wLinkSendTimeCapsuleParty:: ds SERIAL_PREAMBLE_LENGTH + LINK_TIME_CAPSULE_PARTY_DATA_LENGTH + 3 +wLinkSendTimeCapsuleParty:: ds SERIAL_PREAMBLE_LENGTH + LINK_TIME_CAPSULE_PARTY_DATA_LENGTH SECTION UNION "Overworld Map", WRAM0 @@ -585,7 +585,7 @@ for n, 1, PARTY_LENGTH + 1 wTimeCapsulePartyMon{d:n}Nickname:: ds MON_NAME_LENGTH endr - ds 3 + ds LINK_PARTY_DATA_PADDING ; unused but written to ENDU @@ -2784,8 +2784,7 @@ wMagikarpRecordHoldersName:: ds NAME_LENGTH ; This union spans 451 bytes. UNION ; during a link session, other player's raw party data is initially stored here -wLinkReceivedPartyData:: - ds SERIAL_PREAMBLE_LENGTH + LINK_PARTY_DATA_LENGTH + 3 +wLinkReceivedPartyData:: ds SERIAL_PREAMBLE_LENGTH + LINK_PARTY_DATA_LENGTH wLinkReceivedPartyEnd:: db NEXTU