Rev 821 | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 507 | savelij | 1 | |
| 1186 | savelij | 2 | ; LAST UPDATE: 14.02.2025 savelij |
| 585 | savelij | 3 | |
| 1186 | savelij | 4 | ; ࠭ ᪠ ࠭ |
| 5 | SAVE2X2 LD HL,SYSFLAGS |
||
| 6 | BIT SYSFLAGS.B_VIDEO_MODE,(HL) |
||
| 585 | savelij | 7 | RET NZ |
| 8 | LD HL,(ADR_REST) |
||
| 507 | savelij | 9 | LD DE,MOUSE_BUFF |
| 10 | LD B,8 |
||
| 1186 | savelij | 11 | .L1 LD A,(HL) |
| 507 | savelij | 12 | LD (DE),A |
| 13 | INC DE |
||
| 14 | INC L |
||
| 15 | LD A,(HL) |
||
| 16 | LD (DE),A |
||
| 17 | INC DE |
||
| 18 | DEC L |
||
| 19 | CALL INC_H |
||
| 1186 | savelij | 20 | DJNZ .L1 |
| 507 | savelij | 21 | RET |
| 22 | |||
| 1186 | savelij | 23 | ; ⠭ ᪠ ࠭ |
| 24 | REST2X2 LD HL,SYSFLAGS |
||
| 25 | BIT SYSFLAGS.B_VIDEO_MODE,(HL) |
||
| 585 | savelij | 26 | RET NZ |
| 27 | LD HL,(ADR_REST) |
||
| 507 | savelij | 28 | LD DE,MOUSE_BUFF |
| 29 | LD B,8 |
||
| 1186 | savelij | 30 | .L1 LD A,(DE) |
| 507 | savelij | 31 | LD (HL),A |
| 32 | INC DE |
||
| 33 | INC L |
||
| 34 | LD A,(DE) |
||
| 35 | LD (HL),A |
||
| 36 | INC DE |
||
| 37 | DEC L |
||
| 38 | CALL INC_H |
||
| 1186 | savelij | 39 | DJNZ .L1 |
| 507 | savelij | 40 | RET |
| 41 | |||
| 1186 | savelij | 42 | DETECTMOUSE LD HL,SYSFLAGS |
| 43 | LD BC,0xFBDF |
||
| 44 | LD E,0x20 |
||
| 507 | savelij | 45 | EI |
| 46 | HALT |
||
| 1186 | savelij | 47 | IN D,(C) ; 1.⠡쭮 X |
| 48 | .L1 IN A,(C) |
||
| 507 | savelij | 49 | CP D |
| 1186 | savelij | 50 | JR NZ,.L2 |
| 507 | savelij | 51 | DEC E |
| 1186 | savelij | 52 | JR NZ,.L1 ; 2.keys<>X |
| 507 | savelij | 53 | DEC B |
| 54 | IN A,(C) |
||
| 55 | CP D |
||
| 1186 | savelij | 56 | JR Z,.L2 ; 3.keys&7=7(LION17) |
| 507 | savelij | 57 | CPL |
| 58 | AND 7 |
||
| 1186 | savelij | 59 | SET SYSFLAGS.B_MOUSE_PRESENT,(HL) |
| 507 | savelij | 60 | RET Z |
| 1186 | savelij | 61 | .L2 RES SYSFLAGS.B_MOUSE_PRESENT,(HL) |
| 507 | savelij | 62 | SCF |
| 63 | RET |
||
| 64 | |||
| 1186 | savelij | 65 | MOUSE LD HL,SYSFLAGS |
| 66 | BIT SYSFLAGS.B_VIDEO_MODE,(HL) |
||
| 585 | savelij | 67 | RET NZ |
| 68 | LD HL,(ARXY) |
||
| 1186 | savelij | 69 | LD DE,(MOUPOS) ; D=Y , E=X न |
| 70 | LD BC,MOUSE_X |
||
| 71 | IN A,(C) ; ⥭ न X |
||
| 507 | savelij | 72 | LD (MOUPOS),A |
| 73 | SUB E |
||
| 74 | JR Z,MOUNX |
||
| 75 | JP P,MOUPX |
||
| 76 | ADD A,L |
||
| 1186 | savelij | 77 | JR C,.L1 |
| 507 | savelij | 78 | XOR A |
| 1186 | savelij | 79 | .L1 LD L,A |
| 507 | savelij | 80 | JR MOUNX |
| 81 | |||
| 82 | MOUPX ADD A,L |
||
| 1186 | savelij | 83 | JR C,.L1 |
| 84 | CP 0xF9 |
||
| 85 | JR C,.L2 |
||
| 86 | .L1 LD A,0xF9 |
||
| 87 | .L2 LD L,A |
||
| 88 | MOUNX LD BC,MOUSE_Y |
||
| 89 | IN A,(C) ; ⥭ न Y |
||
| 507 | savelij | 90 | LD (MOUPOS+1),A |
| 91 | SUB D |
||
| 92 | JR Z,MOUNY |
||
| 93 | NEG |
||
| 94 | JP P,MOUPY |
||
| 95 | ADD A,H |
||
| 1186 | savelij | 96 | JR C,.L1 |
| 507 | savelij | 97 | XOR A |
| 1186 | savelij | 98 | .L1 LD H,A |
| 507 | savelij | 99 | JR MOUNY |
| 100 | |||
| 101 | MOUPY ADD A,H |
||
| 1186 | savelij | 102 | JR C,.L1 |
| 103 | CP 0xB8 |
||
| 104 | JR C,.L2 |
||
| 105 | .L1 LD A,0xB8 |
||
| 106 | .L2 LD H,A |
||
| 507 | savelij | 107 | MOUNY LD (ARXY),HL |
| 108 | RET |
||
| 109 | |||
| 1186 | savelij | 110 | MOUOPT LD H,(IX+_Y_COORD) |
| 111 | LD L,(IX+_X_COORD) |
||
| 507 | savelij | 112 | LD DE,(ARXY) |
| 113 | LD B,3 |
||
| 1186 | savelij | 114 | .L2 SRL D |
| 507 | savelij | 115 | SRL E |
| 1186 | savelij | 116 | DJNZ .L2 |
| 507 | savelij | 117 | LD A,E |
| 118 | CP L |
||
| 1186 | savelij | 119 | RET C ; |
| 507 | savelij | 120 | LD A,L |
| 1186 | savelij | 121 | ADD A,(IX+_H_SIZE) |
| 507 | savelij | 122 | DEC A |
| 123 | CP E |
||
| 1186 | savelij | 124 | RET C ; ࠢ |
| 507 | savelij | 125 | LD A,D |
| 126 | INC H |
||
| 127 | CP H |
||
| 1186 | savelij | 128 | RET C ; 孥 ᪥ |
| 507 | savelij | 129 | LD A,H |
| 1186 | savelij | 130 | ADD A,(IX+_V_SIZE) |
| 507 | savelij | 131 | SUB 3 |
| 132 | CP D |
||
| 1186 | savelij | 133 | RET C ; ᪥ |
| 134 | ; । ࠡ祩 |
||
| 821 | savelij | 135 | LD A,(IX+_NUM_KOL_H) |
| 136 | AND A |
||
| 137 | JR NZ,.L1 |
||
| 138 | OR (IX+_NUM_KOL_L) |
||
| 139 | JR Z,.L1 |
||
| 1186 | savelij | 140 | ; ઠ ⢠ 㭪⮢ - 2 |
| 821 | savelij | 141 | PUSH HL |
| 142 | LD L,A |
||
| 143 | LD H,(IX+_NUM_KOL_H) |
||
| 507 | savelij | 144 | LD A,D |
| 821 | savelij | 145 | SUB (IX+_Y_COORD) |
| 146 | LD C,A |
||
| 147 | LD B,0 |
||
| 148 | AND A |
||
| 149 | SBC HL,BC |
||
| 150 | POP HL |
||
| 151 | RET C |
||
| 152 | .L1 LD A,D |
||
| 507 | savelij | 153 | SUB H |
| 154 | LD C,A |
||
| 1186 | savelij | 155 | LD L,(IX+_TEK_PKT_L) |
| 156 | LD H,(IX+_TEK_PKT_H) |
||
| 157 | BIT B_ADR_PUNKT,(IX+_NUM_PKT) |
||
| 507 | savelij | 158 | JR Z,MOUOPT1 |
| 159 | LD B,0 |
||
| 160 | LD C,(HL) |
||
| 161 | INC HL |
||
| 162 | LD E,(HL) |
||
| 163 | INC HL |
||
| 164 | LD D,(HL) |
||
| 165 | EX DE,HL |
||
| 166 | SBC HL,BC |
||
| 167 | LD C,A |
||
| 168 | ADD HL,BC |
||
| 169 | EX DE,HL |
||
| 170 | LD (HL),D |
||
| 171 | DEC HL |
||
| 172 | LD (HL),E |
||
| 173 | DEC HL |
||
| 174 | LD (HL),A |
||
| 175 | JP COLOR_CURSOR |
||
| 176 | |||
| 177 | MOUOPT1 LD B,0 |
||
| 178 | LD D,B |
||
| 1186 | savelij | 179 | LD E,(IX+_NUM_PKT) |
| 507 | savelij | 180 | SBC HL,DE |
| 181 | ADD HL,BC |
||
| 1186 | savelij | 182 | LD (IX+_NUM_PKT),C |
| 183 | LD (IX+_TEK_PKT_L),L |
||
| 184 | LD (IX+_TEK_PKT_H),H |
||
| 507 | savelij | 185 | JP COLOR_CURSOR |
| 186 | |||
| 187 | DRAW_MOUSE LD BC,(ARXY) |
||
| 188 | LD L,B |
||
| 189 | LD H,0 |
||
| 190 | ADD HL,HL |
||
| 191 | LD DE,BUFTSC |
||
| 192 | ADD HL,DE |
||
| 193 | LD A,C |
||
| 194 | RRCA |
||
| 195 | RRCA |
||
| 196 | RRCA |
||
| 1186 | savelij | 197 | AND 0x1F |
| 507 | savelij | 198 | ADD A,(HL) |
| 199 | INC HL |
||
| 200 | LD H,(HL) |
||
| 201 | LD L,A |
||
| 202 | LD (ADR_REST),HL |
||
| 203 | PUSH HL |
||
| 204 | CALL SAVE2X2 |
||
| 205 | LD A,(_MORG) |
||
| 206 | INC A |
||
| 1186 | savelij | 207 | LD HL,SYSFLAGS |
| 208 | CP 0x0C |
||
| 507 | savelij | 209 | JR NZ,_MORG3 |
| 1186 | savelij | 210 | LD A,SYSFLAGS.M_CURSOR_NUM |
| 507 | savelij | 211 | XOR (HL) |
| 212 | LD (HL),A |
||
| 213 | XOR A |
||
| 214 | _MORG3 LD (_MORG),A |
||
| 215 | LD A,(ARXY) |
||
| 216 | AND 7 |
||
| 217 | CPL |
||
| 218 | ADD A,9 |
||
| 219 | LD C,A |
||
| 1186 | savelij | 220 | LD A,(SYSFLAGS) |
| 221 | AND SYSFLAGS.M_CURSOR_NUM |
||
| 507 | savelij | 222 | LD HL,SPRAR |
| 223 | JR Z,_MORG2 |
||
| 224 | LD HL,SPRAR2 |
||
| 225 | _MORG2 LD B,8 |
||
| 226 | POP DE |
||
| 1186 | savelij | 227 | .L2 PUSH BC |
| 507 | savelij | 228 | LD B,C |
| 229 | LD C,(HL) |
||
| 230 | INC HL |
||
| 231 | PUSH HL |
||
| 232 | LD L,(HL) |
||
| 233 | EX DE,HL |
||
| 1186 | savelij | 234 | LD A,0xFF |
| 507 | savelij | 235 | LD D,0 |
| 1186 | savelij | 236 | .L1 SCF |
| 507 | savelij | 237 | RL C |
| 238 | RLA |
||
| 239 | SLA E |
||
| 240 | RL D |
||
| 1186 | savelij | 241 | DJNZ .L1 |
| 507 | savelij | 242 | AND (HL) |
| 243 | OR D |
||
| 244 | LD (HL),A |
||
| 245 | INC L |
||
| 246 | LD A,(HL) |
||
| 247 | AND C |
||
| 248 | OR E |
||
| 249 | LD (HL),A |
||
| 250 | DEC L |
||
| 251 | CALL INC_H |
||
| 252 | EX DE,HL |
||
| 253 | POP HL |
||
| 254 | INC HL |
||
| 255 | POP BC |
||
| 1186 | savelij | 256 | DJNZ .L2 |
| 507 | savelij | 257 | RET |
| 258 | |||
| 1186 | savelij | 259 | ; ⮯ |
| 260 | OPMSPL LD E,(IX+_ADR_MOUSE_L) |
||
| 261 | LD D,(IX+_ADR_MOUSE_H) |
||
| 507 | savelij | 262 | LD A,D |
| 263 | OR E |
||
| 1186 | savelij | 264 | RET Z ; ⥫ |
| 507 | savelij | 265 | PUSH IX |
| 266 | PUSH DE |
||
| 267 | POP IX |
||
| 1186 | savelij | 268 | LD HL,(ARXY) ; H=Y, L=X |
| 507 | savelij | 269 | SRL H |
| 270 | SRL H |
||
| 271 | SRL H |
||
| 272 | SRL L |
||
| 273 | SRL L |
||
| 1186 | savelij | 274 | SRL L ; HL=HL/8 |
| 507 | savelij | 275 | NXTPOS2 LD A,(IX+0) |
| 276 | INC A |
||
| 277 | JR Z,ENDWI |
||
| 278 | LD A,L |
||
| 279 | CP (IX+1) |
||
| 1186 | savelij | 280 | JR C,NXTPOS1 ; |
| 507 | savelij | 281 | LD A,(IX+1) |
| 282 | ADD A,(IX+4) |
||
| 283 | DEC A |
||
| 284 | CP L |
||
| 1186 | savelij | 285 | JR C,NXTPOS1 ; ࠢ |
| 507 | savelij | 286 | LD A,H |
| 287 | CP (IX+2) |
||
| 1186 | savelij | 288 | JR C,NXTPOS1 ; |
| 507 | savelij | 289 | LD A,(IX+2) |
| 290 | ADD A,(IX+3) |
||
| 291 | DEC A |
||
| 292 | CP H |
||
| 1186 | savelij | 293 | JR C,NXTPOS1 ; |
| 294 | LD A,(IX+5) ; 稫 |
||
| 295 | ENDWI POP IX ; |
||
| 296 | RET ; 室 |
||
| 507 | savelij | 297 | |
| 1186 | savelij | 298 | NXTPOS1 LD DE,6 ; 㤠 |
| 299 | ADD IX,DE ; 室 થ 饣 |
||
| 507 | savelij | 300 | JR NXTPOS2 |