SHARE
TWEET

WIP Dr. Mario (Game Boy) disassembly

ISSOtm Feb 22nd, 2018 106 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2.  
  3. INCLUDE "constants.asm"
  4. INCLUDE "charmap.asm"
  5.  
  6.  
  7. SECTION "ROM", ROM0[$0000]
  8.  
  9. Reset:
  10.     jp   Init
  11.  
  12.     ; Uninit'd data ?
  13.     nop
  14.     nop
  15.     nop
  16.     nop
  17.     nop
  18.  
  19. PerformDelay:
  20.     push bc
  21.     ld   b,$FA
  22.     ld   b,b
  23.     dec  b
  24.     jr   nz,PerformDelay
  25.     pop  bc
  26. ; 0010
  27.     ret
  28.  
  29.     ; Uninit'd data ?
  30.     rst  $38
  31.     cp   a
  32.     rst  $38
  33.     xor  a
  34.     ld   a,a
  35.     xor  a,$FF
  36.  
  37. CopyString:
  38.     ld   a,[de]
  39.     cp   a,$FF
  40.     ret  z
  41.     ldi  [hl],a
  42.     inc  de
  43.     jr   CopyString
  44.  
  45.     ; Uninit'd data ?
  46. ; 0020
  47.     rst  $28
  48.     rst  $38
  49.     rst  $28
  50.     rst  $38
  51.     ld   [wUnk_FBFE],a
  52.     rst  $38
  53.  
  54. JumpTableBelow:
  55.     add  a
  56.     pop  hl
  57.     ld   e,a
  58.     ld   d,$00
  59.     add  hl,de
  60.     ld   e,[hl]
  61.     inc  hl
  62. ; 0030
  63.     ld   d,[hl]
  64.     push de
  65.     pop  hl
  66.     jp   hl
  67.  
  68.     ; Uninit'd data ?
  69.     cp   e
  70.     rst  $38
  71.     rst  $38
  72.     rst  $38
  73. ; 0038
  74.     cp   a
  75.     rst  $38
  76.     cp   d
  77.     rst  $38
  78.     xor  a,$FF
  79.     xor  d
  80.     rst  $38
  81.  
  82. VBlankInt:
  83.     jp   VBlankHandler
  84.  
  85.     ; Uninit'd data ?
  86.     rst  $38
  87.     cp   a
  88.     rst  $38
  89.     cp   [hl]
  90.     rst  $38
  91.  
  92. STATInt:
  93.     jp   LCDHandler
  94.  
  95.     ; Uninit'd data ?
  96.     rst  $38
  97.     cp   d
  98.     rst  $38
  99.     rst  $38
  100.     rst  $38
  101.  
  102. TimerInt:
  103.     jp   TimerHandler
  104.  
  105.     ; Uninit'd data ?
  106.     rst  $38
  107.     xor  a
  108.     rst  $38
  109.     xor  a
  110.     db   $FD
  111.  
  112. SerialInt:
  113.     push af
  114.     push bc
  115.     ldh  a,[rSB]
  116.     ldh  [hSerialRecieved],a
  117.     ld   b,a
  118.     ld   a,[wUnk_C4F1]
  119.     and  a
  120.     jr   z,.unk_008B
  121.     ldh  a,[hUnk_FFE4]
  122.     and  a
  123.     jr   nz,.unk_008B
  124.     ld   a,[wUnk_C0A5]
  125.     and  a
  126.     ldh  a,[hSerialRecieved]
  127.     jr   nz,.unk_007F
  128.     cp   a,$FE
  129.     jr   nz,.unk_008E
  130.     ld   a,$01
  131.     ldh  [hUnk_FFDC],a
  132.     ld   [wUnk_C0A5],a
  133.     jr   .unk_008E
  134. .unk_0007F
  135.     ld   [wUnk_C0A4],a
  136.     ld   [wUnk_D020],a
  137.     xor  a
  138.     ld   [wUnk_C0A5],a
  139.     jr   .unk_008E
  140. .unk_008B
  141.     ld   a,b
  142.     ldh  [hUnk_FFD0],a
  143. .unk_008E
  144.     xor  a
  145.     ld   [wUnk_D008],a
  146.     inc  a
  147.     ldh  [hSerialTransferDone],a
  148.  
  149.     ldh  a,[hSerialRole]
  150.     cp   a,SERIAL_ROLE_MASTER
  151.     jr   z,.unk_00BF
  152.     ldh  a,[hSerialNext]
  153.     ldh  [rSB],a
  154.     call Unk_0153
  155.     ldh  a,[hSerialRecieved]
  156.     cp   a,$F0
  157.     jp   z,Init
  158.     xor  a
  159.     ldh  [rSC],a
  160.     ld   a,$80
  161.     ldh  [rSC],a
  162.     ldh  a,[hTwoPlayerMode]
  163.     and  a
  164.     jr   z,.unk_00BF
  165.     ld   a,[wHasGameStarted]
  166.     and  a
  167.     jr   z,.unk_00BF
  168.     ld   a,$E0
  169.     ldh  [hSerialNext],a
  170. .unk_00BF
  171.     pop  bc
  172.     pop  af
  173.     reti
  174.  
  175. Unk_00C2:
  176.     ldh  a,[hUnk_FFB5]
  177.     ld   d,a
  178.     ldh  a,[hUnk_FFB4]
  179.     ld   e,a
  180.     ld   b,$04
  181. .unk_00CA
  182.     rr   d
  183.     rr   e
  184.     dec  b
  185.     jr   nz,.unk_00CA
  186.     ld   a,e
  187.     sub  a,$84
  188.     and  a,$FE
  189.     rlca
  190.     rlca
  191.     add  a,$08
  192.     ldh  [hUnk_FFB2],a
  193.     ldh  a,[hUnk_FFB4]
  194.     and  a,$1F
  195.     rla
  196.     rla
  197.     rla
  198.     add  a,$08
  199.     ldh  [hUnk_FFB3],a
  200.     ret
  201.  
  202. Unk_00E8:
  203.     rla
  204.     rla
  205.     add  a,$08
  206.     ldh  [hUnk_FFB3],a
  207.     ret
  208.  
  209.     ; Uninit'd data ?
  210.     rst  $38
  211.     xor  a
  212.     cp   a
  213.     cp   d
  214.     rst  $38
  215.     db   $EB
  216.     rst  $38
  217.     ei
  218.     rst  $38
  219.     xor  [hl]
  220.     rst  $38
  221.     rst  $38
  222.     rst  $38
  223.     cp   [hl]
  224.     rst  $38
  225.     ei
  226.     rst  $38
  227.  
  228.  
  229. ROMEntryPoint:
  230.     nop
  231.     jp   EntryPoint
  232.  
  233.     NINTENDO_LOGO
  234.     db   "DR.MARIO",0,0,0,0,0,0,0
  235.     db   CART_COMPATIBLE_DMG ; DMG - classic gameboy
  236.     db   $00,$00             ; new license
  237.     db   $00                 ; SGB flag: not SGB capable
  238.     db   CART_ROM            ; cart type: ROM
  239.     db   CART_ROM            ; ROM size: 32 KiB
  240.     db   CART_RAM_NONE       ; RAM size: 0 B
  241.     db   $00                 ; destination code: Japanese
  242.     db   $01                 ; old license: not SGB capable
  243.     db   $00                 ; mask ROM version number
  244.     db   $AA                 ; header check (OK)
  245.     db   $01,$FD             ; global check (okay)
  246.  
  247. EntryPoint:
  248.     jp   Init
  249.  
  250.  
  251. Unk_0153:
  252.     ld   bc,$D00E
  253.     ld   a,[bc]
  254.     and  a
  255.     jr   nz,.unk_0167
  256.     ldh  a,[hSerialNext]
  257.     cp   a,$FE
  258.     jr   nz,.unk_0164
  259.     ld   a,$01
  260.     jr   .unk_0165
  261. .unk_0164
  262.     xor  a
  263. .unk_0165
  264.     ld   [bc],a
  265.     ret
  266. .unk_0167
  267.     ld   a,[wUnk_D046]
  268.     ldh  [rSB],a
  269.     jr   .unk_0164
  270.  
  271. Unk_016E:
  272.     call Unk_2359
  273. .waitHBlank1
  274.     ldh  a,[rSTAT]
  275.     and  a,$03
  276.     jr   nz,.waitHBlank1
  277.     ld   b,[hl]
  278. .waitHBlank2
  279.     ldh  a,[rSTAT]
  280.     and  a,$03
  281.     jr   nz,.waitHBlank2
  282.     ld   a,[hl]
  283.     and  b
  284.     ret
  285.  
  286. Unk_0181: ; Adds DE to the score pointed to by hl, with a 9 99 99 99 cap
  287.     ld   a,e
  288.     add  [hl]
  289.     daa
  290.     ldi  [hl],a
  291.     ld   a,d
  292.     adc  [hl]
  293.     daa
  294.     ldi  [hl],a
  295.     ld   a,$00
  296.     adc  [hl]
  297.     daa
  298.     ldi  [hl],a
  299.     ld   a,$00
  300.     adc  [hl]
  301.     daa
  302.     ld   [hl],a
  303.     ld   a,$01
  304.     ldh  [hUnk_FFE0],a
  305.     ld   a,[hl]
  306.     swap a
  307.     and  a,$0F
  308.     ret  z
  309.     ld   a,$09
  310.     ldd  [hl],a
  311.     ld   a,$99
  312.     ldd  [hl],a
  313.     ldd  [hl],a
  314.     ld   [hl],a
  315.     ret
  316.  
  317. VBlankHandler:
  318.     push af
  319.     push bc
  320.     push de
  321.     push hl
  322.     ldh  a,[hTwoPlayerMode]
  323.     and  a
  324.     jr   z,.unk_01BA
  325.     ld   a,[wHasGameStarted]
  326.     and  a
  327.     jr   z,.unk_01BA
  328.     ldh  a,[hWaitFrames]
  329.     and  a
  330.     jr   nz,.dontTransferSprites
  331. .unk_01BA
  332.     ldh  a,[hGameStatus]
  333.     cp   a,$03
  334.     jr   z,.dontTransferSprites
  335.     call hDMARoutine
  336. .dontTransferSprites
  337.     call Unk_2E2D
  338.     ldh  a,[hTwoPlayerMode]
  339.     and  a
  340.     jr   nz,.unk_01D4
  341.     ld   de,$C0A3
  342.     ld   hl,$984C
  343.     call Unk_257B
  344. .unk_01D4
  345.     ldh  a,[hTwoPlayerMode]
  346.     and  a
  347.     jr   z,.skipRemovedCode
  348.     ld   a,[wHasGameStarted]
  349.     and  a
  350.     jr   z,.skipRemovedCode
  351. .skipRemovedCode
  352.     ld   a,$01
  353.     ldh  [hVBlankStatus],a
  354.     pop  hl
  355.     pop  de
  356.     pop  bc
  357.     pop  af
  358.     reti
  359.  
  360. Init:
  361.     xor  a
  362.     ld   hl,$DFFF
  363.     ld   c,$10
  364.     ld   b,$00
  365. .clearWRAM1
  366.     ldd  [hl],a
  367.     dec  b
  368.     jr   nz,.clearWRAM1
  369.     dec  c
  370.     jr   nz,.clearWRAM1
  371.     ld   a,$0D
  372.     di
  373.     ldh  [rIF],a
  374.     ldh  [rIE],a
  375.     xor  a
  376.     ldh  [rSCY],a
  377.     ldh  [rSCX],a
  378.     ldh  [hUnk_FFA4],a
  379.     ldh  [rSTAT],a
  380.     ldh  [rSB],a
  381.     ldh  [rSC],a
  382.     ld   [wUnk_D000],a
  383.     ld   [wUnk_D001],a
  384.     ld   a,$80
  385.     ldh  [rLCDC],a
  386. .waitVBlank
  387.     ldh  a,[rLY]
  388.     cp   a,$94
  389.     jr   nz,.waitVBlank
  390.     ld   a,$03
  391.     ldh  [rLCDC],a
  392.     ld   a,$E1
  393.     ldh  [rBGP],a
  394.     ldh  [rOBP0],a
  395.     ld   a,$E5
  396.     ldh  [rOBP1],a
  397.     ld   hl,$FF26
  398.     ld   a,$80
  399.     ldd  [hl],a
  400.     ld   a,$FF
  401.     ldd  [hl],a
  402.     ld   [hl],$77
  403.     ld   hl,rTMA
  404.     ld   a,$BF
  405.     ldi  [hl],a
  406.     ld   a,$04
  407.     ld   [hl],a
  408.     ld   a,$01
  409.     ld   [Bankswitch],a
  410.     ld   sp,wStackBottom
  411.     xor  a
  412.     ld   hl,$DFFF
  413.     ld   b,$00
  414. .clearDFXX
  415.     ldd  [hl],a
  416.     dec  b
  417.     jr   nz,.clearDFXX
  418.     ld   hl,wStackBottom
  419.     ld   c,$10
  420.     ld   b,$00
  421. .clearWRAM0
  422.     ldd  [hl],a
  423.     dec  b
  424.     jr   nz,.clearWRAM0
  425.     dec  c
  426.     jr   nz,.clearWRAM0
  427.     ld   hl,$9FFF
  428.     ld   c,$20
  429.     xor  a
  430.     ld   b,$00
  431. .clearVRAM
  432.     ldd  [hl],a
  433.     dec  b
  434.     jr   nz,.clearVRAM
  435.     dec  c
  436.     jr   nz,.clearVRAM
  437.     ld   hl,$FEFF
  438.     ld   b,$00
  439. .clearFEXX
  440.     ldd  [hl],a
  441.     dec  b
  442.     jr   nz,.clearFEXX
  443.     ld   hl,$FFFE
  444.     ld   b,$80
  445. .clearHRAM
  446.     ldd  [hl],a
  447.     dec  b
  448.     jr   nz,.clearHRAM
  449.     ld   c,$B6
  450.     ld   b,$0A
  451.     ld   hl,DMARoutine
  452. .copyDMARoutine
  453.     ldi  a,[hl]
  454.     ld   [c],a
  455.     inc  c
  456.     dec  b
  457.     jr   nz,.copyDMARoutine
  458.     call Clear9800Map
  459.     call JumpToInitMusic
  460.     call CopyTiles
  461.     ld   a,$0D
  462.     ldh  [rIE],a
  463.     ld   a,$80
  464.     ldh  [rLCDC],a
  465.     xor  a
  466.     ldh  [rIF],a
  467.     ldh  [rWY],a
  468.     ldh  [rWX],a
  469.     ldh  [hGameStatus],a
  470.     ldh  [hUnk_FF9C],a
  471.     ei
  472.  
  473. MainLoop:
  474.     di
  475.     ld   a,[wHasGameStarted]
  476.     and  a
  477.     jr   z,.skipSerialStuff
  478.     ldh  a,[hSerialTransferDone]
  479.     and  a
  480.     ld   a,$00
  481.     ldh  [hSerialTransferDone],a
  482.     jr   nz,.unk_02BC
  483.     ld   a,$E0
  484.     jr   .unk_02BE
  485. .unk_02BC
  486.     ldh  a,[hSerialRecieved]
  487. .unk_02BE
  488.     ldh  [hUnk_FFD0],a
  489. .skipSerialStuff
  490.     ei
  491.     call Unk_SerialRelated
  492.     call PollJoypad
  493.     ld   hl,wUnk_Request
  494.     ld   a,[hl]
  495.     and  a
  496.     jr   z,.unk_02D3
  497.     xor  a
  498.     ld   [hl],a
  499.     call Unk_3002
  500. .unk_02D3
  501.     call GameStatus_Dispatch
  502.     ldh  a,[hIsDemoActive]
  503.     and  a
  504.     jr   nz,.unk_033A
  505.     ldh  a,[hTwoPlayerMode]
  506.     and  a
  507.     jr   z,.unk_0311
  508.     ld   a,[wHasGameStarted]
  509.     and  a
  510.     jr   z,.unk_02F1
  511.     ldh  a,[hUnk_FFAB]
  512.     and  a
  513.     jr   nz,.unk_02F1
  514.     call Unk_0364
  515.     call Unk_03E4
  516. .unk_02F1
  517.     ldh  a,[hUnk_FFDE]
  518.     ld   [wUnk_DF8F],a
  519.     and  a
  520.     jr   z,.unk_0305
  521.     cp   a,$01
  522.     jr   z,.unk_0309
  523.     cp   a,$02
  524.     jr   z,.unk_030D
  525.     ld   a,$D8
  526.     jr   .unk_030F
  527. .unk_0305
  528.     ld   a,$BF
  529.     jr   .unk_030F
  530. .unk_0309
  531.     ld   a,$C8
  532.     jr   .unk_030F
  533. .unk_030D
  534.     ld   a,$D0
  535. .unk_030F
  536.     ldh  [rTMA],a
  537. .unk_0311
  538.     ldh  a,[hSerialRole]
  539.     cp   a,$60
  540.     jr   z,.unk_033A
  541.     ldh  a,[hJoyHeld]
  542.     and  a,$0F
  543.     cp   a,$0F
  544.     jr   nz,.unk_033A
  545.     ldh  a,[hTwoPlayerMode]
  546.     and  a
  547.     jp   z,Init
  548.     rst  $08
  549.     rst  $08
  550.     xor  a
  551.     ldh  [hSerialTransferDone],a
  552.     ld   a,$F0
  553.     ldh  [rSB],a
  554.     ld   a,$81
  555.     ldh  [rSC],a
  556. .unk_0332
  557.     ldh  a,[hSerialTransferDone]
  558.     and  a
  559.     jr   z,.unk_0332
  560.     jp   Init
  561.  
  562. .unk_033A
  563.     ld   hl,hUnk_FFA6
  564.     ld   b,$02
  565. .unk_033F
  566.     ld   a,[hl]
  567.     and  a
  568.     jr   z,.unk_0344
  569.     dec  [hl]
  570. .unk_0344
  571.     inc  l
  572.     dec  b
  573.     jr   nz,.unk_033F
  574.     ld   hl,hUnk_FFE2
  575.     inc  [hl]
  576.     ld   hl,hUnk_FFE5
  577.     inc  [hl]
  578.     ld   hl,hUnk_FFE6
  579.     inc  [hl]
  580.     ld   hl,hUnk_FFE7
  581.     inc  [hl]
  582. .waitVBlank
  583.     halt
  584.     ldh  a,[hVBlankStatus]
  585.     and  a
  586.     jr   z,.waitVBlank
  587.     xor  a
  588.     ldh  [hVBlankStatus],a
  589.     jp   MainLoop
  590.  
  591. Unk_0364:
  592.     ldh  a,[hUnk_FFDC]
  593.     and  a
  594.     jr   nz,.unk_03A3
  595.     ldh  a,[hUnk_FFD0]
  596.     cp   a,$FD
  597.     jr   z,.unk_0379
  598.     cp   a,$F8
  599.     jr   z,.unk_0394
  600.     cp   a,$55
  601.     ret  nc
  602.     ldh  [hUnk_FFD3],a
  603.     ret
  604. .unk_0379
  605.     xor  a
  606.     ldh  [hUnk_FFD0],a
  607.     ld   a,$F8
  608.     ldh  [hUnk_FFF4],a
  609.     ld   b,$17
  610.     ldh  a,[hTwoPlayerMode]
  611.     and  a
  612.     jr   nz,.unk_038C
  613.     ld   a,$01
  614.     ldh  [hGameMode],a
  615.     ret
  616.  
  617. .unk_038C
  618.     ld   a,$10
  619.     ldh  [hUnk_FFA6],a
  620.     ld   a,b
  621.     ldh  [hGameStatus],a
  622.     ret
  623. .unk_0394
  624.     ld   a,$FD
  625.     ldh  [hUnk_FFF4],a
  626.     ld   b,$0F
  627.     ldh  a,[hTwoPlayerMode]
  628.     and  a
  629.     jr   z,.unk_038C
  630.     ld   b,$17
  631.     jr   .unk_038C
  632.  
  633. .unk_03A3
  634.     ld   a,[wUnk_C0A4]
  635.     and  a
  636.     ret  z
  637.     cp   a,$E0
  638.     ret  z
  639.     ld   b,a
  640. .unk_03AC
  641.     ld   a,b
  642.     and  a,$C0
  643.     jr   nz,.unk_03B7
  644.     sla  b
  645.     sla  b
  646.     jr   .unk_03AC
  647. .unk_03B7
  648.     ld   c,b
  649.     ldh  a,[hUnk_FFD9]
  650.     ld   d,a
  651. .unk_03BB
  652.     ld   a,d
  653.     and  a,$C0
  654.     jr   nz,.unk_03D1
  655.     ld   a,c
  656.     and  a,$C0
  657.     jr   z,.unk_03DE
  658.     sla  c
  659.     rl   d
  660.     sla  c
  661.     rl   d
  662.     ld   a,c
  663.     and  a
  664.     jr   nz,.unk_03BB
  665. .unk_03D1
  666.     ld   a,d
  667.     ldh  [hUnk_FFD9],a
  668.     ld   [wUnk_D016],a
  669.     xor  a
  670.     ldh  [hUnk_FFDC],a
  671.     ld   [wUnk_C0A4],a
  672.     ret
  673. .unk_03DE
  674.     sla  c
  675.     sla  c
  676.     jr   .unk_03C0
  677.  
  678. Unk_03E4:
  679.     ld   de,$D008
  680.     ld   hl,$FFDD
  681.     ld   a,[hl]
  682.     cp   a,$02
  683.     jr   z,.unk_0416
  684.     cp   a,$01
  685.     jr   z,.unk_0409
  686.     ld   a,[de]
  687.     and  a
  688.     ret  nz
  689.     ld   a,[wUnk_D00E]
  690.     and  a
  691.     jr   nz,.unk_0400
  692.     ldh  a,[hUnk_FFD1]
  693.     jr   .unk_0403
  694. .unk_0400
  695.     ld   a,[wUnk_D046]
  696. .unk_0403
  697.     ldh  [hSerialNext],a
  698.     ld   a,[de]
  699.     inc  a
  700.     ld   [de],a
  701.     ret
  702.  
  703. .unk_0409
  704.     ld   a,[de]
  705.     and  a
  706.     ret  nz
  707.     ld   a,$FE
  708.     ldh  [hSerialNext],a
  709.     ld   a,[de]
  710.     inc  a
  711.     ld   [de],a
  712.     ld   [hl],$02
  713.     ret
  714.  
  715. .unk_0416
  716.     ld   a,[de]
  717.     and  a
  718.     ret  nz
  719.     ldh  a,[hUnk_FFD8]
  720.     ldh  [hSerialNext],a
  721.     ld   [wUnk_D046],a
  722.     xor  a
  723.     ldh  [hUnk_FFD8],a
  724.     ld   [hl],a
  725.     inc  a
  726.     ld   [de],a
  727.     ldh  a,[hSerialRole]
  728.     cp   a,$60
  729.     ld   a,$0B
  730.     jr   z,.unk_0430
  731.     ld   a,$08
  732. .unk_0430
  733.     ld   [wUnk_DFE0],a
  734.     ret
  735.  
  736. Unk_SerialRelated:
  737.     ld   a,[wUnk_D03A]
  738.     and  a
  739.     ret  nz
  740.     ldh  a,[hSerialRole]
  741.     cp   a,$30
  742.     ret  nz
  743.     ldh  a,[hSerialNext]
  744.     ldh  [rSB],a
  745.     call Unk_0153
  746.     xor  a
  747.     ld   [wUnk_D008],a
  748.     ld   a,[wHasGameStarted]
  749.     and  a
  750.     jr   nz,.unk_0450
  751.     rst  $08
  752. .unk_0450
  753.     ld   a,$81
  754.     ldh  [rSC],a
  755.     ret
  756.  
  757. GameStatus_Dispatch:
  758.     ldh  a,[hGameStatus]
  759.     rst  $28
  760.  
  761.     dw InitTitleScreen
  762.     dw ProcessTitleScreen
  763.     dw PlayGame
  764.     dw Unk_2FC6
  765.     dw Unk_0EB4
  766.     dw Unk_0FC8
  767.     dw Unk_1139
  768.     dw Unk_14F4
  769.     dw Unk_1590
  770.     dw Unk_0BE8
  771.     dw Unk_336F
  772.     dw Unk_0588
  773.     dw Unk_0679
  774.     dw Unk_0848
  775.     dw Unk_09D6
  776.     dw Unk_12F5
  777.     dw Unk_13B8
  778.     dw Unk_1432
  779.     dw Unk_20FB
  780.     dw Unk_1601
  781.     dw Unk_059B
  782.     dw Unk_21AF
  783.     dw Unk_0DEB
  784.     dw Unk_12AB
  785.     dw Unk_1674
  786.     dw Unk_3258
  787.     dw Unk_16E8
  788.     dw Unk_14A3
  789.     dw Unk_20C8
  790.  
  791. InitTitleScreen:
  792.     call ShutLCDDown
  793.     call ClearOAMBuffer
  794.     ld   de,TitleScreenTileMap
  795.     call PrintTileMap
  796.     ld   a,LCDCF_ON | LCDCF_OBJON | LCDCF_BGON
  797.     ldh  [rLCDC],a
  798.  
  799.     xor  a
  800.     ld   [wUnk_D03A],a
  801.     ldh  [rSB],a
  802.     ldh  [hSerialNext],a
  803.     ldh  [hUnk_FFD0],a
  804.     ldh  [hSerialRecieved],a
  805.     ldh  [hTwoPlayerMode],a
  806.     ld   [wHasGameStarted],a
  807.     inc  a
  808.     ldh  [hGameStatus],a
  809.     ldh  [hIsDemoActive],a
  810.  
  811.     ; Place heart
  812.     ld   hl,wOAMBuffer
  813.     ld   [hl],$70
  814.     inc  l
  815.     ld   [hl],$20
  816.     inc  l
  817.     ld   [hl],$9B
  818.     ld   a,$03
  819.     ldh  [hUnk_FFAD],a
  820.     ldh  [hUnk_FFAE],a
  821.  
  822. Unk_04C9:
  823.     ld   a,$02
  824.     ldh  [hUnk_FFF0],a
  825.     ld   a,$FF
  826.     ldh  [hUnk_FFA6],a
  827.     ld   a,$01
  828.     ld   [wUnk_D054],a
  829.     ld   [wUnk_DFE0],a
  830.     ret
  831.  
  832. ProcessTitleScreen:
  833.     ld   hl,hUnk_FFA6
  834.     ld   a,[hl]
  835.     and  a
  836.     jr   nz,.unk_04FE
  837.     ld   [hl],$FF
  838.     ld   hl,hUnk_FFF0
  839.     dec  [hl]
  840.     jr   nz,.unk_04FE
  841.     jr   .unk_04EE
  842.     xor  a
  843.     ldh  [hIsDemoActive],a
  844. .unk_04EE
  845.     xor  a
  846.     ldh  [hTwoPlayerMode],a
  847.     ld   a,$0A
  848.     ldh  [hUnk_FFC2],a
  849.     ld   a,$10
  850.     ldh  [hUnk_FFC3],a
  851.     ld   a,$02
  852.     jp   .unk_0553
  853.  
  854. .unk_04FE
  855.     rst  $08
  856.     ld   a,$60
  857.     ldh  [hSerialNext],a
  858.     ldh  [rSB],a
  859.     ld   a,$80
  860.     ldh  [rSC],a
  861.     ldh  a,[hSerialTransferDone]
  862.     and  a
  863.     jr   z,.unk_051F
  864.     xor  a
  865.     ldh  [hSerialTransferDone],a
  866.     ldh  a,[hUnk_FFD0]
  867.     cp   a,SERIAL_ROLE_MASTER
  868.     jr   z,.unk_0549
  869.     cp   a,SERIAL_ROLE_SLAVE
  870.     jr   z,.unk_055D
  871.     call Unk_04C9
  872.     ret
  873.  
  874. .unk_051F
  875.     ldh  a,[hJoyPressed]
  876.     ld   b,a
  877.     ldh  a,[hTwoPlayerMode]
  878.     bit  PADB_UP,b
  879.     jr   nz,.unk_0583
  880.     bit  PADB_DOWN,b
  881.     jr   nz,.unk_057F
  882.     bit  PADB_SELECT,b
  883.     jr   nz,.unk_0561
  884.     bit  PADB_START,b
  885.     ret  z ; Stop here if START wasn't pressed
  886.  
  887.     and  a
  888.     ld   a,$0B
  889.     jr   z,.unk_0553
  890.  
  891.     ldh  a,[hUnk_FFD0] ; Check role sent by other GB
  892.     cp   a,SERIAL_ROLE_MASTER
  893.     jr   z,.unk_0549
  894.     ld   a,SERIAL_ROLE_MASTER
  895.     ldh  [hSerialNext],a
  896.     ldh  [rSB],a
  897.     ld   a,$81
  898.     ldh  [rSC],a
  899.     ret
  900.  
  901. .unk_0549
  902.     ld   a,$01
  903.     ldh  [hTwoPlayerMode],a
  904.     ld   a,SERIAL_ROLE_SLAVE
  905. .unk_054F
  906.     ldh  [hSerialRole],a
  907.     ld   a,$14
  908. .unk_0553
  909.     ldh  [hGameStatus],a
  910.     xor  a
  911.     ldh  [hUnk_FFA6],a
  912.     ldh  [hSerialNext],a
  913.     ldh  [hSerialRecieved],a
  914.     ret
  915. .unk_055D
  916.     ld   a,SERIAL_ROLE_MASTER
  917.     jr   .unk_054F
  918.  
  919. .unk_0561
  920.     xor  a,$01
  921. .unk_0563
  922.     ldh  [hTwoPlayerMode],a
  923.     ld   b,a
  924.     ld   a,$01
  925.     ld   [wUnk_D054],a
  926.     ld   a,b
  927.     and  a
  928.     ld   a,$70
  929.     jr   z,.unk_0573
  930.     ld   a,$78
  931.     ld   [wOAMBuffer],a
  932.     ld   a,$01
  933.     ld   [wUnk_DFE0],a
  934.     call Unk_04C9
  935.     ret
  936.  
  937. .unk_057F
  938.     and  a
  939.     ret  nz
  940.     jr   .unk_0561
  941. .unk_0583
  942.     and  a
  943.     ret  z
  944.     xor  a
  945.     jr   .unk_0563
  946.  
  947. Unk_0588:
  948.     xor  a
  949.     ldh  [hWaitFrames],a
  950.     ld   a,$03
  951.     ld   [wUnk_DFE8],a
  952.     call Unk_21E3
  953.     call Unk_2209
  954.     ld   a,$0C
  955.     ldh  [hGameStatus],a
  956.     ret
  957.  
  958. Unk_059B:
  959.     xor  a
  960.     ldh  [hWaitFrames],a
  961.     call Unk_21E3
  962.     ld   a,$88
  963.     ld   [wUnk_C009],a
  964.     ld   a,$90
  965.     ld   [wUnk_C00D],a
  966.     ld   a,$34
  967.     ld   [wUnk_C015],a
  968.     ld   a,$5D
  969.     ld   [wUnk_C021],a
  970.     ld   a,$65
  971.     ld   [wUnk_C025],a
  972.     ld   a,$1C
  973.     ld   [wUnk_C049],a
  974.     ld   a,$24
  975.     ld   [wUnk_C04D],a
  976.     ld   a,$2C
  977.     ld   [wUnk_C051],a
  978.     ld   a,$1C
  979.     ld   [wUnk_C061],a
  980.     ld   a,$24
  981.     ld   [wUnk_C065],a
  982.     ld   a,$2C
  983.     ld   [wUnk_C069],a
  984.     call Unk_0664
  985.     call Unk_2209
  986.     ld   a,$10
  987.     ldh  [hUnk_FFA7],a
  988.     ld   a,$0C
  989.     ldh  [hGameStatus],a
  990.     ret
  991.  
  992.     ; What is this data ?
  993.     ccf
  994.     adc  b
  995.     nop
  996.     nop
  997.     ccf
  998.     sub  b
  999.     nop
  1000.     nop
  1001.     ld   c,c
  1002.     ldh  a,[rP1]
  1003.     nop
  1004.     ld   c,c
  1005.     ldh  a,[rP1]
  1006.     nop
  1007.     dec  sp
  1008.     inc  [hl]
  1009.     daa
  1010.     nop
  1011.     ld   c,l
  1012.     ldh  a,[hUnk_FF27]
  1013.     ld   b,b
  1014.     ld   h,d
  1015.     ld   e,h
  1016.     sbc  h
  1017.     nop
  1018.     ld   h,d
  1019.     ld   h,h
  1020.     sbc  h
  1021.     jr   nz,.unk_0676
  1022.     ldh  a,[hUnk_FF9C]
  1023.     ld   b,b
  1024.     ld   l,[hl]
  1025.     ldh  a,[hUnk_FF9C]
  1026.     ld   h,b
  1027.     adc  b
  1028.     jr   nz,.unk_0610
  1029.     nop
  1030.     adc  b
  1031.     jr   z,.unk_0614
  1032.     nop
  1033.     adc  b
  1034.     jr   nc,.unk_0618
  1035.     nop
  1036.     adc  b
  1037.     ld   c,b
  1038.     cp   a,$00
  1039.     adc  b
  1040.     ld   d,b
  1041.     cp   a,$00
  1042.     ccf
  1043.     inc  e
  1044.     ldi  [hl],a
  1045.     nop
  1046.     ccf
  1047.     inc  h
  1048.     jr   .unk_062B
  1049.     ccf
  1050.     inc  l
  1051.     ld   e,$00
  1052.     ld   c,c
  1053.     ldh  a,[hUnk_FF0C]
  1054.     nop
  1055.     ld   c,c
  1056.     ldh  a,[hUnk_FF18]
  1057.     nop
  1058.     ld   c,c
  1059.     ldh  a,[hUnk_FF16]
  1060.     nop
  1061.     ld   h,h
  1062.     inc  e
  1063.     ldi  [hl],a
  1064.     nop
  1065.     ld   h,h
  1066.     inc  h
  1067.     jr   .unk_0643
  1068.     ld   h,h
  1069.     inc  l
  1070.     ld   e,$00
  1071.     ld   l,l
  1072.     ldh  a,[hUnk_FF0C]
  1073.     nop
  1074.     ld   l,l
  1075.     ldh  a,[hUnk_FF18]
  1076.     nop
  1077.     ld   l,l
  1078.     ldh  a,[hUnk_FF16]
  1079.     rst  $38
  1080.  
  1081. Unk_0653:
  1082.     ldh  a,[hUnk_FFC3]
  1083.     ld   hl,$C002
  1084.     call Unk_077D
  1085.     ldh  a,[hUnk_FFC2]
  1086.     ld   hl,$C011
  1087.     call Unk_078B
  1088.     ret
  1089.  
  1090. Unk_0664:
  1091.     ldh  a,[hSerialRole]
  1092.     and  a
  1093.     ret  z
  1094.     ldh  a,[hUnk_FFC5]
  1095.     ld   hl,$C00A
  1096.     call Unk_077D
  1097.     ldh  a,[hUnk_FFC4]
  1098.     ld   hl,$C015
  1099.     call Unk_078B
  1100.     ret
  1101.  
  1102. Unk_0679:
  1103.     call Unk_06FA
  1104.     call Unk_0664
  1105.     call Unk_0653
  1106.     ldh  a,[hSerialRole]
  1107.     cp   a,$30
  1108.     jr   nz,.unk_0693
  1109.     ldh  a,[hSerialNext]
  1110.     cp   a,$18
  1111.     jr   z,.unk_06B3
  1112.     and  a,$C0
  1113.     jp   nz,Unk_07C8
  1114.     call Unk_0768
  1115.     call Unk_0B62
  1116.     ldh  a,[hSerialRole]
  1117.     cp   a,$60
  1118.     jr   z,.unk_06BE
  1119.     ldh  a,[hJoyPressed]
  1120.     bit  3,a
  1121.     jr   z,.unk_06C4
  1122.     ldh  a,[hTwoPlayerMode]
  1123.     and  a
  1124.     jr   z,.unk_06B3
  1125.     ldh  a,[hUnk_FFA7]
  1126.     and  a
  1127.     ret  nz
  1128.     ld   a,$18
  1129.     ldh  [hSerialNext],a
  1130.     ret
  1131.  
  1132. Unk_06B3:
  1133.     call ClearOAMBuffer
  1134.     call JumpToInitMusic
  1135.     ld   a,$02
  1136.     ldh  [hGameStatus],a
  1137.     ret
  1138.  
  1139. Unk_06BE:
  1140.     ldh  a,[hUnk_FFD0]
  1141.     cp   a,$18
  1142.     jr   z,Unk_06B3
  1143.     ldh  a,[hJoyPressed]
  1144.     ld   b,a
  1145.     ldh  a,[hSerialRole]
  1146.     cp   a,$60
  1147.     jr   z,.unk_06DC
  1148.     ld   a,b
  1149.     and  a,$C0
  1150.     jr   z,.unk_06DC
  1151.     ldh  a,[hTwoPlayerMode]
  1152.     and  a
  1153.     jp   z,.unk_07C8
  1154.     ld   a,b
  1155.     ldh  [hSerialNext],a
  1156.     ret
  1157.  
  1158. .unk_06DC
  1159.     ldh  a,[hJoyHeld]
  1160.     ld   c,a
  1161.     bit  4,b
  1162.     ld   a,$10
  1163.     jr   nz,.unk_06F2
  1164.     bit  4,c
  1165.     jp   z,.unk_07B1
  1166.     ldh  a,[hUnk_FFAA]
  1167.     dec  a
  1168.     ldh  [hUnk_FFAA],a
  1169.     ret  nz
  1170.     ld   a,$08
  1171. .unk_06F2
  1172.     ldh  [hUnk_FFAA],a
  1173.     ld   b,$20
  1174.     call Unk_0753
  1175.     ret
  1176.  
  1177. .unk_06FA
  1178.     ldh  a,[hSerialRole]
  1179.     and  a
  1180.     ret  z
  1181.     cp   a,$30
  1182.     jr   z,.unk_0728
  1183.     ldh  a,[hUnk_FFD0]
  1184.     ld   b,a
  1185.     and  a,$C0
  1186.     jr   nz,.unk_0722
  1187.     ld   a,b
  1188.     cp   a,$30
  1189.     jr   nc,.unk_0738
  1190.     cp   a,$22
  1191.     jr   nc,.unk_0741
  1192.     cp   a,$18
  1193.     ret  z
  1194.     cp   a,$19
  1195.     ret  z
  1196.     ld   hl,$FFC4
  1197.     ld   [hl],b
  1198.     call Unk_0771
  1199.     ldh  [hUnk_FFC5],a
  1200.     ret
  1201.  
  1202. .unk_0722
  1203.     ldh  [hJoyPressed],a
  1204.     pop  af
  1205.     jp   .unk_07C8
  1206.  
  1207. .unk_0728
  1208.     ldh  a,[hUnk_FFD0]
  1209.     cp   a,$15
  1210.     jr   nc,.unk_0745
  1211.     ld   hl,$FFC4
  1212.     ld   [hl],a
  1213.     call Unk_0771
  1214.     ldh  [hUnk_FFC5],a
  1215.     ret
  1216.  
  1217. .unk_0738
  1218.     ld   a,$40
  1219. .unk_073A
  1220.     ldh  [hJoyPressed],a
  1221.     ld   b,a
  1222.     pop  af
  1223.     jp   .unk_07C8
  1224. .unk_0741
  1225.     ld   a,$80
  1226.     jr   .unk_073A
  1227.  
  1228. .unk_0745
  1229.     cp   a,$22
  1230.     ret  c
  1231.     cp   a,$25
  1232.     ret  nc
  1233.     sub  a,$20
  1234.     ldh  [hUnk_FFAE],a
  1235.     call Unk_0928
  1236.     ret
  1237.  
  1238. .unk_0753
  1239.     ld   hl,$FFC3
  1240.     ldd  a,[hl]
  1241.     cp   b
  1242.     ret  z
  1243.     inc  [hl]
  1244.     inc  l
  1245.     add  a,$01
  1246.     daa
  1247.     ld   [hl],a
  1248.     cp   a,$21
  1249.     ret  nz
  1250.     ld   a,$01
  1251.     ld   [wUnk_D052],a
  1252.     ret
  1253.  
  1254. .unk_0768
  1255.     ldh  a,[hTwoPlayerMode]
  1256.     and  a
  1257.     ret  z
  1258.     ldh  a,[hUnk_FFC2]
  1259.     ldh  [hSerialNext],a
  1260.     ret
  1261.  
  1262. .unk_0771
  1263.     ld   a,[hl]
  1264.     and  a
  1265.     ret  z
  1266.     ld   b,a
  1267.     xor  a
  1268. .unk_0776
  1269.     add  a,$01
  1270.     daa
  1271.     dec  b
  1272.     jr   nz,.unk_0776
  1273.     ret
  1274.  
  1275. .unk_077D
  1276.     ld   b,a
  1277.     and  a,$F0
  1278.     swap a
  1279.     ldi  [hl],a
  1280.     inc  l
  1281.     inc  l
  1282.     inc  l
  1283.     ld   a,b
  1284.     and  a,$0F
  1285.     ld   [hl],a
  1286.     ret
  1287.  
  1288. .unk_078B
  1289.     and  a
  1290.     ld   b,a
  1291.     ld   a,$34
  1292.     jr   z,.unk_0796
  1293. .unk_0791
  1294.     add  a,$04
  1295.     dec  b
  1296.     jr   nz,.unk_0791
  1297. .unk_0796
  1298.     cp   [hl]
  1299.     ret  z
  1300.     ld   [hl],a
  1301.     ld   a,$03
  1302.     ld   [wUnk_DFE0],a
  1303.     ret
  1304.  
  1305. .unk_079F
  1306.     call Unk_07A3
  1307.     ret
  1308.  
  1309. .unk_07A3
  1310.     ld   hl,$FFC3
  1311.     ldd  a,[hl]
  1312.     and  a
  1313.     ret  z
  1314.     dec  [hl]
  1315.     inc  l
  1316.     sub  a,$01
  1317.     call Unk_075D
  1318.     ret
  1319.  
  1320. .unk_07B1
  1321.     bit  5,b
  1322.     ld   a,$10
  1323.     jr   nz,.unk_07C2
  1324.     bit  5,c
  1325.     ret  z
  1326.     ldh  a,[hUnk_FFAA]
  1327.     dec  a
  1328.     ldh  [hUnk_FFAA],a
  1329.     ret  nz
  1330.     ld   a,$08
  1331. .unk_07C2
  1332.     ldh  [hUnk_FFAA],a
  1333.     call Unk_079F
  1334.     ret
  1335.  
  1336. .unk_07C8
  1337.     ld   a,$01
  1338.     ld   [wUnk_DFE0],a
  1339.     ld   hl,$9863
  1340.     ld   a,$83
  1341.     ld   bc,$0302
  1342.     call Unk_0B4C
  1343.     ld   hl,$986F
  1344.     ld   a,$85
  1345.     ld   bc,$0203
  1346.     call Unk_0B4C
  1347.     ld   hl,$9864
  1348.     ld   a,$84
  1349.     ld   b,$0B
  1350.     call Unk_0B42
  1351.     ld   hl,$98A4
  1352.     ld   a,$89
  1353.     ld   b,$0B
  1354.     call Unk_0B42
  1355.     ldh  a,[hSerialRole]
  1356.     cp   a,SERIAL_ROLE_MASTER
  1357.     jr   nz,.unk_0805
  1358.     ldh  a,[hSerialNext]
  1359.     ldh  [hJoyPressed],a
  1360.     ld   a,$19
  1361.     ldh  [hSerialNext],a
  1362. .unk_0805
  1363.     ldh  a,[hJoyPressed]
  1364.     ld   b,a
  1365.     ldh  [hJoyHeld],a
  1366.     bit  PADB_UP,b
  1367.     jp   nz,Unk_098B
  1368.     ld   hl,$9903
  1369.     ld   a,$93
  1370.     ld   bc,$0302
  1371.     call Unk_0B4C
  1372.     ld   hl,$9909
  1373.     ld   a,$95
  1374.     ld   bc,$0203
  1375.     call Unk_0B4C
  1376.     ld   hl,$9904
  1377.     ld   a,$94
  1378.     ld   b,$05
  1379.     call Unk_0B42
  1380.     ld   hl,$9944
  1381.     ld   a,$99
  1382.     ld   b,$05
  1383.     call Unk_0B42
  1384.     ld   a,$0D
  1385.     ldh  [hGameStatus],a
  1386.     ld   hl,$DFE9
  1387.     ld   a,$03
  1388.     cp   [hl]
  1389.     ret  z
  1390.     ld   [wUnk_DFE8],a
  1391.     ret
  1392.  
  1393. Unk_0848:
  1394.     call Unk_08A9
  1395.     call Unk_0928
  1396.     ldh  a,[hSerialRole]
  1397.     cp   a,SERIAL_ROLE_MASTER
  1398.     jr   nz,.unk_0860
  1399.     ldh  a,[hSerialNext]
  1400.     cp   a,$18
  1401.     jp   z,Unk_06B3
  1402.     and  a,$C0
  1403.     jp   nz,Unk_093D
  1404.     call Unk_090D
  1405.     call Unk_0B62
  1406.     ldh  a,[hSerialRole]
  1407.     cp   a,$60
  1408.     jr   z,.unk_087D
  1409.     ldh  a,[hJoyPressed]
  1410.     bit  3,a
  1411.     jr   z,.unk_0884
  1412.     ldh  a,[hTwoPlayerMode]
  1413.     and  a
  1414.     jp   z,Unk_06B3
  1415.     ld   a,$18
  1416.     ldh  [hSerialNext],a
  1417.     ret
  1418.  
  1419. Unk_087D:
  1420.     ldh  a,[hUnk_FFD0]
  1421.     cp   a,$18
  1422.     jp   z,Unk_06B3
  1423.     ldh  a,[hJoyPressed]
  1424.     ld   b,a
  1425.     ldh  a,[hSerialRole]
  1426.     cp   a,SERIAL_ROLE_SLAVE
  1427.     jr   z,.unk_089C ; Slave ignores Up and Down
  1428.     ld   a,b
  1429.     and  a,PADF_UP | PADF_DOWN
  1430.     jr   z,.unk_089C
  1431.     ldh  a,[hTwoPlayerMode]
  1432.     and  a
  1433.     jp   z,Unk_093D
  1434.     ld   a,b ; Send inputs to slave
  1435.     ldh  [hSerialNext],a
  1436.     ret
  1437.  
  1438. .unk_089C
  1439.     bit  PADB_RIGHT,b
  1440.     jr   nz,.unk_08A5
  1441.     bit  PADB_LEFT,b
  1442.     jr   nz,Unk_0918
  1443.     ret
  1444.  
  1445. .unk_08A5
  1446.     call Unk_0901
  1447.     ret
  1448.  
  1449. Unk_08A9:
  1450.     ldh  a,[hSerialRole]
  1451.     and  a
  1452.     ret  z
  1453.     cp   a,SERIAL_ROLE_MASTER
  1454.     jr   z,.unk_08D5
  1455.     ldh  a,[hUnk_FFD0]
  1456.     ld   b,a
  1457.     and  a,$C0
  1458.     jr   nz,.unk_08CE
  1459.     ld   a,b
  1460.     cp   a,$15
  1461.     jr   c,.unk_08F5
  1462.     cp   a,$18
  1463.     ret  z
  1464.     cp   a,$19
  1465.     ret  z
  1466.     cp   a,$30
  1467.     jr   nc,.unk_08FD
  1468.     sub  a,$20
  1469.     ld   hl,hUnk_FFAE
  1470.     ld   [hl],a
  1471.     ret
  1472.  
  1473. .unk_08CE
  1474.     ld   a,b
  1475.     ldh  [hJoyPressed],a
  1476.     pop  af
  1477.     jp   Unk_093D
  1478.    
  1479. .unk_08D5
  1480.     ldh  a,[hUnk_FFD0]
  1481.     cp   a,$20
  1482.     jr   c,.unk_08E5
  1483.     cp   a,$25
  1484.     ret  nc
  1485.     sub  a,$20
  1486.     ld   hl,hUnk_FFAE
  1487.     ld   [hl],a
  1488.     ret
  1489.  
  1490. .unk_08E5
  1491.     cp   a,$15
  1492.     ret  nc
  1493.     ld   hl,$FFC4
  1494.     ld   [hl],a
  1495.     call Unk_0771
  1496.     ldh  [hUnk_FFC5],a
  1497.     call Unk_0664
  1498.     ret
  1499.  
  1500. .unk_08F5
  1501.     ld   a,$40
  1502.     ldh  [hJoyPressed],a
  1503.     ld   b,a
  1504.     pop  af
  1505.     jr   .unk_093D
  1506.    
  1507. .unk_08FD
  1508.     ld   a,$80
  1509.     jr   .unk_08F7
  1510.    
  1511. Unk_0901:
  1512.     ld   hl,hUnk_FFAD
  1513.     dec  [hl]
  1514.     ld   a,[hl]
  1515.     cp   a,$01
  1516.     ret  nz
  1517.     ld   a,$04
  1518.     ld   [hl],a
  1519.     ret
  1520.  
  1521. Unk_090D:
  1522.     ldh  a,[hTwoPlayerMode]
  1523.     and  a
  1524.     ret  z
  1525.     ldh  a,[hUnk_FFAD]
  1526.     add  a,$20
  1527.     ldh  [hSerialNext],a
  1528.     ret
  1529.  
  1530. Unk_0918:
  1531.     call Unk_091C
  1532.     ret
  1533.  
  1534. Unk_091C:
  1535.     ld   hl,hUnk_FFAD
  1536.     inc  [hl]
  1537.     ld   a,[hl]
  1538.     cp   a,$05
  1539.     ret  nz
  1540.     ld   a,$02
  1541.     ld   [hl],a
  1542.     ret
  1543.  
  1544. Unk_0928:
  1545.     ldh  a,[hUnk_FFAD]
  1546.     ld   hl,$C019
  1547.     call Unk_0B20
  1548.     ldh  a,[hTwoPlayerMode]
  1549.     and  a
  1550.     ret  z
  1551.     ldh  a,[hUnk_FFAE]
  1552.     ld   hl,$C021
  1553.     call Unk_0B20
  1554.     ret
  1555.  
  1556. Unk_093D:
  1557.     ld   a,$01
  1558.     ld   [wUnk_DFE0],a
  1559.     ld   hl,$9903
  1560.     ld   a,$83
  1561.     ld   bc,$0302
  1562.     call Unk_0B4C
  1563.     ld   hl,$9909
  1564.     ld   a,$85
  1565.     ld   bc,$0203
  1566.     call Unk_0B4C
  1567.     ld   hl,$9904
  1568.     ld   a,$84
  1569.     ld   b,$05
  1570.     call Unk_0B42
  1571.     ld   hl,$9944
  1572.     ld   a,$89
  1573.     ld   b,$05
  1574.     call Unk_0B42
  1575.     ldh  a,[hSerialRole]
  1576.     cp   a,SERIAL_ROLE_MASTER
  1577.     jr   nz,.unk_097A
  1578.     ldh  a,[hSerialNext]
  1579.     ldh  [hJoyPressed],a
  1580.     ld   a,$19
  1581.     ldh  [hSerialNext],a
  1582. .unk_097A
  1583.     ldh  a,[hJoyPressed]
  1584.     ld   b,a
  1585.     ldh  [hJoyHeld],a
  1586.     bit  PADB_DOWN,b
  1587.     jr   z,.unk_098B
  1588.     call Unk_221B
  1589.     ld   a,$0C
  1590.     ldh  [hGameStatus],a
  1591.     ret
  1592.  
  1593. .unk_098B
  1594.     ld   hl,$9983
  1595.     ld   a,$93
  1596.     ld   bc,$0302
  1597.     call Unk_0B4C
  1598.     ld   hl,$9989
  1599.     ld   a,$95
  1600.     ld   bc,$0203
  1601.     call Unk_0B4C
  1602.     ld   hl,$9984
  1603.     ld   a,$94
  1604.     ld   b,$05
  1605.     call Unk_0B42
  1606.     ld   hl,$99C4
  1607.     ld   a,$99
  1608.     ld   b,$05
  1609.     call Unk_0B42
  1610.     ld   a,$0E
  1611.     ldh  [hGameStatus],a
  1612.     ret
  1613.  
  1614. Unk_09BA:
  1615.     ld   hl,$DFE9
  1616.     ld   b,$01
  1617.     ldh  a,[hUnk_FFC1]
  1618.     and  a
  1619.     jr   z,.unk_09CF
  1620.     inc  b
  1621.     cp   a,$01
  1622.     jr   z,.unk_09CF
  1623.     ld   a,$07
  1624.     ld   [wUnk_DFE8],a
  1625.     ret
  1626.  
  1627. .unk_09CF
  1628.     ld   a,b
  1629.     cp   [hl]
  1630.     ret  z
  1631.     ld   [wUnk_DFE8],a
  1632.     ret
  1633.  
  1634.     call Unk_09BA
  1635.     ldh  a,[hSerialRole]
  1636.     cp   a,SERIAL_ROLE_MASTER
  1637.     jr   nz,.unk_09EB
  1638.     ldh  a,[hSerialNext]
  1639.     cp   a,$18
  1640.     jp   z,Unk_06B3
  1641.     and  a,$C0
  1642.     jp   nz,Unk_0AA6
  1643.     call Unk_0A4F
  1644.     call Unk_0AA2
  1645.     call Unk_0B62
  1646.     ldh  a,[hSerialRole]
  1647.     cp   a,$60
  1648.     jr   z,.unk_0A0B
  1649.     ldh  a,[hJoyPressed]
  1650.     bit  3,a
  1651.     jr   z,.unk_0A13
  1652.     ldh  a,[hTwoPlayerMode]
  1653.     and  a
  1654.     jp   z,Unk_06B3
  1655.     ld   a,$18
  1656.     ldh  [hSerialNext],a
  1657.     ret
  1658.  
  1659.     ldh  a,[hUnk_FFD0]
  1660.     cp   a,$18
  1661.     jp   z,Unk_06B3
  1662.     ret
  1663.  
  1664.     ldh  a,[hJoyPressed]
  1665.     ld   b,a
  1666.     and  a,$C0
  1667.     jr   z,.unk_0A24
  1668.     ldh  a,[hTwoPlayerMode]
  1669.     and  a
  1670.     jp   z,Unk_0AA6
  1671.     ld   a,b
  1672.     ldh  [hSerialNext],a
  1673.     ret
  1674.  
  1675.     bit  4,b
  1676.     jr   nz,.unk_0A2D
  1677.     bit  5,b
  1678.     jr   nz,.unk_0A3D
  1679.     ret
  1680.  
  1681.     ld   a,$03
  1682.     ld   [wUnk_DFE0],a
  1683.     ld   hl,$FFC1
  1684.     inc  [hl]
  1685.     ld   a,[hl]
  1686.     cp   a,$03
  1687.     ret  nz
  1688.     xor  a
  1689.     ld   [hl],a
  1690.     ret
  1691.  
  1692.     ld   a,$03
  1693.     ld   [wUnk_DFE0],a
  1694.     ld   hl,$FFC1
  1695.     ld   a,[hl]
  1696.     and  a
  1697.     jr   z,.unk_0A4B
  1698.     dec  [hl]
  1699.     ret
  1700.  
  1701.     ld   a,$02
  1702.     ld   [hl],a
  1703.     ret
  1704.  
  1705.     ldh  a,[hSerialRole]
  1706.     and  a
  1707.     ret  z
  1708.     cp   a,$30
  1709.     jr   z,.unk_0A79
  1710.     ldh  a,[hUnk_FFD0]
  1711.     ld   b,a
  1712.     and  a,$C0
  1713.     jr   nz,.unk_0A90
  1714.     ld   a,b
  1715.     cp   a,$19
  1716.     jr   z,.unk_0A76
  1717.     cp   a,$25
  1718.     ret  c
  1719.     ldh  [hSerialNext],a
  1720.     sub  a,$30
  1721.     ld   hl,$FFC1
  1722.     cp   [hl]
  1723.     ret  z
  1724.     ld   [hl],a
  1725.     ld   a,$03
  1726.     ld   [wUnk_DFE0],a
  1727.     ret
  1728.  
  1729.     ldh  [hSerialNext],a
  1730.     ret
  1731.  
  1732.     ldh  a,[hUnk_FFD0]
  1733.     cp   a,$15
  1734.     jp   c,Unk_08E5
  1735.     cp   a,$22
  1736.     jr   c,.unk_0A89
  1737.     cp   a,$25
  1738.     jp   c,Unk_0745
  1739.     ldh  a,[hUnk_FFC1]
  1740.     add  a,$30
  1741.     ldh  [hSerialNext],a
  1742.     ret
  1743.  
  1744.     ld   a,b
  1745.     ldh  [hJoyPressed],a
  1746.     pop  af
  1747.     jr   .unk_0AA6
  1748.     ld   a,$40
  1749.     ldh  [hJoyPressed],a
  1750.     ld   b,a
  1751.     pop  af
  1752.     jr   .unk_0AA6
  1753.     ld   a,$80
  1754.     jr   .unk_0A98
  1755.     call Unk_0AF5
  1756.     ret
  1757.  
  1758.     ld   a,$01
  1759.     ld   [wUnk_DFE0],a
  1760.     ld   hl,$9983
  1761.     ld   a,$83
  1762.     ld   bc,$0302
  1763.     call Unk_0B4C
  1764.     ld   hl,$9989
  1765.     ld   a,$85
  1766.     ld   bc,$0203
  1767.     call Unk_0B4C
  1768.     ld   hl,$9984
  1769.     ld   a,$84
  1770.     ld   b,$05
  1771.     call Unk_0B42
  1772.     ld   hl,$99C4
  1773.     ld   a,$89
  1774.     ld   b,$05
  1775.     call Unk_0B42
  1776.     ldh  a,[hSerialRole]
  1777.     cp   a,$30
  1778.     jr   nz,.unk_0AE3
  1779.     ldh  a,[hSerialNext]
  1780.     ldh  [hJoyPressed],a
  1781.     ld   a,$19
  1782.     ldh  [hSerialNext],a
  1783.     ldh  a,[hJoyPressed]
  1784.     ld   b,a
  1785.     ldh  [hJoyHeld],a
  1786.     bit  6,b
  1787.     jp   nz,Unk_080F
  1788.     call Unk_221B
  1789.     ld   a,$0C
  1790.     ldh  [hGameStatus],a
  1791.     ret
  1792.  
  1793.     ldh  a,[hUnk_FFC1]
  1794.     ld   hl,$C029
  1795.     ld   bc,$8003
  1796.     cp   a,$02
  1797.     jr   z,.unk_0B0A
  1798.     ld   bc,$5005
  1799.     cp   a,$01
  1800.     jr   z,.unk_0B0A
  1801.     ld   b,$20
  1802.     ld   a,b
  1803.     ld   de,$0004
  1804.     ld   [hl],a
  1805.     add  a,$08
  1806.     add  hl,de
  1807.     dec  c
  1808.     jr   nz,.unk_0B0E
  1809.     ldh  a,[hUnk_FFC1]
  1810.     cp   a,$02
  1811.     ret  nz
  1812.     ld   a,$F0
  1813.     ld   [hl],a
  1814.     add  hl,de
  1815.     ld   [hl],a
  1816.     ret
  1817.  
  1818.     ld   b,$3C
  1819.     cp   a,$04
  1820.     jr   z,.unk_0B2E
  1821.     ld   b,$5C
  1822.     cp   a,$03
  1823.     jr   z,.unk_0B2E
  1824.     ld   b,$78
  1825.     ld   a,b
  1826.     ld   b,$02
  1827.     cp   [hl]
  1828.     ret  z
  1829.     ldi  [hl],a
  1830.     inc  l
  1831.     inc  l
  1832.     inc  l
  1833.     add  a,$08
  1834.     dec  b
  1835.     jr   nz,.unk_0B31
  1836.     ld   a,$03
  1837.     ld   [wUnk_DFE0],a
  1838.     ret
  1839.  
  1840. FillVRAM:
  1841.     di
  1842.     call WaitVRAM
  1843.     ldi  [hl],a
  1844.     dec  b
  1845.     jr   nz,FillVRAM
  1846.     ei
  1847.     ret
  1848.  
  1849. Unk_0B4C:
  1850.     di
  1851.     ld   de,$0020
  1852.     call WaitVRAM
  1853.     ld   [hl],a
  1854.     add  hl,de
  1855.     add  b
  1856.     call WaitVRAM
  1857.     ld   [hl],a
  1858.     add  hl,de
  1859.     add  c
  1860.     call WaitVRAM
  1861.     ld   [hl],a
  1862.     ei
  1863.     ret
  1864.  
  1865. Unk_0B62:
  1866.     ldh  a,[hUnk_FFA6]
  1867.     and  a
  1868.     ret  nz
  1869.     ld   a,$09
  1870.     ldh  [hUnk_FFA6],a
  1871.     ld   hl,$C02B
  1872.     ld   b,$05
  1873.     ld   a,[hl]
  1874.     xor  a,$80
  1875.     ldi  [hl],a
  1876.     inc  l
  1877.     inc  l
  1878.     inc  l
  1879.     dec  b
  1880.     jr   nz,.unk_0B6F
  1881.     ret
  1882.  
  1883. WaitVRAM:
  1884.     push af
  1885. .waitVRAM
  1886.     ldh  a,[rSTAT]
  1887.     and  a,$03
  1888.     jr   nz,.waitVRAM
  1889.     pop  af
  1890.     ret
  1891.  
  1892. Unk_0B83:
  1893.     ld   hl,$C808
  1894. .unk_0B86
  1895.     ld   [hl],$FF
  1896.     inc  l
  1897.     ld   a,l
  1898.     cp   a,$80
  1899.     jr   nz,.unk_0B86
  1900.     ret
  1901.  
  1902. PlayGame:
  1903.     call ShutLCDDown
  1904.     call ClearOAMBuffer
  1905.     ; Copy charset
  1906.     ld   de,$8000
  1907.     ld   hl,Tiles
  1908.     ld   bc,$0300
  1909.     call Copy
  1910.  
  1911.     ld   de,$3A2C
  1912.     ldh  a,[hTwoPlayerMode]
  1913.     and  a
  1914.     jr   nz,.unk_0BAC
  1915.     ld   de,$38C4
  1916. .unk_0BAC
  1917.     push de
  1918.     call PrintTileMap
  1919.     pop  de
  1920.     ldh  a,[hTwoPlayerMode]
  1921.     and  a
  1922.     jr   nz,.unk_0BD7
  1923.     xor  a
  1924.     ld   [wUnk_C0A0],a
  1925.     ld   [wUnk_C0A1],a
  1926.     ld   [wUnk_C0A2],a
  1927.     ld   [wUnk_C0A3],a
  1928.     ld   [wUnk_9852],a
  1929.     ld   hl,$9C00
  1930.     call Unk_20CC
  1931.     ld   de,.pauseTiles
  1932.     ld   hl,$9D02
  1933.     call Unk_0D90
  1934.     jr   .unk_0BE8
  1935.  
  1936. .unk_0BD7
  1937.     ld   hl,$9C00
  1938.     ld   de,$3CFC
  1939.     call Unk_20E2
  1940.     ld   a,$00
  1941.     ldh  [rWY],a
  1942.     ld   a,$5F
  1943.     ldh  [rWX],a
  1944. .unk_0BE8
  1945.     ldh  a,[rLCDC]
  1946.     and  a,$80
  1947.     jr   z,.LCDOff
  1948.     call ShutLCDDown
  1949. .LCDOff
  1950.     call Unk_0B83
  1951.     call Unk_1E39
  1952.     ld   hl,$C200
  1953.     ld   de,$2083
  1954.     rst  $18
  1955.     ld   hl,$C210
  1956.     ld   de,$209B
  1957.     ldh  a,[hIsDemoActive]
  1958.     and  a
  1959.     jr   nz,.unk_0C0C
  1960.     ld   de,$208B
  1961. .unk_0C0C
  1962.     rst  $18
  1963.     ldh  a,[hTwoPlayerMode]
  1964.     and  a
  1965.     jr   z,.unk_0C1B
  1966.     ld   hl,$C050
  1967.     ld   de,.data_0CE2
  1968.     call Unk_2794
  1969. .unk_0C1B
  1970.     ldh  a,[hIsDemoActive]
  1971.     and  a
  1972.     jr   nz,.unk_0C33
  1973.     ldh  a,[hTwoPlayerMode]
  1974.     and  a
  1975.     jr   z,.unk_0C2A
  1976.     ld   a,$80
  1977.     ld   [wUnk_C210],a
  1978. .unk_0C2A
  1979.     call Unk_1185
  1980.     call Unk_1185
  1981.     call Unk_1185
  1982. .unk_0C33
  1983.     ld   hl,$C200
  1984.     ld   [hl],$80
  1985.     call Unk_2017
  1986.     call Unk_25D2
  1987.     xor  a
  1988.     ldh  [hUnk_FF98],a
  1989.     ldh  [hUnk_FFFD],a
  1990.     ld   a,$03
  1991.     ldh  [hUnk_FFA6],a
  1992.     ldh  a,[hUnk_FFAD]
  1993.     ld   b,$00
  1994.     cp   a,$04
  1995.     jr   z,.unk_0C57
  1996.     ld   b,$09
  1997.     cp   a,$03
  1998.     jr   z,.unk_0C57
  1999.     ld   b,$14
  2000. .unk_0C57
  2001.     ldh  a,[hUnk_FFC3]
  2002.     cp   a,$21
  2003.     jr   c,.unk_0C61
  2004.     sub  a,$20
  2005.     add  b
  2006.     ld   b,a
  2007. .unk_0C61
  2008.     ld   a,b
  2009.     ldh  [hUnk_FFAC],a
  2010.     call Unk_0DB8
  2011.     ld   hl,$9971
  2012.     ldh  a,[hTwoPlayerMode]
  2013.     and  a
  2014.     jr   nz,.unk_0C79
  2015.     ldh  a,[hUnk_FFC3]
  2016.     ld   b,a
  2017.     call Unk_0D25
  2018.     ld   a,$01
  2019.     ldh  [hUnk_FFE0],a
  2020. .unk_0C79
  2021.     ld   a,$83
  2022.     ldh  [rLCDC],a
  2023.     ldh  a,[hIsDemoActive]
  2024.     and  a
  2025.     jr   nz,.unk_0CCB
  2026.     ldh  a,[hSerialRole]
  2027.     cp   a,$30
  2028.     jr   nz,.unk_0C9D
  2029.     call Unk_11E1
  2030.     call Unk_11E1
  2031.     call Unk_11E1
  2032.     ld   b,$80
  2033.     ld   hl,$C300
  2034. .unk_0C96
  2035.     call Unk_11E1
  2036.     ldi  [hl],a
  2037.     dec  b
  2038.     jr   nz,.unk_0C96
  2039. .unk_0C9D
  2040.     ldh  a,[hUnk_FFC2]
  2041.     cp   a,$15
  2042.     jr   c,.unk_0CA5
  2043.     ld   a,$14
  2044. .unk_0CA5
  2045.     ld   b,a
  2046.     ld   de,$FFC6
  2047.     call Unk_0D6A
  2048.     ldh  a,[hTwoPlayerMode]
  2049.     and  a
  2050.     jr   z,.unk_0CC0
  2051.     ldh  a,[hUnk_FFC4]
  2052.     ld   b,a
  2053.     ld   hl,$FFC8
  2054.     ld   de,$FFC7
  2055.     call Unk_0D6A
  2056.     call Unk_0D75
  2057. .unk_0CC0
  2058.     ld   bc,$0316
  2059.     call Unk_0D82
  2060.     ld   hl,wUnk_D03A
  2061.     inc  [hl]
  2062.     ret
  2063.  
  2064. .unk_0CCB
  2065.     call DemoRelatedCopy
  2066.     ld   a,[wUnk_C300]
  2067.     ld   [wUnk_C203],a
  2068.     ld   [wUnk_C213],a
  2069.     jr   .unk_0C9D
  2070.  
  2071. .pauseTiles
  2072.     ;   pill    P   A   U   S   E    pill  end
  2073.     db   $8F,$13,$14,$1A,$21,$23,$5E,$8F,$FD
  2074.  
  2075. .data_0CE2:
  2076.     db   $78,$68,$FF,$00,$80,$68,$FF,$00,$78,$70,$FF,$00,$80,$70,$FF,$00,$78,$8C,$FF,$00,$80,$8C,$FF,$00,$78,$94,$FF,$00,$80,$94,$FF,$00,$FD
  2077.  
  2078. DemoRelatedCopy: ; 0D03
  2079.     ld   hl,$C300
  2080.     ld   de,.data
  2081.     rst  $18
  2082.     ret
  2083. .data
  2084.     db   $10,$10,$04,$00,$00,$12,$0A,$10,$0C,$14,$14,$00,$08,$08,$12,$12,$0C,$06,$08,$0A,$12,$10,$04,$00,$08,$FF
  2085.  
  2086. PrintBCD: ; 0D25
  2087.     ld   a,b
  2088.     and  a,$F0
  2089.     swap a
  2090.     ld   c,a
  2091.     call WaitVRAM
  2092.     ld   [hl],c
  2093.     inc  l
  2094.     ld   a,b
  2095.     and  a,$0F
  2096.     ld   c,a
  2097.     call WaitVRAM
  2098.     ld   [hl],c
  2099.     ret
  2100.  
  2101. Unk_0D39:
  2102.     ld   hl,$98CC
  2103.     ldh  a,[hUnk_FFAD]
  2104.     call .unk_0D4A
  2105.     ld   hl,$98D0
  2106.     ldh  a,[hUnk_FFAE]
  2107.     call .unk_0D4A
  2108.     ret
  2109.  
  2110. .unk_0D4A
  2111.     cp   a,$02
  2112.     jr   z,.unk_0D5B
  2113.     cp   a,$03
  2114.     jr   z,.unk_0D61
  2115.     ld   [hl],$15
  2116.     inc  l
  2117.     ld   [hl],$18
  2118.     inc  l
  2119.     ld   [hl],$20
  2120.     ret
  2121. .unk_0D5B
  2122.     ld   [hl],$11
  2123.     inc  l
  2124.     ld   [hl],$12
  2125.     ret
  2126. .unk_0D61
  2127.     ld   [hl],$16
  2128.     inc  l
  2129.     ld   [hl],$0E
  2130.     inc  l
  2131.     ld   [hl],$0D
  2132.     ret
  2133.  
  2134. Unk_0D6A:
  2135.     ld   a,b
  2136.     inc  a
  2137.     ld   c,a
  2138.     ld   b,$03
  2139. .unk_0D6F
  2140.     add  c
  2141.     dec  b
  2142.     jr   nz,.unk_0D6F
  2143.     ld   [de],a
  2144.     ret
  2145.  
  2146. Unk_0D75:
  2147.     ld   a,[de]
  2148.     srl  a
  2149.     srl  a
  2150.     ldi  [hl],a
  2151.     srl  a
  2152.     ldi  [hl],a
  2153.     srl  a
  2154.     ld   [hl],a
  2155.     ret
  2156.  
  2157. Unk_0D82:
  2158.     ldh  a,[hTwoPlayerMode]
  2159.     and  a
  2160.     ld   a,b
  2161.     jr   z,.unk_0D89
  2162.     ld   a,c
  2163. .unk_0D89
  2164.     ldh  [hGameStatus],a
  2165.     ret
  2166.  
  2167. Unk_0D8C:
  2168.     ld   b,$80
  2169.     jr   Unk_0D92
  2170. Unk_0D90:
  2171.     ld   b,$08
  2172.  
  2173. Unk_0D92:
  2174.     push hl
  2175. .unk_0D93
  2176.     ld   a,[de]
  2177.     cp   a,$FD
  2178.     jr   z,.unk_0DA6
  2179.     ldi  [hl],a
  2180.     inc  de
  2181.     dec  b
  2182.     jr   nz,.unk_0D93
  2183.     pop  hl
  2184.     push de
  2185.     ld   de,$0020
  2186.     add  hl,de
  2187.     pop  de
  2188.     jr   Unk_0D92
  2189. .unk_0DA6
  2190.     pop  hl
  2191.     ret
  2192.  
  2193. Data_0DA8:
  2194.     db $8F,$19,$0A,$1E,$1C,$0E,$8F,$FD
  2195.  
  2196. Unk_0DB0:
  2197.     ld   hl,$FFAC
  2198.     ld   a,[hl]
  2199.     cp   a,$23
  2200.     ret  z
  2201.     inc  [hl]
  2202. Unk_0DB8:
  2203.     ldh  a,[hUnk_FFAC]
  2204.     ld   e,a
  2205.     ld   hl,.unk_data
  2206.     ld   d,$00
  2207.     add  hl,de
  2208.     ld   a,[hl]
  2209.     ldh  [hFramesTillDrop],a
  2210.     ldh  [hFramesTillDrop_Reload],a
  2211.     ret
  2212.  
  2213. .unk_data
  2214.     db $27,$25,$23,$21,$1F,$1D,$1B,$19,$17,$15,$14,$13,$12,$11,$10,$0F,$0E,$0D,$0C,$0B,$0A,$09,$09,$08,$08,$07,$07,$06,$06,$05,$05,$05,$05,$05,$05,$05
  2215.  
  2216. Unk_0DEB:
  2217.     xor  a
  2218.     ldh  [rIF],a
  2219.     ld   a,IEF_SERIAL
  2220.     ldh  [rIE],a
  2221.     ldh  a,[hSerialRole]
  2222.     cp   a,SERIAL_ROLE_MASTER
  2223.     jr   nz,.slave
  2224.     rst  $08
  2225.     rst  $08
  2226.     ld   a,$99
  2227.     ldh  [rSB],a
  2228.     ld   a,$81
  2229.     ldh  [rSC],a
  2230.     xor  a
  2231.     ldh  [hSerialTransferDone],a
  2232. .unk_0E05
  2233.     ldh  a,[hSerialTransferDone]
  2234.     and  a
  2235.     jr   z,.unk_0E05
  2236.     ldh  a,[hUnk_FFD0]
  2237.     cp   a,$66
  2238.     jr   nz,.unk_0DF8
  2239.     ld   hl,$C300
  2240.     ld   b,$80
  2241. .unk_0E15
  2242.     ldi  a,[hl]
  2243.     rst  $08
  2244.     ldh  [rSB],a
  2245.     ld   a,$81
  2246.     ldh  [rSC],a
  2247.     xor  a
  2248.     ldh  [hSerialTransferDone],a
  2249. .unk_0E20
  2250.     ldh  a,[hSerialTransferDone]
  2251.     and  a
  2252.     jr   z,.unk_0E20
  2253.     inc  b
  2254.     jr   nz,.unk_0E15
  2255. .unk_0E28
  2256.     rst  $08
  2257.     rst  $08
  2258.     ld   a,$33
  2259.     ldh  [rSB],a
  2260.     ld   a,$81
  2261.     ldh  [rSC],a
  2262.     xor  a
  2263.     ldh  [hSerialTransferDone],a
  2264. .unk_0E35
  2265.     ldh  a,[hSerialTransferDone]
  2266.     and  a
  2267.     jr   z,.unk_0E35
  2268.     ldh  a,[hUnk_FFD0]
  2269.     cp   a,$77
  2270.     jr   nz,.unk_0E28
  2271.     jr   .unk_0E8B
  2272.  
  2273. .slave
  2274.     ld   a,$66
  2275.     ldh  [rSB],a
  2276.     ldh  [hSerialNext],a
  2277.     ld   a,$80
  2278.     ldh  [rSC],a
  2279.     xor  a
  2280.     ldh  [hSerialTransferDone],a
  2281. .unk_0E4F
  2282.     ldh  a,[hSerialTransferDone]
  2283.     and  a
  2284.     jr   z,.unk_0E4F
  2285.     ldh  a,[hUnk_FFD0]
  2286.     cp   a,$99
  2287.     jr   nz,.unk_0E42
  2288.     ld   b,$80
  2289.     ld   hl,$C300
  2290.     ldh  [rSB],a
  2291.     ld   a,$80
  2292.     ldh  [rSC],a
  2293.     xor  a
  2294.     ldh  [hSerialTransferDone],a
  2295.     ldh  a,[hSerialTransferDone]
  2296.     and  a
  2297.     jr   z,.unk_0E68
  2298.     ldh  a,[hUnk_FFD0]
  2299.     ldi  [hl],a
  2300.     inc  b
  2301.     jr   nz,.unk_0E5F
  2302.     ld   a,$77
  2303.     ldh  [rSB],a
  2304.     ldh  [hSerialNext],a
  2305.     ld   a,$80
  2306.     ldh  [rSC],a
  2307.     xor  a
  2308.     ldh  [hSerialTransferDone],a
  2309.     ldh  a,[hSerialTransferDone]
  2310.     and  a
  2311.     jr   z,.unk_0E80
  2312.     ldh  a,[hUnk_FFD0]
  2313.     cp   a,$33
  2314.     jr   nz,.unk_0E73
  2315.  
  2316. .unk_0E8B
  2317.     xor  a
  2318.     ldh  [rIF],a
  2319.     ld   a,$0D
  2320.     ldh  [rIE],a
  2321.     xor  a
  2322.     ldh  [hUnk_FFB0],a
  2323.     ldh  [hSerialTransferDone],a
  2324.     ld   [wUnk_D03A],a
  2325.     call Unk_1185
  2326.     call Unk_1185
  2327.     call Unk_1185
  2328.     ld   a,$80
  2329.     ld   [wUnk_C200],a
  2330.     xor  a
  2331.     ld   [wUnk_C210],a
  2332.     call Unk_2017
  2333.     ld   a,$03
  2334.     ldh  [hGameStatus],a
  2335.     ret
  2336.  
  2337.     ld   a,$01
  2338.     ld   [wHasGameStarted],a
  2339.     call Unk_1E98
  2340.     ldh  a,[hUnk_FFAB]
  2341.     and  a
  2342.     ret  nz
  2343.     call Unk_0F1C
  2344.     call Unk_0F42
  2345.     call Unk_1D6C
  2346.     call Unk_1223
  2347.     call Unk_1F95
  2348.     call Unk_3495
  2349.     call Unk_0EE4
  2350.     call Unk_279C
  2351.     call Unk_0FBA
  2352.     call Unk_0FB1
  2353.     ld   a,$01
  2354.     ld   [wHasGameStarted],a
  2355.     ret
  2356.  
  2357.     ldh  a,[hUnk_FFCE]
  2358.     and  a
  2359.     ret  z
  2360.     ldh  a,[hUnk_FFE2]
  2361.     and  a,$07
  2362.     ret  nz
  2363.     ld   hl,$C048
  2364.     ld   de,$0004
  2365.     ld   a,$3D
  2366.     ldi  [hl],a
  2367.     ld   a,$8C
  2368.     ld   [hl],a
  2369.     ld   l,$42
  2370.     ld   bc,$D051
  2371.     ld   a,[bc]
  2372.     xor  a,$01
  2373.     ld   [bc],a
  2374.     jr   nz,.unk_0F10
  2375.     ld   a,$06
  2376.     ld   [hl],a
  2377.     add  hl,de
  2378.     ld   a,$08
  2379.     ld   [hl],a
  2380.     add  hl,de
  2381.     ld   a,$FF
  2382.     ld   [hl],a
  2383.     ret
  2384.  
  2385.     ld   a,$3D
  2386.     ld   [hl],a
  2387.     add  hl,de
  2388.     ld   a,$3F
  2389.     ld   [hl],a
  2390.     add  hl,de
  2391.     ld   a,$3E
  2392.     ld   [hl],a
  2393.     ret
  2394.  
  2395.     ldh  a,[hIsDemoActive]
  2396.     and  a
  2397.     ret  z
  2398.     rst  $08
  2399.     ldh  a,[hUnk_FFD0]
  2400.     cp   a,$30
  2401.     jr   z,.unk_0F3F
  2402.     cp   a,$37
  2403.     jr   z,.unk_0F3F
  2404.     xor  a
  2405.     ldh  [rSB],a
  2406.     ld   a,$80
  2407.     ldh  [rSC],a
  2408.     ldh  a,[hJoyPressed]
  2409.     bit  3,a
  2410.     ret  z
  2411.     ld   a,$37
  2412.     ldh  [rSB],a
  2413.     ld   a,$81
  2414.     ldh  [rSC],a
  2415.     pop  af
  2416.     jr   .unk_0F88
  2417.     ldh  a,[hIsDemoActive]
  2418.     and  a
  2419.     ret  z
  2420.     ld   a,[wUnk_C4EA]
  2421.     and  a
  2422.     jr   z,.unk_0F52
  2423.     dec  a
  2424.     ld   [wUnk_C4EA],a
  2425.     jr   .unk_0F77
  2426.     ld   a,[wUnk_C4EB]
  2427.     ld   h,a
  2428.     ld   a,[wUnk_C4EC]
  2429.     ld   l,a
  2430.     ldi  a,[hl]
  2431.     cp   a,$FC
  2432.     jr   z,.unk_0F88
  2433.     ld   b,a
  2434.     ldh  a,[hUnk_FFED]
  2435.     xor  b
  2436.     and  b
  2437.     ldh  [hJoyPressed],a
  2438.     ld   a,b
  2439.     ldh  [hUnk_FFED],a
  2440.     ldi  a,[hl]
  2441.     ld   [wUnk_C4EA],a
  2442.     ld   a,h
  2443.     ld   [wUnk_C4EB],a
  2444.     ld   a,l
  2445.     ld   [wUnk_C4EC],a
  2446.     jr   .unk_0F7A
  2447.     xor  a
  2448.     ldh  [hJoyPressed],a
  2449.     ldh  a,[hJoyHeld]
  2450.     ldh  [hUnk_FFEE],a
  2451.     ldh  a,[hUnk_FFED]
  2452.     ldh  [hJoyHeld],a
  2453.     ret
  2454.  
  2455.     xor  a
  2456.     ldh  [hUnk_FFED],a
  2457.     jr   .unk_0F77
  2458.     xor  a
  2459.     ldh  [hGameStatus],a
  2460.     ldh  [hUnk_FFC2],a
  2461.     ldh  [hUnk_FFC3],a
  2462.     ld   [wUnk_C0A0],a
  2463.     ld   [wUnk_C0A1],a
  2464.     ld   [wUnk_C0A2],a
  2465.     ld   [wUnk_C0A3],a
  2466.     ldh  [hUnk_FFED],a
  2467.     ldh  [hUnk_FFEE],a
  2468.     ld   [wUnk_C4EB],a
  2469.     ld   [wUnk_C4EC],a
  2470.     ldh  [hUnk_FFB0],a
  2471.     ld   [wHasGameStarted],a
  2472.     ld   [wUnk_D00D],a
  2473.     ld   [wUnk_C4EA],a
  2474.     ret
  2475.  
  2476.     ldh  a,[hIsDemoActive]
  2477.     and  a
  2478.     ret  z
  2479.     ldh  a,[hUnk_FFEE]
  2480.     ldh  [hJoyHeld],a
  2481.     ret
  2482.  
  2483.     ldh  a,[hGameMode]
  2484.     and  a
  2485.     ret  z
  2486.     xor  a
  2487.     ldh  [hUnk_FF98],a
  2488.     ldh  [hGameMode],a
  2489.     ld   a,$05
  2490.     ldh  [hGameStatus],a
  2491.     ret
  2492.  
  2493.     xor  a
  2494.     ldh  [hUnk_FF98],a
  2495.     ld   [wHasGameStarted],a
  2496.     ld   [wUnk_D00D],a
  2497.     ld   a,$80
  2498.     ld   [wUnk_C200],a
  2499.     ld   [wUnk_C210],a
  2500.     call Unk_2017
  2501.     ldh  a,[hTwoPlayerMode]
  2502.     and  a
  2503.     jr   z,.unk_0FE6
  2504.     call Unk_22C2
  2505.     jr   .unk_0FE9
  2506.     call Unk_22CD
  2507.     call Unk_2288
  2508.     call Unk_226C
  2509.     call Unk_22D8
  2510.     ld   a,$10
  2511.     ldh  [hWaitFrames],a
  2512.     ldh  a,[hTwoPlayerMode]
  2513.     and  a
  2514.     jr   z,.unk_1019
  2515.     ld   hl,wUnk_D000
  2516.     inc  [hl]
  2517.     call Unk_105C
  2518.     ld   hl,wUnk_D001
  2519.     call Unk_1081
  2520.     ld   a,$01
  2521.     ld   [wUnk_D04B],a
  2522.     call Unk_1025
  2523.     ld   a,$10
  2524.     ldh  [hUnk_FFA7],a
  2525.     ld   a,$12
  2526.     ldh  [hGameStatus],a
  2527.     ret
  2528.  
  2529.     call Unk_3495
  2530.     ld   b,$30
  2531.     call Unk_0753
  2532.     ld   a,$10
  2533.     jr   .unk_1016
  2534.     ld   hl,$C020
  2535.     ld   de,$102F
  2536.     call Unk_2794
  2537.     ret
  2538.  
  2539.     ld   [hl],b
  2540.     jr   z,.unk_1031
  2541.     <corrupted stop>
  2542.     jr   z,.unk_1052
  2543.     <corrupted stop>
  2544.     jr   nc,.unk_1057
  2545.     <corrupted stop>
  2546.     jr   nc,.unk_104E
  2547.     <corrupted stop>
  2548.     jr   nc,.unk_105C
  2549.     <corrupted stop>
  2550.     jr   nc,.unk_105E
  2551.     <corrupted stop>
  2552.     jr   c,.unk_105B
  2553.     <corrupted stop>
  2554.     jr   c,.unk_1069
  2555.     <corrupted stop>
  2556.     jr   c,.unk_1070
  2557.     <corrupted stop>
  2558.     jr   c,.unk_106F
  2559.     <corrupted stop>
  2560.     ld   b,b
  2561.     rra
  2562.     <corrupted stop>
  2563.     ld   a,[hl]
  2564.     and  a
  2565.     ret  z
  2566.     ld   c,a
  2567.     ld   b,c
  2568.     ld   hl,$C070
  2569.     ld   de,PerformDelay
  2570.     add  hl,de
  2571.     dec  b
  2572.     jr   nz,.unk_1067
  2573.     push hl
  2574.     ld   hl,$10C7
  2575.     ld   b,c
  2576.     add  hl,de
  2577.     dec  b
  2578.     jr   nz,.unk_1070
  2579.     pop  de
  2580.     ld   b,$08
  2581.     ldi  a,[hl]
  2582.     ld   [de],a
  2583.     inc  de
  2584.     dec  b
  2585.     jr   nz,.unk_1077
  2586.     dec  c
  2587.     jr   nz,.unk_1060
  2588.     ret
  2589.  
  2590.     ld   a,[hl]
  2591.     and  a
  2592.     ret  z
  2593.     ld   c,a
  2594.     ld   b,c
  2595.     ld   hl,$BFF8
  2596.     ld   de,PerformDelay
  2597.     add  hl,de
  2598.     dec  b
  2599.     jr   nz,.unk_108C
  2600.     push hl
  2601.     ld   hl,$10DF
  2602.     ld   b,c
  2603.     add  hl,de
  2604.     dec  b
  2605.     jr   nz,.unk_1095
  2606.     pop  de
  2607.     ld   b,$08
  2608.     ldi  a,[hl]
  2609.     ld   [de],a
  2610.     inc  de
  2611.     dec  b
  2612.     jr   nz,.unk_109C
  2613.     dec  c
  2614.     jr   nz,.unk_1085
  2615.     ret
  2616.  
  2617.     ld   hl,$C002
  2618.     ld   de,$0004
  2619.     call Unk_10B5
  2620.     ld   l,$7A
  2621.     call Unk_10B5
  2622.     ret
  2623.  
  2624.     ld   b,$06
  2625.     ld   a,$FF
  2626.     ld   [hl],a
  2627.     add  hl,de
  2628.     dec  b
  2629.     jr   nz,.unk_10B9
  2630.     ret
  2631.  
  2632.     ld   b,$08
  2633.     ld   hl,$C052
  2634.     ld   de,$0004
  2635.     ld   a,$FF
  2636.     ld   [hl],a
  2637.     add  hl,de
  2638.     dec  b
  2639.     jr   nz,.unk_10C9
  2640.     ret
  2641.  
  2642.     adc  h
  2643.     ld   [hl],c
  2644.     adc  e
  2645.     nop
  2646.     adc  h
  2647.     ld   a,c
  2648.     adc  e
  2649.     jr   nz,.unk_1058
  2650.     ld   [hl],c
  2651.     adc  e
  2652.     nop
  2653.     add  b
  2654.     ld   a,c
  2655.     adc  e
  2656.     jr   nz,.unk_1154
  2657.     ld   [hl],c
  2658.     adc  e
  2659.     nop
  2660.     ld   [hl],h
  2661.     ld   a,c
  2662.     adc  e
  2663.     jr   nz,.unk_1074
  2664.     add  a
  2665.     adc  e
  2666.     nop
  2667.     adc  h
  2668.     adc  a
  2669.     adc  e
  2670.     jr   nz,.unk_1070
  2671.     add  a
  2672.     adc  e
  2673.     nop
  2674.     add  b
  2675.     adc  a
  2676.     adc  e
  2677.     jr   nz,.unk_116C
  2678.     add  a
  2679.     adc  e
  2680.     nop
  2681.     ld   [hl],h
  2682.     adc  a
  2683.     adc  e
  2684.     jr   nz,.unk_1116
  2685.     ld   [de],a
  2686.     inc  e
  2687.     inc  e
  2688.     -
  2689.     inc  c
  2690.     dec  d
  2691.     ld   c,$0A
  2692.     dec  de
  2693.     -
  2694.     ldi  [hl],a
  2695.     jr   .unk_112B
  2696.     cp   a,$20
  2697.     ld   [de],a
  2698.     rla
  2699.     dec  h
  2700.     -
  2701.     ldi  [hl],a
  2702.     jr   .unk_1134
  2703.     cp   a,$15
  2704.     jr   .unk_1136
  2705.     dec  e
  2706.     -
  2707.     add  hl,de
  2708.     ld   e,$1C
  2709.     ld   de,$1CFD
  2710.     dec  e
  2711.     ld   a,[bc]
  2712.     dec  de
  2713.     dec  e
  2714.     dec  h
  2715.     -
  2716.     add  hl,de
  2717.     dec  d
  2718.     ld   c,$0A
  2719.     inc  e
  2720.     ld   c,$FD
  2721.     jr   nz,.unk_113B
  2722.     ld   [de],a
  2723.     dec  e
  2724.     -
  2725.     dec  c
  2726.     dec  de
  2727.     ld   a,[bc]
  2728.     jr   nz,.unk_1136
  2729.     xor  a
  2730.     ldh  [hUnk_FF98],a
  2731.     ld   [wHasGameStarted],a
  2732.     ld   [wUnk_D00D],a
  2733.     ld   a,$80
  2734.     ld   [wUnk_C200],a
  2735.     ld   [wUnk_C210],a
  2736.     call Unk_2017
  2737.     ld   hl,wUnk_D000
  2738.     call Unk_105C
  2739.     ld   hl,wUnk_D001
  2740.     call Unk_1081
  2741.     ldh  a,[hUnk_FFF4]
  2742.     cp   a,$FD
  2743.     jr   z,.unk_1164
  2744.     call Unk_22C2
  2745.     jr   .unk_116A
  2746.     call Unk_22B7
  2747.     call Unk_136C
  2748.     call Unk_22A4
  2749.     call Unk_22D8
  2750.     ld   a,$01
  2751.     ld   [wUnk_D04B],a
  2752.     call Unk_135D
  2753.     ld   a,$10
  2754.     ldh  [hWaitFrames],a
  2755.     ld   a,$10
  2756.     ldh  [hUnk_FFA7],a
  2757.     ld   a,$12
  2758.     ldh  [hGameStatus],a
  2759.     ret
  2760.  
  2761.     ld   hl,$C200
  2762.     ld   [hl],$00
  2763.     inc  l
  2764.     ld   [hl],$20
  2765.     inc  l
  2766.     ld   [hl],$30
  2767.     inc  l
  2768.     ld   a,[wUnk_C213]
  2769.     ld   [hl],a
  2770.     and  a,$FC
  2771.     ld   c,a
  2772.     ldh  a,[hIsDemoActive]
  2773.     and  a
  2774.     jr   nz,.unk_11A2
  2775.     ldh  a,[hTwoPlayerMode]
  2776.     and  a
  2777.     jr   z,.unk_11B5
  2778.     ld   h,$C3
  2779.     ldh  a,[hUnk_FFB0]
  2780.     ld   l,a
  2781.     ld   e,[hl]
  2782.     inc  hl
  2783.     ld   a,l
  2784.     cp   a,$80
  2785.     jr   nz,.unk_11B0
  2786.     ld   l,$00
  2787.     ld   a,l
  2788.     ldh  [hUnk_FFB0],a
  2789.     jr   .unk_11CB
  2790.     ld   h,$03
  2791.     call Unk_1204
  2792.     ld   d,a
  2793.     ldh  a,[hUnk_FFAF]
  2794.     ld   e,a
  2795.     dec  h
  2796.     jr   z,.unk_11C8
  2797.     or   d
  2798.     or   c
  2799.     and  a,$FC
  2800.     cp   c
  2801.     jr   z,.unk_11B7
  2802.     ld   a,d
  2803.     ldh  [hUnk_FFAF],a
  2804.     ld   a,e
  2805.     ld   [wUnk_C213],a
  2806.     ld   a,$3B
  2807.     ld   [wUnk_C211],a
  2808.     ld   a,$6A
  2809.     ld   [wUnk_C212],a
  2810.     call Unk_203D
  2811.     ldh  a,[hFramesTillDrop_Reload]
  2812.     ldh  [hFramesTillDrop],a
  2813.     ret
  2814.  
  2815.     push hl
  2816.     push bc
  2817.     ldh  a,[hUnk_FFFE]
  2818.     and  a,$FC
  2819.     ld   c,a
  2820.     ld   h,$03
  2821.     call Unk_1204
  2822.     ld   d,a
  2823.     ldh  a,[hUnk_FFAF]
  2824.     ld   e,a
  2825.     dec  h
  2826.     jr   z,.unk_11FB
  2827.     or   d
  2828.     or   c
  2829.     and  a,$FC
  2830.     cp   c
  2831.     jr   z,.unk_11EA
  2832.     ld   a,d
  2833.     ldh  [hUnk_FFAF],a
  2834.     ld   a,e
  2835.     ldh  [hUnk_FFFE],a
  2836.     pop  bc
  2837.     pop  hl
  2838.     ret
  2839.  
  2840.     ldh  a,[rDIV]
  2841.     ld   b,a
  2842.     xor  a
  2843.     dec  b
  2844.     ret  z
  2845.     inc  a
  2846.     inc  a
  2847.     cp   a,$18
  2848.     jr   z,.unk_1207
  2849.     jr   .unk_1208
  2850.     ret
  2851.  
  2852.     ldh  a,[hUnk_FFA7]
  2853.     and  a
  2854.     jr   nz,.unk_123F
  2855.     ldh  a,[hUnk_FF98]
  2856.     and  a
  2857.     jr   nz,.unk_123F
  2858.     ld   a,$03
  2859.     ldh  [hUnk_FFA7],a
  2860.     jr   .unk_1251
  2861.     ld   hl,$C200
  2862.     ldi  a,[hl]
  2863.     cp   a,$80
  2864.     ret  z
  2865.     ld   a,[hl]
  2866.     cp   a,$20
  2867.     jr   z,.unk_1270
  2868.     ldh  a,[hJoyHeld]
  2869.     and  a,$B0
  2870.     cp   a,$80
  2871.     jr   z,.unk_1213
  2872.     ldh  a,[hFramesTillDrop]
  2873.     and  a
  2874.     jr   z,.unk_1243
  2875.     dec  a
  2876.     ldh  [hFramesTillDrop],a
  2877.     call Unk_202A
  2878.     ret
  2879.  
  2880.     ldh  a,[hUnk_FF98]
  2881.     cp   a,$02
  2882.     ret  z
  2883.     ldh  a,[hFramesTillDrop_Reload]
  2884.     ldh  [hFramesTillDrop],a
  2885.     ld   a,$07
  2886.     ld   [wUnk_DFE0],a
  2887.     ld   hl,$C201
  2888.     ld   a,[hl]
  2889.     ldh  [hUnk_FFA0],a
  2890.     add  a,$08
  2891.     ld   [hl],a
  2892.     call Unk_202A
  2893.     call Unk_1F61
  2894.     and  a
  2895.     ret  z
  2896.     ldh  a,[hUnk_FFA0]
  2897.     ld   hl,$C201
  2898.     ld   [hl],a
  2899.     call Unk_202A
  2900.     ld   a,$01
  2901.     ldh  [hUnk_FF98],a
  2902.     ret
  2903.  
  2904.     call Unk_202A
  2905.     call Unk_1F61
  2906.     and  a
  2907.     jr   nz,.unk_127B
  2908.     jr   .unk_122F
  2909.     ld   a,$01
  2910.     ldh  [hUnk_FFC0],a
  2911.     ldh  a,[hTwoPlayerMode]
  2912.     and  a
  2913.     jr   z,.unk_128E
  2914.     ld   a,$FD
  2915.     ldh  [hSerialNext],a
  2916.     ldh  [hUnk_FFF4],a
  2917.     xor  a
  2918.     ld   [wUnk_D00E],a
  2919.     ld   a,$01
  2920.     ldh  [hUnk_FF98],a
  2921.     call Unk_1F95
  2922.     call JumpToInitMusic
  2923.     ld   b,$0F
  2924.     ldh  a,[hTwoPlayerMode]
  2925.     and  a
  2926.     jr   z,.unk_12A1
  2927.     ld   b,$17
  2928.     ld   a,b
  2929.     ldh  [hGameStatus],a
  2930.     ld   a,$02
  2931.     ld   [wUnk_DFF0],a
  2932.     pop  af
  2933.     ret
  2934.  
  2935.     xor  a
  2936.     ld   [wHasGameStarted],a
  2937.     ld   [wUnk_D00D],a
  2938.     ld   a,$E3
  2939.     ldh  [rLCDC],a
  2940.     call Unk_10BF
  2941.     call Unk_12E5
  2942.     ldh  a,[hUnk_FFF4]
  2943.     ldh  [hSerialNext],a
  2944.     ldh  a,[hUnk_FFD0]
  2945.     cp   a,$FD
  2946.     jr   z,.unk_12C9
  2947.     cp   a,$F8
  2948.     ret  nz
  2949.     ld   hl,$FFF4
  2950.     ldh  a,[hUnk_FFD0]
  2951.     cp   [hl]
  2952.     jr   z,.unk_12E0
  2953.     ld   a,[hl]
  2954.     cp   a,$FD
  2955.     jr   z,.unk_12DB
  2956.     ld   a,$05
  2957.     ldh  [hGameStatus],a
  2958.     ret
  2959.  
  2960.     ld   a,$0F
  2961.     ldh  [hGameStatus],a
  2962.     ret
  2963.  
  2964.     ld   a,$06
  2965.     ldh  [hGameStatus],a
  2966.     ret
  2967.  
  2968.     ld   hl,$C082
  2969.     ld   b,$06
  2970.     ld   de,$0004
  2971.     ld   a,$FF
  2972.     ld   [hl],a
  2973.     add  hl,de
  2974.     dec  b
  2975.     jr   nz,.unk_12EF
  2976.     ret
  2977.  
  2978.     xor  a
  2979.     ldh  [hUnk_FF98],a
  2980.     ld   [wHasGameStarted],a
  2981.     ld   [wUnk_D00D],a
  2982.     ld   a,$80
  2983.     ld   [wUnk_C200],a
  2984.     ld   [wUnk_C210],a
  2985.     call Unk_2017
  2986.     ldh  a,[hTwoPlayerMode]
  2987.     and  a
  2988.     jr   z,.unk_1313
  2989.     call Unk_22B7
  2990.     jr   .unk_1316
  2991.     call Unk_22CD
  2992.     call Unk_2296
  2993.     call Unk_227A
  2994.     call Unk_22D8
  2995.     ldh  a,[hTwoPlayerMode]
  2996.     and  a
  2997.     jr   z,.unk_1329
  2998.     call Unk_136C
  2999.     jr   .unk_132C
  3000.     call Unk_37B4
  3001.     ld   a,$10
  3002.     ldh  [hWaitFrames],a
  3003.     ld   b,$10
  3004.     ldh  a,[hTwoPlayerMode]
  3005.     and  a
  3006.     jr   z,.unk_1356
  3007.     ld   hl,wUnk_D001
  3008.     inc  [hl]
  3009.     call Unk_1081
  3010.     ld   hl,wUnk_D000
  3011.     call Unk_105C
  3012.     ld   a,$01
  3013.     ld   [wUnk_D04B],a
  3014.     call Unk_135D
  3015.     ld   a,$10
  3016.     ldh  [hUnk_FFA7],a
  3017.     ld   b,$12
  3018.     ld   a,b
  3019.     ldh  [hGameStatus],a
  3020.     ret
  3021.  
  3022.     ld   a,$08
  3023.     ld   [wUnk_DFE8],a
  3024.     jr   .unk_1352
  3025.     ld   hl,$C023
  3026.     ld   de,$0004
  3027.     ld   b,$0B
  3028.     set  7,[hl]
  3029.     add  hl,de
  3030.     dec  b
  3031.     jr   nz,.unk_1365
  3032.     ret
  3033.  
  3034.     ld   hl,$C83A
  3035.     ld   de,$1376
  3036.     call Unk_0D8C
  3037.     ret
  3038.  
  3039.     -
  3040.     -
  3041.     -
  3042.     -
  3043.     cp   a,$FE
  3044.     cp   a,$FE
  3045.     -
  3046.     rst  $28
  3047.     xor  a,$FC
  3048.     cp   a,$FE
  3049.     cp   a,$FE
  3050.     -
  3051.     xor  a,$EF
  3052.     -
  3053.     cp   a,$FE
  3054.     cp   a,$FE
  3055.     -
  3056.     -
  3057.     -
  3058.     -
  3059.     -
  3060.     ld   hl,$C068
  3061.     ld   de,$13B3
  3062.     rst  $18
  3063.     ldh  a,[hUnk_FFE2]
  3064.     and  a,$07
  3065.     ret  nz
  3066.     ld   hl,$D01F
  3067.     ld   a,[hl]
  3068.     xor  a,$01
  3069.     ld   [hl],a
  3070.     jr   z,.unk_13AC
  3071.     call Unk_26DA
  3072.     ret
  3073.  
  3074.     ld   hl,$C05A
  3075.     call Unk_37FB
  3076.     ret
  3077.  
  3078.     ld   [hl],b
  3079.     inc  [hl]
  3080.     adc  h
  3081.     nop
  3082.     rst  $38
  3083.     ldh  a,[hUnk_FFC0]
  3084.     and  a
  3085.     jr   nz,.unk_13D2
  3086.     call Unk_3495
  3087.     call Unk_141D
  3088.     ld   hl,$D042
  3089.     ld   a,[hl]
  3090.     and  a
  3091.     jr   nz,.unk_13D0
  3092.     inc  [hl]
  3093.     ld   a,$04
  3094.     ld   [wUnk_DFE8],a
  3095.     jr   .unk_13D5
  3096.     call Unk_37B4
  3097.     call Unk_279C
  3098.     ldh  a,[hWaitFrames]
  3099.     and  a
  3100.     ret  nz
  3101.     ldh  a,[hUnk_FFC0]
  3102.     and  a
  3103.     call nz,Unk_378E
  3104.     ldh  a,[hJoyPressed]
  3105.     bit  3,a
  3106.     ret  z
  3107.     call Unk_0B83
  3108.     ldh  a,[hUnk_FFC0]
  3109.     and  a
  3110.     jr   nz,.unk_13FC
  3111.     ld   a,$10
  3112.     ldh  [hWaitFrames],a
  3113.     ld   hl,hGameStatus
  3114.     inc  [hl]
  3115.     xor  a
  3116.     ld   [wUnk_D042],a
  3117.     ret
  3118.  
  3119.     xor  a
  3120.     ld   [wUnk_D01F],a
  3121.     ldh  [hUnk_FFC0],a
  3122.     ldh  [hUnk_FF98],a
  3123.     call Unk_1E39
  3124.     ld   a,$81
  3125.     ldh  [rLCDC],a
  3126.     ld   a,$0B
  3127.     ldh  [hGameStatus],a
  3128.     ldh  a,[hUnk_FFC3]
  3129.     cp   a,$21
  3130.     ret  c
  3131.     ld   a,$14
  3132.     ldh  [hUnk_FFC2],a
  3133.     ld   a,$20
  3134.     ldh  [hUnk_FFC3],a
  3135.     ret
  3136.  
  3137.     ld   a,[wUnk_DFE9]
  3138.     and  a
  3139.     ret  nz
  3140.     ld   a,[wUnk_D050]
  3141.     and  a
  3142.     ret  nz
  3143.     ld   a,$0C
  3144.     ld   [wUnk_DFE0],a
  3145.     ld   a,$01
  3146.     ld   [wUnk_D050],a
  3147.     ret
  3148.  
  3149.     call Unk_279C
  3150.     ldh  a,[hWaitFrames]
  3151.     and  a
  3152.     ret  nz
  3153.     ld   b,$09
  3154.     ldh  a,[hUnk_FFAD]
  3155.     cp   a,$04
  3156.     jr   z,.unk_1497
  3157.     cp   a,$03
  3158.     jr   z,.unk_1467
  3159.     jr   .unk_1471
  3160.     ld   a,$09
  3161.     ld   [wUnk_DFE8],a
  3162.     ld   a,b
  3163.     ldh  [hGameStatus],a
  3164.     xor  a
  3165.     ld   [wUnk_D01F],a
  3166.     ldh  [hUnk_FFC0],a
  3167.     ldh  [hUnk_FF98],a
  3168.     ld   [wUnk_D050],a
  3169.     ldh  [hUnk_FFF9],a
  3170.     ld   [wUnk_D052],a
  3171.     call Unk_1E39
  3172.     ld   a,$81
  3173.     ldh  [rLCDC],a
  3174.     ret
  3175.  
  3176.     ld   a,[wUnk_D052]
  3177.     and  a
  3178.     jr   z,.unk_144C
  3179.     ld   b,$07
  3180.     jr   .unk_1447
  3181.     ldh  a,[hUnk_FFC3]
  3182.     cp   a,$06
  3183.     jr   z,.unk_1487
  3184.     cp   a,$11
  3185.     jr   z,.unk_148B
  3186.     cp   a,$16
  3187.     jr   z,.unk_148F
  3188.     ld   a,[wUnk_D052]
  3189.     and  a
  3190.     jr   nz,.unk_1493
  3191.     jr   .unk_144C
  3192.     ld   b,$08
  3193.     jr   .unk_1447
  3194.     ld   b,$13
  3195.     jr   .unk_1447
  3196.     ld   b,$18
  3197.     jr   .unk_1447
  3198.     ld   b,$1A
  3199.     jr   .unk_1447
  3200.     ldh  a,[hUnk_FFC3]
  3201.     ld   a,[wUnk_D052]
  3202.     and  a
  3203.     jr   z,.unk_144C
  3204.     ld   b,$1B
  3205.     jr   .unk_1447
  3206.     ldh  a,[hUnk_FFF9]
  3207.     and  a
  3208.     jr   nz,.unk_14AC
  3209.     call Unk_18D1
  3210.     ret
  3211.  
  3212.     ldh  a,[hJoyPressed]
  3213.     bit  3,a
  3214.     jp   nz,Unk_156C
  3215.     call Unk_1ADD
  3216.     call Unk_1952
  3217.     call Unk_197A
  3218.     ldh  a,[hUnk_FFF9]
  3219.     cp   a,$02
  3220.     jr   z,.unk_14CE
  3221.     cp   a,$03
  3222.     jr   z,.unk_14EB
  3223.     cp   a,$04
  3224.     ret  z
  3225.     ld   hl,$FFF9
  3226.     inc  [hl]
  3227.     ret
  3228.  
  3229.     ld   de,$1C38
  3230.     ld   hl,$C501
  3231.     call Unk_2794
  3232.     ld   a,$02
  3233.     ld   l,$24
  3234.     ldi  [hl],a
  3235.     xor  a
  3236.     ld   [hl],a
  3237.     ld   l,$37
  3238.     ld   a,$15
  3239.     ldi  [hl],a
  3240.     ld   a,$18
  3241.     ldi  [hl],a
  3242.     ld   a,$20
  3243.     ld   [hl],a
  3244.     jr   .unk_1541
  3245.     ldh  a,[hUnk_FFE2]
  3246.     and  a,$07
  3247.     ret  nz
  3248.     call Unk_18FB
  3249.     ret
  3250.  
  3251.     ldh  a,[hUnk_FFF9]
  3252.     and  a
  3253.     jr   nz,.unk_1500
  3254.     call Unk_18D1
  3255.     call Unk_19D7
  3256.     ret
  3257.  
  3258.     ldh  a,[hJoyPressed]
  3259.     bit  3,a
  3260.     jr   nz,.unk_156C
  3261.     call Unk_1ADD
  3262.     call Unk_1952
  3263.     call Unk_197A
  3264.     ldh  a,[hUnk_FFF9]
  3265.     cp   a,$02
  3266.     jr   z,.unk_1546
  3267.     cp   a,$03
  3268.     jr   z,.unk_1563
  3269.     cp   a,$04
  3270.     ret  z
  3271.     ldh  a,[hUnk_FFE2]
  3272.     and  a,$07
  3273.     ret  nz
  3274.     call Unk_1B0E
  3275.     ld   hl,$C00D
  3276.     ld   a,[hl]
  3277.     cp   a,$F1
  3278.     jr   z,.unk_1541
  3279.     cp   a,$A0
  3280.     call z,Unk_1929
  3281.     ld   a,[hl]
  3282.     cp   a,$50
  3283.     call z,Unk_192F
  3284.     ld   de,$0004
  3285.     ld   b,e
  3286.     dec  [hl]
  3287.     add  hl,de
  3288.     dec  b
  3289.     jr   nz,.unk_153B
  3290.     ret
  3291.  
  3292.     ld   hl,$FFF9
  3293.     inc  [hl]
  3294.     ret
  3295.  
  3296.     ld   de,$1C38
  3297.     ld   hl,$C501
  3298.     call Unk_2794
  3299.     ld   a,$02
  3300.     ld   l,$24
  3301.     ldi  [hl],a
  3302.     xor  a
  3303.     ld   [hl],a
  3304.     ld   l,$37
  3305.     ld   a,$16
  3306.     ldi  [hl],a
  3307.     ld   a,$0E
  3308.     ldi  [hl],a
  3309.     ld   a,$0D
  3310.     ld   [hl],a
  3311.     jr   .unk_1541
  3312.     ldh  a,[hUnk_FFE2]
  3313.     and  a,$07
  3314.     ret  nz
  3315.     call Unk_18FB
  3316.     ret
  3317.  
  3318.     xor  a
  3319.     ldh  [hUnk_FFF9],a
  3320.     call ShutLCDDown
  3321.     ld   hl,$459E
  3322.     ld   de,$8800
  3323.     ld   bc,$0520
  3324.     call Copy
  3325.     ld   de,$38C4
  3326.     call PrintTileMap
  3327.     call ClearOAMBuffer
  3328.     ld   a,$83
  3329.     ldh  [rLCDC],a
  3330.     ld   a,$09
  3331.     ldh  [hGameStatus],a
  3332.     ret
  3333.  
  3334.     ldh  a,[hUnk_FFF9]
  3335.     and  a
  3336.     jr   nz,.unk_159C
  3337.     call Unk_18D1
  3338.     call Unk_19F2
  3339.     ret
  3340.  
  3341.     ldh  a,[hJoyPressed]
  3342.     bit  3,a
  3343.     jr   nz,.unk_156C
  3344.     call Unk_1ADD
  3345.     call Unk_1952
  3346.     call Unk_197A
  3347.     ldh  a,[hUnk_FFF9]
  3348.     cp   a,$02
  3349.     jr   z,.unk_15E3
  3350.     cp   a,$03
  3351.     jr   z,.unk_15F8
  3352.     cp   a,$04
  3353.     ret  z
  3354.     ldh  a,[hUnk_FFE2]
  3355.     and  a,$07
  3356.     ret  nz
  3357.     call Unk_1B1C
  3358.     ld   hl,$C00D
  3359.     ld   a,[hl]
  3360.     cp   a,$F1
  3361.     jr   z,.unk_15DE
  3362.     cp   a,$A0
  3363.     call z,Unk_1929
  3364.     ld   a,[hl]
  3365.     cp   a,$50
  3366.     call z,Unk_192F
  3367.     ld   de,$0004
  3368.     ld   b,$04
  3369.     dec  [hl]
  3370.     add  hl,de
  3371.     dec  b
  3372.     jr   nz,.unk_15D8
  3373.     ret
  3374.  
  3375.     ld   hl,$FFF9
  3376.     inc  [hl]
  3377.     ret
  3378.  
  3379.     ld   de,$1C38
  3380.     ld   hl,$C501
  3381.     call Unk_2794
  3382.     xor  a
  3383.     ld   l,$24
  3384.     ldi  [hl],a
  3385.     ld   a,$05
  3386.     ld   [hl],a
  3387.     call Unk_18F2
  3388.     jr   .unk_15DE
  3389.     ldh  a,[hUnk_FFE2]
  3390.     and  a,$07
  3391.     ret  nz
  3392.     call Unk_18FB
  3393.     ret
  3394.  
  3395.     ldh  a,[hUnk_FFF9]
  3396.     and  a
  3397.     jr   nz,.unk_160D
  3398.     call Unk_18D1
  3399.     call Unk_1A0D
  3400.     ret
  3401.  
  3402.     ldh  a,[hJoyPressed]
  3403.     bit  3,a
  3404.     jp   nz,Unk_156C
  3405.     call Unk_1ADD
  3406.     call Unk_1952
  3407.     call Unk_197A
  3408.     ldh  a,[hUnk_FFF9]
  3409.     cp   a,$02
  3410.     jr   z,.unk_1656
  3411.     cp   a,$03
  3412.     jr   z,.unk_166B
  3413.     cp   a,$04
  3414.     ret  z
  3415.     ldh  a,[hUnk_FFE2]
  3416.     and  a,$03
  3417.     ret  nz
  3418.     call Unk_1B2A
  3419.     ld   hl,$C00D
  3420.     ld   a,[hl]
  3421.     cp   a,$F2
  3422.     jr   z,.unk_1651
  3423.     cp   a,$A0
  3424.     call z,Unk_1929
  3425.     ld   a,[hl]
  3426.     cp   a,$50
  3427.     call z,Unk_192F
  3428.     ld   de,$0004
  3429.     ld   b,$04
  3430.     dec  [hl]
  3431.     dec  [hl]
  3432.     add  hl,de
  3433.     dec  b
  3434.     jr   nz,.unk_164A
  3435.     ret
  3436.  
  3437.     ld   hl,$FFF9
  3438.     inc  [hl]
  3439.     ret
  3440.  
  3441.     ld   de,$1C38
  3442.     ld   hl,$C501
  3443.     call Unk_2794
  3444.     ld   a,$01
  3445.     ld   l,$24
  3446.     ldi  [hl],a
  3447.     xor  a
  3448.     ld   [hl],a
  3449.     call Unk_18F2
  3450.     jr   .unk_1651
  3451.     ldh  a,[hUnk_FFE2]
  3452.     and  a,$07
  3453.     ret  nz
  3454.     call Unk_18FB
  3455.     ret
  3456.  
  3457.     ldh  a,[hUnk_FFF9]
  3458.     and  a
  3459.     jr   nz,.unk_1680
  3460.     call Unk_18D1
  3461.     call Unk_1A28
  3462.     ret
  3463.  
  3464.     ldh  a,[hJoyPressed]
  3465.     bit  3,a
  3466.     jp   nz,Unk_156C
  3467.     call Unk_1ADD
  3468.     call Unk_1952
  3469.     call Unk_197A
  3470.     ldh  a,[hUnk_FFF9]
  3471.     cp   a,$02
  3472.     jr   z,.unk_16C9
  3473.     cp   a,$03
  3474.     jr   z,.unk_16DF
  3475.     cp   a,$04
  3476.     ret  z
  3477.     ldh  a,[hUnk_FFE2]
  3478.     and  a,$03
  3479.     ret  nz
  3480.     call Unk_1B47
  3481.     ld   hl,$C00D
  3482.     ld   a,[hl]
  3483.     cp   a,$EA
  3484.     jr   z,.unk_16C4
  3485.     cp   a,$A0
  3486.     call z,Unk_1929
  3487.     ld   a,[hl]
  3488.     cp   a,$50
  3489.     call z,Unk_192F
  3490.     ld   de,$0004
  3491.     ld   b,$04
  3492.     dec  [hl]
  3493.     dec  [hl]
  3494.     add  hl,de
  3495.     dec  b
  3496.     jr   nz,.unk_16BD
  3497.     ret
  3498.  
  3499.     ld   hl,$FFF9
  3500.     inc  [hl]
  3501.     ret
  3502.  
  3503.     ld   de,$1C38
  3504.     ld   hl,$C501
  3505.     call Unk_2794
  3506.     ld   a,$01
  3507.     ld   l,$24
  3508.     ldi  [hl],a
  3509.     ld   a,$05
  3510.     ld   [hl],a
  3511.     call Unk_18F2
  3512.     jr   .unk_16C4
  3513.     ldh  a,[hUnk_FFE2]
  3514.     and  a,$07
  3515.     ret  nz
  3516.     call Unk_18FB
  3517.     ret
  3518.  
  3519.     call Unk_1952
  3520.     call Unk_197A
  3521.     ldh  a,[hUnk_FFF9]
  3522.     cp   a,$0B
  3523.     jr   nc,.unk_1700
  3524.     call Unk_1ADD
  3525.     ldh  a,[hUnk_FFF9]
  3526.     and  a
  3527.     jr   nz,.unk_1700
  3528.     call Unk_18D1
  3529.     ret
  3530.  
  3531.     ldh  a,[hJoyPressed]
  3532.     bit  3,a
  3533.     jp   nz,Unk_156C
  3534.     ldh  a,[hUnk_FFF9]
  3535.     cp   a,$02
  3536.     jr   z,.unk_1753
  3537.     cp   a,$03
  3538.     jr   z,.unk_175C
  3539.     cp   a,$04
  3540.     jr   z,.unk_176B
  3541.     cp   a,$05
  3542.     jr   z,.unk_1778
  3543.     cp   a,$06
  3544.     jr   z,.unk_1781
  3545.     cp   a,$07
  3546.     jp   z,Unk_1790
  3547.     cp   a,$08
  3548.     jp   z,Unk_17B6
  3549.     cp   a,$09
  3550.     jp   z,Unk_17C8
  3551.     cp   a,$0A
  3552.     jp   z,Unk_1842
  3553.     cp   a,$0B
  3554.     jp   z,Unk_186D
  3555.     cp   a,$0C
  3556.     jp   z,Unk_1897
  3557.     ld   de,$1C38
  3558.     ld   hl,$C501
  3559.     call Unk_2794
  3560.     ld   a,$02
  3561.     ld   l,$24
  3562.     ldi  [hl],a
  3563.     xor  a
  3564.     ld   [hl],a
  3565.     call Unk_18F2
  3566.     ld   hl,$FFF9
  3567.     inc  [hl]
  3568.     ret
  3569.  
  3570.     ldh  a,[hUnk_FFE2]
  3571.     and  a,$07
  3572.     ret  nz
  3573.     call Unk_18FB
  3574.     ret
  3575.  
  3576.     xor  a
  3577.     ld   [wUnk_D009],a
  3578.     ld   hl,$D068
  3579.     ld   a,$98
  3580.     ldi  [hl],a
  3581.     ld   a,$7F
  3582.     ld   [hl],a
  3583.     jr   .unk_174E
  3584.     ld   hl,$C500
  3585.     ld   b,$3C
  3586.     ld   a,$FF
  3587.     ldi  [hl],a
  3588.     dec  b
  3589.     jr   nz,.unk_1772
  3590.     jr   .unk_174E
  3591.     ldh  a,[hUnk_FFE2]
  3592.     and  a,$01
  3593.     ret  nz
  3594.     call Unk_18FB
  3595.     ret
  3596.  
  3597.     ld   hl,$D060
  3598.     inc  [hl]
  3599.     ld   a,[hl]
  3600.     cp   a,$A0
  3601.     ret  nz
  3602.     xor  a
  3603.     ld   [hl],a
  3604.     call Unk_1A43
  3605.     jr   .unk_174E
  3606.     call Unk_1B68
  3607.     ldh  a,[hUnk_FFE2]
  3608.     and  a,$03
  3609.     ret  nz
  3610.     ld   hl,$C00D
  3611.     ld   a,[hl]
  3612.     cp   a,$50
  3613.     jr   z,.unk_17AF
  3614.     cp   a,$90
  3615.     call z,Unk_1929
  3616.     ld   de,$0004
  3617.     ld   b,e
  3618.     dec  [hl]
  3619.     add  hl,de
  3620.     dec  b
  3621.     jr   nz,.unk_17A9
  3622.     ret
  3623.  
  3624.     ld   a,$02
  3625.     ld   [wUnk_DFF8],a
  3626.     jr   .unk_174E
  3627.     call Unk_1999
  3628.     ld   a,[wUnk_D065]
  3629.     cp   a,$0E
  3630.     jr   nc,.unk_17C1
  3631.     ret
  3632.  
  3633.     xor  a
  3634.     ld   [bc],a
  3635.     call Unk_1A5E
  3636.     jr   .unk_174E
  3637.     call Unk_1999
  3638.     ldh  a,[hUnk_FFE2]
  3639.     and  a,$03
  3640.     ret  nz
  3641.     ld   hl,wOAMBuffer
  3642.     ld   a,[hl]
  3643.     ld   de,$0004
  3644.     cp   a,$48
  3645.     jr   c,.unk_17EE
  3646.     ld   hl,$D05F
  3647.     ld   a,[hl]
  3648.     xor  a,$01
  3649.     ld   [hl],a
  3650.     ret  nz
  3651.     ld   hl,wOAMBuffer
  3652.     ld   b,$03
  3653.     dec  [hl]
  3654.     add  hl,de
  3655.     dec  b
  3656.     jr   nz,.unk_17E8
  3657.     ret
  3658.  
  3659.     call Unk_1B85
  3660.     push hl
  3661.     ld   hl,$C01D
  3662.     ld   b,$15
  3663.     ld   c,e
  3664.     ld   a,[hl]
  3665.     cp   a,$70
  3666.     call z,Unk_1C17
  3667.     cp   a,$5C
  3668.     call z,Unk_1BFA
  3669.     cp   a,$54
  3670.     call z,Unk_1C04
  3671.     cp   a,$4C
  3672.     call z,Unk_1C10
  3673.     cp   a,$40
  3674.     call z,Unk_1C27
  3675.     cp   a,$D0
  3676.     jr   z,.unk_1828
  3677.     jr   nc,.unk_181C
  3678.     cp   a,$40
  3679.     jr   nc,.unk_181E
  3680.     ld   c,$02
  3681.     ld   a,[hl]
  3682.     sub  c
  3683.     ld   [hl],a
  3684.     add  hl,de
  3685.     dec  b
  3686.     jr   nz,.unk_181E
  3687.     pop  hl
  3688.     jr   .unk_17DB
  3689.     pop  hl
  3690.     ld   a,$03
  3691.     ld   [wUnk_DFF8],a
  3692.     ld   a,$FF
  3693.     ld   [wUnk_C082],a
  3694.     ld   [wUnk_C086],a
  3695.     ld   hl,$C01C
  3696.     ld   de,$1932
  3697.     call Unk_2794
  3698.     jp   Unk_174E
  3699.     call Unk_1BB9
  3700.     ld   hl,$C00D
  3701.     ld   a,[hl]
  3702.     cp   a,$F0
  3703.     jr   nc,.unk_185B
  3704.     ld   de,$0004
  3705.     ld   b,$06
  3706.     ld   a,[hl]
  3707.     add  a,$01
  3708.     ld   [hl],a
  3709.     add  hl,de
  3710.     dec  b
  3711.     jr   nz,.unk_1852
  3712.     ret
  3713.  
  3714.     ld   hl,$C001
  3715.     ld   b,$26
  3716.     ld   de,$0004
  3717.     ld   a,$F0
  3718.     ld   [hl],a
  3719.     add  hl,de
  3720.     dec  b
  3721.     jr   nz,.unk_1865
  3722.     jp   Unk_174E
  3723.     ldh  a,[rDIV]
  3724.     and  a,$07
  3725.     inc  a
  3726.     ld   de,$0004
  3727.     ld   hl,$1AB9
  3728.     add  hl,de
  3729.     dec  a
  3730.     jr   nz,.unk_1878
  3731.     push hl
  3732.     pop  bc
  3733.     ld   a,[wUnk_D066]
  3734.     ld   l,a
  3735.     add  a,$04
  3736.     cp   a,$98
  3737.     jr   nz,.unk_1889
  3738.     xor  a
  3739.     ld   [wUnk_D066],a
  3740.     ld   h,$C0
  3741.     ld   a,[bc]
  3742.     ldi  [hl],a
  3743.     inc  bc
  3744.     dec  e
  3745.     jr   nz,.unk_188E
  3746.     jp   Unk_174E
  3747.     ldh  a,[hUnk_FFE2]
  3748.     and  a,$07
  3749.     ret  nz
  3750.     call Unk_1BD6
  3751.     ld   hl,$C001
  3752.     ld   de,$0004
  3753.     ld   b,$26
  3754.     ld   a,[hl]
  3755.     cp   a,$F0
  3756.     jr   z,.unk_18BE
  3757.     dec  [hl]
  3758.     dec  [hl]
  3759.     inc  l
  3760.     ldd  a,[hl]
  3761.     cp   a,$C8
  3762.     jr   nc,.unk_18BE
  3763.     dec  [hl]
  3764.     dec  [hl]
  3765.     ldh  a,[rDIV]
  3766.     and  a,$01
  3767.     jr   z,.unk_18BE
  3768.     dec  [hl]
  3769.     dec  [hl]
  3770.     add  hl,de
  3771.     dec  b
  3772.     jr   nz,.unk_18A7
  3773.     ld   hl,$D067
  3774.     inc  [hl]
  3775.     ld   a,[hl]
  3776.     cp   a,$06
  3777.     ret  nz
  3778.     xor  a
  3779.     ld   [hl],a
  3780.     ld   hl,$FFF9
  3781.     dec  [hl]
  3782.     ret
  3783.  
  3784.     call ShutLCDDown
  3785.     ld   hl,$559E
  3786.     ld   de,$8800
  3787.     ld   bc,$0520
  3788.     call Copy
  3789.     ld   de,$3B94
  3790.     call PrintTileMap
  3791.     call Unk_193B
  3792.     ld   a,$83
  3793.     ldh  [rLCDC],a
  3794.     ld   hl,$FFF9
  3795.     inc  [hl]
  3796.     ret
  3797.  
  3798.     ld   l,$38
  3799.     ld   a,$11
  3800.     ldi  [hl],a
  3801.     ld   a,$12
  3802.     ld   [hl],a
  3803.     ret
  3804.  
  3805.     ld   hl,$D009
  3806.     inc  [hl]
  3807.     ld   a,[hl]
  3808.     cp   a,$3C
  3809.     jr   z,.unk_1924
  3810.     ld   hl,$D068
  3811.     ldi  a,[hl]
  3812.     ld   d,a
  3813.     ld   e,[hl]
  3814.     inc  de
  3815.     ld   a,e
  3816.     cp   a,$94
  3817.     jr   z,.unk_191B
  3818.     cp   a,$D4
  3819.     jr   z,.unk_191F
  3820.     ldd  [hl],a
  3821.     ld   [hl],d
  3822.     ld   a,$03
  3823.     ldh  [hUnk_FF9D],a
  3824.     ret
  3825.  
  3826.     ld   a,$C0
  3827.     jr   .unk_1914
  3828.     ld   a,$00
  3829.     inc  d
  3830.     jr   .unk_1914
  3831.     ld   hl,$FFF9
  3832.     inc  [hl]
  3833.     ret
  3834.  
  3835.     ld   a,$01
  3836.     ld   [wUnk_D00A],a
  3837.     ret
  3838.  
  3839.     xor  a
  3840.     jr   .unk_192B
  3841.     <corrupted stop>
  3842.     ret  nc
  3843.     nop
  3844.     jr   .unk_1980
  3845.     pop  de
  3846.     nop
  3847.     -
  3848.     ld   hl,wOAMBuffer
  3849.     ld   de,$1945
  3850.     call Unk_2794
  3851.     ret
  3852.  
  3853.     sub  h
  3854.     ld   c,h
  3855.     ret  nz
  3856.     nop
  3857.     sub  h
  3858.     ld   d,h
  3859.     pop  bc
  3860.     nop
  3861.     sub  h
  3862.     ld   e,h
  3863.     jp   nz,Unk_FD00
  3864.     ldh  a,[hUnk_FFE2]
  3865.     and  a,$03
  3866.     ret  nz
  3867.     ld   hl,$C098
  3868.     ld   bc,$D063
  3869.     ld   a,[bc]
  3870.     and  a
  3871.     jr   nz,.unk_196A
  3872.     inc  a
  3873.     ld   [bc],a
  3874.     ld   de,$1975
  3875.     call Unk_2794
  3876.     ret
  3877.  
  3878.     inc  a
  3879.     ld   [bc],a
  3880.     cp   a,$38
  3881.     jr   nz,.unk_1972
  3882.     xor  a
  3883.     ld   [bc],a
  3884.     dec  [hl]
  3885.     dec  [hl]
  3886.     ret
  3887.  
  3888.     sub  b
  3889.     jr   c,.unk_1908
  3890.     nop
  3891.     -
  3892.     ldh  a,[hUnk_FFE2]
  3893.     and  a,$03
  3894.     ret  nz
  3895.     ld   hl,$C09C
  3896.     ld   bc,$D063
  3897.     ld   a,[bc]
  3898.     cp   a,$20
  3899.     jr   nz,.unk_1991
  3900.     ld   de,$1994
  3901.     call Unk_2794
  3902.     ret
  3903.  
  3904.     dec  [hl]
  3905.     dec  [hl]
  3906.     ret
  3907.  
  3908.     sub  b
  3909.     add  b
  3910.     sub  b
  3911.     nop
  3912.     -
  3913.     ld   hl,$C080
  3914.     ld   bc,$D064
  3915.     ld   a,[bc]
  3916.     and  a
  3917.     jr   nz,.unk_19AC
  3918.     inc  a
  3919.     ld   [bc],a
  3920.     ld   de,$19CE
  3921.     call Unk_2794
  3922.     ret
  3923.  
  3924.     inc  a
  3925.     ld   [bc],a
  3926.     ld   d,a
  3927.     ld   a,[wUnk_D065]
  3928.     cp   d
  3929.     jr   nz,.unk_19C2
  3930.     xor  a
  3931.     ld   [bc],a
  3932.     ld   a,d
  3933.     cp   a,$0E
  3934.     jr   z,.unk_19C2
  3935.     inc  a
  3936.     ld   [wUnk_D065],a
  3937.     xor  a
  3938.     ld   [bc],a
  3939.     ld   e,$08
  3940.     ld   a,[hl]
  3941.     add  e
  3942.     ldi  [hl],a
  3943.     inc  l
  3944.     inc  l
  3945.     inc  l
  3946.     ld   a,[hl]
  3947.     add  e
  3948.     ld   [hl],a
  3949.     ret
  3950.  
  3951.     jr   nz,.unk_1A24
  3952.     cp   a,$00
  3953.     jr   nc,.unk_1A28
  3954.     cp   a,$00
  3955.     -
  3956.     ld   hl,$C00C
  3957.     ld   de,$19E1
  3958.     call Unk_2794
  3959.     ret
  3960.  
  3961.     ld   d,b
  3962.     ldh  a,[hUnk_FF94]
  3963.     nop
  3964.     ld   d,b
  3965.     ld   hl,[sp+$95]
  3966.     nop
  3967.     ld   e,b
  3968.     ldh  a,[hUnk_FF96]
  3969.     nop
  3970.     ld   e,b
  3971.     ld   hl,[sp+$97]
  3972.     nop
  3973.     -
  3974.     ld   hl,$C00C
  3975.     ld   de,$19FC
  3976.     call Unk_2794
  3977.     ret
  3978.  
  3979.     ld   b,b
  3980.     ldh  a,[hUnk_FF98]
  3981.     nop
  3982.     ld   b,b
  3983.     ld   hl,[sp+$99]
  3984.     nop
  3985.     ld   c,b
  3986.     ldh  a,[hFramesTillDrop_Reload]
  3987.     nop
  3988.     ld   c,b
  3989.     ld   hl,[sp+$9B]
  3990.     nop
  3991.     -
  3992.     ld   hl,$C00C
  3993.     ld   de,$1A17
  3994.     call Unk_2794
  3995.     ret
  3996.  
  3997.     ld   a,h
  3998.     ldh  a,[hUnk_FF91]
  3999.     nop
  4000.     ld   a,h
  4001.     ld   hl,[sp+$91]
  4002.     jr   nz,.unk_19A4
  4003.     ldh  a,[hUnk_FF92]
  4004.     nop
  4005.     add  h
  4006.     ld   hl,[sp+$93]
  4007.     jr   nz,.unk_1A25
  4008.     ld   hl,$C00C
  4009.     ld   de,$1A32
  4010.     call Unk_2794
  4011.     ret
  4012.  
  4013.     jr   .unk_1A1C
  4014.     sbc  l
  4015.     nop
  4016.     <corrupted stop>
  4017.     and  b
  4018.     nop
  4019.     jr   .unk_1A2C
  4020.     sbc  [hl]
  4021.     nop
  4022.     jr   .unk_1A38
  4023.     sbc  a
  4024.     nop
  4025.     -
  4026.     ld   hl,$C00C
  4027.     ld   de,$1A4D
  4028.     call Unk_2794
  4029.     ret
  4030.  
  4031.     <corrupted stop>
  4032.     jp   z,Unk_1000
  4033.     ld   hl,[sp+$CA]
  4034.     jr   nz,.unk_1A6E
  4035.     ldh  a,[hUnk_FFBF]
  4036.     nop
  4037.     jr   .unk_1A53
  4038.     cp   a
  4039.     jr   nz,.unk_1A5B
  4040.     ld   hl,$C01C
  4041.     ld   de,$1A68
  4042.     call Unk_2794
  4043.     ret
  4044.  
  4045.     jr   nc,.unk_1A32
  4046.     and  d
  4047.     nop
  4048.     jr   c,.unk_1A36
  4049.     or   d
  4050.     nop
  4051.     ld   b,b
  4052.     ret  z
  4053.     xor  c
  4054.     nop
  4055.     jr   nc,.unk_1A46
  4056.     and  e
  4057.     nop
  4058.     jr   c,.unk_1A4A
  4059.     or   e
  4060.     nop
  4061.     ld   b,b
  4062.     ret  nc
  4063.     xor  d
  4064.     nop
  4065.     jr   nc,.unk_1A5A
  4066.     and  h
  4067.     nop
  4068.     jr   c,.unk_1A5E
  4069.     or   h
  4070.     nop
  4071.     ld   b,b
  4072.     ret  c
  4073.     xor  e
  4074.     nop
  4075.     jr   nc,.unk_1A6E
  4076.     and  l
  4077.     nop
  4078.     jr   c,.unk_1A72
  4079.     or   l
  4080.     nop
  4081.     ld   b,b
  4082.     ldh  [hUnk_FFAC],a
  4083.     nop
  4084.     jr   nc,.unk_1A82
  4085.     and  [hl]
  4086.     nop
  4087.     jr   c,.unk_1A86
  4088.     or   [hl]
  4089.     nop
  4090.     ld   b,b
  4091.     add  sp,$AD
  4092.     nop
  4093.     jr   nc,.unk_1A96
  4094.     and  a
  4095.     nop
  4096.     jr   c,.unk_1A9A
  4097.     or   a
  4098.     nop
  4099.     ld   b,b
  4100.     ldh  a,[hUnk_FFAE]
  4101.     nop
  4102.     jr   nc,.unk_1AAA
  4103.     xor  b
  4104.     nop
  4105.     jr   c,.unk_1AAE
  4106.     cp   b
  4107.     nop
  4108.     ld   b,b
  4109.     ld   hl,[sp+$AF]
  4110.     nop
  4111.     -
  4112.     jr   z,.unk_1A97
  4113.     add  a,$00
  4114.     jr   c,.unk_1A9B
  4115.     add  a,$00
  4116.     ld   b,b
  4117.     ret  c
  4118.     ret  z
  4119.     nop
  4120.     ld   c,b
  4121.     ret  c
  4122.     add  a,$00
  4123.     ld   e,b
  4124.     ret  c
  4125.     add  a,$00
  4126.     ld   h,b
  4127.     ret  c
  4128.     ret  z
  4129.     nop
  4130.     ld   l,b
  4131.     ret  c
  4132.     add  a,$00
  4133.     ld   a,b
  4134.     ret  c
  4135.     add  a,$00
  4136.     ld   a,[wUnk_C00A]
  4137.     cp   a,$FF
  4138.     ret  z
  4139.     ld   b,$0F
  4140.     ld   a,[wUnk_D00A]
  4141.     and  a
  4142.     jr   z,.unk_1AED
  4143.     ld   b,$03
  4144.     ldh  a,[hUnk_FFE2]
  4145.     and  b
  4146.     ret  nz
  4147.     ld   hl,$C002
  4148.     ld   de,$0004
  4149.     ld   b,$03
  4150.     ld   a,[hl]
  4151.     cp   a,$C0
  4152.     jr   z,.unk_1B06
  4153.     dec  [hl]
  4154.     dec  [hl]
  4155.     dec  [hl]
  4156.     add  hl,de
  4157.     dec  b
  4158.     jr   nz,.unk_1AFE
  4159.     ret
  4160.  
  4161.     inc  [hl]
  4162.     inc  [hl]
  4163.     inc  [hl]
  4164.     add  hl,de
  4165.     dec  b
  4166.     jr   nz,.unk_1B06
  4167.     ret
  4168.  
  4169.     ld   hl,$C01A
  4170.     ld   a,[hl]
  4171.     cp   a,$97
  4172.     jr   z,.unk_1B19
  4173.     ld   [hl],$97
  4174.     ret
  4175.  
  4176.     ld   [hl],$85
  4177.     ret
  4178.  
  4179.     ld   hl,$C016
  4180.     ld   b,$9C
  4181.     ld   a,[hl]
  4182.     cp   a,$9A
  4183.     jr   z,.unk_1B28
  4184.     ld   b,$9A
  4185.     ld   [hl],b
  4186.     ret
  4187.  
  4188.     ld   hl,$D005
  4189.     inc  [hl]
  4190.     ld   a,[hl]
  4191.     cp   a,$02
  4192.     ret  nz
  4193.     xor  a
  4194.     ld   [hl],a
  4195.     ld   hl,$C016
  4196.     ld   de,$0004
  4197.     ld   a,[hl]
  4198.     cp   a,$92
  4199.     jr   z,.unk_1B43
  4200.     dec  [hl]
  4201.     add  hl,de
  4202.     inc  [hl]
  4203.     ret
  4204.  
  4205.     inc  [hl]
  4206.     add  hl,de
  4207.     dec  [hl]
  4208.     ret
  4209.  
  4210.     ld   hl,$D006
  4211.     inc  [hl]
  4212.     ld   a,[hl]
  4213.     cp   a,$02
  4214.     ret  nz
  4215.     xor  a
  4216.     ld   [hl],a
  4217.     ld   hl,$C012
  4218.     ld   de,$0004
  4219.     ld   a,[hl]
  4220.     cp   a,$A0
  4221.     jr   z,.unk_1B62
  4222.     ld   [hl],$A0
  4223.     add  hl,de
  4224.     ld   [hl],$9E
  4225.     ret
  4226.  
  4227.     ld   [hl],$FF
  4228.     add  hl,de
  4229.     ld   [hl],$A1
  4230.     ret
  4231.  
  4232.     ld   hl,$D05B
  4233.     inc  [hl]
  4234.     ld   a,[hl]
  4235.     cp   a,$03
  4236.     ret  nz
  4237.     xor  a
  4238.     ld   [hl],a
  4239.     ld   hl,$C00E
  4240.     ld   de,$0004
  4241.     ld   a,[hl]
  4242.     cp   a,$CB
  4243.     jr   z,.unk_1B81
  4244.     inc  [hl]
  4245.     add  hl,de
  4246.     inc  [hl]
  4247.     ret
  4248.  
  4249.     dec  [hl]
  4250.     add  hl,de
  4251.     dec  [hl]
  4252.     ret
  4253.  
  4254.     ld   hl,$D061
  4255.     inc  [hl]
  4256.     ld   a,[hl]
  4257.     cp   a,$02
  4258.     ret  nz
  4259.     xor  a
  4260.     ld   [hl],a
  4261.     ld   hl,$C05A
  4262.     ld   de,$0004
  4263.     ld   bc,$1BAB
  4264.     ld   a,[hl]
  4265.     cp   a,$A7
  4266.     jr   z,.unk_1B9F
  4267.     jr   .unk_1BA2
  4268.     ld   bc,$1BB2
  4269.     ld   a,[bc]
  4270.     cp   a,$FD
  4271.     ret  z
  4272.     ld   [hl],a
  4273.     add  hl,de
  4274.     inc  bc
  4275.     jr   .unk_1BA2
  4276.     and  a
  4277.     or   a
  4278.     xor  [hl]
  4279.     xor  b
  4280.     cp   b
  4281.     xor  a
  4282.     -
  4283.     cp   c
  4284.     cp   e
  4285.     cp   l
  4286.     cp   d
  4287.     cp   h
  4288.     cp   [hl]
  4289.     -
  4290.     ldh  a,[hUnk_FFE2]
  4291.     and  a,$07
  4292.     ret  nz
  4293.     ld   hl,$C01E
  4294.     ld   de,$0004
  4295.     ld   a,[hl]
  4296.     cp   a,$D0
  4297.     jr   z,.unk_1BD0
  4298.     ld   a,$D0
  4299.     ld   [hl],a
  4300.     add  hl,de
  4301.     inc  a
  4302.     ld   [hl],a
  4303.     ret
  4304.  
  4305.     ld   a,$FF
  4306.     ld   [hl],a
  4307.     add  hl,de
  4308.     ld   [hl],a
  4309.     ret
  4310.  
  4311.     ld   hl,$C002
  4312.     ld   de,$0004
  4313.     ld   b,$26
  4314.     ld   a,[hl]
  4315.     cp   a,$C6
  4316.     jr   z,.unk_1BF7
  4317.     cp   a,$C7
  4318.     jr   z,.unk_1BF1
  4319.     cp   a,$C8
  4320.     jr   z,.unk_1BF7
  4321.     cp   a,$C9
  4322.     jr   z,.unk_1BF1
  4323.     jr   .unk_1BF2
  4324.     dec  [hl]
  4325.     add  hl,de
  4326.     dec  b
  4327.     jr   nz,.unk_1BDE
  4328.     ret
  4329.  
  4330.     inc  [hl]
  4331.     jr   .unk_1BF2
  4332.     push af
  4333.     push hl
  4334.     ld   hl,$C00A
  4335.     ld   [hl],$FF
  4336.     pop  hl
  4337.     pop  af
  4338.     ret
  4339.  
  4340.     push af
  4341.     push hl
  4342.     ld   a,$0E
  4343.     ld   [wUnk_DFE0],a
  4344.     ld   hl,$C006
  4345.     jr   .unk_1BFF
  4346.     push af
  4347.     push hl
  4348.     ld   hl,$C002
  4349.     jr   .unk_1BFF
  4350.     push af
  4351.     push hl
  4352.     ld   hl,$C022
  4353.     ld   a,$B0
  4354.     ldi  [hl],a
  4355.     inc  l
  4356.     inc  l
  4357.     inc  l
  4358.     inc  a
  4359.     ld   [hl],a
  4360.     pop  hl
  4361.     pop  af
  4362.     ret
  4363.  
  4364.     push af
  4365.     push hl
  4366.     ld   hl,$C022
  4367.     ld   a,$B2
  4368.     ldi  [hl],a
  4369.     inc  l
  4370.     inc  l
  4371.     inc  l
  4372.     ld   a,$A9
  4373.     ld   [hl],a
  4374.     pop  hl
  4375.     pop  af
  4376.     ret
  4377.  
  4378.     rst  $38
  4379.     rst  $38
  4380.     inc  c
  4381.     jr   .unk_1C54
  4382.     <corrupted stop>
  4383.     ld   a,[bc]
  4384.     dec  e
  4385.     ld   e,$15
  4386.     ld   a,[bc]
  4387.     dec  e
  4388.     ld   [de],a
  4389.     jr   .unk_1C5F
  4390.     inc  e
  4391.     dec  h
  4392.     rst  $38
  4393.     rst  $38
  4394.     rst  $38
  4395.     rst  $38
  4396.     rst  $38
  4397.     rra
  4398.     ld   [de],a
  4399.     dec  de
  4400.     ld   e,$1C
  4401.     rst  $38
  4402.     dec  d
  4403.     ld   c,$1F
  4404.     ld   c,$15
  4405.     rst  $38
  4406.     rst  $38
  4407.     rst  $38
  4408.     rst  $38
  4409.     rst  $38
  4410.     rst  $38
  4411.     rst  $38
  4412.     rst  $38
  4413.     rst  $38
  4414.     inc  e
  4415.     add  hl,de
  4416.     ld   c,$0E
  4417.     dec  c
  4418.     rst  $38
  4419.     rst  $38
  4420.     rst  $38
  4421.     rst  $38
  4422.     rst  $38
  4423.     rst  $38
  4424.     rst  $38
  4425.     rst  $38
  4426.     rst  $38
  4427.     rst  $38
  4428.     rst  $38
  4429.     rst  $38
  4430.     -
  4431.     rst  $38
  4432.     rst  $38
  4433.     rst  $38
  4434.     rst  $38
  4435.     rst  $38
  4436.     rst  $38
  4437.     ld   de,$FF12
  4438.     rst  $38
  4439.     rst  $38
  4440.     rst  $38
  4441.     rst  $38
  4442.     rst  $38
  4443.     rst  $38
  4444.     rst  $38
  4445.     rst  $38
  4446.     rst  $38
  4447.     rst  $38
  4448.     rst  $38
  4449.     rst  $38
  4450.     rst  $38
  4451.     rst  $38
  4452.     rst  $38
  4453.     rst  $38
  4454.     dec  d
  4455.     ld   c,$1F
  4456.     ld   c,$15
  4457.     rst  $38
  4458.     nop
  4459.     dec  b
  4460.     rst  $38
  4461.     rst  $38
  4462.     rst  $38
  4463.     rst  $38
  4464.     rst  $38
  4465.     rst  $38
  4466.     rst  $38
  4467.     rst  $38
  4468.     rst  $38
  4469.     rst  $38
  4470.     rst  $38
  4471.     rla
  4472.     ld   [de],a
  4473.     inc  c
  4474.     ld   c,$FF
  4475.     inc  c
  4476.     dec  d
  4477.     ld   c,$0A
  4478.     dec  de
  4479.     rst  $38
  4480.     rst  $38
  4481.     rst  $38
  4482.     -
  4483.     rst  $38
  4484.     rst  $38
  4485.     rst  $38
  4486.     rst  $38
  4487.     rst  $38
  4488.     rst  $38
  4489.     ld   de,$FF12
  4490.     rst  $38
  4491.     rst  $38
  4492.     rst  $38
  4493.     rst  $38
  4494.     rst  $38
  4495.     rst  $38
  4496.     rst  $38
  4497.     rst  $38
  4498.     rst  $38
  4499.     rst  $38
  4500.     rst  $38
  4501.     rst  $38
  4502.     rst  $38
  4503.     rst  $38
  4504.     rst  $38
  4505.     rst  $38
  4506.     dec  d
  4507.     ld   c,$1F
  4508.     ld   c,$15
  4509.     rst  $38
  4510.     ld   bc,rP1
  4511.     rst  $38
  4512.     rst  $38
  4513.     rst  $38
  4514.     rst  $38
  4515.     rst  $38
  4516.     rst  $38
  4517.     rst  $38
  4518.     rst  $38
  4519.     rst  $38
  4520.     rst  $38
  4521.     rla
  4522.     ld   [de],a
  4523.     inc  c
  4524.     ld   c,$FF
  4525.     inc  c
  4526.     dec  d
  4527.     ld   c,$0A
  4528.     dec  de
  4529.     rst  $38
  4530.     rst  $38
  4531.     rst  $38
  4532.     -
  4533.     rst  $38
  4534.     rst  $38
  4535.     rst  $38
  4536.     rst  $38
  4537.     rst  $38
  4538.     rst  $38
  4539.     ld   de,$FF12
  4540.     rst  $38
  4541.     rst  $38
  4542.     rst  $38
  4543.     rst  $38
  4544.     rst  $38
  4545.     rst  $38
  4546.     rst  $38
  4547.     rst  $38
  4548.     rst  $38
  4549.     rst  $38
  4550.     rst  $38
  4551.     rst  $38
  4552.     rst  $38
  4553.     rst  $38
  4554.     rst  $38
  4555.     rst  $38
  4556.     dec  d
  4557.     ld   c,$1F
  4558.     ld   c,$15
  4559.     rst  $38
  4560.     ld   bc,rTIMA
  4561.     rst  $38
  4562.     rst  $38
  4563.     rst  $38
  4564.     rst  $38
  4565.     rst  $38
  4566.     rst  $38
  4567.     rst  $38
  4568.     rst  $38
  4569.     rst  $38
  4570.     rst  $38
  4571.     rla
  4572.     ld   [de],a
  4573.     inc  c
  4574.     ld   c,$FF
  4575.     inc  c
  4576.     dec  d
  4577.     ld   c,$0A
  4578.     dec  de
  4579.     rst  $38
  4580.     rst  $38
  4581.     rst  $38
  4582.     -
  4583.     rst  $38
  4584.     rst  $38
  4585.     rst  $38
  4586.     rst  $38
  4587.     rst  $38
  4588.     rst  $38
  4589.     ld   de,$FF12
  4590.     rst  $38
  4591.     rst  $38
  4592.     rst  $38
  4593.     rst  $38
  4594.     rst  $38
  4595.     rst  $38
  4596.     rst  $38
  4597.     rst  $38
  4598.     rst  $38
  4599.     rst  $38
  4600.     rst  $38
  4601.     rst  $38
  4602.     rst  $38
  4603.     rst  $38
  4604.     rst  $38
  4605.     rst  $38
  4606.     dec  d
  4607.     ld   c,$1F
  4608.     ld   c,$15
  4609.     rst  $38
  4610.     ld   [bc],a
  4611.     nop
  4612.     rst  $38
  4613.     rst  $38
  4614.     rst  $38
  4615.     rst  $38
  4616.     rst  $38
  4617.     rst  $38
  4618.     rst  $38
  4619.     rst  $38
  4620.     rst  $38
  4621.     rst  $38
  4622.     rst  $38
  4623.     rla
  4624.     ld   [de],a
  4625.     inc  c
  4626.     ld   c,$FF
  4627.     inc  c
  4628.     dec  d
  4629.     ld   c,$0A
  4630.     dec  de
  4631.     rst  $38
  4632.     rst  $38
  4633.     rst  $38
  4634.     -
  4635.     ld   b,$0A
  4636.     ld   a,[de]
  4637.     ld   [hl],a
  4638.     inc  l
  4639.     inc  e
  4640.     dec  b
  4641.     jr   nz,.unk_1D5F
  4642.     ldh  a,[hUnk_FFE3]
  4643.     inc  a
  4644.     ldh  [hUnk_FFE3],a
  4645.     ret
  4646.  
  4647.     ld   hl,$C200
  4648.     ld   a,[hl]
  4649.     cp   a,$80
  4650.     ret  z
  4651.     ld   l,$03
  4652.     ld   a,[hl]
  4653.     ldh  [hUnk_FFA0],a
  4654.     ldh  a,[hJoyPressed]
  4655.     ld   b,a
  4656.     bit  0,b
  4657.     jr   nz,.unk_1D91
  4658.     bit  1,b
  4659.     jr   z,.unk_1DCF
  4660.     ld   a,[hl]
  4661.     and  a,$03
  4662.     jr   z,.unk_1D8B
  4663.     dec  [hl]
  4664.     jr   .unk_1D9F
  4665.     ld   a,[hl]
  4666.     or   a,$03
  4667.     ld   [hl],a
  4668.     jr   .unk_1D9F
  4669.     ld   a,[hl]
  4670.     and  a,$03
  4671.     cp   a,$03
  4672.     jr   z,.unk_1D9B
  4673.     inc  [hl]
  4674.     jr   .unk_1D9F
  4675.     ld   a,[hl]
  4676.     and  a,$FC
  4677.     ld   [hl],a
  4678.     ld   a,$02
  4679.     ld   [wUnk_DFE0],a
  4680.     call Unk_202A
  4681.     call Unk_1F61
  4682.     and  a
  4683.     jr   z,.unk_1DCF
  4684.     ld   hl,$C202
  4685.     ld   a,[hl]
  4686.     ldh  [hUnk_FFA1],a
  4687.     sub  a,$08
  4688.     ld   [hl],a
  4689.     call Unk_202A
  4690.     call Unk_1F61
  4691.     and  a
  4692.     jr   z,.unk_1DCF
  4693.     xor  a
  4694.     ld   [wUnk_DFE0],a
  4695.     ld   hl,$C203
  4696.     ldh  a,[hUnk_FFA0]
  4697.     ldd  [hl],a
  4698.     ldh  a,[hUnk_FFA1]
  4699.     ld   [hl],a
  4700.     call Unk_202A
  4701.     ld   hl,$C202
  4702.     ldh  a,[hJoyPressed]
  4703.     ld   b,a
  4704.     ldh  a,[hJoyHeld]
  4705.     ld   c,a
  4706.     ld   a,[hl]
  4707.     ldh  [hUnk_FFA0],a
  4708.     bit  4,b
  4709.     ld   a,$10
  4710.     jr   nz,.unk_1DED
  4711.     bit  4,c
  4712.     jr   z,.unk_1E12
  4713.     ldh  a,[hUnk_FFAA]
  4714.     dec  a
  4715.     ldh  [hUnk_FFAA],a
  4716.     ret  nz
  4717.     ld   a,$06
  4718.     ldh  [hUnk_FFAA],a
  4719.     ld   a,[hl]
  4720.     add  a,$08
  4721.     ld   [hl],a
  4722.     call Unk_202A
  4723.     ld   a,$03
  4724.     ld   [wUnk_DFE0],a
  4725.     call Unk_1F61
  4726.     and  a
  4727.     ret  z
  4728.     ld   hl,$C202
  4729.     xor  a
  4730.     ld   [wUnk_DFE0],a
  4731.     ldh  a,[hUnk_FFA0]
  4732.     ld   [hl],a
  4733.     call Unk_202A
  4734.     ld   a,$01
  4735.     ldh  [hUnk_FFAA],a
  4736.     ret
  4737.  
  4738.     bit  5,b
  4739.     ld   a,$10
  4740.     jr   nz,.unk_1E24
  4741.     bit  5,c
  4742.     jr   z,.unk_1E0F
  4743.     ldh  a,[hUnk_FFAA]
  4744.     dec  a
  4745.     ldh  [hUnk_FFAA],a
  4746.     ret  nz
  4747.     ld   a,$06
  4748.     ldh  [hUnk_FFAA],a
  4749.     ld   a,[hl]
  4750.     sub  a,$08
  4751.     ld   [hl],a
  4752.     ld   a,$03
  4753.     ld   [wUnk_DFE0],a
  4754.     call Unk_202A
  4755.     call Unk_1F61
  4756.     and  a
  4757.     ret  z
  4758.     jr   .unk_1E00
  4759.     ld   hl,$C018
  4760.     ld   b,$60
  4761.     jr   .unk_1E45
  4762. ClearOAMBuffer:
  4763.     ld   hl,wOAMBuffer
  4764.     ld   b,$A0
  4765.     xor  a
  4766.     ldi  [hl],a
  4767.     dec  b
  4768.     jr   nz,.unk_1E46
  4769.     ret
  4770.  
  4771.     ld   hl,$99C2
  4772.     ld   de,$1E70
  4773.     ld   c,$04
  4774.     ld   b,$0A
  4775.     push hl
  4776.     ld   a,[de]
  4777.     ld   [hl],a
  4778.     push hl
  4779.     ld   a,h
  4780.     add  a,$30
  4781.     ld   h,a
  4782.     ld   a,[de]
  4783.     ld   [hl],a
  4784.     pop  hl
  4785.     inc  l
  4786.     inc  de
  4787.     dec  b
  4788.     jr   nz,.unk_1E56
  4789.     pop  hl
  4790.     push de
  4791.     ld   de,$0020
  4792.     add  hl,de
  4793.     pop  de
  4794.     dec  c
  4795.     jr   nz,.unk_1E53
  4796.     ret
  4797.  
  4798.     add  l
  4799.     cpl
  4800.     add  d
  4801.     add  [hl]
  4802.     add  e
  4803.     cpl
  4804.     cpl
  4805.     add  b
  4806.     add  d
  4807.     add  l
  4808.     cpl
  4809.     add  d
  4810.     add  h
  4811.     add  d
  4812.     add  e
  4813.     cpl
  4814.     add  e
  4815.     cpl
  4816.     add  a
  4817.     cpl
  4818.     cpl
  4819.     add  l
  4820.     cpl
  4821.     add  e
  4822.     cpl
  4823.     add  [hl]
  4824.     add  d
  4825.     add  b
  4826.     add  c
  4827.     cpl
  4828.     add  e
  4829.     cpl
  4830.     add  [hl]
  4831.     add  e
  4832.     cpl
  4833.     add  l
  4834.     cpl
  4835.     add  l
  4836.     cpl
  4837.     cpl
  4838.     ldh  a,[hIsDemoActive]
  4839.     and  a
  4840.     ret  nz
  4841.     ldh  a,[hJoyPressed]
  4842.     bit  3,a
  4843.     jp   z,Unk_1F01
  4844.     ldh  a,[hTwoPlayerMode]
  4845.     and  a
  4846.     jr   nz,.unk_1EC8
  4847.     ld   hl,rLCDC
  4848.     ldh  a,[hUnk_FFAB]
  4849.     xor  a,$01
  4850.     ldh  [hUnk_FFAB],a
  4851.     jr   z,.unk_1EBE
  4852.     ld   a,[hl]
  4853.     res  1,[hl]
  4854.     set  3,[hl]
  4855.     ld   a,$01
  4856.     ld   [wUnk_DF7F],a
  4857.     ret
  4858.  
  4859.     res  3,[hl]
  4860.     set  1,[hl]
  4861.     ld   a,$02
  4862.     ld   [wUnk_DF7F],a
  4863.     ret
  4864.  
  4865.     ldh  a,[hSerialRole]
  4866.     cp   a,$30
  4867.     ret  nz
  4868.     ldh  a,[hUnk_FFAB]
  4869.     xor  a,$01
  4870.     ldh  [hUnk_FFAB],a
  4871.     jr   z,.unk_1F25
  4872.     call Unk_1EE9
  4873.     jr   .unk_1F0B
  4874.     ldh  a,[hUnk_FFAB]
  4875.     and  a
  4876.     jr   nz,.unk_1F18
  4877.     ldh  a,[hUnk_FFD0]
  4878.     cp   a,$90
  4879.     ret  nz
  4880.     call Unk_1EE9
  4881.     jr   .unk_1F18
  4882.     ld   a,$01
  4883.     ldh  [hUnk_FFAB],a
  4884.     ld   [wUnk_DF7F],a
  4885.     ld   hl,$984C
  4886.     ld   de,$0DA8
  4887.     ld   a,[de]
  4888.     cp   a,$FD
  4889.     ret  z
  4890.     call Unk_1F56
  4891.     inc  de
  4892.     inc  hl
  4893.     jr   .unk_1EF6
  4894.     ldh  a,[hTwoPlayerMode]
  4895.     and  a
  4896.     ret  z
  4897.     ldh  a,[hSerialRole]
  4898.     cp   a,$30
  4899.     jr   nz,.unk_1EDA
  4900.     ldh  a,[hUnk_FFAB]
  4901.     and  a
  4902.     ret  z
  4903.     ld   a,$90
  4904.     ldh  [hSerialNext],a
  4905.     call Unk_2C4F
  4906.     pop  hl
  4907.     ret
  4908.  
  4909.     xor  a
  4910.     ldh  [hSerialNext],a
  4911.     ldh  a,[hUnk_FFD0]
  4912.     cp   a,$90
  4913.     jr   z,.unk_1F37
  4914.     cp   a,$E0
  4915.     jr   z,.unk_1F37
  4916.     ld   a,$02
  4917.     ld   [wUnk_DF7F],a
  4918.     xor  a
  4919.     ldh  [hUnk_FFAB],a
  4920.     ld   hl,$984C
  4921.     ld   de,$1F4E
  4922.     call Unk_1EF6
  4923.     ret
  4924.  
  4925.     call Unk_2C4F
  4926.     pop  hl
  4927.     ret
  4928.  
  4929.     ld   hl,$98EE
  4930.     ld   c,$05
  4931.     ld   de,$0DA8
  4932.     ld   a,[de]
  4933.     call Unk_1F56
  4934.     inc  de
  4935.     inc  l
  4936.     dec  c
  4937.     jr   nz,.unk_1F44
  4938.     ret
  4939.  
  4940.     dec  c
  4941.     cpl
  4942.     ld   d,$0A
  4943.     dec  de
  4944.     ld   [de],a
  4945.     jr   .unk_1F53
  4946.     di
  4947.     ld   b,a
  4948.     ldh  a,[rSTAT]
  4949.     and  a,$03
  4950.     jr   nz,.unk_1F58
  4951.     ld   [hl],b
  4952.     ei
  4953.     ret
  4954.  
  4955.     ld   b,$02
  4956.     ld   hl,$C010
  4957.     ldi  a,[hl]
  4958.     cp   a,$98
  4959.     jr   nc,.unk_1F90
  4960.     sub  a,$18
  4961.     ld   e,a
  4962.     ldi  a,[hl]
  4963.     cp   a,$11
  4964.     jr   c,.unk_1F90
  4965.     cp   a,$58
  4966.     jr   nc,.unk_1F90
  4967.     cp   a,$18
  4968.     jr   z,.unk_1F80
  4969.     sub  a,$08
  4970.     inc  e
  4971.     jr   .unk_1F77
  4972.     ld   d,$C8
  4973.     ld   a,[de]
  4974.     cp   a,$FF
  4975.     jr   nz,.unk_1F90
  4976.     inc  l
  4977.     inc  l
  4978.     dec  b
  4979.     jr   nz,.unk_1F66
  4980.     xor  a
  4981.     ldh  [hUnk_FF9B],a
  4982.     ret
  4983.  
  4984.     ld   a,$01
  4985.     ldh  [hUnk_FF9B],a
  4986.     ret
  4987.  
  4988.     ldh  a,[hUnk_FF98]
  4989.     cp   a,$01
  4990.     ret  nz
  4991.     ld   hl,$C010
  4992.     ld   b,$02
  4993.     ldi  a,[hl]
  4994.     ldh  [hUnk_FFB2],a
  4995.     ldi  a,[hl]
  4996.     ldh  [hUnk_FFB3],a
  4997.     push hl
  4998.     push bc
  4999.     call Unk_2359
  5000.     push hl
  5001.     pop  de
  5002.     pop  bc
  5003.     pop  hl
  5004.     ld   a,d
  5005.     cp   a,$98
  5006.     jr   nz,.unk_1FD2
  5007.     ld   a,e
  5008.     and  a,$F0
  5009.     cp   a,$20
  5010.     jr   z,.unk_1FDC
  5011.     cp   a,$40
  5012.     jr   nz,.unk_1FD2
  5013.     ld   a,e
  5014.     cp   a,$45
  5015.     jr   z,.unk_1FD2
  5016.     cp   a,$46
  5017.     jr   z,.unk_1FD2
  5018.     ld   a,[hl]
  5019.     and  a,$F0
  5020.     cp   a,$B0
  5021.     jr   nz,.unk_1FD2
  5022.     ld   a,[hl]
  5023.     add  a,$10
  5024.     ld   [hl],a
  5025.     di
  5026.     ldh  a,[rSTAT]
  5027.     and  a,$03
  5028.     jr   nz,.unk_1FD3
  5029.     ld   a,[hl]
  5030.     ld   [de],a
  5031.     ei
  5032.     inc  l
  5033.     inc  l
  5034.     dec  b
  5035.     jr   nz,.unk_1F9F
  5036.     ld   b,$01
  5037.     ld   hl,$C010
  5038.     call Unk_1F66
  5039.     ld   hl,$C012
  5040.     ld   a,e
  5041.     and  a,$F8
  5042.     jr   z,.unk_1FF3
  5043.     ld   a,[hl]
  5044.     ld   [de],a
  5045.     ld   b,$01
  5046.     ld   hl,$C014
  5047.     call Unk_1F66
  5048.     ld   hl,$C016
  5049.     ld   a,e
  5050.     db   $E6
  5051. Bankswitch:
  5052.     ld   hl,[sp+$28]
  5053.     ld   [bc],a
  5054.     ld   a,[hl]
  5055.     ld   [de],a
  5056.     ld   hl,$C200
  5057.     ld   [hl],$80
  5058.     call Unk_202A
  5059.     ld   a,$02
  5060.     ldh  [hUnk_FF98],a
  5061.     ld   a,$01
  5062.     ld   [wUnk_DFF8],a
  5063.     ret
  5064.  
  5065.     ld   a,$02
  5066.     ldh  [hUnk_FF8F],a
  5067.     ld   a,$10
  5068.     ldh  [hUnk_FF8E],a
  5069.     ld   a,$C0
  5070.     ldh  [hUnk_FF8D],a
  5071.     ld   hl,$C200
  5072.     call Unk_2390
  5073.     ret
  5074.  
  5075.     ld   a,$01
  5076.     ldh  [hUnk_FF8F],a
  5077.     ld   a,$10
  5078.     ldh  [hUnk_FF8E],a
  5079.     ld   a,$C0
  5080.     ldh  [hUnk_FF8D],a
  5081.     ld   hl,$C200
  5082.     call Unk_2390
  5083.     ret
  5084.  
  5085.     ld   a,$01
  5086.     ldh  [hUnk_FF8F],a
  5087.     ld   a,$18
  5088.     ldh  [hUnk_FF8E],a
  5089.     ld   a,$C0
  5090.     ldh  [hUnk_FF8D],a
  5091.     ld   hl,$C210
  5092.     call Unk_2390
  5093.     ret
  5094.  
  5095.     ld   b,$20
  5096.     ld   a,$8E
  5097.     ld   de,$0020
  5098.     ld   [hl],a
  5099.     add  hl,de
  5100.     dec  b
  5101.     jr   nz,.unk_2057
  5102.     ret
  5103. TimerHandler:
  5104.     ei
  5105.     push af
  5106.     ld   a,[wUnk_D054]
  5107.     and  a
  5108.     jr   nz,.unk_206A
  5109.     ldh  a,[hIsDemoActive]
  5110.     and  a
  5111.     jr   nz,.unk_2079
  5112.     xor  a
  5113.     ld   [wUnk_D054],a
  5114.     push bc
  5115.     push de
  5116.     push hl
  5117.     call JumpTo
  5118.     pop  hl
  5119.     pop  de
  5120.     pop  bc
  5121.     pop  af
  5122.     reti
  5123.     xor  a
  5124.     ld   [wUnk_DFE0],a
  5125.     ld   [wUnk_DFF8],a
  5126.     jr   .unk_206A
  5127. LCDHandler:
  5128.     reti
  5129.     nop
  5130.     jr   nz,.unk_20B6
  5131.     nop
  5132.     nop
  5133.     nop
  5134.     nop
  5135.     rst  $38
  5136.     nop
  5137.     dec  sp
  5138.     ld   l,d
  5139.     nop
  5140.     nop
  5141.     nop
  5142.     nop
  5143.     rst  $38
  5144.     nop
  5145.     inc  d
  5146.     jr   nc,.unk_2097
  5147.     nop
  5148.     nop
  5149.     nop
  5150.     rst  $38
  5151.     nop
  5152.     dec  sp
  5153.     ld   l,d
  5154.     stop
  5155.     nop
  5156.     nop
  5157.     rst  $38
  5158. Clear9800Map:
  5159.     ld   hl,$9BFF
  5160.     ld   bc,$0400
  5161.     ld   a,$FF
  5162.     ldd  [hl],a
  5163.     dec  bc
  5164.     ld   a,b
  5165.     or   c
  5166.     jr   nz,.unk_20A9
  5167.     ret
  5168. Copy:
  5169.     ldi  a,[hl]
  5170.     ld   [de],a
  5171.     inc  de
  5172.     dec  bc
  5173.     ld   a,b
  5174.     or   c
  5175.     jr   nz,Copy
  5176.     ret
  5177. CopyTiles:
  5178.     ld   hl,Tiles
  5179.     ld   de,$8000
  5180.     ld   bc,$17FF
  5181.     call Copy
  5182.     ret
  5183.  
  5184.     ret
  5185. PrintTileMap:
  5186.     ld   hl,$9800
  5187.     ld   b,$12
  5188.     push hl
  5189.     ld   c,$14
  5190.     ld   a,[de]
  5191.     ldi  [hl],a
  5192.     inc  de
  5193.     dec  c
  5194.     jr   nz,.unk_20D1
  5195.     pop  hl
  5196.     push de
  5197.     ld   de,$0020
  5198.     add  hl,de
  5199.     pop  de
  5200.     dec  b
  5201.     jr   nz,.unk_20CE
  5202.     ret
  5203.  
  5204.     ld   hl,$9C00
  5205.     ld   b,$18
  5206.     push hl
  5207.     ld   c,$09
  5208.     ld   a,[de]
  5209.     ldi  [hl],a
  5210.     inc  de
  5211.     dec  c
  5212.     jr   nz,.unk_20EA
  5213.     pop  hl
  5214.     push de
  5215.     ld   de,$0020
  5216.     add  hl,de
  5217.     pop  de
  5218.     dec  b
  5219.     jr   nz,.unk_20E7
  5220.     ret
  5221.  
  5222.     ld   de,$DFE8
  5223.     xor  a
  5224.     ldh  [hUnk_FFDE],a
  5225.     ld   a,[wUnk_D042]
  5226.     and  a
  5227.     jr   nz,.unk_211F
  5228.     ld   a,$04
  5229.     ld   [de],a
  5230.     ld   hl,wUnk_D000
  5231.     ldi  a,[hl]
  5232.     cp   a,$03
  5233.     jr   z,.unk_2117
  5234.     ld   a,[hl]
  5235.     cp   a,$03
  5236.     jr   nz,.unk_211A
  5237.     ld   a,$06
  5238.     ld   [de],a
  5239.     ld   a,$01
  5240.     ld   [wUnk_D042],a
  5241.     call Unk_279C
  5242.     ldh  a,[hWaitFrames]
  5243.     and  a
  5244.     ret  nz
  5245.     ldh  a,[hUnk_FFF4]
  5246.     cp   a,$FD
  5247.     jr   nz,.unk_2131
  5248.     call Unk_1393
  5249.     jr   .unk_2134
  5250.     call Unk_2181
  5251.     ldh  a,[hSerialRole]
  5252.     cp   a,$30
  5253.     jr   z,.unk_2141
  5254.     ldh  a,[hUnk_FFD0]
  5255.     cp   a,$E8
  5256.     jr   z,.unk_214E
  5257.     ret
  5258.  
  5259.     ldh  a,[hJoyPressed]
  5260.     cp   a,$08
  5261.     ret  nz
  5262.     ldh  a,[hUnk_FFA7]
  5263.     and  a
  5264.     ret  nz
  5265.     ld   a,$E8
  5266.     ldh  [hSerialNext],a
  5267.     ld   a,$83
  5268.     ldh  [rLCDC],a
  5269.     call Unk_10A6
  5270.     xor  a
  5271.     ld   [wUnk_D04B],a
  5272.     call Unk_2172
  5273.     call JumpToInitMusic
  5274.     call Unk_1E39
  5275.     call Unk_0B83
  5276.     ld   a,$10
  5277.     ldh  [hWaitFrames],a
  5278.     ld   a,$15
  5279.     ldh  [hGameStatus],a
  5280.     xor  a
  5281.     ld   [wUnk_D042],a
  5282.     ret
  5283.  
  5284.     ld   hl,$C023
  5285.     ld   de,$0004
  5286.     ld   b,$0A
  5287.     res  7,[hl]
  5288.     add  hl,de
  5289.     dec  b
  5290.     jr   nz,.unk_217A
  5291.     ret
  5292.  
  5293.     ldh  a,[hUnk_FFE2]
  5294.     and  a,$0F
  5295.     ret  nz
  5296.     ld   hl,$C022
  5297.     ld   de,$0004
  5298.     ld   bc,$D03F
  5299.     ld   a,[bc]
  5300.     xor  a,$01
  5301.     ld   [bc],a
  5302.     jr   z,.unk_21A2
  5303.     call Unk_1025
  5304.     ret
  5305.  
  5306.     ld   a,[bc]
  5307.     cp   a,$FD
  5308.     ret  z
  5309.     ld   [hl],a
  5310.     add  hl,de
  5311.     inc  bc
  5312.     jr   .unk_2199
  5313.     ld   bc,$21AB
  5314.     jr   .unk_2199
  5315.     rst  $38
  5316.     inc  e
  5317.     dec  e
  5318.     -
  5319.     inc  a
  5320.     ld   l,$2F
  5321.     -
  5322.     xor  a
  5323.     ldh  [hUnk_FF98],a
  5324.     ldh  [hUnk_FFC0],a
  5325.     call Unk_279C
  5326.     ldh  a,[hWaitFrames]
  5327.     and  a
  5328.     ret  nz
  5329.     ld   b,$14
  5330.     ld   a,[wUnk_D000]
  5331.     cp   a,$03
  5332.     jp   nc,Unk_21D1
  5333.     ld   a,[wUnk_D001]
  5334.     cp   a,$03
  5335.     jp   nc,Unk_21D1
  5336.     ld   b,$09
  5337.     jr   .unk_21DC
  5338.     ld   hl,wUnk_D000
  5339.     xor  a
  5340.     ldi  [hl],a
  5341.     ld   [hl],a
  5342.     push bc
  5343.     call ClearOAMBuffer
  5344.     pop  bc
  5345.     ld   a,b
  5346.     ldh  [hGameStatus],a
  5347.     call Unk_1E39
  5348.     ret
  5349.  
  5350.     call ShutLCDDown
  5351.     xor  a
  5352.     ldh  [hIsDemoActive],a
  5353.     ld   de,$8000
  5354.     ld   hl,$4D9E
  5355.     ld   bc,$0300
  5356.     call Copy
  5357.     ld   de,$5ABE
  5358.     call PrintTileMap
  5359.     ldh  a,[hTwoPlayerMode]
  5360.     inc  a
  5361.     ld   [wUnk_9844],a
  5362.     ld   hl,wOAMBuffer
  5363.     ld   de,$05E7
  5364.     rst  $18
  5365.     ret
  5366.  
  5367.     call Unk_0653
  5368.     call Unk_0928
  5369.     call Unk_0AF5
  5370.     ld   a,$83
  5371.     ldh  [rLCDC],a
  5372.     xor  a
  5373.     ldh  [hSerialNext],a
  5374.     ldh  [hUnk_FFD0],a
  5375.     ld   hl,$9863
  5376.     ld   a,$93
  5377.     ld   bc,$0302
  5378.     call Unk_0B4C
  5379.     ld   hl,$986F
  5380.     ld   a,$95
  5381.     ld   bc,$0203
  5382.     call Unk_0B4C
  5383.     ld   hl,$9864
  5384.     ld   a,$94
  5385.     ld   b,$0B
  5386.     call Unk_0B42
  5387.     ld   hl,$98A4
  5388.     ld   a,$99
  5389.     ld   b,$0B
  5390.     call Unk_0B42
  5391.     ld   hl,$DFE9
  5392.     ld   a,$03
  5393.     cp   [hl]
  5394.     ret  z
  5395.     ld   [wUnk_DFE8],a
  5396.     ret
  5397. ShutLCDDown:
  5398.     ldh  a,[rIE]
  5399.     ldh  [hUnk_FFA1],a
  5400.     res  0,a
  5401.     ldh  [rIE],a
  5402.     ldh  a,[rLY]
  5403.     cp   a,$91
  5404.     jr   nz,.unk_2258
  5405.     ldh  a,[rLCDC]
  5406.     and  a,$7F
  5407.     ldh  [rLCDC],a
  5408.     xor  a
  5409.     ldh  [rIF],a
  5410.     ldh  a,[hUnk_FFA1]
  5411.     ldh  [rIE],a
  5412.     ret
  5413.  
  5414.     ldh  a,[hTwoPlayerMode]
  5415.     and  a
  5416.     ret  nz
  5417.     ld   hl,$C859
  5418.     ld   de,$1104
  5419.     call Unk_0D90
  5420.     ret
  5421.  
  5422.     ldh  a,[hTwoPlayerMode]
  5423.     and  a
  5424.     ret  nz
  5425.     ld   hl,$C85A
  5426.     ld   de,$10FF
  5427.     call Unk_0D90
  5428.     ret
  5429.  
  5430.     ldh  a,[hTwoPlayerMode]
  5431.     and  a
  5432.     ret  z
  5433.     ld   hl,$C848
  5434.     ld   de,$110A
  5435.     call Unk_0D90
  5436.     ret
  5437.  
  5438.     ldh  a,[hTwoPlayerMode]
  5439.     and  a
  5440.     ret  z
  5441.     ld   hl,$C830
  5442.     ld   de,$1113
  5443.     call Unk_0D90
  5444.     ret
  5445.  
  5446.     ld   hl,$C84A
  5447.     ldh  a,[hUnk_FFF4]
  5448.     cp   a,$FD
  5449.     jr   nz,.unk_22B0
  5450.     ld   hl,$C832
  5451.     ld   de,$1134
  5452.     call Unk_0D90
  5453.     ret
  5454.  
  5455.     ld   hl,$C828
  5456.     ld   b,$58
  5457.     ld   a,$FE
  5458.     call Unk_2687
  5459.     ret
  5460.  
  5461.     ld   hl,$C840
  5462.     ld   b,$40
  5463.     ld   a,$FE
  5464.     call Unk_2687
  5465.     ret
  5466.  
  5467.     ld   hl,$C850
  5468.     ld   b,$30
  5469.     ld   a,$FE
  5470.     call Unk_2687
  5471.     ret
  5472.  
  5473.     ldh  a,[hTwoPlayerMode]
  5474.     and  a
  5475.     jr   z,.unk_2309
  5476.     ldh  a,[hSerialRole]
  5477.     cp   a,$60
  5478.     jr   z,.unk_22F6
  5479.     ld   hl,$C872
  5480.     ld   de,$111C
  5481.     call Unk_0D90
  5482.     ld   hl,$C879
  5483.     ld   de,$1121
  5484.     call Unk_0D90
  5485.     ret
  5486.  
  5487.     ld   hl,$C871
  5488.     ld   de,$1128
  5489.     call Unk_0D90
  5490.     ld   hl,$C87A
  5491.     ld   de,$112F
  5492.     call Unk_0D90
  5493.     ret
  5494.  
  5495.     ld   hl,$C869
  5496.     ld   de,$111C
  5497.     call Unk_0D90
  5498.     ld   hl,$C872
  5499.     ld   de,$1121
  5500.     call Unk_0D90
  5501.     ret
  5502. PollJoypad:
  5503.     ld   a,$20
  5504.     ldh  [rP1],a
  5505.     ldh  a,[rP1]
  5506.     ldh  a,[rP1]
  5507.     ldh  a,[rP1]
  5508.     ldh  a,[rP1]
  5509.     cpl
  5510.     and  a,$0F
  5511.     swap a
  5512.     ld   b,a
  5513.     ld   a,$10
  5514.     ldh  [rP1],a
  5515.     ldh  a,[rP1]
  5516.     ldh  a,[rP1]
  5517.     ldh  a,[rP1]
  5518.     ldh  a,[rP1]
  5519.     ldh  a,[rP1]
  5520.     ldh  a,[rP1]
  5521.     ldh  a,[rP1]
  5522.     ldh  a,[rP1]
  5523.     ldh  a,[rP1]
  5524.     ldh  a,[rP1]
  5525.     cpl
  5526.     and  a,$0F
  5527.     or   b
  5528.     ld   c,a
  5529.     ldh  a,[hJoyHeld]
  5530.     xor  c
  5531.     and  c
  5532.     ldh  [hJoyPressed],a
  5533.     ld   a,c
  5534.     ldh  [hJoyHeld],a
  5535.     ld   a,$30
  5536.     ldh  [rP1],a
  5537.     ret
  5538.  
  5539.     ldh  a,[hUnk_FFB2]
  5540.     sub  a,$10
  5541.     srl  a
  5542.     srl  a
  5543.     srl  a
  5544.     ld   de,Reset
  5545.     ld   e,a
  5546.     ld   hl,$9800
  5547.     ld   b,$20
  5548.     add  hl,de
  5549.     dec  b
  5550.     jr   nz,.unk_236C
  5551.     ldh  a,[hUnk_FFB3]
  5552.     sub  a,$08
  5553.     srl  a
  5554.     srl  a
  5555.     srl  a
  5556.     ld   de,Reset
  5557.     ld   e,a
  5558.     add  hl,de
  5559.     ld   a,h
  5560.     ldh  [hUnk_FFB5],a
  5561.     ld   a,l
  5562.     ldh  [hUnk_FFB4],a
  5563.     ret
  5564. DMARoutine:
  5565.     ld   a,$C0
  5566.     ldh  [rDMA],a
  5567.     ld   a,$28
  5568.     dec  a
  5569.     jr   nz,.unk_238C
  5570.     ret
  5571.  
  5572.     ld   a,h
  5573.     ldh  [hUnk_FF96],a
  5574.     ld   a,l
  5575.     ldh  [hUnk_FF97],a
  5576.     ld   a,[hl]
  5577.     and  a
  5578.     jr   z,.unk_23B7
  5579.     cp   a,$80
  5580.     jr   z,.unk_23B5
  5581.     ldh  a,[hUnk_FF96]
  5582.     ld   h,a
  5583.     ldh  a,[hUnk_FF97]
  5584.     ld   l,a
  5585.     ld   de,$0010
  5586.     add  hl,de
  5587.     ldh  a,[hUnk_FF8F]
  5588.     dec  a
  5589.     ldh  [hUnk_FF8F],a
  5590.     ret  z
  5591.     jr   .unk_2390
  5592.     xor  a
  5593.     ldh  [hUnk_FF95],a
  5594.     jr   .unk_239E
  5595.     ldh  [hUnk_FF95],a
  5596.     ld   b,$07
  5597.     ld   de,$FF86
  5598.     ldi  a,[hl]
  5599.     ld   [de],a
  5600.     inc  de
  5601.     dec  b
  5602.     jr   nz,.unk_23BC
  5603.     ldh  a,[hUnk_FF89]
  5604.     ld   hl,$246B
  5605.     rlca
  5606.     ld   e,a
  5607.     ld   d,$00
  5608.     add  hl,de
  5609.     ld   e,[hl]
  5610.     inc  hl
  5611.     ld   d,[hl]
  5612.     ld   a,[de]
  5613.     ld   l,a
  5614.     inc  de
  5615.     ld   a,[de]
  5616.     ld   h,a
  5617.     inc  de
  5618.     ld   a,[de]
  5619.     ldh  [hUnk_FF90],a
  5620.     inc  de
  5621.     ld   a,[de]
  5622.     ldh  [hUnk_FF91],a
  5623.     ld   e,[hl]
  5624.     inc  hl
  5625.     ld   d,[hl]
  5626.     inc  hl
  5627.     ldh  a,[hUnk_FF8C]
  5628.     ldh  [hUnk_FF94],a
  5629.     ld   a,[hl]
  5630.     cp   a,$FF
  5631.     jr   z,.unk_23B0
  5632.     cp   a,$FD
  5633.     jr   nz,.unk_23FB
  5634.     ldh  a,[hUnk_FF8C]
  5635.     xor  a,$20
  5636.     ldh  [hUnk_FF94],a
  5637.     inc  hl
  5638.     ld   a,[hl]
  5639.     jr   .unk_23FF
  5640.     inc  de
  5641.     inc  de
  5642.     jr   .unk_23DF
  5643.     cp   a,$FE
  5644.     jr   z,.unk_23F7
  5645.     ldh  [hUnk_FF89],a
  5646.     ldh  a,[hUnk_FF87]
  5647.     ld   b,a
  5648.     ld   a,[de]
  5649.     ld   c,a
  5650.     ldh  a,[hUnk_FF8B]
  5651.     bit  6,a
  5652.     jr   nz,.unk_2412
  5653.     ldh  a,[hUnk_FF90]
  5654.     add  b
  5655.     adc  c
  5656.     jr   .unk_241C
  5657.     ld   a,b
  5658.     push af
  5659.     ldh  a,[hUnk_FF90]
  5660.     ld   b,a
  5661.     pop  af
  5662.     sub  b
  5663.     sbc  c
  5664.     sbc  a,$08
  5665.     ldh  [hUnk_FF93],a
  5666.     ldh  a,[hUnk_FF88]
  5667.     ld   b,a
  5668.     inc  de
  5669.     ld   a,[de]
  5670.     inc  de
  5671.     ld   c,a
  5672.     ldh  a,[hUnk_FF8B]
  5673.     bit  5,a
  5674.     jr   nz,.unk_2431
  5675.     ldh  a,[hUnk_FF91]
  5676.     add  b
  5677.     adc  c
  5678.     jr   .unk_243B
  5679.     ld   a,b
  5680.     push af
  5681.     ldh  a,[hUnk_FF91]
  5682.     ld   b,a
  5683.     pop  af
  5684.     sub  b
  5685.     sbc  c
  5686.     sbc  a,$08
  5687.     ldh  [hUnk_FF92],a
  5688.     push hl
  5689.     ldh  a,[hUnk_FF8D]
  5690.     ld   h,a
  5691.     ldh  a,[hUnk_FF8E]
  5692.     ld   l,a
  5693.     ldh  a,[hUnk_FF95]
  5694.     and  a
  5695.     jr   z,.unk_244D
  5696.     ld   a,$FF
  5697.     jr   .unk_244F
  5698.     ldh  a,[hUnk_FF93]
  5699.     ldi  [hl],a
  5700.     ldh  a,[hUnk_FF92]
  5701.     ldi  [hl],a
  5702.     ldh  a,[hUnk_FF89]
  5703.     ldi  [hl],a
  5704.     ldh  a,[hUnk_FF94]
  5705.     ld   b,a
  5706.     ldh  a,[hUnk_FF8B]
  5707.     or   b
  5708.     ld   b,a
  5709.     ldh  a,[hUnk_FF8A]
  5710.     or   b
  5711.     ldi  [hl],a
  5712.     ld   a,h
  5713.     ldh  [hUnk_FF8D],a
  5714.     ld   a,l
  5715.     ldh  [hUnk_FF8E],a
  5716.     pop  hl
  5717.     jp   Unk_23DF
  5718.     sbc  e
  5719.     inc  h
  5720.     sbc  a
  5721.     inc  h
  5722.     and  e
  5723.     inc  h
  5724.     and  a
  5725.     inc  h
  5726.     xor  e
  5727.     inc  h
  5728.     xor  a
  5729.     inc  h
  5730.     or   e
  5731.     inc  h
  5732.     or   a
  5733.     inc  h
  5734.     cp   e
  5735.     inc  h
  5736.     cp   a
  5737.     inc  h
  5738.     jp   Unk_C724
  5739.     inc  h
  5740.     sla  h
  5741.     rst  $08
  5742.     inc  h
  5743.     -
  5744.     inc  h
  5745.     rst  $10
  5746.     inc  h
  5747.     -
  5748.     inc  h
  5749.     rst  $18
  5750.     inc  h
  5751.     -
  5752.     inc  h
  5753.     rst  $20
  5754.     inc  h
  5755.     -
  5756.     inc  h
  5757.     rst  $28
  5758.     inc  h
  5759.     di
  5760.     inc  h
  5761.     rst  $30
  5762.     inc  h
  5763.     ei
  5764.     inc  h
  5765.     rst  $38
  5766.     nop
  5767.     nop
  5768.     dec  h
  5769.     rst  $30
  5770.     nop
  5771.     dec  b
  5772.     dec  h
  5773.     rst  $38
  5774.     nop
  5775.     ld   a,[bc]
  5776.     dec  h
  5777.     rst  $30
  5778.     nop
  5779.     rrca
  5780.     dec  h
  5781.     rst  $38
  5782.     nop
  5783.     inc  d
  5784.     dec  h
  5785.     rst  $30
  5786.     nop
  5787.     add  hl,de
  5788.     dec  h
  5789.     rst  $38
  5790.     nop
  5791.     ld   e,$25
  5792.     rst  $30
  5793.     nop
  5794.     inc  hl
  5795.     dec  h
  5796.     rst  $38
  5797.     nop
  5798.     jr   z,.unk_24E6
  5799.     rst  $30
  5800.     nop
  5801.     dec  l
  5802.     dec  h
  5803.     rst  $38
  5804.     nop
  5805.     ldd  [hl],a
  5806.     dec  h
  5807.     rst  $30
  5808.     nop
  5809.     scf
  5810.     dec  h
  5811.     rst  $38
  5812.     nop
  5813.     inc  a
  5814.     dec  h
  5815.     rst  $30
  5816.     nop
  5817.     ld   b,c
  5818.     dec  h
  5819.     rst  $38
  5820.     nop
  5821.     ld   b,[hl]
  5822.     dec  h
  5823.     rst  $30
  5824.     nop
  5825.     ld   c,e
  5826.     dec  h
  5827.     rst  $38
  5828.     nop
  5829.     ld   d,b
  5830.     dec  h
  5831.     rst  $30
  5832.     nop
  5833.     ld   d,l
  5834.     dec  h
  5835.     rst  $38
  5836.     nop
  5837.     ld   e,d
  5838.     dec  h
  5839.     rst  $30
  5840.     nop
  5841.     ld   e,a
  5842.     dec  h
  5843.     rst  $38
  5844.     nop
  5845.     ld   h,h
  5846.     dec  h
  5847.     rst  $30
  5848.     nop
  5849.     ld   l,c
  5850.     dec  h
  5851.     rst  $38
  5852.     nop
  5853.     ld   l,[hl]
  5854.     dec  h
  5855.     rst  $30
  5856.     nop
  5857.     ld   [hl],e
  5858.     dec  h
  5859.     add  b
  5860.     sub  b
  5861.     rst  $38
  5862.     ld   [hl],a
  5863.     dec  h
  5864.     and  b
  5865.     or   b
  5866.     rst  $38
  5867.     ld   [hl],e
  5868.     dec  h
  5869.     add  b
  5870.     sub  b
  5871.     rst  $38
  5872.     ld   [hl],a
  5873.     dec  h
  5874.     and  b
  5875.     or   b
  5876.     rst  $38
  5877.     ld   [hl],e
  5878.     dec  h
  5879.     add  b
  5880.     sub  c
  5881.     rst  $38
  5882.     ld   [hl],a
  5883.     dec  h
  5884.     and  b
  5885.     or   c
  5886.     rst  $38
  5887.     ld   [hl],e
  5888.     dec  h
  5889.     add  c
  5890.     sub  b
  5891.     rst  $38
  5892.     ld   [hl],a
  5893.     dec  h
  5894.     and  c
  5895.     or   b
  5896.     rst  $38
  5897.     ld   [hl],e
  5898.     dec  h
  5899.     add  b
  5900.     sub  d
  5901.     rst  $38
  5902.     ld   [hl],a
  5903.     dec  h
  5904.     and  b
  5905.     or   d
  5906.     rst  $38
  5907.     ld   [hl],e
  5908.     dec  h
  5909.     add  d
  5910.     sub  b
  5911.     rst  $38
  5912.     ld   [hl],a
  5913.     dec  h
  5914.     and  d
  5915.     or   b
  5916.     rst  $38
  5917.     ld   [hl],e
  5918.     dec  h
  5919.     add  c
  5920.     sub  c
  5921.     rst  $38
  5922.     ld   [hl],a
  5923.     dec  h
  5924.     and  c
  5925.     or   c
  5926.     rst  $38
  5927.     ld   [hl],e
  5928.     dec  h
  5929.     add  c
  5930.     sub  c
  5931.     rst  $38
  5932.     ld   [hl],a
  5933.     dec  h
  5934.     and  c
  5935.     or   c
  5936.     rst  $38
  5937.     ld   [hl],e
  5938.     dec  h
  5939.     add  c
  5940.     sub  d
  5941.     rst  $38
  5942.     ld   [hl],a
  5943.     dec  h
  5944.     and  c
  5945.     or   d
  5946.     rst  $38
  5947.     ld   [hl],e
  5948.     dec  h
  5949.     add  d
  5950.     sub  c
  5951.     rst  $38
  5952.     ld   [hl],a
  5953.     dec  h
  5954.     and  d
  5955.     or   c
  5956.     rst  $38
  5957.     ld   [hl],e
  5958.     dec  h
  5959.     add  d
  5960.     sub  d
  5961.     rst  $38
  5962.     ld   [hl],a
  5963.     dec  h
  5964.     and  d
  5965.     or   d
  5966.     rst  $38
  5967.     ld   [hl],e
  5968.     dec  h
  5969.     add  d
  5970.     sub  d
  5971.     rst  $38
  5972.     ld   [hl],a
  5973.     dec  h
  5974.     and  d
  5975.     or   d
  5976.     rst  $38
  5977.     nop
  5978.     nop
  5979.     nop
  5980.     ld   [Reset],sp
  5981.     ld   [wUnk_F000],sp
  5982.     ldh  [hUnk_FFA7],a
  5983.     ret  z
  5984.     ld   a,[de]
  5985.     dec  e
  5986.     and  a,$0F
  5987.     jr   z,.unk_258C
  5988.     ldi  [hl],a
  5989.     ld   c,$03
  5990.     ld   a,$01
  5991.     jr   .unk_2590
  5992.     inc  l
  5993.     ld   c,$03
  5994.     xor  a
  5995.     ldh  [hUnk_FFE0],a
  5996.     ld   a,[de]
  5997.     ld   b,a
  5998.     swap a
  5999.     and  a,$0F
  6000.     jr   nz,.unk_25C2
  6001.     ldh  a,[hUnk_FFE0]
  6002.     and  a
  6003.     ld   a,$00
  6004.     jr   nz,.unk_25A3
  6005.     ld   a,$FE
  6006.     ldi  [hl],a
  6007.     ld   a,b
  6008.     and  a,$0F
  6009.     jr   nz,.unk_25CA
  6010.     ldh  a,[hUnk_FFE0]
  6011.     and  a
  6012.     ld   a,$00
  6013.     jr   nz,.unk_25B9
  6014.     ld   a,$01
  6015.     cp   c
  6016.     ld   a,$00
  6017.     jr   z,.unk_25B9
  6018.     ld   a,$FE
  6019.     ldi  [hl],a
  6020.     dec  e
  6021.     dec  c
  6022.     jr   nz,.unk_2592
  6023.     xor  a
  6024.     ldh  [hUnk_FFE0],a
  6025.     ret
  6026.  
  6027.     push af
  6028.     ld   a,$01
  6029.     ldh  [hUnk_FFE0],a
  6030.     pop  af
  6031.     jr   .unk_25A3
  6032.     push af
  6033.     ld   a,$01
  6034.     ldh  [hUnk_FFE0],a
  6035.     pop  af
  6036.     jr   .unk_25B9
  6037.     ld   hl,$98B2
  6038.     ld   de,$2729
  6039.     ld   b,$03
  6040.     ldh  a,[hUnk_FFAD]
  6041.     cp   a,$04
  6042.     jr   z,.unk_25EA
  6043.     ld   de,$272C
  6044.     cp   a,$03
  6045.     jr   z,.unk_25EA
  6046.     ld   de,$272F
  6047.     ld   a,[de]
  6048.     ld   [hl],a
  6049.     push de
  6050.     ld   de,$0020
  6051.     add  hl,de
  6052.     pop  de
  6053.     inc  de
  6054.     dec  b
  6055.     jr   nz,.unk_25EA
  6056.     call Unk_268C
  6057.     ldh  a,[hTwoPlayerMode]
  6058.     and  a
  6059.     jr   nz,.unk_2609
  6060.     call Unk_2696
  6061.     call Unk_26DA
  6062.     call Unk_270E
  6063.     jr   .unk_2615
  6064.     ld   hl,wUnk_D000
  6065.     call Unk_2732
  6066.     ld   hl,wUnk_D001
  6067.     call Unk_2757
  6068.     ld   hl,$C800
  6069.     ld   b,$80
  6070.     ld   a,$FF
  6071.     call Unk_2687
  6072.     xor  a
  6073.     ldh  [hUnk_FF9D],a
  6074.     ldh  [hUnk_FF9C],a
  6075.     ldh  [hUnk_FF9F],a
  6076.     ldh  [hUnk_FFC6],a
  6077.     ldh  [hUnk_FFC7],a
  6078.     ldh  [hUnk_FFC8],a
  6079.     ldh  [hUnk_FFC9],a
  6080.     ldh  [hUnk_FFCA],a
  6081.     ldh  [hUnk_FFCE],a
  6082.     ldh  [hUnk_FFD1],a
  6083.     ldh  [hUnk_FFD2],a
  6084.     ldh  [hUnk_FFD3],a
  6085.     ldh  [hUnk_FFD4],a
  6086.     ldh  [hUnk_FFD5],a
  6087.     ldh  [hUnk_FFD6],a
  6088.     ldh  [hUnk_FFD7],a
  6089.     ldh  [hUnk_FFD8],a
  6090.     ldh  [hUnk_FFD9],a
  6091.     ld   a,$80
  6092.     ldh  [hUnk_FFDA],a
  6093.     xor  a
  6094.     ldh  [hUnk_FFDB],a
  6095.     ldh  [hUnk_FFDC],a
  6096.     ldh  [hUnk_FFDD],a
  6097.     ldh  [hUnk_FFDE],a
  6098.     ldh  [hUnk_FFE5],a
  6099.     ldh  [hUnk_FFE6],a
  6100.     ldh  [hUnk_FFE7],a
  6101.     ldh  [hUnk_FFE8],a
  6102.     ldh  [hWaitFrames],a
  6103.     ldh  [hUnk_FFF0],a
  6104.     ldh  [hUnk_FFF3],a
  6105.     ldh  [hUnk_FFF4],a
  6106.     ldh  [hUnk_FFF5],a
  6107.     ldh  [hUnk_FFF6],a
  6108.     ldh  [hUnk_FFF7],a
  6109.     ldh  [hUnk_FFF8],a
  6110.     ldh  [hUnk_FFF9],a
  6111.     ldh  [hUnk_FFFA],a
  6112.     ldh  [hUnk_FFFB],a
  6113.     ldh  [hUnk_FFFC],a
  6114.     ld   hl,$D002
  6115.     xor  a
  6116.     ld   b,$63
  6117.     call Unk_2687
  6118.     ld   a,$03
  6119.     ldi  [hl],a
  6120.     xor  a
  6121.     ldi  [hl],a
  6122.     ldi  [hl],a
  6123.     ld   a,$98
  6124.     ldi  [hl],a
  6125.     ld   a,$7F
  6126.     ldi  [hl],a
  6127.     ret
  6128.  
  6129.     ldi  [hl],a
  6130.     dec  b
  6131.     jr   nz,.unk_2687
  6132.     ret
  6133.  
  6134.     ld   hl,$C020
  6135.     ld   de,$26A0
  6136.     call Unk_2794
  6137.     ret
  6138.  
  6139.     ld   hl,$C048
  6140.     ld   de,$26C9
  6141.     call Unk_2794
  6142.     ret
  6143.  
  6144.     dec  [hl]
  6145.     ld   [hl],h
  6146.     rst  $38
  6147.     <corrupted stop>
  6148.     ld   [hl],h
  6149.     inc  b
  6150.     <corrupted stop>
  6151.     ld   a,h
  6152.     ld   [bc],a
  6153.     <corrupted stop>
  6154.     ld   a,h
  6155.     dec  b
  6156.     <corrupted stop>
  6157.     ld   a,h
  6158.     nop
  6159.     <corrupted stop>
  6160.     ld   a,h
  6161.     rlca
  6162.     <corrupted stop>
  6163.     add  h
  6164.     ld   bc,$3510
  6165.     add  h
  6166.     inc  bc
  6167.     <corrupted stop>
  6168.     add  h
  6169.     ld   b,$10
  6170.     ld   b,l
  6171.     add  h
  6172.     ld   [wUnk_FD10],sp
  6173.     adc  l
  6174.     ld   l,e
  6175.     jr   nz,.unk_26DD
  6176.     adc  l
  6177.     ld   [hl],e
  6178.     ld   hl,$9510
  6179.     ld   l,e
  6180.     jr   nc,.unk_26E5
  6181.     sub  l
  6182.     ld   [hl],e
  6183.     ld   sp,$FD10
  6184.     ld   hl,$C058
  6185.     ld   de,$26EC
  6186.     ldh  a,[hTwoPlayerMode]
  6187.     and  a
  6188.     jr   z,.unk_26E8
  6189.     ld   de,$26FD
  6190.     call Unk_2794
  6191.     ret
  6192.  
  6193.     adc  l
  6194.     ld   a,e
  6195.     ld   b,b
  6196.     <corrupted stop>
  6197.     add  e
  6198.     ld   b,c
  6199.     <corrupted stop>
  6200.     ld   a,e
  6201.     ld   d,b
  6202.     <corrupted stop>
  6203.     add  e
  6204.     ld   d,c
  6205.     <corrupted stop>
  6206.     ld   [hl],l
  6207.     jr   c,.unk_2740
  6208.     <corrupted stop>
  6209.     ld   b,b
  6210.     ld   b,c
  6211.     <corrupted stop>
  6212.     jr   c,.unk_2758
  6213.     <corrupted stop>
  6214.     ld   b,b
  6215.     ld   d,c
  6216.     <corrupted stop>
  6217.     ld   hl,$C068
  6218.     ld   de,$2718
  6219.     call Unk_2794
  6220.     ret
  6221.  
  6222.     adc  l
  6223.     adc  e
  6224.     ld   h,b
  6225.     <corrupted stop>
  6226.     sub  e
  6227.     ld   h,c
  6228.     <corrupted stop>
  6229.     adc  e
  6230.     ld   [hl],b
  6231.     <corrupted stop>
  6232.     sub  e
  6233.     ld   [hl],c
  6234.     <corrupted stop>
  6235.     dec  d
  6236.     jr   .unk_274C
  6237.     ld   d,$0E
  6238.     dec  c
  6239.     ld   de,$FE12
  6240.     ld   a,[hl]
  6241.     and  a
  6242.     ret  z
  6243.     ld   c,a
  6244.     ld   b,c
  6245.     ld   hl,$C07C
  6246.     ld   de,$0004
  6247.     add  hl,de
  6248.     dec  b
  6249.     jr   nz,.unk_273D
  6250.     push hl
  6251.     ld   hl,$2778
  6252.     ld   b,c
  6253.     add  hl,de
  6254.     dec  b
  6255.     jr   nz,.unk_2746
  6256.     pop  de
  6257.     ld   b,$04
  6258.     ldi  a,[hl]
  6259.     ld   [de],a
  6260.     inc  de
  6261.     dec  b
  6262.     jr   nz,.unk_274D
  6263.     dec  c
  6264.     jr   nz,.unk_2736
  6265.     ret
  6266.  
  6267.     ld   a,[hl]
  6268.     and  a
  6269.     ret  z
  6270.     ld   c,a
  6271.     ld   b,c
  6272.     ld   hl,$C088
  6273.     ld   de,$0004
  6274.     add  hl,de
  6275.     dec  b
  6276.     jr   nz,.unk_2762
  6277.     push hl
  6278.     ld   hl,$2784
  6279.     ld   b,c
  6280.     add  hl,de
  6281.     dec  b
  6282.     jr   nz,.unk_276B
  6283.     pop  de
  6284.     ld   b,$04
  6285.     ldi  a,[hl]
  6286.     ld   [de],a
  6287.     inc  de
  6288.     dec  b
  6289.     jr   nz,.unk_2772
  6290.     dec  c
  6291.     jr   nz,.unk_275B
  6292.     ret
  6293.  
  6294.     ld   h,b
  6295.     ld   l,b
  6296.     inc  l
  6297.     nop
  6298.     ld   h,b
  6299.     ld   [hl],b
  6300.     inc  l
  6301.     nop
  6302.     ld   h,b
  6303.     ld   a,b
  6304.     inc  l
  6305.     nop
  6306.     ld   h,b
  6307.     adc  b
  6308.     inc  l
  6309.     nop
  6310.     ld   h,b
  6311.     sub  b
  6312.     inc  l
  6313.     nop
  6314.     ld   h,b
  6315.     sbc  b
  6316.     inc  l
  6317.     nop
  6318.     ld   a,[de]
  6319.     cp   a,$FD
  6320.     ret  z
  6321.     ldi  [hl],a
  6322.     inc  de
  6323.     jr   .unk_2794
  6324.     ldh  a,[hUnk_FFC0]
  6325.     and  a
  6326.     jr   nz,.unk_27B3
  6327.     ldh  a,[hTwoPlayerMode]
  6328.     and  a
  6329.     jr   z,.unk_27AC
  6330.     ld   a,[wHasGameStarted]
  6331.     and  a
  6332.     jr   nz,.unk_27B7
  6333.     ldh  a,[hUnk_FF98]
  6334.     cp   a,$02
  6335.     jp   z,Unk_282A
  6336.     call Unk_2C4F
  6337.     ret
  6338.  
  6339.     ld   hl,$FFD3
  6340.     ldh  a,[hUnk_FF98]
  6341.     cp   a,$02
  6342.     jr   nz,.unk_27D7
  6343.     ldh  a,[hUnk_FFCE]
  6344.     and  a
  6345.     jr   nz,.unk_27D7
  6346.     ldh  a,[hUnk_FFC4]
  6347.     cp   a,$05
  6348.     jr   c,.unk_27D7
  6349.     ldh  a,[hUnk_FFDE]
  6350.     and  a
  6351.     jr   z,.unk_27D7
  6352.     ld   a,$01
  6353.     ld   [wUnk_DF8B],a
  6354.     ldh  [hUnk_FFCE],a
  6355.     call Unk_0771
  6356.     inc  l
  6357.     ld   [hl],a
  6358.     ld   de,$0004
  6359.     ld   hl,$C052
  6360.     ldh  a,[hUnk_FFD2]
  6361.     call Unk_27EE
  6362.     ldh  a,[hUnk_FFD4]
  6363.     call Unk_27EE
  6364.     jr   .unk_27AC
  6365.     ld   b,a
  6366.     swap a
  6367.     and  a,$0F
  6368.     call Unk_27FD
  6369.     ld   a,b
  6370.     and  a,$0F
  6371.     call Unk_27FD
  6372.     ret
  6373.  
  6374.     cp   a,$08
  6375.     jr   nc,.unk_280B
  6376.     cp   a,$04
  6377.     jr   nc,.unk_2813
  6378.     ld   c,$4C
  6379.     call Unk_281B
  6380.     ret
  6381.  
  6382.     ld   c,$68
  6383.     sub  a,$08
  6384.     call Unk_281B
  6385.     ret
  6386.  
  6387.     ld   c,$6C
  6388.     sub  a,$04
  6389.     call Unk_281B
  6390.     ret
  6391.  
  6392.     and  a
  6393.     jr   z,.unk_2822
  6394.     inc  c
  6395.     dec  a
  6396.     jr   .unk_281B
  6397.     ld   [hl],c
  6398.     add  hl,de
  6399.     ld   a,c
  6400.     add  a,$10
  6401.     ld   [hl],a
  6402.     add  hl,de
  6403.     ret
  6404.  
  6405.     call Unk_282E
  6406.     ret
  6407.  
  6408.     ldh  a,[hUnk_FF9C]
  6409.     rst  $28
  6410.     ld   b,c
  6411.     jr   z,.unk_283D
  6412.     ldi  a,[hl]
  6413.     ld   b,e
  6414.     dec  hl
  6415.     reti
  6416.     dec  hl
  6417.     ld   a,a
  6418.     inc  l
  6419.     ei
  6420.     inc  l
  6421.     ld   b,$2D
  6422.     ldi  [hl],a
  6423.     ld   l,$F0
  6424.     or   c
  6425.     and  a
  6426.     jr   z,.unk_2879
  6427.     ld   de,wUnk_DF8A
  6428.     ld   hl,$C80B
  6429.     ldi  a,[hl]
  6430.     cp   a,$FF
  6431.     jr   nz,.unk_2872
  6432.     ld   a,[hl]
  6433.     cp   a,$FF
  6434.     jr   nz,.unk_2872
  6435.     ld   l,$13
  6436.     ldi  a,[hl]
  6437.     cp   a,$FF
  6438.     jr   nz,.unk_2872
  6439.     ld   a,[hl]
  6440.     cp   a,$FF
  6441.     jr   nz,.unk_2872
  6442.     ld   l,$1B
  6443.     ldi  a,[hl]
  6444.     cp   a,$FF
  6445.     jr   nz,.unk_2872
  6446.     ld   a,[hl]
  6447.     cp   a,$FF
  6448.     jr   nz,.unk_2872
  6449.     xor  a
  6450.     ld   [de],a
  6451.     jr   .unk_2879
  6452.     ld   a,[de]
  6453.     and  a
  6454.     jr   nz,.unk_2879
  6455.     ld   a,$01
  6456.     ld   [de],a
  6457.     ld   hl,$C808
  6458.     call Unk_29DC
  6459.     ld   l,$10
  6460.     call Unk_28CB
  6461.     ld   l,$18
  6462.     call Unk_29DC
  6463.     ld   l,$20
  6464.     call Unk_28CB
  6465.     ld   l,$28
  6466.     call Unk_29DC
  6467.     ld   l,$30
  6468.     call Unk_28CB
  6469.     ld   l,$38
  6470.     call Unk_29DC
  6471.     ld   l,$40
  6472.     call Unk_28CB
  6473.     ld   l,$48
  6474.     call Unk_29DC
  6475.     ld   l,$50
  6476.     call Unk_28CB
  6477.     ld   l,$58
  6478.     call Unk_29DC
  6479.     ld   l,$60
  6480.     call Unk_28CB
  6481.     ld   l,$68
  6482.     call Unk_29DC
  6483.     ld   l,$70
  6484.     call Unk_28CB
  6485.     ld   l,$78
  6486.     call Unk_29DC
  6487.     ld   a,$01
  6488.     ldh  [hUnk_FF9C],a
  6489.     ret
  6490.  
  6491.     inc  l
  6492.     ld   a,l
  6493.     and  a,$0F
  6494.     cp   a,$05
  6495.     ret  nc
  6496.     ld   a,[hl]
  6497.     cp   a,$FF
  6498.     jr   z,.unk_28CA
  6499.     and  a,$0F
  6500.     ld   b,a
  6501.     ld   c,$00
  6502.     inc  c
  6503.     inc  l
  6504.     ld   a,l
  6505.     and  a,$0F
  6506.     cp   a,$08
  6507.     jr   z,.unk_28EA
  6508.     ld   a,[hl]
  6509.     and  a,$0F
  6510.     cp   b
  6511.     jr   z,.unk_28DB
  6512.     ld   a,c
  6513.     cp   a,$04
  6514.     jr   c,.unk_28CB
  6515.     call Unk_28F9
  6516.     push hl
  6517.     call Unk_29C8
  6518.     pop  hl
  6519.     jr   .unk_28CB
  6520.     ld   a,$01
  6521.     ldh  [hUnk_FF9F],a
  6522.     ld   a,l
  6523.     sub  c
  6524.     ld   l,a
  6525.     call Unk_2907
  6526.     dec  c
  6527.     jr   nz,.unk_2900
  6528.     ret
  6529.  
  6530.     ld   a,[hl]
  6531.     cp   a,$E0
  6532.     jr   c,.unk_2916
  6533.     jr   z,.unk_291B
  6534.     cp   a,$E1
  6535.     jr   z,.unk_294C
  6536.     cp   a,$E2
  6537.     jr   z,.unk_2968
  6538.     ld   a,$0F
  6539.     and  [hl]
  6540.     ldi  [hl],a
  6541.     ret
  6542.  
  6543.     push hl
  6544.     ldh  a,[hTwoPlayerMode]
  6545.     and  a
  6546.     jr   nz,.unk_2935
  6547.     ld   hl,$FFD5
  6548.     dec  [hl]
  6549.     ldh  a,[hUnk_FFDB]
  6550.     bit  2,a
  6551.     jr   z,.unk_2931
  6552.     set  7,a
  6553.     ldh  [hUnk_FFDB],a
  6554.     jr   .unk_2935
  6555.     set  2,a
  6556.     ldh  [hUnk_FFDB],a
  6557.     ld   hl,$FFD1
  6558.     dec  [hl]
  6559.     inc  l
  6560.     ld   a,[hl]
  6561.     sub  a,$01
  6562.     daa
  6563.     ld   [hl],a
  6564.     ld   hl,$D00F
  6565.     inc  [hl]
  6566.     pop  hl
  6567.     ld   a,$F0
  6568.     or   [hl]
  6569.     ldi  [hl],a
  6570.     call Unk_2984
  6571.     ret
  6572.  
  6573.     push hl
  6574.     ldh  a,[hTwoPlayerMode]
  6575.     and  a
  6576.     jr   nz,.unk_2935
  6577.     ld   hl,$FFD6
  6578.     dec  [hl]
  6579.     ldh  a,[hUnk_FFDB]
  6580.     bit  1,a
  6581.     jr   z,.unk_2962
  6582.     set  6,a
  6583.     ldh  [hUnk_FFDB],a
  6584.     jr   .unk_2935
  6585.     set  1,a
  6586.     ldh  [hUnk_FFDB],a
  6587.     jr   .unk_2935
  6588.     push hl
  6589.     ldh  a,[hTwoPlayerMode]
  6590.     and  a
  6591.     jr   nz,.unk_2935
  6592.     ld   hl,$FFD7
  6593.     dec  [hl]
  6594.     ldh  a,[hUnk_FFDB]
  6595.     bit  0,a
  6596.     jr   z,.unk_297E
  6597.     set  5,a
  6598.     ldh  [hUnk_FFDB],a
  6599.     jr   .unk_2935
  6600.     set  0,a
  6601.     ldh  [hUnk_FFDB],a
  6602.     jr   .unk_2935
  6603.     push af
  6604.     ldh  a,[hTwoPlayerMode]
  6605.     and  a
  6606.     jr   nz,.unk_29B1
  6607.     push bc
  6608.     push de
  6609.     push hl
  6610.     ld   e,$00
  6611.     ldh  a,[hUnk_FFAD]
  6612.     cp   a,$02
  6613.     jr   z,.unk_29B3
  6614.     cp   a,$03
  6615.     jr   z,.unk_29B7
  6616.     ld   d,$01
  6617.     call Unk_29BB
  6618.     ld   hl,$C0A0
  6619.     call Unk_0181
  6620.     ld   hl,$FFE8
  6621.     inc  [hl]
  6622.     ld   a,[hl]
  6623.     cp   a,$06
  6624.     jr   c,.unk_29AE
  6625.     dec  [hl]
  6626.     pop  hl
  6627.     pop  de
  6628.     pop  bc
  6629.     pop  af
  6630.     ret
  6631.  
  6632.     ld   d,$03
  6633.     jr   .unk_299B
  6634.     ld   d,$02
  6635.     jr   .unk_299B
  6636.     ldh  a,[hUnk_FFE8]
  6637.     and  a
  6638.     ret  z
  6639.     ld   b,a
  6640.     ld   a,d
  6641.     add  d
  6642.     daa
  6643.     ld   d,a
  6644.     dec  b
  6645.     jr   nz,.unk_29C1
  6646.     ret
  6647.  
  6648.     and  a,$0F
  6649.     ld   b,a
  6650.     inc  b
  6651.     ld   hl,$FFD8
  6652.     ld   a,[hl]
  6653.     and  a,$C0
  6654.     ret  nz
  6655.     sla  [hl]
  6656.     sla  [hl]
  6657.     ld   a,[hl]
  6658.     or   b
  6659.     ld   [hl],a
  6660.     ret
  6661.  
  6662.     inc  l
  6663.     ld   a,l
  6664.     and  a,$0F
  6665.     ret  z
  6666.     cp   a,$0D
  6667.     ret  nc
  6668.     ld   a,[hl]
  6669.     cp   a,$FF
  6670.     jr   z,.unk_29DB
  6671.     and  a,$0F
  6672.     ld   b,a
  6673.     ld   c,$00
  6674.     inc  c
  6675.     inc  l
  6676.     ld   a,l
  6677.     and  a,$0F
  6678.     jr   z,.unk_29FA
  6679.     ld   a,[hl]
  6680.     and  a,$0F
  6681.     cp   b
  6682.     jr   z,.unk_29ED
  6683.     ld   a,c
  6684.     cp   a,$04
  6685.     jr   c,.unk_29DC
  6686.     call Unk_28F9
  6687.     push hl
  6688.     call Unk_29C8
  6689.     pop  hl
  6690.     jr   .unk_29DC
  6691.     ld   de,PerformDelay
  6692.     ld   hl,$C808
  6693.     call Unk_2A85
  6694.     ld   l,$09
  6695.     call Unk_2A85
  6696.     ld   l,$0A
  6697.     call Unk_2A85
  6698.     ld   l,$0B
  6699.     call Unk_2A85
  6700.     ld   l,$0C
  6701.     call Unk_2A85
  6702.     ld   l,$0D
  6703.     call Unk_2A85
  6704.     ld   l,$0E
  6705.     call Unk_2A85
  6706.     ld   l,$0F
  6707.     call Unk_2A85
  6708.     ld   hl,$FF9F
  6709.     ld   a,[hl]
  6710.     and  a
  6711.     jr   nz,.unk_2A66
  6712.     xor  a
  6713.     ldh  [hUnk_FFE8],a
  6714.     ldh  a,[hUnk_FFD8]
  6715.     and  a,$FC
  6716.     jr   z,.unk_2A51
  6717.     ld   b,a
  6718.     ldh  a,[hTwoPlayerMode]
  6719.     and  a
  6720.     jr   z,.unk_2A6D
  6721.     ld   a,$01
  6722.     ldh  [hUnk_FFDD],a
  6723.     jr   .unk_2A54
  6724.     xor  a
  6725.     ldh  [hUnk_FFD8],a
  6726.     ld   a,$06
  6727.     ldh  [hUnk_FF9C],a
  6728.     ld   hl,$FFF3
  6729.     inc  [hl]
  6730.     ld   a,[hl]
  6731.     cp   a,$0A
  6732.     ret  nz
  6733.     xor  a
  6734.     ld   [hl],a
  6735.     call Unk_0DB0
  6736.     ret
  6737.  
  6738.     xor  a
  6739.     ld   [hl],a
  6740.     ld   a,$02
  6741.     ldh  [hUnk_FF9C],a
  6742.     ret
  6743.  
  6744.     ld   c,$08
  6745.     ld   a,b
  6746.     and  a,$F0
  6747.     jr   nz,.unk_2A7A
  6748.     ld   a,c
  6749.     ld   [wUnk_DFE0],a
  6750.     jr   .unk_2A51
  6751.     ld   c,$0B
  6752.     and  a,$C0
  6753.     jr   z,.unk_2A74
  6754.     ld   c,$0D
  6755.     jr   .unk_2A74
  6756.     add  hl,de
  6757.     ld   a,l
  6758.     cp   a,$68
  6759.     ret  nc
  6760.     ld   a,[hl]
  6761.     cp   a,$FF
  6762.     jr   z,.unk_2A84
  6763.     and  a,$0F
  6764.     ld   b,a
  6765.     ld   c,$00
  6766.     inc  c
  6767.     add  hl,de
  6768.     ld   a,l
  6769.     cp   a,$80
  6770.     jr   nc,.unk_2AA0
  6771.     ld   a,[hl]
  6772.     and  a,$0F
  6773.     cp   b
  6774.     jr   z,.unk_2A93
  6775.     ld   a,c
  6776.     cp   a,$04
  6777.     jr   c,.unk_2A85
  6778.     call Unk_2AAF
  6779.     push hl
  6780.     call Unk_29C8
  6781.     pop  hl
  6782.     jr   .unk_2A85
  6783.     ld   a,$01
  6784.     ldh  [hUnk_FF9F],a
  6785.     ld   b,e
  6786.     ld   a,l
  6787.     sub  c
  6788.     dec  b
  6789.     jr   nz,.unk_2AB5
  6790.     ld   l,a
  6791.     call Unk_2AC1
  6792.     dec  c
  6793.     jr   nz,.unk_2ABA
  6794.     ret
  6795.  
  6796.     ld   a,[hl]
  6797.     cp   a,$E0
  6798.     jr   c,.unk_2AD0
  6799.     jr   z,.unk_2AD6
  6800.     cp   a,$E1
  6801.     jr   z,.unk_2B0B
  6802.     cp   a,$E2
  6803.     jr   z,.unk_2B27
  6804.     ld   a,$0F
  6805.     and  [hl]
  6806.     ld   [hl],a
  6807.     add  hl,de
  6808.     ret
  6809.  
  6810.     push hl
  6811.     ldh  a,[hTwoPlayerMode]
  6812.     and  a
  6813.     jr   nz,.unk_2AF0
  6814.     ld   hl,$FFD5
  6815.     dec  [hl]
  6816.     ldh  a,[hUnk_FFDB]
  6817.     bit  2,a
  6818.     jr   z,.unk_2AEC
  6819.     set  7,a
  6820.     ldh  [hUnk_FFDB],a
  6821.     jr   .unk_2AF0
  6822.     set  2,a
  6823.     ldh  [hUnk_FFDB],a
  6824.     ld   hl,$FFD1
  6825.     dec  [hl]
  6826.     inc  l
  6827.     ld   a,[hl]
  6828.     sub  a,$01
  6829.     daa
  6830.     ld   [hl],a
  6831.     pop  hl
  6832.     ld   a,$F0
  6833.     or   [hl]
  6834.     ld   [hl],a
  6835.     push af
  6836.     add  hl,de
  6837.     call Unk_2984
  6838.     ld   a,$01
  6839.     ld   [wUnk_D041],a
  6840.     pop  af
  6841.     ret
  6842.  
  6843.     push hl
  6844.     ldh  a,[hTwoPlayerMode]
  6845.     and  a
  6846.     jr   nz,.unk_2AF0
  6847.     ld   hl,$FFD6
  6848.     dec  [hl]
  6849.     ldh  a,[hUnk_FFDB]
  6850.     bit  1,a
  6851.     jr   z,.unk_2B21
  6852.     set  6,a
  6853.     ldh  [hUnk_FFDB],a
  6854.     jr   .unk_2AF0
  6855.     set  1,a
  6856.     ldh  [hUnk_FFDB],a
  6857.     jr   .unk_2AF0
  6858.     push hl
  6859.     ldh  a,[hTwoPlayerMode]
  6860.     and  a
  6861.     jr   nz,.unk_2AF0
  6862.     ld   hl,$FFD7
  6863.     dec  [hl]
  6864.     ldh  a,[hUnk_FFDB]
  6865.     bit  0,a
  6866.     jr   z,.unk_2B3D
  6867.     set  5,a
  6868.     ldh  [hUnk_FFDB],a
  6869.     jr   .unk_2AF0
  6870.     set  0,a
  6871.     ldh  [hUnk_FFDB],a
  6872.     jr   .unk_2AF0
  6873.     ld   hl,$C800
  6874.     ld   b,$80
  6875.     ld   c,b
  6876.     push hl
  6877.     call Unk_2B6A
  6878.     pop  hl
  6879.     call Unk_2B7A
  6880.     ld   b,$05
  6881.     ld   hl,$D041
  6882.     ld   a,[hl]
  6883.     and  a
  6884.     jr   z,.unk_2B5D
  6885.     xor  a
  6886.     ld   [hl],a
  6887.     inc  b
  6888.     ld   a,b
  6889.     ld   [wUnk_DFE0],a
  6890.     ld   a,$10
  6891.     ldh  [hWaitFrames],a
  6892.     ld   a,$03
  6893.     ldh  [hUnk_FF9C],a
  6894.     ret
  6895.  
  6896.     ldi  a,[hl]
  6897.     and  a,$F0
  6898.     call z,Unk_2B74
  6899.     dec  c
  6900.     jr   nz,.unk_2B6A
  6901.     ret
  6902.  
  6903.     dec  l
  6904.     ld   a,[hl]
  6905.     add  a,$D0
  6906.     ldi  [hl],a
  6907.     ret
  6908.  
  6909.     ldi  a,[hl]
  6910.     and  a,$F0
  6911.     cp   a,$80
  6912.     jr   z,.unk_2B91
  6913.     cp   a,$90
  6914.     jr   z,.unk_2B9F
  6915.     cp   a,$A0
  6916.     jr   z,.unk_2BB1
  6917.     cp   a,$B0
  6918.     jr   z,.unk_2BC5
  6919.     dec  b
  6920.     jr   nz,.unk_2B7A
  6921.     ret
  6922.  
  6923.     ld   a,[hl]
  6924.     and  a,$F0
  6925.     cp   a,$90
  6926.     jr   z,.unk_2B8D
  6927.     dec  l
  6928.     ld   a,[hl]
  6929.     add  a,$40
  6930.     ldi  [hl],a
  6931.     jr   .unk_2B8D
  6932.     push hl
  6933.     dec  l
  6934.     dec  l
  6935.     ld   a,[hl]
  6936.     pop  hl
  6937.     and  a,$F0
  6938.     cp   a,$80
  6939.     jr   z,.unk_2B8D
  6940.     dec  l
  6941.     ld   a,[hl]
  6942.     add  a,$30
  6943.     ldi  [hl],a
  6944.     jr   .unk_2B8D
  6945.     push hl
  6946.     ld   a,l
  6947.     add  a,$07
  6948.     ld   l,a
  6949.     ld   a,[hl]
  6950.     pop  hl
  6951.     and  a,$F0
  6952.     cp   a,$B0
  6953.     jr   z,.unk_2B8D
  6954.     dec  l
  6955.     ld   a,[hl]
  6956.     add  a,$20
  6957.     ldi  [hl],a
  6958.     jr   .unk_2B8D
  6959.     push hl
  6960.     ld   a,l
  6961.     sub  a,$09
  6962.     ld   l,a
  6963.     ld   a,[hl]
  6964.     pop  hl
  6965.     and  a,$F0
  6966.     cp   a,$A0
  6967.     jr   z,.unk_2B8D
  6968.     dec  l
  6969.     ld   a,[hl]
  6970.     add  a,$10
  6971.     ldi  [hl],a
  6972.     jr   .unk_2B8D
  6973.     call Unk_2C4F
  6974.     ld   a,[hl]
  6975.     and  a
  6976.     ret  nz
  6977.     ldh  a,[hUnk_FFD1]
  6978.     and  a
  6979.     jr   nz,.unk_2BFA
  6980.     ldh  a,[hTwoPlayerMode]
  6981.     and  a
  6982.     jr   z,.unk_2C31
  6983.     ld   a,$F8
  6984.     ldh  [hSerialNext],a
  6985.     ldh  [hUnk_FFF4],a
  6986.     xor  a
  6987.     ld   [wUnk_D00E],a
  6988.     ldh  [hUnk_FF9C],a
  6989.     ld   a,$17
  6990.     ldh  [hGameStatus],a
  6991.     ret
  6992.  
  6993.     ldh  a,[hUnk_FFC4]
  6994.     cp   a,$05
  6995.     jr   c,.unk_2C1E
  6996.     ldh  a,[hUnk_FFD3]
  6997.     ld   b,$03
  6998.     ld   hl,$FFCA
  6999.     cp   [hl]
  7000.     jr   z,.unk_2C1B
  7001.     jr   c,.unk_2C1B
  7002.     dec  b
  7003.     dec  hl
  7004.     cp   [hl]
  7005.     jr   z,.unk_2C1B
  7006.     jr   c,.unk_2C1B
  7007.     dec  b
  7008.     dec  hl
  7009.     cp   [hl]
  7010.     jr   z,.unk_2C1B
  7011.     jr   c,.unk_2C1B
  7012.     dec  b
  7013.     ld   a,b
  7014.     ldh  [hUnk_FFDE],a
  7015.     ld   hl,$C800
  7016.     ld   b,$80
  7017.     ld   c,$FF
  7018.     call Unk_2C38
  7019.     ld   a,$05
  7020.     ldh  [hUnk_FF9C],a
  7021.     ld   a,$10
  7022.     ldh  [hWaitFrames],a
  7023.     ret
  7024.  
  7025.     xor  a
  7026.     ldh  [hUnk_FF9C],a
  7027.     inc  a
  7028.     ldh  [hGameMode],a
  7029.     ret
  7030.  
  7031.     ldi  a,[hl]
  7032.     and  a,$F0
  7033.     cp   a,$D0
  7034.     call z,Unk_2C49
  7035.     cp   a,$F0
  7036.     call z,Unk_2C49
  7037.     dec  b
  7038.     jr   nz,.unk_2C38
  7039.     ret
  7040.  
  7041.     dec  l
  7042.     ld   a,$FF
  7043.     ld   [hl],c
  7044.     inc  l
  7045.     ret
  7046.  
  7047.     ld   hl,hWaitFrames
  7048.     ld   a,[hl]
  7049.     and  a
  7050.     ret  z
  7051.     xor  a
  7052.     ldh  [hUnk_FF9D],a
  7053.     ld   a,[hl]
  7054.     dec  a
  7055.     ld   c,a
  7056.     ld   hl,$9822
  7057.     ld   de,$0020
  7058.     add  hl,de
  7059.     dec  a
  7060.     jr   nz,.unk_2C61
  7061.     ld   a,h
  7062.     ld   [wUnk_D023],a
  7063.     ld   a,l
  7064.     ld   [wUnk_D024],a
  7065.     xor  a
  7066.     ld   b,$08
  7067.     add  b
  7068.     dec  c
  7069.     jr   nz,.unk_2C70
  7070.     ld   [wUnk_D026],a
  7071.     ld   a,$02
  7072.     ldh  [hUnk_FF9D],a
  7073.     ld   hl,hWaitFrames
  7074.     ret
  7075.  
  7076.     ld   b,$78
  7077.     ld   c,$FF
  7078.     ldh  a,[hUnk_FFF7]
  7079.     and  a
  7080.     jr   nz,.unk_2CA5
  7081.     ld   hl,$C87F
  7082.     ld   a,[hl]
  7083.     cp   c
  7084.     call z,Unk_2CB4
  7085.     dec  l
  7086.     dec  b
  7087.     jr   nz,.unk_2C8B
  7088.     ld   hl,$FFF5
  7089.     ld   a,[hl]
  7090.     and  a
  7091.     jr   z,.unk_2CB0
  7092.     xor  a
  7093.     ld   [hl],a
  7094.     ld   a,$01
  7095.     ldh  [hUnk_FFF7],a
  7096.     ld   a,$10
  7097.     ldh  [hWaitFrames],a
  7098.     call Unk_2C4F
  7099.     ldh  a,[hWaitFrames]
  7100.     and  a
  7101.     ret  nz
  7102.     xor  a
  7103.     ldh  [hUnk_FFF7],a
  7104.     ret
  7105.  
  7106.     xor  a
  7107.     ldh  [hUnk_FF9C],a
  7108.     ret
  7109.  
  7110.     push hl
  7111.     ld   a,l
  7112.     sub  a,$08
  7113.     ld   l,a
  7114.     ld   a,[hl]
  7115.     cp   a,$FF
  7116.     jr   z,.unk_2CDA
  7117.     cp   a,$83
  7118.     jr   c,.unk_2CDA
  7119.     and  a,$F0
  7120.     cp   a,$E0
  7121.     jr   z,.unk_2CDA
  7122.     cp   a,$90
  7123.     jr   z,.unk_2CE1
  7124.     ld   a,$04
  7125.     ld   [wUnk_DFE0],a
  7126.     ld   a,[hl]
  7127.     ld   [hl],c
  7128.     pop  hl
  7129.     ld   [hl],a
  7130.     ld   a,$01
  7131.     ldh  [hUnk_FFF5],a
  7132.     ret
  7133.  
  7134.     pop  hl
  7135.     ret
  7136.  
  7137.     pop  hl
  7138.     ld   a,$FF
  7139.     ld   [hl],a
  7140.     ret
  7141.  
  7142.     pop  hl
  7143.     dec  l
  7144.     ld   a,[hl]
  7145.     cp   a,$FF
  7146.     ret  nz
  7147.     push hl
  7148.     ld   a,l
  7149.     sub  a,$08
  7150.     ld   l,a
  7151.     ld   d,[hl]
  7152.     ld   [hl],c
  7153.     inc  l
  7154.     ld   e,[hl]
  7155.     ld   [hl],c
  7156.     pop  hl
  7157.     ld   [hl],d
  7158.     inc  l
  7159.     ld   [hl],e
  7160.     dec  l
  7161.     ld   a,$01
  7162.     ldh  [hUnk_FFF5],a
  7163.     ret
  7164.  
  7165.     call Unk_2C4F
  7166.     ld   a,[hl]
  7167.     and  a
  7168.     ret  nz
  7169.     ld   a,$04
  7170.     ldh  [hUnk_FF9C],a
  7171.     ret
  7172.  
  7173.     ld   hl,$FFD9
  7174.     ld   d,$C8
  7175.     ld   a,[hl]
  7176.     and  a,$FC
  7177.     jr   z,.unk_2D3C
  7178.     and  a,$F0
  7179.     jr   z,.unk_2D48
  7180.     and  a,$C0
  7181.     jr   z,.unk_2D73
  7182.     ld   bc,$2E06
  7183.     ldh  a,[rDIV]
  7184.     and  a,$01
  7185.     jr   z,.unk_2D24
  7186.     ld   bc,$2E0A
  7187.     call Unk_2DB0
  7188.     call Unk_2DB0
  7189.     call Unk_2DB0
  7190.     call Unk_2DB0
  7191.     xor  a
  7192.     ldh  [hUnk_FFD9],a
  7193.     ld   a,$07
  7194.     ldh  [hUnk_FF9C],a
  7195.     ld   a,$03
  7196.     ldh  [hWaitFrames],a
  7197.     ret
  7198.  
  7199.     xor  a
  7200.     ldh  [hUnk_FFD9],a
  7201.     ldh  [hUnk_FF98],a
  7202.     ldh  [hUnk_FF9C],a
  7203.     ld   a,$0A
  7204.     ldh  [hGameStatus],a
  7205.     ret
  7206.  
  7207.     ldh  a,[rDIV]
  7208.     and  a,$03
  7209.     jr   z,.unk_2D5B
  7210.     cp   a,$01
  7211.     jr   z,.unk_2D60
  7212.     cp   a,$02
  7213.     jr   z,.unk_2D65
  7214.     ld   bc,$2E20
  7215.     jr   .unk_2D68
  7216.     ld   bc,$2E1A
  7217.     jr   .unk_2D68
  7218.     ld   bc,$2E1C
  7219.     jr   .unk_2D68
  7220.     ld   bc,$2E1E
  7221.     call Unk_2DA1
  7222.     call Unk_2DB0
  7223.     call Unk_2DB0
  7224.     jr   .unk_2D30
  7225.     ldh  a,[rDIV]
  7226.     and  a,$03
  7227.     jr   z,.unk_2D86
  7228.     cp   a,$01
  7229.     jr   z,.unk_2D8B
  7230.     cp   a,$02
  7231.     jr   z,.unk_2D90
  7232.     ld   bc,$2E17
  7233.     jr   .unk_2D93
  7234.     ld   bc,$2E0E
  7235.     jr   .unk_2D93
  7236.     ld   bc,$2E11
  7237.     jr   .unk_2D93
  7238.     ld   bc,$2E14
  7239.     call Unk_2DA1
  7240.     call Unk_2DB0
  7241.     call Unk_2DB0
  7242.     call Unk_2DB0
  7243.     jr   .unk_2D30
  7244.     ld   a,[hl]
  7245.     ld   e,a
  7246.     ld   a,e
  7247.     and  a,$C0
  7248.     jr   nz,.unk_2DAE
  7249.     sla  e
  7250.     sla  e
  7251.     jr   .unk_2DA3
  7252.     ld   [hl],e
  7253.     ret
  7254.  
  7255.     ld   a,[bc]
  7256.     ld   e,a
  7257.     rlc  [hl]
  7258.     rlc  [hl]
  7259.     ld   a,[hl]
  7260.     and  a,$03
  7261.     dec  a
  7262.     add  a,$C0
  7263.     ld   [de],a
  7264.     push af
  7265.     push bc
  7266.     push de
  7267.     push hl
  7268.     call Unk_2DD0
  7269.     call Unk_2DE2
    </