- ;уровень 0-11 
-   
- LEVDAT  EQU     #79C0 ;адр. нач данных уровня 
-         ORG     LEVDAT 
- ;****************************************************** 
- ;********* ГЛОБАЛЬНЫЕ ПАРАМЕТРЫ УРОВНЯ **************** 
-   
- isRUNL  RET ;#C9 - обычный уровень, иначе кодовый блок 
-   
- ;--------характеристики сторон-------(0)-обнулять вначале 
-   
- ;параметры играющего 
- hTOWER  DEFB 4 ;мак.число типов вооруж (1-4) 
- hARC    DEFB 0 ;0-2 (0) 
- hHORSE  DEFB 0 ;0-3 (0) 
- hSHILD  DEFB 0 ;0-2 (0) 
- hBLADE  DEFB 0 ;0-2 (0) 
- hmaxC   DEFB 3 ;1-3 чиcло возможн иccл закл свящ 
- hmaxW   DEFB 2 ;1-3 число  --"-- закл волш 
-   
- ;дополнительные параметры играющего 
- hmaxB1  DEFB 2 ;макс число стандарт зданий (0 или 1-2) 
- hmaxB2  DEFB 4 ;maкc число доп эданий (0, 1-4) 
- hWALL   DEFB 0 ;0/17 - можно/нельзя строить стены 
-   
- ;параметры компьютера 
- kTOWER  DEFB 4 ;1-4 
- kARC    DEFB 0 ;0-2 
- kHORSE  DEFB 1 ;0-3 
- kSHILD  DEFB 0 ;0-2 
- kBLADE  DEFB 0 ;0-2 
- kmaxC   DEFB 3 ;1,3 чиcло иccл закл (0-нет свящ) 
- kmaxW   DEFB 2 ;1..3 чиcло иccл закл (0-нет волш) 
-   
- ;----------- параметры стратегии врага ---------------- 
- ;/wSTRATEG  (1.ед.изм - 8тик) 
- levMAX  DEFB 6   ;макс число народу в группе (для уровня) = 1..10 
- levDEL  DEFB 57  ;средн задержка межд сборами (для уровня) = 1..X 
- lev1ST  DEFB 102 ;нач задержка первого сбора = 1.. 
-  ;Тип уровня 0 ;обычный 
-  ;Тип уровня 1 ;атакованый охранник становится атакующим 
-  ;Тип уровня 2 ;см. тип 1 + охранники иногда идут в атаку 
- levTYP  DEFB 0   ;тип уровня (0-обычный) 
- ;-------- цветовые настройки ------- 
- COLOR   DEFB #31 ;цвет поля 
-   
- ;-------- общие параметры уровня ----- 
- MASTER  DEFB 0  ; кто играет 0/1 - люди?кунги 
- LEVEL   DEFB 11  ; номер уровня 
- MONEY   DEFB 0,0,0,5,0,0 ;деньги 
- WOOD    DEFB 0,0,0,5,0,0 ;леc 
- TASK_M  ;задание: 3 строки по 20+1 символов = 63 
-         incbin "../task/w111.tsk" 
- LEVRES  DEFB 0,0,0,43,0,0,127 ;текущее время прохождения 
-   
- ;------- используемые файлы ------- 
-   
- fsLAND  DEFB 2; 1-4 
- fsMUS   DEFB 0; 0-7 
-   
-   
- ;****************** Инициализируемые переменные **************** 
- ;--------------- (входят в описание каждого уровня) ------------ 
- ;/выбраные герои 
- SEL_T DEFB 0 ;0-none;1-один;2-6-group;7-кунг,8-здание 
- SEL_N DEFB 0,0,0,0,0,0 ;номера 6 выбр гер/зд 
-   
- sel_en DEFB #FF ;выбранный враг-цель 
- sel_ti DEFB 0 ;время отображения цели 
-   
- ;/outLED 
- LED DEFB 4,3,4,3,4,3 
-   
- ;/putTX 
- _msg    DEFB #FF 
- pTX_AD  DEFW 0;WNAMES 
- TX_AD   DEFW 0;WNAMES 
- pTXdel  DEFB 0 ;t задержки на выв экcтр cообщ 
-   
- ;/M_PLAT 
- isPLAT  DEFB 0; 0/1-есть/нет площадки 
- szPLAT  DEFB 0; размер площадки под стр-во (1..3, 0-нет) 
- bcPLAT  DEFW 0; размеры 
- adPLAT  DEFW 0; позиция in ATR 
- waPLAT  DEFB 0; если стена - 1 
-   
- ;/PAUSE 
- onPAUS  DEFB 1 ;0-включить паузу 
-   
- ;/SOUNDn 
- NOTA    DEFW se ;текущ нота 
- se      DEFW #FFFF ;конст 
- levSND  DEFB 0 ;0-макс громкость 
- sIY56   DEFW 0 ;координаты снарядов 
- priv_S  DEFB 0 ;текущ приоритет (0-нет мелодии) 
- NOTA2   DEFW se ;нота новой мелодии 
- priv_2  DEFB 0  ;нов приор 
-   
- ;/STRATEG - variables 
- pntX    DEFB 32  ;-коорд т.сбора 
- pntY    DEFB 31  ;-/ 
- pntNUM  DEFB 0   ;-число оставшихся до конца сбора воинов (0-конец сбора, 255-нов сбор) 
- pntDEL  DEFB 22  ;-время до нач.след сбора/задержка на пр-во воина 
- pntTAR  DEFB #FF ;-объект атаки (0-101 - воины, #80.. -здания, #FF-нет) 
- pntUNI  DEFB 0   ;-отряд разнородный/однородный (0/member typ) 
- pntEN   DEFB 0,0,0,0,0,0 
-                  ;-разреш пр-во вида (3..8) (0-нет) 
- pntMAN  DEFB 0   ;тип пораждаемого воина 
-   
- ;/isEND 
- END_1   DEFB 0  ;0/1/2-none/нет врагов/нет людей 
- END_2   DEFB 0  ;не0-князь вошёл в пещеру 
- TheEND  DEFB 0  ;0/1/2-none/победа людей/победа врагов (устанавл в _cLOOP) 
- ;-----------(резерв)------------- 
- dummy   DEFS 6,0 
- ;-----------процедуры------------ 
- pcLOOP  JR _cLOOP 
- pcINI   ;стартовая процедура 
-         RET 
- ;_cLOOP  ;процедура окончания под землёй 
- ;        LD A,(END_2) 
- ;        OR A 
- ;        JR NZ,_cLO1 
- ;        LD A,(END_1) 
- ;        CP 1 
- ;        RET Z 
- ;_cLO1   LD (TheEND),A 
- ;        RET 
- _cLOOP   ;стандартная проц окончания 
-          LD A,(END_1) 
-          LD (TheEND),A 
-          RET 
-   
- ;------ обнуление основных структур данных --- 
-   
-         DEFS #7AA0-$,#27 
- BULL    DEFS 24*12      ;from #7AA0 
- MINE    DEFS 8*8        ;from #7BC0 
- HBUILD  DEFS 32*8       ;from #7C00 
- KBUILD  DEFS 32*8       ;from #7D00 
- BUF512  EQU #7E00; буфер512     ;from #7E00 
- MAP     EQU #8000; DEFS #1000   ;from #8000 
- MAP2    EQU #9000; DEFS #1000   ;from #9000 
- DSCR    EQU #A000; DEFS #1800   ;from #A000 
- HUMAN   EQU #B800; DEFS 48*16   ;from #B800 
- KUNGE   EQU #BB00; DEFS 48*16   ;from #BB00 
- SLAVE   EQU #BE00; DEFS 6*16    ;from #BE00 
- XY      EQU #BE60; DEFS 102*4   ;from #BE60 
- ;NEXT   EQU #BFF8; nop 
-   
- ;для мар2: 
- ;0-своб.поле, 1-граница, 2 -непрох 
- ;#38-#3F        шахты 
- ;#40-#5F        здания людей 
- ;#60-#7F        здания кунгов 
- ;#80-#AF        люди 
- ;#B0-#DF        кунги 
- ;#E0-#FF        пленники 
-   
-   
- ;------------------------------------------------------------ 
- ;--------- Золото шахт ----- (4096+512 переносится на BUF512) 
-   
- datMIN  DEFW 327,240,340,381,370,770,7,7 ;золото для шахт/100 
-         ;0-чей (255-конец), 1-тип, 2/3-XY,4-none 
-   
- ;------ Описание героев и карты --- 
-   
- datHER 
-         incbin "../map/w111_s2.her" 
-         incbin "../map/w111_s2.map" 
-   
- ;-------Картинка----- 
- datSCR 
-         incbin "../barkov/prince.scr" 
-   
- ;---------------------------------- 
-