Rev 1374 | Details | Compare with Previous | Last modification | View Log
Rev | Author | Line No. | Line |
---|---|---|---|
992 | alone | 1 | MENUC ;�� ���� � ����� |
2 | CALL MENU |
||
3 | CALL MEM7 |
||
4 | JP COPYAT |
||
5 | |||
6 | SETPER ;��⠭����� ������ |
||
7 | LD C,4 |
||
8 | LD A,(DAT+13) |
||
9 | CP 8 |
||
10 | JR NC,SPER |
||
11 | LD A,(DAT+14) |
||
12 | LD C,0 |
||
13 | CP 2 |
||
14 | JR C,SPER |
||
15 | INC C ;1 |
||
16 | CP 3 |
||
17 | JR C,SPER |
||
18 | INC C ;2 |
||
19 | CP 5 |
||
20 | JR C,SPER |
||
21 | INC C ;3 |
||
22 | CP 8 |
||
23 | JR C,SPER |
||
24 | INC C ;4 |
||
25 | SPER LD A,(RS+49) |
||
26 | OR A |
||
27 | JR NZ,SPE2 |
||
28 | LD C,5 |
||
29 | LD A,(RS+58) |
||
30 | OR A |
||
31 | JR NZ,SPE2 |
||
32 | INC C |
||
33 | SPE2 LD A,C |
||
34 | LD (PERIOD),A |
||
35 | RET |
||
36 | |||
37 | T50 DEFB 5 |
||
38 | TIM50 LD HL,T50 ;Z-sec |
||
39 | DEC (HL) |
||
40 | RET NZ |
||
41 | TIM50_ LD (HL),50 |
||
42 | RET |
||
43 | |||
44 | TIMS LD HL,TIM+7 ;���� �६��� (NC-���室 � ��砫�) |
||
45 | INC (HL) |
||
46 | LD A,(HL) |
||
47 | CP 10 |
||
48 | RET C |
||
49 | LD (HL),0 |
||
50 | DEC HL |
||
51 | INC (HL) |
||
52 | LD A,(HL) |
||
53 | CP 6 |
||
54 | RET C |
||
55 | LD (HL),0 |
||
56 | RET |
||
57 | TIMM LD HL,TIM+4 |
||
58 | INC (HL) |
||
59 | LD A,(HL) |
||
60 | CP 10 |
||
61 | RET C |
||
62 | LD (HL),0 |
||
63 | DEC HL |
||
64 | INC (HL) |
||
65 | LD A,(HL) |
||
66 | CP 6 |
||
67 | RET C |
||
68 | LD (HL),0 |
||
69 | RET |
||
70 | TIMH LD HL,TIM+1 |
||
71 | INC (HL) |
||
72 | LD A,(HL) |
||
73 | CP 4 |
||
74 | JR NZ,T2 |
||
75 | DEC HL |
||
76 | LD A,(HL) |
||
77 | CP 2 |
||
78 | RET C |
||
79 | XOR A |
||
80 | LD (HL),A |
||
81 | INC HL |
||
82 | LD (HL),A |
||
83 | RET |
||
84 | T2 CP 10 |
||
85 | RET C |
||
86 | LD (HL),0 |
||
87 | DEC HL |
||
88 | INC (HL) |
||
89 | SCF |
||
90 | RET |
||
91 | |||
92 | DATE LD HL,nDAT |
||
93 | INC (HL) |
||
94 | JR NZ,DM4 |
||
95 | INC HL |
||
96 | INC (HL) |
||
97 | DM4 LD HL,MNT |
||
98 | LD A,(DAT+14) |
||
99 | CALL WA |
||
100 | LD E,A |
||
101 | INC HL |
||
102 | LD D,(HL) |
||
103 | LD HL,(DAT) |
||
104 | PUSH HL |
||
105 | OR A |
||
106 | SBC HL,DE |
||
107 | POP HL |
||
108 | JR NZ,DM1 |
||
109 | LD HL,#100 |
||
110 | DM2 LD (DAT),HL |
||
111 | RET |
||
112 | DM1 INC H |
||
113 | LD A,H |
||
114 | CP 10 |
||
115 | JR C,DM2 |
||
116 | INC L |
||
117 | LD H,255 |
||
118 | JR DM1 |
||
119 | |||
120 | MONTH LD HL,DAT+14 |
||
121 | INC (HL) |
||
122 | LD A,(HL) |
||
123 | CP 12 |
||
124 | JR C,DM3 |
||
125 | XOR A |
||
126 | LD (HL),A |
||
127 | DM3 PUSH AF |
||
128 | ADD A,A |
||
129 | LD HL,MNAME |
||
130 | CALL DD |
||
131 | LD DE,DAT+2 |
||
132 | LD BC,8 |
||
133 | LDIR |
||
134 | POP AF |
||
135 | RET |
||
136 | |||
137 | YEAR LD HL,DAT+13 |
||
138 | INC (HL) |
||
139 | LD A,(HL) |
||
140 | CP 10 |
||
141 | RET ;>2019-end |
||
142 | |||
143 | |||
144 | PD4 CALL PD2 |
||
145 | PD2 CALL PDD |
||
146 | PDD PUSH HL |
||
147 | LD L,(HL) |
||
148 | LD H,0 |
||
149 | ADD HL,HL |
||
150 | ADD HL,HL |
||
151 | ADD HL,HL |
||
152 | LD BC,FONT+1 |
||
153 | ADD HL,BC |
||
154 | LD B,6 |
||
155 | PUSH DE |
||
156 | PD0 LD A,(HL) |
||
157 | LD (DE),A |
||
158 | INC HL |
||
159 | INC D |
||
160 | DJNZ PD0 |
||
161 | POP DE |
||
162 | POP HL |
||
163 | INC E |
||
164 | INC HL |
||
165 | RET |
||
166 | |||
167 | PUTDAT ;�뢮� �६��� |
||
168 | LD DE,SCR+24 |
||
169 | PDDS LD HL,TIM |
||
170 | CALL PD4 |
||
171 | CALL PD4 |
||
172 | LD E,32+27 |
||
173 | CALL PD2 |
||
174 | LD E,64+24 |
||
175 | CALL PD4 |
||
176 | CALL PD4 |
||
177 | LD E,96+26 |
||
178 | CALL PD4 |
||
179 | RET |
||
180 | |||
181 | ;�뢮� ����� |
||
182 | XEARTH Ms 3+#80 |
||
183 | XOR A |
||
184 | LD (T_M),A |
||
185 | CALL STD |
||
186 | CALL OFFD |
||
187 | LD A,(C_ONOF) |
||
188 | OR A |
||
189 | LD HL,#6960 |
||
190 | JR Z,XE7 |
||
191 | LD HL,#6838 |
||
192 | XE7 PUSH HL |
||
193 | LD A,L |
||
194 | LD BC,#1809 ;������ |
||
195 | LD HL,#F00 |
||
196 | CALL ATRBAR |
||
197 | LD DE,xEARTH |
||
198 | LD HL,0 |
||
199 | LD BC,#180F |
||
200 | CALL PUTSIM |
||
201 | POP AF;梥� ����� |
||
202 | CALL ATRBAR |
||
203 | LD L,24 |
||
204 | LD BC,#804 |
||
205 | LD A,#68;梥� �ᮢ |
||
206 | CALL ATRBAR |
||
207 | LD H,4 |
||
208 | LD C,20 |
||
209 | LD A,#30;������ |
||
210 | CALL ATRBAR |
||
211 | XEART2 LD DE,xLABEL+128 |
||
212 | LD C,5 |
||
213 | XE0 LD B,2 |
||
214 | LD L,24 |
||
215 | XE1 PUSH BC |
||
216 | PUSH HL |
||
217 | PUSH DE |
||
218 | LD DE,xBUTTON |
||
219 | LD BC,#404 |
||
220 | CALL PUTSIM |
||
221 | POP DE |
||
222 | LD BC,#202 |
||
223 | INC H |
||
224 | INC L |
||
225 | CALL PUTSIM |
||
226 | LD HL,32 |
||
227 | ADD HL,DE |
||
228 | EX DE,HL |
||
229 | POP HL |
||
230 | LD L,28 |
||
231 | POP BC |
||
232 | DJNZ XE1 |
||
233 | LD A,4 |
||
234 | ADD A,H |
||
235 | LD H,A |
||
236 | DEC C |
||
237 | JR NZ,XE0 |
||
238 | ;; CALL OUTPER |
||
239 | JP MEM7 |
||
240 | |||
241 | OUTPER CALL STD ;�� ��ਮ�� ����� [] |
||
242 | LD HL,#115 |
||
243 | LD (SX),HL |
||
244 | LD A,(PERIOD) |
||
245 | JP WB |
||
246 | |||
247 | TARBUT Ms 3 |
||
248 | LD DE,xLABEL+416;������ 楫�� |
||
249 | LD BC,#202 |
||
250 | LD HL,#1519 |
||
251 | CALL STD |
||
252 | CALL PUTSIM |
||
253 | LD DE,xLABEL+448 |
||
254 | LD L,#1D |
||
255 | CALL PUTSIM |
||
256 | LD HL,#519 |
||
257 | LD DE,xLABEL+480 |
||
258 | EXX |
||
259 | LD B,4 |
||
260 | LD HL,T_UFO |
||
261 | TB0 LD C,2 |
||
262 | TB1 LD A,(HL) |
||
263 | INC HL |
||
264 | EXX |
||
265 | EX AF,AF |
||
266 | CALL PUTSIM |
||
267 | EX AF,AF |
||
268 | XOR #FF |
||
269 | CALL Z,SIMBAR |
||
270 | LD A,32 |
||
271 | ADD A,E |
||
272 | LD E,A |
||
273 | JR NC,TB3 |
||
274 | INC D |
||
275 | TB3 LD L,#1D |
||
276 | EXX |
||
277 | DEC C |
||
278 | JR NZ,TB1 |
||
279 | EXX |
||
280 | LD A,4 |
||
281 | ADD A,H |
||
282 | LD H,A |
||
283 | LD L,#19 |
||
284 | EXX |
||
285 | DJNZ TB0 |
||
286 | LD L,#38 |
||
287 | TARBU2 CALL MEM7 |
||
288 | CALL STS |
||
289 | LD A,L |
||
290 | LD HL,#418 |
||
291 | LD BC,#814 |
||
292 | CALL ATRBAR |
||
293 | LD HL,DSCR+25 |
||
294 | LD DE,SCR+25 |
||
295 | LD A,192 |
||
296 | TB5 LDI |
||
297 | LDI |
||
298 | INC L |
||
299 | INC L |
||
300 | INC E |
||
301 | INC E |
||
302 | LDI |
||
303 | LDI |
||
304 | LD BC,26 |
||
305 | ADD HL,BC |
||
306 | EX DE,HL |
||
307 | ADD HL,BC |
||
308 | EX DE,HL |
||
309 | DEC A |
||
310 | JR NZ,TB5 |
||
311 | RET |
||
312 | |||
313 | PMAP INC L ;��४���� 楫�(HL) |
||
314 | INC H |
||
315 | LD B,8 |
||
316 | Pmp PUSH BC |
||
317 | PUSH HL |
||
318 | CALL STS |
||
319 | CHNs XOR_ |
||
320 | LD D,H |
||
321 | LD L,1 |
||
322 | LD E,190 |
||
323 | CALL LINE |
||
324 | POP HL |
||
325 | PUSH HL |
||
326 | LD E,L |
||
327 | LD H,1 |
||
328 | LD D,118 |
||
329 | CALL LINE |
||
330 | CALL E_I |
||
331 | CALL INT0 |
||
332 | POP HL |
||
333 | POP BC |
||
334 | DJNZ Pmp |
||
335 | RET |
||
336 | |||
337 | T_M DEFB 0 ;0/1-���/���� ���� |
||
338 | T_D DEFB 0 ;0/1-���/���� ��� |
||
339 | T_SW DEFB 0 |
||
340 | INT0 LD A,(T_SW) ;��. ��ꥪ⮢ |
||
341 | INC A |
||
342 | LD (T_SW),A |
||
343 | RRCA |
||
344 | JR C,I0 |
||
345 | CALL PUTDAT |
||
346 | LD A,(T_D) |
||
347 | XOR 1 |
||
348 | LD (T_D),A |
||
349 | JP SHOWD |
||
350 | I0 AND 3 ;flash |
||
351 | RET NZ |
||
352 | LD A,(T_M) |
||
353 | XOR 1 |
||
354 | LD (T_M),A |
||
355 | CALL SHOWT |
||
356 | SHOWS ;�뢮� ��� |
||
357 | LD A,SCR/256 |
||
358 | CALL SELSCR |
||
359 | CHNs XOR_ |
||
360 | LD DE,SPM+4 |
||
361 | LD BC,#103 |
||
362 | EXX |
||
363 | LD B,8 |
||
364 | LD HL,XBASE |
||
365 | LD DE,BASE |
||
366 | SWS0 LD A,(DE) |
||
367 | INC DE |
||
368 | CP 100 |
||
369 | EX AF,AF |
||
370 | LD A,(HL) |
||
371 | EX AF,AF |
||
372 | INC HL |
||
373 | LD A,(HL) |
||
374 | INC HL |
||
375 | JR NC,SWS2 |
||
376 | EXX |
||
377 | LD H,A |
||
378 | EX AF,AF |
||
379 | LD L,A |
||
380 | CALL PUTSPR |
||
381 | EXX |
||
382 | SWS2 DJNZ SWS0 |
||
383 | RET |
||
384 | |||
385 | SHOWD ;�뢮� ����. � ��� |
||
386 | LD A,SCR/256 |
||
387 | CALL SELSCR |
||
388 | CHNs XOR_ |
||
389 | LD A,(T_INTR) |
||
390 | LD DE,SPM |
||
391 | LD BC,#103 |
||
392 | LD HL,(INTR) |
||
393 | CP 255 |
||
394 | CALL NZ,PUTSPR |
||
395 | LD DE,SPM+8 |
||
396 | LD A,(T_UFO) |
||
397 | CP 255 |
||
398 | RET Z |
||
399 | LD A,(UFOV) |
||
400 | OR A |
||
401 | LD HL,(UFO) |
||
402 | CALL Z,PUTSPR |
||
403 | RET |
||
404 | |||
405 | SHOWT ;�뢮� 楫�� |
||
406 | LD A,SCR/256 |
||
407 | CALL SELSCR |
||
408 | CHNs XOR_ |
||
409 | LD IY,SWST |
||
410 | LD IX,T_SHP |
||
411 | LD DE,SPM+12 |
||
412 | LD BC,#104 |
||
413 | EXX |
||
414 | LD B,7 |
||
415 | SWS1 EXX |
||
416 | LD A,(IX) |
||
417 | CP 255 |
||
418 | JR Z,SWS3 |
||
419 | LD L,(IY) |
||
420 | LD H,(IY+1) |
||
421 | CALL WT |
||
422 | CALL PUTSPR |
||
423 | SWS3 INC DE |
||
424 | INC DE |
||
425 | INC DE |
||
426 | INC DE |
||
427 | INC IX |
||
428 | INC IY |
||
429 | INC IY |
||
430 | EXX |
||
431 | DJNZ SWS1 |
||
432 | RET |
||
433 | SWST DEFW SHIP,PORT,ISLN,XBASE,UCOLON,UBASE,TLETH |
||
434 | |||
435 | NBUTT LD HL,(MX);N ������ (0-9) |
||
436 | LD A,L |
||
437 | CP #E0 |
||
438 | LD B,0 |
||
439 | JR C,NUI |
||
440 | INC B |
||
441 | NUI LD A,H |
||
442 | SUB 32 |
||
443 | RRCA |
||
444 | RRCA |
||
445 | RRCA |
||
446 | RRCA |
||
447 | AND #E |
||
448 | ADD A,B |
||
449 | RET |
||
450 | |||
451 | T_COOR LD B,A |
||
452 | LD HL,(UFO) ;A-n,HL-coord |
||
453 | OR A |
||
454 | RET Z |
||
455 | LD HL,T_UFO |
||
456 | CALL BA |
||
457 | LD C,A |
||
458 | LD A,B |
||
459 | LD HL,SWST-2 |
||
460 | CALL WT |
||
461 | LD A,C |
||
462 | JP WT |
||
463 | |||
464 | SELTAR LD A,(T_INTR) |
||
465 | RLA |
||
466 | JR NC,NQY |
||
467 | LD A,27 |
||
468 | NQ_NO CALL DISPL |
||
469 | JR NQR4 |
||
470 | NQY LD A,(AQU) |
||
471 | OR A |
||
472 | JR NZ,NQW |
||
473 | LD A,41 |
||
474 | JR NQ_NO |
||
475 | NQW LD HL,T_UFO |
||
476 | LD B,8 |
||
477 | NQQ LD A,(HL) |
||
478 | INC HL |
||
479 | RLA |
||
480 | JR NC,NQS |
||
481 | DJNZ NQQ |
||
482 | LD A,17 |
||
483 | CALL DISPL |
||
484 | JR NQR4 |
||
485 | NQS CALL TARBUT |
||
486 | NQR0 CALL INT0 |
||
487 | CALL MARK_ |
||
488 | JR C,NQR0 |
||
489 | NQR1 CALL INT0 |
||
490 | CALL MARK_ |
||
491 | JR NC,NQR1 |
||
492 | CALL NBUTT |
||
493 | CP 8 |
||
494 | JR Z,NQI |
||
495 | JR NC,NQR4 |
||
496 | LD B,A |
||
497 | LD HL,T_UFO |
||
498 | CALL BA |
||
499 | CP 255 |
||
500 | JR Z,NQR1 |
||
501 | LD A,B |
||
502 | CP 7 |
||
503 | JR NZ,NQR11 |
||
504 | LD A,(T_INTR) |
||
505 | CP 2 |
||
506 | JR Z,NQR11 |
||
507 | LD A,31 |
||
508 | CALL DISPL |
||
509 | JR NQR1 |
||
510 | NQR11 LD A,B |
||
511 | LD (T_TYPE),A |
||
512 | CALL T_COOR |
||
513 | LD (INTR_T),HL |
||
514 | CALL PMAP |
||
515 | LD A,(T_TYPE) |
||
516 | ADD A,145 |
||
517 | LD (DSDAT),A |
||
518 | LD A,21 |
||
519 | CALL DISPLX |
||
520 | NQR4 CALL INT0 |
||
521 | CALL MARK_ |
||
522 | JR C,NQR4 |
||
523 | Ms 3+#40 |
||
524 | LD HL,#418 |
||
525 | CALL XEART2 |
||
526 | LD L,#30 |
||
527 | CALL TARBU2 |
||
528 | JP T_SLOW |
||
529 | NQI LD A,18 |
||
530 | CALL DISPLX |
||
531 | LD B,145 |
||
532 | LD HL,T_UFO |
||
533 | NQI1 pushs |
||
534 | LD A,(HL) |
||
535 | CP 255 |
||
536 | JR Z,NQI2 |
||
537 | LD A,B |
||
538 | LD (DSDAT),A |
||
539 | CP 147 |
||
540 | LD A,19 |
||
541 | JR C,NQI3 |
||
542 | LD A,B |
||
543 | CP 150 |
||
544 | LD A,19 |
||
545 | JR NC,NQI3 |
||
546 | LD A,B |
||
547 | LD C,216 |
||
548 | CP 148 |
||
549 | JR Z,NQI4 |
||
550 | LD C,192 |
||
551 | JR NC,NQI4 |
||
552 | LD C,200 |
||
553 | NQI4 LD A,(HL) |
||
554 | ADD A,C |
||
555 | LD (DSDAT+1),A |
||
556 | LD A,20 |
||
557 | NQI3 CALL DISPLX |
||
558 | pops |
||
559 | pushs |
||
560 | LD A,B |
||
561 | SUB 145 |
||
562 | CALL T_COOR |
||
563 | CALL PMAP |
||
564 | NQI2 pops |
||
565 | INC HL |
||
566 | INC B |
||
567 | LD A,B |
||
568 | CP 153 |
||
569 | JR C,NQI1 |
||
570 | JP NQR1 |
||
571 | |||
572 | if PROTECT |
||
573 | CHK_2 LD A,#80 ;[] check CRC2 |
||
574 | CALL MEM |
||
575 | LD HL,SCR |
||
576 | PUSH HL |
||
577 | LD BC,#2000 |
||
578 | ADD HL,BC |
||
579 | POP DE |
||
580 | Crt1 LD A,(DE) |
||
581 | CP (HL) |
||
582 | JR Z,Crt1_ |
||
583 | DEC C |
||
584 | ADD A,B |
||
585 | ADD A,(HL) |
||
586 | LD B,A |
||
587 | Crt1_ INC HL |
||
588 | INC DE |
||
589 | LD A,H |
||
590 | OR L |
||
591 | JR NZ,Crt1 |
||
592 | RET |
||
593 | endif |
||
594 | |||
595 | I_RET LD A,255 |
||
596 | LD (T_TYPE),A |
||
597 | LD A,(T_INTR) |
||
598 | RLA |
||
599 | LD A,27 |
||
600 | JR C,I_RE2 |
||
601 | LD HL,(XBASE) |
||
602 | LD DE,(INTR) |
||
603 | PUSH HL |
||
604 | SBC HL,DE |
||
605 | POP HL |
||
606 | LD A,42 |
||
607 | JP Z,I_RE2 |
||
608 | LD (INTR_T),HL |
||
609 | LD A,3 |
||
610 | I_RE2 CALL DISPL |
||
611 | JR T_SLOW |
||
612 | |||
613 | GOhome LD A,255 |
||
614 | LD (T_TYPE),A |
||
615 | LD HL,(XBASE) |
||
616 | LD (INTR_T),HL |
||
617 | RET |
||
618 | |||
619 | STOP_T XOR A |
||
620 | INC A |
||
621 | LD (ST_TIM),A |
||
622 | RET |
||
623 | |||
624 | ST_TIM DEFB 0 ;�� 0 -�맮� �_SLOW |
||
625 | T_SLOW LD HL,#400+50 |
||
626 | LD DE,LNXT |
||
627 | JR FMS |
||
628 | |||
629 | T_MID LD HL,#800+1 |
||
630 | LD DE,LNXT |
||
631 | JR FMS |
||
632 | |||
633 | T_FAST LD HL,#C00+1 |
||
634 | LD DE,LLF2 |
||
635 | FMS XOR A |
||
636 | LD (ST_TIM),A |
||
637 | LD (LLF1+1),DE |
||
638 | LD A,L |
||
639 | LD (TIM50_+1),A |
||
640 | LD (T50),A |
||
641 | LD L,28 |
||
642 | PUSH HL |
||
643 | CALL STS |
||
644 | ATRs #41C,#40C,#30 |
||
645 | POP HL |
||
646 | LD C,4 |
||
647 | LD A,#68 |
||
648 | CALL ATRBAR |
||
649 | JR LOOP |
||
650 | |||
651 | LOOPT DEFW XMENUS,T_SLOW,I_RET,T_MID,SELTAR |
||
652 | DEFW T_FAST,UPEDIA,OPTION,FINANS,INFO |
||
653 | |||
1623 | alone | 654 | if MUSIC |
655 | SETMENUMUSIC |
||
656 | halt |
||
657 | ld a,19 |
||
658 | call setpg |
||
659 | call 0xc000 |
||
660 | ld hl,0xc005 |
||
661 | OS_SETMUSIC |
||
662 | ret |
||
663 | endif |
||
664 | |||
992 | alone | 665 | XMR CALL NOKEYw |
1623 | alone | 666 | if MUSIC |
667 | call SETMENUMUSIC |
||
668 | endif |
||
992 | alone | 669 | MLOOP LD SP,#403E |
670 | CALL MEM7 |
||
671 | CALL XEARTH;*******������ 横� |
||
672 | LD DE,DSCR+24 |
||
673 | CALL PDDS |
||
674 | CALL LODMON |
||
675 | LD A,(SYSINI) |
||
676 | OR A |
||
677 | JR Z,M_LOOP |
||
678 | CALL DISPL |
||
679 | XOR A |
||
680 | LD (SYSINI),A |
||
681 | M_LOOP CALL INIBUT |
||
682 | CALL RECRUT |
||
683 | CALL CALC |
||
684 | CALL RS254 |
||
685 | CALL SETPER |
||
686 | XOR A |
||
687 | LD (T_D),A |
||
688 | CALL isTLEF |
||
689 | JP T_SLOW |
||
690 | LOOP CALL STDCFG |
||
691 | CALL INT0 |
||
692 | CALL TIM50 |
||
693 | JR NZ,LNXT |
||
694 | CALL TIMS |
||
695 | LLF1 JP C,LNXT |
||
696 | LLF2 CALL ACTM |
||
697 | CALL TIMM |
||
698 | JR C,LNXT |
||
699 | CALL ACTH |
||
700 | CALL TARh |
||
701 | CALL TIMH |
||
702 | JR C,LNXT |
||
703 | CALL DATE |
||
704 | PUSH AF |
||
705 | CALL ACTD |
||
706 | POP AF |
||
707 | JR C,LNXT |
||
708 | CALL Mn_FIN |
||
709 | CALL MONTH |
||
710 | JR C,LNXT |
||
711 | CALL YEAR |
||
712 | JR C,LNXT |
||
713 | CALL SMERT |
||
714 | LNXT LD BC,#FDFE |
||
715 | IN A,(C) |
||
716 | CPL |
||
717 | AND %1110 |
||
718 | JR Z,ML2 |
||
719 | RRA |
||
720 | PUSH AF |
||
721 | CALL MARK_ |
||
722 | POP AF |
||
723 | RRA |
||
724 | JP C,T_SLOW |
||
725 | RRA |
||
726 | JP C,T_MID |
||
727 | RRA |
||
728 | JP C,T_FAST |
||
729 | ML2 LD A,(ST_TIM) |
||
730 | OR A |
||
731 | JP NZ,T_SLOW |
||
732 | CALL MARK_ |
||
733 | JR NC,LOOP |
||
734 | CALL NBUTT |
||
735 | LD HL,LOOPT |
||
736 | CALL WT |
||
737 | JP (HL) |
||
738 | |||
739 | MU00 DEFW #301,#001C,T+89 |
||
740 | DEFB 8 |
||
741 | MU01 DEFW #204,#117,T+1,12,RS |
||
742 | DEFW #903,#118,T+13,3,RS+12 |
||
743 | DEFW #A04,#118,T+16,3,RS+15 |
||
744 | DEFW #906,#118,T+19,3,RS+18 |
||
745 | DEFW #203,#113,T+22,12,RS+21 |
||
746 | DEFW #707,#115,T+34,9,RS+33 |
||
747 | DEFW #504,#118,T+43,9,RS+42 |
||
748 | DEFW #604,#118,T+52,9,RS+51 |
||
749 | |||
750 | |||
751 | LODMON CALL MEM7 |
||
752 | LD HL,MONINI |
||
753 | LD A,(HL) |
||
754 | OR A |
||
755 | JR NZ,LDM1 |
||
756 | INC (HL) |
||
757 | CALL STD |
||
758 | LD HL,#F00 ;����� ��ᯫ |
||
759 | LD DE,ScrBU |
||
760 | LD BC,#1809 |
||
761 | CALL PUTSIM |
||
762 | LDM1 CALL COPYAT |
||
763 | LD A,255 |
||
764 | LD BC,#1801 |
||
765 | LD HL,#1700 |
||
766 | CALL SIMBAR |
||
767 | LD HL,#FFFF |
||
768 | LD (MBEG),HL |
||
769 | RET |
||
770 | |||
771 | SAVMON CALL MRK2 |
||
772 | XOR A |
||
773 | LD (MONINI),A |
||
774 | CALL STS |
||
775 | LD HL,#F00 ;��� ��ᯫ |
||
776 | LD DE,ScrBU |
||
777 | LD BC,#1809 |
||
778 | JP GETSIM |
||
779 | |||
780 | optN DEFW op1,op2,op3,opOK |
||
781 | optD DEFB 1,1,1,171 |
||
782 | XMopt LD HL,(KEYS) |
||
783 | LD (_KEYS),HL |
||
784 | LD HL,(KEYJOY) |
||
785 | LD (_KEYJ),HL |
||
786 | XMooo ;��樨 |
||
787 | LD DE,optD |
||
788 | LD A,(C_ONOF) |
||
789 | ADD A,174 |
||
790 | LD (DE),A |
||
791 | INC DE |
||
792 | LD A,(KEYN) |
||
793 | ADD A,176 |
||
794 | LD (DE),A |
||
795 | INC DE |
||
796 | LD A,(_KEYJ+1) |
||
797 | ADD A,180 |
||
798 | LD (DE),A |
||
799 | LD IX,MUopt |
||
800 | CALL SELM |
||
801 | JR NC,XORT |
||
802 | LD HL,optN |
||
803 | CALL WT |
||
804 | LD (XMO+1),HL |
||
805 | XMO CALL #38 |
||
806 | JR XMooo |
||
807 | |||
808 | op1 LD HL,C_ONOF |
||
809 | op31 LD A,(HL) |
||
810 | XOR 1 |
||
811 | LD (HL),A |
||
812 | RET |
||
813 | op3 LD HL,_KEYJ+1 |
||
814 | JR op31 |
||
815 | op2 LD HL,KEYN |
||
816 | LD A,(HL) |
||
817 | DEC (HL) |
||
818 | OR A |
||
819 | JR NZ,op21 |
||
820 | LD (HL),3 |
||
821 | LD A,1 |
||
822 | op22 LD (_KEYJ),A |
||
823 | RET |
||
824 | op21 LD L,(HL) |
||
825 | LD E,10 |
||
826 | CALL MULB |
||
827 | LD HL,KBR |
||
828 | ADD HL,DE |
||
829 | LD (_KEYS),HL |
||
830 | XOR A |
||
831 | JR op22 |
||
832 | opOK POP DE |
||
833 | XORT LD HL,(_KEYS) |
||
834 | LD (KEYS),HL |
||
835 | LD HL,(_KEYJ) |
||
836 | LD (KEYJOY),HL |
||
837 | RET |
||
838 | |||
839 | _KEYS DEFW #202 |
||
840 | _KEYJ DEFW #202 |
||
841 | |||
842 | MUopt DEFW #C00,#471B,optD |
||
843 | DEFB 4 |
||
844 | |||
845 | STDCFG LD BC,#FEFE ;�⠭� �FG |
||
846 | IN A,(C) |
||
847 | AND %1100 ;C |
||
848 | RET NZ |
||
849 | XOR A |
||
850 | LD (KEYJOY),A |
||
851 | LD (PMOUSE),A |
||
852 | LD (KEYN),A |
||
853 | LD HL,KBR |
||
854 | LD (KEYS),HL |
||
855 | LD A,#48 |
||
856 | JP DISPLX |
||
857 | |||
858 | UPEDIA CALL SAVMON |
||
859 | CALL RESNUM |
||
860 | LD HL,(R_NUM-1) |
||
861 | CP H |
||
862 | CALL NZ,OFFNUM |
||
863 | CALL BACK |
||
864 | UP_XX LD IX,MU00 |
||
865 | CALL SELM |
||
866 | JR NC,UP9 |
||
867 | LD IX,MU01-10 |
||
868 | LD DE,10 |
||
869 | INC A |
||
870 | LD B,A |
||
871 | UP8 ADD IX,DE |
||
872 | DJNZ UP8 |
||
873 | CALL SELM |
||
874 | JR NC,UP_XX |
||
875 | LD L,(IX+4) |
||
876 | LD H,(IX+5) |
||
877 | LD DE,T |
||
878 | OR A |
||
879 | SBC HL,DE |
||
880 | ADD A,L |
||
881 | DEC A |
||
882 | LD (USN),A |
||
883 | XOR A |
||
884 | LD (UST),A |
||
885 | CALL UP |
||
886 | CALL MEM7 |
||
887 | UP9 CALL MARK_ |
||
888 | JR C,UP9 |
||
889 | JP MLOOP |
||
890 | |||
891 | ;---------------------ࠡ�� � ��થ |
||
892 | |||
893 | OFLINE LD HL,MTMP ;�몫.�㭪� |
||
894 | LD A,(HL) |
||
895 | DEC HL |
||
896 | LD D,(HL) |
||
897 | LD (HL),A |
||
898 | INC HL |
||
899 | CP D |
||
900 | RET Z |
||
901 | INC D |
||
902 | RET Z |
||
903 | DEC D |
||
904 | INC HL |
||
905 | ONOFL INC HL |
||
906 | LD E,(HL) |
||
907 | INC HL |
||
908 | LD B,(HL) |
||
909 | CALL SCOORD |
||
910 | LD C,8 |
||
911 | LD E,L |
||
912 | LD D,B |
||
913 | ONOF1 LD A,(HL) |
||
914 | CPL |
||
915 | LD (HL),A |
||
916 | INC L |
||
917 | DJNZ ONOF1 |
||
918 | LD B,D |
||
919 | LD L,E |
||
920 | INC H |
||
921 | DEC C |
||
922 | JR NZ,ONOF1 |
||
923 | RET |
||
924 | |||
925 | ONLINE LD DE,(MXSH) ;���.�㭪� |
||
926 | LD A,L |
||
927 | SUB E |
||
928 | JR C,NOLINE |
||
929 | CP D |
||
930 | JR NC,NOLINE |
||
931 | LD DE,(MBEG) |
||
932 | LD A,H |
||
933 | CP E |
||
934 | JR C,NOLINE |
||
935 | CP D |
||
936 | JR Z,ONL1 |
||
937 | JR C,ONL1 |
||
938 | NOLINE LD HL,MTMP |
||
939 | LD (HL),255 |
||
940 | INC HL |
||
941 | LD (HL),255 |
||
942 | RET |
||
943 | ONL1 LD HL,MOLD |
||
944 | CP (HL) |
||
945 | RET Z |
||
946 | INC HL |
||
947 | LD (HL),A |
||
948 | LD D,A |
||
949 | INC HL |
||
950 | SUB E |
||
951 | LD (HL),A |
||
952 | XOR A |
||
953 | LD (NEW_M),A |
||
954 | JR ONOFL |
||
955 | |||
956 | ;��࠭��� ����ࠦ���� ��� ��५��� |
||
957 | GETBUF LD A,D ;DE-YX |
||
958 | CP 176 |
||
959 | JR C,M112 |
||
960 | LD D,176 |
||
961 | M112 LD A,E |
||
962 | CP 232 |
||
963 | JR C,M115 |
||
964 | LD E,232 |
||
965 | M115 CALL PCOORD |
||
966 | LD DE,MBU |
||
967 | LD B,16 |
||
968 | M110 PUSH BC |
||
969 | PUSH HL |
||
970 | LDI |
||
971 | LDI |
||
972 | LDI |
||
973 | POP HL |
||
974 | INC H |
||
975 | LD A,H |
||
976 | AND %111 |
||
977 | JR NZ,M114 |
||
978 | LD A,H |
||
979 | SUB 8 |
||
980 | LD H,A |
||
981 | LD A,L |
||
982 | ADD A,32 |
||
983 | LD L,A |
||
984 | JR NC,M114 |
||
985 | LD A,8 |
||
986 | ADD A,H |
||
987 | LD H,A |
||
988 | M114 POP BC |
||
989 | DJNZ M110 |
||
990 | RET |
||
991 | |||
992 | ;����⠭����� ����ࠦ���� ��� ��५��� |
||
993 | PUTBUF LD A,D ;de-xy |
||
994 | CP 176 |
||
995 | JR C,M192 |
||
996 | LD D,176 |
||
997 | M192 LD A,E |
||
998 | CP 232 |
||
999 | JR C,M195 |
||
1000 | LD E,232 |
||
1001 | M195 CALL PCOORD |
||
1002 | LD DE,MBU |
||
1003 | EX DE,HL |
||
1004 | LD B,16 |
||
1005 | M190 PUSH BC |
||
1006 | PUSH DE |
||
1007 | LDI |
||
1008 | LDI |
||
1009 | LDI |
||
1010 | POP DE |
||
1011 | INC D |
||
1012 | LD A,D |
||
1013 | AND %111 |
||
1014 | JR NZ,M194 |
||
1015 | LD A,D |
||
1016 | SUB 8 |
||
1017 | LD D,A |
||
1018 | LD A,E |
||
1019 | ADD A,32 |
||
1020 | LD E,A |
||
1021 | JR NC,M194 |
||
1022 | LD A,8 |
||
1023 | ADD A,D |
||
1024 | LD D,A |
||
1025 | M194 POP BC |
||
1026 | DJNZ M190 |
||
1027 | RET |
||
1028 | |||
1029 | ;�뢮� ��५�� � DSCR |
||
1030 | ARROW PUSH DE ;de-xy |
||
1031 | LD A,176 |
||
1032 | LD C,16 |
||
1033 | SUB D |
||
1034 | JR NC,M17W |
||
1035 | ADD A,C |
||
1036 | LD C,A |
||
1037 | M17W CALL PCOORD |
||
1038 | POP DE |
||
1039 | LD A,E |
||
1040 | AND %110 |
||
1041 | RRCA |
||
1042 | ADD A,MBU2/256 |
||
1043 | LD D,A |
||
1044 | LD E,0 |
||
1045 | LD A,L |
||
1046 | AND #1F |
||
1047 | SUB 30 |
||
1048 | CPL |
||
1049 | JR NC,M179 |
||
1050 | XOR A |
||
1051 | M179 ADD A,3 |
||
1052 | LD (ARW+1),A |
||
1053 | ARW LD B,3 |
||
1054 | PUSH HL |
||
1055 | PUSH DE |
||
1056 | ARW0 LD A,(DE) |
||
1057 | INC E |
||
1058 | OR (HL) |
||
1059 | LD (HL),A |
||
1060 | LD A,(DE) |
||
1061 | INC E |
||
1062 | XOR (HL) |
||
1063 | LD (HL),A |
||
1064 | INC L |
||
1065 | DJNZ ARW0 |
||
1066 | POP DE |
||
1067 | POP HL |
||
1068 | LD A,E |
||
1069 | ADD A,6 |
||
1070 | LD E,A |
||
1071 | INC H |
||
1072 | LD A,H |
||
1073 | AND %111 |
||
1074 | JR NZ,M174 |
||
1075 | LD A,H |
||
1076 | SUB 8 |
||
1077 | LD H,A |
||
1078 | LD A,L |
||
1079 | ADD A,32 |
||
1080 | LD L,A |
||
1081 | JR NC,M174 |
||
1082 | LD A,8 |
||
1083 | ADD A,H |
||
1084 | LD H,A |
||
1085 | M174 DEC C |
||
1086 | JR NZ,ARW |
||
1087 | RET |
||
1088 | |||
1089 | ;���樠������ �� �室� � ���� |
||
1090 | ARRINI LD DE,MRK |
||
1091 | LD HL,MBU2 |
||
1092 | CALL ARIS |
||
1093 | LD DE,MRK+32 |
||
1094 | LD HL,MBU2+1 |
||
1095 | ARIS LD C,0 |
||
1096 | ARIS0 LD B,16 |
||
1097 | PUSH HL |
||
1098 | PUSH DE |
||
1099 | A0IS0 PUSH BC |
||
1100 | CALL RRCB |
||
1101 | LD (HL),A |
||
1102 | INC L |
||
1103 | INC L |
||
1104 | LD (HL),B |
||
1105 | CALL RRCB |
||
1106 | OR (HL) |
||
1107 | LD (HL),A |
||
1108 | INC L |
||
1109 | INC L |
||
1110 | LD (HL),B |
||
1111 | INC L |
||
1112 | INC L |
||
1113 | POP BC |
||
1114 | DJNZ A0IS0 |
||
1115 | POP DE |
||
1116 | POP HL |
||
1117 | INC H |
||
1118 | INC C |
||
1119 | LD A,C |
||
1120 | CP 4 |
||
1121 | JR NZ,ARIS0 |
||
1122 | RET |
||
1123 | RRCB LD A,C |
||
1124 | OR A |
||
1125 | LD A,(DE) |
||
1126 | LD B,C |
||
1127 | INC DE |
||
1128 | RET Z |
||
1129 | LD B,0 |
||
1130 | EX AF,AF |
||
1131 | LD A,C |
||
1132 | RRC1 EX AF,AF |
||
1133 | SRL A |
||
1134 | RR B |
||
1135 | SRL A |
||
1136 | RR B |
||
1137 | EX AF,AF |
||
1138 | DEC A |
||
1139 | JR NZ,RRC1 |
||
1140 | EX AF,AF |
||
1141 | RET |
||
1142 | |||
1143 | ;����: �⮡ࠦ���� ��५�� � ���ᢥ祭���� �㭪� � SCR |
||
1144 | w_band EQU 29 |
||
1145 | MRK1 CALL E_I |
||
1146 | LD A,(PMOUSE) |
||
1147 | OR A |
||
1148 | JR Z,MRK1N |
||
1149 | LD A,(MYOLD) |
||
1150 | CALL MRK1_ |
||
1151 | MRK1N LD A,(MY) |
||
1152 | LD (MYOLD),A |
||
1153 | MRK1_ AND #FE |
||
1154 | SUB 11 |
||
1155 | JR NC,M11 |
||
1156 | XOR A |
||
1157 | JR M10 |
||
1158 | M11 CP 192-w_band |
||
1159 | JR C,M10 |
||
1160 | LD A,192-w_band |
||
1161 | M10 LD D,A |
||
1162 | LD E,0 |
||
1163 | CALL BCOORD |
||
1164 | PUSH HL |
||
1165 | LD BC,SCR-DSCR |
||
1166 | ADD HL,BC |
||
1167 | POP DE |
||
1168 | EX DE,HL |
||
1169 | LD B,w_band |
||
1170 | M12 PUSHs |
||
1171 | LD BC,32 |
||
1172 | LDIR |
||
1173 | POPs |
||
1174 | INC D |
||
1175 | INC H |
||
1176 | LD A,H |
||
1177 | AND %111 |
||
1178 | JR NZ,M14 |
||
1179 | LD A,H |
||
1180 | SUB 8 |
||
1181 | LD H,A |
||
1182 | LD A,L |
||
1183 | ADD A,32 |
||
1184 | LD L,A |
||
1185 | LD E,A |
||
1186 | JR NC,M15 |
||
1187 | LD A,8 |
||
1188 | ADD A,H |
||
1189 | LD H,A |
||
1190 | M15 LD A,+(SCR-DSCR)/256 |
||
1191 | ADD A,H |
||
1192 | LD D,A |
||
1193 | M14 DJNZ M12 |
||
1194 | RET |
||
1195 | |||
1196 | ;������: �⮡ࠦ���� ��५�� � SCR |
||
1197 | wB_band EQU 20 |
||
1198 | MYOLD DEFB 0 |
||
1199 | MRK2 CALL E_I |
||
1200 | CALL STD |
||
1201 | LD A,(PMOUSE) |
||
1202 | OR A |
||
1203 | JR Z,MRK2N |
||
1204 | LD A,(MYOLD) |
||
1205 | CALL MRK2_ |
||
1206 | MRK2N LD A,(MY) |
||
1207 | LD (MYOLD),A |
||
1208 | MRK2_ AND #FE |
||
1209 | SUB 2 |
||
1210 | CP 191-wB_band |
||
1211 | JR C,M210 |
||
1212 | LD A,191-wB_band |
||
1213 | M210 LD D,A |
||
1214 | LD E,0 |
||
1215 | CALL BCOORD |
||
1216 | PUSH HL |
||
1217 | LD BC,SCR-DSCR |
||
1218 | ADD HL,BC |
||
1219 | POP DE |
||
1220 | EX DE,HL |
||
1221 | LD B,wB_band |
||
1222 | M212 PUSHs |
||
1223 | LD A,E |
||
1224 | ADD A,24 |
||
1225 | LD E,A |
||
1226 | LD L,A |
||
1227 | LDI |
||
1228 | LDI |
||
1229 | LDI |
||
1230 | LDI |
||
1231 | LDI |
||
1232 | LDI |
||
1233 | LDI |
||
1234 | LDI |
||
1235 | POPs |
||
1236 | INC D |
||
1237 | INC H |
||
1238 | LD A,H |
||
1239 | AND %111 |
||
1240 | JR NZ,M214 |
||
1241 | LD A,H |
||
1242 | SUB 8 |
||
1243 | LD H,A |
||
1244 | LD A,L |
||
1245 | ADD A,32 |
||
1246 | LD L,A |
||
1247 | LD E,A |
||
1248 | JR NC,M215 |
||
1249 | LD A,8 |
||
1250 | ADD A,H |
||
1251 | LD H,A |
||
1252 | M215 LD A,+(SCR-DSCR)/256 |
||
1253 | ADD A,H |
||
1254 | LD D,A |
||
1255 | M214 DJNZ M212 |
||
1256 | RET |
||
1257 | |||
1258 | ;*************ࠡ�� � ��५��� |
||
1259 | NEW_M DEFB 2 ;0 -ᬥ�� �㭪� |
||
1260 | MARK XOR A;C �뢮��� ���� ������ ��ப |
||
1261 | mark_0 CALL mark_ |
||
1262 | JR C,mark_1 |
||
1263 | LD A,(NEW_M) |
||
1264 | OR A |
||
1265 | JR NZ,mark_0 |
||
1266 | CPL |
||
1267 | LD (NEW_M),A |
||
1268 | mark_1 LD A,(MPOS) |
||
1269 | RET |
||
1270 | MARK_ LD A,1 ;��� �뢮�� ���� ������ ��ப |
||
1271 | mark_ LD (MC21),A |
||
1272 | CALL STD |
||
1273 | CALL MMOV |
||
1274 | JR C,MMV1 ;���� �ࠢ ������ ��� |
||
1275 | RR C |
||
1276 | MMV1 PUSH AF |
||
1277 | LD HL,(MX) |
||
1278 | RES 0,L |
||
1279 | RES 0,H |
||
1280 | PUSH HL |
||
1281 | SRL H |
||
1282 | SRL H |
||
1283 | SRL H |
||
1284 | SRL L |
||
1285 | SRL L |
||
1286 | SRL L |
||
1287 | CALL ONLINE |
||
1288 | CALL OFLINE |
||
1289 | POP DE |
||
1290 | PUSH DE |
||
1291 | CALL GETBUF |
||
1292 | POP DE |
||
1293 | PUSH DE |
||
1294 | CALL ARROW |
||
1295 | MRKN CALL MRK1 |
||
1296 | POP DE |
||
1297 | CALL PUTBUF |
||
1298 | CALL COPY21 |
||
1299 | POP AF |
||
1300 | RET;���:C/NC-����� ��� ��� FIRE, A-����� �㭪� ��� 255 (��� ����) |
||
1301 | |||
1302 | INIMNU LD DE,MRK1 ;���� ��� ࠡ��� � ���� |
||
1303 | LD HL,#101 |
||
1304 | IniMB LD (MRKN+1),DE |
||
1305 | LD (MWINX),HL |
||
1306 | LD A,(MY) |
||
1307 | LD (MYOLD),A |
||
1308 | LD (NEW_M),A |
||
1309 | JP ARRINI |
||
1310 | INIBUT LD HL,#FFFF ;���� ��� ࠡ��� � ���⮩ |
||
1311 | LD (MOLD),HL |
||
1312 | LD (MBEG),HL |
||
1313 | LD HL,(MX) |
||
1314 | LD A,#22 |
||
1315 | CP H |
||
1316 | JR C,IB1 |
||
1317 | LD H,A |
||
1318 | IB1 LD A,#C4 |
||
1319 | CP L |
||
1320 | JR C,IB2 |
||
1321 | LD L,A |
||
1322 | IB2 LD (MX),HL |
||
1323 | LD DE,MRK2 |
||
1324 | LD HL,#21C3 |
||
1325 | JR IniMB |
||
1326 | |||
1327 | COPY21 LD HL,MC21 |
||
1328 | LD A,(HL) |
||
1329 | OR A |
||
1330 | RET NZ |
||
1331 | INC (HL) |
||
1332 | LD HL,DSCR+#10A0 |
||
1333 | LD DE,SCR+#10A0 |
||
1334 | LD B,8 |
||
1335 | C210 PUSHs |
||
1336 | LD BC,#60 |
||
1337 | LDIR |
||
1338 | POPs |
||
1339 | INC H |
||
1340 | INC D |
||
1341 | DJNZ C210 |
||
1342 | RET |
||
1343 | |||
1344 | ;----------------- ��������� |
||
1345 | RS254 LD B,0 ;���� ���. |
||
1346 | LD DE,RS |
||
1347 | RS21 LD A,(DE) |
||
1348 | CP 255 |
||
1349 | JR NZ,RS22 |
||
1350 | LD A,B |
||
1351 | PUSH BC |
||
1352 | LD BC,RSCH |
||
1353 | LD L,A |
||
1354 | LD H,0 |
||
1355 | ADD HL,HL |
||
1356 | ADD HL,HL |
||
1357 | ADD HL,BC |
||
1358 | POP BC |
||
1359 | LD A,(HL) |
||
1360 | OR A |
||
1361 | JR Z,RS25 |
||
1362 | PUSH HL |
||
1363 | LD HL,S_GUN |
||
1364 | CALL WA |
||
1365 | OR A |
||
1366 | POP HL |
||
1367 | JR Z,RS22 |
||
1368 | INC HL |
||
1369 | LD A,(HL) |
||
1370 | OR A |
||
1371 | JR Z,RS23 |
||
1372 | DEC HL |
||
1373 | RS25 INC HL |
||
1374 | LD C,(HL) |
||
1375 | INC HL |
||
1376 | LD A,(HL) |
||
1377 | INC HL |
||
1378 | LD H,(HL) |
||
1379 | LD L,A |
||
1380 | RS24 PUSH HL |
||
1381 | LD A,(HL) |
||
1382 | LD HL,RS |
||
1383 | CALL BT |
||
1384 | POP HL |
||
1385 | OR A |
||
1386 | JR NZ,RS22 |
||
1387 | INC HL |
||
1388 | DEC C |
||
1389 | JR NZ,RS24 |
||
1390 | RS23 EXX |
||
1391 | LD BC,80*256 |
||
1392 | LD HL,RS |
||
1393 | RSEX LD A,(HL) ;�� ����� 17 ��� |
||
1394 | INC HL |
||
1395 | CP 254 |
||
1396 | JR NZ,RSE1 |
||
1397 | INC C |
||
1398 | RSE1 DJNZ RSEX |
||
1399 | LD A,C |
||
1400 | CP 17 |
||
1401 | RET NC |
||
1402 | EXX |
||
1403 | LD A,254 |
||
1404 | LD (DE),A |
||
1405 | LD A,B |
||
1406 | INC A |
||
1407 | LD (DSDAT),A |
||
1408 | LD A,51 |
||
1409 | CALL DISPLX |
||
1410 | CALL STOP_T |
||
1411 | JR RS254 |
||
1412 | RS22 INC DE |
||
1413 | INC B |
||
1414 | LD A,B |
||
1415 | CP 80 |
||
1416 | RET NC |
||
1417 | JR C,RS21 |
||
1418 | |||
1419 | ;����������� ��������� |
||
1420 | RSCH DEFW 0,0 |
||
1421 | DEFW 0,0 |
||
1422 | DEFW #302,_R2 |
||
1423 | DEFW #103,_R3 |
||
1424 | DEFW 0,0 |
||
1425 | DEFW #105,_R5 |
||
1426 | DEFW #200,_R6 |
||
1427 | DEFW #300,_R7 |
||
1428 | DEFW #108,_R8 |
||
1429 | DEFW #109,_R9 |
||
1430 | DEFW #10A,_R10 |
||
1431 | DEFW 0,0 |
||
1432 | DEFW #30C,_R12 |
||
1433 | DEFW 0,0 |
||
1434 | DEFW 0,0 |
||
1435 | DEFW #300,_R15 |
||
1436 | DEFW #300+33,_R16 |
||
1437 | DEFW #300,_R17 |
||
1438 | DEFW 0,0 |
||
1439 | DEFW #300,_R19 |
||
1440 | DEFW #200,_R20 |
||
1441 | DEFW 55,0 |
||
1442 | DEFW #100,_R22 |
||
1443 | DEFW 57,0 |
||
1444 | DEFW #100+58,_R24 |
||
1445 | DEFW 59,0 |
||
1446 | DEFW 60,0 |
||
1447 | DEFW #100+61,_R27 |
||
1448 | DEFW 63,0 |
||
1449 | DEFW #200,_R29 |
||
1450 | DEFW #100,_R30 |
||
1451 | DEFW #100,_R31 |
||
1452 | DEFW #100,_R32 |
||
1453 | DEFW 19,0 |
||
1454 | DEFW 20,0 |
||
1455 | DEFW 21,0 |
||
1456 | DEFW 22,0 |
||
1457 | DEFW 23,0 |
||
1458 | DEFW 24,0 |
||
1459 | DEFW #400,_R39 |
||
1460 | DEFW #400,_R40 |
||
1461 | DEFW #300,_R41 |
||
1462 | DEFW #300+33,_R42 |
||
1463 | DEFW #100+25,_R43 |
||
1464 | DEFW 26,0 |
||
1465 | DEFW 27,0 |
||
1466 | DEFW 28,0 |
||
1467 | DEFW 29,0 |
||
1468 | DEFW 30,0 |
||
1469 | DEFW #300+31,_R49 |
||
1470 | DEFW 32,0 |
||
1471 | DEFW #100,_R51 |
||
1472 | DEFW #200,_R52 |
||
1473 | DEFW #200,_R53 |
||
1474 | DEFW #100,_R54 |
||
1475 | DEFW #100,_R55 |
||
1476 | DEFW #300,_R56 |
||
1477 | DEFW #100,_R57 |
||
1478 | DEFW #300+62,_R58 |
||
1479 | DEFW 0,0 |
||
1480 | DEFW #200+35,_R60; |
||
1481 | DEFW #100+36,_R61 |
||
1482 | DEFW #100+37,_R62 |
||
1483 | DEFW #100+38,_R63 |
||
1484 | DEFW #100+39,_R64; |
||
1485 | DEFW #100+40,_R65 |
||
1486 | DEFW #100+41,_R66 |
||
1487 | DEFW #100+42,_R67 |
||
1488 | DEFW #100+43,_R68; |
||
1489 | DEFW #100+44,_R69 |
||
1490 | DEFW #100+45,_R70 |
||
1491 | DEFW #100+46,_R71 |
||
1492 | DEFW #100+47,_R72; |
||
1493 | DEFW #100+48,_R73 |
||
1494 | DEFW #100+49,_R74 |
||
1495 | DEFW #100+50,_R75 |
||
1496 | DEFW #100+51,_R76 |
||
1497 | DEFW #200+52,_R77 |
||
1498 | DEFW #100+53,_R78 |
||
1499 | DEFW #200+54,_R79 |
||
1500 | |||
1501 | _R2 DEFB 3,9,16 |
||
1502 | _R3 DEFB 10 |
||
1503 | _R5 DEFB 8 |
||
1504 | _R6 DEFB 9,5 |
||
1505 | _R7 DEFB 6,10,19 |
||
1506 | _R8 DEFB 50 |
||
1507 | _R9 DEFB 8 |
||
1508 | _R10 DEFB 8 |
||
1509 | _R12 DEFB 2,48,79 |
||
1510 | _R15 DEFB 11,13,14 |
||
1511 | _R16 DEFB 15,23,63 |
||
1512 | _R17 DEFB 16,20,69 |
||
1513 | _R19 DEFB 43,44,50 |
||
1514 | _R20 DEFB 19,42 |
||
1515 | _R22 DEFB 60 |
||
1516 | _R24 DEFB 47 |
||
1517 | _R27 DEFB 78 |
||
1518 | _R29 DEFB 50,64 |
||
1519 | _R30 DEFB 67 |
||
1520 | _R31 DEFB 77 |
||
1521 | _R32 DEFB 62 |
||
1522 | _R39 DEFB 61,33,35,37 |
||
1523 | _R40 DEFB 74,34,36,38 |
||
1524 | _R41 DEFB 76,39,40 |
||
1525 | _R42 DEFB 41,43,44 |
||
1526 | _R43 DEFB 50 |
||
1527 | _R49 DEFB 52,53,55 |
||
1528 | _R51 DEFB 75 |
||
1529 | _R52 DEFB 69,51 |
||
1530 | _R53 DEFB 66,54 |
||
1531 | _R54 DEFB 68 |
||
1532 | _R55 DEFB 73 |
||
1533 | _R56 DEFB 70,45,46 |
||
1534 | _R57 DEFB 65 |
||
1535 | _R58 DEFB 71,56,49 |
||
1536 | _R60 DEFB 62,63 |
||
1537 | _R61 DEFB 21 |
||
1538 | _R62 DEFB 61 |
||
1539 | _R63 DEFB 61 |
||
1540 | _R64 |
||
1541 | _R65 DEFB 22 |
||
1542 | _R66 DEFB 64 |
||
1543 | _R67 DEFB 65 |
||
1544 | _R68 |
||
1545 | _R69 DEFB 23 |
||
1546 | _R70 |
||
1547 | _R71 DEFB 69 |
||
1548 | _R72 |
||
1549 | _R74 DEFB 24 |
||
1550 | _R73 |
||
1551 | _R75 DEFB 72 |
||
1552 | _R76 |
||
1553 | _R78 DEFB 25 |
||
1554 | _R77 |
||
1555 | _R79 DEFB 76,78 |
||
1556 | |||
1557 | RSDAY LD B,0 ;������� ���. |
||
1558 | LD HL,RS |
||
1559 | RY1 LD A,(HL) |
||
1560 | OR A |
||
1561 | JR Z,RY2 |
||
1562 | CP 254 |
||
1563 | JR NC,RY2 |
||
1564 | LD A,(RSN) |
||
1565 | ADD A,4 |
||
1566 | SRL A |
||
1567 | SRL A |
||
1568 | SRL A |
||
1569 | LD D,A |
||
1570 | LD A,(HL) |
||
1571 | SUB D |
||
1572 | JR NC,RY3 |
||
1573 | XOR A |
||
1574 | RY3 LD (HL),A |
||
1575 | OR A |
||
1576 | RET NZ |
||
1577 | INC B |
||
1578 | LD A,B |
||
1579 | LD (DSDAT),A |
||
1580 | LD A,5 |
||
1581 | CALL DISPLX |
||
1582 | LD A,(DSDAT) |
||
1583 | CP 19 |
||
1584 | LD A,6 |
||
1585 | CALL C,DISPL |
||
1586 | CALL STOP_T |
||
1587 | LD HL,R_NUM |
||
1588 | INC (HL) |
||
1589 | JP RS254 |
||
1590 | RY2 INC HL |
||
1591 | INC B |
||
1592 | LD A,B |
||
1593 | CP 80 |
||
1594 | JR C,RY1 |
||
1595 | RET NC |
||
1596 | RY4 CALL RESNUM |
||
1597 | LD HL,R_NUM |
||
1598 | CP A |
||
1599 | RET |
||
1600 | |||
1601 | ;----Program Data |
||
1602 | ;��� � ����� |
||
1603 | MNT DEFB 3,1, 2,8, 3,1, 3,0, 3,1, 3,0, 3,1, 3,1, 3,0, 3,1, 3,0, 3,1 |
||
1604 | ;�������� ����楢 |
||
1605 | MNAME DEFB 15,47,30,18,16,33,47,15 |
||
1606 | DEFB 37,21,18,33,16,28,47,15 |
||
1607 | DEFB 15,29,16,33,35,16,15,15 |
||
1608 | DEFB 15,16,32,33,21,28,47,15 |
||
1609 | DEFB 15,15,29,16,47,15,15,15 |
||
1610 | DEFB 15,15,25,46,30,47,15,15 |
||
1611 | DEFB 15,15,25,46,28,47,15,15 |
||
1612 | DEFB 16,18,19,36,34,35,16,15 |
||
1613 | DEFB 34,21,30,35,47,17,33,47 |
||
1614 | DEFB 31,27,35,47,17,33,47,15 |
||
1615 | DEFB 15,30,31,47,17,33,47,15 |
||
1616 | DEFB 20,21,27,16,17,33,47,15 |
||
1617 | ;�����-��५�窠 |
||
1618 | MRK DEFW #C0,#E0,#F0,#F8,#FC,#FE,#FF,#80FF,#C0FF,#E0FF |
||
1619 | DEFW #F0FF,#F0FF,#F8,#F0,#E0,#C0 |
||
1620 | DEFW #00,#40,#60,#50,#48,#44,#42,#0041,#8040,#4040 |
||
1621 | DEFW #E047,#0048,#50,#60,#40,#00 |
||
1622 | ;���� ����� |
||
1623 | SPM DEFB #40,#E0,#40,0 ;���� |
||
1624 | DEFB #E0,#A0,#E0,0 ;���� |
||
1625 | DEFB #A0,#40,#A0,0 ;��� |
||
1626 | DEFB #50,#F8,#78,0 |
||
1627 | DEFB #E0,#E0,#E0,0 |
||
1628 | DEFB #C0,#C0,0,0 |
||
1629 | DEFB #04,#0C,#04,0 |
||
1630 | DEFB #60,#90,#90,#60 |
||
1631 | DEFB #60,#F0,#F0,#60 |
||
1632 | DEFB #F0,#90,#90,#F0 |
||
1633 | |||
1634 | ;���न����: -��� |
||
1635 | XBASE DEFB 95,19, 123,54, 56,37, 81,64 |
||
1636 | DEFB 22,87, 75,110, 135,105, 171,28 |
||
1637 | ;-���⮢ |
||
1638 | PORT DEFB 98,20, 102,32, 11,20, 28,40 |
||
1639 | DEFB 169,96, 102,12, 161,18, 112,30 |
||
1640 | DEFB 80,23, 92,86, 140,48, 45,95 |
||
1641 | DEFB 24,74, 46,28, 166,53, 74,33 |
||
1642 | ;-����� |
||
1643 | ISLN DEFB 183,101,111,78,51,25,2,35 |
||
1644 | DEFB 161,45,69,68,79,77,84,34 |
||
1645 | DEFB 165,37,90,36,12,96,2,86 |
||
1646 | DEFB 187,45,129,102,136,58,68,40 |
||
1647 | ;-������� |
||
1648 | UCOLON DEFB 154,4,99,7,68,20,168,72 |
||
1649 | DEFB 27,3,133,79,9,65,45,49 |
||
1650 | DEFB 107,107,67,112,177,37,71,80 |
||
1651 | DEFB 11,54,57,9,162,105,113,66 |
||
1652 | ;-���� �ࠣ�� |
||
1653 | UBASE DEFB 56,90,173,110,107,98,180,20 |
||
1654 | DEFB 60,33,120,60,29,106,152,100 |
||
1655 | DEFB 7,2,78,100,82,13,62,62 |
||
1656 | DEFB 139,85,39,36,155,59,178,55 |
||
1657 | ;-��ࠡ�� |
||
1658 | SHIP DEFB 70,88,129,67,64,54,97,39 |
||
1659 | DEFB 25,53,152,77,168,45,12,82 |
||
1660 | DEFB 93,105,71,29,117,83,119,5 |
||
1661 | DEFB 51,57,31,95,186,83,89,9 |
||
1662 | ;-���� |
||
1663 | TLETH DEFB 42,40 |
||
1664 | |||
1665 | ;------------------------------------------ |
||
1666 | SEA_T DEFW SEA0,SEA1,SEA2,SEA3,SEA4 |
||
1667 | |||
1668 | SEABAT ;��� ��� ����� |
||
1669 | CALL SAVMON |
||
1670 | SEB CALL LODALX |
||
1671 | CALL ALEX |
||
1672 | PUSH AF |
||
1673 | CALL LDASM1 |
||
1674 | POP AF |
||
1675 | JR NC,SEB |
||
1676 | PUSH AF |
||
1677 | ADD A,#3B |
||
1678 | LD (MUsea+3),A |
||
1679 | CALL BACK |
||
1680 | LD IX,MUsea |
||
1681 | CALL MENUC |
||
1682 | POP AF |
||
1683 | LD HL,SEA_T |
||
1684 | CALL WT |
||
1685 | JP (HL) |
||
1686 | |||
1687 | MUsea DEFW #404,#FF16 |
||
1688 | SEA0 ;������ ufo |
||
1689 | SEA3 ;������� intr (��� ����) |
||
1690 | CALL TMOF |
||
1691 | SEA3_ LD A,255 |
||
1692 | LD (TARlst),A |
||
1693 | LD (T_UFO),A |
||
1694 | JR SEA2_ |
||
1695 | SEA4 XOR A |
||
1696 | LD (AQU),A |
||
1697 | DEC A |
||
1698 | LD (T_INTR),A ;������ intr |
||
1699 | LD B,10 |
||
1700 | LD HL,AQNAVT |
||
1701 | SEA4_ LD (HL),0 |
||
1702 | LD DE,16 |
||
1703 | ADD HL,DE |
||
1704 | DJNZ SEA4_ |
||
1705 | |||
1706 | SEA2 CALL TMOF ;����� |
||
1707 | SEA2_ CALL OFFS |
||
1708 | CALL GOhome |
||
1709 | JP XMR |
||
1710 | |||
1711 | SEA1 CALL YES_NO |
||
1712 | JR NZ,SEA3_ |
||
1713 | LD A,1 |
||
1714 | LD (MONINI),A |
||
1715 | JP BATTL1 |
||
1716 | |||
1717 | MU55 DEFW #201,#3717 |
||
1718 | DEFW 0 |
||
1719 | DEFW MNY1 |
||
1720 | DEFW MNY2 |
||
1721 | DEFW MNY3 |
||
1722 | DEFW DOLG |
||
1723 | DEFW ITOGO |
||
1724 | DEFW MONEY |
||
1725 | |||
1726 | MNY1 EQU MXDM |
||
1727 | MNY2 EQU MNY1+4 |
||
1728 | MNY3 EQU MNY1+8 |
||
1729 | ITOGO EQU MNY1+12 |
||
1730 | |||
1731 | FINANS ;䨭.��� |
||
1732 | LD HL,#BDBC |
||
1733 | CALL F_O |
||
1734 | CALL XMR |
||
1735 | |||
1736 | F_O LD (MU55+4),HL |
||
1737 | CALL MARK_ |
||
1738 | CALL SAVMON |
||
1739 | CALL BACK |
||
1740 | LD HL,MNY1 |
||
1741 | LD DE,MNY1+1 |
||
1742 | LD (HL),0 |
||
1743 | LD BC,16 |
||
1744 | LDIR |
||
1745 | LD HL,ITOGO |
||
1746 | PUSH HL |
||
1747 | LD A,(RSN) |
||
1748 | OR A |
||
1749 | JR Z,FA1 |
||
1750 | LD IX,MNY1 |
||
1751 | LD B,A |
||
1752 | FA0 LD HL,(ZP) |
||
1753 | PUSH HL |
||
1754 | CALL INCR |
||
1755 | POP HL |
||
1756 | EX (SP),IX |
||
1757 | CALL INCR |
||
1758 | EX (SP),IX |
||
1759 | DJNZ FA0 |
||
1760 | FA1 LD A,(ENG) |
||
1761 | OR A |
||
1762 | JR Z,FA2 |
||
1763 | LD IX,MNY2 |
||
1764 | LD B,A |
||
1765 | FA3 LD HL,(ZP+2) |
||
1766 | PUSH HL |
||
1767 | CALL INCR |
||
1768 | POP HL |
||
1769 | EX (SP),IX |
||
1770 | CALL INCR |
||
1771 | EX (SP),IX |
||
1772 | DJNZ FA3 |
||
1773 | FA2 LD A,(AQU) |
||
1774 | OR A |
||
1775 | JR Z,FA6 |
||
1776 | LD IX,MNY3 |
||
1777 | LD B,A |
||
1778 | FA5 LD HL,(ZP+4) |
||
1779 | PUSH HL |
||
1780 | CALL INCR |
||
1781 | POP HL |
||
1782 | EX (SP),IX |
||
1783 | CALL INCR |
||
1784 | EX (SP),IX |
||
1785 | DJNZ FA5 |
||
1786 | FA6 POP AF |
||
1787 | LD HL,(ITOGO) |
||
1788 | LD DE,(DOLG) |
||
1789 | ADD HL,DE |
||
1790 | LD (ITOGO),HL |
||
1791 | LD HL,(ITOGO+2) |
||
1792 | LD DE,(DOLG+2) |
||
1793 | ADC HL,DE |
||
1794 | LD (ITOGO+2),HL |
||
1795 | LD IX,MU55 |
||
1796 | JP MNU |
||
1797 | |||
1798 | MU56 DEFW 0,#381e |
||
1799 | SMERT LD IX,MU56 |
||
1800 | CALL MNU |
||
1801 | CALL TMOF |
||
1802 | JP EX__ |
||
1803 | |||
1804 | Mn_FIN ;�⮣� �� ��� ��� |
||
1805 | LD A,(RNB) |
||
1806 | LD (RNAgen),A |
||
1807 | LD HL,#BFBE |
||
1808 | CALL F_O |
||
1809 | ;�����? |
||
1810 | LD HL,0 |
||
1811 | LD (DOLG),HL |
||
1812 | LD (DOLG+2),HL |
||
1813 | LD DE,(ITOGO) |
||
1814 | LD HL,(MONEY) |
||
1815 | XOR A |
||
1816 | SBC HL,DE |
||
1817 | LD (MONEY),HL |
||
1818 | LD DE,(ITOGO+2) |
||
1819 | LD HL,(MONEY+2) |
||
1820 | SBC HL,DE |
||
1821 | LD (MONEY+2),HL |
||
1822 | JR C,BAD_M |
||
1823 | ;३⨭� |
||
1824 | LD HL,REYTING |
||
1825 | LD A,(HL) |
||
1826 | LD (HL),0 |
||
1827 | PUSH AF |
||
1828 | ADD A,191 |
||
1829 | LD (MU79+6),A |
||
1830 | LD IX,MU79 |
||
1831 | CALL MNU |
||
1832 | POP AF |
||
1833 | CP 2 |
||
1834 | JR NC,RIP |
||
1835 | ;���>=4 |
||
1836 | LD HL,BASE |
||
1837 | LD BC,#800 |
||
1838 | F_BS LD A,(HL) |
||
1839 | INC HL |
||
1840 | CP 100 |
||
1841 | JR NC,F_BS2 |
||
1842 | INC C |
||
1843 | F_BS2 DJNZ F_BS |
||
1844 | LD A,C |
||
1845 | CP 4 |
||
1846 | JR C,BAD_B |
||
1847 | CALL XEARTH |
||
1848 | CALL LODMON |
||
1849 | CALL INIBUT |
||
1850 | JP STOP_T |
||
1851 | |||
1852 | MU81 DEFW 0,#511E |
||
1853 | MU80 DEFW #602,#501A |
||
1854 | MU79 DEFW #1400,#4F1E,MONEY |
||
1855 | DEFB 192 |
||
1856 | |||
1857 | BAD_B LD IX,MU82 |
||
1858 | JR BAD_ |
||
1859 | BAD_M LD IX,MU80 |
||
1860 | BAD_ CALL MNU |
||
1861 | RIP LD IX,MU81 |
||
1862 | CALL MENUC |
||
1863 | CALL TMOF |
||
1864 | CALL NW_GE |
||
1623 | alone | 1865 | if MUSIC |
1866 | call SETMENUMUSIC |
||
1867 | endif |
||
992 | alone | 1868 | CALL MLOOP |
1869 | MU82 DEFW #802,#5218 |
||
1870 | |||
1871 | ACTD ;����⢨� ��� ���� |
||
1872 | CALL baseUP |
||
1873 | CALL hlthUP |
||
1874 | LD A,(DAT+14) |
||
1875 | LD HL,MNT |
||
1876 | CALL WT |
||
1877 | EX DE,HL |
||
1878 | XOR A |
||
1879 | LD HL,(DAT) |
||
1880 | PUSH HL |
||
1881 | SBC HL,DE |
||
1882 | POP HL |
||
1883 | JR Z,LST_D |
||
1884 | XOR A |
||
1885 | LD DE,#201 |
||
1886 | SBC HL,DE |
||
1887 | RET NZ |
||
1888 | LD A,(DAT+14) |
||
1889 | CP 4 |
||
1890 | RET NZ |
||
1891 | CALL STOP_T |
||
1892 | LD A,30 |
||
1893 | JR B_D |
||
1894 | LST_D LD A,57 |
||
1895 | B_D JP DISPL |
||
1896 | |||
1897 | baseUP LD B,8 |
||
1898 | LD HL,BASE |
||
1899 | BUP0 LD A,(HL) |
||
1900 | OR A |
||
1901 | JR Z,BUP1 |
||
1902 | CP 100 |
||
1903 | JR NC,BUP1 |
||
1904 | CP 9 |
||
1905 | JR C,BUP2 |
||
1906 | SUB 4 |
||
1907 | BUP2 DEC A |
||
1908 | LD (HL),A |
||
1909 | BUP1 INC HL |
||
1910 | DJNZ BUP0 |
||
1911 | RET |
||
1912 | |||
1913 | hlthUP LD A,(DAT+1) |
||
1914 | OR A |
||
1915 | JR Z,HUP1 |
||
1916 | CP 6 |
||
1917 | RET NZ |
||
1918 | HUP1 LD DE,AQNAVT |
||
1919 | LD HL,AQNAVT+6 |
||
1920 | LD B,10 |
||
1921 | HUP0 PUSH BC |
||
1922 | LD A,(HL) |
||
1923 | OR A |
||
1924 | JR Z,HUP2 |
||
1925 | LD A,(DE) |
||
1926 | OR A |
||
1927 | JR Z,HUP2 |
||
1928 | DEC (HL) |
||
1929 | JR NZ,HUP2 |
||
1930 | PUSH HL |
||
1931 | PUSH DE |
||
1932 | DEC A |
||
1933 | LD (DSDAT),A |
||
1934 | LD A,83 |
||
1935 | CALL DISPLX |
||
1936 | POP DE |
||
1937 | POP HL |
||
1938 | HUP2 LD BC,16 |
||
1939 | ADD HL,BC |
||
1940 | EX DE,HL |
||
1941 | ADD HL,BC |
||
1942 | EX DE,HL |
||
1943 | POP BC |
||
1944 | DJNZ HUP0 |
||
1945 | RET |
||
1946 | |||
1947 | ;================= ������� 楫�� ============== |
||
1948 | AN_UFO DEFB 6,9,8,5,7,9,11,13,17 ;���� �-�� �� ��� |
||
1949 | AN_OBJ DEFB 18,19,14,19,17,14,20,21,22,16 ;���� �-�� �� ��ꥪ�� |
||
1950 | |||
1951 | PREBAT ;�।��⠭���� ��� |
||
1952 | CALL SET_U |
||
1953 | CALL SET_AR |
||
1954 | CALL SET_AN |
||
1955 | RET |
||
1956 | |||
1957 | SET_U LD A,(T_UFO) ;⨯ ��� (0..8) T_UFO->L_UFO |
||
1958 | CP 1 |
||
1959 | JR C,SEU0 |
||
1960 | JR Z,SEU1 |
||
1961 | LD A,8 |
||
1962 | JR SEU |
||
1963 | SEU1 CALL RND |
||
1964 | AND 1 |
||
1965 | ADD A,6 |
||
1966 | JR SEU |
||
1967 | SEU0 CALL RND |
||
1968 | AND 7 |
||
1969 | CP 6 |
||
1970 | JR NC,SEU0 |
||
1971 | SEU LD (L_UFO),A |
||
1972 | RET |
||
1973 | |||
1974 | SET_AR ;SET �� (1..5) |
||
1975 | LD A,(L_LAND) |
||
1976 | CP 9 |
||
1977 | JR NZ,SER1 |
||
1978 | LD A,3 |
||
1979 | SER0 LD (A_RASA),A |
||
1980 | RET |
||
1981 | SER1 LD A,(PERIOD) |
||
1982 | LD HL,W_RASA |
||
1983 | CALL DD |
||
1984 | LD C,1 |
||
1985 | CALL R100 |
||
1986 | LD B,A |
||
1987 | XOR A |
||
1988 | SER2 ADD A,(HL) |
||
1989 | INC HL |
||
1990 | CP B |
||
1991 | JR NC,SER3 |
||
1992 | INC C |
||
1993 | LD E,A |
||
1994 | LD A,C |
||
1995 | CP 5 |
||
1996 | LD A,E |
||
1997 | JR C,SER2 |
||
1998 | SER3 LD A,C |
||
1999 | JR SER0 |
||
2000 | |||
2001 | SET_AN LD A,(L_LAND) ;�_�� �ࠣ�� |
||
2002 | OR A |
||
2003 | LD HL,AN_OBJ-1 |
||
2004 | JR NZ,SEN0 |
||
2005 | LD A,(L_UFO) |
||
2006 | LD HL,AN_UFO |
||
2007 | SEN0 CALL BT |
||
2008 | LD (A_NUM),A |
||
2009 | if PROTECT |
||
2010 | CALL CHK_3 |
||
2011 | LD HL,(TX) |
||
2012 | LD A,(CRC3) |
||
2013 | CP L |
||
2014 | CALL NZ,OFFS |
||
2015 | endif |
||
2016 | JP MEM7 |
||
2017 | |||
2018 | ;6 ��ਮ��� ������� ����� |
||
2019 | ;�� �ࠣ�� � % |
||
2020 | W_RASA DEFB 97,1,0,1;1 |
||
2021 | DEFB 50,5,0,5;40 |
||
2022 | DEFB 25,22,5,23;25 |
||
2023 | DEFB 10,20,20,25;25 |
||
2024 | DEFB 1,15,40,14;30 |
||
2025 | DEFB 0,10,70,10;10 |
||
2026 | DEFB 0,2,90,2;6 |
||
2027 | ;�� ��� � % |
||
2028 | W_UFO DEFB 95,95+5;0 |
||
2029 | DEFB 83,83+15;2 |
||
2030 | DEFB 75,75+17;8 |
||
2031 | DEFB 55,55+30;15 |
||
2032 | DEFB 40,40+35;25 |
||
2033 | DEFB 10,10+55;35 |
||
2034 | DEFB 10,10+30;60 |
||
2035 | ;�� 楫�� � % (UFO,sh,port,isl,Xb,Uc;Ub) |
||
2036 | W_OBJ DEFB 90,02,04,05,00,00;00 ; |
||
2037 | DEFB 80,04,10,07,00,00;00 ; ��� Xb,Uc,Ub! |
||
2038 | DEFB 70,07,08,10,00,06;00 |
||
2039 | DEFB 60,08,09,05,03,10;05 |
||
2040 | DEFB 49,11,02,05,08,10;15 |
||
2041 | DEFB 20,05,09,01,25,15;25 |
||
2042 | DEFB 10,05,02,03,70,02;03 |
||
2043 | |||
2044 | OBJ_N DEFB 1 ;(⨯ 0..6) |
||
2045 | OBJ_MOD DEFB 1 ;(����䨪���) |
||
2046 | NEWOBJ ;������� ���.��ꥪ� |
||
2047 | LD A,(PERIOD) |
||
2048 | ADD A,A |
||
2049 | LD B,A |
||
2050 | ADD A,A |
||
2051 | ADD A,B;x6 |
||
2052 | LD HL,W_OBJ |
||
2053 | CALL BA |
||
2054 | LD C,0 |
||
2055 | CALL R100 |
||
2056 | LD B,A |
||
2057 | XOR A |
||
2058 | NJ2 ADD A,(HL) |
||
2059 | INC HL |
||
2060 | CP B |
||
2061 | JR NC,NJ3 |
||
2062 | INC C |
||
2063 | LD E,A |
||
2064 | LD A,C |
||
2065 | CP 6 |
||
2066 | LD A,E |
||
2067 | JR C,NJ2 |
||
2068 | NJ3 LD A,C |
||
1374 | alone | 2069 | ;ld a,2 ;FIXME 2=���� (ࠡ�⠥�) |
2070 | ;ld a,0 ;FIXME 0=���? |
||
2071 | ;ld a,1 ;FIXME 1=��ࠡ��? |
||
2072 | ld a,3 ;FIXME 3=���? |
||
2073 | LD (OBJ_N),A ;(⨯ 0..6) |
||
992 | alone | 2074 | OR A |
1374 | alone | 2075 | JR Z,NJ0 ;0=��� |
992 | alone | 2076 | CP 4 |
1374 | alone | 2077 | JR Z,NJ4 ;4=����? |
992 | alone | 2078 | CALL RNDG ;���,����,����,Ub,Uc (0..15) |
1374 | alone | 2079 | ld a,2 ;FIXME 2=�� �ᥣ�� ���� (��� ���� ���� ���室��) |
2080 | ;ld a,3 ;FIXME 3=��??? |
||
992 | alone | 2081 | AND #F |
2082 | JR NJR |
||
2083 | NJ4 LD B,80 |
||
2084 | NJ4_ CALL RND ;Xb (1..7) |
||
2085 | AND 7 |
||
2086 | JR Z,NJ4_ |
||
2087 | LD C,A |
||
2088 | LD HL,BASE |
||
2089 | CALL BA |
||
2090 | CP 100 |
||
2091 | LD A,C |
||
2092 | JR C,NJR |
||
2093 | DJNZ NJ4_ |
||
2094 | JR NEWOBJ ;��� ����� Xb |
||
2095 | NJ0 LD A,(PERIOD) ;ufo (0..2) |
||
2096 | LD HL,W_UFO |
||
2097 | CALL WA |
||
2098 | CALL R100 |
||
2099 | LD C,0 |
||
2100 | CP (HL) |
||
2101 | JR C,NJ00 |
||
2102 | INC C |
||
2103 | INC HL |
||
2104 | CP (HL) |
||
2105 | JR C,NJ00 |
||
2106 | INC C |
||
2107 | NJ00 LD A,C |
||
2108 | NJR LD (OBJ_MOD),A |
||
2109 | RET |
||
2110 | |||
2111 | RNDG PUSH HL ;���� ��� ��� |
||
2112 | LD HL,(RNAgen) |
||
2113 | INC HL |
||
2114 | LD A,H ;;; |
||
2115 | AND #1F |
||
2116 | LD H,A |
||
2117 | LD A,(RNBgen) |
||
2118 | RRCA |
||
2119 | RRCA |
||
2120 | RRCA |
||
2121 | XOR (HL) |
||
2122 | SUB L |
||
2123 | ADD A,%11101 |
||
2124 | LD (RNAgen),HL |
||
2125 | LD (RNBgen),A |
||
2126 | POP HL |
||
2127 | RET |
||
2128 | |||
2129 | R100 CALL RNDG ; (rnd 1..100) |
||
2130 | AND #7F |
||
2131 | CP 100 |
||
2132 | JR NC,R100 |
||
2133 | INC A |
||
2134 | RET |
||
2135 | |||
2136 | TR_N1 DEFB 198-2,0,202-1,218-1,194-1;��� ���� |
||
2137 | TARh ;������� 楫�� |
||
2138 | LD HL,TARoff |
||
2139 | LD A,(HL) |
||
2140 | OR A |
||
2141 | JR Z,TRon |
||
2142 | DEC (HL) |
||
2143 | RET NZ |
||
2144 | INC HL ;��� |
||
2145 | CALL RNDG |
||
2146 | AND #1F |
||
2147 | ADD A,4 |
||
2148 | ; LD A,6;--------- |
||
2149 | LD (HL),A ;�६� ����� (4..19) |
||
2150 | CALL NEWOBJ |
||
2151 | LD E,A |
||
2152 | LD A,(OBJ_N) |
||
2153 | LD (TARlst),A |
||
2154 | PUSH AF |
||
2155 | LD HL,TR_N1 |
||
2156 | CALL BA |
||
2157 | ADD A,E |
||
2158 | LD (DSDAT),A |
||
2159 | POP AF |
||
2160 | PUSH AF |
||
2161 | OR A |
||
2162 | CALL Z,UFOst |
||
2163 | POP AF |
||
2164 | PUSH AF |
||
2165 | LD HL,T_UFO |
||
2166 | CALL BA |
||
2167 | LD (HL),E |
||
2168 | LD A,84 |
||
2169 | CALL DISPL |
||
2170 | POP AF |
||
2171 | ADD A,85 |
||
2172 | CALL DISPLX |
||
2173 | CALL STOP_T |
||
2174 | JP REMAP |
||
2175 | |||
2176 | TRon INC HL |
||
2177 | DEC (HL) |
||
2178 | RET NZ |
||
2179 | DEC HL |
||
2180 | CALL RNDG |
||
2181 | AND #1F |
||
2182 | ADD A,2;�६� ���� 楫ﬨ (2..33) |
||
2183 | LD (HL),A |
||
2184 | ; LD (HL),1 ;----------- |
||
2185 | ;���� ��� 楫� |
||
2186 | LD A,(TARlst) |
||
2187 | CP 200 |
||
2188 | RET NC |
||
2189 | LD E,A |
||
2190 | LD HL,T_UFO ;楫� �뫠 㭨�⮦��� |
||
2191 | CALL BA |
||
2192 | LD A,(HL) |
||
2193 | CP 200 |
||
2194 | RET NC |
||
2195 | LD A,E |
||
2196 | PUSH AF |
||
2197 | CP 4 |
||
2198 | JR Z,TRxb |
||
2199 | JR NC,TRubc ;��� Ub,Uc |
||
2200 | OR A |
||
2201 | JR Z,TRufo |
||
2202 | LD HL,REYTING ;��� ���,����,��� |
||
2203 | LD A,(HL) |
||
2204 | CP 2 |
||
2205 | JR NC,TR_ |
||
2206 | INC (HL) |
||
2207 | JR TR_ |
||
2208 | TRxb LD A,(T_BAS);��� XB |
||
2209 | LD HL,BASE |
||
2210 | CALL BA |
||
2211 | LD (HL),255 |
||
2212 | JR TR_ |
||
2213 | TRufo LD A,(T_UFO) |
||
2214 | CP 3 |
||
2215 | LD A,92 ;��� ufo |
||
2216 | CALL C,DISPL |
||
2217 | TR_ POP AF |
||
2218 | PUSH AF |
||
2219 | LD HL,T_UFO |
||
2220 | CALL BA |
||
2221 | LD (HL),255 |
||
2222 | TRubc POP AF |
||
2223 | LD HL,T_TYPE |
||
2224 | CP (HL) |
||
2225 | CALL Z,GOhome ;楫� ����ﭠ |
||
2226 | LD A,255 |
||
2227 | LD (TARlst),A |
||
2228 | JP REMAP |
||
2229 | |||
2230 | UFOst ;���� ���� ��� |
||
2231 | PUSH DE |
||
2232 | Ust CALL UFORND |
||
2233 | CALL isSEA |
||
2234 | JR Z,Ust |
||
2235 | LD (UFO),HL |
||
2236 | CALL UFORND |
||
2237 | LD (UFO_T),HL |
||
2238 | POP DE |
||
2239 | RET |
||
2240 | |||
2241 | UFORND CALL RND ;��� ���� |
||
2242 | AND #7F |
||
2243 | CP 116 |
||
2244 | JR NC,UFORND |
||
2245 | LD H,A |
||
2246 | UC1 CALL RND |
||
2247 | CP 190 |
||
2248 | JR NC,UC1 |
||
2249 | LD L,A |
||
2250 | RET |
||
2251 | |||
2252 | |||
2253 | REMAP ;����� ����� |
||
2254 | XOR A |
||
2255 | LD (T_D),A |
||
2256 | LD (T_SW),A |
||
2257 | LD HL,DSCR |
||
2258 | LD DE,SCR |
||
2259 | LD C,8 |
||
2260 | CALL RE_64 |
||
2261 | LD HL,DSCR+#800 |
||
2262 | LD DE,SCR+#800 |
||
2263 | LD C,7 |
||
2264 | RE_64 LD B,8 |
||
2265 | PUSH DE |
||
2266 | PUSH HL |
||
2267 | RE_8 PUSHs |
||
2268 | LDI |
||
2269 | LDI |
||
2270 | LDI |
||
2271 | LDI;4 |
||
2272 | LDI |
||
2273 | LDI |
||
2274 | LDI |
||
2275 | LDI;8 |
||
2276 | LDI |
||
2277 | LDI |
||
2278 | LDI |
||
2279 | LDI;12 |
||
2280 | LDI |
||
2281 | LDI |
||
2282 | LDI |
||
2283 | LDI;16 |
||
2284 | LDI |
||
2285 | LDI |
||
2286 | LDI |
||
2287 | LDI;20 |
||
2288 | LDI |
||
2289 | LDI |
||
2290 | LDI |
||
2291 | LDI;24 |
||
2292 | POPs |
||
2293 | INC H |
||
2294 | INC D |
||
2295 | DJNZ RE_8 |
||
2296 | POP HL |
||
2297 | POP DE |
||
2298 | LD A,L |
||
2299 | ADD A,32 |
||
2300 | LD L,A |
||
2301 | LD A,E |
||
2302 | ADD A,32 |
||
2303 | LD E,A |
||
2304 | DEC C |
||
2305 | JR NZ,RE_64 |
||
2306 | RET |
||
2307 | |||
2308 | |||
2309 | isSEA ;HL - �� ����� ? NZ-��, Z-��� |
||
2310 | PUSH HL |
||
2311 | EX DE,HL |
||
2312 | LD IX,DATA01 |
||
2313 | LD A,E |
||
2314 | AND %111 |
||
2315 | LD (ISE0+2),A |
||
2316 | CALL STD |
||
2317 | CALL PCOORD |
||
2318 | ISE0 LD A,(IX+0) |
||
2319 | AND (HL) |
||
2320 | POP HL |
||
2321 | RET |
||
2322 | |||
2323 | ACTM LD A,(T_D) |
||
2324 | AND 1 |
||
2325 | LD A,1 |
||
2326 | LD (T_D),A |
||
2327 | JR Z,AKM0 |
||
2328 | CALL SHOWD |
||
2329 | AKM0 LD HL,(UFO_T) ;UFO move |
||
2330 | PUSH HL |
||
2331 | LD DE,(UFO) |
||
2332 | CALL LINini |
||
2333 | CALL LINnx_ |
||
2334 | LD (UFO),DE |
||
2335 | POP HL |
||
2336 | XOR A |
||
2337 | SBC HL,DE |
||
2338 | JR NZ,AKM1 |
||
2339 | CALL UFORND |
||
2340 | LD (UFO_T),HL |
||
2341 | AKM1 LD HL,(UFO) ;intr move |
||
2342 | LD A,(T_TYPE) |
||
2343 | OR A |
||
2344 | JR Z,AKM2 |
||
2345 | LD HL,(INTR_T) |
||
2346 | AKM2 PUSH HL |
||
2347 | LD DE,(INTR) |
||
2348 | XOR A |
||
2349 | SBC HL,DE |
||
2350 | POP HL |
||
2351 | JR Z,AKM4 |
||
2352 | PUSH HL |
||
2353 | CALL LINini |
||
2354 | CALL LINnx_ |
||
2355 | LD (INTR),DE |
||
2356 | POP HL |
||
2357 | XOR A |
||
2358 | SBC HL,DE |
||
2359 | JP NZ,SHOWD |
||
2360 | AKM4 LD A,(T_TYPE) |
||
2361 | CP 100 |
||
2362 | JP NC,SHOWD |
||
2363 | OR A |
||
2364 | JR NZ,AKM3 |
||
2365 | LD HL,(UFO) |
||
2366 | CALL isSEA |
||
2367 | JP Z,SHOWD |
||
2368 | LD A,(xHAC2) |
||
2369 | CP #D6 |
||
2370 | JP Z,SEA1 |
||
2371 | CALL BATTLE |
||
2372 | AKM3 ;�맮� ��� |
||
2373 | CALL BATTL1 |
||
2374 | |||
2375 | isTLEF LD A,(RS+58) |
||
2376 | OR A |
||
2377 | RET NZ |
||
2378 | LD (Tleth),A |
||
2379 | RET |
||
2380 | |||
2381 | EVAC ;������� |
||
2382 | CALL BADDER |
||
2383 | JP SEA2_ |
||
2384 | |||
2385 | ALLDIE ;�� ������� |
||
2386 | CALL MEM7 |
||
2387 | CALL BACK |
||
2388 | LD IX,MU93 |
||
2389 | CALL MENUC |
||
2390 | CALL TMOF |
||
2391 | CALL BADDER |
||
2392 | JP SEA4 |
||
2393 | |||
2394 | MU93 DEFW #A02,#5D1A |
||
2395 | |||
2396 | TARRES LD A,(T_TYPE) ;�⪫ 楫� |
||
2397 | PUSH AF |
||
2398 | LD HL,T_UFO |
||
2399 | CALL BA |
||
2400 | LD B,(HL) |
||
2401 | LD (HL),255 |
||
2402 | POP AF |
||
2403 | OR A |
||
2404 | RET |
||
2405 | BADDER ;���娥 १-�� |
||
2406 | CALL TARRES |
||
2407 | RET Z ;��� ��� |
||
2408 | CP 4 |
||
2409 | JR Z,BDxb |
||
2410 | RET NC ;��� Ub,Uc |
||
2411 | LD HL,REYTING ;��� ���,����,��� |
||
2412 | LD A,(HL) |
||
2413 | CP 2 |
||
2414 | RET NC |
||
2415 | INC (HL) |
||
2416 | RET |
||
2417 | BDxb LD A,B;��� XB |
||
2418 | LD HL,BASE |
||
2419 | CALL BA |
||
2420 | LD (HL),255 |
||
2421 | RET |
||
2422 | |||
2423 | POSTBAT ;�⮣� �� ��� |
||
2424 | if PROTECT |
||
2425 | CALL CHECK4 |
||
2426 | endif |
||
2427 | CALL TARRES |
||
2428 | CALL PICKER |
||
2429 | JP U2S |
||
2430 | |||
2431 | CLEAR ;���⪠ �६ �࠭ |
||
2432 | LD HL,U_GUN |
||
2433 | LD B,U_len |
||
2434 | CLE0 LD (HL),0 |
||
2435 | INC HL |
||
2436 | DJNZ CLE0 |
||
2437 | RET |
||
2438 | |||
2439 | PICKER CALL STD ;ᮮ�饭�� � ᮡ� |
||
2440 | CALL OFFD |
||
2441 | LD HL,#5 |
||
2442 | LD (SX),HL |
||
2443 | LD A,199 |
||
2444 | CALL NWRDM |
||
2445 | LD B,0 |
||
2446 | LD HL,#201 |
||
2447 | LD (SX),HL |
||
2448 | PK1 PUSH BC |
||
2449 | LD A,B |
||
2450 | LD HL,U_GUN |
||
2451 | CALL BA |
||
2452 | OR A |
||
2453 | JR Z,PK4 |
||
2454 | PUSH AF |
||
2455 | LD A,B |
||
2456 | CP 15 |
||
2457 | JR C,PK2 |
||
2458 | ADD A,43-15 |
||
2459 | CP 51 |
||
2460 | JR C,PK2 |
||
2461 | ADD A,111-51 |
||
2462 | PK2 CALL NWRDM |
||
2463 | POP AF |
||
2464 | LD HL,SX |
||
2465 | LD (HL),22 |
||
2466 | PUSH HL |
||
2467 | CALL WB |
||
2468 | POP HL |
||
2469 | LD (HL),1 |
||
2470 | INC HL |
||
2471 | INC (HL) |
||
2472 | PK4 POP BC |
||
2473 | INC B |
||
2474 | LD A,B |
||
2475 | CP U_len |
||
2476 | JR C,PK1 |
||
2477 | CALL STS |
||
2478 | CALL OFFS |
||
2479 | CALL COPY |
||
2480 | ATRs #0,#1618,#70 |
||
2481 | LD L,22 |
||
2482 | LD B,6 |
||
2483 | LD A,#68 |
||
2484 | CALL ATRBAR |
||
2485 | CALL PT128 |
||
2486 | JP TMOF |
||
2487 | |||
2488 | UplusS LD A,(DE) |
||
2489 | INC DE |
||
2490 | ADD A,(HL) |
||
2491 | LD (HL),A |
||
2492 | INC HL |
||
2493 | JR NC,UpS |
||
2494 | INC (HL) |
||
2495 | UpS INC HL |
||
2496 | DJNZ UplusS |
||
2497 | RET |
||
2498 | |||
2499 | U2S ;�� U_XXX � S_XXX |
||
2500 | LD B,5 ;�����-����ᨮ���� |
||
2501 | LD HL,U_LIV |
||
2502 | LD DE,S_PROF |
||
2503 | U2S30 LD C,(HL) |
||
2504 | U2S3 LD A,C |
||
2505 | OR A |
||
2506 | JR Z,U2S4 |
||
2507 | DEC C |
||
2508 | CALL RND |
||
2509 | AND %1000 ;⮫쪮 1 �� 2� |
||
2510 | JR Z,U2S7 |
||
2511 | LD A,(S_ART+18) |
||
2512 | INC A |
||
2513 | LD (S_ART+18),A |
||
2514 | JR U2S3 |
||
2515 | U2S7 PUSH HL |
||
2516 | CALL RND |
||
2517 | AND 3 |
||
2518 | LD L,A |
||
2519 | LD H,0 |
||
2520 | ADD HL,HL |
||
2521 | ADD HL,DE |
||
2522 | INC (HL) |
||
2523 | POP HL |
||
2524 | JR U2S3 |
||
2525 | U2S4 INC HL |
||
2526 | PUSH HL |
||
2527 | LD HL,8 |
||
2528 | ADD HL,DE |
||
2529 | EX DE,HL |
||
2530 | POP HL |
||
2531 | DJNZ U2S30 |
||
2532 | ;���� � ��� |
||
2533 | LD B,15 |
||
2534 | LD DE,U_GUN |
||
2535 | LD HL,S_GUN |
||
2536 | CALL UplusS |
||
2537 | LD HL,S_ART |
||
2538 | LD B,10 |
||
2539 | CALL UplusS |
||
2540 | LD HL,S_LIV |
||
2541 | LD B,7 |
||
2542 | CALL UplusS |
||
2543 | LD A,(S_ART+12) |
||
2544 | CP 5 |
||
2545 | JR C,U2S1 |
||
2546 | LD (S_TMP),A ;5 ��-����� |
||
2547 | U2S1 LD A,(L_LAND) |
||
2548 | OR A |
||
2549 | RET NZ |
||
2550 | LD A,(L_UFO) ;⨯ ��� |
||
2551 | LD HL,S_UFO |
||
2552 | CALL WA |
||
2553 | INC (HL) |
||
2554 | RET |
||
2555 | |||
2556 | OFFNUM LD HL,RS-55 ;�⪫ ��� |
||
2557 | LD BC,#80FF |
||
2558 | OFNU LD (HL),C |
||
2559 | INC HL |
||
2560 | DJNZ OFNU |
||
2561 | RET |
||
2562 | |||
2563 | DEMBEL ;������������ |
||
2564 | CALL RNDG |
||
2565 | AND %00011111 |
||
2566 | CP 10 |
||
2567 | RET NC |
||
2568 | ADD A,A |
||
2569 | ADD A,A |
||
2570 | LD HL,AQNAVT |
||
2571 | CALL DD |
||
2572 | LD A,(HL) |
||
2573 | LD (DSDAT),A |
||
2574 | OR A |
||
2575 | RET Z |
||
2576 | INC HL |
||
2577 | LD A,(HL) |
||
2578 | CP 7 |
||
2579 | RET C |
||
2580 | DEC HL |
||
2581 | LD (HL),0 |
||
2582 | LD HL,AQU |
||
2583 | DEC (HL) |
||
2584 | LD A,96 |
||
2585 | CALL DISPLX |
||
2586 | JP STOP_T |
||
2587 | |||
2588 | ;��樨 ================================================= |
||
2589 | MUL480 LD L,A |
||
2590 | LD H,0 |
||
2591 | LD DE,480 |
||
2592 | CALL MUL |
||
2593 | LD HL,ALLDAT |
||
2594 | ADD HL,DE |
||
2595 | RET |
||
2596 | |||
2597 | GAMs DEFB 25,51,65,48,15,0 |
||
2598 | DEFB 15,15,15,0,0,15,0,0,15,0,0,15 |
||
2599 | DEFB 0,0,99,0,0,99,2,0,0,0,#7F |
||
2600 | |||
2601 | GM_DAT ;��ப� ���� (A=1..5) |
||
2602 | LD (GAMs+5),A |
||
2603 | DEC A |
||
2604 | CALL MUL480 |
||
2605 | LD DE,TIM-DATA |
||
2606 | ADD HL,DE |
||
2607 | Ms 3+#C0 |
||
2608 | LD DE,GAMs+9 |
||
2609 | LD BC,8 |
||
2610 | LDIR |
||
2611 | INC DE |
||
2612 | LDI |
||
2613 | LDI |
||
2614 | INC DE |
||
2615 | PUSH DE |
||
2616 | LD BC,10 |
||
2617 | ADD HL,BC |
||
2618 | LD DE,GAMs+26 |
||
2619 | LDI |
||
2620 | LDI |
||
2621 | LD A,(HL) |
||
2622 | INC A |
||
2623 | CALL WTRB |
||
2624 | LD HL,DCS+8 |
||
2625 | POP DE |
||
2626 | LDI |
||
2627 | LDI |
||
2628 | LD HL,GAMs+21 |
||
2629 | LD A,(HL) |
||
2630 | CP 15 |
||
2631 | JP NZ,MEM7 |
||
2632 | LD (HL),0 |
||
2633 | JP MEM7 |
||
2634 | |||
2635 | MU_4CD DEFW #400,#4C1E,T+138 |
||
2636 | DEFB 5 |
||
2637 | |||
2638 | GAMLST LD IX,MU_4CD |
||
2639 | LD (MU_4CD+3),A |
||
2640 | CALL MENU |
||
2641 | LD HL,#E02 |
||
2642 | LD B,5 |
||
2643 | GAL pushs |
||
2644 | LD A,B |
||
2645 | LD (SX),HL |
||
2646 | CALL GM_DAT |
||
2647 | LD HL,GAMs |
||
2648 | LD (TXT),HL |
||
2649 | CALL WORD |
||
2650 | pops |
||
2651 | DEC H |
||
2652 | DJNZ GAL |
||
2653 | CALL INIMNU |
||
2654 | LD HL,SELmr |
||
2655 | LD (sx1+1),HL ;HL-Sub.ADR |
||
2656 | LD (sx2+1),HL |
||
2657 | JP COPYAT |
||
2658 | |||
2659 | LD_M LD A,#4D |
||
2660 | CALL GAMLST |
||
2661 | CALL SELTN |
||
2662 | RET NC |
||
2663 | CALL MUL480 |
||
2664 | LD DE,DATA |
||
2665 | OP_M Ms 3 |
||
2666 | LD BC,DATLEN |
||
2667 | LDIR |
||
2668 | JP MEM7 |
||
2669 | |||
2670 | SV_M LD A,#4C |
||
2671 | CALL GAMLST |
||
2672 | CALL SELTN |
||
2673 | RET NC |
||
2674 | CALL MUL480 |
||
2675 | LD DE,DATA |
||
2676 | EX DE,HL |
||
2677 | JR OP_M |
||
2678 | |||
2679 | MU_4A DEFW #503,#4A16,T+182 |
||
2680 | DEFB 6 |
||
2681 | DO_T DEFW SV_M,LD_M,NW_G,SV_D,LD_D,EX_G |
||
2682 | MU_4B DEFW #B00,#4B18 |
||
2683 | |||
2684 | OPTION ;���.����樨 |
||
2685 | CALL SAVMON |
||
2686 | CALL BACK |
||
2687 | LD IX,MU_4A |
||
2688 | CALL SELM |
||
2689 | JP NC,UP9 |
||
2690 | LD HL,DO_T |
||
2691 | CALL WT |
||
2692 | LD DE,OPTR |
||
2693 | PUSH DE |
||
2694 | JP (HL) |
||
2695 | OPTR JP MLOOP |
||
2696 | |||
2697 | EX_G LD IX,MU_4B |
||
2698 | CALL MENUC |
||
2699 | CALL YES_NO |
||
2700 | RET NZ |
||
2701 | EX__ LD HL,#4000 |
||
2702 | LD DE,#4001 |
||
2703 | LD (HL),E |
||
2704 | LD BC,#2000 |
||
2705 | LDIR |
||
2706 | ;LD BC,#7FFD |
||
2707 | ;XOR A |
||
2708 | ;OUT (C),A |
||
2709 | ;CALL 0 |
||
2710 | jp quit |
||
2711 | |||
2712 | MU_4E DEFW #301,#4E1A |
||
2713 | NW_G LD IX,MU_4E |
||
2714 | CALL MENUC |
||
2715 | CALL YES_NO |
||
2716 | RET NZ |
||
2717 | NW_GE Ms 3+#C0 |
||
2718 | LD HL,NEWDAT |
||
2719 | LD DE,DATA |
||
2720 | LD BC,DATLEN |
||
2721 | LDIR |
||
2722 | CALL MEM7 |
||
2723 | NGG CALL RND |
||
2724 | CP 192 |
||
2725 | JR NC,NGG |
||
2726 | INC A |
||
2727 | LD (N_AQU),A |
||
2728 | LD A,R |
||
2729 | LD (RNBgen+1),A |
||
2730 | LD HL,(RNA) |
||
2731 | LD (RNAgen),HL |
||
2732 | LD A,28 |
||
2733 | LD (SYSINI),A |
||
2734 | RET |
||
2735 | |||
2736 | SV_D LD IX,MU53 |
||
2737 | LD A,194 |
||
2738 | LD (MU53+4),A |
||
2739 | CALL MENUC |
||
2740 | CALL YES_NO |
||
2741 | RET NZ |
||
2742 | if PROTECT |
||
2743 | CALL CHK_2 ;[] |
||
2744 | LD HL,(CRC2) |
||
2745 | OR A |
||
2746 | SBC HL,BC |
||
2747 | JR NZ,LD_RTN |
||
2748 | endif |
||
2749 | LD_RTR Ms 3+#80 |
||
2750 | LD_RTN LD DE,DSCR+1 |
||
2751 | LD HL,ALLDAT |
||
2752 | LD BC,480*5 |
||
2753 | LDIR |
||
2754 | LD HL,C_ONOF |
||
2755 | LD C,CFGLEN |
||
2756 | LDIR |
||
2757 | LD HL,DATA |
||
2758 | LD BC,600 |
||
2759 | LDIR |
||
2760 | if PROTECT |
||
2761 | CALL XORDAT |
||
2762 | LD (DSCR),A |
||
2763 | endif |
||
2764 | CALL MEM7 |
||
2765 | ;save DSCR,4k |
||
2766 | CALL S_DSCR |
||
2767 | CALL OFFD |
||
2768 | ;load DSCR,4k |
||
2769 | CALL L_DSCR |
||
2770 | Ms 3+#80 |
||
2771 | if PROTECT |
||
2772 | CALL XORDAT |
||
2773 | CALL XORDAT |
||
2774 | LD HL,DSCR |
||
2775 | CP (HL) |
||
2776 | JR NZ,LD_RTR |
||
2777 | endif |
||
2778 | JP MEM7 |
||
2779 | |||
2780 | MU53 DEFW #901,#351A |
||
2781 | DEFB 196 |
||
2782 | |||
2783 | LD_D LD IX,MU53 |
||
2784 | LD A,195 |
||
2785 | LD (MU53+4),A |
||
2786 | CALL MENUC |
||
2787 | CALL YES_NO |
||
2788 | RET NZ |
||
2789 | ;load DSCR,4k |
||
2790 | CALL L_DSCR |
||
2791 | Ms 3+#40 |
||
2792 | if PROTECT |
||
2793 | CALL XORDAT |
||
2794 | CALL XORDAT |
||
2795 | LD HL,DSCR |
||
2796 | CP (HL) |
||
2797 | JP NZ,LD_ER |
||
2798 | CALL XORDAT |
||
2799 | endif |
||
2800 | LD HL,DSCR+1 |
||
2801 | LD DE,ALLDAT |
||
2802 | LD BC,480*5 |
||
2803 | LDIR |
||
2804 | LD DE,C_ONOF |
||
2805 | LD C,CFGLEN |
||
2806 | LDIR |
||
2807 | LD DE,DATA |
||
2808 | LD BC,DATLEN |
||
2809 | LDIR |
||
2810 | JP MEM7 |
||
2811 | |||
2812 | SET_LS XOR A |
||
2813 | LD (SIDE),A |
||
2814 | LD HL,DSCR |
||
2815 | LD B,16 |
||
2816 | LD DE,#201 |
||
2817 | RET |
||
2818 | |||
2819 | L_DSCR CALL LDASM3 |
||
2820 | LD B,3 |
||
2821 | L_DS PUSH BC |
||
2822 | CALL TR000 |
||
2823 | CALL SET_LS |
||
2824 | L_D1 PUSH BC |
||
2825 | LD B,1 |
||
2826 | CALL D_READ |
||
2827 | POP BC |
||
2828 | JR C,L_D_ER |
||
2829 | DEC H |
||
2830 | DEC H |
||
2831 | DEC H |
||
2832 | DJNZ L_D1 |
||
2833 | POP BC |
||
2834 | JP LDASM2 |
||
2835 | L_D_ER POP BC |
||
2836 | DJNZ L_DS |
||
2837 | JP LDASM2 |
||
2838 | |||
2839 | S_DSCR CALL LDASM3 |
||
2840 | CALL TR000 |
||
2841 | CALL SET_LS |
||
2842 | CALL D_WRITE |
||
2843 | JP LDASM2 |
||
2844 | |||
2845 | if PROTECT |
||
2846 | XORDAT ;xor DSCR+1,len=3000 CRC->A |
||
2847 | LD A,#A9 |
||
2848 | EX AF,AF |
||
2849 | LD HL,DSCR+1 |
||
2850 | LD DE,SCR+200 |
||
2851 | LD BC,3000 |
||
2852 | XD0 LD A,(DE) |
||
2853 | XOR (HL) |
||
2854 | LD (HL),A |
||
2855 | EX AF,AF |
||
2856 | XOR (HL) |
||
2857 | EX AF,AF |
||
2858 | INC DE |
||
2859 | INC HL |
||
2860 | DEC BC |
||
2861 | LD A,C |
||
2862 | OR B |
||
2863 | JR NZ,XD0 |
||
2864 | EX AF,AF |
||
2865 | RET |
||
2866 | |||
2867 | PUSH AF |
||
2868 | CHECK4 ; []#4 |
||
2869 | LD A,70 |
||
2870 | LD HL,TAB100+7 |
||
2871 | CALL BT |
||
2872 | RRCA |
||
2873 | RRCA |
||
2874 | LD C,A |
||
2875 | LD A,22 |
||
2876 | CALL BA |
||
2877 | CP C |
||
2878 | RET Z |
||
2879 | POP AF |
||
2880 | JP B_LOOP |
||
2881 | endif |
||
2882 | |||
2883 | LD_ER CALL XEARTH |
||
2884 | CALL COPYAT |
||
2885 | LD IX,MU54 |
||
2886 | CALL BEEP |
||
2887 | JP MNU |
||
2888 | MU54 DEFW #307,#3610 |
||
2889 |