Release 2026-11-04-r2 · SHA256 341b7868d4a3e0c70b2acc3cff253169ccb768e4bf4e55aa3e651fded20611af · Click a line number for a direct link.
1 .ifndef WITH_GAP_BRAKE2 .equ WITH_GAP_BRAKE,03 .endif4| Hard defensive pair: nearer back contains the carrier goal-side;5| partner protects a dangerous slot receiver. Native skating/checking retained.6 .text7 .globl _start8_start:9 lea 0xE594,%a010 movem.l %d2-%d7/%a1-%a2,-(%sp)11 link.w %a6,#-2412 move.w %d0,-2(%a6)13 move.w %d1,-4(%a6)14 cmpi.w #1,0xFFFFF07A15 bne.w native16 btst #3,0x62(%a3)17 bne.w native18 btst #5,0x62(%a3)19 bne.w native20 btst #2,0x63(%a3)21 bne.w native22 cmpi.w #1,0x34(%a3)23 blt.w native24 cmpi.w #2,0x34(%a3)25 bgt.w native26 btst #0,0xFFFFC2EA27 bne.w native28 btst #7,0xFFFFC2EC29 bne.w native30 btst #7,0xFFFFC2EE31 bne.w native32 btst #2,0xFFFFC2F233 bne.w native34 btst #0,0xFFFFC2FA35 bne.w native36 btst #2,0xFFFFC2FA37 bne.w native38 .if WITH_PASS_CONTINUITY39 bsr.w flight_owner40 .else41 move.w 0xFFFFB7AA,%d242 .endif43 cmpi.w #11,%d244 bhi.w native45 move.w 0x52(%a3),%d346 subi.w #6,%d247 subi.w #6,%d348 eor.w %d3,%d249 bpl.w native50 move.w 0xFFFFB75E,%d351 btst #7,0x62(%a3)52 bne.s depth_ready53 neg.w %d354depth_ready:55 cmpi.w #-80,%d356 bgt.w native57 cmpi.w #-264,%d358 blt.w native59 move.w 0xFFFFB74A,%d460 cmpi.w #-144,%d461 blt.w native62 cmpi.w #144,%d463 bgt.w native64 move.w %d4,-6(%a6) | actual carrier world X, own attack-oriented depth65 move.w %d3,-8(%a6)66 lea 0xFFFFB04A,%a167 cmpi.w #6,0x52(%a3)68 bcs.s own_base69 adda.w #768,%a170own_base:71 move.l #0x7FFFFFFF,%d672 moveq #-1,%d573 .if WITH_REAL_ACTORS74 moveq #5,%d775 .else76 moveq #4,%d777 .endif78nearest:79 cmpi.w #1,0x34(%a1)80 blt.s next_back81 cmpi.w #2,0x34(%a1)82 bgt.s next_back83 btst #2,0x63(%a1)84 bne.s next_back85 btst #5,0x62(%a1)86 bne.s next_back87 move.w (%a1),%d088 sub.w %d4,%d089 muls.w %d0,%d090 move.w 0x14(%a1),%d191 sub.w 0xFFFFB75E,%d192 muls.w %d1,%d193 add.l %d1,%d094 cmp.l %d6,%d095 bge.s next_back96 move.l %d0,%d697 move.w 0x52(%a1),%d598next_back:99 adda.w #128,%a1100 dbra %d7,nearest101 cmp.w 0x52(%a3),%d5102 bne.w cover103 move.w -6(%a6),%d0104 move.w %d0,%d1105 asr.w #3,%d1106 sub.w %d1,%d0 | stay slightly inside the carrying lane107 move.w -8(%a6),%d1108 subi.w #20,%d1 | goal-side containment gap109 .if WITH_GAP_BRAKE110 jsr 0x228000111 lea 0x228040,%a0 | retain the native target-arrival brake command112 .endif113 cmpi.w #-238,%d1114 bge.w store115 move.w #-238,%d1116 bra.w store117cover:118 moveq #30,%d0 | weak post if there is no dangerous receiver119 tst.w -6(%a6)120 bmi.s cover_depth121 neg.w %d0122cover_depth:123 move.w -8(%a6),%d1124 subi.w #32,%d1125 cmpi.w #-224,%d1126 bge.s cover_min127 move.w #-224,%d1128cover_min:129 cmpi.w #-140,%d1130 ble.s find_threat131 move.w #-140,%d1132find_threat:133 move.w #0x7FFF,%d6134 lea 0xFFFFB04A,%a1135 cmpi.w #6,0x52(%a3)136 bcc.s opp_base137 adda.w #768,%a1138opp_base:139 .if WITH_REAL_ACTORS140 moveq #5,%d7141 .else142 moveq #4,%d7143 .endif144threat:145 tst.w 0x34(%a1)146 ble.w next_threat147 btst #2,0x63(%a1)148 bne.w next_threat149 move.w 0x52(%a1),%d2150 cmp.w 0xFFFFB7AA,%d2151 beq.w next_threat152 move.w (%a1),%d2153 move.w %d2,%d4154 bpl.s threat_abs155 neg.w %d4156threat_abs:157 cmpi.w #92,%d4158 bgt.w next_threat159 move.w 0x14(%a1),%d3160 btst #7,0x62(%a3)161 bne.s threat_depth162 neg.w %d3163threat_depth:164 cmpi.w #-140,%d3165 bgt.w next_threat166 cmpi.w #-252,%d3167 blt.w next_threat168 move.w %d3,%d5169 addi.w #224,%d5170 bpl.s threat_cost171 neg.w %d5172threat_cost:173 add.w %d5,%d5174 add.w %d4,%d5175 cmp.w %d6,%d5176 bge.s next_threat177 move.w %d5,%d6178 move.w %d2,%d0179 asr.w #2,%d2180 sub.w %d2,%d0 | shadow inside the receiver, protect the pass lane181 move.w %d3,%d1182 subi.w #12,%d1183 cmpi.w #-236,%d1184 bge.s next_threat185 move.w #-236,%d1186next_threat:187 adda.w #128,%a1188 dbra %d7,threat189store:190 btst #7,0x62(%a3)191 bne.s output192 neg.w %d1193output:194 move.w %d0,-2(%a6)195 move.w %d1,-4(%a6)196native:197 move.w -2(%a6),%d0198 move.w -4(%a6),%d1199 unlk %a6200 movem.l (%sp)+,%d2-%d7/%a1-%a2201 jmp 0x103C8202203 .if WITH_PASS_CONTINUITY204flight_owner:205 jsr 0x2DD680206 rts207 .endif208