.CHARSET 1251 ; Файл lunolet_xxi_102 .ORG 0 P X=0 A34 1 , 6 2 M 4 2 1 5 0 M 5 3 6 6 0 M 6 1 7 3 8 EE 3 M 7 3 5 0 0 M D CX M 0 M B M C A34: ; с адреса 0 M 1 M E M 3 M 8 P M 20 P M 23 P M 24 P M 25 P M 26 P M 27 P M 30 PP M 9045 ; Размерность аргумента тригонометрических функций RM 7 M A 6 3 P M 21 RM 4 P M 29 P GSB A473 A67: ; с адреса 386 RM A A68: ; с адреса 462 M A RM 8 9 , 8 1 ENT 3 * - P X>=0 A107 ;***** K INT -> точное значение берем.. K NOP ;**** и оставляем K НОП для возможности быстро восстановить M 2 0 7 2 8 PP M 9026 ; Вывод строки из памяти программ CX ENT RM 8 9 , 8 1 / RM 2 R/S RM 2 ENT CX <-> P GOTO A350 A107: ; с адреса 78 RM A RM 7 - M 3 P GSB A686 RM 3 1 0 0 / 6 3 <-> - P M 21 RM E 1 0 0 / P M 30 ENT ENT 1 2 8 / P X<0 A143 1 - A143: ; с адреса 138 K INT P M 31 ENT P RM 23 - P X!=0 A172 P X<0 A161 1 +/- P GOTO A162 A161: ; с адреса 153 1 A162: ; с адреса 158 P M 25 P GSB A473 P RM 30 P RM 31 ENT A172: ; с адреса 150 F R P M 23 <-> P X<0 A183 <-> 1 + <-> A183: ; с адреса 176 <-> 1 2 8 * - P M 20 P RM 21 <-> RM E P X<0 A206 F R 1 2 8 + P M 20 ENT A206: ; с адреса 195 F R PP M 9011 ; Вывод точки RM 3 P RM 20 1 0 0 1 + M 3 <-> K RM 3 1 0 0 * - M 3 P X<0 A291 CX M 3 RM B F X^2 RM 0 F X^2 + F SQRT 3 - P X>=0 A250 0 7 5 1 P GOTO A276 A250: ; с адреса 240 P RM 20 1 + M 2 K RM 2 ENT K RM 2 - K RM 2 - + P X!=0 A272 0 7 5 1 P GOTO A276 A272: ; с адреса 262 0 7 4 4 A276: ; с адреса 247, 269 PP M 9026 ; Вывод строки из памяти программ P GSB A686 RM E 3 F 10^X / RM 0 RM B RM 3 K SCR R/S A291: ; с адреса 227 P RM 27 P X!=0 A318 K RAN 5 0 * K INT P X=0 A307 1 P M 28 A307: ; с адреса 301 K GRPH P GSB A702 2 2 2 - P X=0 A344 A318: ; с адреса 293 CX P M 27 0 7 1 2 PP M 9026 ; Вывод строки из памяти программ RM 4 RM A / F SQRT RM 7 * RM 0 RM B RM 3 R/S P X=0 A350 1 P M 27 A344: ; с адреса 315 CX ENT ENT 1 2 0 A350: ; с адреса 104, 338 M 2 RM 1 + K INT M 1 F R M 8 F R M 9 P RM 28 P X!=0 A377 RM 4 1 , 0 1 * M 4 CX P M 28 P GOTO A380 A377: ; с адреса 361 P RM 29 M 4 A380: ; с адреса 374 RM 8 RM 2 / RM D RM 8 - P X>=0 A67 M D RM 8 + ;***** назад к массе топлива до маневра (для совместимости с Лунолет-1) RM 5 + / RM 6 * M 8 RM 0 RM 8 RM 9 F SIN * RM B +/- P GSB A465 + M 0 P GSB A469 9 0 * F PI / RM A / RM C + ENT F SIN K SGN <-> F COS F ARCCOS * M C RM 7 F PI * * 1 8 0 / M E RM B RM 8 RM 9 F COS * RM 7 RM A / F X^2 RM 4 * - RM 0 P GSB A465 + M B P GSB A469 2 / RM A + P GOTO A68 A465: ; с адреса 403, 450 RM 0 * RM A / A469: ; с адреса 408, 455 + RM 2 * RTN A473: ; с адреса 64, 164 RM C F COS P X<0 A485 3 PP M 9010 ; Инициализация экрана P GOTO A508 A485: ; с адреса 475 2 PP M 9010 ; Инициализация экрана CX ENT RM C 2 / 5 5 <-> - PP M 9000 ; Начальные координаты объекта 0 7 6 1 PP M 9015 ; Вывод образа из памяти программ A508: ; с адреса 482 RM 4 P M 16 RM 0 P M 17 RM 1 P M 18 RM 3 P M 19 CX M 2 9 9 9 M 4 1 1 2 8 M 3 P RM 25 P X>=0 A544 P RM 24 M 1 P M 26 P GOTO A549 A544: ; с адреса 533 P RM 26 M 1 P M 24 A549: ; с адреса 541 1 2 8 M 0 A553: ; с адреса 650 P RM 30 K ABS 1 2 8 - P X>=0 A591 K RAN 9 * K INT ENT P X=0 A575 M 2 P GOTO A594 A575: ; с адреса 568 1 - P X=0 A585 1 M 2 P GOTO A594 A585: ; с адреса 577 <-> 2 - P X=0 A594 A591: ; с адреса 560 1 +/- M 2 A594: ; с адреса 572, 582, 588 RM 1 RM 2 + P X<0 A602 0 M 2 A602: ; с адреса 597 ENT ENT 3 5 - P X>=0 A614 <-> 1 +/- M 2 A614: ; с адреса 607 <-> M 1 P RM 25 P X>=0 A628 4 M 9 RM 1 K M 4 P GOTO A632 A628: ; с адреса 618 3 M 9 RM 1 K M 3 A632: ; с адреса 625 6 3 <-> - K RM 9 3 F 10^X - PP RM 9001 ; Атрибуты вывода P X=0 A650 F R PP M 9011 ; Вывод точки A650: ; с адреса 643 PF L0 A553 P RM 25 P X<0 A664 RM 1 P M 26 P GOTO A667 A664: ; с адреса 655 RM 1 P M 24 A667: ; с адреса 661 P RM 16 M 4 P RM 17 M 0 P RM 18 A675: ; с адреса 652 M 1 P X=0 A682 PP M 1000 A682: ; с адреса 676 P RM 19 M 3 RTN A686: ; с адреса 111, 279 4 PP M 9001 ; Атрибуты вывода P RM 21 P RM 20 PP M 9011 ; Вывод точки 0 PP M 9001 ; Атрибуты вывода RTN A702: ; с адреса 308, 706 PP RM 9029 ; Чтение кода клавиши и очистка буфера K NOT P X!=0 A702 RTN .DB 82h, 0A2h, 0A5h, 0A4h, 0A8h, 0E2h, 0A5h, 20h, 0ACh, 0A0h, 0ADh .DB 0A5h, 0A2h, 0E0h, 3Ah, 0h, 8Fh, 85h, 90h, 85h, 83h, 90h .DB 93h, 87h, 8Ah, 80h, 21h, 20h, 2Eh, 2Eh, 2Eh, 0h, 8Fh .DB 8Eh, 91h, 80h, 84h, 8Ah, 80h, 21h, 0h, 80h, 82h, 80h .DB 90h, 88h, 9Fh, 21h, 21h, 21h, 0h, 12h, 11h, 0C0h, 07h .DB 0h, 30h, 18h, 0h, 08h, 20h, 0h, 04h, 40h, 0h, 3Eh .DB 80h, 0h, 7Eh, 0FCh, 0h, 7Fh, 0FEh, 01h, 0FFh, 0FFh, 01h .DB 0FFh, 7Fh, 01h, 0FFh, 3Fh, 01h, 0FFh, 1Ch, 01h, 0FFh, 18h .DB 01h, 3Eh, 80h, 0h, 1Eh, 80h, 0h, 04h, 40h, 0h, 08h .DB 3Ch, 0h, 30h, 1Fh, 0h, 0C0h, 07h, 0h, 0FFh, 0FFh, 0FFh .DB 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh .DB 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh .DB 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh .DB 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh .DB 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh .DB 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh .DB 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh, 0FFh .DB 0FFh .END