Release 2026-11-04-r2 · SHA256 90a14c25e9db910d9036d23d019082354da2c15b7caeec805f4ac4e7b4d11bee · Click a line number for a direct link.
1| Reject a downed skater as a pass target or stick pickup candidate.2| +0 replaces BTST #2,$63(A1) in native/cached human pass scans.3| +4 watches an actual native stick contact, before the existing pickup gate.4| Same Z contract: Z clear means unavailable. All registers and other CCR bits5| are preserved exactly. No RAM, puck movement or animation is written.6 .text7 .globl _start8_start:9 bra.w scan10 bra.w pickup11pickup:12 bsr.w collision13 beq.s native_pickup14 cmpi.l #0x14ECC,(%sp) | sole game call: BSR puckstick from collision dispatcher15 bne.s blocked_direct16 addq.l #4,%sp | discard that BSR, retain native collision register frame17 jmp 0x14ED0 | native body response: no intangible downed skater18blocked_direct:19 rts | defensive contract for an explicit isolated puckstick call20native_pickup:21 pea 0x150FC22 jmp 0x2FF380 | exact original pickup/crit gate and its return stack2324scan:25 move.w %sr,-(%sp)26 move.l %a0,-(%sp)27 movea.l %a1,%a028 bra.s common29collision:30 move.w %sr,-(%sp)31 move.l %a0,-(%sp)32 movea.l %a2,%a033common:34 move.l %d0,-(%sp)35 btst #2,0x63(%a0)36 bne.s blocked37 tst.w 0x34(%a0)38 ble.s allowed | keep native keeper and non-skater handling39 btst #5,0x64(%a0)40 bne.s blocked | native board-fall flag, through recovery41 move.w 0x58(%a0),%d042 .irp animation,0xD26,0xDD8,0x136A,0x145C,0x1776,0x17E8,0x185A,0x18CC,0x193E,0x1A00,0x1AF443 cmpi.w #\animation,%d044 beq.s blocked | front/back/flip/injury/board fall animations45 .endr46allowed:47 ori.w #4,8(%sp)48 bra.s restore49blocked:50 andi.w #0xFFFB,8(%sp)51restore:52 move.l (%sp)+,%d053 movea.l (%sp)+,%a054 move.w (%sp)+,%sr55 rts56