?login_element?

Subversion Repositories NedoOS

Rev

Rev 508 | Blame | Compare with Previous | Last modification | View Log | Download

  1.         if EGA
  2. VARIABLES = #4000
  3.         else
  4. VARIABLES = #C000
  5.         endif
  6. VAR0000 = VARIABLES+#0000
  7. VAR0002 = VARIABLES+#0002
  8. VAR0004 = VARIABLES+#0004
  9. VAR0005 = VARIABLES+#0005
  10. VAR0007 = VARIABLES+#0007
  11. VAR0009 = VARIABLES+#0009
  12. VAR000B = VARIABLES+#000B
  13. VAR000C = VARIABLES+#000C
  14. VAR000D = VARIABLES+#000D
  15. VAR000E = VARIABLES+#000E
  16. VAR000F = VARIABLES+#000F
  17. VAR0011 = VARIABLES+#0011 ;erics
  18. VAR0012 = VARIABLES+#0012
  19. VAR0013 = VARIABLES+#0013
  20. VAR0014 = VARIABLES+#0014
  21. VAR0015 = VARIABLES+#0015
  22. VAR0016 = VARIABLES+#0016
  23. VAR0017 = VARIABLES+#0017
  24. VAR0018 = VARIABLES+#0018
  25. VAR0019 = VARIABLES+#0019
  26. VAR001A = VARIABLES+#001A
  27. VAR001B = VARIABLES+#001B
  28. VAR001C = VARIABLES+#001C
  29. VAR001D = VARIABLES+#001D
  30. VAR001E = VARIABLES+#001E
  31. VAR005A = VARIABLES+#005A
  32. VAR005B = VARIABLES+#005B
  33. VAR0070 = VARIABLES+#0070
  34. VAR0071 = VARIABLES+#0071
  35. VAR0073 = VARIABLES+#0073
  36. VAR0075 = VARIABLES+#0075
  37. VAR0077 = VARIABLES+#0077
  38. VAR0079 = VARIABLES+#0079
  39. VAR007B = VARIABLES+#007B
  40. VAR007D = VARIABLES+#007D ;1=dec erics
  41. VAR007E = VARIABLES+#007E
  42. VAR007F = VARIABLES+#007F
  43. VAR0080 = VARIABLES+#0080
  44. VAR0081 = VARIABLES+#0081
  45. VAR0082 = VARIABLES+#0082
  46. VAR0083 = VARIABLES+#0083
  47. VAR0084 = VARIABLES+#0084
  48. VAR0085 = VARIABLES+#0085
  49. VAR0086 = VARIABLES+#0086
  50. VAR0088 = VARIABLES+#0088
  51. VAR008A = VARIABLES+#008A
  52. VAR008C = VARIABLES+#008C
  53. VAR008D = VARIABLES+#008D
  54. VAR038C = VARIABLES+#038C
  55. VAR038D = VARIABLES+#038D
  56. VAR03AB = VARIABLES+#03AB
  57. VAR03EF = VARIABLES+#03EF
  58. VAR046C = VARIABLES+#046C
  59. VAR047C = VARIABLES+#047C
  60. VAR0484 = VARIABLES+#0484
  61. VAR066C = VARIABLES+#066C
  62. VAR066D = VARIABLES+#066D
  63. VAR068C = VARIABLES+#068C
  64. VAR068D = VARIABLES+#068D
  65. VAR098C = VARIABLES+#098C
  66.  
  67. ;       ORG     #9000
  68. ;
  69. L_8000 ;        LD      SP,#6fff
  70.         CALL    L_906A
  71.         CALL    L_90FD
  72.         LD      HL,#0000
  73.         LD      (VAR0002),HL
  74.         LD      (VAR0000),HL
  75.         JP      L_82A4
  76. ;
  77. L_8015  LD      IY,VAR0005
  78.         CALL    L_8027
  79.         LD      IY,VAR0007
  80.         CALL    L_8027
  81.         LD      IY,VAR0009
  82. L_8027  LD      L,(IY+#00)
  83.         LD      H,(IY+#01)
  84.         LD      A,(HL)
  85.         OR      A
  86.         RET     Z
  87. L_8030  LD      E,(HL)
  88.         INC     HL
  89.         LD      D,(HL)
  90.         INC     HL
  91.         LD      C,(HL)
  92.         INC     HL
  93.         LD      B,(HL)
  94.         INC     HL
  95.         CALL    L_92A6 ;sound
  96.         LD      A,(HL)
  97.         OR      A
  98.         JR      NZ,L_8030
  99.         INC     HL
  100.         LD      (IY+#00),L
  101.         LD      (IY+#01),H
  102.         RET
  103. ;
  104. L_8047  LD      HL,#0000
  105.         LD      (VAR0000),HL
  106.         LD      A,#01
  107.         LD      (VAR0012),A
  108.         LD      A,#03
  109.         LD      (VAR0011),A ;erics
  110.         CALL    L_9140
  111.         CALL    DrawScreen
  112.         LD      HL,L_9BC6
  113.         CALL    L_9114
  114.         LD      HL,L_9C28
  115.         CALL    L_9114
  116. L_8069
  117. ;retry
  118.         LD      HL,#03E8
  119.         LD      (VAR000F),HL
  120.         XOR     A
  121.         LD      (VAR001B),A
  122.         LD      (VAR001A),A
  123.         LD      (VAR0082),A
  124.         LD      (VAR0085),A
  125.         LD      (VAR0014),A
  126.         LD      (VAR0013),A
  127.         LD      (VAR0016),A
  128.         LD      (VAR0017),A
  129.         LD      (VAR0018),A
  130.         LD      (VAR007D),A
  131.         LD      A,#01
  132.         LD      (VAR000D),A
  133.  
  134.         CALL    L_81E7
  135.         CALL    L_8603
  136.         CALL    L_8617
  137.         CALL    L_89E5
  138.         CALL    L_9140
  139.         CALL    DrawScreen
  140.         CALL    L_8FEE
  141.         CALL    L_8E5F
  142.         CALL    L_8EC8
  143.         XOR     A
  144.         LD      (VAR0082),A
  145.         LD      (VAR0085),A
  146. MAINLOOP;L_80B5
  147.         ;YIELDGETKEY
  148.         halt
  149. curkey=$+1
  150.         ld a,0
  151.         cp key_esc
  152.         jp z,quiter ;Alone Coder
  153.         cp key_redraw
  154.         call z,redraw
  155.  
  156.         CALL    L_8746
  157.         CALL    L_8FFC
  158.         CALL    L_8E5F
  159.         CALL    L_89F9
  160.         CALL    L_8ADC
  161.         CALL    L_897F
  162.         CALL    L_8CDD
  163.         CALL    L_8764
  164.         CALL    L_8674
  165.         CALL    L_86FF
  166.         CALL    L_88AD
  167.         CALL    L_864C
  168.         CALL    L_86D8
  169.         CALL    L_8C6D
  170.         CALL    L_85B5
  171.         CALL    L_8559
  172.         CALL    L_8520
  173.         CALL    L_8D9B ;печатает счёт
  174.         CALL    L_8E0F
  175.         LD      A,(VAR007D)
  176.         OR      A
  177.         JP      NZ,L_81D7 ;dec erics
  178.         LD      A,(VAR0018)
  179.         OR      A
  180.         JP      NZ,L_81A1
  181.         LD      A,(VAR001A)
  182.         OR      A
  183.         JR      Z,MAINLOOP;L_80B5
  184.         LD      BC,#0014
  185. L_8105  PUSH    BC
  186.         CALL    L_821D
  187.         POP     BC
  188.         DEC     BC
  189.         LD      A,B
  190.         OR      C
  191.         JP      NZ,L_8105
  192.         LD      HL,(VAR000F)
  193.         LD      A,H
  194.         OR      L
  195.         JR      Z,L_813F
  196. L_8117  PUSH    HL
  197.         CALL    L_823C
  198.         LD      HL,L_8173
  199.         LD      (VAR0007),HL
  200.         POP     HL
  201.         LD      BC,#000A
  202.         OR      A
  203.         SBC     HL,BC
  204.         LD      (VAR000F),HL
  205.         LD      DE,(VAR0000)
  206.         INC     DE
  207.         LD      (VAR0000),DE
  208.         LD      A,H
  209.         OR      L
  210.         JP      NZ,L_8117
  211.         CALL    L_823C
  212.         CALL    L_823C
  213. L_813F  LD      A,(VAR0012)
  214.         INC     A
  215.         LD      (VAR0012),A
  216.         PUSH    AF
  217.         AND     #03
  218.         LD      HL,L_8181
  219.         CALL    Z,L_816F
  220.         POP     AF
  221.         AND     #FC
  222.         JP      Z,L_8069 ;retry
  223.         AND     #0C
  224.         LD      C,A
  225.         LD      B,#00
  226.         ADD     HL,BC
  227.         LD      E,(HL)
  228.         INC     HL
  229.         LD      D,(HL)
  230.         INC     HL
  231.         PUSH    HL
  232.         EX      DE,HL
  233.         CALL    L_9114
  234.         POP     HL
  235.         LD      E,(HL)
  236.         INC     HL
  237.         LD      D,(HL)
  238.         EX      DE,HL
  239.         CALL    L_9114
  240.         JP      L_8069 ;retry
  241. ;
  242. L_816F  LD      HL,L_8191
  243.         RET
  244. ;
  245. L_8173 DB #2C,#01,#05,#00,#DC,#05,#01,#00
  246.  DB #C8,#00,#05,#00,#00,#00
  247. ;
  248. L_8181 DW L_9F78
  249.  DW L_9F8E
  250.  DW L_9F4C
  251.  DW L_9F62
  252.  DW L_9FA4
  253.  DW L_9FBA
  254.  DW L_9EC8
  255.  DW L_9EDE
  256. L_8191 DW L_9E9C
  257.  DW L_9EB2
  258.  DW L_9EF4
  259.  DW L_9F0A
  260.  DW L_9E70
  261.  DW L_9E86
  262.  DW L_9F20
  263.  DW L_9F36
  264. ;
  265. L_81A1  LD      B,#0A
  266.         LD      HL,L_81B3
  267.         LD      (VAR0009),HL
  268. L_81A9  PUSH    BC
  269.         CALL    L_821D
  270.         POP     BC
  271.         DJNZ    L_81A9
  272.         JP      L_8069 ;retry
  273. ;
  274. L_81B3 DB #EE,#00,#14,#00,#00,#D4,#00,#14
  275.  DB #00,#00,#BD,#00,#14,#00,#00,#B2
  276.  DB #00,#14,#00,#00,#9F,#00,#14,#00
  277.  DB #00,#8E,#00,#14,#00,#00,#7E,#00
  278.  DB #14,#00,#00,#00
  279. ;
  280. L_81D7  CALL    L_9014 ;pause
  281.         LD      A,(VAR0011) ;erics
  282.         DEC     A
  283.         OR      A
  284.         LD      (VAR0011),A ;erics
  285.         JR      Z,L_820D ;game over
  286.         JP      L_8069 ;retry
  287. ;
  288. L_81E7  LD      A,(VAR0012)
  289.         CP      #06
  290.         JR      C,L_81F0
  291.         LD      A,#05
  292. L_81F0  DEC     A
  293.         ADD     A,A
  294.         LD      HL,L_8203
  295.         LD      C,A
  296.         LD      B,#00
  297.         ADD     HL,BC
  298.         LD      A,(HL)
  299.         LD      (VAR0015),A
  300.         INC     HL
  301.         LD      A,(HL)
  302.         LD      (VAR0019),A
  303.         RET
  304. ;
  305. L_8203 DB #01,#10,#02,#15,#03,#1A,#02,#1F
  306.  DB #04,#24
  307. ;
  308. L_820D
  309. ;game over
  310.         LD      BC,#0005
  311. L_8210  PUSH    BC
  312.         CALL    L_821D
  313.         POP     BC
  314.         DEC     BC
  315.         LD      A,B
  316.         OR      C
  317.         JR      NZ,L_8210
  318.         JP      L_82A4
  319. ;
  320. L_821D  CALL    L_8746
  321.         CALL    L_8FFC
  322.         CALL    L_8E5F
  323.         CALL    L_8ADC
  324.         CALL    L_8674
  325.         CALL    L_86FF
  326.         CALL    L_88AD
  327.         CALL    L_8C6D
  328.         CALL    L_89F9
  329.         CALL    L_8D9B
  330.         RET
  331. ;
  332. L_823C  CALL    L_8746
  333.         CALL    L_8FFC
  334.         CALL    L_8E5F
  335.         CALL    L_8674
  336.         CALL    L_86FF
  337.         CALL    L_8C6D
  338.         CALL    L_8D9B
  339.         RET
  340. ;
  341. L_8252
  342.         ;jr $
  343.         LD      (HL),A
  344.         OR      A
  345.         RET     Z
  346.         CALL    L_9285
  347.         OR      A
  348.         JR      NZ,L_8252
  349.         POP     HL
  350. L_825C  CALL    L_9285
  351.         OR      A
  352.         JR      NZ,L_825C
  353.         CALL    L_9140
  354. L_8265  CALL    DrawScreen
  355.         CALL    L_850A
  356. ;
  357.  DB #05,#0C
  358.  DB "SELECT"
  359.  DB #00
  360.  DB #07,#07
  361.  DB "KEYBOARD OR JOYSTICK"
  362.  DB #00
  363.  DB #09,#0A
  364.  DB "PRESS K OR J"
  365.  DB #00,#FF
  366. ;
  367.         CALL    L_9285
  368.         OR      A
  369.         JR      Z,L_8265
  370.         JP      L_8047
  371. ;
  372. L_82A4  CALL    L_9140
  373.         CALL    DrawScreen
  374.         LD      HL,L_92C2
  375.         CALL    L_9114
  376.         CALL    L_84F2
  377.         CALL    L_84DE
  378.         LD      A,#FF
  379.         LD      (VAR0004),A
  380. L_82BB  CALL    L_9285
  381.         LD      HL,VAR0004
  382.         CP      (HL)
  383.         CALL    NZ,L_8252
  384.         CALL    L_8746
  385.         LD      BC,VAR038C
  386.         LD      D,#C0
  387.         LD      E,#89
  388. L_82CF  LD      A,E
  389.         LD      (BC),A
  390.         INC     BC
  391.         DEC     D
  392.         JR      NZ,L_82CF
  393.         LD      BC,#5A52
  394.         CALL    L_8FBC
  395.         DB #78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#00
  396.         LD      BC,#5A72
  397.         CALL    L_8FBC
  398.         DB #78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#00
  399.         LD      BC,#5A92
  400.         CALL    L_8FBC
  401.         DB #78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#78,#00
  402.         CALL    L_850A
  403.  DB #01,#0C
  404.  DB "        ",#00
  405.  DB #02,#0C
  406.  DB "  ERIC  ",#00
  407.  DB #03,#06
  408.  DB "                    ",#00
  409.  DB #04,#06
  410.  DB "  AND THE FLOATERS  ",#00
  411.  DB #0B,#0E
  412.  DB "BOMB",#00
  413.  DB #12,#13
  414.  DB "PRESS SPACE",#00
  415.  DB #13,#13
  416.  DB "  KEY TO   ",#00
  417.  DB #14,#13
  418.  DB "START GAME ",#00
  419.  DB #0A,#07
  420.  DB "UP",#00
  421.  DB #0B,#05
  422.  DB #10,#14,#14,#14,#11,#00
  423.  DB #0C,#05
  424.  DB #15,"W",#19,"I",#16,#00
  425.  DB #0D,#05
  426.  DB #12,#14,#14,#14,#13,#00
  427.  DB #12,#0B
  428.  DB "BOMB",#00
  429.  DB #13,#0A,#10,#14,#14,#14,#14,#14,#11,#00
  430.  DB #14,#0A
  431.  DB #15,"SPACE",#16,#00
  432.  DB #15,#0A
  433.  DB #12,#14,#14,#14,#14,#14,#13,#00
  434.  DB #0D,#01
  435.  DB "LEFT",#00
  436.  DB #0E,#00
  437.  DB #10,#14,#14,#14,#11,#00
  438.  DB #0F,#00
  439.  DB #15,"A",#19,"J",#16,#00
  440.  DB #10,#00
  441.  DB #12,#14,#14,#14,#13,#00
  442.  DB #0D,#0A
  443.  DB "RIGHT",#00
  444.  DB #0E,#0A
  445.  DB #10,#14,#14,#14,#11,#00
  446.  DB #0F,#0A
  447.  DB #15,"D",#19,"L",#16,#00
  448.  DB #10,#0A
  449.  DB #12,#14,#14,#14,#13,#00
  450.  DB #0E,#14
  451.  DB "HIGH",#00
  452.  DB #0F,#14
  453.  DB "SCORE!",#00
  454.  DB #FF
  455.         LD      HL,(VAR0002)
  456.         CALL    Pr12345
  457.         CALL    L_850A
  458.  DB #11,#05
  459.  DB "DOWN",#00
  460.  DB #12,#05
  461.  DB #10,#14,#14,#14,#11,#00
  462.  DB #13,#05
  463.  DB #15,"X",#19,"M",#16,#00
  464.  DB #14,#05
  465.  DB #12,#14,#14,#14,#13,#00
  466.  DB #0B,#14
  467.  DB "LAST",#00
  468.  DB #0C,#14
  469.  DB "SCORE!",#00
  470.  DB #FF
  471.  
  472.         LD      HL,(VAR0000)
  473.         CALL    Pr12345
  474.         CALL    L_850A
  475.  
  476.  DB #17,#05
  477.  DB #5B," HUDSON  SOFT    ",#01,#09,#08,#03,#00
  478.  DB #07,#02
  479.  DB "ERIC   FLOATER  BONUS   EXIT",#00
  480.  DB #08,#12
  481.  DB "POINTS  PORTAL",#00
  482.  DB #FF
  483. ;
  484.         LD      BC,VAR046C
  485.         LD      A,#8C
  486.         CALL    L_8C4F
  487.         CALL    L_8ADC
  488.         CALL    L_88AD
  489.         LD      A,(VAR0071)
  490.         OR      A
  491.         JR      NZ,L_84CB
  492.         LD      A,(VAR0070)
  493.         XOR     #02
  494.         LD      (VAR0070),A
  495.         LD      A,(VAR005A)
  496.         XOR     #02
  497.         LD      (VAR005A),A
  498. L_84CB  LD      BC,VAR047C
  499.         LD      A,#0A
  500.         CALL    L_8C4F
  501.         LD      BC,VAR0484
  502.         LD      A,#0E
  503.         CALL    L_8C4F
  504.         JP      L_82BB
  505. ;
  506. L_84DE  CALL    L_89E5
  507.         LD      IX,VAR005B
  508.         LD      (IX+#00),#01
  509.         LD      (IX+#01),#0C
  510.         LD      (IX+#02),#0A
  511.         RET
  512. ;
  513. L_84F2  CALL    L_8603
  514.         LD      IX,VAR001E
  515.         LD      (IX+#00),#01
  516.         LD      (IX+#01),#07
  517.         LD      (IX+#02),#07
  518.         LD      (IX+#03),#01
  519.         RET
  520. ;
  521. L_850A  EX      (SP),HL
  522.         CALL    L_8511
  523.         INC     HL
  524.         EX      (SP),HL
  525.         RET
  526. ;
  527. L_8511  LD      A,(HL)
  528.         INC     A
  529.         RET     Z
  530.         LD      B,(HL)
  531.         INC     HL
  532.         LD      C,(HL)
  533.         INC     HL
  534.         CALL    L_9126
  535.         CALL    L_9138
  536.         JR      L_8511
  537. ;
  538. L_8520  LD      A,(VAR007B)
  539.         OR      A
  540.         RET     NZ
  541.         LD      HL,(VAR000F)
  542.         LD      A,H
  543.         OR      L
  544.         JR      Z,L_8535
  545.         LD      BC,#000A
  546.         SBC     HL,BC
  547.         LD      (VAR000F),HL
  548.         RET
  549. ;
  550. L_8535  LD      A,(VAR001B)
  551.         OR      A
  552.         RET     NZ
  553.         CALL    L_8FEE
  554.         LD      A,#01
  555.         LD      (VAR001B),A
  556.         XOR     A
  557.         LD      (VAR0085),A
  558.         LD      (VAR0082),A
  559.         LD      A,#01
  560.         LD      (VAR0016),A
  561.         LD      (VAR0017),A
  562.         XOR     A
  563.         LD      (VAR0081),A
  564.         LD      (VAR0083),A
  565.         RET
  566. ;
  567. L_8559  LD      BC,(VAR000B)
  568.         LD      A,(VAR0085)
  569.         OR      A
  570.         JR      Z,L_8579
  571.         LD      A,(VAR0084)
  572.         CP      B
  573.         JR      NZ,L_8579
  574.         LD      A,(VAR0083)
  575.         CP      C
  576.         JR      NZ,L_8579
  577.         XOR     A
  578.         LD      (VAR0085),A
  579.         LD      A,#01
  580.         LD      (VAR0018),A
  581.         RET
  582. ;
  583. L_8579  LD      A,(VAR0082)
  584.         OR      A
  585.         RET     Z
  586.         LD      A,(VAR0081)
  587.         CP      B
  588.         RET     NZ
  589.         LD      A,(VAR0080)
  590.         CP      C
  591.         RET     NZ
  592.         XOR     A
  593.         LD      (VAR0082),A
  594.         CALL    L_8F8C
  595.         AND     #3F
  596.         ADD     A,A
  597.         SET     4,A
  598.         LD      C,A
  599.         LD      B,#00
  600.         LD      HL,(VAR0000)
  601.         ADD     HL,BC
  602.         LD      (VAR0000),HL
  603.         LD      HL,L_85A5
  604.         LD      (VAR0005),HL
  605.         RET
  606. ;
  607. L_85A5 DB #D4,#00,#14,#00,#00,#B2,#00,#14
  608.  DB #00,#00,#8E,#00,#14,#00
  609. L_85B3
  610.  DB #00,#00
  611. ;
  612. L_85B5  LD      A,(VAR0013)
  613.         OR      A
  614.         RET     Z
  615.         LD      A,(VAR0014)
  616.         OR      A
  617.         RET     NZ
  618.         LD      BC,(VAR001C)
  619.         CALL    L_9008
  620.         CALL    L_8726
  621.         CP      #20
  622.         RET     NZ
  623.         LD      A,(VAR0015)
  624.         ADD     A,#04
  625.         LD      (VAR0015),A
  626.         LD      IX,VAR001E
  627.         LD      D,#04
  628. L_85DA  LD      A,(IX+#00)
  629.         INC     A
  630.         JR      Z,L_85FD
  631.         DEC     A
  632.         JR      NZ,L_85F6
  633.         LD      (IX+#00),#01
  634.         LD      A,(VAR001C)
  635.         LD      (IX+#01),A
  636.         LD      A,(VAR001D)
  637.         LD      (IX+#02),A
  638.         DEC     D
  639.         JR      Z,L_85FD
  640. L_85F6  LD      BC,#0007
  641.         ADD     IX,BC
  642.         JR      L_85DA
  643. ;
  644. L_85FD  LD      A,#01
  645.         LD      (VAR0014),A
  646.         RET
  647. ;
  648. L_8603  LD      IX,VAR001E
  649. L_8607  LD      A,(IX+#00)
  650.         INC     A
  651.         RET     Z
  652.         LD      (IX+#00),#00
  653.         LD      BC,#0007
  654.         ADD     IX,BC
  655.         JR      L_8607
  656. ;
  657. L_8617  LD      A,(VAR0015)
  658.         LD      B,A
  659.         LD      IX,VAR001E
  660. L_861F  LD      HL,L_8644
  661.         CALL    L_8F8C
  662.         AND     #03
  663.         ADD     A,A
  664.         ADD     A,L
  665.         LD      L,A
  666.         LD      A,#00
  667.         ADC     A,H
  668.         LD      H,A
  669.         LD      A,(HL)
  670.         LD      (IX+#01),A
  671.         INC     HL
  672.         LD      A,(HL)
  673.         LD      (IX+#02),A
  674.         LD      (IX+#00),#01
  675.         LD      DE,#0007
  676.         ADD     IX,DE
  677.         DEC     B
  678.         JR      NZ,L_861F
  679.         RET
  680. ;
  681. L_8644 DB #01,#01,#1D,#01,#01,#13,#1D,#13
  682. ;
  683. L_864C  LD      A,(VAR0016)
  684.         OR      A
  685.         RET     NZ
  686.         LD      BC,(VAR0080)
  687.         LD      D,B
  688.         LD      E,C
  689.         CALL    L_9008
  690.         CALL    L_8726
  691.         CP      #20
  692.         RET     NZ
  693.         LD      B,D
  694.         LD      C,E
  695.         CALL    L_9126
  696.         CALL    L_8726
  697.         CP      #20
  698.         RET     NZ
  699.         LD      A,#01
  700.         LD      (VAR0082),A
  701.         LD      (VAR0016),A
  702.         RET
  703. ;
  704. L_8674  LD      A,(VAR0082)
  705.         OR      A
  706.         RET     Z
  707.         LD      DE,(VAR0080)
  708.         LD      B,D
  709.         LD      C,E
  710.         CALL    L_9126
  711.         LD      A,#0A
  712.         CALL    L_869C
  713.         INC     BC
  714.         INC     A
  715.         CALL    L_869C
  716.         LD      HL,#001F
  717.         ADD     HL,BC
  718.         LD      B,H
  719.         LD      C,L
  720.         ADD     A,#0F
  721.         CALL    L_869C
  722.         INC     BC
  723.         INC     A
  724.         JP      L_869C
  725. ;
  726. L_869C  PUSH    AF
  727.         LD      A,(BC)
  728.         CP      #E0
  729.         JR      C,L_86B7
  730.         XOR     A
  731.         LD      (VAR0082),A
  732.         LD      A,(VAR0080)
  733.         LD      (VAR001C),A
  734.         LD      A,(VAR0081)
  735.         LD      (VAR001D),A
  736.         LD      A,#01
  737.         LD      (VAR0013),A
  738. L_86B7  POP     AF
  739.         LD      (BC),A
  740.         RET
  741. ;
  742. L_86BA  PUSH    AF
  743.         LD      A,(BC)
  744.         CP      #E0
  745.         JR      C,L_86D5
  746.         XOR     A
  747.         LD      (VAR0085),A
  748.         LD      A,(VAR0083)
  749.         LD      (VAR001C),A
  750.         LD      A,(VAR0084)
  751.         LD      (VAR001D),A
  752.         LD      A,#01
  753.         LD      (VAR0013),A
  754. L_86D5  POP     AF
  755.         LD      (BC),A
  756.         RET
  757. ;
  758. L_86D8  LD      A,(VAR0017)
  759.         OR      A
  760.         RET     NZ
  761.         LD      BC,(VAR0083)
  762.         LD      D,B
  763.         LD      E,C
  764.         CALL    L_9008
  765.         CALL    L_8726
  766.         CP      #20
  767.         RET     NZ
  768.         LD      B,D
  769.         LD      C,E
  770.         CALL    L_9126
  771.         CALL    L_8726
  772.         CP      #20
  773.         RET     NZ
  774.         LD      A,#01
  775.         LD      (VAR0085),A
  776.         LD      (VAR0017),A
  777. L_86FF  LD      A,(VAR0085)
  778.         OR      A
  779.         RET     Z
  780.         LD      BC,(VAR0083)
  781.         CALL    L_9126
  782.         LD      A,#0E
  783.         CALL    L_86BA
  784.         INC     BC
  785.         INC     A
  786.         CALL    L_86BA
  787.         LD      HL,#001F
  788.         ADD     HL,BC
  789.         LD      B,H
  790.         LD      C,L
  791.         ADD     A,#0F
  792.         CALL    L_86BA
  793.         INC     BC
  794.         INC     A
  795.         CALL    L_86BA
  796.         RET
  797. ;
  798. L_8726  LD      A,(BC)
  799.         CP      #20
  800.         RET     NZ
  801.         INC     BC
  802.         LD      A,(BC)
  803.         CP      #20
  804.         RET     NZ
  805.         LD      HL,#001F
  806.         ADD     HL,BC
  807.         LD      B,H
  808.         LD      C,L
  809.         LD      A,(BC)
  810.         CP      #20
  811.         RET     NZ
  812.         INC     BC
  813.         LD      A,(BC)
  814.         RET
  815. ;
  816. L_873C
  817. ;increase (hl) mod (hl+1)
  818.         LD      A,(HL)
  819.         INC     A
  820.         INC     HL
  821.         CP      (HL)
  822.         JR      C,L_8743
  823.         XOR     A
  824. L_8743  DEC     HL
  825.         LD      (HL),A
  826.         RET
  827. ;
  828. L_8746  LD      HL,VAR0071
  829.         CALL    L_873C ;increase (hl) mod (hl+1)
  830.         LD      HL,VAR0077
  831.         CALL    L_873C ;increase (hl) mod (hl+1)
  832.         LD      HL,VAR007B
  833.         CALL    L_873C ;increase (hl) mod (hl+1)
  834.         LD      HL,VAR0079
  835.         CALL    L_873C ;increase (hl) mod (hl+1)
  836.         CALL    DrawScreen
  837.         JP      L_8015
  838. ;
  839. L_8764  LD      A,(VAR0077)
  840.         OR      A
  841.         RET     NZ
  842.         LD      A,(VAR005A)
  843.         XOR     #02
  844.         LD      (VAR005A),A
  845.         LD      IX,VAR001E
  846. L_8775  LD      A,(IX+#00)
  847.         INC     A
  848.         RET     Z
  849.         DEC     A
  850.         CP      #01
  851.         JP      NZ,L_8831
  852.         LD      A,(IX+#04)
  853.         DEC     A
  854.         LD      D,A
  855.         CP      #FF
  856.         JR      NZ,L_879A
  857.         LD      A,(IX+#03)
  858.         DEC     A
  859.         CP      #FF
  860.         JR      NZ,L_8793
  861.         LD      A,#03
  862. L_8793  LD      (IX+#03),A
  863.         LD      A,(VAR0019)
  864.         LD      D,A
  865. L_879A  LD      A,D
  866.         LD      (IX+#04),A
  867.         LD      A,(IX+#03)
  868.         OR      A
  869.         JR      Z,L_87AC
  870.         LD      A,(VAR0077)
  871.         AND     #03
  872.         JP      NZ,L_8831
  873. L_87AC  LD      A,(IX+#03)
  874.         OR      A
  875.         JR      Z,L_87F3
  876.         LD      A,(IX+#04)
  877.         AND     #0F
  878.         OR      A
  879.         JR      Z,L_87F3
  880.         AND     #03
  881.         OR      A
  882.         JR      Z,L_87DF
  883.         CALL    L_8854
  884.         CP      #80
  885.         JR      NC,L_87CB
  886.         CALL    L_8839
  887.         JR      L_8831
  888. ;
  889. L_87CB  CALL    L_8F8C
  890.         AND     #03
  891.         LD      (IX+#05),A
  892.         CALL    L_8854
  893.         CP      #80
  894.         JR      NC,L_8831
  895.         CALL    L_8839
  896.         JR      L_8831
  897. ;
  898. L_87DF  CALL    L_8F8C
  899.         AND     #03
  900.         LD      (IX+#05),A
  901.         CALL    L_8854
  902.         CP      #80
  903.         JR      NC,L_8831
  904.         CALL    L_8839
  905.         JR      L_8831
  906. ;
  907. L_87F3  LD      A,(VAR000B)
  908.         LD      B,A
  909.         LD      A,(IX+#01)
  910.         CP      B
  911.         JR      Z,L_8810
  912.         JR      NC,L_8805
  913.         LD      (IX+#05),#01
  914.         JR      L_8809
  915. ;
  916. L_8805  LD      (IX+#05),#00
  917. L_8809  CALL    L_8854
  918.         CP      #80
  919.         JR      C,L_882E
  920. L_8810  LD      A,(VAR000C)
  921.         LD      B,A
  922.         LD      A,(IX+#02)
  923.         CP      B
  924.         JR      Z,L_8831
  925.         JR      NC,L_8822
  926.         LD      (IX+#05),#03
  927.         JR      L_8826
  928. ;
  929. L_8822  LD      (IX+#05),#02
  930. L_8826  CALL    L_8854
  931.         CP      #80
  932.         JP      NC,L_8831
  933. L_882E  CALL    L_8839
  934. L_8831  LD      BC,#0007
  935.         ADD     IX,BC
  936.         JP      L_8775
  937. ;
  938. L_8839  LD      A,(IX+#05)
  939.         ADD     A,A
  940.         LD      HL,L_88A5
  941.         LD      B,#00
  942.         LD      C,A
  943.         ADD     HL,BC
  944.         LD      A,(IX+#02)
  945.         ADD     A,(HL)
  946.         LD      (IX+#02),A
  947.         INC     HL
  948.         LD      A,(IX+#01)
  949.         ADD     A,(HL)
  950.         LD      (IX+#01),A
  951.         RET
  952. ;
  953. L_8854  LD      HL,L_8895
  954.         LD      A,(IX+#05)
  955.         ADD     A,A
  956.         ADD     A,A
  957.         LD      C,A
  958.         LD      B,#00
  959.         ADD     HL,BC
  960.         LD      A,(IX+#02)
  961.         ADD     A,(HL)
  962.         LD      B,A
  963.         INC     HL
  964.         LD      A,(IX+#01)
  965.         ADD     A,(HL)
  966.         LD      C,A
  967.         PUSH    BC
  968.         CALL    L_9126
  969.         LD      A,(BC)
  970.         POP     BC
  971.         CP      #80
  972.         RET     NC
  973.         CALL    L_9008
  974.         LD      A,(BC)
  975.         CP      #80
  976.         RET     NC
  977.         INC     HL
  978.         LD      A,(IX+#02)
  979.         ADD     A,(HL)
  980.         LD      B,A
  981.         INC     HL
  982.         LD      A,(IX+#01)
  983.         ADD     A,(HL)
  984.         LD      C,A
  985.         PUSH    BC
  986.         CALL    L_9126
  987.         LD      A,(BC)
  988.         POP     BC
  989.         CP      #80
  990.         RET     NC
  991.         CALL    L_9008
  992.         LD      A,(BC)
  993.         RET
  994. ;
  995. L_8895 DB #00,#FF,#01,#FF,#00,#02,#01,#02
  996.  DB #FF,#00,#FF,#01,#02,#00,#02,#01
  997. L_88A5 DB #00,#FF,#00,#01,#FF,#00,#01,#00
  998. ;
  999. L_88AD  LD      IX,VAR001E
  1000. L_88B1  LD      A,(IX+#00)
  1001.         INC     A
  1002.         RET     Z
  1003.         DEC     A
  1004.         JP      Z,L_896A
  1005.         CP      #01
  1006.         JP      Z,L_893E
  1007.         LD      C,(IX+#01)
  1008.         LD      B,(IX+#02)
  1009.         CALL    L_9126
  1010.         LD      A,(IX+#00)
  1011.         ADD     A,A
  1012.         ADD     A,#1E
  1013.         CP      #30
  1014.         JR      C,L_88D9
  1015.         LD      A,#20
  1016.         CALL    L_8C60
  1017.         JR      L_88DC
  1018. ;
  1019. L_88D9  CALL    L_8C4F
  1020. L_88DC  PUSH    HL
  1021.         LD      HL,VAR0075
  1022.         CALL    L_873C
  1023.         POP     HL
  1024.         LD      A,(VAR0075)
  1025.         OR      A
  1026.         JP      NZ,L_896A
  1027.         LD      A,(IX+#00)
  1028.         INC     A
  1029.         CP      #0A
  1030.         JR      Z,L_8908
  1031.         LD      (IX+#00),A
  1032.         ADD     A,A
  1033.         ADD     A,A
  1034.         ADD     A,A
  1035.         ADD     A,A
  1036.         LD      E,A
  1037.         LD      D,#00
  1038.         PUSH    BC
  1039.         LD      BC,#000F
  1040.         CALL    L_92A6 ;sound
  1041.         POP     BC
  1042.         JP      L_896A
  1043. ;
  1044. L_8908  XOR     A
  1045.         LD      (IX+#00),A
  1046.         LD      A,(IX+#03)
  1047.         ADD     A,A
  1048.         ADD     A,A
  1049.         INC     A
  1050.         INC     A
  1051.         LD      B,A
  1052.         CALL    L_8F8C
  1053.         AND     #03
  1054.         INC     A
  1055.         ADD     A,B
  1056.         LD      C,A
  1057.         LD      B,#00
  1058.         LD      HL,(VAR0000)
  1059.         ADD     HL,BC
  1060.         LD      (VAR0000),HL
  1061.         LD      A,(VAR000D)
  1062.         CP      #06
  1063.         JR      NC,L_896A
  1064.         LD      A,(VAR0015)
  1065.         DEC     A
  1066.         LD      (VAR0015),A
  1067.         JR      NZ,L_896A
  1068.         LD      A,(VAR001A)
  1069.         INC     A
  1070.         LD      (VAR001A),A
  1071.         JR      L_896A
  1072. ;
  1073. L_893E  LD      C,(IX+#01)
  1074.         LD      B,(IX+#02)
  1075.         CALL    L_9126
  1076.         LD      A,(IX+#03)
  1077.         ADD     A,A
  1078.         ADD     A,A
  1079.         ADD     A,#C0
  1080.         LD      HL,VAR005A
  1081.         ADD     A,(HL)
  1082.         CALL    L_8972
  1083.         INC     A
  1084.         INC     BC
  1085.         CALL    L_8972
  1086.         LD      HL,#001F
  1087.         ADD     HL,BC
  1088.         LD      B,H
  1089.         LD      C,L
  1090.         ADD     A,#0F
  1091.         CALL    L_8972
  1092.         INC     BC
  1093.         INC     A
  1094.         CALL    L_8972
  1095. L_896A  LD      BC,#0007
  1096.         ADD     IX,BC
  1097.         JP      L_88B1
  1098. ;
  1099. L_8972  PUSH    AF
  1100.         LD      A,(BC)
  1101.         CP      #E0
  1102.         JR      C,L_897C
  1103.         LD      (IX+#00),#02
  1104. L_897C  POP     AF
  1105.         LD      (BC),A
  1106.         RET
  1107. ;
  1108. L_897F  LD      A,(VAR000D)
  1109.         CP      #06
  1110.         RET     NC
  1111.         LD      A,(VAR0012)
  1112.         AND     #03
  1113.         JR      Z,L_8991
  1114.         CALL    L_91B3 ;a=0:0/break pressed, -1:not pressed
  1115.         INC     A
  1116.         RET     NZ ;pressed
  1117. L_8991  LD      IX,VAR005B
  1118. L_8995  LD      A,(IX+#00)
  1119.         INC     A
  1120.         RET     Z
  1121.         DEC     A
  1122.         OR      A
  1123.         JR      NZ,L_89D9
  1124.         LD      BC,(VAR000B)
  1125.         LD      (IX+#01),C
  1126.         LD      (IX+#02),B
  1127.         CALL    L_9008
  1128.         LD      D,B
  1129.         LD      E,C
  1130.         CALL    L_89E1
  1131.         RET     NZ
  1132.         INC     BC
  1133.         CALL    L_89E1
  1134.         RET     NZ
  1135.         LD      HL,#001F
  1136.         ADD     HL,BC
  1137.         LD      B,H
  1138.         LD      C,L
  1139.         CALL    L_89E1
  1140.         RET     NZ
  1141.         INC     BC
  1142.         CALL    L_89E1
  1143.         RET     NZ
  1144.         LD      B,D
  1145.         LD      C,E
  1146.         LD      A,#60
  1147.         CALL    L_8C4F
  1148.         LD      A,#01
  1149.         LD      (IX+#00),A
  1150.         XOR     A
  1151.         LD      (IX+#03),A
  1152.         LD      (VAR000D),A
  1153.         RET
  1154. ;
  1155. L_89D9  LD      BC,#0004
  1156.         ADD     IX,BC
  1157.         JP      L_8995
  1158. ;
  1159. L_89E1  LD      A,(BC)
  1160.         CP      #20
  1161.         RET
  1162. ;
  1163. L_89E5  LD      IX,VAR005B
  1164. L_89E9  LD      A,(IX+#00)
  1165.         INC     A
  1166.         RET     Z
  1167.         LD      (IX+#00),#00
  1168.         LD      BC,#0004
  1169.         ADD     IX,BC
  1170.         JR      L_89E9
  1171. ;
  1172. L_89F9  LD      A,(VAR0070)
  1173.         XOR     #02
  1174.         LD      (VAR0070),A
  1175.         LD      IX,VAR005B
  1176. L_8A05  LD      A,(IX+#00)
  1177.         INC     A
  1178.         RET     Z
  1179.         DEC     A
  1180.         JR      Z,L_8A46
  1181.         CP      #05
  1182.         JR      NC,L_8A1C
  1183.         LD      A,(IX+#03)
  1184.         INC     A
  1185.         LD      (IX+#03),A
  1186.         CP      #07
  1187.         JR      NZ,L_8A46
  1188. L_8A1C  XOR     A
  1189.         LD      (IX+#03),A
  1190.         LD      A,(VAR0079)
  1191.         OR      A
  1192.         JR      NZ,L_8A46
  1193.         LD      A,(IX+#00)
  1194.         INC     A
  1195.         CP      #0E
  1196.         JR      Z,L_8A42
  1197.         LD      (IX+#00),A
  1198.         CP      #05
  1199.         JR      C,L_8A46
  1200.         CP      #06
  1201.         JR      Z,L_8A4D
  1202.         LD      A,(VAR000D)
  1203.         CP      #06
  1204.         JR      NC,L_8A46
  1205.         JR      L_8A46
  1206. ;
  1207. L_8A42  XOR     A
  1208.         LD      (IX+#00),A
  1209. L_8A46  LD      BC,#0004
  1210.         ADD     IX,BC
  1211.         JR      L_8A05
  1212. ;
  1213. L_8A4D  LD      HL,L_8A55
  1214.         LD      (VAR0007),HL
  1215.         JR      L_8A46
  1216. ;
  1217. L_8A55 DB #50,#00,#08,#00,#A0,#00,#08,#00
  1218.  DB #40,#01,#08,#00,#80,#02,#08,#00
  1219.  DB #00,#C6,#02,#04,#00,#2A,#03,#04
  1220.  DB #00,#00,#D0,#02,#03,#00,#34,#03
  1221.  DB #03,#00,#00,#DA,#02,#03,#00,#3E
  1222.  DB #03,#03,#00,#00,#E4,#02,#03,#00
  1223.  DB #48,#03,#03,#00,#00,#EE,#02,#02
  1224.  DB #00,#52,#03,#02,#00,#00,#F8,#02
  1225.  DB #02,#00,#5C,#03,#02,#00,#00,#02
  1226.  DB #03,#02,#00,#66,#03,#02,#00,#00
  1227.  DB #0C,#03,#02,#00,#70,#03,#02,#00
  1228.  DB #00,#16,#03,#02,#00,#7A,#03,#02
  1229.  DB #00,#00,#20,#03,#01,#00,#84,#03
  1230.  DB #01,#00,#00,#2A,#03,#01,#00,#8E
  1231.  DB #03,#01,#00,#00,#34,#03,#01,#00
  1232.  DB #98,#03,#01,#00,#00,#3E,#03,#01
  1233.  DB #00,#A2,#03,#01,#00,#00,#00
  1234. ;
  1235. L_8ADC  LD      IX,VAR005B
  1236. L_8AE0  LD      A,(IX+#00)
  1237.         INC     A
  1238.         RET     Z
  1239.         DEC     A
  1240.         JR      Z,L_8B3A
  1241.         CP      #0D
  1242.         JR      Z,L_8B4E
  1243.         CP      #05
  1244.         JR      C,L_8AF8
  1245.         ADD     A,A
  1246.         ADD     A,#D6
  1247.         EXX
  1248.         LD      D,A
  1249.         EXX
  1250.         JR      L_8B60
  1251. ;
  1252. L_8AF8  DEC     A
  1253.         ADD     A,A
  1254.         ADD     A,A
  1255.         LD      D,A
  1256.         LD      A,(VAR0070)
  1257.         ADD     A,D
  1258.         ADD     A,#60
  1259.         LD      D,A
  1260.         EXX
  1261.         LD      D,A
  1262.         EXX
  1263.         LD      A,(IX+#01)
  1264.         LD      C,A
  1265.         EXX
  1266.         LD      C,A
  1267.         EXX
  1268.         LD      A,(IX+#02)
  1269.         LD      B,A
  1270.         EXX
  1271.         LD      B,A
  1272.         EXX
  1273.         CALL    L_9008
  1274.         CALL    L_8B41
  1275.         INC     BC
  1276.         INC     D
  1277.         CALL    L_8B41
  1278.         LD      HL,#001F
  1279.         ADD     HL,BC
  1280.         LD      B,H
  1281.         LD      C,L
  1282.         LD      A,#0F
  1283.         ADD     A,D
  1284.         LD      D,A
  1285.         CALL    L_8B41
  1286.         INC     BC
  1287.         INC     D
  1288.         CALL    L_8B41
  1289.         EXX
  1290.         CALL    L_9126
  1291.         LD      A,D
  1292.         CALL    L_8C4F
  1293.         EXX
  1294. L_8B3A  LD      BC,#0004
  1295.         ADD     IX,BC
  1296.         JR      L_8AE0
  1297. ;
  1298. L_8B41  LD      A,(BC)
  1299.         CP      #E0
  1300.         RET     C
  1301.         LD      (IX+#00),#04
  1302.         LD      (IX+#03),#06
  1303.         RET
  1304. ;
  1305. L_8B4E  LD      A,(IX+#01)
  1306.         LD      C,A
  1307.         LD      A,(IX+#02)
  1308.         LD      B,A
  1309.         CALL    L_9008
  1310.         LD      A,#20
  1311.         CALL    L_8C60
  1312.         JR      L_8B3A
  1313. ;
  1314. L_8B60  LD      C,(IX+#01)
  1315.         LD      B,(IX+#02)
  1316.         CALL    L_9008
  1317.         EXX
  1318.         LD      A,D
  1319.         EXX
  1320.         CALL    L_8C4F
  1321.         EXX
  1322.         LD      A,D
  1323.         EXX
  1324.         INC     A
  1325.         INC     A
  1326.         CP      #F0
  1327.         JR      C,L_8B7A
  1328.         LD      A,#20
  1329. L_8B7A  EXX
  1330.         LD      E,A
  1331.         EXX
  1332.         LD      HL,L_9026
  1333. L_8B80  LD      A,(HL)
  1334.         OR      A
  1335.         JR      Z,L_8B88
  1336.         ADD     A,A
  1337.         OR      A
  1338.         JR      Z,L_8B3A
  1339. L_8B88  LD      A,(HL)
  1340.         INC     HL
  1341.         ADD     A,(IX+#02)
  1342.         LD      B,A
  1343.         LD      A,(HL)
  1344.         INC     HL
  1345.         ADD     A,(IX+#01)
  1346.         LD      C,A
  1347.         CALL    L_8BF5
  1348.         CP      #88
  1349.         JR      NZ,L_8BA9
  1350.         JR      L_8BA1
  1351. ;
  1352.         CP      #89
  1353.         JR      NZ,L_8BA9
  1354. L_8BA1  INC     HL
  1355.         INC     HL
  1356.         INC     HL
  1357.         INC     HL
  1358.         INC     HL
  1359.         INC     HL
  1360.         JR      L_8B80
  1361. ;
  1362. L_8BA9  LD      A,(HL)
  1363.         INC     HL
  1364.         ADD     A,(IX+#02)
  1365.         LD      B,A
  1366.         LD      A,(HL)
  1367.         INC     HL
  1368.         ADD     A,(IX+#01)
  1369.         LD      C,A
  1370.         CALL    L_8BF5
  1371.         CP      #80
  1372.         JR      C,L_8BC6
  1373.         CP      #8A
  1374.         JR      NC,L_8BC6
  1375.         INC     HL
  1376.         INC     HL
  1377.         INC     HL
  1378.         INC     HL
  1379.         JR      L_8B80
  1380. ;
  1381. L_8BC6  LD      A,(HL)
  1382.         INC     HL
  1383.         ADD     A,(IX+#02)
  1384.         LD      B,A
  1385.         LD      A,(HL)
  1386.         INC     HL
  1387.         ADD     A,(IX+#01)
  1388.         LD      C,A
  1389.         CALL    L_8C2E
  1390.         EX      AF,AF'
  1391.         CP      #80
  1392.         JR      C,L_8BE3
  1393.         CP      #8A
  1394.         JR      NC,L_8BE3
  1395.         EX      AF,AF'
  1396.         INC     HL
  1397.         INC     HL
  1398.         JR      L_8B80
  1399. ;
  1400. L_8BE3  EX      AF,AF'
  1401.         LD      A,(HL)
  1402.         INC     HL
  1403.         ADD     A,(IX+#02)
  1404.         LD      B,A
  1405.         LD      A,(HL)
  1406.         INC     HL
  1407.         ADD     A,(IX+#01)
  1408.         LD      C,A
  1409.         CALL    L_8C2E
  1410.         JR      L_8B80
  1411. ;
  1412. L_8BF5  PUSH    BC
  1413.         CALL    L_9126
  1414.         LD      A,(BC)
  1415.         POP     BC
  1416.         CP      #88
  1417.         RET     Z
  1418.         CP      #89
  1419.         RET     Z
  1420.         CALL    L_9008
  1421.         LD      A,(BC)
  1422.         CP      #88
  1423.         RET     Z
  1424.         CP      #80
  1425.         JR      C,L_8C12
  1426.         CP      #8A
  1427.         JR      NC,L_8C12
  1428.         JR      L_8C17
  1429. ;
  1430. L_8C12  EXX
  1431.         LD      A,E
  1432.         EXX
  1433.         JR      L_8C20
  1434. ;
  1435. L_8C17  CALL    L_8C22
  1436.         CP      #88
  1437.         JR      NZ,L_8C20
  1438.         LD      A,#20
  1439. L_8C20  LD      (BC),A
  1440.         RET
  1441. ;
  1442. L_8C22  PUSH    AF
  1443.         EX      (SP),HL
  1444.         LD      A,(VAR0079)
  1445.         OR      A
  1446.         JR      NZ,L_8C2B
  1447.         INC     H
  1448. L_8C2B  EX      (SP),HL
  1449.         POP     AF
  1450.         RET
  1451. ;
  1452. L_8C2E  PUSH    BC
  1453.         CALL    L_9126
  1454.         LD      A,(BC)
  1455.         EX      AF,AF'
  1456.         LD      A,(BC)
  1457.         EX      AF,AF'
  1458.         POP     BC
  1459.         CP      #88
  1460.         RET     Z
  1461.         CP      #89
  1462.         RET     Z
  1463.         CALL    L_9008
  1464.         LD      A,(BC)
  1465.         CP      #8A
  1466.         JR      NC,L_8C4A
  1467.         CP      #80
  1468.         JR      C,L_8C4A
  1469.         RET
  1470. ;
  1471. L_8C4A  EXX
  1472.         LD      A,E
  1473.         EXX
  1474.         LD      (BC),A
  1475.         RET
  1476. ;
  1477. L_8C4F  LD      (BC),A
  1478.         INC     BC
  1479.         INC     A
  1480.         LD      (BC),A
  1481.         LD      HL,#001F
  1482.         ADD     HL,BC
  1483.         LD      B,H
  1484.         LD      C,L
  1485.         ADD     A,#0F
  1486.         LD      (BC),A
  1487.         INC     BC
  1488.         INC     A
  1489.         LD      (BC),A
  1490.         RET
  1491. ;
  1492. L_8C60  LD      (BC),A
  1493.         INC     BC
  1494.         LD      (BC),A
  1495.         LD      HL,#001F
  1496.         ADD     HL,BC
  1497.         LD      B,H
  1498.         LD      C,L
  1499.         LD      (BC),A
  1500.         INC     BC
  1501.         LD      (BC),A
  1502.         RET
  1503. ;
  1504. L_8C6D  LD      A,(VAR000D)
  1505.         CP      #06
  1506.         JR      NC,L_8C95
  1507.         CP      #02
  1508.         JR      NC,L_8C87
  1509.         OR      A
  1510.         JR      NZ,L_8C83
  1511.         INC     A
  1512.         LD      (VAR000D),A
  1513.         LD      E,#8A
  1514.         JR      L_8C9D
  1515. ;
  1516. L_8C83  LD      E,#8C
  1517.         JR      L_8C9D
  1518. ;
  1519. L_8C87  DEC     A
  1520.         DEC     A
  1521.         ADD     A,A
  1522.         ADD     A,A
  1523.         ADD     A,#A0
  1524.         LD      E,A
  1525.         LD      A,(VAR000E)
  1526.         ADD     A,E
  1527.         LD      E,A
  1528.         JR      L_8C9D
  1529. ;
  1530. L_8C95  SUB     #06
  1531.         ADD     A,A
  1532.         ;LD     E,A
  1533.         ;LD     A,#4E ;last die sprite
  1534.         ;SUB    E
  1535.         add a,0x60 ;die sprites (8 шт. 16x16) - реально там нарисована бомба
  1536.         LD      E,A
  1537. L_8C9D  LD      A,(VAR000C)
  1538.         LD      B,A
  1539.         LD      A,(VAR000B)
  1540.         LD      C,A
  1541.         CALL    L_9126
  1542.         CALL    L_8CBF
  1543.         CALL    L_8CBF
  1544.         LD      HL,#001E
  1545.         ADD     HL,BC
  1546.         LD      B,H
  1547.         LD      C,L
  1548.         LD      A,E
  1549.         ADD     A,#0E
  1550.         LD      E,A
  1551.         CALL    L_8CBF
  1552.         CALL    L_8CBF
  1553.         RET
  1554. ;
  1555. L_8CBF  LD      A,(BC)
  1556.         LD      D,A
  1557.         LD      A,E
  1558.         LD      (BC),A
  1559.         INC     BC
  1560.         INC     E
  1561.         LD      A,D
  1562.         CP      #C0
  1563.         RET     C
  1564.         LD      A,(VAR000D)
  1565.         CP      #06
  1566.         RET     NC
  1567.         LD      A,#06
  1568.         LD      (VAR000D),A
  1569.         RET
  1570. ;
  1571. L_8CD5 DB #00,#01,#FF,#00,#01,#00,#00,#FF
  1572. ;
  1573. L_8CDD  LD      A,(VAR0071)
  1574.         OR      A
  1575.         RET     NZ
  1576.         LD      A,(VAR000D)
  1577.         CP      #06
  1578.         JR      C,L_8D12
  1579.         CP      #0D
  1580.         JR      Z,L_8D0C ;set die flag
  1581.         LD      HL,VAR0073
  1582.         CALL    L_873C
  1583.         LD      A,(VAR0073)
  1584.         OR      A
  1585.         RET     NZ
  1586.         LD      A,(VAR000D)
  1587.         INC     A
  1588.         LD      (VAR000D),A
  1589.         ADD     A,A
  1590.         ADD     A,A
  1591.         ADD     A,A
  1592.         LD      E,A
  1593.         LD      D,#00
  1594.         LD      BC,#000F
  1595.         CALL    L_92A6 ;sound
  1596.         RET
  1597. ;
  1598. L_8D0C  LD      A,#01
  1599.         LD      (VAR007D),A ;1=dec erics
  1600.         RET
  1601. ;
  1602. L_8D12  LD      B,#02
  1603.         CALL    L_91D9 ;out: a=0 или код направления (1=up, 2=up-right, 3=right, 4=down-right, 5=down, 6=down-left, 7=left, 8=up-left)
  1604.         CP      #05
  1605.         JR      Z,L_8D29
  1606.         INC     B
  1607.         CP      #07
  1608.         JR      Z,L_8D29
  1609.         INC     B
  1610.         CP      #03
  1611.         JR      Z,L_8D29
  1612.         INC     B
  1613.         CP      #01
  1614.         RET     NZ
  1615. L_8D29  LD      A,(VAR000E)
  1616.         XOR     #02
  1617.         LD      (VAR000E),A
  1618.         LD      HL,L_8CD5
  1619.         LD      A,B
  1620.         LD      E,A
  1621.         DEC     A
  1622.         DEC     A
  1623.         ADD     A,A
  1624.         LD      B,#00
  1625.         LD      C,A
  1626.         ADD     HL,BC
  1627.         LD      A,(VAR000B)
  1628.         ADD     A,(HL)
  1629.         LD      C,A
  1630.         LD      A,(VAR000C)
  1631.         INC     HL
  1632.         ADD     A,(HL)
  1633.         LD      B,A
  1634.         PUSH    BC
  1635.         CALL    L_9126
  1636.         LD      D,#00
  1637.         CALL    L_8D8A
  1638.         CALL    L_8D8A
  1639.         LD      HL,#001E
  1640.         ADD     HL,BC
  1641.         LD      B,H
  1642.         LD      C,L
  1643.         CALL    L_8D8A
  1644.         CALL    L_8D8A
  1645.         LD      A,D
  1646.         OR      A
  1647.         POP     BC
  1648.         RET     NZ
  1649.         LD      A,B
  1650.         LD      (VAR000C),A
  1651.         LD      A,C
  1652.         LD      (VAR000B),A
  1653.         LD      A,E
  1654.         LD      (VAR000D),A
  1655.         LD      B,#08
  1656.         LD      A,(VAR000E)
  1657.         SLA     A
  1658.         SLA     A
  1659.         SLA     A
  1660.         OR      #40
  1661.         LD      E,A
  1662.         LD      D,#00
  1663.         PUSH    BC
  1664.         LD      BC,#0005
  1665.         CALL    L_92A6 ;sound
  1666.         POP     BC
  1667.         RET
  1668.  
  1669. L_8D8A  LD      A,(BC)
  1670.         INC     BC
  1671.         CP      #88
  1672.         JR      NZ,L_8D91
  1673.         INC     D
  1674. L_8D91  CP      #89
  1675.         JR      NZ,L_8D96
  1676.         INC     D
  1677. L_8D96  CP      #80
  1678.         RET     NZ
  1679.         INC     D
  1680.         RET
  1681. ;
  1682. L_8D9B  LD      BC,(VAR0000)
  1683.         LD      HL,(VAR0002)
  1684.         SBC     HL,BC
  1685.         JR      NC,L_8DAA
  1686.         LD      (VAR0002),BC
  1687. L_8DAA  LD      BC,VAR038D
  1688.         CALL    L_8FBC
  1689. ;
  1690. DB #20
  1691. db "SCORE";#10,#11,#12,#13,#14
  1692. db #21
  1693. db #20
  1694. DB #00
  1695. ;
  1696.         LD      HL,(VAR0000)
  1697.         CALL    Pr12345
  1698.         CALL    L_8FBC
  1699. ;
  1700. DB #20,#20,#20
  1701. db "BONUS";#15,#16,#17,#18,#19
  1702. DB #21
  1703. db #20,#00
  1704. ;
  1705.         LD      HL,(VAR000F)
  1706.         CALL    Pr12345
  1707.         DEC     BC
  1708.         CALL    L_8FBC
  1709. ;
  1710. DB #20,#00
  1711. ;
  1712.         LD      BC,VAR066D
  1713.         CALL    L_8FBC
  1714. ;
  1715. DB #20,#20,#20,#20,#20
  1716. db "STAGE";#10,#30,#95,#31,#14
  1717. db #21
  1718. db #20,#00
  1719. ;
  1720.         LD      A,(VAR0012)
  1721.         LD      (BC),A
  1722.         INC     BC
  1723.         CALL    L_8FBC
  1724. ;
  1725. DB #20,#20,#20,#20
  1726. db "ERICS";#14,#13,#97,#11,#10
  1727. db #21
  1728. db #20,#00
  1729. ;
  1730.         LD      A,(VAR0011)
  1731.         LD      (BC),A
  1732.         INC     BC
  1733.         CALL    L_8FBC
  1734. ;
  1735. DB #20,#20,#20,#20,#20,#00
  1736. ;
  1737.         RET
  1738. ;
  1739. L_8E0F  LD      A,(VAR0012)
  1740.         AND     #03
  1741.         RET     NZ
  1742.         LD      BC,VAR066D
  1743.         LD      A,(VAR0088)
  1744.         OR      A
  1745.         JR      Z,L_8E2A
  1746.         LD      HL,VAR0088
  1747.         CALL    L_873C
  1748.         LD      HL,L_8E44
  1749.         JP      L_9138
  1750. ;
  1751. L_8E2A  LD      H,B
  1752.         LD      L,C
  1753.         LD      B,#1A
  1754. L_8E2E  LD      (HL),#20
  1755.         INC     HL
  1756.         DJNZ    L_8E2E
  1757.         LD      HL,VAR008A
  1758.         CALL    L_873C
  1759.         LD      A,(VAR008A)
  1760.         OR      A
  1761.         RET     NZ
  1762.         LD      HL,VAR0088
  1763.         JP      L_873C
  1764. ;
  1765. L_8E44 DB #20,#20,#15,#16,#96,#15,#20,#95
  1766. DB #18,#30,#16,#20,#10,#14,#30,#30
  1767. DB #97,#17,#31,#20,#10,#30,#95,#31
  1768. DB #14,#20,#00
  1769. ;
  1770. L_8E5F  LD      A,#88
  1771.         LD      B,#20
  1772.         LD      HL,VAR038C
  1773. L_8E66  LD      (HL),A
  1774.         INC     HL
  1775.         DJNZ    L_8E66
  1776.         LD      B,#20
  1777.         LD      HL,VAR066C
  1778. L_8E6F  LD      (HL),A
  1779.         INC     HL
  1780.         DJNZ    L_8E6F
  1781.         LD      B,#17
  1782.         LD      HL,VAR03AB
  1783.         LD      DE,#001F
  1784. L_8E7B  LD      (HL),A
  1785.         INC     HL
  1786.         LD      (HL),A
  1787.         ADD     HL,DE
  1788.         DJNZ    L_8E7B
  1789.         LD      HL,VAR03EF
  1790.         LD      C,#05
  1791.         LD      A,#89
  1792. L_8E88  LD      B,#07
  1793. L_8E8A  CALL    L_8E9D
  1794.         OR      A
  1795.         LD      DE,#001D
  1796.         SBC     HL,DE
  1797.         DJNZ    L_8E8A
  1798.         LD      DE,#0064
  1799.         ADD     HL,DE
  1800.         DEC     C
  1801.         JR      NZ,L_8E88
  1802.         RET
  1803. ;
  1804. L_8E9D  LD      (HL),A
  1805.         INC     HL
  1806.         LD      (HL),A
  1807.         LD      DE,#001F
  1808.         ADD     HL,DE
  1809.         LD      (HL),A
  1810.         INC     HL
  1811.         LD      (HL),A
  1812.         RET
  1813. ;
  1814. L_8EA8  CALL    L_8F8C
  1815.         AND     #1F
  1816.         CP      #0F
  1817.         JR      NC,L_8EA8
  1818.         LD      C,A
  1819. L_8EB2  CALL    L_8F8C
  1820.         AND     #1F
  1821.         CP      #0B
  1822.         JR      NC,L_8EB2
  1823.         LD      B,A
  1824.         RET
  1825. ;
  1826. L_8EBD  LD      A,B
  1827.         ADD     A,A
  1828.         ADD     A,#01
  1829.         LD      B,A
  1830.         LD      A,C
  1831.         ADD     A,A
  1832.         ADD     A,#01
  1833.         LD      C,A
  1834.         RET
  1835. ;
  1836. L_8EC8  CALL    L_8EA8
  1837.         LD      A,C
  1838.         LD      (VAR007E),A
  1839.         CP      #02
  1840.         JR      C,L_8EC8
  1841.         CP      #0D
  1842.         JR      NC,L_8EC8
  1843.         LD      A,B
  1844.         LD      (VAR007F),A
  1845.         CP      #02
  1846.         JR      C,L_8EC8
  1847.         CP      #09
  1848.         JR      NC,L_8EC8
  1849.         CALL    L_8EBD
  1850.         PUSH    BC
  1851.         CALL    L_9126
  1852.         LD      A,(BC)
  1853.         CP      #20
  1854.         POP     BC
  1855.         JR      NZ,L_8EC8
  1856.         LD      A,C
  1857.         LD      (VAR000B),A
  1858.         LD      A,B
  1859.         LD      (VAR000C),A
  1860.         LD      A,#23
  1861. L_8EFA  EX      AF,AF'
  1862. L_8EFB  CALL    L_8EA8
  1863.         LD      D,B
  1864.         LD      E,C
  1865.         LD      A,(VAR007E)
  1866.         SUB     E
  1867.         JR      NC,L_8F08
  1868.         NEG
  1869. L_8F08  CP      #02
  1870.         JR      NC,L_8F1A
  1871.         LD      A,(VAR007F)
  1872.         SUB     D
  1873.         JR      NC,L_8F14
  1874.         NEG
  1875. L_8F14  CP      #02
  1876.         JR      NC,L_8F1A
  1877.         JR      L_8EFB
  1878. ;
  1879. L_8F1A  LD      A,C
  1880.         BIT     0,A
  1881.         JR      Z,L_8F26
  1882.         LD      A,B
  1883.         BIT     0,A
  1884.         JR      NZ,L_8EFB
  1885.         JR      L_8F2B
  1886. ;
  1887. L_8F26  LD      A,B
  1888.         BIT     0,A
  1889.         JR      Z,L_8EFB
  1890. L_8F2B  CALL    L_8EBD
  1891.         LD      HL,L_8F72
  1892. L_8F31  LD      A,(HL)
  1893.         INC     A
  1894.         JR      Z,L_8F44
  1895.         DEC     A
  1896.         CP      B
  1897.         JR      NZ,L_8F40
  1898.         INC     HL
  1899.         LD      A,(HL)
  1900.         CP      C
  1901.         JR      Z,L_8EFB
  1902.         JR      L_8F41
  1903. ;
  1904. L_8F40  INC     HL
  1905. L_8F41  INC     HL
  1906.         JR      L_8F31
  1907. ;
  1908. L_8F44  LD      A,(VAR0082)
  1909.         OR      A
  1910.         JR      NZ,L_8F57
  1911.         LD      A,B
  1912.         LD      (VAR0081),A
  1913.         LD      A,C
  1914.         LD      (VAR0080),A
  1915.         LD      A,#01
  1916.         LD      (VAR0082),A
  1917. L_8F57  LD      A,B
  1918.         LD      (VAR0084),A
  1919.         LD      A,C
  1920.         LD      (VAR0083),A
  1921.         LD      A,#01
  1922.         LD      (VAR0085),A
  1923.         CALL    L_9008
  1924.         LD      A,#80
  1925.         CALL    L_8C60
  1926.         EX      AF,AF'
  1927.         DEC     A
  1928.         JP      NZ,L_8EFA
  1929.         RET
  1930.  
  1931. L_8F72 DB #01,#03,#03,#01,#13,#01,#15,#03
  1932. DB #01,#1B,#03,#1D,#15,#1B,#13,#1D
  1933. DB #FF
  1934. ;
  1935. L_8F8C  PUSH    HL
  1936.         PUSH    DE
  1937.         PUSH    BC
  1938.         LD      HL,(VAR0086)
  1939.         LD      A,H
  1940.         RLA
  1941.         RLA
  1942.         XOR     L
  1943.         RRA
  1944.         PUSH    AF
  1945.         LD      A,H
  1946.         XOR     L
  1947.         LD      H,A
  1948.         LD      A,R
  1949.         XOR     L
  1950.         LD      L,A
  1951.         POP     AF
  1952.         RL      L
  1953.         RL      H
  1954.         LD      (VAR0086),HL
  1955.         LD      A,L
  1956.         POP     BC
  1957.         POP     DE
  1958.         POP     HL
  1959.         RET
  1960. ;
  1961. L_8FBC  EX      (SP),HL
  1962.         CALL    L_9138
  1963.         EX      (SP),HL
  1964.         RET
  1965. ;
  1966. Pr12345
  1967.         LD      DE,#2710
  1968.         CALL    L_8FE1
  1969.         LD      DE,#03E8
  1970.         CALL    L_8FE1
  1971.         LD      DE,#0064
  1972.         CALL    L_8FE1
  1973.         LD      DE,#000A
  1974.         CALL    L_8FE1
  1975.         LD      A,L
  1976.         LD      (BC),A
  1977.         INC     BC
  1978.         XOR     A
  1979.         LD      (BC),A
  1980.         INC     BC
  1981.         RET
  1982. ;
  1983. L_8FE1  XOR     A
  1984. L_8FE2  OR      A
  1985.         SBC     HL,DE
  1986.         JR      C,L_8FEA
  1987.         INC     A
  1988.         JR      L_8FE2
  1989. ;
  1990. L_8FEA  ADD     HL,DE
  1991.         LD      (BC),A
  1992.         INC     BC
  1993.         RET
  1994. ;
  1995. L_8FEE  LD      HL,VAR008C
  1996.         LD      DE,VAR008D
  1997.         LD      BC,#02FF
  1998.         LD      (HL),#20
  1999.         LDIR
  2000.         RET
  2001. ;
  2002. L_8FFC  LD      DE,VAR038C
  2003.         LD      HL,VAR008C
  2004.         LD      BC,#0300
  2005.         LDIR
  2006.         RET
  2007. ;
  2008. L_9008  PUSH    HL
  2009.         CALL    L_9126
  2010.         LD      HL,#FD00
  2011.         ADD     HL,BC
  2012.         LD      B,H
  2013.         LD      C,L
  2014.         POP     HL
  2015.         RET
  2016. ;
  2017. L_9014  LD      HL,#5000
  2018. L_9017  DEC     HL
  2019.         LD      A,H
  2020.         OR      L
  2021.         JR      NZ,L_9017
  2022.         RET
  2023.  
  2024. L_9026 DB #00,#FF,#00,#FE,#00,#FD,#00,#FC
  2025. DB #01,#FF,#01,#FE,#01,#FD,#01,#FC
  2026. DB #00,#02,#00,#03,#00,#04,#00,#05
  2027. DB #01,#02,#01,#03,#01,#04,#01,#05
  2028. DB #FF,#00,#FE,#00,#FD,#00,#FC,#00
  2029. DB #FF,#01,#FE,#01,#FD,#01,#FC,#01
  2030. DB #02,#00,#03,#00,#04,#00,#05,#00
  2031. DB #02,#01,#03,#01,#04,#01,#05,#01
  2032. DB #80,#80,#80,#80
  2033. ;
  2034. L_906A  LD      HL,L_9076
  2035.         LD      DE,VAR0005
  2036.         LD      BC,#0092
  2037.         LDIR
  2038.         RET
  2039. ;
  2040. L_9076 DW L_85B3
  2041. DW L_85B3
  2042. DW L_85B3
  2043. ;
  2044. DB #01,#01,#02,#00,#00,#00,#05,#01
  2045. DB #00,#02,#01,#00,#00,#00,#1F,#00
  2046. DB #00,#00,#00,#00,#03,#01,#03,#05
  2047. DB #00,#00,#00,#01,#0B,#02,#09,#00
  2048. DB #00,#01,#01,#01,#01,#09,#00,#00
  2049. DB #00,#07,#01,#03,#05,#00,#00,#00
  2050. DB #00,#00,#02,#09,#00,#00,#00,#00
  2051. DB #00,#01,#09,#00,#00,#00,#00,#00
  2052. DB #03,#05,#00,#00,#00,#00,#00,#02
  2053. DB #03,#00,#00,#FF,#FF,#FF,#FF,#00
  2054. DB #00,#00,#00,#00,#00,#00,#00,#00
  2055. DB #00,#00,#00,#00,#00,#00,#00,#00
  2056. DB #00,#00,#00,#00,#FF,#00,#00,#04
  2057. DB #00,#04,#00,#07,#00,#05,#00,#03
  2058. DB #00,#32,#00,#00,#00,#01,#01,#00
  2059. DB #01,#01,#00,#FF,#FF,#00,#10,#00
  2060. DB #08
  2061. ;
  2062. L_90FD  IM      1
  2063.         EI
  2064.         CALL    L_9140
  2065.         LD      A,#00
  2066.         OUT     (#FE),A
  2067.         LD      IY,#0000
  2068.         LD      HL,L_92C2
  2069.         CALL    L_9114
  2070.         JP      DrawScreen
  2071. ;
  2072. L_9114  LD      E,(HL)
  2073.         INC     HL
  2074.         LD      D,(HL)
  2075.         INC     HL
  2076.         LD      C,(HL)
  2077.         INC     HL
  2078.         LD      B,(HL)
  2079.         INC     HL
  2080.         PUSH    HL
  2081.         LD      HL,VAR098C
  2082.         ADD     HL,DE
  2083.         EX      DE,HL
  2084.         POP     HL
  2085.         LDIR
  2086.         RET
  2087. ;
  2088. L_9126  PUSH    HL
  2089.         LD      L,B
  2090.         LD      H,#00
  2091.         LD      B,H
  2092.         ADD     HL,HL
  2093.         ADD     HL,HL
  2094.         ADD     HL,HL
  2095.         ADD     HL,HL
  2096.         ADD     HL,HL
  2097.         ADD     HL,BC
  2098.         LD      BC,VAR038C
  2099.         ADD     HL,BC
  2100.         EX      (SP),HL
  2101.         POP     BC
  2102.         RET
  2103. ;
  2104. L_9138  LD      A,(HL)
  2105.         INC     HL
  2106.         OR      A
  2107.         RET     Z
  2108.         LD      (BC),A
  2109.         INC     BC
  2110.         JR      L_9138
  2111. ;
  2112. L_9140  LD      HL,VAR038C
  2113.         LD      DE,VAR038D
  2114.         LD      BC,#02FF
  2115.         LD      A,#20
  2116.         LD      (HL),A
  2117.         LDIR
  2118.         LD      HL,VAR068C
  2119.         LD      DE,VAR068D
  2120.         LD      BC,#02FF
  2121.         CPL
  2122.         LD      (HL),A
  2123.         LDIR
  2124.         RET
  2125. ;
  2126.  
  2127. setpgs_scr
  2128.        ld a,(user_scr0_low) ;ok
  2129.        SETPG32KLOW
  2130.        ld a,(user_scr0_high) ;ok
  2131.        SETPG32KHIGH
  2132.        ret
  2133.  
  2134. redraw
  2135.        ld e,0
  2136.        OS_CLS
  2137.  
  2138.        ld hl,VAR038C
  2139.        ld de,VAR068C ;что сейчас отрисовано
  2140.        ld bc,768
  2141. redraw0
  2142.        ld a,(hl)
  2143.        inc a
  2144.        ld (de),a
  2145.        inc de
  2146.        cpi
  2147.        jp pe,redraw0
  2148.  
  2149. DrawScreen
  2150. ;draw screen
  2151.        call setpgs_scr
  2152.  
  2153.         LD      DE,VAR038C
  2154.         LD      HL,VAR068C
  2155.        
  2156.        if EGA
  2157.        
  2158.        exx
  2159.        ld hl,0x8000+4
  2160.        ld lx,24
  2161. drawscreen0
  2162.        ld hx,32
  2163. drawscreen00
  2164.        exx
  2165.        ld a,(de)
  2166.        cp (hl)
  2167.        ld (hl),a
  2168.        call nz,L_9182
  2169.        ld a,#20
  2170.        ld (de),a
  2171.        inc de
  2172.        inc hl
  2173.        exx
  2174.        inc hl
  2175.        dec hx
  2176.        jp nz,drawscreen00
  2177.        ld bc,8*40 - 32
  2178.        add hl,bc
  2179.        dec lx
  2180.        jp nz,drawscreen0
  2181.        ret
  2182.        
  2183.        else ;6912
  2184.        
  2185.         EXX
  2186.         LD      D,#40
  2187.         LD      BC,#5800
  2188. L_9168  EXX
  2189.         LD      A,(DE)
  2190.         CP      (HL)
  2191.         LD      (HL),A
  2192.         CALL    NZ,L_9182
  2193.         LD      A,#20
  2194.         LD      (DE),A
  2195.         INC     DE
  2196.         INC     HL
  2197.         EXX
  2198.         INC     C
  2199.         JR      NZ,L_9168
  2200.         INC     B
  2201.         LD      A,D
  2202.         ADD     A,#08
  2203.         LD      D,A
  2204.         CP      #58
  2205.         JR      C,L_9168
  2206.         RET
  2207.        
  2208.        endif
  2209. ;
  2210. L_9182
  2211. ;draw tile
  2212.        if EGA
  2213.        exx
  2214. ;hl=scr (0x8000+)
  2215.        push hl
  2216.        ld e,a
  2217.        ld d,egagfx/256
  2218.        
  2219. ;de=tilegfx
  2220.        ld bc,40
  2221.        push hl
  2222.        push hl
  2223.        dup 8
  2224.        ld a,(de) ;font
  2225.        ld (hl),a ;scr
  2226.        inc d
  2227.        add hl,bc
  2228.        edup
  2229.        pop hl
  2230.        set 6,h
  2231.        ;ld d,font/256
  2232.        dup 8
  2233.        ld a,(de) ;font
  2234.        ld (hl),a ;scr
  2235.        inc d
  2236.        add hl,bc
  2237.        edup
  2238.        pop hl
  2239.        set 5,h
  2240.        push hl
  2241.        ;ld d,font/256
  2242.        dup 8
  2243.        ld a,(de) ;font
  2244.        ld (hl),a ;scr
  2245.        inc d
  2246.        add hl,bc
  2247.        edup
  2248.        pop hl
  2249.        set 6,h
  2250.        ;ld d,font/256
  2251.        dup 7
  2252.        ld a,(de) ;font
  2253.        ld (hl),a ;scr
  2254.        inc d
  2255.        add hl,bc
  2256.        edup
  2257.        ld a,(de) ;font
  2258.        ld (hl),a ;scr
  2259.        pop hl
  2260.        exx
  2261.        ret
  2262.        
  2263.        else ;6912
  2264.        
  2265.        EXX
  2266.         PUSH    DE
  2267.         LD      E,A
  2268.         LD      D,#00
  2269.         LD      L,E
  2270.         LD      H,D
  2271.         ADD     HL,HL
  2272.         ADD     HL,HL
  2273.         ADD     HL,HL
  2274.         ADD     HL,DE
  2275.         LD      DE,VAR098C
  2276.         ADD     HL,DE
  2277.         POP     DE
  2278.         LD      E,C
  2279.         PUSH    BC
  2280.         LD      C,D
  2281.         LD      B,#08
  2282. L_9197  LD      A,(HL)
  2283.         LD      (DE),A
  2284.         INC     HL
  2285.         INC     D
  2286.         DJNZ    L_9197
  2287.         LD      D,C
  2288.         POP     BC
  2289.         LD      A,(HL)
  2290.         LD      (BC),A
  2291.         EXX
  2292.         RET
  2293.        
  2294.        endif
  2295.        
  2296. ;actionkeycodes
  2297. L_91A3 DB #57,#49,#45,#4F,#44,#4C,#43,#0E
  2298. DB #58,#4D,#5A,#4E,#41,#4A,#51,#55
  2299. ;
  2300. L_91B3  LD      A,(L_9284);keyboard/joystick?
  2301.         OR      A
  2302.         JR      NZ,L_91CB ;out: a=0: 0 pressed, -1: not pressed
  2303. L_91B9
  2304. ;out: a=0: break pressed
  2305.         LD      A,#FE
  2306.         IN      A,(#FE)
  2307.         AND     #01
  2308.         CPL
  2309.         RET     Z
  2310.         LD      A,#7F
  2311.         IN      A,(#FE)
  2312.         AND     #01
  2313.         CPL
  2314.         RET     Z
  2315.         XOR     A
  2316.         RET
  2317. ;
  2318. L_91CB
  2319. ;out: a=0: 0 pressed, -1: not pressed
  2320.         PUSH    BC
  2321.         LD      BC,#EFFE;sinclair joystick
  2322.         IN      A,(C)
  2323.         POP     BC
  2324.         AND     #01
  2325.         LD      A,#FF
  2326.         RET     Z
  2327.         XOR     A
  2328.         RET
  2329. ;
  2330. L_91D9
  2331. ;out: a=0 или код направления (1=up, 2=up-right, 3=right, 4=down-right, 5=down, 6=down-left, 7=left, 8=up-left)
  2332.         LD      A,(L_9284);keyboard/joystick?
  2333.         OR      A
  2334.         JR      Z,L_9208;readactionkey
  2335.         PUSH    BC
  2336.         LD      BC,#EFFE;sinclair joystick
  2337.         IN      A,(C)
  2338.         CPL
  2339.         RRCA
  2340.         AND     #0F
  2341.         POP     BC
  2342.         RET     Z
  2343.         PUSH    HL
  2344.         PUSH    BC
  2345.         LD      C,A
  2346.         LD      B,#00
  2347.         LD      HL,L_91F8
  2348.         ADD     HL,BC
  2349.         LD      A,(HL)
  2350.         POP     BC
  2351.         POP     HL
  2352.         RET
  2353. ;
  2354. L_91F8 DB #00,#01,#05,#00,#03,#02,#04,#00
  2355. DB #07,#08,#06,#00,#00,#01,#05,#00
  2356. ;readactionkey
  2357. L_9208  CALL    L_9223;readkey
  2358.         PUSH    HL
  2359.         PUSH    BC
  2360.         LD      HL,L_91A3;actionkeycodes
  2361.         LD      B,#10
  2362. L_9212  CP      (HL)
  2363.         JR      Z,L_921A
  2364.         INC     HL
  2365.         DJNZ    L_9212
  2366.         LD      B,#12
  2367. L_921A  LD      A,#12
  2368.         SUB     B
  2369.         RRCA
  2370.         AND     #7F
  2371.         POP     BC
  2372.         POP     HL
  2373.         RET
  2374. ;readkey
  2375. L_9223  PUSH    BC
  2376.         PUSH    HL
  2377.         PUSH    DE
  2378.         LD      HL,L_925C
  2379.         LD      BC,#FEFE
  2380. L_922C  IN      A,(C)
  2381.         CPL
  2382.         AND     #1F
  2383.         JR      Z,L_9239
  2384. L_9233  RRCA
  2385.         JR      C,L_9247
  2386. L_9236  INC     HL
  2387.         JR      L_9233
  2388. ;
  2389. L_9239  INC     HL
  2390.         INC     HL
  2391.         INC     HL
  2392.         INC     HL
  2393.         INC     HL
  2394.         RLC     B
  2395.         JR      C,L_922C
  2396.         XOR     A
  2397.         POP     DE
  2398.         POP     HL
  2399.         POP     BC
  2400.         RET
  2401. ;
  2402. L_9247  LD      D,A
  2403.         LD      A,(HL)
  2404.         CP      #20
  2405.         JR      Z,L_9255
  2406.         CP      #E3
  2407.         JR      Z,L_9255
  2408.         POP     DE
  2409.         POP     HL
  2410.         POP     BC
  2411.         RET
  2412. ;
  2413. L_9255  LD      A,D
  2414.         AND     #7F
  2415.         JR      Z,L_9239
  2416.         JR      L_9236
  2417. ;коды кнопок
  2418. L_925C DB #E3,#5A,#58,#43,#56,#41,#53,#44
  2419. DB #46,#47,#51,#57,#45,#52,#54,#31
  2420. DB #32,#33,#34,#35,#30,#39,#38,#37
  2421. DB #36,#50,#4F,#49,#55,#59,#0D,#4C
  2422. DB #4B,#4A,#48,#20,#0E,#4D,#4E,#42
  2423. ;
  2424. L_9284 DB #00
  2425. ;
  2426. L_9285
  2427. ;keep hl!!!
  2428.        ;push hl
  2429.         ;GET_KEY ;rasmer
  2430.        ;pop hl
  2431.        ld a,(curkey)
  2432.         cp key_esc
  2433.        jp z,quiter
  2434.        cp key_redraw
  2435.        call z,redraw
  2436.  
  2437.         CALL    L_9223;readkey
  2438.         CP      "K"
  2439.         JR      Z,L_92A3
  2440.         CP      "J"
  2441.         JR      Z,L_929B
  2442.         CALL    L_91B9 ;out: a=0: break pressed
  2443.         OR      A
  2444.         JR      NZ,L_92A3
  2445.         CALL    L_91CB ;out: a=0: 0 pressed
  2446.         OR      A
  2447.         RET     Z
  2448. L_929B  LD      A,#01
  2449. L_929D  LD      (L_9284),A
  2450.         LD      A,#FF
  2451.         RET
  2452. ;
  2453. L_92A3  XOR     A
  2454.         JR      L_929D
  2455. ;
  2456. L_92A6
  2457. ;sound
  2458.         PUSH    HL
  2459. L_92A7  LD      A,#10
  2460.         CALL    L_92B8
  2461.         LD      A,#00
  2462.         CALL    L_92B8
  2463.         DEC     BC
  2464.         LD      A,C
  2465.         OR      B
  2466.         JR      NZ,L_92A7
  2467.         POP     HL
  2468.         RET
  2469. ;
  2470. L_92B8  OUT     (#FE),A
  2471.         LD      H,D
  2472.         LD      L,E
  2473. L_92BC  DEC     HL
  2474.         LD      A,H
  2475.         OR      L
  2476.         JR      NZ,L_92BC
  2477.         RET
  2478. ;
  2479. L_92C2 DW #0000
  2480. DW #0900
  2481. ;
  2482. DB #3C,#42,#46,#5A,#62,#42,#3C,#00
  2483. DB #47,#10,#30,#50,#10,#10,#10,#7C
  2484. DB #00,#47,#3C,#42,#02,#0C,#30,#40
  2485. DB #7E,#00,#47,#3C,#42,#02,#1C,#02
  2486. DB #42,#3C,#00,#47,#04,#0C,#14,#24
  2487. DB #7E,#04,#04,#00,#47,#7E,#40,#78
  2488. DB #04,#02,#44,#38,#00,#47,#1C,#20
  2489. DB #40,#7C,#42,#42,#3C,#00,#47,#7E
  2490. DB #42,#04,#08,#10,#10,#10,#00,#47
  2491. DB #3C,#42,#42,#3C,#42,#42,#3C,#00
  2492. DB #47,#3C,#42,#42,#3E,#02,#04,#38
  2493. DB #00,#47,#3F,#FF,#40,#2F,#10,#0F
  2494. DB #55,#31,#46,#FC,#F2,#09,#F5,#03
  2495. DB #FE,#6B,#15,#46,#08,#1C,#3E,#49
  2496. DB #08,#08,#08,#08,#47,#08,#04,#06
  2497. DB #FF,#06,#04,#08,#00,#47,#00,#00
  2498. DB #75,#45,#72,#45,#75,#00,#47,#00
  2499. DB #00,#77,#22,#22,#22,#72,#00,#47
  2500. DB #00,#00,#00,#0F,#08,#08,#08,#08
  2501. DB #47,#00,#00,#00,#F0,#10,#10,#10
  2502. DB #10,#47,#08,#08,#08,#0F,#00,#00
  2503. DB #00,#00,#47,#10,#10,#10,#F0,#00
  2504. DB #00,#00,#00,#47,#00,#00,#00,#FF
  2505. DB #00,#00,#00,#00,#47,#08,#08,#08
  2506. DB #08,#08,#08,#08,#08,#47,#10,#10
  2507. DB #10,#10,#10,#10,#10,#10,#47,#04
  2508. DB #08,#10,#10,#10,#08,#04,#00,#47
  2509. DB #20,#10,#08,#08,#08,#10,#20,#00
  2510. DB #47,#00,#00,#00,#00,#30,#30,#00
  2511. DB #00,#47,#44,#FF,#80,#BF,#B6,#BF
  2512. DB #80,#FF,#46,#A9,#F5,#15,#D5,#D2
  2513. DB #D4,#18,#F0,#46,#08,#08,#08,#08
  2514. DB #49,#3E,#1C,#08,#47,#10,#20,#60
  2515. DB #FF,#60,#20,#10,#00,#47,#7F,#7F
  2516. DB #7F,#7F,#79,#79,#7F,#7F,#44,#7F
  2517. DB #7F,#7F,#7F,#4F,#4F,#7F,#7F,#44
  2518. DB #00,#00,#00,#00,#00,#00,#00,#00
  2519. DB #40,#18,#18,#18,#00,#18,#18,#18
  2520. DB #00,#47,#00,#7F,#7F,#60,#60,#60
  2521. DB #60,#7F,#43,#00,#F8,#F8,#06,#06
  2522. DB #06,#06,#F8,#43,#00,#1F,#1F,#60
  2523. DB #60,#60,#60,#60,#43,#00,#F8,#F8
  2524. DB #06,#06,#06,#06,#06,#43,#00,#60
  2525. DB #60,#78,#78,#66,#66,#61,#43,#00
  2526. DB #06,#06,#1E,#1E,#66,#66,#86,#43
  2527. DB #00,#7F,#7F,#60,#60,#60,#60,#7F
  2528. DB #43,#00,#FE,#FE,#00,#00,#00,#00
  2529. DB #F8,#43,#00,#7F,#7F,#60,#60,#60
  2530. DB #60,#7F,#43,#00,#F8,#F8,#06,#06
  2531. DB #06,#06,#F8,#43,#00,#07,#07,#18
  2532. DB #18,#60,#60,#7F,#43,#00,#E0,#E0
  2533. DB #18,#18,#06,#06,#FE,#43,#00,#60
  2534. DB #60,#78,#78,#66,#66,#61,#43,#00
  2535. DB #06,#06,#06,#06,#06,#06,#86,#43
  2536. DB #3C,#42,#46,#5A,#62,#42,#3C,#00
  2537. DB #47,#3C,#42,#02,#0C,#10,#00,#10
  2538. DB #00,#47,#7F,#60,#60,#60,#60,#7F
  2539. DB #7F,#00,#43,#F8,#06,#06,#06,#06
  2540. DB #F8,#F8,#00,#43,#60,#60,#60,#60
  2541. DB #60,#1F,#1F,#00,#43,#06,#06,#06
  2542. DB #06,#06,#F8,#F8,#00,#43,#61,#60
  2543. DB #60,#60,#60,#60,#60,#00,#43,#86
  2544. DB #06,#06,#06,#06,#06,#06,#00,#43
  2545. DB #7F,#60,#60,#60,#60,#7F,#7F,#00
  2546. DB #43,#F8,#00,#00,#00,#00,#FE,#FE
  2547. DB #00,#43,#7F,#60,#60,#60,#60,#60
  2548. DB #60,#00,#43,#F8,#60,#60,#18,#18
  2549. DB #06,#06,#00,#43,#7F,#60,#60,#60
  2550. DB #60,#60,#60,#00,#43,#FE,#06,#06
  2551. DB #06,#06,#06,#06,#00,#43,#61,#60
  2552. DB #60,#60,#60,#60,#60,#00,#43,#86
  2553. DB #66,#66,#1E,#1E,#06,#06,#00,#43
  2554. DB #00,#00,#00,#7C,#00,#00,#00,#00
  2555. DB #47,#18,#24,#42,#7E,#42,#42,#42
  2556. DB #00,#47,#7C,#42,#42,#7C,#42,#42
  2557. DB #7C,#00,#47,#1C,#22,#40,#40,#40
  2558. DB #22,#1C,#00,#47,#78,#44,#42,#42
  2559. DB #42,#44,#78,#00,#47,#7E,#40,#40
  2560. DB #78,#40,#40,#7E,#00,#47,#7E,#40
  2561. DB #40,#78,#40,#40,#40,#00,#47,#1C
  2562. DB #22,#40,#4E,#42,#22,#1C,#00,#47
  2563. DB #42,#42,#42,#7E,#42,#42,#42,#00
  2564. DB #47,#1C,#08,#08,#08,#08,#08,#1C
  2565. DB #00,#47,#0E,#04,#04,#04,#04,#44
  2566. DB #38,#00,#47,#42,#44,#48,#70,#48
  2567. DB #44,#42,#00,#47,#40,#40,#40,#40
  2568. DB #40,#40,#7E,#00,#47,#42,#66,#5A
  2569. DB #5A,#42,#42,#42,#00,#47,#42,#62
  2570. DB #52,#4A,#46,#42,#42,#00,#47,#3C
  2571. DB #42,#42,#42,#42,#42,#3C,#00,#47
  2572. DB #7C,#42,#42,#7C,#40,#40,#40,#00
  2573. DB #47,#3C,#42,#42,#42,#5A,#64,#3A
  2574. DB #00,#47,#7C,#42,#42,#7C,#48,#44
  2575. DB #42,#00,#47,#3C,#42,#40,#3C,#02
  2576. DB #42,#3C,#00,#47,#3E,#08,#08,#08
  2577. DB #08,#08,#08,#00,#47,#42,#42,#42
  2578. DB #42,#42,#42,#3C,#00,#47,#41,#41
  2579. DB #41,#41,#22,#14,#08,#00,#47,#42
  2580. DB #42,#42,#5A,#5A,#66,#42,#00,#47
  2581. DB #42,#42,#24,#18,#24,#42,#42,#00
  2582. DB #47,#22,#22,#22,#1C,#08,#08,#08
  2583. DB #00,#47,#7F,#02,#04,#08,#10,#20
  2584. DB #7F,#00,#47,#1C,#22,#49,#4F,#49
  2585. DB #22,#1C,#00,#47,#04,#08,#10,#10
  2586. DB #10,#08,#04,#00,#47,#20,#10,#08
  2587. DB #08,#08,#10,#20,#00,#47,#00,#00
  2588. DB #00,#00,#30,#30,#00,#00,#47,#3C
  2589. DB #42,#02,#0C,#10,#00,#10,#00,#47
  2590. DB #00,#00,#01,#01,#07,#1F,#3F,#7F
  2591. DB #45,#50,#E0,#50,#00,#C0,#F0,#F8
  2592. DB #FC,#45,#00,#00,#01,#01,#07,#1F
  2593. DB #3F,#7F,#45,#20,#E0,#20,#00,#C0
  2594. DB #F0,#F8,#FC,#45,#01,#00,#01,#01
  2595. DB #07,#1F,#3F,#7F,#45,#40,#80,#40
  2596. DB #00,#C0,#F0,#F8,#FC,#45,#00,#01
  2597. DB #00,#01,#07,#1F,#3F,#7F,#45,#80
  2598. DB #40,#80,#00,#C0,#F0,#F8,#FC,#45
  2599. DB #00,#00,#01,#03,#07,#1F,#3F,#7F
  2600. DB #45,#00,#00,#00,#80,#C0,#F0,#F8
  2601. DB #FC,#45,#00,#00,#00,#01,#02,#07
  2602. DB #1F,#3F,#45,#00,#00,#00,#00,#80
  2603. DB #C0,#F0,#F8,#45,#00,#00,#01,#03
  2604. DB #07,#1F,#3F,#7F,#45,#00,#00,#00
  2605. DB #80,#C0,#F0,#F8,#FC,#45,#00,#00
  2606. DB #00,#00,#01,#03,#07,#1F,#45,#00
  2607. DB #00,#00,#00,#00,#80,#C0,#F0,#45
  2608. DB #FF,#FF,#FF,#FF,#7F,#3F,#1F,#07
  2609. DB #45,#FE,#FE,#FE,#FE,#FC,#F8,#F0
  2610. DB #C0,#45,#FF,#FF,#FF,#FF,#7F,#3F
  2611. DB #1F,#07,#45,#FE,#FE,#FE,#FE,#FC
  2612. DB #F8,#F0,#C0,#45,#FF,#FF,#FF,#FF
  2613. DB #7F,#3F,#1F,#07,#45,#FE,#FE,#FE
  2614. DB #FE,#FC,#F8,#F0,#C0,#45,#FF,#FF
  2615. DB #FF,#FF,#7F,#3F,#1F,#07,#45,#FE
  2616. DB #FE,#FE,#FE,#FC,#F8,#F0,#C0,#45
  2617. DB #FF,#FF,#FF,#FF,#7F,#3F,#1F,#07
  2618. DB #45,#FE,#FE,#FE,#FE,#FC,#F8,#F0
  2619. DB #C0,#45,#7F,#7F,#7F,#7F,#3F,#1F
  2620. DB #07,#00,#45,#FC,#FC,#FC,#FC,#F8
  2621. DB #F0,#C0,#00,#45,#FF,#FF,#FF,#FF
  2622. DB #7F,#3F,#1F,#07,#45,#FE,#FE,#FE
  2623. DB #FE,#FC,#F8,#F0,#C0,#45,#3F,#3F
  2624. DB #3F,#3F,#1F,#07,#00,#00,#45,#F8
  2625. DB #F8,#F8,#F8,#F0,#C0,#00,#00,#45
  2626. DB #FD,#05,#FD,#00,#DF,#50,#DF,#00
  2627. DB #42,#DD,#05,#FD,#00,#DF,#50,#DB
  2628. DB #00,#42,#DC,#05,#FD,#00,#DF,#50
  2629. DB #5B,#00,#42,#DC,#05,#7D,#00,#DE
  2630. DB #50,#5B,#00,#42,#D8,#05,#5D,#00
  2631. DB #9E,#50,#4B,#00,#42,#50,#05,#50
  2632. DB #00,#8A,#50,#08,#00,#42,#10,#05
  2633. DB #50,#00,#02,#50,#08,#00,#42,#00
  2634. DB #01,#40,#00,#02,#40,#08,#00,#42
  2635. DB #FD,#FD,#FD,#00,#DF,#DF,#DF,#00
  2636. DB #43,#FD,#FD,#FD,#00,#DF,#DF,#DF
  2637. DB #00,#42,#0F,#3F,#0F,#1E,#1F,#0E
  2638. DB #07,#0E,#47,#80,#E0,#80,#C0,#C0
  2639. DB #80,#0E,#10,#47,#07,#07,#1F,#07
  2640. DB #0D,#0F,#04,#03,#47,#C0,#C0,#F0
  2641. DB #C0,#60,#E0,#40,#80,#47,#07,#07
  2642. DB #1F,#07,#0D,#0F,#04,#03,#47,#C0
  2643. DB #C0,#F0,#C0,#60,#E0,#40,#80,#47
  2644. DB #18,#3C,#18,#3C,#5A,#3C,#66,#00
  2645. DB #44,#38,#54,#7C,#6C,#38,#10,#0C
  2646. DB #00,#42,#42,#42,#42,#7E,#42,#42
  2647. DB #42,#00,#47,#78,#44,#42,#42,#42
  2648. DB #44,#78,#00,#47,#7E,#40,#40,#78
  2649. DB #40,#40,#40,#00,#47,#18,#24,#42
  2650. DB #7E,#42,#42,#42,#00,#47,#42,#66
  2651. DB #5A,#5A,#42,#42,#42,#00,#47,#1C
  2652. DB #08,#08,#08,#08,#08,#1C,#00,#47
  2653. DB #7F,#49,#0A,#0B,#0A,#0A,#0B,#1C
  2654. DB #47,#7F,#48,#28,#28,#A8,#68,#28
  2655. DB #1C,#47,#3E,#7F,#79,#78,#70,#70
  2656. DB #38,#3C,#44,#38,#7C,#FE,#FE,#FE
  2657. DB #7C,#38,#00,#45,#1B,#3B,#6B,#4B
  2658. DB #0F,#0E,#0C,#1C,#44,#B0,#B8,#AC
  2659. DB #A4,#E0,#E0,#60,#70,#44,#0B,#1B
  2660. DB #3B,#33,#1B,#0F,#0E,#1C,#44,#A0
  2661. DB #B0,#B8,#98,#B0,#E0,#E0,#70,#44
  2662. DB #03,#03,#0F,#03,#06,#07,#02,#01
  2663. DB #47,#E0,#E0,#F8,#E0,#B0,#F0,#20
  2664. DB #C0,#47,#07,#07,#1F,#07,#0D,#0F
  2665. DB #04,#03,#47,#C0,#C0,#F0,#C0,#60
  2666. DB #E0,#40,#80,#47,#03,#03,#0F,#03
  2667. DB #06,#07,#02,#01,#47,#E0,#E0,#F8
  2668. DB #E0,#F0,#F0,#E0,#C0,#47,#03,#03
  2669. DB #0F,#03,#06,#07,#02,#01,#47,#E0
  2670. DB #E0,#F8,#E0,#F0,#F0,#E0,#C0,#47
  2671. DB #07,#07,#1F,#07,#0F,#0F,#07,#03
  2672. DB #47,#C0,#C0,#F0,#C0,#60,#E0,#40
  2673. DB #80,#47,#07,#07,#1F,#07,#0F,#0F
  2674. DB #07,#03,#47,#C0,#C0,#F0,#C0,#60
  2675. DB #E0,#40,#80,#47,#07,#07,#1F,#00
  2676. DB #08,#08,#00,#03,#47,#C0,#C0,#F0
  2677. DB #00,#20,#20,#00,#80,#47,#03,#03
  2678. DB #0F,#00,#04,#04,#00,#01,#47,#E0
  2679. DB #E0,#F8,#00,#10,#10,#00,#C0,#47
  2680. DB #0D,#1D,#35,#25,#07,#06,#0E,#00
  2681. DB #44,#D0,#D8,#C8,#D0,#F0,#70,#30
  2682. DB #38,#44,#0B,#1B,#13,#0B,#0F,#0E
  2683. DB #0C,#1C,#44,#B0,#B8,#AC,#A4,#E0
  2684. DB #60,#70,#00,#44,#07,#0D,#1B,#03
  2685. DB #03,#01,#02,#06,#44,#F0,#E8,#E8
  2686. DB #E0,#E0,#E0,#E0,#E0,#44,#07,#0B
  2687. DB #0B,#03,#01,#01,#03,#07,#44,#B0
  2688. DB #D8,#EC,#E0,#E0,#D0,#90,#B0,#44
  2689. DB #0F,#17,#17,#07,#07,#07,#07,#07
  2690. DB #44,#E0,#B0,#D8,#C0,#C0,#80,#40
  2691. DB #60,#44,#0D,#1B,#37,#07,#07,#0B
  2692. DB #09,#0D,#44,#E0,#D0,#D0,#C0,#80
  2693. DB #80,#C0,#E0,#44,#0D,#1E,#1F,#0F
  2694. DB #0F,#0E,#0C,#1C,#44,#60,#D8,#D8
  2695. DB #D8,#E0,#60,#70,#00,#44,#06,#1B
  2696. DB #1B,#1B,#07,#06,#0E,#00,#44,#B0
  2697. DB #78,#F8,#F0,#F0,#70,#30,#38,#44
  2698. DB #00,#00,#07,#1F,#3F,#3F,#7F,#7F
  2699. DB #42,#00,#00,#C0,#F0,#F8,#F8,#FC
  2700. DB #FC,#42,#00,#03,#0F,#1F,#1F,#3F
  2701. DB #3F,#3F,#42,#00,#80,#E0,#F0,#F0
  2702. DB #F8,#F8,#F8,#42,#00,#00,#07,#1F
  2703. DB #3F,#3F,#7F,#7F,#43,#00,#00,#C0
  2704. DB #F0,#F8,#F8,#FC,#FC,#43,#00,#03
  2705. DB #0F,#1F,#1F,#3F,#3F,#3F,#43,#00
  2706. DB #80,#E0,#F0,#F0,#F8,#F8,#F8,#43
  2707. DB #00,#00,#07,#1F,#3F,#3F,#7F,#7F
  2708. DB #43,#00,#00,#C0,#F0,#F8,#F8,#FC
  2709. DB #FC,#43,#00,#03,#0F,#1F,#1F,#3F
  2710. DB #3F,#3F,#43,#00,#80,#E0,#F0,#F0
  2711. DB #F8,#F8,#F8,#43,#00,#00,#07,#1F
  2712. DB #3F,#3F,#7F,#7F,#43,#00,#00,#C0
  2713. DB #F0,#F8,#F8,#FC,#FC,#43,#00,#03
  2714. DB #0F,#1F,#1F,#3F,#3F,#3F,#43,#00
  2715. DB #80,#E0,#F0,#F0,#F8,#F8,#F8,#43
  2716. DB #7F,#7F,#3F,#3F,#1F,#07,#01,#00
  2717. DB #42,#FC,#FC,#F8,#F8,#F0,#C0,#10
  2718. DB #E0,#42,#3F,#3F,#3F,#1F,#1F,#07
  2719. DB #01,#00,#42,#F8,#F8,#F8,#F0,#F0
  2720. DB #C0,#10,#E0,#42,#7F,#7F,#3F,#3F
  2721. DB #1F,#07,#01,#00,#43,#FC,#FC,#F8
  2722. DB #F8,#F0,#C0,#10,#E0,#43,#3F,#3F
  2723. DB #3F,#1F,#1F,#07,#01,#00,#43,#F8
  2724. DB #F8,#F8,#F0,#F0,#C0,#10,#E0,#43
  2725. DB #7F,#7F,#3F,#3F,#1F,#07,#01,#00
  2726. DB #43,#FC,#FC,#F8,#F8,#F0,#C0,#10
  2727. DB #E0,#43,#3F,#3F,#3F,#1F,#1F,#07
  2728. DB #01,#00,#43,#F8,#F8,#F8,#F0,#F0
  2729. DB #C0,#10,#E0,#43,#7F,#7F,#3F,#3F
  2730. DB #1F,#07,#01,#00,#43,#FC,#FC,#F8
  2731. DB #F8,#F0,#C0,#10,#E0,#43,#3F,#3F
  2732. DB #3F,#1F,#1F,#07,#01,#00,#43,#F8
  2733. DB #F8,#F8,#F0,#F0,#C0,#10,#E0,#43
  2734. DB #EF,#7F,#FF,#FB,#FE,#ED,#FA,#F5
  2735. DB #47,#FD,#FF,#FF,#DE,#7F,#B7,#5F
  2736. DB #AF,#47,#7D,#EF,#BB,#FF,#DD,#77
  2737. DB #FE,#DB,#47,#EF,#7D,#D7,#7D,#EF
  2738. DB #BB,#FE,#EF,#47,#55,#EF,#BA,#6D
  2739. DB #D5,#77,#AA,#DB,#47,#AB,#3D,#D7
  2740. DB #5D,#E6,#B9,#D6,#6B,#47,#55,#A5
  2741. DB #90,#4D,#51,#55,#A8,#8A,#47,#AB
  2742. DB #28,#45,#09,#A2,#28,#56,#69,#47
  2743. DB #44,#A4,#80,#45,#41,#14,#A8,#82
  2744. DB #47,#AA,#20,#45,#01,#00,#28,#42
  2745. DB #41,#47,#44,#A0,#00,#45,#41,#10
  2746. DB #A8,#82,#47,#A2,#20,#45,#01,#00
  2747. DB #28,#42,#00,#47,#40,#A0,#00,#41
  2748. DB #00,#00,#88,#82,#47,#20,#00,#00
  2749. DB #01,#00,#20,#40,#00,#47,#00,#80
  2750. DB #00,#41,#00,#00,#08,#02,#47,#20
  2751. DB #00,#00,#01,#00,#20,#00,#00,#47
  2752. DB #F5,#FA,#ED,#FE,#7B,#FF,#FF,#BF
  2753. DB #47,#AF,#5F,#B7,#7F,#DF,#FF,#FE
  2754. DB #F7,#47,#7E,#D7,#FD,#B7,#FD,#EF
  2755. DB #BB,#EE,#47,#BF,#FA,#DF,#F5,#BF
  2756. DB #ED,#BF,#FB,#47,#2A,#D7,#6D,#92
  2757. DB #BD,#4A,#B9,#6E,#47,#B5,#6A,#5B
  2758. DB #B5,#9A,#ED,#B7,#EA,#47,#08,#D5
  2759. DB #45,#12,#99,#0A,#B9,#66,#47,#95
  2760. DB #48,#53,#35,#8A,#A9,#B3,#62,#47
  2761. DB #08,#C5,#44,#10,#19,#02,#A9,#46
  2762. DB #47,#00,#08,#11,#14,#02,#29,#01
  2763. DB #22,#47,#08,#80,#44,#10,#09,#02
  2764. DB #29,#04,#47,#00,#08,#10,#04,#00
  2765. DB #09,#01,#22,#47,#08,#80,#04,#00
  2766. DB #09,#02,#20,#04,#47,#00,#08,#10
  2767. DB #04,#00,#09,#00,#22,#47,#00,#80
  2768. DB #04,#00,#01,#00,#20,#04,#47,#00
  2769. DB #08,#00,#00,#00,#09,#00,#20,#47
  2770. ;
  2771. L_9BC6 DW #0090
  2772. DW #005A
  2773. ;
  2774. DB #3C,#42,#40,#3C,#02,#42,#3C,#00
  2775. DB #47,#3C,#42,#40,#40,#40,#42,#3C
  2776. DB #00,#47,#3C,#42,#42,#42,#42,#42
  2777. DB #3C,#00,#47,#7C,#42,#42,#7C,#48
  2778. DB #44,#42,#00,#47,#7E,#40,#40,#78
  2779. DB #40,#40,#7E,#00,#47,#7C,#42,#42
  2780. DB #7C,#42,#42,#7C,#00,#47,#3C,#42
  2781. DB #42,#42,#42,#42,#3C,#00,#47,#42
  2782. DB #62,#52,#4A,#46,#42,#42,#00,#47
  2783. DB #42,#42,#42,#42,#42,#42,#3C,#00
  2784. DB #47,#3C,#42,#40,#3C,#02,#42,#3C
  2785. DB #00,#47,#00,#00,#09,#00
  2786. ;
  2787. L_9C28 DW #0120
  2788. DW #0240
  2789. ;
  2790. DB #00,#00,#00,#00,#00,#00,#00,#00
  2791. DB #40,#18,#18,#18,#00,#18,#18,#18
  2792. DB #00,#47,#00,#00,#07,#1F,#3F,#3F
  2793. DB #7F,#7F,#42,#00,#00,#C0,#F0,#F8
  2794. DB #F8,#FC,#FC,#42,#00,#00,#07,#1F
  2795. DB #3F,#3F,#7F,#40,#42,#00,#00,#C0
  2796. DB #F0,#F8,#B8,#3C,#3C,#42,#00,#00
  2797. DB #07,#1F,#3F,#3F,#00,#40,#42,#00
  2798. DB #00,#C0,#D0,#98,#18,#1C,#1C,#42
  2799. DB #00,#00,#07,#1F,#3E,#00,#00,#00
  2800. DB #42,#00,#00,#80,#00,#08,#08,#0C
  2801. DB #0C,#42,#00,#00,#00,#07,#1E,#3C
  2802. DB #00,#00,#42,#00,#00,#00,#00,#00
  2803. DB #08,#08,#0C,#42,#00,#00,#00,#00
  2804. DB #00,#00,#00,#00,#40,#00,#00,#00
  2805. DB #00,#00,#00,#00,#00,#40,#00,#00
  2806. DB #00,#00,#00,#00,#00,#00,#40,#00
  2807. DB #00,#00,#00,#00,#00,#00,#00,#40
  2808. DB #3E,#08,#08,#08,#08,#08,#08,#00
  2809. DB #47,#1C,#22,#40,#4E,#42,#22,#1C
  2810. DB #00,#47,#7F,#78,#3C,#3C,#1D,#07
  2811. DB #01,#00,#42,#7C,#7C,#78,#38,#F0
  2812. DB #C0,#10,#E0,#42,#60,#78,#38,#38
  2813. DB #19,#01,#01,#00,#42,#3C,#3C,#00
  2814. DB #00,#F0,#C0,#10,#E0,#42,#60,#70
  2815. DB #30,#30,#10,#03,#01,#00,#42,#1C
  2816. DB #1C,#00,#00,#00,#C0,#10,#E0,#42
  2817. DB #40,#60,#20,#20,#00,#00,#01,#00
  2818. DB #42,#0C,#0C,#08,#00,#00,#00,#10
  2819. DB #E0,#42,#00,#00,#40,#20,#20,#03
  2820. DB #01,#00,#42,#0C,#0C,#0C,#00,#00
  2821. DB #C0,#10,#E0,#42,#07,#1E,#3C,#00
  2822. DB #00,#60,#79,#00,#42,#00,#00,#08
  2823. DB #08,#0C,#0C,#00,#F0,#42,#00,#00
  2824. DB #00,#03,#0F,#15,#6C,#57,#42,#00
  2825. DB #00,#00,#80,#80,#1C,#1E,#E0,#42
  2826. DB #00,#00,#7B,#6B,#6B,#6B,#7B,#00
  2827. DB #44,#00,#00,#5E,#4C,#4C,#4C,#CC
  2828. DB #00,#44,#00,#00,#00,#00,#00,#00
  2829. DB #01,#03,#45,#00,#00,#00,#00,#00
  2830. DB #00,#C0,#18,#45,#00,#00,#00,#00
  2831. DB #00,#08,#18,#18,#45,#00,#00,#00
  2832. DB #00,#00,#7C,#B4,#DC,#45,#00,#00
  2833. DB #00,#00,#00,#00,#40,#60,#45,#00
  2834. DB #00,#00,#00,#7C,#B4,#DC,#B4,#45
  2835. DB #00,#00,#00,#01,#02,#07,#04,#06
  2836. DB #45,#00,#00,#00,#80,#C0,#E0,#A0
  2837. DB #C0,#45,#00,#00,#01,#02,#07,#04
  2838. DB #04,#03,#46,#00,#00,#80,#C0,#E0
  2839. DB #A0,#C0,#80,#46,#00,#00,#00,#07
  2840. DB #0D,#0F,#06,#04,#46,#00,#00,#00
  2841. DB #C0,#60,#E0,#C0,#40,#46,#00,#00
  2842. DB #07,#0D,#0F,#06,#04,#03,#46,#00
  2843. DB #00,#C0,#60,#E0,#C0,#40,#80,#46
  2844. DB #00,#00,#F0,#E0,#60,#3F,#3F,#1E
  2845. DB #45,#00,#00,#1C,#3E,#22,#7F,#6B
  2846. DB #3E,#45,#06,#0F,#0B,#0B,#0B,#0B
  2847. DB #1E,#78,#45,#2C,#5E,#7A,#6C,#38
  2848. DB #80,#F0,#3C,#45,#18,#1B,#0B,#0B
  2849. DB #0B,#0B,#1E,#78,#45,#B4,#7C,#BE
  2850. DB #BC,#A0,#A0,#F0,#3C,#45,#30,#1B
  2851. DB #0B,#0B,#0B,#0E,#1C,#38,#45,#7C
  2852. DB #BE,#BC,#A0,#A0,#E0,#70,#38,#45
  2853. DB #03,#FB,#7B,#0B,#0B,#0E,#1C,#38
  2854. DB #45,#80,#BE,#BC,#A0,#A0,#E0,#70
  2855. DB #38,#45,#1B,#3B,#6B,#4B,#0F,#0E
  2856. DB #0C,#1C,#45,#B0,#B8,#AC,#A4,#E0
  2857. DB #E0,#60,#70,#45,#FB,#FB,#0B,#0B
  2858. DB #0F,#0E,#0C,#1C,#45,#BE,#BE,#A0
  2859. DB #A0,#E0,#E0,#60,#70,#45,#1B,#3B
  2860. DB #6B,#4B,#0F,#0E,#0C,#1C,#45,#B0
  2861. DB #B8,#AC,#A4,#E0,#E0,#60,#70,#45
  2862. DB #00,#00,#09,#00
  2863. ;
  2864. L_9E70 DW #005A
  2865. DW #0012
  2866. ;
  2867. DB #1E,#1D,#1E,#1F,#1C,#1F,#10,#1F
  2868. DB #42,#D0,#50,#30,#F0,#D0,#30,#10
  2869. DB #F0,#42
  2870. ;
  2871. L_9E86 DW #00EA
  2872. DW #0012
  2873. ;
  2874. DB #1F,#1E,#1F,#1F,#1B,#17,#17,#18
  2875. DB #42,#30,#D0,#30,#F0,#B0,#D0,#D0
  2876. DB #30,#42
  2877. ;
  2878. L_9E9C DW #005A
  2879. DW #0012
  2880. ;
  2881. DB #82,#22,#12,#12,#23,#00,#7F,#47
  2882. DB #47,#00,#00,#10,#10,#90,#00,#F8
  2883. DB #8F,#47
  2884. ;
  2885. L_9EB2 DW #00EA
  2886. DW #0012
  2887. ;
  2888. DB #6F,#6B,#79,#7A,#7B,#7F,#30,#1F
  2889. DB #47,#D9,#59,#79,#7E,#78,#F8,#30
  2890. DB #E0,#47
  2891. ;
  2892. L_9EC8 DW #005A
  2893. DW #0012
  2894. ;
  2895. DB #00,#00,#01,#07,#1F,#10,#10,#14
  2896. DB #44,#00,#00,#FC,#FE,#FE,#04,#14
  2897. DB #14,#44
  2898. ;
  2899. L_9EDE DW #00EA
  2900. DW #0012
  2901. ;
  2902. DB #16,#14,#78,#8F,#60,#90,#90,#60
  2903. DB #44,#24,#E4,#E7,#F8,#06,#09,#09
  2904. DB #06,#44
  2905. ;
  2906. L_9EF4 DW #005A
  2907. DW #0012
  2908. ;
  2909. DB #00,#00,#00,#00,#00,#01,#1E,#1D
  2910. DB #47,#08,#14,#28,#50,#A0,#40,#80
  2911. DB #80,#47
  2912. ;
  2913. L_9F0A DW #00EA
  2914. DW #0012
  2915. ;
  2916. DB #1B,#17,#1F,#1F,#1F,#0F,#06,#0F
  2917. DB #47,#80,#80,#80,#80,#A4,#24,#24
  2918. DB #18,#47
  2919. ;
  2920. L_9F20 DW #005A
  2921. DW #0012
  2922. ;
  2923. DB #20,#40,#28,#28,#14,#08,#30,#00
  2924. DB #47,#00,#00,#00,#00,#00,#00,#00
  2925. DB #0E,#43
  2926. ;
  2927. L_9F36 DW #00EA
  2928. DW #0012
  2929. ;
  2930. DB #FC,#FC,#78,#7F,#7E,#3C,#00,#00
  2931. DB #43,#39,#60,#C0,#80,#00,#00,#00
  2932. DB #00,#43
  2933. ;
  2934. L_9F4C DW #005A
  2935. DW #0012
  2936. ;
  2937. DB #0F,#7E,#1E,#0F,#0F,#1F,#3D,#78
  2938. DB #46,#1E,#21,#D1,#0E,#80,#E0,#78
  2939. DB #3C,#46
  2940. ;
  2941. L_9F62 DW #00EA
  2942. DW #0012
  2943. ;
  2944. DB #75,#75,#F8,#FD,#F5,#F8,#7D,#3F
  2945. DB #46,#5C,#7C,#3E,#5E,#5E,#3E,#7C
  2946. DB #F8,#46
  2947. ;
  2948. L_9F78 DW #005A
  2949. DW #0012
  2950. ;
  2951. DB #00,#00,#00,#0F,#E5,#FF,#FF,#E1
  2952. DB #47,#00,#00,#00,#80,#02,#FE,#FC
  2953. DB #80,#47
  2954. ;
  2955. L_9F8E DW #00EA
  2956. DW #0012
  2957. ;
  2958. DB #03,#07,#08,#08,#10,#10,#20,#20
  2959. DB #42,#C0,#E0,#90,#90,#88,#48,#44
  2960. DB #44,#42
  2961. ;
  2962. L_9FA4 DW #005A
  2963. DW #0012
  2964. ;
  2965. DB #0E,#08,#08,#04,#07,#04,#1F,#24
  2966. DB #47,#00,#00,#00,#78,#F0,#30,#08
  2967. DB #88,#47
  2968. ;
  2969. L_9FBA DW #00EA
  2970. DW #0012
  2971. ;
  2972. DB #44,#84,#84,#80,#80,#40,#20,#1F
  2973. DB #47,#48,#24,#24,#24,#26,#49,#89
  2974. DB #06,#47