В регистрах B и C координаты знакомест (а не точек), начиная с верхнего левого угла с 0. Должно работать. Возможно, команду AND A,224 заменить на AND 224 - так правильнее.
Вид для печати
"AND A,224, ADD A,C" да возможно из-за этого и не компилило
Вот на этом скрине задействованы некоторые тайлы, которые я уже нарисовал.
И музон уже сделал на 2 кб (на фазе под бипер).
(тайлы пожрали 8 кб только это ещё не все нарисованы)
http://cs10320.vk.com/u53856147/98301119/y_cb67e0c8.jpg
---------- Post added at 21:27 ---------- Previous post was at 21:26 ----------
поведение врага будет сложно создать...
---------- Post added at 23:00 ---------- Previous post was at 21:27 ----------
Вот процедура, отвечающая за тайлы
Скрытый текст
org 23296
ld b,1 ; номер кадОра
ld hl, 39712 ; смещение от 40000 - размер кадОра
ld de, 288
L1 add hl, de
djnz L1
ld de,18000 ;координата куда засовывать кадЫр
ld b,48 ; пиксилы по вертикале
n1 push bc
push de
dup 6 ; кол-во знакомест по горизонтале (штоле)
ldi
edup
pop de
call de_inc
pop bc
djnz n1
ret
de_inc inc d
ld a,d
and 7
ret nz
ld a,e
add a,32
ld e,a
ret c
ld a,d
sub 8
ld d,a
ret
[свернуть]
Нужно изменить, что б фрейм складывалься по Эйлеру с бэкграундом посредством AND.
"ld de,HL" - это что за команда? Может это "EX DE,HL"?
Если перевод координат не сработает, попробуй процедуру, которую я привел в этой теме раньше.
З.Ы. Если в процедуре Andrew771 заменить все регистры "H" на "D", а "L" на "E", то PUSH HL, POP HL и EX DE,HL не понадобятся.
пробовал, без результатно
---------- Post added at 05:24 ---------- Previous post was at 05:20 ----------
О! Пашыыыыт!!!
Я давненько уже на асме ни чего не делал, уже и запамятовал кое чё.
---------- Post added at 05:35 ---------- Previous post was at 05:24 ----------
AndTorp, подскажите, как сделать слияние с задним планом при выводе по AND...
Ах да, точно OR...
---------- Post added at 05:56 ---------- Previous post was at 05:55 ----------
очередной раз затупил :v2_dizzy_facepalm:
Персонажи и колонна хороши, а вот на фоне наверное пунктира как-то многовато, можно попробовать сплошной линией, может лучше будет?
:v2_thumb:
NovaStorm, фон не должен вылезать на передний план
Тогда побольше фона :)
jerri, конечно, потому и написал "попробовать".
Andrew771, много фона - тяжело как для железа, так и для восприятия, пиксельная каша может получиться.
А такие тайлы можно попытаться "вдавить" в фон и инвертировать, сделать их как бы "освещёнными".
Обычно разницу между передним и задним фоном делают посредством разницы освещённости, но поскольку в спектруме однобитный графон, приходиться таким макаром делать.
А вот про смешение через OR я зря надумал, так как при анимации перемещения объектов придется затирать полностью по горизонтали весь участок и поновой прорисовывать бэкграунд и персонажей.
---------- Post added at 16:05 ---------- Previous post was at 16:02 ----------
Ненавижу такой эффект. Смешение через OR лучше смотриться, чем через XOR (или как там..... вобщем аналог бейсиковского over'a ,если я вас правильно понял).
---------- Post added at 16:09 ---------- Previous post was at 16:05 ----------
тогда и маски надо уже делать, а ведь уже тайлами начал (как в Gay-Shot'e , если кто помнит такую игру, только там тайлы были 8*8 знакомест и всё было на васике, кроме вывода тайлов и пары звуков)
А то , что я весь экран через bright сделал тёмным, что б графика была не такой НЯшной, это не очевидно?
---------- Post added at 17:22 ---------- Previous post was at 17:19 ----------
А если делать бэк и передник разными bright-ами , то будет оооочень красивый, режущий глаза, эффект - attribute clash
Взял от сюда исходник "растворения" экранной области
http://zxpress.ru/book_articles.php?id=1026
Но чего-то он не комрпилирует.
Где тут может быть ошибка?Цитата:
ORG 60000
ENT $
THAW LD B,8 ;экран очищается за 8 циклов
LD DE,0 ;адрес начала кодов ПЗУ
THAW1 LD HL,#4000 ;адрес начала экранной области
PUSH DE
THAW2 LD A,(DE) ;берем «случайный» байт из ПЗУ
AND (HL) ;объединяем с байтом из видеобуфера
LD (HL),A ;помещаем обратно в видеобуфер
INC HL ;переходим к следующим адресам
INC DE
LD A,H ;проверяем, нужно ли повторять цикл
CP #58 ;если прошли еще не весь видеобуфер
; (#5800 - адрес начала области атрибутов)
JR NZ,THAW2 ; то повторяем
PUSH BC
LD BC,1
CALL 7997 ;PAUSE 1
POP BC
POP DE
LD HL,100
ADD HL,DE ;увеличиваем адрес в ПЗУ на 100
EX DE,HL ;меняем HL на DE
DJNZ THAW1 ;повторяем цикл
JP 3435 ;окончательно очищаем экран
---------- Post added at 03:50 ---------- Previous post was at 03:45 ----------
(тяжко без подсветки синтаксиса)
zx assembler++
(который встроен в emuZwin)
---------- Post added at 16:16 ---------- Previous post was at 16:04 ----------
Да, это таки из-за ENT'a была ошибка.....А что это за директива такая ?
ENT наверно указывает откуда начинать программу, но разве не достаточно ORG'a ?
ORG указывает куда компилировать
ENT указывает ассемблеру откуда запустить
а между тем на ebay продают распечатки исходников игры midnight resistance http://www.ebay.co.uk/itm/Sinclair-Z...item19caeab073
newart, были бы файлы другое дело
а распечатанные тексты - оно надо?
newart, а зачем? в МидРес достаточно простой и грубый движок его ценность в распечатке гораздо ниже чем тоже но на диске/кассете/микродрайве ;)
Это бы в отдельную тему.Цитата:
А давайте скинемся?
Игрушка то зачетная.
Неясна лицензия на движок, если это распечатка и использовать код нельзя, ею остаётся только подтереться.
Хотя игру, помню, проходил.
newart, У нас есть более технологичные и качественные движки
вот тот же Wolf48 например - однако использовать их почемуто не получается?
зачем еще один никомуненужный движок?
Наверное "чтобы был", это в принципе часть истории и такую же историческую ценность представляет. С другой стороны движка под 48 для 2d скролл-шутеров типа MidRes я не помню в свободном доступе.
Это пока не жвижок. Много ли можно придумать игр с лабиринтом без предметов и врагов?
---------- Post added at 15:39 ---------- Previous post was at 15:38 ----------
О чем и разговор.
---------- Post added at 15:40 ---------- Previous post was at 15:39 ----------
Если его оформить должным образом то еще как нужен будет.
newart,
есть уже предметы, и враги тоже есть
только вот в каком виде? если на Спеке нет желания писать
а кроме как под Аласм этот движок нигде не собирается
Ты оформлять движок будешь?