Annotation of doom/p_base.gas, revision 1.1

1.1     ! root        1:  .long
        !             2:        .dc.l   codeend-_p_base_start
        !             3: _p_base_start::
        !             4:  .gpu
        !             5:        .org $f1b140
        !             6: 
        !             7: S_LE   .ccdef  $14     ; PL
        !             8: U_LE   .ccdef  $04     ; CC
        !             9: S_GT    .ccdef $18     ; MI
        !            10: U_GT    .ccdef $08     ; CS
        !            11: 
        !            12: S_LT   .ccdef  $15             ; PL+NE
        !            13: U_LT   .ccdef  $05             ; CC+NE
        !            14: 
        !            15: FP .equr r14
        !            16: scratch .equr r10
        !            17: scratch2 .equr r11
        !            18: RETURNVALUE .equr r29
        !            19: RETURNPOINT .equr r28
        !            20: MATH_A .equr r27
        !            21: MATH_B .equr r26
        !            22: MATH_C .equr r25
        !            23: MATH_RTS .equr r24
        !            24: MATH_SIGN .equr r23
        !            25: 
        !            26:        movei   #codestart,scratch
        !            27:        jump    T,(scratch)
        !            28:        nop
        !            29: 
        !            30: 
        !            31: GPU_IMUL:
        !            32:  move MATH_A,MATH_SIGN
        !            33:  xor MATH_B,MATH_SIGN
        !            34:  abs MATH_A
        !            35:  abs MATH_B
        !            36:  move MATH_A,MATH_C
        !            37:  mult MATH_B,MATH_C
        !            38:  move MATH_B,scratch2
        !            39:  shrq #16,scratch2
        !            40:  mult MATH_A,scratch2
        !            41:  shlq #16,scratch2
        !            42:  add scratch2,MATH_C
        !            43:  move MATH_A,scratch2
        !            44:  shrq #16,scratch2
        !            45:  mult MATH_B,scratch2
        !            46:  shlq #16,scratch2
        !            47:  add scratch2, MATH_C
        !            48:  btst #31,MATH_SIGN
        !            49:  jump EQ,(MATH_RTS)
        !            50:  nop
        !            51:  jump T,(MATH_RTS)
        !            52:  neg MATH_C
        !            53:        
        !            54: 
        !            55: ;=============================================================================
        !            56: _PB_PointInSubsector::         ; subsector_t * (fixed_t x, fixed_t y)
        !            57: ;=============================================================================
        !            58:        .extern _nodes, _numnodes, _subsectors
        !            59:        
        !            60: pi_node                        .equr   r15
        !            61: pi_x                   .equr   r16
        !            62: pi_y                   .equr   r17
        !            63: pi_side                        .equr   r18
        !            64: pi_nodebase            .equr   r19
        !            65: pi_nodex               .equr   r20
        !            66: pi_nodey               .equr   r21
        !            67: pi_nodedx              .equr   r22
        !            68: pi_nodedy              .equr   r23
        !            69: 
        !            70:        load    (FP),pi_x
        !            71:        load    (FP+1),pi_y
        !            72:        
        !            73:        movei   #_nodes,pi_nodebase
        !            74:        load    (pi_nodebase),pi_nodebase
        !            75:        
        !            76:        movei   #_numnodes,pi_node
        !            77:        load    (pi_node),pi_node
        !            78:        subq    #1,pi_node                              ; nodenum = numnodes-1
        !            79:        
        !            80: nodeloop:
        !            81:        btst    #15,pi_node
        !            82:        jr              EQ,notsubsec
        !            83:        nop
        !            84: 
        !            85:        bclr    #15,pi_node
        !            86:        moveq   #12,scratch
        !            87:        mult    scratch,pi_node
        !            88:        movei   #_subsectors,RETURNVALUE
        !            89:        load    (RETURNVALUE),RETURNVALUE
        !            90: 
        !            91:        jump    T,(RETURNPOINT)
        !            92:        add             pi_node,RETURNVALUE             ; delay slot
        !            93:        
        !            94: notsubsec:
        !            95:  
        !            96:        movei   #56,scratch
        !            97:        mult    scratch,pi_node
        !            98:        add             pi_nodebase,pi_node
        !            99: ;
        !           100: ; pi_side = pointonnodeside (x,y,node)
        !           101: ;
        !           102:        load    (pi_node),pi_nodex
        !           103:        load    (pi_node+1),pi_nodey
        !           104:        load    (pi_node+2),pi_nodedx
        !           105:        load    (pi_node+3),pi_nodedy
        !           106:        
        !           107:        move    pi_x,scratch
        !           108:        sub             pi_nodex,scratch
        !           109: 
        !           110:        move    pi_y,scratch2   
        !           111:        sub             pi_nodey,scratch2
        !           112:        
        !           113:        sharq   #16,scratch
        !           114:        sharq   #16,scratch2
        !           115:        sharq   #16,pi_nodedx
        !           116:        sharq   #16,pi_nodedy
        !           117:        
        !           118:        imult   pi_nodedy,scratch
        !           119:        imult   pi_nodedx,scratch2
        !           120:  
        !           121:        cmp             scratch2,scratch
        !           122:        jr              S_GT,backside
        !           123:        nop
        !           124: 
        !           125:        movei   #48,scratch
        !           126:        jr              T,gotside
        !           127:        nop
        !           128: backside:
        !           129:        movei   #52,scratch
        !           130: gotside:
        !           131: ; got a subsector, return &subsectors[nodenum&~NF_SUBSECTOR];
        !           132: 
        !           133: ;
        !           134: ; nodenum = node->children[side]
        !           135: ;
        !           136:        add             scratch,pi_node
        !           137:        movei   #nodeloop,scratch
        !           138:        jump    T,(scratch)
        !           139:        load    (pi_node),pi_node
        !           140: 
        !           141: 
        !           142: ;==============================================================================
        !           143: _PB_UnsetThingPosition::
        !           144: ;==============================================================================
        !           145: us_thing       .equr   r15
        !           146: us_blockx      .equr   r16
        !           147: us_blocky      .equr   r17
        !           148: us_next                .equr   r18
        !           149: us_prev                .equr   r19
        !           150: 
        !           151:        load    (FP),us_thing
        !           152:        
        !           153:        load    (us_thing+6),us_next    ; thing->snext
        !           154:        load    (us_thing+7),us_prev    ; thing->sprev
        !           155: 
        !           156:        or              us_next,us_next
        !           157:        jr              EQ,nosnext
        !           158:        nop
        !           159:        moveq   #7*4,scratch
        !           160:        add             us_next,scratch         ; thing->snext->sprev
        !           161:        load    (scratch),r31           ; DSP BUG
        !           162:        store   us_prev,(scratch)       
        !           163: nosnext:
        !           164: 
        !           165:        or              us_prev,us_prev
        !           166:        jr              EQ,nosprev
        !           167:        nop
        !           168:        moveq   #6*4,scratch
        !           169:        add             us_prev,scratch         ; thing->sprev->snext
        !           170:        load    (scratch),r31           ; DSP BUG
        !           171:        store   us_next,(scratch)       
        !           172:        jr              T,slinksdone
        !           173:        nop
        !           174:        
        !           175: nosprev:
        !           176: 
        !           177:        load    (us_thing+13),scratch   ; thing->subsector
        !           178:        load    (scratch),scratch               ; thing->subsector->sector
        !           179:        movei   #20*4,scratch2
        !           180:        add             scratch2,scratch                ; thing->subsector->sector->thinglist
        !           181:        load    (scratch),r31           ; DSP BUG
        !           182:        store   us_next,(scratch)
        !           183:        
        !           184: slinksdone:
        !           185: 
        !           186:        load    (us_thing+25),scratch   ; thing->flags
        !           187:        btst    #4,scratch                              ; MF_NOBLOCKMAP 
        !           188:        jump    NE,(RETURNPOINT)
        !           189:        nop
        !           190:        
        !           191: ;
        !           192: ; block links
        !           193: ;
        !           194:        load    (us_thing+11),us_next
        !           195:        load    (us_thing+12),us_prev
        !           196: 
        !           197:        or              us_next,us_next
        !           198:        jr              EQ,nobnext
        !           199:        nop
        !           200:        movei   #12*4,scratch
        !           201:        add             us_next,scratch         ; thing->bnext->bprev
        !           202:        load    (scratch),r31           ; DSP BUG
        !           203:        store   us_prev,(scratch)       
        !           204: nobnext:
        !           205: 
        !           206:        or              us_prev,us_prev
        !           207:        jr              EQ,nobprev
        !           208:        nop
        !           209:        movei   #11*4,scratch
        !           210:        add             us_prev,scratch
        !           211:        load    (scratch),r31           ; DSP BUG
        !           212:        store   us_next,(scratch)       
        !           213:        jump    T,(RETURNPOINT)
        !           214:        nop
        !           215:        
        !           216: nobprev:
        !           217: 
        !           218:        load    (us_thing+3),us_blockx
        !           219:        movei   #_bmaporgx,scratch
        !           220:        load    (scratch),scratch
        !           221:        sub             scratch,us_blockx
        !           222:        shrq    #23,us_blockx
        !           223:        
        !           224:        load    (us_thing+4),us_blocky
        !           225:        movei   #_bmaporgy,scratch
        !           226:        load    (scratch),scratch
        !           227:        sub             scratch,us_blocky
        !           228:        shrq    #23,us_blocky
        !           229: 
        !           230:        movei   #_bmapwidth,scratch
        !           231:        load    (scratch),scratch
        !           232:        mult    scratch,us_blocky
        !           233:        add             us_blockx,us_blocky
        !           234:        shlq    #2,us_blocky                    ; int width table
        !           235:        
        !           236:        movei   #_blocklinks,scratch
        !           237:        load    (scratch),scratch
        !           238:        
        !           239:        add             us_blocky,scratch
        !           240:        
        !           241:        load    (scratch),r31           ; DSP BUG
        !           242:        store   us_next,(scratch)
        !           243:        
        !           244:        jump    T,(RETURNPOINT)
        !           245:        nop
        !           246: 
        !           247: 
        !           248: 
        !           249: codestart:
        !           250: ; unfuckdsp output -- add loads before external dsp stores
        !           251: 
        !           252: ;====================
        !           253: _P_RunMobjBase2::
        !           254: ;2 dag registers  0 register variables
        !           255: ;localoffset:4  regoffset:4  argoffset:16
        !           256: ;====================
        !           257:  subq #16,FP
        !           258: 
        !           259:  movei #_activemobjs,r0
        !           260:  moveq #0,r1
        !           261:  load (r0),r30 ; FUCKING dsp!
        !           262:  or r30,r30 ; FUCKING dsp!
        !           263:  store r1,(r0)
        !           264:  movei #_basething,r0
        !           265:  movei #_mobjhead+4,r1
        !           266:  load (r1),r1
        !           267:  load (r0),r30 ; FUCKING dsp!
        !           268:  or r30,r30 ; FUCKING dsp!
        !           269:  store r1,(r0)
        !           270: 
        !           271:  movei #L75,r0
        !           272:  jump T,(r0)
        !           273:  nop
        !           274: 
        !           275: L72:
        !           276: 
        !           277:  movei #_basething,r0
        !           278:  load (r0),r0
        !           279:  movei #128,r1
        !           280:  add r1,r0
        !           281:  load (r0),r0
        !           282:  moveq #0,r1
        !           283:  cmp r0,r1
        !           284:  movei #L77,scratch
        !           285:  jump EQ,(scratch)
        !           286:  nop
        !           287: 
        !           288:  movei #L73,r0
        !           289:  jump T,(r0)
        !           290:  nop
        !           291: 
        !           292: L77:
        !           293: 
        !           294:  movei #_activemobjs,r0
        !           295:  load (r0),r1
        !           296:  addq #1,r1
        !           297:  load (r0),r30 ; FUCKING dsp!
        !           298:  or r30,r30 ; FUCKING dsp!
        !           299:  store r1,(r0)
        !           300:  movei #_basething,r0
        !           301:  load (r0),r0
        !           302:  addq #8,r0
        !           303:  moveq #0,r1
        !           304:  load (r0),r30 ; FUCKING dsp!
        !           305:  or r30,r30 ; FUCKING dsp!
        !           306:  store r1,(r0)
        !           307: 
        !           308:  movei #_basething,r0
        !           309:  load (r0),r0
        !           310:  store r0,(FP) ; arg[]
        !           311:  movei #_P_MobjThinker,r0
        !           312:  store r28,(FP+1) ; push ;(RETURNPOINT)
        !           313:  movei #L79,RETURNPOINT
        !           314:  jump T,(r0)
        !           315:  nop ; delay slot
        !           316: L79:
        !           317:  load (FP+1), RETURNPOINT ; pop
        !           318: 
        !           319: L73:
        !           320: 
        !           321:  movei #_basething,r0
        !           322:  load (r0),r1
        !           323:  addq #4,r1
        !           324:  load (r1),r1
        !           325:  load (r0),r30 ; FUCKING dsp!
        !           326:  or r30,r30 ; FUCKING dsp!
        !           327:  store r1,(r0)
        !           328: 
        !           329: L75:
        !           330: 
        !           331:  movei #_basething,r0
        !           332:  load (r0),r0
        !           333:  movei #_mobjhead,r1
        !           334:  cmp r0,r1
        !           335:  movei #L72,scratch
        !           336:  jump NE,(scratch)
        !           337:  nop
        !           338: 
        !           339: 
        !           340: L71:
        !           341:  jump T,(RETURNPOINT)
        !           342:  addq #16,FP ; delay slot
        !           343: 
        !           344: ;====================
        !           345: _P_XYMovement::
        !           346: ;4 dag registers  4 register variables
        !           347: ;localoffset:8  regoffset:8  argoffset:44
        !           348: ;====================
        !           349:  movei #44,scratch
        !           350:  sub scratch,FP
        !           351: 
        !           352:  load (FP+11),r0 ; local mo
        !           353:  movei #72,r1
        !           354:  move r0,r2
        !           355:  add r1,r2
        !           356:  load (r2),r1
        !           357:  movei #-8,r2
        !           358:  and r2,r1
        !           359:  move r1,r15 ;(xuse)
        !           360:  move r1,r17 ;(xleft)
        !           361:  movei #76,r1
        !           362:  add r1,r0
        !           363:  load (r0),r0
        !           364:  and r2,r0
        !           365:  move r0,r16 ;(yuse)
        !           366:  move r0,r18 ;(yleft)
        !           367: 
        !           368:  movei #L82,r0
        !           369:  jump T,(r0)
        !           370:  nop
        !           371: 
        !           372: L81:
        !           373: 
        !           374:  moveq #1,r0
        !           375:  move r15,r1 ;(xuse)
        !           376:  sha r0,r1
        !           377:  move r1,r15 ;(xuse)
        !           378:  move r16,r1 ;(yuse)
        !           379:  sha r0,r1
        !           380:  move r1,r16 ;(yuse)
        !           381: 
        !           382: L82:
        !           383: 
        !           384:  movei #1048576,r0
        !           385:  cmp r15,r0 ;(xuse)
        !           386:  movei #L81,scratch
        !           387:  jump MI,(scratch)
        !           388:  nop
        !           389:  movei #-1048576,r1
        !           390:  cmp r15,r1 ;(xuse)
        !           391:  movei #L81,scratch
        !           392:  jump S_LT,(scratch)
        !           393:  nop
        !           394:  cmp r16,r0 ;(yuse)
        !           395:  movei #L81,scratch
        !           396:  jump MI,(scratch)
        !           397:  nop
        !           398:  cmp r16,r1 ;(yuse)
        !           399:  movei #L81,scratch
        !           400:  jump S_LT,(scratch)
        !           401:  nop
        !           402: 
        !           403:  movei #L85,r0
        !           404:  jump T,(r0)
        !           405:  nop
        !           406: 
        !           407: L84:
        !           408: 
        !           409:  move r17,r0 ;(xleft)
        !           410:  sub r15,r0 ;(xuse)
        !           411:  move r0,r17 ;(xleft)
        !           412:  move r18,r0 ;(yleft)
        !           413:  sub r16,r0 ;(yuse)
        !           414:  move r0,r18 ;(yleft)
        !           415:  load (FP+11),r0 ; local mo
        !           416:  move r0,r1
        !           417:  addq #12,r1
        !           418:  load (r1),r1
        !           419:  add r15,r1 ;(xuse)
        !           420:  store r1,(FP) ; arg[]
        !           421:  addq #16,r0
        !           422:  load (r0),r0
        !           423:  add r16,r0 ;(yuse)
        !           424:  or r0,scratch ; scoreboard bug
        !           425:  store r0,(FP+1) ; arg[]
        !           426:  movei #_PB_TryMove,r0
        !           427:  store r28,(FP+2) ; push ;(RETURNPOINT)
        !           428:  store r18,(FP+3) ; push ;(yleft)
        !           429:  store r17,(FP+4) ; push ;(xleft)
        !           430:  store r16,(FP+5) ; push ;(yuse)
        !           431:  movei #L105,RETURNPOINT
        !           432:  jump T,(r0)
        !           433:  store r15,(FP+6) ; delay slot push ;(xuse)
        !           434: L105:
        !           435:  load (FP+3),r18 ; pop ;(yleft)
        !           436:  load (FP+4),r17 ; pop ;(xleft)
        !           437:  load (FP+5),r16 ; pop ;(yuse)
        !           438:  load (FP+6),r15 ; pop ;(xuse)
        !           439:  load (FP+2), RETURNPOINT ; pop
        !           440:  moveq #0,r0
        !           441:  cmp r29,r0 ;(RETURNVALUE)
        !           442:  movei #L87,scratch
        !           443:  jump NE,(scratch)
        !           444:  nop
        !           445: 
        !           446:  load (FP+11),r0 ; local mo
        !           447:  movei #100,r1
        !           448:  add r1,r0
        !           449:  load (r0),r0
        !           450:  movei #16777216,r1
        !           451:  and r1,r0
        !           452:  moveq #0,r1
        !           453:  cmp r0,r1
        !           454:  movei #L89,scratch
        !           455:  jump EQ,(scratch)
        !           456:  nop
        !           457: 
        !           458:  load (FP+11),r0 ; local mo
        !           459:  movei #132,r1
        !           460:  add r1,r0
        !           461:  movei #_hitthing,r1
        !           462:  load (r1),r1
        !           463:  load (r0),r30 ; FUCKING dsp!
        !           464:  or r30,r30 ; FUCKING dsp!
        !           465:  store r1,(r0)
        !           466: 
        !           467:  load (FP+11),r0 ; local mo
        !           468:  addq #8,r0
        !           469:  movei #_L_SkullBash,r1
        !           470:  load (r0),r30 ; FUCKING dsp!
        !           471:  or r30,r30 ; FUCKING dsp!
        !           472:  store r1,(r0)
        !           473: 
        !           474: L89:
        !           475: 
        !           476:  load (FP+11),r0 ; local mo
        !           477:  movei #100,r1
        !           478:  add r1,r0
        !           479:  load (r0),r0
        !           480:  movei #65536,r1
        !           481:  and r1,r0
        !           482:  moveq #0,r1
        !           483:  cmp r0,r1
        !           484:  movei #L91,scratch
        !           485:  jump EQ,(scratch)
        !           486:  nop
        !           487: 
        !           488:  movei #_ceilingline,r0
        !           489:  load (r0),r0
        !           490:  move r0,r1
        !           491:  moveq #0,r2
        !           492:  cmp r1,r2
        !           493:  movei #L93,scratch
        !           494:  jump EQ,(scratch)
        !           495:  nop
        !           496:  movei #60,r1
        !           497:  add r1,r0
        !           498:  load (r0),r0
        !           499:  move r0,r1
        !           500:  cmp r1,r2
        !           501:  movei #L93,scratch
        !           502:  jump EQ,(scratch)
        !           503:  nop
        !           504:  addq #12,r0
        !           505:  load (r0),r0
        !           506:  movei #-1,r1
        !           507:  cmp r0,r1
        !           508:  movei #L93,scratch
        !           509:  jump NE,(scratch)
        !           510:  nop
        !           511: 
        !           512:  load (FP+11),r0 ; local mo
        !           513:  addq #8,r0
        !           514:  movei #_P_RemoveMobj,r1
        !           515:  load (r0),r30 ; FUCKING dsp!
        !           516:  or r30,r30 ; FUCKING dsp!
        !           517:  store r1,(r0)
        !           518: 
        !           519: 
        !           520:  movei #L80,r0
        !           521:  jump T,(r0)
        !           522:  nop
        !           523: 
        !           524: L93:
        !           525: 
        !           526:  load (FP+11),r0 ; local mo
        !           527:  movei #132,r1
        !           528:  add r1,r0
        !           529:  movei #_hitthing,r1
        !           530:  load (r1),r1
        !           531:  load (r0),r30 ; FUCKING dsp!
        !           532:  or r30,r30 ; FUCKING dsp!
        !           533:  store r1,(r0)
        !           534: 
        !           535:  load (FP+11),r0 ; local mo
        !           536:  addq #8,r0
        !           537:  movei #_L_MissileHit,r1
        !           538:  load (r0),r30 ; FUCKING dsp!
        !           539:  or r30,r30 ; FUCKING dsp!
        !           540:  store r1,(r0)
        !           541: 
        !           542: 
        !           543:  movei #L80,r0
        !           544:  jump T,(r0)
        !           545:  nop
        !           546: 
        !           547: L91:
        !           548: 
        !           549:  load (FP+11),r0 ; local mo
        !           550:  movei #76,r1
        !           551:  move r0,r2
        !           552:  add r1,r2
        !           553:  moveq #0,r1
        !           554:  load (r2),r30 ; FUCKING dsp!
        !           555:  or r30,r30 ; FUCKING dsp!
        !           556:  store r1,(r2)
        !           557:  movei #72,r2
        !           558:  add r2,r0
        !           559:  load (r0),r30 ; FUCKING dsp!
        !           560:  or r30,r30 ; FUCKING dsp!
        !           561:  store r1,(r0)
        !           562: 
        !           563: 
        !           564:  movei #L80,r0
        !           565:  jump T,(r0)
        !           566:  nop
        !           567: 
        !           568: L87:
        !           569: 
        !           570: L85:
        !           571: 
        !           572:  moveq #0,r0
        !           573:  cmp r17,r0 ;(xleft)
        !           574:  movei #L84,scratch
        !           575:  jump NE,(scratch)
        !           576:  nop
        !           577:  cmp r18,r0 ;(yleft)
        !           578:  movei #L84,scratch
        !           579:  jump NE,(scratch)
        !           580:  nop
        !           581: 
        !           582:  load (FP+11),r0 ; local mo
        !           583:  movei #100,r1
        !           584:  add r1,r0
        !           585:  load (r0),r0
        !           586:  movei #16842752,r1
        !           587:  and r1,r0
        !           588:  moveq #0,r1
        !           589:  cmp r0,r1
        !           590:  movei #L95,scratch
        !           591:  jump EQ,(scratch)
        !           592:  nop
        !           593: 
        !           594: 
        !           595:  movei #L80,r0
        !           596:  jump T,(r0)
        !           597:  nop
        !           598: 
        !           599: L95:
        !           600: 
        !           601:  load (FP+11),r0 ; local mo
        !           602:  move r0,r1
        !           603:  addq #20,r1
        !           604:  load (r1),r1
        !           605:  movei #56,r2
        !           606:  add r2,r0
        !           607:  load (r0),r0
        !           608:  cmp r1,r0
        !           609:  movei #L97,scratch
        !           610:  jump PL,(scratch)
        !           611:  nop
        !           612: 
        !           613: 
        !           614:  movei #L80,r0
        !           615:  jump T,(r0)
        !           616:  nop
        !           617: 
        !           618: L97:
        !           619: 
        !           620:  load (FP+11),r0 ; local mo
        !           621:  movei #100,r1
        !           622:  add r1,r0
        !           623:  load (r0),r0
        !           624:  movei #1048576,r1
        !           625:  and r1,r0
        !           626:  moveq #0,r1
        !           627:  cmp r0,r1
        !           628:  movei #L99,scratch
        !           629:  jump EQ,(scratch)
        !           630:  nop
        !           631: 
        !           632:  load (FP+11),r0 ; local mo
        !           633:  movei #56,r1
        !           634:  move r0,r2
        !           635:  add r1,r2
        !           636:  load (r2),r1
        !           637:  movei #52,r2
        !           638:  add r2,r0
        !           639:  load (r0),r0
        !           640:  load (r0),r0
        !           641:  load (r0),r0
        !           642:  cmp r1,r0
        !           643:  movei #L101,scratch
        !           644:  jump EQ,(scratch)
        !           645:  nop
        !           646: 
        !           647: 
        !           648:  movei #L80,r0
        !           649:  jump T,(r0)
        !           650:  nop
        !           651: 
        !           652: L101:
        !           653: 
        !           654: L99:
        !           655: 
        !           656:  load (FP+11),r0 ; local mo
        !           657:  movei #72,r1
        !           658:  move r0,r2
        !           659:  add r1,r2
        !           660:  load (r2),r1
        !           661:  movei #-4096,r2
        !           662:  cmp r1,r2
        !           663:  movei #L103,scratch
        !           664:  jump PL,(scratch)
        !           665:  nop
        !           666:  movei #4096,r3
        !           667:  cmp r1,r3
        !           668:  movei #L103,scratch
        !           669:  jump EQ,(scratch)
        !           670:  nop
        !           671:  jump MI,(scratch)
        !           672:  nop
        !           673:  movei #76,r1
        !           674:  add r1,r0
        !           675:  load (r0),r0
        !           676:  cmp r0,r2
        !           677:  movei #L103,scratch
        !           678:  jump PL,(scratch)
        !           679:  nop
        !           680:  cmp r0,r3
        !           681:  movei #L103,scratch
        !           682:  jump EQ,(scratch)
        !           683:  nop
        !           684:  jump MI,(scratch)
        !           685:  nop
        !           686: 
        !           687:  load (FP+11),r0 ; local mo
        !           688:  movei #72,r1
        !           689:  add r1,r0
        !           690:  moveq #0,r1
        !           691:  load (r0),r30 ; FUCKING dsp!
        !           692:  or r30,r30 ; FUCKING dsp!
        !           693:  store r1,(r0)
        !           694: 
        !           695:  load (FP+11),r0 ; local mo
        !           696:  movei #76,r1
        !           697:  add r1,r0
        !           698:  moveq #0,r1
        !           699:  load (r0),r30 ; FUCKING dsp!
        !           700:  or r30,r30 ; FUCKING dsp!
        !           701:  store r1,(r0)
        !           702: 
        !           703:  movei #L104,r0
        !           704:  jump T,(r0)
        !           705:  nop
        !           706: 
        !           707: L103:
        !           708: 
        !           709:  load (FP+11),r0 ; local mo
        !           710:  movei #72,r1
        !           711:  add r1,r0
        !           712:  movei #210,r1
        !           713:  load (r0),r2
        !           714:  sharq #8,r2
        !           715:  move r1,MATH_A
        !           716:  movei #L106,MATH_RTS
        !           717:  movei #GPU_IMUL,scratch
        !           718:  jump T,(scratch)
        !           719:  move r2,MATH_B ; delay slot
        !           720: L106:
        !           721:  move MATH_C,r1
        !           722:  load (r0),r30 ; FUCKING dsp!
        !           723:  or r30,r30 ; FUCKING dsp!
        !           724:  store r1,(r0)
        !           725: 
        !           726:  load (FP+11),r0 ; local mo
        !           727:  movei #76,r1
        !           728:  add r1,r0
        !           729:  movei #210,r1
        !           730:  load (r0),r2
        !           731:  sharq #8,r2
        !           732:  move r1,MATH_A
        !           733:  movei #L107,MATH_RTS
        !           734:  movei #GPU_IMUL,scratch
        !           735:  jump T,(scratch)
        !           736:  move r2,MATH_B ; delay slot
        !           737: L107:
        !           738:  move MATH_C,r1
        !           739:  load (r0),r30 ; FUCKING dsp!
        !           740:  or r30,r30 ; FUCKING dsp!
        !           741:  store r1,(r0)
        !           742: 
        !           743: L104:
        !           744: 
        !           745: 
        !           746: L80:
        !           747:  movei #44,scratch
        !           748:  jump T,(RETURNPOINT)
        !           749:  add scratch,FP ; delay slot
        !           750: 
        !           751: ;====================
        !           752: _P_FloatChange::
        !           753: ;5 dag registers  3 register variables
        !           754: ;localoffset:0  regoffset:4  argoffset:4
        !           755: ;====================
        !           756:  subq #4,FP
        !           757: 
        !           758:  load (FP+1),r0 ; local mo
        !           759:  movei #116,r1
        !           760:  move r0,r2
        !           761:  add r1,r2
        !           762:  load (r2),r1
        !           763:  moveq #12,r2
        !           764:  add r2,r1
        !           765:  load (r1),r1
        !           766:  add r2,r0
        !           767:  load (r0),r0
        !           768:  sub r0,r1
        !           769:  move r1,r15 ;(dx)
        !           770:  moveq #0,r0
        !           771:  cmp r15,r0 ;(dx)
        !           772:  movei #L109,scratch
        !           773:  jump EQ,(scratch)
        !           774:  nop
        !           775:  jump MI,(scratch)
        !           776:  nop
        !           777: 
        !           778:  move r15,r0 ;(dx)
        !           779:  neg r0
        !           780:  move r0,r15 ;(dx)
        !           781: 
        !           782: L109:
        !           783: 
        !           784:  load (FP+1),r0 ; local mo
        !           785:  movei #116,r1
        !           786:  move r0,r2
        !           787:  add r1,r2
        !           788:  load (r2),r1
        !           789:  moveq #16,r2
        !           790:  add r2,r1
        !           791:  load (r1),r1
        !           792:  add r2,r0
        !           793:  load (r0),r0
        !           794:  sub r0,r1
        !           795:  move r1,r16 ;(dy)
        !           796:  moveq #0,r0
        !           797:  cmp r16,r0 ;(dy)
        !           798:  movei #L111,scratch
        !           799:  jump EQ,(scratch)
        !           800:  nop
        !           801:  jump MI,(scratch)
        !           802:  nop
        !           803: 
        !           804:  move r16,r0 ;(dy)
        !           805:  neg r0
        !           806:  move r0,r16 ;(dy)
        !           807: 
        !           808: L111:
        !           809: 
        !           810:  cmp r15,r16 ;(dx)(dy)
        !           811:  movei #L113,scratch
        !           812:  jump EQ,(scratch)
        !           813:  nop
        !           814:  jump MI,(scratch)
        !           815:  nop
        !           816: 
        !           817:  move FP,r0 ; &dist
        !           818:  move r15,r1 ;(dx)
        !           819:  add r16,r1 ;(dy)
        !           820:  move r15,r2 ;(dx)
        !           821:  sharq #1,r2
        !           822:  sub r2,r1
        !           823:  load (r0),r30 ; FUCKING dsp!
        !           824:  or r30,r30 ; FUCKING dsp!
        !           825:  store r1,(r0)
        !           826: 
        !           827:  movei #L114,r0
        !           828:  jump T,(r0)
        !           829:  nop
        !           830: 
        !           831: L113:
        !           832: 
        !           833:  move FP,r0 ; &dist
        !           834:  move r15,r1 ;(dx)
        !           835:  add r16,r1 ;(dy)
        !           836:  move r16,r2 ;(dy)
        !           837:  sharq #1,r2
        !           838:  sub r2,r1
        !           839:  load (r0),r30 ; FUCKING dsp!
        !           840:  or r30,r30 ; FUCKING dsp!
        !           841:  store r1,(r0)
        !           842: 
        !           843: L114:
        !           844: 
        !           845:  load (FP+1),r0 ; local mo
        !           846:  movei #116,r1
        !           847:  move r0,r2
        !           848:  add r1,r2
        !           849:  load (r2),r1
        !           850:  moveq #20,r2
        !           851:  add r2,r1
        !           852:  load (r1),r1
        !           853:  movei #68,r3
        !           854:  move r0,r4
        !           855:  add r3,r4
        !           856:  load (r4),r3
        !           857:  sharq #1,r3
        !           858:  add r3,r1
        !           859:  add r2,r0
        !           860:  load (r0),r0
        !           861:  sub r0,r1
        !           862:  move r1,r17 ;(delta)
        !           863:  moveq #0,r0
        !           864:  cmp r17,r0 ;(delta)
        !           865:  movei #L115,scratch
        !           866:  jump EQ,(scratch)
        !           867:  nop
        !           868:  jump MI,(scratch)
        !           869:  nop
        !           870:  load (FP),r0 ; local dist
        !           871:  moveq #3,r1
        !           872:  move r1,MATH_A
        !           873:  movei #L119,MATH_RTS
        !           874:  movei #GPU_IMUL,scratch
        !           875:  jump T,(scratch)
        !           876:  move r17,MATH_B ; delay slot ;(delta)
        !           877: L119:
        !           878:  move MATH_C,r1
        !           879:  neg r1
        !           880:  cmp r0,r1
        !           881:  movei #L115,scratch
        !           882:  jump EQ,(scratch)
        !           883:  nop
        !           884:  jump MI,(scratch)
        !           885:  nop
        !           886: 
        !           887:  load (FP+1),r0 ; local mo
        !           888:  addq #20,r0
        !           889:  load (r0),r1
        !           890:  movei #524288,r2
        !           891:  sub r2,r1
        !           892:  load (r0),r30 ; FUCKING dsp!
        !           893:  or r30,r30 ; FUCKING dsp!
        !           894:  store r1,(r0)
        !           895: 
        !           896:  movei #L116,r0
        !           897:  jump T,(r0)
        !           898:  nop
        !           899: 
        !           900: L115:
        !           901: 
        !           902:  moveq #0,r0
        !           903:  cmp r17,r0 ;(delta)
        !           904:  movei #L117,scratch
        !           905:  jump PL,(scratch)
        !           906:  nop
        !           907:  load (FP),r0 ; local dist
        !           908:  moveq #3,r1
        !           909:  move r1,MATH_A
        !           910:  movei #L120,MATH_RTS
        !           911:  movei #GPU_IMUL,scratch
        !           912:  jump T,(scratch)
        !           913:  move r17,MATH_B ; delay slot ;(delta)
        !           914: L120:
        !           915:  move MATH_C,r1
        !           916:  cmp r0,r1
        !           917:  movei #L117,scratch
        !           918:  jump EQ,(scratch)
        !           919:  nop
        !           920:  jump MI,(scratch)
        !           921:  nop
        !           922: 
        !           923:  load (FP+1),r0 ; local mo
        !           924:  addq #20,r0
        !           925:  load (r0),r1
        !           926:  movei #524288,r2
        !           927:  add r2,r1
        !           928:  load (r0),r30 ; FUCKING dsp!
        !           929:  or r30,r30 ; FUCKING dsp!
        !           930:  store r1,(r0)
        !           931: 
        !           932: L117:
        !           933: 
        !           934: L116:
        !           935: 
        !           936: 
        !           937: L108:
        !           938:  jump T,(RETURNPOINT)
        !           939:  addq #4,FP ; delay slot
        !           940: 
        !           941: ;====================
        !           942: _P_ZMovement::
        !           943: ;4 dag registers  0 register variables
        !           944: ;localoffset:4  regoffset:4  argoffset:24
        !           945: ;====================
        !           946:  subq #24,FP
        !           947: 
        !           948:  load (FP+6),r0 ; local mo
        !           949:  move r0,r1
        !           950:  addq #20,r1
        !           951:  load (r1),r2
        !           952:  movei #80,r3
        !           953:  add r3,r0
        !           954:  load (r0),r0
        !           955:  add r0,r2
        !           956:  load (r1),r30 ; FUCKING dsp!
        !           957:  or r30,r30 ; FUCKING dsp!
        !           958:  store r2,(r1)
        !           959: 
        !           960:  load (FP+6),r0 ; local mo
        !           961:  movei #100,r1
        !           962:  move r0,r2
        !           963:  add r1,r2
        !           964:  load (r2),r1
        !           965:  movei #16384,r2
        !           966:  and r2,r1
        !           967:  moveq #0,r2
        !           968:  cmp r1,r2
        !           969:  movei #L122,scratch
        !           970:  jump EQ,(scratch)
        !           971:  nop
        !           972:  movei #116,r1
        !           973:  add r1,r0
        !           974:  load (r0),r0
        !           975:  moveq #0,r1
        !           976:  cmp r0,r1
        !           977:  movei #L122,scratch
        !           978:  jump EQ,(scratch)
        !           979:  nop
        !           980: 
        !           981:  load (FP+6),r0 ; local mo
        !           982:  store r0,(FP) ; arg[]
        !           983:  movei #_P_FloatChange,r0
        !           984:  store r28,(FP+1) ; push ;(RETURNPOINT)
        !           985:  movei #L140,RETURNPOINT
        !           986:  jump T,(r0)
        !           987:  nop ; delay slot
        !           988: L140:
        !           989:  load (FP+1), RETURNPOINT ; pop
        !           990: 
        !           991: L122:
        !           992: 
        !           993:  load (FP+6),r0 ; local mo
        !           994:  move r0,r1
        !           995:  addq #20,r1
        !           996:  load (r1),r1
        !           997:  movei #56,r2
        !           998:  add r2,r0
        !           999:  load (r0),r0
        !          1000:  cmp r1,r0
        !          1001:  movei #L124,scratch
        !          1002:  jump MI,(scratch)
        !          1003:  nop
        !          1004: 
        !          1005:  load (FP+6),r0 ; local mo
        !          1006:  movei #80,r1
        !          1007:  add r1,r0
        !          1008:  load (r0),r0
        !          1009:  moveq #0,r1
        !          1010:  cmp r0,r1
        !          1011:  movei #L126,scratch
        !          1012:  jump EQ,(scratch)
        !          1013:  nop
        !          1014:  jump MI,(scratch)
        !          1015:  nop
        !          1016: 
        !          1017:  load (FP+6),r0 ; local mo
        !          1018:  movei #80,r1
        !          1019:  add r1,r0
        !          1020:  moveq #0,r1
        !          1021:  load (r0),r30 ; FUCKING dsp!
        !          1022:  or r30,r30 ; FUCKING dsp!
        !          1023:  store r1,(r0)
        !          1024: 
        !          1025: L126:
        !          1026: 
        !          1027:  load (FP+6),r0 ; local mo
        !          1028:  move r0,r1
        !          1029:  addq #20,r1
        !          1030:  movei #56,r2
        !          1031:  add r2,r0
        !          1032:  load (r0),r0
        !          1033:  load (r1),r30 ; FUCKING dsp!
        !          1034:  or r30,r30 ; FUCKING dsp!
        !          1035:  store r0,(r1)
        !          1036: 
        !          1037:  load (FP+6),r0 ; local mo
        !          1038:  movei #100,r1
        !          1039:  add r1,r0
        !          1040:  load (r0),r0
        !          1041:  movei #65536,r1
        !          1042:  and r1,r0
        !          1043:  moveq #0,r1
        !          1044:  cmp r0,r1
        !          1045:  movei #L125,scratch
        !          1046:  jump EQ,(scratch)
        !          1047:  nop
        !          1048: 
        !          1049:  load (FP+6),r0 ; local mo
        !          1050:  addq #8,r0
        !          1051:  movei #_P_ExplodeMissile,r1
        !          1052:  load (r0),r30 ; FUCKING dsp!
        !          1053:  or r30,r30 ; FUCKING dsp!
        !          1054:  store r1,(r0)
        !          1055: 
        !          1056: 
        !          1057:  movei #L121,r0
        !          1058:  jump T,(r0)
        !          1059:  nop
        !          1060: 
        !          1061: L124:
        !          1062: 
        !          1063:  load (FP+6),r0 ; local mo
        !          1064:  movei #100,r1
        !          1065:  add r1,r0
        !          1066:  load (r0),r0
        !          1067:  movei #512,r1
        !          1068:  and r1,r0
        !          1069:  moveq #0,r1
        !          1070:  cmp r0,r1
        !          1071:  movei #L130,scratch
        !          1072:  jump NE,(scratch)
        !          1073:  nop
        !          1074: 
        !          1075:  load (FP+6),r0 ; local mo
        !          1076:  movei #80,r1
        !          1077:  add r1,r0
        !          1078:  load (r0),r0
        !          1079:  moveq #0,r1
        !          1080:  cmp r0,r1
        !          1081:  movei #L132,scratch
        !          1082:  jump NE,(scratch)
        !          1083:  nop
        !          1084: 
        !          1085:  load (FP+6),r0 ; local mo
        !          1086:  movei #80,r1
        !          1087:  add r1,r0
        !          1088:  movei #-524288,r1
        !          1089:  load (r0),r30 ; FUCKING dsp!
        !          1090:  or r30,r30 ; FUCKING dsp!
        !          1091:  store r1,(r0)
        !          1092: 
        !          1093:  movei #L133,r0
        !          1094:  jump T,(r0)
        !          1095:  nop
        !          1096: 
        !          1097: L132:
        !          1098: 
        !          1099:  load (FP+6),r0 ; local mo
        !          1100:  movei #80,r1
        !          1101:  add r1,r0
        !          1102:  load (r0),r1
        !          1103:  movei #262144,r2
        !          1104:  sub r2,r1
        !          1105:  load (r0),r30 ; FUCKING dsp!
        !          1106:  or r30,r30 ; FUCKING dsp!
        !          1107:  store r1,(r0)
        !          1108: 
        !          1109: L133:
        !          1110: 
        !          1111: L130:
        !          1112: 
        !          1113: L125:
        !          1114: 
        !          1115:  load (FP+6),r0 ; local mo
        !          1116:  move r0,r1
        !          1117:  addq #20,r1
        !          1118:  load (r1),r1
        !          1119:  movei #68,r2
        !          1120:  move r0,r3
        !          1121:  add r2,r3
        !          1122:  load (r3),r2
        !          1123:  add r2,r1
        !          1124:  movei #60,r2
        !          1125:  add r2,r0
        !          1126:  load (r0),r0
        !          1127:  cmp r1,r0
        !          1128:  movei #L134,scratch
        !          1129:  jump PL,(scratch)
        !          1130:  nop
        !          1131: 
        !          1132:  load (FP+6),r0 ; local mo
        !          1133:  movei #80,r1
        !          1134:  add r1,r0
        !          1135:  load (r0),r0
        !          1136:  moveq #0,r1
        !          1137:  cmp r0,r1
        !          1138:  movei #L136,scratch
        !          1139:  jump PL,(scratch)
        !          1140:  nop
        !          1141: 
        !          1142:  load (FP+6),r0 ; local mo
        !          1143:  movei #80,r1
        !          1144:  add r1,r0
        !          1145:  moveq #0,r1
        !          1146:  load (r0),r30 ; FUCKING dsp!
        !          1147:  or r30,r30 ; FUCKING dsp!
        !          1148:  store r1,(r0)
        !          1149: 
        !          1150: L136:
        !          1151: 
        !          1152:  load (FP+6),r0 ; local mo
        !          1153:  move r0,r1
        !          1154:  addq #20,r1
        !          1155:  movei #60,r2
        !          1156:  move r0,r3
        !          1157:  add r2,r3
        !          1158:  load (r3),r2
        !          1159:  movei #68,r3
        !          1160:  add r3,r0
        !          1161:  load (r0),r0
        !          1162:  sub r0,r2
        !          1163:  load (r1),r30 ; FUCKING dsp!
        !          1164:  or r30,r30 ; FUCKING dsp!
        !          1165:  store r2,(r1)
        !          1166: 
        !          1167:  load (FP+6),r0 ; local mo
        !          1168:  movei #100,r1
        !          1169:  add r1,r0
        !          1170:  load (r0),r0
        !          1171:  movei #65536,r1
        !          1172:  and r1,r0
        !          1173:  moveq #0,r1
        !          1174:  cmp r0,r1
        !          1175:  movei #L138,scratch
        !          1176:  jump EQ,(scratch)
        !          1177:  nop
        !          1178: 
        !          1179:  load (FP+6),r0 ; local mo
        !          1180:  addq #8,r0
        !          1181:  movei #_P_ExplodeMissile,r1
        !          1182:  load (r0),r30 ; FUCKING dsp!
        !          1183:  or r30,r30 ; FUCKING dsp!
        !          1184:  store r1,(r0)
        !          1185: 
        !          1186: 
        !          1187:  movei #L121,r0
        !          1188:  jump T,(r0)
        !          1189:  nop
        !          1190: 
        !          1191: L138:
        !          1192: 
        !          1193: L134:
        !          1194: 
        !          1195: 
        !          1196: L121:
        !          1197:  jump T,(RETURNPOINT)
        !          1198:  addq #24,FP ; delay slot
        !          1199: 
        !          1200: ;====================
        !          1201: _P_MobjThinker::
        !          1202: ;4 dag registers  2 register variables
        !          1203: ;localoffset:4  regoffset:4  argoffset:32
        !          1204: ;====================
        !          1205:  subq #32,FP
        !          1206: 
        !          1207:  load (FP+8),r0 ; local mobj
        !          1208:  movei #72,r1
        !          1209:  move r0,r2
        !          1210:  add r1,r2
        !          1211:  load (r2),r1
        !          1212:  moveq #0,r2
        !          1213:  cmp r1,r2
        !          1214:  movei #L144,scratch
        !          1215:  jump NE,(scratch)
        !          1216:  nop
        !          1217:  movei #76,r1
        !          1218:  add r1,r0
        !          1219:  load (r0),r0
        !          1220:  cmp r0,r2
        !          1221:  movei #L142,scratch
        !          1222:  jump EQ,(scratch)
        !          1223:  nop
        !          1224: L144:
        !          1225: 
        !          1226:  load (FP+8),r0 ; local mobj
        !          1227:  store r0,(FP) ; arg[]
        !          1228:  movei #_P_XYMovement,r0
        !          1229:  store r28,(FP+1) ; push ;(RETURNPOINT)
        !          1230:  store r16,(FP+2) ; push ;(state)
        !          1231:  movei #L158,RETURNPOINT
        !          1232:  jump T,(r0)
        !          1233:  store r15,(FP+3) ; delay slot push ;(st)
        !          1234: L158:
        !          1235:  load (FP+2),r16 ; pop ;(state)
        !          1236:  load (FP+3),r15 ; pop ;(st)
        !          1237:  load (FP+1), RETURNPOINT ; pop
        !          1238: 
        !          1239:  load (FP+8),r0 ; local mobj
        !          1240:  addq #8,r0
        !          1241:  load (r0),r0
        !          1242:  moveq #0,r1
        !          1243:  cmp r0,r1
        !          1244:  movei #L145,scratch
        !          1245:  jump EQ,(scratch)
        !          1246:  nop
        !          1247: 
        !          1248: 
        !          1249:  movei #L141,r0
        !          1250:  jump T,(r0)
        !          1251:  nop
        !          1252: 
        !          1253: L145:
        !          1254: 
        !          1255: L142:
        !          1256: 
        !          1257:  load (FP+8),r0 ; local mobj
        !          1258:  move r0,r1
        !          1259:  addq #20,r1
        !          1260:  load (r1),r1
        !          1261:  movei #56,r2
        !          1262:  move r0,r3
        !          1263:  add r2,r3
        !          1264:  load (r3),r2
        !          1265:  cmp r1,r2
        !          1266:  movei #L149,scratch
        !          1267:  jump NE,(scratch)
        !          1268:  nop
        !          1269:  movei #80,r1
        !          1270:  add r1,r0
        !          1271:  load (r0),r0
        !          1272:  moveq #0,r1
        !          1273:  cmp r0,r1
        !          1274:  movei #L147,scratch
        !          1275:  jump EQ,(scratch)
        !          1276:  nop
        !          1277: L149:
        !          1278: 
        !          1279:  load (FP+8),r0 ; local mobj
        !          1280:  store r0,(FP) ; arg[]
        !          1281:  movei #_P_ZMovement,r0
        !          1282:  store r28,(FP+1) ; push ;(RETURNPOINT)
        !          1283:  store r16,(FP+2) ; push ;(state)
        !          1284:  movei #L159,RETURNPOINT
        !          1285:  jump T,(r0)
        !          1286:  store r15,(FP+3) ; delay slot push ;(st)
        !          1287: L159:
        !          1288:  load (FP+2),r16 ; pop ;(state)
        !          1289:  load (FP+3),r15 ; pop ;(st)
        !          1290:  load (FP+1), RETURNPOINT ; pop
        !          1291: 
        !          1292:  load (FP+8),r0 ; local mobj
        !          1293:  addq #8,r0
        !          1294:  load (r0),r0
        !          1295:  moveq #0,r1
        !          1296:  cmp r0,r1
        !          1297:  movei #L150,scratch
        !          1298:  jump EQ,(scratch)
        !          1299:  nop
        !          1300: 
        !          1301: 
        !          1302:  movei #L141,r0
        !          1303:  jump T,(r0)
        !          1304:  nop
        !          1305: 
        !          1306: L150:
        !          1307: 
        !          1308: L147:
        !          1309: 
        !          1310:  load (FP+8),r0 ; local mobj
        !          1311:  movei #92,r1
        !          1312:  add r1,r0
        !          1313:  load (r0),r0
        !          1314:  movei #-1,r1
        !          1315:  cmp r0,r1
        !          1316:  movei #L152,scratch
        !          1317:  jump NE,(scratch)
        !          1318:  nop
        !          1319: 
        !          1320: 
        !          1321:  movei #L141,r0
        !          1322:  jump T,(r0)
        !          1323:  nop
        !          1324: 
        !          1325: L152:
        !          1326: 
        !          1327:  load (FP+8),r0 ; local mobj
        !          1328:  movei #92,r1
        !          1329:  add r1,r0
        !          1330:  load (r0),r1
        !          1331:  subq #1,r1
        !          1332:  load (r0),r30 ; FUCKING dsp!
        !          1333:  or r30,r30 ; FUCKING dsp!
        !          1334:  store r1,(r0)
        !          1335: 
        !          1336:  load (FP+8),r0 ; local mobj
        !          1337:  movei #92,r1
        !          1338:  add r1,r0
        !          1339:  load (r0),r0
        !          1340:  moveq #0,r1
        !          1341:  cmp r0,r1
        !          1342:  movei #L154,scratch
        !          1343:  jump PL,(scratch)
        !          1344:  nop
        !          1345: 
        !          1346: 
        !          1347:  movei #L141,r0
        !          1348:  jump T,(r0)
        !          1349:  nop
        !          1350: 
        !          1351: L154:
        !          1352: 
        !          1353:  load (FP+8),r0 ; local mobj
        !          1354:  movei #96,r1
        !          1355:  add r1,r0
        !          1356:  load (r0),r0
        !          1357:  addq #16,r0
        !          1358:  load (r0),r0
        !          1359:  move r0,r16 ;(state)
        !          1360:  moveq #0,r0
        !          1361:  cmp r16,r0 ;(state)
        !          1362:  movei #L156,scratch
        !          1363:  jump NE,(scratch)
        !          1364:  nop
        !          1365: 
        !          1366:  load (FP+8),r0 ; local mobj
        !          1367:  addq #8,r0
        !          1368:  movei #_P_RemoveMobj,r1
        !          1369:  load (r0),r30 ; FUCKING dsp!
        !          1370:  or r30,r30 ; FUCKING dsp!
        !          1371:  store r1,(r0)
        !          1372: 
        !          1373: 
        !          1374:  movei #L141,r0
        !          1375:  jump T,(r0)
        !          1376:  nop
        !          1377: 
        !          1378: L156:
        !          1379: 
        !          1380:  moveq #28,r0
        !          1381:  move r0,MATH_A
        !          1382:  movei #L160,MATH_RTS
        !          1383:  movei #GPU_IMUL,scratch
        !          1384:  jump T,(scratch)
        !          1385:  move r16,MATH_B ; delay slot ;(state)
        !          1386: L160:
        !          1387:  move MATH_C,r0
        !          1388:  movei #_states,r1
        !          1389:  add r1,r0
        !          1390:  move r0,r15 ;(st)
        !          1391:  load (FP+8),r0 ; local mobj
        !          1392:  movei #96,r1
        !          1393:  add r1,r0
        !          1394:  load (r0),r30 ; FUCKING dsp!
        !          1395:  or r30,r30 ; FUCKING dsp!
        !          1396:  store r15,(r0) ;(st)
        !          1397: 
        !          1398:  load (FP+8),r0 ; local mobj
        !          1399:  movei #92,r1
        !          1400:  add r1,r0
        !          1401:  move r15,r1 ;(st)
        !          1402:  addq #8,r1
        !          1403:  load (r1),r1
        !          1404:  load (r0),r30 ; FUCKING dsp!
        !          1405:  or r30,r30 ; FUCKING dsp!
        !          1406:  store r1,(r0)
        !          1407: 
        !          1408:  load (FP+8),r0 ; local mobj
        !          1409:  movei #36,r1
        !          1410:  add r1,r0
        !          1411:  load (r15),r1 ;(st)
        !          1412:  load (r0),r30 ; FUCKING dsp!
        !          1413:  or r30,r30 ; FUCKING dsp!
        !          1414:  store r1,(r0)
        !          1415: 
        !          1416:  load (FP+8),r0 ; local mobj
        !          1417:  movei #40,r1
        !          1418:  add r1,r0
        !          1419:  move r15,r1 ;(st)
        !          1420:  addq #4,r1
        !          1421:  load (r1),r1
        !          1422:  load (r0),r30 ; FUCKING dsp!
        !          1423:  or r30,r30 ; FUCKING dsp!
        !          1424:  store r1,(r0)
        !          1425: 
        !          1426:  load (FP+8),r0 ; local mobj
        !          1427:  addq #8,r0
        !          1428:  move r15,r1 ;(st)
        !          1429:  addq #12,r1
        !          1430:  load (r1),r1
        !          1431:  load (r0),r30 ; FUCKING dsp!
        !          1432:  or r30,r30 ; FUCKING dsp!
        !          1433:  store r1,(r0)
        !          1434: 
        !          1435: 
        !          1436: L141:
        !          1437:  jump T,(RETURNPOINT)
        !          1438:  addq #32,FP ; delay slot
        !          1439: 
        !          1440: ;====================
        !          1441: _PB_TryMove::
        !          1442: ;3 dag registers  0 register variables
        !          1443: ;localoffset:4  regoffset:12  argoffset:28
        !          1444: ;====================
        !          1445:  subq #28,FP
        !          1446: 
        !          1447:  movei #_testx,r0
        !          1448:  load (FP+7),r1 ; local tryx
        !          1449:  load (r0),r30 ; FUCKING dsp!
        !          1450:  or r30,r30 ; FUCKING dsp!
        !          1451:  store r1,(r0)
        !          1452:  movei #_testy,r0
        !          1453:  load (FP+8),r1 ; local tryy
        !          1454:  load (r0),r30 ; FUCKING dsp!
        !          1455:  or r30,r30 ; FUCKING dsp!
        !          1456:  store r1,(r0)
        !          1457:  movei #_PB_CheckPosition,r0
        !          1458:  store r28,(FP+3) ; push ;(RETURNPOINT)
        !          1459:  movei #L172,RETURNPOINT
        !          1460:  jump T,(r0)
        !          1461:  nop ; delay slot
        !          1462: L172:
        !          1463:  load (FP+3), RETURNPOINT ; pop
        !          1464:  moveq #0,r0
        !          1465:  cmp r29,r0 ;(RETURNVALUE)
        !          1466:  movei #L162,scratch
        !          1467:  jump NE,(scratch)
        !          1468:  nop
        !          1469: 
        !          1470:  moveq #0,r0
        !          1471:  move r0,RETURNVALUE
        !          1472: 
        !          1473:  movei #L161,r0
        !          1474:  jump T,(r0)
        !          1475:  nop
        !          1476: 
        !          1477: L162:
        !          1478: 
        !          1479:  movei #_testceilingz,r0
        !          1480:  load (r0),r0
        !          1481:  movei #_testfloorz,r1
        !          1482:  load (r1),r1
        !          1483:  sub r1,r0
        !          1484:  movei #_basething,r1
        !          1485:  load (r1),r1
        !          1486:  movei #68,r2
        !          1487:  add r2,r1
        !          1488:  load (r1),r1
        !          1489:  cmp r0,r1
        !          1490:  movei #L164,scratch
        !          1491:  jump EQ,(scratch)
        !          1492:  nop
        !          1493:  jump MI,(scratch)
        !          1494:  nop
        !          1495: 
        !          1496:  moveq #0,r0
        !          1497:  move r0,RETURNVALUE
        !          1498: 
        !          1499:  movei #L161,r0
        !          1500:  jump T,(r0)
        !          1501:  nop
        !          1502: 
        !          1503: L164:
        !          1504: 
        !          1505:  movei #_testceilingz,r0
        !          1506:  load (r0),r0
        !          1507:  movei #_basething,r1
        !          1508:  load (r1),r1
        !          1509:  move r1,r2
        !          1510:  addq #20,r2
        !          1511:  load (r2),r2
        !          1512:  sub r2,r0
        !          1513:  movei #68,r2
        !          1514:  add r2,r1
        !          1515:  load (r1),r1
        !          1516:  cmp r0,r1
        !          1517:  movei #L166,scratch
        !          1518:  jump EQ,(scratch)
        !          1519:  nop
        !          1520:  jump MI,(scratch)
        !          1521:  nop
        !          1522: 
        !          1523:  moveq #0,r0
        !          1524:  move r0,RETURNVALUE
        !          1525: 
        !          1526:  movei #L161,r0
        !          1527:  jump T,(r0)
        !          1528:  nop
        !          1529: 
        !          1530: L166:
        !          1531: 
        !          1532:  movei #_testfloorz,r0
        !          1533:  load (r0),r0
        !          1534:  movei #_basething,r1
        !          1535:  load (r1),r1
        !          1536:  addq #20,r1
        !          1537:  load (r1),r1
        !          1538:  sub r1,r0
        !          1539:  movei #1572864,r1
        !          1540:  cmp r0,r1
        !          1541:  movei #L168,scratch
        !          1542:  jump PL,(scratch)
        !          1543:  nop
        !          1544: 
        !          1545:  moveq #0,r0
        !          1546:  move r0,RETURNVALUE
        !          1547: 
        !          1548:  movei #L161,r0
        !          1549:  jump T,(r0)
        !          1550:  nop
        !          1551: 
        !          1552: L168:
        !          1553: 
        !          1554:  movei #_testflags,r0
        !          1555:  load (r0),r0
        !          1556:  movei #17408,r1
        !          1557:  and r1,r0
        !          1558:  moveq #0,r1
        !          1559:  cmp r0,r1
        !          1560:  movei #L170,scratch
        !          1561:  jump NE,(scratch)
        !          1562:  nop
        !          1563:  movei #_testfloorz,r0
        !          1564:  load (r0),r0
        !          1565:  movei #_testdropoffz,r1
        !          1566:  load (r1),r1
        !          1567:  sub r1,r0
        !          1568:  movei #1572864,r1
        !          1569:  cmp r0,r1
        !          1570:  movei #L170,scratch
        !          1571:  jump PL,(scratch)
        !          1572:  nop
        !          1573: 
        !          1574:  moveq #0,r0
        !          1575:  move r0,RETURNVALUE
        !          1576: 
        !          1577:  movei #L161,r0
        !          1578:  jump T,(r0)
        !          1579:  nop
        !          1580: 
        !          1581: L170:
        !          1582: 
        !          1583:  movei #_basething,r0
        !          1584:  load (r0),r0
        !          1585:  store r0,(FP) ; arg[]
        !          1586:  movei #_PB_UnsetThingPosition,r0
        !          1587:  store r28,(FP+3) ; push ;(RETURNPOINT)
        !          1588:  movei #L173,RETURNPOINT
        !          1589:  jump T,(r0)
        !          1590:  nop ; delay slot
        !          1591: L173:
        !          1592:  load (FP+3), RETURNPOINT ; pop
        !          1593: 
        !          1594:  move FP,r0
        !          1595:  addq #4,r0 ; &oldx
        !          1596:  movei #_basething,r1
        !          1597:  load (r1),r1
        !          1598:  move r1,r2
        !          1599:  addq #12,r2
        !          1600:  load (r2),r2
        !          1601:  load (r0),r30 ; FUCKING dsp!
        !          1602:  or r30,r30 ; FUCKING dsp!
        !          1603:  store r2,(r0)
        !          1604:  move FP,r0
        !          1605:  addq #8,r0 ; &oldy
        !          1606:  move r1,r2
        !          1607:  addq #16,r2
        !          1608:  load (r2),r2
        !          1609:  load (r0),r30 ; FUCKING dsp!
        !          1610:  or r30,r30 ; FUCKING dsp!
        !          1611:  store r2,(r0)
        !          1612:  movei #56,r0
        !          1613:  add r0,r1
        !          1614:  movei #_testfloorz,r0
        !          1615:  load (r0),r0
        !          1616:  load (r1),r30 ; FUCKING dsp!
        !          1617:  or r30,r30 ; FUCKING dsp!
        !          1618:  store r0,(r1)
        !          1619: 
        !          1620:  movei #_basething,r0
        !          1621:  load (r0),r0
        !          1622:  movei #60,r1
        !          1623:  add r1,r0
        !          1624:  movei #_testceilingz,r1
        !          1625:  load (r1),r1
        !          1626:  load (r0),r30 ; FUCKING dsp!
        !          1627:  or r30,r30 ; FUCKING dsp!
        !          1628:  store r1,(r0)
        !          1629: 
        !          1630:  movei #_basething,r0
        !          1631:  load (r0),r0
        !          1632:  addq #12,r0
        !          1633:  movei #_testx,r1
        !          1634:  load (r1),r1
        !          1635:  load (r0),r30 ; FUCKING dsp!
        !          1636:  or r30,r30 ; FUCKING dsp!
        !          1637:  store r1,(r0)
        !          1638: 
        !          1639:  movei #_basething,r0
        !          1640:  load (r0),r0
        !          1641:  addq #16,r0
        !          1642:  movei #_testy,r1
        !          1643:  load (r1),r1
        !          1644:  load (r0),r30 ; FUCKING dsp!
        !          1645:  or r30,r30 ; FUCKING dsp!
        !          1646:  store r1,(r0)
        !          1647: 
        !          1648:  movei #_basething,r0
        !          1649:  load (r0),r0
        !          1650:  store r0,(FP) ; arg[]
        !          1651:  movei #_PB_SetThingPosition,r0
        !          1652:  store r28,(FP+3) ; push ;(RETURNPOINT)
        !          1653:  movei #L174,RETURNPOINT
        !          1654:  jump T,(r0)
        !          1655:  nop ; delay slot
        !          1656: L174:
        !          1657:  load (FP+3), RETURNPOINT ; pop
        !          1658: 
        !          1659:  moveq #1,r0
        !          1660:  move r0,RETURNVALUE
        !          1661: 
        !          1662: L161:
        !          1663:  jump T,(RETURNPOINT)
        !          1664:  addq #28,FP ; delay slot
        !          1665: 
        !          1666: ;====================
        !          1667: _PB_SetThingPosition::
        !          1668: ;5 dag registers  1 register variables
        !          1669: ;localoffset:0  regoffset:16  argoffset:16
        !          1670: ;====================
        !          1671:  subq #16,FP
        !          1672: 
        !          1673:  move FP,r0 ; &ss
        !          1674:  movei #_testsubsec,r1
        !          1675:  load (r1),r1
        !          1676:  load (r0),r30 ; FUCKING dsp!
        !          1677:  or r30,r30 ; FUCKING dsp!
        !          1678:  store r1,(r0)
        !          1679:  load (FP+4),r0 ; local thing
        !          1680:  movei #52,r2
        !          1681:  add r2,r0
        !          1682:  load (r0),r30 ; FUCKING dsp!
        !          1683:  or r30,r30 ; FUCKING dsp!
        !          1684:  store r1,(r0)
        !          1685: 
        !          1686:  load (FP),r0 ; local ss
        !          1687:  load (r0),r0
        !          1688:  move r0,r15 ;(sec)
        !          1689:  load (FP+4),r0 ; local thing
        !          1690:  addq #28,r0
        !          1691:  moveq #0,r1
        !          1692:  load (r0),r30 ; FUCKING dsp!
        !          1693:  or r30,r30 ; FUCKING dsp!
        !          1694:  store r1,(r0)
        !          1695: 
        !          1696:  load (FP+4),r0 ; local thing
        !          1697:  addq #24,r0
        !          1698:  movei #80,r1
        !          1699:  move r15,r2 ;(sec)
        !          1700:  add r1,r2
        !          1701:  load (r2),r1
        !          1702:  load (r0),r30 ; FUCKING dsp!
        !          1703:  or r30,r30 ; FUCKING dsp!
        !          1704:  store r1,(r0)
        !          1705: 
        !          1706:  movei #80,r0
        !          1707:  move r15,r1 ;(sec)
        !          1708:  add r0,r1
        !          1709:  load (r1),r0
        !          1710:  moveq #0,r1
        !          1711:  cmp r0,r1
        !          1712:  movei #L176,scratch
        !          1713:  jump EQ,(scratch)
        !          1714:  nop
        !          1715: 
        !          1716:  movei #80,r0
        !          1717:  move r15,r1 ;(sec)
        !          1718:  add r0,r1
        !          1719:  load (r1),r0
        !          1720:  addq #28,r0
        !          1721:  load (FP+4),r1 ; local thing
        !          1722:  load (r0),r30 ; FUCKING dsp!
        !          1723:  or r30,r30 ; FUCKING dsp!
        !          1724:  store r1,(r0)
        !          1725: 
        !          1726: L176:
        !          1727: 
        !          1728:  movei #80,r0
        !          1729:  move r15,r1 ;(sec)
        !          1730:  add r0,r1
        !          1731:  load (FP+4),r0 ; local thing
        !          1732:  load (r1),r30 ; FUCKING dsp!
        !          1733:  or r30,r30 ; FUCKING dsp!
        !          1734:  store r0,(r1)
        !          1735: 
        !          1736:  movei #_testflags,r0
        !          1737:  load (r0),r0
        !          1738:  moveq #16,r1
        !          1739:  and r1,r0
        !          1740:  moveq #0,r1
        !          1741:  cmp r0,r1
        !          1742:  movei #L178,scratch
        !          1743:  jump NE,(scratch)
        !          1744:  nop
        !          1745: 
        !          1746:  move FP,r0
        !          1747:  addq #4,r0 ; &blockx
        !          1748:  load (FP+4),r1 ; local thing
        !          1749:  move r1,r2
        !          1750:  addq #12,r2
        !          1751:  load (r2),r2
        !          1752:  movei #_bmaporgx,r3
        !          1753:  load (r3),r3
        !          1754:  sub r3,r2
        !          1755:  moveq #23,r3
        !          1756:  sha r3,r2
        !          1757:  load (r0),r30 ; FUCKING dsp!
        !          1758:  or r30,r30 ; FUCKING dsp!
        !          1759:  store r2,(r0)
        !          1760:  move FP,r2
        !          1761:  addq #8,r2 ; &blocky
        !          1762:  addq #16,r1
        !          1763:  load (r1),r1
        !          1764:  movei #_bmaporgy,r4
        !          1765:  load (r4),r4
        !          1766:  sub r4,r1
        !          1767:  sha r3,r1
        !          1768:  load (r2),r30 ; FUCKING dsp!
        !          1769:  or r30,r30 ; FUCKING dsp!
        !          1770:  store r1,(r2)
        !          1771:  load (r0),r0
        !          1772:  moveq #0,r1
        !          1773:  cmp r0,r1
        !          1774:  movei #L180,scratch
        !          1775:  jump S_LT,(scratch)
        !          1776:  nop
        !          1777:  movei #_bmapwidth,r3
        !          1778:  load (r3),r3
        !          1779:  cmp r0,r3
        !          1780:  movei #L180,scratch
        !          1781:  jump EQ,(scratch)
        !          1782:  nop
        !          1783:  jump MI,(scratch)
        !          1784:  nop
        !          1785:  load (r2),r0
        !          1786:  cmp r0,r1
        !          1787:  movei #L180,scratch
        !          1788:  jump S_LT,(scratch)
        !          1789:  nop
        !          1790:  movei #_bmapheight,r1
        !          1791:  load (r1),r1
        !          1792:  cmp r0,r1
        !          1793:  movei #L180,scratch
        !          1794:  jump EQ,(scratch)
        !          1795:  nop
        !          1796:  jump MI,(scratch)
        !          1797:  nop
        !          1798: 
        !          1799:  move FP,r0
        !          1800:  addq #12,r0 ; &link
        !          1801:  load (FP+2),r1 ; local blocky
        !          1802:  movei #_bmapwidth,r2
        !          1803:  load (r2),r2
        !          1804:  move r1,MATH_A
        !          1805:  movei #L184,MATH_RTS
        !          1806:  movei #GPU_IMUL,scratch
        !          1807:  jump T,(scratch)
        !          1808:  move r2,MATH_B ; delay slot
        !          1809: L184:
        !          1810:  move MATH_C,r1
        !          1811:  load (FP+1),r2 ; local blockx
        !          1812:  add r2,r1
        !          1813:  shlq #2,r1
        !          1814:  movei #_blocklinks,r2
        !          1815:  load (r2),r2
        !          1816:  add r2,r1
        !          1817:  load (r0),r30 ; FUCKING dsp!
        !          1818:  or r30,r30 ; FUCKING dsp!
        !          1819:  store r1,(r0)
        !          1820:  load (FP+4),r0 ; local thing
        !          1821:  movei #48,r1
        !          1822:  add r1,r0
        !          1823:  moveq #0,r1
        !          1824:  load (r0),r30 ; FUCKING dsp!
        !          1825:  or r30,r30 ; FUCKING dsp!
        !          1826:  store r1,(r0)
        !          1827: 
        !          1828:  load (FP+4),r0 ; local thing
        !          1829:  movei #44,r1
        !          1830:  add r1,r0
        !          1831:  load (FP+3),r1 ; local link
        !          1832:  load (r1),r1
        !          1833:  load (r0),r30 ; FUCKING dsp!
        !          1834:  or r30,r30 ; FUCKING dsp!
        !          1835:  store r1,(r0)
        !          1836: 
        !          1837:  load (FP+3),r0 ; local link
        !          1838:  load (r0),r0
        !          1839:  moveq #0,r1
        !          1840:  cmp r0,r1
        !          1841:  movei #L182,scratch
        !          1842:  jump EQ,(scratch)
        !          1843:  nop
        !          1844: 
        !          1845:  load (FP+3),r0 ; local link
        !          1846:  load (r0),r0
        !          1847:  movei #48,r1
        !          1848:  add r1,r0
        !          1849:  load (FP+4),r1 ; local thing
        !          1850:  load (r0),r30 ; FUCKING dsp!
        !          1851:  or r30,r30 ; FUCKING dsp!
        !          1852:  store r1,(r0)
        !          1853: 
        !          1854: L182:
        !          1855: 
        !          1856:  load (FP+3),r0 ; local link
        !          1857:  load (FP+4),r1 ; local thing
        !          1858:  load (r0),r30 ; FUCKING dsp!
        !          1859:  or r30,r30 ; FUCKING dsp!
        !          1860:  store r1,(r0)
        !          1861: 
        !          1862:  movei #L181,r0
        !          1863:  jump T,(r0)
        !          1864:  nop
        !          1865: 
        !          1866: L180:
        !          1867: 
        !          1868:  load (FP+4),r0 ; local thing
        !          1869:  movei #48,r1
        !          1870:  move r0,r2
        !          1871:  add r1,r2
        !          1872:  moveq #0,r1
        !          1873:  load (r2),r30 ; FUCKING dsp!
        !          1874:  or r30,r30 ; FUCKING dsp!
        !          1875:  store r1,(r2)
        !          1876:  movei #44,r2
        !          1877:  add r2,r0
        !          1878:  load (r0),r30 ; FUCKING dsp!
        !          1879:  or r30,r30 ; FUCKING dsp!
        !          1880:  store r1,(r0)
        !          1881: 
        !          1882: L181:
        !          1883: 
        !          1884: L178:
        !          1885: 
        !          1886: 
        !          1887: L175:
        !          1888:  jump T,(RETURNPOINT)
        !          1889:  addq #16,FP ; delay slot
        !          1890: 
        !          1891: ;====================
        !          1892: _PB_CheckPosition::
        !          1893: ;4 dag registers  7 register variables
        !          1894: ;localoffset:8  regoffset:8  argoffset:56
        !          1895: ;====================
        !          1896:  movei #56,scratch
        !          1897:  sub scratch,FP
        !          1898: 
        !          1899:  movei #_testflags,r0
        !          1900:  movei #_basething,r1
        !          1901:  load (r1),r1
        !          1902:  movei #100,r2
        !          1903:  move r1,r3
        !          1904:  add r2,r3
        !          1905:  load (r3),r2
        !          1906:  load (r0),r30 ; FUCKING dsp!
        !          1907:  or r30,r30 ; FUCKING dsp!
        !          1908:  store r2,(r0)
        !          1909:  movei #64,r0
        !          1910:  add r0,r1
        !          1911:  load (r1),r0
        !          1912:  move r0,r20 ;(r)
        !          1913:  movei #_testbbox,r0
        !          1914:  movei #_testy,r1
        !          1915:  load (r1),r1
        !          1916:  move r1,r2
        !          1917:  add r20,r2 ;(r)
        !          1918:  load (r0),r30 ; FUCKING dsp!
        !          1919:  or r30,r30 ; FUCKING dsp!
        !          1920:  store r2,(r0)
        !          1921:  movei #_testbbox+4,r0
        !          1922:  sub r20,r1 ;(r)
        !          1923:  load (r0),r30 ; FUCKING dsp!
        !          1924:  or r30,r30 ; FUCKING dsp!
        !          1925:  store r1,(r0)
        !          1926: 
        !          1927:  movei #_testbbox+12,r0
        !          1928:  movei #_testx,r1
        !          1929:  load (r1),r1
        !          1930:  add r20,r1 ;(r)
        !          1931:  load (r0),r30 ; FUCKING dsp!
        !          1932:  or r30,r30 ; FUCKING dsp!
        !          1933:  store r1,(r0)
        !          1934: 
        !          1935:  movei #_testbbox+8,r0
        !          1936:  movei #_testx,r1
        !          1937:  load (r1),r1
        !          1938:  sub r20,r1 ;(r)
        !          1939:  load (r0),r30 ; FUCKING dsp!
        !          1940:  or r30,r30 ; FUCKING dsp!
        !          1941:  store r1,(r0)
        !          1942: 
        !          1943:  movei #_testx,r0
        !          1944:  load (r0),r0
        !          1945:  store r0,(FP) ; arg[]
        !          1946:  movei #_testy,r0
        !          1947:  load (r0),r0
        !          1948:  or r0,scratch ; scoreboard bug
        !          1949:  store r0,(FP+1) ; arg[]
        !          1950:  movei #_PB_PointInSubsector,r0
        !          1951:  store r28,(FP+2) ; push ;(RETURNPOINT)
        !          1952:  store r21,(FP+3) ; push ;(xl)
        !          1953:  store r20,(FP+4) ; push ;(r)
        !          1954:  store r19,(FP+5) ; push ;(yl)
        !          1955:  store r18,(FP+6) ; push ;(xh)
        !          1956:  store r17,(FP+7) ; push ;(yh)
        !          1957:  store r16,(FP+8) ; push ;(bx)
        !          1958:  movei #L212,RETURNPOINT
        !          1959:  jump T,(r0)
        !          1960:  store r15,(FP+9) ; delay slot push ;(by)
        !          1961: L212:
        !          1962:  load (FP+3),r21 ; pop ;(xl)
        !          1963:  load (FP+4),r20 ; pop ;(r)
        !          1964:  load (FP+5),r19 ; pop ;(yl)
        !          1965:  load (FP+6),r18 ; pop ;(xh)
        !          1966:  load (FP+7),r17 ; pop ;(yh)
        !          1967:  load (FP+8),r16 ; pop ;(bx)
        !          1968:  load (FP+9),r15 ; pop ;(by)
        !          1969:  load (FP+2), RETURNPOINT ; pop
        !          1970:  movei #_testsubsec,r0
        !          1971:  move r29,r1 ;(RETURNVALUE)
        !          1972:  load (r0),r30 ; FUCKING dsp!
        !          1973:  or r30,r30 ; FUCKING dsp!
        !          1974:  store r1,(r0)
        !          1975:  movei #_testdropoffz,r0
        !          1976:  movei #_testsubsec,r1
        !          1977:  load (r1),r1
        !          1978:  load (r1),r2
        !          1979:  load (r2),r2
        !          1980:  load (r0),r30 ; FUCKING dsp!
        !          1981:  or r30,r30 ; FUCKING dsp!
        !          1982:  store r2,(r0)
        !          1983:  movei #_testfloorz,r0
        !          1984:  load (r0),r30 ; FUCKING dsp!
        !          1985:  or r30,r30 ; FUCKING dsp!
        !          1986:  store r2,(r0)
        !          1987:  movei #_testceilingz,r0
        !          1988:  load (r1),r1
        !          1989:  addq #4,r1
        !          1990:  load (r1),r1
        !          1991:  load (r0),r30 ; FUCKING dsp!
        !          1992:  or r30,r30 ; FUCKING dsp!
        !          1993:  store r1,(r0)
        !          1994:  movei #_validcount,r0
        !          1995:  load (r0),r1
        !          1996:  addq #1,r1
        !          1997:  load (r0),r30 ; FUCKING dsp!
        !          1998:  or r30,r30 ; FUCKING dsp!
        !          1999:  store r1,(r0)
        !          2000:  movei #_ceilingline,r0
        !          2001:  moveq #0,r1
        !          2002:  load (r0),r30 ; FUCKING dsp!
        !          2003:  or r30,r30 ; FUCKING dsp!
        !          2004:  store r1,(r0)
        !          2005:  movei #_hitthing,r0
        !          2006:  load (r0),r30 ; FUCKING dsp!
        !          2007:  or r30,r30 ; FUCKING dsp!
        !          2008:  store r1,(r0)
        !          2009:  movei #_testbbox+8,r0
        !          2010:  load (r0),r0
        !          2011:  movei #_bmaporgx,r1
        !          2012:  load (r1),r1
        !          2013:  sub r1,r0
        !          2014:  movei #2097152,r2
        !          2015:  sub r2,r0
        !          2016:  moveq #23,r3
        !          2017:  sha r3,r0
        !          2018:  move r0,r21 ;(xl)
        !          2019:  movei #_testbbox+12,r0
        !          2020:  load (r0),r0
        !          2021:  sub r1,r0
        !          2022:  add r2,r0
        !          2023:  sha r3,r0
        !          2024:  move r0,r18 ;(xh)
        !          2025:  movei #_testbbox+4,r0
        !          2026:  load (r0),r0
        !          2027:  movei #_bmaporgy,r1
        !          2028:  load (r1),r1
        !          2029:  sub r1,r0
        !          2030:  sub r2,r0
        !          2031:  sha r3,r0
        !          2032:  move r0,r19 ;(yl)
        !          2033:  movei #_testbbox,r0
        !          2034:  load (r0),r0
        !          2035:  sub r1,r0
        !          2036:  add r2,r0
        !          2037:  sha r3,r0
        !          2038:  move r0,r17 ;(yh)
        !          2039:  moveq #0,r0
        !          2040:  cmp r21,r0 ;(xl)
        !          2041:  movei #L192,scratch
        !          2042:  jump EQ,(scratch)
        !          2043:  nop
        !          2044:  jump MI,(scratch)
        !          2045:  nop
        !          2046: 
        !          2047:  moveq #0,r0
        !          2048:  move r0,r21 ;(xl)
        !          2049: 
        !          2050: L192:
        !          2051: 
        !          2052:  moveq #0,r0
        !          2053:  cmp r19,r0 ;(yl)
        !          2054:  movei #L194,scratch
        !          2055:  jump EQ,(scratch)
        !          2056:  nop
        !          2057:  jump MI,(scratch)
        !          2058:  nop
        !          2059: 
        !          2060:  moveq #0,r0
        !          2061:  move r0,r19 ;(yl)
        !          2062: 
        !          2063: L194:
        !          2064: 
        !          2065:  movei #_bmapwidth,r0
        !          2066:  load (r0),r0
        !          2067:  cmp r18,r0 ;(xh)
        !          2068:  movei #L196,scratch
        !          2069:  jump S_LT,(scratch)
        !          2070:  nop
        !          2071: 
        !          2072:  movei #_bmapwidth,r0
        !          2073:  load (r0),r0
        !          2074:  subq #1,r0
        !          2075:  move r0,r18 ;(xh)
        !          2076: 
        !          2077: L196:
        !          2078: 
        !          2079:  movei #_bmapheight,r0
        !          2080:  load (r0),r0
        !          2081:  cmp r17,r0 ;(yh)
        !          2082:  movei #L198,scratch
        !          2083:  jump S_LT,(scratch)
        !          2084:  nop
        !          2085: 
        !          2086:  movei #_bmapheight,r0
        !          2087:  load (r0),r0
        !          2088:  subq #1,r0
        !          2089:  move r0,r17 ;(yh)
        !          2090: 
        !          2091: L198:
        !          2092: 
        !          2093:  move r21,r16 ;(xl)(bx)
        !          2094: 
        !          2095:  movei #L203,r0
        !          2096:  jump T,(r0)
        !          2097:  nop
        !          2098: 
        !          2099: L200:
        !          2100: 
        !          2101:  move r19,r15 ;(yl)(by)
        !          2102: 
        !          2103:  movei #L207,r0
        !          2104:  jump T,(r0)
        !          2105:  nop
        !          2106: 
        !          2107: L204:
        !          2108: 
        !          2109:  store r16,(FP) ; arg[] ;(bx)
        !          2110:  or r15,scratch ; scoreboard bug ;(by)
        !          2111:  store r15,(FP+1) ; arg[] ;(by)
        !          2112:  movei #_PB_MoveThingsIterator,r0
        !          2113:  store r28,(FP+2) ; push ;(RETURNPOINT)
        !          2114:  store r21,(FP+3) ; push ;(xl)
        !          2115:  store r20,(FP+4) ; push ;(r)
        !          2116:  store r19,(FP+5) ; push ;(yl)
        !          2117:  store r18,(FP+6) ; push ;(xh)
        !          2118:  store r17,(FP+7) ; push ;(yh)
        !          2119:  store r16,(FP+8) ; push ;(bx)
        !          2120:  movei #L213,RETURNPOINT
        !          2121:  jump T,(r0)
        !          2122:  store r15,(FP+9) ; delay slot push ;(by)
        !          2123: L213:
        !          2124:  load (FP+3),r21 ; pop ;(xl)
        !          2125:  load (FP+4),r20 ; pop ;(r)
        !          2126:  load (FP+5),r19 ; pop ;(yl)
        !          2127:  load (FP+6),r18 ; pop ;(xh)
        !          2128:  load (FP+7),r17 ; pop ;(yh)
        !          2129:  load (FP+8),r16 ; pop ;(bx)
        !          2130:  load (FP+9),r15 ; pop ;(by)
        !          2131:  load (FP+2), RETURNPOINT ; pop
        !          2132:  moveq #0,r0
        !          2133:  cmp r29,r0 ;(RETURNVALUE)
        !          2134:  movei #L208,scratch
        !          2135:  jump NE,(scratch)
        !          2136:  nop
        !          2137: 
        !          2138:  moveq #0,r0
        !          2139:  move r0,RETURNVALUE
        !          2140: 
        !          2141:  movei #L185,r0
        !          2142:  jump T,(r0)
        !          2143:  nop
        !          2144: 
        !          2145: L208:
        !          2146: 
        !          2147:  store r16,(FP) ; arg[] ;(bx)
        !          2148:  or r15,scratch ; scoreboard bug ;(by)
        !          2149:  store r15,(FP+1) ; arg[] ;(by)
        !          2150:  movei #_PB_MoveLinesIterator,r0
        !          2151:  store r28,(FP+2) ; push ;(RETURNPOINT)
        !          2152:  store r21,(FP+3) ; push ;(xl)
        !          2153:  store r20,(FP+4) ; push ;(r)
        !          2154:  store r19,(FP+5) ; push ;(yl)
        !          2155:  store r18,(FP+6) ; push ;(xh)
        !          2156:  store r17,(FP+7) ; push ;(yh)
        !          2157:  store r16,(FP+8) ; push ;(bx)
        !          2158:  movei #L214,RETURNPOINT
        !          2159:  jump T,(r0)
        !          2160:  store r15,(FP+9) ; delay slot push ;(by)
        !          2161: L214:
        !          2162:  load (FP+3),r21 ; pop ;(xl)
        !          2163:  load (FP+4),r20 ; pop ;(r)
        !          2164:  load (FP+5),r19 ; pop ;(yl)
        !          2165:  load (FP+6),r18 ; pop ;(xh)
        !          2166:  load (FP+7),r17 ; pop ;(yh)
        !          2167:  load (FP+8),r16 ; pop ;(bx)
        !          2168:  load (FP+9),r15 ; pop ;(by)
        !          2169:  load (FP+2), RETURNPOINT ; pop
        !          2170:  moveq #0,r0
        !          2171:  cmp r29,r0 ;(RETURNVALUE)
        !          2172:  movei #L210,scratch
        !          2173:  jump NE,(scratch)
        !          2174:  nop
        !          2175: 
        !          2176:  moveq #0,r0
        !          2177:  move r0,RETURNVALUE
        !          2178: 
        !          2179:  movei #L185,r0
        !          2180:  jump T,(r0)
        !          2181:  nop
        !          2182: 
        !          2183: L210:
        !          2184: 
        !          2185: L205:
        !          2186: 
        !          2187:  move r15,r0 ;(by)
        !          2188:  addq #1,r0
        !          2189:  move r0,r15 ;(by)
        !          2190: 
        !          2191: L207:
        !          2192: 
        !          2193:  cmp r15,r17 ;(by)(yh)
        !          2194:  movei #L204,scratch
        !          2195:  jump PL,(scratch)
        !          2196:  nop
        !          2197: 
        !          2198: L201:
        !          2199: 
        !          2200:  move r16,r0 ;(bx)
        !          2201:  addq #1,r0
        !          2202:  move r0,r16 ;(bx)
        !          2203: 
        !          2204: L203:
        !          2205: 
        !          2206:  cmp r16,r18 ;(bx)(xh)
        !          2207:  movei #L200,scratch
        !          2208:  jump PL,(scratch)
        !          2209:  nop
        !          2210: 
        !          2211:  moveq #1,r0
        !          2212:  move r0,RETURNVALUE
        !          2213: 
        !          2214: L185:
        !          2215:  movei #56,scratch
        !          2216:  jump T,(RETURNPOINT)
        !          2217:  add scratch,FP ; delay slot
        !          2218: 
        !          2219: ;====================
        !          2220: _PB_BoxCrossLine::
        !          2221: ;4 dag registers  5 register variables
        !          2222: ;localoffset:0  regoffset:32  argoffset:32
        !          2223: ;====================
        !          2224:  subq #32,FP
        !          2225: 
        !          2226:  movei #_testbbox+12,r0
        !          2227:  load (r0),r0
        !          2228:  load (FP+8),r1 ; local ld
        !          2229:  movei #44,r2
        !          2230:  move r1,r3
        !          2231:  add r2,r3
        !          2232:  load (r3),r2
        !          2233:  cmp r0,r2
        !          2234:  movei #L223,scratch
        !          2235:  jump PL,(scratch)
        !          2236:  nop
        !          2237:  movei #_testbbox+8,r0
        !          2238:  load (r0),r0
        !          2239:  movei #48,r2
        !          2240:  move r1,r3
        !          2241:  add r2,r3
        !          2242:  load (r3),r2
        !          2243:  cmp r0,r2
        !          2244:  movei #L223,scratch
        !          2245:  jump EQ,(scratch)
        !          2246:  nop
        !          2247:  jump MI,(scratch)
        !          2248:  nop
        !          2249:  movei #_testbbox,r0
        !          2250:  load (r0),r0
        !          2251:  movei #40,r2
        !          2252:  move r1,r3
        !          2253:  add r2,r3
        !          2254:  load (r3),r2
        !          2255:  cmp r0,r2
        !          2256:  movei #L223,scratch
        !          2257:  jump PL,(scratch)
        !          2258:  nop
        !          2259:  movei #_testbbox+4,r0
        !          2260:  load (r0),r0
        !          2261:  movei #36,r2
        !          2262:  add r2,r1
        !          2263:  load (r1),r1
        !          2264:  cmp r0,r1
        !          2265:  movei #L216,scratch
        !          2266:  jump S_LT,(scratch)
        !          2267:  nop
        !          2268: L223:
        !          2269: 
        !          2270:  moveq #0,r0
        !          2271:  move r0,RETURNVALUE
        !          2272: 
        !          2273:  movei #L215,r0
        !          2274:  jump T,(r0)
        !          2275:  nop
        !          2276: 
        !          2277: L216:
        !          2278: 
        !          2279:  load (FP+8),r0 ; local ld
        !          2280:  movei #52,r1
        !          2281:  add r1,r0
        !          2282:  load (r0),r0
        !          2283:  moveq #2,r1
        !          2284:  cmp r0,r1
        !          2285:  movei #L224,scratch
        !          2286:  jump NE,(scratch)
        !          2287:  nop
        !          2288: 
        !          2289:  move FP,r0 ; &x1
        !          2290:  movei #_testbbox+8,r1
        !          2291:  load (r1),r1
        !          2292:  load (r0),r30 ; FUCKING dsp!
        !          2293:  or r30,r30 ; FUCKING dsp!
        !          2294:  store r1,(r0)
        !          2295:  move FP,r0
        !          2296:  addq #4,r0 ; &x2
        !          2297:  movei #_testbbox+12,r1
        !          2298:  load (r1),r1
        !          2299:  load (r0),r30 ; FUCKING dsp!
        !          2300:  or r30,r30 ; FUCKING dsp!
        !          2301:  store r1,(r0)
        !          2302: 
        !          2303:  movei #L225,r0
        !          2304:  jump T,(r0)
        !          2305:  nop
        !          2306: 
        !          2307: L224:
        !          2308: 
        !          2309:  move FP,r0 ; &x1
        !          2310:  movei #_testbbox+12,r1
        !          2311:  load (r1),r1
        !          2312:  load (r0),r30 ; FUCKING dsp!
        !          2313:  or r30,r30 ; FUCKING dsp!
        !          2314:  store r1,(r0)
        !          2315:  move FP,r0
        !          2316:  addq #4,r0 ; &x2
        !          2317:  movei #_testbbox+8,r1
        !          2318:  load (r1),r1
        !          2319:  load (r0),r30 ; FUCKING dsp!
        !          2320:  or r30,r30 ; FUCKING dsp!
        !          2321:  store r1,(r0)
        !          2322: 
        !          2323: L225:
        !          2324: 
        !          2325:  load (FP+8),r0 ; local ld
        !          2326:  load (r0),r1
        !          2327:  load (r1),r1
        !          2328:  move r1,r15 ;(lx)
        !          2329:  load (r0),r1
        !          2330:  addq #4,r1
        !          2331:  load (r1),r1
        !          2332:  move r1,r16 ;(ly)
        !          2333:  move r0,r1
        !          2334:  addq #8,r1
        !          2335:  load (r1),r1
        !          2336:  moveq #16,r2
        !          2337:  sha r2,r1
        !          2338:  move r1,r17 ;(ldx)
        !          2339:  addq #12,r0
        !          2340:  load (r0),r0
        !          2341:  sha r2,r0
        !          2342:  move r0,r18 ;(ldy)
        !          2343:  move FP,r0
        !          2344:  addq #8,r0 ; &dx1
        !          2345:  load (FP),r1 ; local x1
        !          2346:  sub r15,r1 ;(lx)
        !          2347:  sha r2,r1
        !          2348:  load (r0),r30 ; FUCKING dsp!
        !          2349:  or r30,r30 ; FUCKING dsp!
        !          2350:  store r1,(r0)
        !          2351:  move FP,r0
        !          2352:  addq #12,r0 ; &dy1
        !          2353:  movei #_testbbox,r1
        !          2354:  load (r1),r1
        !          2355:  sub r16,r1 ;(ly)
        !          2356:  sha r2,r1
        !          2357:  load (r0),r30 ; FUCKING dsp!
        !          2358:  or r30,r30 ; FUCKING dsp!
        !          2359:  store r1,(r0)
        !          2360:  move FP,r0
        !          2361:  addq #16,r0 ; &dx2
        !          2362:  load (FP+1),r1 ; local x2
        !          2363:  sub r15,r1 ;(lx)
        !          2364:  sha r2,r1
        !          2365:  load (r0),r30 ; FUCKING dsp!
        !          2366:  or r30,r30 ; FUCKING dsp!
        !          2367:  store r1,(r0)
        !          2368:  move FP,r0
        !          2369:  addq #20,r0 ; &dy2
        !          2370:  movei #_testbbox+4,r1
        !          2371:  load (r1),r1
        !          2372:  sub r16,r1 ;(ly)
        !          2373:  sha r2,r1
        !          2374:  load (r0),r30 ; FUCKING dsp!
        !          2375:  or r30,r30 ; FUCKING dsp!
        !          2376:  store r1,(r0)
        !          2377:  load (FP+2),r0 ; local dx1
        !          2378:  move r18,MATH_A ;(ldy)
        !          2379:  movei #L238,MATH_RTS
        !          2380:  movei #GPU_IMUL,scratch
        !          2381:  jump T,(scratch)
        !          2382:  move r0,MATH_B ; delay slot
        !          2383: L238:
        !          2384:  move MATH_C,r1
        !          2385:  load (FP+3),r0 ; local dy1
        !          2386:  move r0,MATH_A
        !          2387:  movei #L239,MATH_RTS
        !          2388:  movei #GPU_IMUL,scratch
        !          2389:  jump T,(scratch)
        !          2390:  move r17,MATH_B ; delay slot ;(ldx)
        !          2391: L239:
        !          2392:  move MATH_C,r0
        !          2393:  cmp r1,r0
        !          2394:  movei #L232,scratch
        !          2395:  jump EQ,(scratch)
        !          2396:  nop
        !          2397:  jump MI,(scratch)
        !          2398:  nop
        !          2399:  moveq #1,r0
        !          2400:  move r0,r19 ;(231)
        !          2401:  movei #L233,r0
        !          2402:  jump T,(r0)
        !          2403:  nop
        !          2404: L232:
        !          2405:  moveq #0,r0
        !          2406:  move r0,r19 ;(231)
        !          2407: L233:
        !          2408:  move FP,r0
        !          2409:  addq #24,r0 ; &side1
        !          2410:  load (r0),r30 ; FUCKING dsp!
        !          2411:  or r30,r30 ; FUCKING dsp!
        !          2412:  store r19,(r0) ;(231)
        !          2413:  load (FP+4),r0 ; local dx2
        !          2414:  move r18,MATH_A ;(ldy)
        !          2415:  movei #L240,MATH_RTS
        !          2416:  movei #GPU_IMUL,scratch
        !          2417:  jump T,(scratch)
        !          2418:  move r0,MATH_B ; delay slot
        !          2419: L240:
        !          2420:  move MATH_C,r1
        !          2421:  load (FP+5),r0 ; local dy2
        !          2422:  move r0,MATH_A
        !          2423:  movei #L241,MATH_RTS
        !          2424:  movei #GPU_IMUL,scratch
        !          2425:  jump T,(scratch)
        !          2426:  move r17,MATH_B ; delay slot ;(ldx)
        !          2427: L241:
        !          2428:  move MATH_C,r0
        !          2429:  cmp r1,r0
        !          2430:  movei #L234,scratch
        !          2431:  jump EQ,(scratch)
        !          2432:  nop
        !          2433:  jump MI,(scratch)
        !          2434:  nop
        !          2435:  moveq #1,r0
        !          2436:  move r0,r19 ;(231)
        !          2437:  movei #L235,r0
        !          2438:  jump T,(r0)
        !          2439:  nop
        !          2440: L234:
        !          2441:  moveq #0,r0
        !          2442:  move r0,r19 ;(231)
        !          2443: L235:
        !          2444:  move FP,r0
        !          2445:  addq #28,r0 ; &side2
        !          2446:  load (r0),r30 ; FUCKING dsp!
        !          2447:  or r30,r30 ; FUCKING dsp!
        !          2448:  store r19,(r0) ;(231)
        !          2449:  load (FP+6),r0 ; local side1
        !          2450:  load (FP+7),r1 ; local side2
        !          2451:  cmp r0,r1
        !          2452:  movei #L236,scratch
        !          2453:  jump EQ,(scratch)
        !          2454:  nop
        !          2455:  moveq #1,r0
        !          2456:  move r0,r19 ;(231)
        !          2457:  movei #L237,r0
        !          2458:  jump T,(r0)
        !          2459:  nop
        !          2460: L236:
        !          2461:  moveq #0,r0
        !          2462:  move r0,r19 ;(231)
        !          2463: L237:
        !          2464:  move r19,RETURNVALUE ;(231)
        !          2465: 
        !          2466: L215:
        !          2467:  jump T,(RETURNPOINT)
        !          2468:  addq #32,FP ; delay slot
        !          2469: 
        !          2470: ;====================
        !          2471: _PB_CheckLine::
        !          2472: ;3 dag registers  2 register variables
        !          2473: ;localoffset:0  regoffset:12  argoffset:12
        !          2474: ;====================
        !          2475:  subq #12,FP
        !          2476: 
        !          2477:  load (FP+3),r0 ; local ld
        !          2478:  movei #60,r1
        !          2479:  add r1,r0
        !          2480:  load (r0),r0
        !          2481:  moveq #0,r1
        !          2482:  cmp r0,r1
        !          2483:  movei #L243,scratch
        !          2484:  jump NE,(scratch)
        !          2485:  nop
        !          2486: 
        !          2487:  moveq #0,r0
        !          2488:  move r0,RETURNVALUE
        !          2489: 
        !          2490:  movei #L242,r0
        !          2491:  jump T,(r0)
        !          2492:  nop
        !          2493: 
        !          2494: L243:
        !          2495: 
        !          2496:  movei #_testflags,r0
        !          2497:  load (r0),r0
        !          2498:  movei #65536,r1
        !          2499:  and r1,r0
        !          2500:  moveq #0,r1
        !          2501:  cmp r0,r1
        !          2502:  movei #L245,scratch
        !          2503:  jump NE,(scratch)
        !          2504:  nop
        !          2505:  load (FP+3),r0 ; local ld
        !          2506:  addq #16,r0
        !          2507:  load (r0),r0
        !          2508:  moveq #3,r2
        !          2509:  and r2,r0
        !          2510:  cmp r0,r1
        !          2511:  movei #L245,scratch
        !          2512:  jump EQ,(scratch)
        !          2513:  nop
        !          2514: 
        !          2515:  moveq #0,r0
        !          2516:  move r0,RETURNVALUE
        !          2517: 
        !          2518:  movei #L242,r0
        !          2519:  jump T,(r0)
        !          2520:  nop
        !          2521: 
        !          2522: L245:
        !          2523: 
        !          2524:  load (FP+3),r0 ; local ld
        !          2525:  movei #56,r1
        !          2526:  move r0,r2
        !          2527:  add r1,r2
        !          2528:  load (r2),r1
        !          2529:  move r1,r15 ;(front)
        !          2530:  movei #60,r1
        !          2531:  add r1,r0
        !          2532:  load (r0),r0
        !          2533:  move r0,r16 ;(back)
        !          2534:  moveq #4,r0
        !          2535:  move r15,r1 ;(front)
        !          2536:  add r0,r1
        !          2537:  load (r1),r1
        !          2538:  move r16,r2 ;(back)
        !          2539:  add r0,r2
        !          2540:  load (r2),r0
        !          2541:  cmp r1,r0
        !          2542:  movei #L247,scratch
        !          2543:  jump EQ,(scratch)
        !          2544:  nop
        !          2545:  jump MI,(scratch)
        !          2546:  nop
        !          2547: 
        !          2548:  move FP,r0 ; &opentop
        !          2549:  move r15,r1 ;(front)
        !          2550:  addq #4,r1
        !          2551:  load (r1),r1
        !          2552:  load (r0),r30 ; FUCKING dsp!
        !          2553:  or r30,r30 ; FUCKING dsp!
        !          2554:  store r1,(r0)
        !          2555: 
        !          2556:  movei #L248,r0
        !          2557:  jump T,(r0)
        !          2558:  nop
        !          2559: 
        !          2560: L247:
        !          2561: 
        !          2562:  move FP,r0 ; &opentop
        !          2563:  move r16,r1 ;(back)
        !          2564:  addq #4,r1
        !          2565:  load (r1),r1
        !          2566:  load (r0),r30 ; FUCKING dsp!
        !          2567:  or r30,r30 ; FUCKING dsp!
        !          2568:  store r1,(r0)
        !          2569: 
        !          2570: L248:
        !          2571: 
        !          2572:  load (r15),r0 ;(front)
        !          2573:  load (r16),r1 ;(back)
        !          2574:  cmp r0,r1
        !          2575:  movei #L249,scratch
        !          2576:  jump PL,(scratch)
        !          2577:  nop
        !          2578: 
        !          2579:  move FP,r0
        !          2580:  addq #4,r0 ; &openbottom
        !          2581:  load (r15),r1 ;(front)
        !          2582:  load (r0),r30 ; FUCKING dsp!
        !          2583:  or r30,r30 ; FUCKING dsp!
        !          2584:  store r1,(r0)
        !          2585:  move FP,r0
        !          2586:  addq #8,r0 ; &lowfloor
        !          2587:  load (r16),r1 ;(back)
        !          2588:  load (r0),r30 ; FUCKING dsp!
        !          2589:  or r30,r30 ; FUCKING dsp!
        !          2590:  store r1,(r0)
        !          2591: 
        !          2592:  movei #L250,r0
        !          2593:  jump T,(r0)
        !          2594:  nop
        !          2595: 
        !          2596: L249:
        !          2597: 
        !          2598:  move FP,r0
        !          2599:  addq #4,r0 ; &openbottom
        !          2600:  load (r16),r1 ;(back)
        !          2601:  load (r0),r30 ; FUCKING dsp!
        !          2602:  or r30,r30 ; FUCKING dsp!
        !          2603:  store r1,(r0)
        !          2604:  move FP,r0
        !          2605:  addq #8,r0 ; &lowfloor
        !          2606:  load (r15),r1 ;(front)
        !          2607:  load (r0),r30 ; FUCKING dsp!
        !          2608:  or r30,r30 ; FUCKING dsp!
        !          2609:  store r1,(r0)
        !          2610: 
        !          2611: L250:
        !          2612: 
        !          2613:  load (FP),r0 ; local opentop
        !          2614:  movei #_testceilingz,r1
        !          2615:  load (r1),r1
        !          2616:  cmp r0,r1
        !          2617:  movei #L251,scratch
        !          2618:  jump EQ,(scratch)
        !          2619:  nop
        !          2620:  jump MI,(scratch)
        !          2621:  nop
        !          2622: 
        !          2623:  movei #_testceilingz,r0
        !          2624:  load (FP),r1 ; local opentop
        !          2625:  load (r0),r30 ; FUCKING dsp!
        !          2626:  or r30,r30 ; FUCKING dsp!
        !          2627:  store r1,(r0)
        !          2628:  movei #_ceilingline,r0
        !          2629:  load (FP+3),r1 ; local ld
        !          2630:  load (r0),r30 ; FUCKING dsp!
        !          2631:  or r30,r30 ; FUCKING dsp!
        !          2632:  store r1,(r0)
        !          2633: 
        !          2634: L251:
        !          2635: 
        !          2636:  load (FP+1),r0 ; local openbottom
        !          2637:  movei #_testfloorz,r1
        !          2638:  load (r1),r1
        !          2639:  cmp r0,r1
        !          2640:  movei #L253,scratch
        !          2641:  jump PL,(scratch)
        !          2642:  nop
        !          2643: 
        !          2644:  movei #_testfloorz,r0
        !          2645:  load (FP+1),r1 ; local openbottom
        !          2646:  load (r0),r30 ; FUCKING dsp!
        !          2647:  or r30,r30 ; FUCKING dsp!
        !          2648:  store r1,(r0)
        !          2649: 
        !          2650: L253:
        !          2651: 
        !          2652:  load (FP+2),r0 ; local lowfloor
        !          2653:  movei #_testdropoffz,r1
        !          2654:  load (r1),r1
        !          2655:  cmp r0,r1
        !          2656:  movei #L255,scratch
        !          2657:  jump EQ,(scratch)
        !          2658:  nop
        !          2659:  jump MI,(scratch)
        !          2660:  nop
        !          2661: 
        !          2662:  movei #_testdropoffz,r0
        !          2663:  load (FP+2),r1 ; local lowfloor
        !          2664:  load (r0),r30 ; FUCKING dsp!
        !          2665:  or r30,r30 ; FUCKING dsp!
        !          2666:  store r1,(r0)
        !          2667: 
        !          2668: L255:
        !          2669: 
        !          2670:  moveq #1,r0
        !          2671:  move r0,RETURNVALUE
        !          2672: 
        !          2673: L242:
        !          2674:  jump T,(RETURNPOINT)
        !          2675:  addq #12,FP ; delay slot
        !          2676: 
        !          2677: ;====================
        !          2678: _PB_CheckThing::
        !          2679: ;4 dag registers  4 register variables
        !          2680: ;localoffset:0  regoffset:0  argoffset:0
        !          2681: ;====================
        !          2682: 
        !          2683:  load (FP),r0 ; local thing
        !          2684:  movei #100,r1
        !          2685:  add r1,r0
        !          2686:  load (r0),r0
        !          2687:  moveq #2,r1
        !          2688:  and r1,r0
        !          2689:  moveq #0,r1
        !          2690:  cmp r0,r1
        !          2691:  movei #L258,scratch
        !          2692:  jump NE,(scratch)
        !          2693:  nop
        !          2694: 
        !          2695:  moveq #1,r0
        !          2696:  move r0,RETURNVALUE
        !          2697: 
        !          2698:  movei #L257,r0
        !          2699:  jump T,(r0)
        !          2700:  nop
        !          2701: 
        !          2702: L258:
        !          2703: 
        !          2704:  load (FP),r0 ; local thing
        !          2705:  movei #64,r1
        !          2706:  move r0,r2
        !          2707:  add r1,r2
        !          2708:  load (r2),r2
        !          2709:  movei #_basething,r3
        !          2710:  load (r3),r3
        !          2711:  add r1,r3
        !          2712:  load (r3),r1
        !          2713:  add r1,r2
        !          2714:  move r2,r16 ;(blockdist)
        !          2715:  addq #12,r0
        !          2716:  load (r0),r0
        !          2717:  movei #_testx,r1
        !          2718:  load (r1),r1
        !          2719:  sub r1,r0
        !          2720:  move r0,r15 ;(delta)
        !          2721:  moveq #0,r0
        !          2722:  cmp r15,r0 ;(delta)
        !          2723:  movei #L260,scratch
        !          2724:  jump EQ,(scratch)
        !          2725:  nop
        !          2726:  jump MI,(scratch)
        !          2727:  nop
        !          2728: 
        !          2729:  move r15,r0 ;(delta)
        !          2730:  neg r0
        !          2731:  move r0,r15 ;(delta)
        !          2732: 
        !          2733: L260:
        !          2734: 
        !          2735:  cmp r15,r16 ;(delta)(blockdist)
        !          2736:  movei #L262,scratch
        !          2737:  jump S_LT,(scratch)
        !          2738:  nop
        !          2739: 
        !          2740:  moveq #1,r0
        !          2741:  move r0,RETURNVALUE
        !          2742: 
        !          2743:  movei #L257,r0
        !          2744:  jump T,(r0)
        !          2745:  nop
        !          2746: 
        !          2747: L262:
        !          2748: 
        !          2749:  load (FP),r0 ; local thing
        !          2750:  addq #16,r0
        !          2751:  load (r0),r0
        !          2752:  movei #_testy,r1
        !          2753:  load (r1),r1
        !          2754:  sub r1,r0
        !          2755:  move r0,r15 ;(delta)
        !          2756:  moveq #0,r0
        !          2757:  cmp r15,r0 ;(delta)
        !          2758:  movei #L264,scratch
        !          2759:  jump EQ,(scratch)
        !          2760:  nop
        !          2761:  jump MI,(scratch)
        !          2762:  nop
        !          2763: 
        !          2764:  move r15,r0 ;(delta)
        !          2765:  neg r0
        !          2766:  move r0,r15 ;(delta)
        !          2767: 
        !          2768: L264:
        !          2769: 
        !          2770:  cmp r15,r16 ;(delta)(blockdist)
        !          2771:  movei #L266,scratch
        !          2772:  jump S_LT,(scratch)
        !          2773:  nop
        !          2774: 
        !          2775:  moveq #1,r0
        !          2776:  move r0,RETURNVALUE
        !          2777: 
        !          2778:  movei #L257,r0
        !          2779:  jump T,(r0)
        !          2780:  nop
        !          2781: 
        !          2782: L266:
        !          2783: 
        !          2784:  load (FP),r0 ; local thing
        !          2785:  movei #_basething,r1
        !          2786:  load (r1),r1
        !          2787:  cmp r0,r1
        !          2788:  movei #L268,scratch
        !          2789:  jump NE,(scratch)
        !          2790:  nop
        !          2791: 
        !          2792:  moveq #1,r0
        !          2793:  move r0,RETURNVALUE
        !          2794: 
        !          2795:  movei #L257,r0
        !          2796:  jump T,(r0)
        !          2797:  nop
        !          2798: 
        !          2799: L268:
        !          2800: 
        !          2801:  movei #_testflags,r0
        !          2802:  load (r0),r0
        !          2803:  movei #16777216,r1
        !          2804:  and r1,r0
        !          2805:  moveq #0,r1
        !          2806:  cmp r0,r1
        !          2807:  movei #L270,scratch
        !          2808:  jump EQ,(scratch)
        !          2809:  nop
        !          2810: 
        !          2811:  movei #_hitthing,r0
        !          2812:  load (FP),r1 ; local thing
        !          2813:  load (r0),r30 ; FUCKING dsp!
        !          2814:  or r30,r30 ; FUCKING dsp!
        !          2815:  store r1,(r0)
        !          2816:  moveq #0,r0
        !          2817:  move r0,RETURNVALUE
        !          2818: 
        !          2819:  movei #L257,r0
        !          2820:  jump T,(r0)
        !          2821:  nop
        !          2822: 
        !          2823: L270:
        !          2824: 
        !          2825:  movei #_testflags,r0
        !          2826:  load (r0),r0
        !          2827:  movei #65536,r1
        !          2828:  and r1,r0
        !          2829:  moveq #0,r1
        !          2830:  cmp r0,r1
        !          2831:  movei #L272,scratch
        !          2832:  jump EQ,(scratch)
        !          2833:  nop
        !          2834: 
        !          2835:  movei #_basething,r0
        !          2836:  load (r0),r0
        !          2837:  moveq #20,r1
        !          2838:  add r1,r0
        !          2839:  load (r0),r0
        !          2840:  load (FP),r2 ; local thing
        !          2841:  move r2,r3
        !          2842:  add r1,r3
        !          2843:  load (r3),r1
        !          2844:  movei #68,r3
        !          2845:  add r3,r2
        !          2846:  load (r2),r2
        !          2847:  add r2,r1
        !          2848:  cmp r0,r1
        !          2849:  movei #L274,scratch
        !          2850:  jump PL,(scratch)
        !          2851:  nop
        !          2852: 
        !          2853:  moveq #1,r0
        !          2854:  move r0,RETURNVALUE
        !          2855: 
        !          2856:  movei #L257,r0
        !          2857:  jump T,(r0)
        !          2858:  nop
        !          2859: 
        !          2860: L274:
        !          2861: 
        !          2862:  movei #_basething,r0
        !          2863:  load (r0),r0
        !          2864:  moveq #20,r1
        !          2865:  move r0,r2
        !          2866:  add r1,r2
        !          2867:  load (r2),r2
        !          2868:  movei #68,r3
        !          2869:  add r3,r0
        !          2870:  load (r0),r0
        !          2871:  add r0,r2
        !          2872:  load (FP),r0 ; local thing
        !          2873:  add r1,r0
        !          2874:  load (r0),r0
        !          2875:  cmp r2,r0
        !          2876:  movei #L276,scratch
        !          2877:  jump EQ,(scratch)
        !          2878:  nop
        !          2879:  jump MI,(scratch)
        !          2880:  nop
        !          2881: 
        !          2882:  moveq #1,r0
        !          2883:  move r0,RETURNVALUE
        !          2884: 
        !          2885:  movei #L257,r0
        !          2886:  jump T,(r0)
        !          2887:  nop
        !          2888: 
        !          2889: L276:
        !          2890: 
        !          2891:  movei #_basething,r0
        !          2892:  load (r0),r0
        !          2893:  movei #116,r1
        !          2894:  add r1,r0
        !          2895:  load (r0),r0
        !          2896:  movei #84,r1
        !          2897:  add r1,r0
        !          2898:  load (r0),r0
        !          2899:  load (FP),r2 ; local thing
        !          2900:  add r1,r2
        !          2901:  load (r2),r1
        !          2902:  cmp r0,r1
        !          2903:  movei #L278,scratch
        !          2904:  jump NE,(scratch)
        !          2905:  nop
        !          2906: 
        !          2907:  load (FP),r0 ; local thing
        !          2908:  movei #_basething,r1
        !          2909:  load (r1),r1
        !          2910:  movei #116,r2
        !          2911:  add r2,r1
        !          2912:  load (r1),r1
        !          2913:  cmp r0,r1
        !          2914:  movei #L280,scratch
        !          2915:  jump NE,(scratch)
        !          2916:  nop
        !          2917: 
        !          2918:  moveq #1,r0
        !          2919:  move r0,RETURNVALUE
        !          2920: 
        !          2921:  movei #L257,r0
        !          2922:  jump T,(r0)
        !          2923:  nop
        !          2924: 
        !          2925: L280:
        !          2926: 
        !          2927:  load (FP),r0 ; local thing
        !          2928:  movei #84,r1
        !          2929:  add r1,r0
        !          2930:  load (r0),r0
        !          2931:  moveq #0,r1
        !          2932:  cmp r0,r1
        !          2933:  movei #L282,scratch
        !          2934:  jump EQ,(scratch)
        !          2935:  nop
        !          2936: 
        !          2937:  moveq #0,r0
        !          2938:  move r0,RETURNVALUE
        !          2939: 
        !          2940:  movei #L257,r0
        !          2941:  jump T,(r0)
        !          2942:  nop
        !          2943: 
        !          2944: L282:
        !          2945: 
        !          2946: L278:
        !          2947: 
        !          2948:  load (FP),r0 ; local thing
        !          2949:  movei #100,r1
        !          2950:  add r1,r0
        !          2951:  load (r0),r0
        !          2952:  moveq #4,r1
        !          2953:  and r1,r0
        !          2954:  moveq #0,r1
        !          2955:  cmp r0,r1
        !          2956:  movei #L284,scratch
        !          2957:  jump NE,(scratch)
        !          2958:  nop
        !          2959: 
        !          2960:  load (FP),r0 ; local thing
        !          2961:  movei #100,r1
        !          2962:  add r1,r0
        !          2963:  load (r0),r0
        !          2964:  moveq #2,r1
        !          2965:  and r1,r0
        !          2966:  moveq #0,r1
        !          2967:  cmp r0,r1
        !          2968:  movei #L287,scratch
        !          2969:  jump NE,(scratch)
        !          2970:  nop
        !          2971:  moveq #1,r0
        !          2972:  move r0,r17 ;(286)
        !          2973:  movei #L288,r0
        !          2974:  jump T,(r0)
        !          2975:  nop
        !          2976: L287:
        !          2977:  moveq #0,r0
        !          2978:  move r0,r17 ;(286)
        !          2979: L288:
        !          2980:  move r17,RETURNVALUE ;(286)
        !          2981: 
        !          2982:  movei #L257,r0
        !          2983:  jump T,(r0)
        !          2984:  nop
        !          2985: 
        !          2986: L284:
        !          2987: 
        !          2988:  movei #_hitthing,r0
        !          2989:  load (FP),r1 ; local thing
        !          2990:  load (r0),r30 ; FUCKING dsp!
        !          2991:  or r30,r30 ; FUCKING dsp!
        !          2992:  store r1,(r0)
        !          2993:  moveq #0,r0
        !          2994:  move r0,RETURNVALUE
        !          2995: 
        !          2996:  movei #L257,r0
        !          2997:  jump T,(r0)
        !          2998:  nop
        !          2999: 
        !          3000: L272:
        !          3001: 
        !          3002:  load (FP),r0 ; local thing
        !          3003:  movei #100,r1
        !          3004:  add r1,r0
        !          3005:  load (r0),r0
        !          3006:  moveq #2,r1
        !          3007:  and r1,r0
        !          3008:  moveq #0,r1
        !          3009:  cmp r0,r1
        !          3010:  movei #L290,scratch
        !          3011:  jump NE,(scratch)
        !          3012:  nop
        !          3013:  moveq #1,r0
        !          3014:  move r0,r18 ;(289)
        !          3015:  movei #L291,r0
        !          3016:  jump T,(r0)
        !          3017:  nop
        !          3018: L290:
        !          3019:  moveq #0,r0
        !          3020:  move r0,r18 ;(289)
        !          3021: L291:
        !          3022:  move r18,RETURNVALUE ;(289)
        !          3023: 
        !          3024: L257:
        !          3025:  jump T,(RETURNPOINT)
        !          3026:  nop ; delay slot
        !          3027: 
        !          3028: ;====================
        !          3029: _PB_MoveLinesIterator::
        !          3030: ;3 dag registers  3 register variables
        !          3031: ;localoffset:4  regoffset:4  argoffset:32
        !          3032: ;====================
        !          3033:  subq #32,FP
        !          3034: 
        !          3035:  load (FP+9),r0 ; local y
        !          3036:  movei #_bmapwidth,r1
        !          3037:  load (r1),r1
        !          3038:  move r0,MATH_A
        !          3039:  movei #L303,MATH_RTS
        !          3040:  movei #GPU_IMUL,scratch
        !          3041:  jump T,(scratch)
        !          3042:  move r1,MATH_B ; delay slot
        !          3043: L303:
        !          3044:  move MATH_C,r0
        !          3045:  load (FP+8),r1 ; local x
        !          3046:  add r1,r0
        !          3047:  move r0,r17 ;(offset)
        !          3048:  movei #-1,r0
        !          3049:  move r17,r1 ;(offset)
        !          3050:  sha r0,r1
        !          3051:  movei #_blockmap,r2
        !          3052:  load (r2),r2
        !          3053:  add r2,r1
        !          3054:  loadw (r1),r1
        !          3055:  movei #$ffff8000,scratch
        !          3056:  add scratch,r1
        !          3057:  xor scratch,r1
        !          3058:  move r1,r17 ;(offset)
        !          3059:  move r17,r1 ;(offset)
        !          3060:  sha r0,r1
        !          3061:  movei #_blockmaplump,r0
        !          3062:  load (r0),r0
        !          3063:  add r0,r1
        !          3064:  move r1,r16 ;(list)
        !          3065: 
        !          3066:  movei #L296,r0
        !          3067:  jump T,(r0)
        !          3068:  nop
        !          3069: 
        !          3070: L293:
        !          3071: 
        !          3072:  movei #76,r0
        !          3073:  loadw (r16),r1 ;(list)
        !          3074:  movei #$ffff8000,scratch
        !          3075:  add scratch,r1
        !          3076:  xor scratch,r1
        !          3077:  move r0,MATH_A
        !          3078:  movei #L304,MATH_RTS
        !          3079:  movei #GPU_IMUL,scratch
        !          3080:  jump T,(scratch)
        !          3081:  move r1,MATH_B ; delay slot
        !          3082: L304:
        !          3083:  move MATH_C,r0
        !          3084:  movei #_lines,r1
        !          3085:  load (r1),r1
        !          3086:  add r1,r0
        !          3087:  move r0,r15 ;(ld)
        !          3088:  movei #64,r0
        !          3089:  move r15,r1 ;(ld)
        !          3090:  add r0,r1
        !          3091:  load (r1),r0
        !          3092:  movei #_validcount,r1
        !          3093:  load (r1),r1
        !          3094:  cmp r0,r1
        !          3095:  movei #L297,scratch
        !          3096:  jump NE,(scratch)
        !          3097:  nop
        !          3098: 
        !          3099:  movei #L294,r0
        !          3100:  jump T,(r0)
        !          3101:  nop
        !          3102: 
        !          3103: L297:
        !          3104: 
        !          3105:  movei #64,r0
        !          3106:  move r15,r1 ;(ld)
        !          3107:  add r0,r1
        !          3108:  movei #_validcount,r0
        !          3109:  load (r0),r0
        !          3110:  load (r1),r30 ; FUCKING dsp!
        !          3111:  or r30,r30 ; FUCKING dsp!
        !          3112:  store r0,(r1)
        !          3113: 
        !          3114:  store r15,(FP) ; arg[] ;(ld)
        !          3115:  movei #_PB_BoxCrossLine,r0
        !          3116:  store r28,(FP+1) ; push ;(RETURNPOINT)
        !          3117:  store r17,(FP+2) ; push ;(offset)
        !          3118:  store r16,(FP+3) ; push ;(list)
        !          3119:  movei #L305,RETURNPOINT
        !          3120:  jump T,(r0)
        !          3121:  store r15,(FP+4) ; delay slot push ;(ld)
        !          3122: L305:
        !          3123:  load (FP+2),r17 ; pop ;(offset)
        !          3124:  load (FP+3),r16 ; pop ;(list)
        !          3125:  load (FP+4),r15 ; pop ;(ld)
        !          3126:  load (FP+1), RETURNPOINT ; pop
        !          3127:  moveq #0,r0
        !          3128:  cmp r29,r0 ;(RETURNVALUE)
        !          3129:  movei #L299,scratch
        !          3130:  jump EQ,(scratch)
        !          3131:  nop
        !          3132: 
        !          3133:  store r15,(FP) ; arg[] ;(ld)
        !          3134:  movei #_PB_CheckLine,r0
        !          3135:  store r28,(FP+1) ; push ;(RETURNPOINT)
        !          3136:  store r17,(FP+2) ; push ;(offset)
        !          3137:  store r16,(FP+3) ; push ;(list)
        !          3138:  movei #L306,RETURNPOINT
        !          3139:  jump T,(r0)
        !          3140:  store r15,(FP+4) ; delay slot push ;(ld)
        !          3141: L306:
        !          3142:  load (FP+2),r17 ; pop ;(offset)
        !          3143:  load (FP+3),r16 ; pop ;(list)
        !          3144:  load (FP+4),r15 ; pop ;(ld)
        !          3145:  load (FP+1), RETURNPOINT ; pop
        !          3146:  moveq #0,r0
        !          3147:  cmp r29,r0 ;(RETURNVALUE)
        !          3148:  movei #L301,scratch
        !          3149:  jump NE,(scratch)
        !          3150:  nop
        !          3151: 
        !          3152:  moveq #0,r0
        !          3153:  move r0,RETURNVALUE
        !          3154: 
        !          3155:  movei #L292,r0
        !          3156:  jump T,(r0)
        !          3157:  nop
        !          3158: 
        !          3159: L301:
        !          3160: 
        !          3161: L299:
        !          3162: 
        !          3163: L294:
        !          3164: 
        !          3165:  move r16,r0 ;(list)
        !          3166:  addq #2,r0
        !          3167:  move r0,r16 ;(list)
        !          3168: 
        !          3169: L296:
        !          3170: 
        !          3171:  loadw (r16),r0 ;(list)
        !          3172:  movei #$ffff8000,scratch
        !          3173:  add scratch,r0
        !          3174:  xor scratch,r0
        !          3175:  movei #-1,r1
        !          3176:  cmp r0,r1
        !          3177:  movei #L293,scratch
        !          3178:  jump NE,(scratch)
        !          3179:  nop
        !          3180: 
        !          3181:  moveq #1,r0
        !          3182:  move r0,RETURNVALUE
        !          3183: 
        !          3184: L292:
        !          3185:  jump T,(RETURNPOINT)
        !          3186:  addq #32,FP ; delay slot
        !          3187: 
        !          3188: ;====================
        !          3189: _PB_MoveThingsIterator::
        !          3190: ;2 dag registers  1 register variables
        !          3191: ;localoffset:4  regoffset:4  argoffset:20
        !          3192: ;====================
        !          3193:  subq #20,FP
        !          3194: 
        !          3195:  load (FP+6),r0 ; local y
        !          3196:  movei #_bmapwidth,r1
        !          3197:  load (r1),r1
        !          3198:  move r0,MATH_A
        !          3199:  movei #L314,MATH_RTS
        !          3200:  movei #GPU_IMUL,scratch
        !          3201:  jump T,(scratch)
        !          3202:  move r1,MATH_B ; delay slot
        !          3203: L314:
        !          3204:  move MATH_C,r0
        !          3205:  load (FP+5),r1 ; local x
        !          3206:  add r1,r0
        !          3207:  shlq #2,r0
        !          3208:  movei #_blocklinks,r1
        !          3209:  load (r1),r1
        !          3210:  add r1,r0
        !          3211:  load (r0),r0
        !          3212:  move r0,r15 ;(mobj)
        !          3213: 
        !          3214:  movei #L311,r0
        !          3215:  jump T,(r0)
        !          3216:  nop
        !          3217: 
        !          3218: L308:
        !          3219: 
        !          3220:  store r15,(FP) ; arg[] ;(mobj)
        !          3221:  movei #_PB_CheckThing,r0
        !          3222:  store r28,(FP+1) ; push ;(RETURNPOINT)
        !          3223:  movei #L315,RETURNPOINT
        !          3224:  jump T,(r0)
        !          3225:  store r15,(FP+2) ; delay slot push ;(mobj)
        !          3226: L315:
        !          3227:  load (FP+2),r15 ; pop ;(mobj)
        !          3228:  load (FP+1), RETURNPOINT ; pop
        !          3229:  moveq #0,r0
        !          3230:  cmp r29,r0 ;(RETURNVALUE)
        !          3231:  movei #L312,scratch
        !          3232:  jump NE,(scratch)
        !          3233:  nop
        !          3234: 
        !          3235:  moveq #0,r0
        !          3236:  move r0,RETURNVALUE
        !          3237: 
        !          3238:  movei #L307,r0
        !          3239:  jump T,(r0)
        !          3240:  nop
        !          3241: 
        !          3242: L312:
        !          3243: 
        !          3244: L309:
        !          3245: 
        !          3246:  movei #44,r0
        !          3247:  move r15,r1 ;(mobj)
        !          3248:  add r0,r1
        !          3249:  load (r1),r0
        !          3250:  move r0,r15 ;(mobj)
        !          3251: 
        !          3252: L311:
        !          3253: 
        !          3254:  move r15,r0 ;(mobj)
        !          3255:  moveq #0,r1
        !          3256:  cmp r0,r1
        !          3257:  movei #L308,scratch
        !          3258:  jump NE,(scratch)
        !          3259:  nop
        !          3260: 
        !          3261:  moveq #1,r0
        !          3262:  move r0,RETURNVALUE
        !          3263: 
        !          3264: L307:
        !          3265:  jump T,(RETURNPOINT)
        !          3266:  addq #20,FP ; delay slot
        !          3267: 
        !          3268: ;=======================
        !          3269: 
        !          3270:  .extern _PB_UnsetThingPosition
        !          3271:  .extern _PB_PointInSubsector
        !          3272:  .long
        !          3273: _testflags::
        !          3274:  .dc.l 0
        !          3275:  .long
        !          3276: _testbbox::
        !          3277:  .dc.l 0
        !          3278:  .dc.l 0
        !          3279:  .dc.l 0
        !          3280:  .dc.l 0
        !          3281:  .long
        !          3282: _hitthing::
        !          3283:  .dc.l 0
        !          3284:  .long
        !          3285: _ceilingline::
        !          3286:  .dc.l 0
        !          3287:  .long
        !          3288: _testsubsec::
        !          3289:  .dc.l 0
        !          3290:  .long
        !          3291: _testdropoffz::
        !          3292:  .dc.l 0
        !          3293:  .long
        !          3294: _testceilingz::
        !          3295:  .dc.l 0
        !          3296:  .long
        !          3297: _testfloorz::
        !          3298:  .dc.l 0
        !          3299:  .long
        !          3300: _testy::
        !          3301:  .dc.l 0
        !          3302:  .long
        !          3303: _testx::
        !          3304:  .dc.l 0
        !          3305:  .long
        !          3306: _basething::
        !          3307:  .dc.l 0
        !          3308:  .extern _blocklinks
        !          3309:  .extern _bmaporgy
        !          3310:  .extern _bmaporgx
        !          3311:  .extern _bmapheight
        !          3312:  .extern _bmapwidth
        !          3313:  .extern _blockmap
        !          3314:  .extern _blockmaplump
        !          3315:  .extern _P_ExplodeMissile
        !          3316:  .extern _L_MissileHit
        !          3317:  .extern _L_SkullBash
        !          3318:  .extern _P_RemoveMobj
        !          3319:  .extern _activemobjs
        !          3320:  .extern _mobjhead
        !          3321:  .extern _validcount
        !          3322:  .extern _lines
        !          3323:  .extern _states
        !          3324: 
        !          3325:        .phrase
        !          3326:        .68000
        !          3327: codeend:

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.