?login_element?

Subversion Repositories NedoOS

Rev

Rev 1001 | 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_SCREEN=0x4000;#c000
  19.  
  20. PRINTER
  21. ;d=0..1
  22. ;       LD A,16
  23. ;       LD (CURSCR-1),A
  24.         CALL PAGE_PG_VIEW
  25.  
  26.         PUSH BC
  27.         PUSH DE
  28.        if EGA
  29.         xor a
  30.         ld (curscrnum_int),a
  31.         ld e,a
  32.         OS_SETSCREEN
  33.         ;ld a,(user_scr1_high) ;ok
  34.         ;SETPGC000
  35.        endif
  36.  
  37. PRTER   XOR A
  38.         LD (MKEYSp1),A
  39.  
  40.         LD DE,#1800
  41.         LD HL,PRINTER_SCREEN+0x1800;#D800
  42.         LD BC,32
  43. PRTLP0  LD (HL),E
  44.         CPI
  45.         JP PE,PRTLP0
  46.         HALT
  47.         DEC D
  48.         JR NZ,PRTLP0-3
  49.  
  50.         LD HL,PRINTER_SCREEN;#C000
  51.         LD DE,PRINTER_SCREEN+1;#C001
  52.         LD BC,6143
  53.         LD (HL),L
  54.         LDIR
  55.  
  56.         POP DE
  57.         POP BC
  58.         LD A,D      ;Если D=1 - заходим в описание первый раз
  59.         OR E        ;Если DE=0 - выход из описания в меню
  60.         RET Z
  61.         DEC D
  62.         JR Z,PRTLP1
  63.         INC D
  64.         JR PRTLP2   ;Продолжение описания с адреса DE
  65. PRTLP1
  66.        if RUS
  67.         LD HL,#1202;3 ;координаты
  68.        else
  69.         LD HL,#1201;3 ;координаты
  70.        endif
  71.         LD DE,ABGM1 ;об игре
  72.         INC C
  73.         DEC C
  74.         JR Z,PRTLP2
  75.         LD DE,AUTR  ;об авторах
  76. PRTLP2  CALL PR64
  77.  
  78. ;можно юзать токен смены координат: 0,1,X,Y
  79.  
  80.         INC DE
  81.         LD A,(DE)
  82.         DEC A
  83.         JR NZ,PRTLP5
  84.         INC DE
  85.         EX DE,HL
  86.         LD D,(HL)
  87.         INC HL
  88.         LD E,(HL)
  89.         INC HL
  90.         EX DE,HL
  91.         JR PRTLP2
  92.  
  93. PRTLP5
  94.         EX DE,HL
  95.         INC HL
  96.         LD D,(HL)
  97.         INC HL
  98.         LD E,(HL)
  99.         INC HL
  100.         LD A,(HL)
  101.         INC HL
  102.         LD C,(HL)
  103.         INC HL
  104.         LD B,(HL)
  105.         EX DE,HL
  106.         PUSH BC
  107.         PUSH BC
  108.  
  109.         LD DE,PRINTER_SCREEN+0x1800;#D800
  110.         LD B,23
  111. PRTLP4  PUSH BC
  112.         ADD HL,HL
  113.         ADC A,A
  114.         CALL ATRLIN
  115.         POP BC
  116.         DJNZ PRTLP4
  117.        
  118. ;Ожид. клавишу
  119. PRTLP3  LD H,25 ;скорость мигания во фреймах
  120.         HALT
  121.         LD A,(MKEYSp1)
  122.         AND %00010000 ;Fire
  123.         LD B,A
  124.         LD A,(KEYSp1)
  125.         AND %10000000 ;Enter
  126.         OR B
  127.         JR NZ,PRTER
  128.         DEC H
  129.         JR NZ,PRTLP3+2
  130.         LD DE,PRINTER_SCREEN+0x1ae0;#DAE0
  131.         LD A,6  ;Цвет мигания
  132.         XOR 6
  133.         LD ($-1),A
  134.         LD C,A
  135.         CALL ATRLP
  136.         JR PRTLP3
  137.  
  138. ATRLIN  LD C,7
  139.         JR NC,$+4
  140.         LD C,4
  141. ATRLP   LD B,32
  142.         EX DE,HL
  143.         LD (HL),C
  144.         INC HL
  145.         DJNZ $-2
  146.         EX DE,HL
  147.         RET
  148.  
  149. AUTR
  150.        if RUS
  151.         DB "Художник",13
  152.         DB "Кирилл Каган (Surfin Bird)",13
  153.         db "(цвет - Sergio Neznany)",13
  154.         db 13
  155.  
  156.         DB "Композиторы:",13
  157.         DB "Дмитрий Жемков (C-jeff)",13
  158.         DB "Андрей Пеунов (Bedjamen)",13
  159.         DB "n1k-o",13,13
  160.  
  161.         DB "Программисты:",13
  162.         DB "Александр Шушков (Axor)",13
  163.         DB "Александр Синяков (SAM style)",13
  164.         DB "Сергей Бульба",13
  165.         DB "Дмитрий Быстров (Alone Coder)",13,13
  166.  
  167.         DB "Авторы сценария:",13
  168.         DB "Владимир Сивов",13
  169.         DB "Александр Разумов",13,13
  170.        else
  171.         DB "Graphics:",13
  172.         DB "Kirill Kagan (Surfin' Bird)",13
  173.         db "(colour - Sergio Neznany)",13
  174.         db 13
  175.  
  176.         DB "Music:",13
  177.         DB "Dmitry Zhemkov (C-jeff)",13
  178.         DB "Andrey Peunov (Bedjamen)",13
  179.         DB "n1k-o",13,13
  180.  
  181.         DB "Code:",13
  182.         DB "Aleksandr Shushkov (Axor)",13
  183.         DB "Aleksandr Sinyakov (SAM style)",13
  184.         DB "Sergey Bulba",13
  185.         DB "Dmitry Bystrov (Alone Coder)",13,13
  186.  
  187.         DB "Script:",13
  188.         DB "Vladimir Sivov",13
  189.         DB "Aleksandr Razumov",13
  190.         db "(English - Serg Yakimovich)",13
  191.         db "(Proofreading - Equinox)",13
  192.         db 13
  193.        endif
  194.  
  195.         DB "(c) 2003-2008, Perspective",0
  196.  
  197.        if RUS
  198.         DB 1,58,23,"В меню",0,2
  199.        else
  200.         DB 1,58,23," Back",0,2
  201.        endif
  202.        
  203.        if RUS
  204.         DB %00010000,%01000000 ;атрибутная раскраска по строкам
  205.         DB %00100010
  206.        else
  207.         DB %00100000,%10000000 ;атрибутная раскраска по строкам
  208.         DB %01000100
  209.        endif
  210.         DW 0        ;адрес продолжения текста, 0,0-конец
  211.  
  212. ABGM1   ;INCBIN "VERA_ZX1.C" ;текст об игре1
  213.        if RUS
  214.         db 0,1,14,1,"Вера",0,1,0,3
  215.        else
  216.         db 0,1,14,1,"Vera",0,1,0,3
  217.        endif
  218.        if RUS
  219.         db "  Холодный  северный  ветер, свистевший в голых ветвях деревьев,",13
  220.         db "подгонял   низко   летящие  тяжелые  свинцовые  тучи,  грозившие",13
  221.         db "разразиться  долгим и нудным дождем. Иногда среди них появлялись",13
  222.         db "просветы,  но  они  были  настолько  малы, что убывающий бледный",13
  223.         db "месяц  едва  помещался  в  них и с трудом разгонял тот мрак, что",13
  224.         db "царил сейчас вокруг.",13
  225.         db 13
  226.         db "  Деревянные  полусгнившие столбы, поддерживающие потрескавшиеся",13
  227.         db "изваяния древних идолов, окружили заброшенное капище и угрожающе",13
  228.         db "поскрипывали,  как  будто  предупреждая  чужаков, без разрешения",13
  229.         db "вторгшихся на запретную территорию о том, что подобное кощунство",13
  230.         db "не останется безнаказанным."
  231.         db 13
  232.         db "  Их  было  двое.  Один, высокий и худой, закутанный в балахон -",13
  233.         db "черный   колдун  Зловет.  Он  лихорадочно  разгребал  деревянной",13
  234.         db "лопатой  землю  на вершине небольшого кургана, время от времени,",13
  235.         db "издавая странные звуки, похожие то на хриплый зловещий шепот, то",13
  236.         db "на страшные завывания жуткого зверя."
  237.        else
  238.         db "  The cold north wind whistled in the bare branches of trees and",13
  239.         db "drove the  heavy leaden clouds  that threatened to burst  into a",13
  240.         db "long boring rain. Sometimes gaps appeared between them, but they",13
  241.         db "were  so small  that the  pale waning moon  barely fit into them",13
  242.         db "and only partially dispelled the darkness that reigned around.",13
  243.         db 13
  244.         db "  Half-decayed  wooden  pillars supported the cracked statues of",13
  245.         db "ancient  idols  that surrounded the abandoned temple and creaked",13
  246.         db "with  menace,  as  if  to  warn strangers  who  might invade the",13
  247.         db "forbidden territory without permission that such blasphemy would",13
  248.         db "not remain unpunished.",13
  249.         db 13
  250.         db "  There  were two of them. The first one, tall and thin, wrapped",13
  251.         db "in a hooded cloak, was the black sorcerer Evilon. He frantically",13
  252.         db "raked  the earth  at the  top  of a  small mound  with a  wooden",13
  253.         db "shovel. From time to time, he made strange sounds, like a hoarse",13
  254.         db "ominous whisper, then like the howls of a terrible beast.",13
  255.        endif
  256.  
  257.        if RUS
  258.         db 0,1,59,23,"Далее",0
  259.        else
  260.         db 0,1,59,23,"Next",0
  261.        endif
  262.  
  263.         DB 0
  264.         DB 0,0,64
  265.         DW ABGM2
  266.  
  267. ABGM2   ;INCBIN "VERA_ZX2.C" ;текст об игре2
  268.         db 0,1,0,1
  269.        if RUS
  270.         db "  Вторым  участником  этой  сцены  был волк-оборотень, по кличке",13
  271.         db "Обжора,   абсолютно  седой,  громадного  роста  и  с  неутолимым",13
  272.         db "чувством  голода  в  яростных  желтых  глазах.  Он молча сидел в",13
  273.         db "стороне  и  поглядывал  по  сторонам,  охраняя  погрузившегося в",13
  274.         db "ритуал колдуна.",13
  275.         db 13
  276.         db "  Яркий  зеленый свет вдруг на мгновение осветил вершину кургана",13
  277.         db "и  сразу  же  погас.  Зловет  поднялся с колен и, сжимая в руках",13
  278.         db "жезл, бросил взгляд на волка: ",34,"Все, серый, отправляйся в логово,",13
  279.         db "пока ты мне не нужен, а у меня есть еще кое-какие дела",34,".",0,1,29,12
  280.         db "* * *",0,1,0,14
  281.         db "  Старейшина  Хевор  задумчиво  смотрел  на свет чадящих факелов",13
  282.         db "освещавших небольшую часть его двора. Где-то на краю освещаемого",13
  283.         db "участка  мелькнула,  одетая в рванину, фигура провидца Глеба. За",13
  284.         db "его  способности  к  провидению,  ему  была  выделена  маленькая",13
  285.         db "сараюшка,  по совместительству использующаяся для хранения дров.",13
  286.         db "Погрузившись  в свои думы, Хевор не услышал, что со спины к нему",13
  287.         db "кто-то подошел..."
  288.        else
  289.         db "  The  second  participant  in  this  scene was a werewolf named",13
  290.         db "Eager,  grey-haired all over,  of  enormous stature  and with an",13
  291.         db "insatiable  hunger  in  his  furious  yellow  eyes. He sat aside",13
  292.         db "silently  and  looked  around, guarding the the sorcerer who was",13
  293.         db "deep into the ritual.",13
  294.         db 13
  295.         db "  A bright green light suddenly illuminated the top of the mound",13
  296.         db "for  a  moment  and  immediately  went out. Evilon rose from his",13
  297.         db "knees and clutching the staff in his hands, glanced at the wolf:",13
  298.         db 34,"That's  all, grey  thing, go  to  the  lair, until  I  need you.",13
  299.         db "I have some other things to do.",34,0,1,29,13
  300.         db "* * *",0,1,0,15
  301.         db "  Elder  Hevor  gazed   thoughtfully   at  the  glowing  torches",13
  302.         db "illuminating a small part  of his  courtyard.   Somewhere at the",13
  303.         db "edge of the illuminated place a figure glimmered,  clad in rags.",13
  304.         db "This  was Gleb, the seer, who was granted  a small firewood shed",13
  305.         db "for his  gift of  prophecy.  Sinking  into  his thoughts,  Hevor",13
  306.         db "did not hear somebody approaching from behind..."
  307.        endif
  308.        
  309.        if RUS
  310.         db 0,1,25,23,"Верьте в добро",0
  311.        else
  312.         db 0,1,23,23,"Believe in goodness",0
  313.        endif
  314.  
  315.         DS 6
  316.