Advertisement
Guest User

Untitled

a guest
Nov 10th, 2018
272
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. _script_flags_set:
  3.         push    af
  4.         pop     bc
  5.         ld      a, c
  6.         ld      [_script_flags], a
  7.         ret
  8. _scr_cmd_lib:       dw _scr_cmd00_stop
  9.         dw _scr_cmd01_flush_pc
  10.         dw _scr_cmd02_delay
  11.         dw _scr_cmd03
  12.         dw _scr_cmd04_set_main_sub
  13.         dw _scr_cmd05
  14.         dw _scr_cmd06
  15.         dw _scr_cmd07_jmp
  16.         dw _scr_cmd08_jsr
  17.         dw _scr_cmd09_ret
  18.         dw _scr_cmd0A
  19.         dw _scr_cmd0B
  20.         dw _scr_cmd0C
  21.         dw _scr_cmd0D
  22.         dw _scr_cmd0E
  23.         dw _scr_cmd0F
  24.         dw _scr_cmd10
  25.         dw _scr_cmd11_pad_test
  26.         dw _scr_cmd12_switch
  27.         dw _set_def_hndl
  28.         dw _scr_cmd14_memfill
  29.         dw _scr_cmd15
  30.         dw _scr_cmd16
  31.         dw _scr_cmd17
  32.         dw _scr_cmd18
  33.         dw _scr_cmd19
  34.         dw _scr_cmd1A
  35.         dw _scr_cmd1B
  36.         dw _scr_cmd1C
  37.         dw _scr_cmd1D
  38.         dw _scr_cmd1E
  39.         dw _scr_cmd1F
  40.         dw _scr_cmd20
  41.         dw _scr_cmd21
  42.         dw _scr_cmd22
  43.         dw _scr_cmd23
  44.         dw _scr_cmd24
  45.         dw _scr_cmd25
  46.         dw _scr_cmd26
  47.         dw _scr_cmd27
  48.         dw _scr_cmd28
  49.         dw _scr_cmd29
  50.         dw _scr_cmd2A
  51.         dw _scr_cmd2B
  52.         dw _scr_cmd2C
  53.         dw _scr_cmd2D
  54.         dw _scr_cmd2E
  55.         dw _scr_cmd2F
  56.         dw _scr_cmd30
  57.         dw _scr_cmd31
  58.         dw _scr_cmd32
  59.         dw _scr_cmd33
  60.         dw _scr_cmd34
  61.         dw _scr_cmd35
  62.         dw _scr_cmd36
  63.         dw _scr_cmd37
  64.         dw _scr_cmd38
  65.         dw _scr_cmd39
  66.         dw _scr_cmd3A
  67.         dw _scr_cmd3B
  68.         dw _scr_cmd3C
  69.         dw _scr_cmd3D
  70.         dw _scr_cmd3E
  71.         dw _scr_cmd3F
  72.         dw _scr_cmd40
  73.         dw _scr_cmd41
  74.         dw _scr_cmd42
  75.         dw _scr_cmd43
  76.         dw _scr_cmd44
  77.         dw _scr_cmd45
  78.         dw _scr_cmd46
  79.         dw _scr_cmd47
  80.         dw _scr_cmd48
  81.         dw _scr_cmd49
  82. _run_script:
  83.         ld      a, [byte_10D4A1]
  84.         and     a
  85.         ret     nz
  86.         dec     a
  87.         ld      hl, _script_delay
  88.         and     [hl]
  89.         jr      z, _scr_cmd_exec
  90.         dec     [hl]
  91.         ret
  92. _scr_cmd_exec:
  93.         ld      a, [_script_pc]
  94.         ld      l, a
  95.         ld      a, [_script_pc+1]
  96.         ld      h, a
  97. _scr_cmd_fetch:
  98.         ldi     a, [hl]
  99.         sla     a
  100.         ld      de, _scr_cmd_lib
  101.         add     a, e
  102.         ld      e, a
  103.         jr      nc, loc_E25
  104.         inc     d
  105. loc_E25:
  106.         ld      a, [de]
  107.         ld      c, a
  108.         inc     de
  109.         ld      a, [de]
  110.         ld      b, a
  111.         push    bc
  112.         ret
  113. _script_flush_pc:
  114.         ld      a, l
  115.         ld      [_script_pc], a
  116.         ld      a, h
  117.         ld      [_script_pc+1],     a
  118.         ret
  119. _script_get_sp:
  120.         ld      de, _script_sp_buf
  121.         ld      a, [_script_sp_pos]
  122. _de_add_a_0:
  123.         add     a, e
  124.         ld      e, a
  125.         ret     nc
  126.         inc     d
  127.         ret
  128. _script_push:
  129.         ld      [de], a
  130.         inc     de
  131.         ld      a, [_script_sp_pos]
  132.         inc     a
  133.         ld      [_script_sp_pos], a
  134.         ret
  135. _script_pop:
  136.         ld      a, [_script_sp_pos]
  137.         dec     a
  138.         ld      [_script_sp_pos], a
  139.         dec     de
  140.         ld      a, [de]
  141.         ret
  142. _scr_cmd00_stop:
  143.         ld      a, $80
  144.         ld      [byte_18A0CA], a
  145.         xor     a
  146.         ld      [_script_pc], a
  147.         ld      [_script_pc+1],     a
  148.         ret
  149. _scr_cmd01_flush_pc:
  150.         jp      _script_flush_pc
  151. _scr_cmd02_delay:
  152.         ldi     a, [hl]
  153.         ld      [_script_delay], a
  154.         jp      _script_flush_pc
  155. _scr_cmd05:
  156.         ldi     a, [hl]
  157.         ld      b, a
  158.         ldi     a, [hl]
  159.         ld      e, a
  160.         ldi     a, [hl]
  161.         ld      d, a
  162.         push    hl
  163.         ld      hl, word_18A0CB
  164.         ldi     a, [hl]
  165.         ld      [byte_18A0A7], a
  166.         ldi     a, [hl]
  167.         ld      [byte_18A0A8], a
  168.         ldi     a, [hl]
  169.         ld      [byte_18A0A9], a
  170.         ldi     a, [hl]
  171.         ld      [byte_18A0AA], a
  172.         ld      hl, byte_18A0DF
  173.         ldi     a, [hl]
  174.         ld      [byte_18A0AB], a
  175.         ldi     a, [hl]
  176.         ld      [byte_18A0AC], a
  177.         ldi     a, [hl]
  178.         ld      [byte_12AB84], a
  179.         ldi     a, [hl]
  180.         ld      [byte_12AB85], a
  181.         call    _thread_start_ex
  182.         call    _script_flags_set
  183.         pop     hl
  184.         jp      _scr_cmd_fetch
  185. _scr_cmd03:
  186.         ldi     a, [hl]
  187.         ld      e, a
  188.         ldi     a, [hl]
  189.         ld      d, a
  190.         call    _script_flush_pc
  191.         push    de
  192.         ret
  193. _scr_cmd06:
  194.         ldi     a, [hl]
  195.         ld      e, a
  196.         ldi     a, [hl]
  197.         push    hl
  198.         ld      h, a
  199.         ld      l, e
  200.         ld      bc, sub_EA5
  201.         push    bc
  202.         jp      [hl]
  203. sub_EA5:
  204.         pop     hl
  205.         jp      _scr_cmd_fetch
  206. _scr_cmd04_set_main_sub:
  207.         ldi     a, [hl]
  208.         ld      [_main_sub_idx], a
  209.         jp      sub_2FB
  210. _scr_cmd07_jmp:
  211.         ldi     a, [hl]
  212.         ld      [_script_pc], a
  213.         ldi     a, [hl]
  214.         ld      [_script_pc+1],     a
  215.         jp      _scr_cmd_exec
  216. _scr_cmd08_jsr:
  217.         ldi     a, [hl]
  218.         ld      [_script_pc], a
  219.         ldi     a, [hl]
  220.         ld      [_script_pc+1],     a
  221.         call    _script_get_sp
  222.         ld      a, h
  223.         call    _script_push
  224.         ld      a, l
  225.         call    _script_push
  226.         jp      _scr_cmd_exec
  227. _scr_cmd09_ret:
  228.         call    _script_get_sp
  229.         call    _script_pop
  230.         ld      l, a
  231.         call    _script_pop
  232.         ld      h, a
  233.         jp      _scr_cmd_fetch
  234. _scr_cmd0A:
  235.         call    _script_get_sp
  236.         ld      a, [_script_sp_pos]
  237.         dec     a
  238.         dec     a
  239.         ld      [_script_sp_pos], a
  240.         jr      _scr_cmd07_jmp
  241. _scr_cmd0B:
  242.         xor     a
  243.         ld      [byte_18A0C0], a
  244.         jp      _scr_cmd_fetch
  245. _scr_cmd0C:
  246.         xor     a
  247.         ld      [byte_18A0C1], a
  248.         jp      _scr_cmd_fetch
  249. _scr_cmd0D:
  250.         ld      bc, byte_18A0C0
  251.         jr      sub_EFA
  252. _scr_cmd0E:
  253.         ld      bc, byte_18A0C1
  254. sub_EFA:
  255.         ld      a, [bc]
  256.         inc     a
  257.         ld      [bc], a
  258.         cp      [hl]
  259.         inc     hl
  260.         jp      c, _scr_cmd07_jmp
  261.         xor     a
  262.         ld      [bc], a
  263.         jr      _script_ofs_skip
  264. _scr_cmd0F:
  265.         ld      a, [_script_flags]
  266.         ld      c, a
  267.         push    bc
  268.         pop     af
  269.         jr      z, _script_ofs_skip
  270.         jp      _scr_cmd07_jmp
  271. _scr_cmd10:
  272.         ld      a, [_script_flags]
  273.         ld      c, a
  274.         push    bc
  275.         pop     af
  276.         jr      c, _script_ofs_skip
  277.         jp      _scr_cmd07_jmp
  278. _script_ofs_skip:
  279.         inc     hl
  280.         inc     hl
  281.         jp      _scr_cmd_fetch
  282. _scr_cmd11_pad_test:
  283.         ld      c,  _pad_held &     $FF
  284.         ldi     a, [hl]
  285.         add     a, c
  286.         ld      c, a
  287.         ldi     a, [hl]
  288.         ld      b, a
  289.         ld      a, [c]
  290.         and     b
  291.         jr      nz, _script_ofs_skip
  292.         jp      _scr_cmd07_jmp
  293. _scr_cmd12_switch:
  294.         ldi     a, [hl]
  295.         ld      e, a
  296.         ldi     a, [hl]
  297.         ld      d, a
  298.         ld      a, [de]
  299.         sla     a
  300.         add     a, l
  301.         ld      e, a
  302.         ld      a, h
  303.         adc     a, 0
  304.         ld      d, a
  305.         ld      a, [de]
  306.         ld      l, a
  307.         inc     de
  308.         ld      a, [de]
  309.         ld      h, a
  310.         jp      _scr_cmd_fetch
  311. _set_def_hndl:
  312.         ldi     a, [hl]
  313.         ld      [_script_default_handler], a
  314.         ldi     a, [hl]
  315.         ld      [_script_default_handler+1], a
  316.         jp      _scr_cmd_fetch
  317. _scr_cmd14_memfill:
  318.         ldi     a, [hl]
  319.         ld      c, a
  320.         ldi     a, [hl]
  321.         ld      b, a
  322.         ldi     a, [hl]
  323.         ld      e, a
  324.         ldi     a, [hl]
  325.         ld      d, a
  326.         ld      a, c
  327. loc_F54:
  328.         ld      [de], a
  329.         inc     de
  330.         dec     b
  331.         jr      nz, loc_F54
  332.         jp      _scr_cmd_fetch
  333. sub_F5C:
  334.         jp      _scr_cmd_fetch
  335. _scr_cmd15:
  336.         ldi     a, [hl]
  337.         ld      [_mmc_prg_bank], a
  338.         ld      [loc_1FFF+1], a
  339.         jp      _scr_cmd_fetch
  340. _scr_cmd16:
  341.         ldi     a, [hl]
  342.         call    sub_2B0
  343.         jp      _scr_cmd_fetch
  344. _scr_cmd17:
  345.         ld      a, [byte_12A87D]
  346.         and     $80
  347.         jp      nz, _script_flush_pc
  348.         push    hl
  349.         call    sub_F9F
  350.         call    sub_F95
  351.         pop     hl
  352.         jp      _script_flush_pc
  353. _scr_cmd18:
  354.         ld      a, [byte_12A87D]
  355.         and     $80
  356.         jp      nz, _scr_cmd_fetch
  357.         push    hl
  358.         call    sub_F9F
  359.         call    sub_F95
  360.         pop     hl
  361.         jp      _scr_cmd_fetch
  362. sub_F95:
  363.         ld      de, byte_18A0D4
  364.         ld      hl, word_18A0CB
  365.         ld      a, [byte_18A0D2]
  366.         jr      loc_FA7
  367. sub_F9F:
  368.         ld      de, byte_18A0D5
  369.         ld      hl, word_18A0CD
  370.         ld      a, [byte_18A0D3]
  371. loc_FA7:
  372.         and     a
  373.         ret     z
  374.         bit     7, a
  375.         jr      nz, loc_FB7
  376.         call    sub_FC4
  377.         add     a, [hl]
  378.         ldi     [hl], a
  379.         ld      a, [hl]
  380.         adc     a, 0
  381.         ld      [hl], a
  382.         ret
  383. loc_FB7:
  384.         cpl
  385.         inc     a
  386.         call    sub_FC4
  387.         ld      a, [hl]
  388.         sub     b
  389.         ldi     [hl], a
  390.         ld      a, [hl]
  391.         sbc     a, 0
  392.         ld      [hl], a
  393.         ret
  394. sub_FC4:
  395.         swap    a
  396.         ld      c, a
  397.         and     7
  398.         ld      b, a
  399.         ld      a, c
  400.         and     $F0
  401.         ld      c, a
  402.         ld      a, [de]
  403.         add     a, c
  404.         ld      [de], a
  405.         ld      a, b
  406.         adc     a, 0
  407.         ld      b, a
  408.         ret
  409. word_FD6:       dw 0
  410.         dw $FF19
  411.         dw $FB32
  412.         dw $F54A
  413.         dw $ED62
  414.         dw $E279
  415.         dw $D58E
  416.         dw $C6A2
  417.         dw $B5B5
  418.         dw $A2C6
  419.         dw $8ED5
  420.         dw $79E2
  421.         dw $62ED
  422.         dw $4AF5
  423.         dw $32FB
  424.         dw $19FF
  425. sub_FF6:
  426.         push    hl
  427.         ld      a, [byte_18A0D9]
  428.         and     a
  429.         jr      z, loc_1006
  430.         ld      a, [byte_18A0D6]
  431.         call    sub_10A0
  432.         jr      z, loc_1006
  433.         call    sub_102D
  434. loc_1006:
  435.         ld      a, [byte_18A0D9]
  436.         and     a
  437.         pop     hl
  438.         ret
  439. _scr_cmd19:
  440.         push    hl
  441.         ld      a, [byte_12A87D]
  442.         and     $80
  443.         jp      nz, loc_1023
  444.         ld      a, [byte_18A0D9]
  445.         and     a
  446.         jr      z, loc_1023
  447.         ld      a, [byte_18A0D6]
  448.         call    sub_10A0
  449.         jr      z, loc_1023
  450.         call    sub_102D
  451. loc_1023:
  452.         ld      a, [byte_18A0D9]
  453.         and     a
  454.         call    _script_flags_set
  455.         pop     hl
  456.         jp      _scr_cmd_fetch
  457. sub_102D:
  458.         ld      [byte_18A0A5], a
  459.         ld      bc, _switch
  460. loc_1032:
  461.         ld      hl, word_FD6
  462.         ld      a, [byte_18A0D8]
  463.         and     $F
  464.         rst     _hl_add_a_mul2_get_word_de
  465.         ld      a, e
  466.         ld      hl, byte_18A0D4
  467.         add     a, [hl]
  468.         ldi     [hl], a
  469.         jr      nc, loc_1045
  470.         call    sub_106F
  471. loc_1045:
  472.         ld      a, d
  473.         and     a
  474.         jr      z, loc_104D
  475.         add     a, [hl]
  476.         ld      [hl], a
  477.         jr      nc, loc_1050
  478. loc_104D:
  479.         call    sub_1085
  480. loc_1050:
  481.         ld      hl, byte_18A0D9
  482.         dec     [hl]
  483.         jr      z, loc_105D
  484.         ld      a, [byte_18A0A5]
  485.         dec     a
  486.         ld      [byte_18A0A5], a
  487.         jr      nz, loc_1032
  488. loc_105D:
  489.         ld      d, 0
  490.         ld      a, b
  491.         ld      hl, word_18A0CB
  492.         call    sub_1095
  493.         ld      d, 0
  494.         ld      a, c
  495.         ld      hl, word_18A0CD
  496.         jp      sub_1095
  497. sub_106F:
  498.         ld      a, [byte_18A0D8]
  499.         and     $30
  500.         jr      z, loc_107F
  501.         cp      $10
  502.         jr      z, loc_1081
  503.         cp      $30
  504.         jr      z, loc_1083
  505. loc_107D:
  506.         dec     b
  507.         ret
  508. loc_107F:
  509.         inc     b
  510.         ret
  511. loc_1081:
  512.         dec     c
  513.         ret
  514. loc_1083:
  515.         inc     c
  516.         ret
  517. sub_1085:
  518.         ld      a, [byte_18A0D8]
  519.         and     $30
  520.         jr      z, loc_1083
  521.         cp      $10
  522.         jr      z, loc_107F
  523.         cp      $20
  524.         jr      z, loc_1081
  525.         jr      loc_107D
  526. sub_1095:
  527.         bit     7, a
  528.         jr      z, loc_109A
  529.         dec     d
  530. loc_109A:
  531.         add     a, [hl]
  532.         ldi     [hl], a
  533.         ld      a, [hl]
  534.         adc     a, d
  535.         ld      [hl], a
  536.         ret
  537. sub_10A0:
  538.         ld      c, a
  539.         and     $F
  540.         ld      b, a
  541.         ld      a, c
  542.         ld      hl, byte_18A0D7
  543.         and     $F0
  544.         add     a, [hl]
  545.         ld      [hl], a
  546.         ld      a, b
  547.         adc     a, 0
  548.         ret
  549. _scr_cmd1A:
  550.         ld      c,  byte_18A0CA     & $FF
  551.         ld      a, [c]
  552.         res     7, a
  553.         ld      [c], a
  554.         jp      _scr_cmd_fetch
  555. _scr_cmd1B:
  556.         ld      c,  byte_18A0CA     & $FF
  557.         ld      a, [c]
  558.         set     7, a
  559.         ld      [c], a
  560.         jp      _scr_cmd_fetch
  561. _scr_cmd1C:
  562.         ld      c,  byte_18A0CA     & $FF
  563.         ld      a, [c]
  564.         set     6, a
  565.         ld      [c], a
  566.         jp      _scr_cmd_fetch
  567. _scr_cmd1D:
  568.         ld      c,  byte_18A0CA     & $FF
  569.         ld      a, [c]
  570.         res     6, a
  571.         ld      [c], a
  572.         jp      _scr_cmd_fetch
  573. _scr_cmd1E:
  574.         ldi     a, [hl]
  575.         ld      [byte_18A0CF], a
  576.         jp      _scr_cmd_fetch
  577. _scr_cmd1F:
  578.         ldi     a, [hl]
  579.         ld      [byte_18A0D0], a
  580.         jp      _scr_cmd_fetch
  581. _scr_cmd20:
  582.         ld      c,  byte_18A0D1     & $FF
  583.         ld      a, [c]
  584.         res     4, a
  585.         or      [hl]
  586.         ld      [c], a
  587.         inc     hl
  588.         jp      _scr_cmd_fetch
  589. _scr_cmd21:
  590.         ld      c,  byte_18A0D1     & $FF
  591.         ld      a, [c]
  592.         res     5, a
  593.         ld      [c], a
  594.         jp      _scr_cmd_fetch
  595. _scr_cmd22:
  596.         ld      c,  byte_18A0D1     & $FF
  597.         ld      a, [c]
  598.         set     5, a
  599.         ld      [c], a
  600.         jp      _scr_cmd_fetch
  601. _scr_cmd23:
  602.         ld      c,  byte_18A0D1     & $FF
  603.         ld      a, [c]
  604.         res     6, a
  605.         ld      [c], a
  606.         jp      _scr_cmd_fetch
  607. _scr_cmd24:
  608.         ld      c,  byte_18A0D1     & $FF
  609.         ld      a, [c]
  610.         set     6, a
  611.         ld      [c], a
  612.         jp      _scr_cmd_fetch
  613. _scr_cmd25:
  614.         ld      c,  byte_18A0D1     & $FF
  615.         ld      a, [c]
  616.         res     7, a
  617.         ld      [c], a
  618.         jp      _scr_cmd_fetch
  619. _scr_cmd26:
  620.         ld      c,  byte_18A0D1     & $FF
  621.         ld      a, [c]
  622.         set     7, a
  623.         ld      [c], a
  624.         jp      _scr_cmd_fetch
  625. _scr_cmd27:
  626.         ldi     a, [hl]
  627.         ld      [word_18A0CD], a
  628.         ldi     a, [hl]
  629.         ld      [word_18A0CD+1], a
  630.         jp      _scr_cmd_fetch
  631. _scr_cmd28:
  632.         ldi     a, [hl]
  633.         ld      [word_18A0CB], a
  634.         ldi     a, [hl]
  635.         ld      [word_18A0CB+1], a
  636.         jp      _scr_cmd_fetch
  637. _scr_cmd29:
  638.         ld      c,  word_18A0CD     & $FF
  639.         jr      sub_1139
  640. _scr_cmd2A:
  641.         ld      c,  word_18A0CB     & $FF
  642. sub_1139:
  643.         ld      b, 0
  644.         ld      a, [hl]
  645.         bit     7, a
  646.         jr      z, loc_1141
  647.         dec     b
  648. loc_1141:
  649.         ld      a, [c]
  650.         add     a, [hl]
  651.         ld      [c], a
  652.         inc     c
  653.         ld      a, [c]
  654.         adc     a, b
  655.         ld      [c], a
  656.         inc     hl
  657.         jp      _scr_cmd_fetch
  658. _scr_cmd2B:
  659.         ldi     a, [hl]
  660.         ld      [byte_18A0D3], a
  661.         jp      _scr_cmd_fetch
  662. _scr_cmd2C:
  663.         ldi     a, [hl]
  664.         ld      [byte_18A0D2], a
  665.         jp      _scr_cmd_fetch
  666. _scr_cmd2D:
  667.         ld      a, [byte_18A0D3]
  668.         inc     a
  669.         ld      [byte_18A0D3], a
  670.         jp      _scr_cmd_fetch
  671. _scr_cmd2E:
  672.         ld      a, [byte_18A0D2]
  673.         inc     a
  674.         ld      [byte_18A0D2], a
  675.         jp      _scr_cmd_fetch
  676. _scr_cmd2F:
  677.         ld      a, [byte_18A0D3]
  678.         dec     a
  679.         ld      [byte_18A0D3], a
  680.         jp      _scr_cmd_fetch
  681. _scr_cmd30:
  682.         ld      a, [byte_18A0D2]
  683.         dec     a
  684.         ld      [byte_18A0D2], a
  685.         jp      _scr_cmd_fetch
  686. _scr_cmd31:
  687.         ldi     a, [hl]
  688.         swap    a
  689.         ld      [byte_18A0D6], a
  690.         xor     a
  691.         ld      [byte_18A0D7], a
  692.         ld      [byte_18A0D3], a
  693.         ld      [byte_18A0D2], a
  694.         ld      [byte_18A0D5], a
  695.         ld      [byte_18A0D4], a
  696.         jp      _scr_cmd_fetch
  697. _scr_cmd32:
  698.         ldi     a, [hl]
  699.         ld      [byte_18A0D8], a
  700.         jp      _scr_cmd_fetch
  701. _scr_cmd33:
  702.         ldi     a, [hl]
  703.         ld      [byte_18A0D9], a
  704.         jp      _scr_cmd_fetch
  705. _scr_cmd34:
  706.         ldi     a, [hl]
  707.         ld      [byte_18A0DB], a
  708.         ldi     a, [hl]
  709.         ld      [byte_18A0DC], a
  710.         jp      _scr_cmd_fetch
  711. _scr_cmd35:
  712.         ldi     a, [hl]
  713.         ld      [byte_18A0DD], a
  714.         jp      _scr_cmd_fetch
  715. _scr_cmd36:
  716.         ldi     a, [hl]
  717.         ld      [byte_18A0DE], a
  718.         jp      _scr_cmd_fetch
  719. _script_vdp_ofs_get:
  720.         ldi     a, [hl]
  721.         ld      [byte_18A097], a
  722.         ldi     a, [hl]
  723.         or      $98
  724.         ld      [byte_18A096], a
  725.         ret
  726. _script_word_arg_get:
  727.         ldi     a, [hl]
  728.         ld      e, a
  729.         ldi     a, [hl]
  730.         ld      d, a
  731.         ret
  732. _scr_cmd37:
  733.         ldi     a, [hl]
  734.         ld      b, a
  735.         call    _script_vdp_ofs_get
  736.         call    _script_word_arg_get
  737.         push    hl
  738.         ld      l, e
  739.         ld      h, d
  740.         call    sub_8C1
  741.         pop     hl
  742.         jp      _scr_cmd_fetch
  743. _scr_cmd38:
  744.         call    _script_word_arg_get
  745.         push    hl
  746.         ld      l, e
  747.         ld      h, d
  748.         call    sub_8B2
  749.         pop     hl
  750.         jp      _scr_cmd_fetch
  751. _scr_cmd39:
  752.         call    _script_vdp_ofs_get
  753.         call    _script_word_arg_get
  754.         push    hl
  755.         ld      h, d
  756.         ld      l, e
  757.         call    _printf_res
  758.         pop     hl
  759.         jp      _scr_cmd_fetch
  760. _scr_cmd3A:
  761.         ldi     a, [hl]
  762.         ld      b, a
  763.         ldi     a, [hl]
  764.         ld      c, a
  765.         call    _script_vdp_ofs_get
  766.         call    _script_word_arg_get
  767.         push    hl
  768.         ld      l, e
  769.         ld      h, d
  770.         call    sub_99C
  771.         pop     hl
  772.         jp      _scr_cmd_fetch
  773. _scr_cmd3B:
  774.         call    _script_word_arg_get
  775.         push    hl
  776.         ld      h, d
  777.         ld      l, e
  778. loc_1203:
  779.         call    sub_C20
  780. loc_1206:
  781.         pop     hl
  782. loc_1207:
  783.         jp      _scr_cmd_fetch
  784. _scr_cmd3C:
  785.         call    _script_word_arg_get
  786.         push    hl
  787.         call    sub_BED
  788.         pop     hl
  789. sub_1212:
  790.         call    _script_flags_set
  791.         jp      _scr_cmd_fetch
  792. _scr_cmd3D:
  793.         ldi     a, [hl]
  794.         ld      b, a
  795.         push    hl
  796.         call    sub_C09
  797.         pop     hl
  798.         jr      sub_1212
  799. _scr_cmd3E:
  800.         ldi     a, [hl]
  801.         ld      b, a
  802.         push    hl
  803.         call    sub_C0B
  804.         pop     hl
  805.         jr      sub_1212
  806. _scr_cmd3F:
  807.         call    sub_BCE
  808.         jr      sub_1212
  809. _scr_cmd40:
  810.         call    _script_word_arg_get
  811.         ldi     a, [hl]
  812.         ld      c, a
  813.         ldi     a, [hl]
  814.         push    hl
  815.         ld      h, a
  816.         ld      l, c
  817.         call    sub_B0C
  818.         pop     hl
  819.         jr      sub_1212
  820. _scr_cmd41:
  821.         call    _script_word_arg_get
  822.         ldi     a, [hl]
  823.         ld      c, a
  824.         ldi     a, [hl]
  825.         push    hl
  826.         ld      h, a
  827.         ld      l, c
  828.         call    sub_B26
  829.         pop     hl
  830.         jr      sub_1212
  831. _scr_cmd42:
  832.         ldi     a, [hl]
  833.         ld      b, a
  834.         call    _script_vdp_ofs_get
  835.         push    hl
  836.         call    loc_B9C
  837.         pop     hl
  838.         jp      _scr_cmd_fetch
  839. _scr_cmd43:
  840.         ldi     a, [hl]
  841.         ld      b, a
  842.         call    _script_vdp_ofs_get
  843.         push    hl
  844.         call    loc_BB1
  845.         pop     hl
  846.         jp      _scr_cmd_fetch
  847. _scr_cmd44:
  848.         ldi     a, [hl]
  849.         ld      b, a
  850.         call    _script_vdp_ofs_get
  851.         call    _script_word_arg_get
  852.         push    hl
  853.         call    sub_B3F
  854.         pop     hl
  855.         jp      _scr_cmd_fetch
  856. _scr_cmd45:
  857.         ldi     a, [hl]
  858.         add     a, $47
  859.         ld      c, a
  860.         ldi     a, [hl]
  861.         ld      [c], a
  862.         jp      _scr_cmd_fetch
  863. _scr_cmd46:
  864.         ldi     a, [hl]
  865.         ld      [byte_12AB8E], a
  866.         ldi     a, [hl]
  867.         ld      [byte_12AB8F], a
  868.         jp      _scr_cmd_fetch
  869. _scr_cmd47:
  870.         ldi     a, [hl]
  871.         ld      c, a
  872.         call    _script_vdp_ofs_get
  873.         call    _script_word_arg_get
  874.         push    hl
  875.         call    sub_C76
  876.         pop     hl
  877.         jp      _script_flush_pc
  878. _scr_cmd48:
  879.         ld      a, [byte_12AB96]
  880.         cp      $FF
  881.         jr      z, sub_12AF
  882.         ret
  883. _scr_cmd49:
  884.         ld      a, [byte_12AB96]
  885.         cp      $FF
  886.         jr      z, sub_12AD
  887.         jp      _scr_cmd07_jmp
  888. sub_12AD:
  889.         inc     hl
  890.         inc     hl
  891. sub_12AF:
  892.         jp      _script_flush_pc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement