?login_element?

Subversion Repositories NedoOS

Rev

Rev 881 | Rev 1000 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download

  1. ;Процедуры вывода "Об игре" и "Об авторах"
  2. ;
  3. ;ABOUT
  4.  
  5. ;Эти переменные нужно взять
  6. ;из основной программы, либо компилировать
  7. ;в составе основной проги!
  8. ;--------------------
  9. ;PG_VIEW EQU 7
  10. ;PAGE   EQU 0
  11. ;MKEYSp1  EQU 0
  12. ;CURSCR EQU 0
  13. ;PR64   EQU 0
  14. ;IM2M2  EQU 0
  15. ;IM2N   EQU 0
  16. ;--------------------
  17.  
  18. PRINTER
  19. ;d=0..1
  20. ;       LD A,16
  21. ;       LD (CURSCR-1),A
  22.         CALL PAGE_PG_VIEW
  23.  
  24.         PUSH BC
  25.         PUSH DE
  26.  
  27. PRTER   XOR A
  28.         LD (MKEYSp1),A
  29.  
  30.         LD DE,#1800
  31.         LD HL,#D800
  32.         LD BC,32
  33. PRTLP0  LD (HL),E
  34.         CPI
  35.         JP PE,PRTLP0
  36.         HALT
  37.         DEC D
  38.         JR NZ,PRTLP0-3
  39.  
  40.         LD HL,#C000
  41.         LD DE,#C001
  42.         LD BC,6143
  43.         LD (HL),L
  44.         LDIR
  45.  
  46.         POP DE
  47.         POP BC
  48.         LD A,D      ;Если D=1 - заходим в описание первый раз
  49.         OR E        ;Если DE=0 - выход из описания в меню
  50.         RET Z
  51.         DEC D
  52.         JR Z,PRTLP1
  53.         INC D
  54.         JR PRTLP2   ;Продолжение описания с адреса DE
  55. PRTLP1  LD HL,#1203 ;координаты
  56.         LD DE,ABGM1 ;об игре
  57.         INC C
  58.         DEC C
  59.         JR Z,PRTLP2
  60.         LD DE,AUTR  ;об авторах
  61. PRTLP2  CALL PR64
  62.  
  63. ;можно юзать токен смены координат: 0,1,X,Y
  64.  
  65.         INC DE
  66.         LD A,(DE)
  67.         DEC A
  68.         JR NZ,PRTLP5
  69.         INC DE
  70.         EX DE,HL
  71.         LD D,(HL)
  72.         INC HL
  73.         LD E,(HL)
  74.         INC HL
  75.         EX DE,HL
  76.         JR PRTLP2
  77.  
  78. PRTLP5
  79.         EX DE,HL
  80.         INC HL
  81.         LD D,(HL)
  82.         INC HL
  83.         LD E,(HL)
  84.         INC HL
  85.         LD A,(HL)
  86.         INC HL
  87.         LD C,(HL)
  88.         INC HL
  89.         LD B,(HL)
  90.         EX DE,HL
  91.         PUSH BC
  92.         PUSH BC
  93.  
  94.         LD DE,#D800
  95.         LD B,23
  96. PRTLP4  PUSH BC
  97.         ADD HL,HL
  98.         ADC A,A
  99.         CALL ATRLIN
  100.         POP BC
  101.         DJNZ PRTLP4
  102.        
  103. ;Ожид. клавишу
  104. PRTLP3  LD H,25 ;скорость мигания во фреймах
  105.         HALT
  106.         LD A,(MKEYSp1)
  107.         AND %00010000 ;Fire
  108.         LD B,A
  109.         LD A,(KEYSp1)
  110.         AND %10000000 ;Enter
  111.         OR B
  112.         JR NZ,PRTER
  113.         DEC H
  114.         JR NZ,PRTLP3+2
  115.         LD DE,#DAE0
  116.         LD A,6  ;Цвет мигания
  117.         XOR 6
  118.         LD ($-1),A
  119.         LD C,A
  120.         CALL ATRLP
  121.         JR PRTLP3
  122.  
  123. ATRLIN  LD C,7
  124.         JR NC,$+4
  125.         LD C,4
  126. ATRLP   LD B,32
  127.         EX DE,HL
  128.         LD (HL),C
  129.         INC HL
  130.         DJNZ $-2
  131.         EX DE,HL
  132.         RET
  133.  
  134. AUTR
  135.         DB "Художник",13
  136.         DB "Кирилл Каган (Surfin Bird)",13,13
  137. ;       DB "Александр Шушков (Axor)",13
  138. ;       DB "Дмитрий Патютько (Pulsar)",13,13
  139.  
  140.         DB "Композиторы:",13
  141.         DB "Дмитрий Жемков (C-jeff)",13
  142.         DB "Андрей Пеунов (Bedjamen)",13
  143.         DB "n1k-o",13,13
  144.  
  145.         DB "Программисты:",13
  146.         DB "Александр Шушков (Axor)",13
  147.         DB "Александр Синяков (SAM style)",13
  148.         DB "Сергей Бульба",13
  149.         DB "Дмитрий Быстров (Alone Coder)",13,13
  150.  
  151.         DB "Авторы сценария:",13
  152.         DB "Владимир Сивов",13
  153.         DB "Александр Разумов",13,13
  154.  
  155.         DB "(c) 2003-2008, Perspective",0
  156.  
  157. ;       DB "Антон Яковлев (scl)",13
  158. ;       DB "Александр Шушков (Axor)",0
  159.         DB 1,58,23,"В меню",0,2
  160.         DB %00010000,%01000000 ;атрибутная раскраска по строкам
  161.         DB %00010010
  162.         DW 0        ;адрес продолжения текста, 0,0-конец
  163.  
  164. ABGM1   INCBIN "VERA_ZX1.C" ;текст об игре1
  165.         DB 0
  166.         DB 0,0,64
  167.         DW ABGM2
  168.  
  169. ABGM2   INCBIN "VERA_ZX2.C" ;текст об игре2
  170.         DS 6
  171.  
  172.