Картинка не кажет, ибо хотлинк с вконтакта, юзай https://imgur.com/upload хотя бы
Картинка не кажет, ибо хотлинк с вконтакта, юзай https://imgur.com/upload хотя бы
___________
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
форум ацке тупит.....
Последний раз редактировалось ALKO; 06.10.2019 в 13:53.
Если это чисто визуальный глюк - я б пока не заморачивался.
Не получается впихнуть трек их вортекса.
Сейвю как тапку.
Дважды Load "" code (плеер и сам модуль), затем дизасмю в массив DEFB.
копипащу в паскалевский исходник.
В нём же.
Компилирую - запускаю, а оно пишыт - Integer out of range.Код:begin ... Asm(MUSINIT); Asm(MUSPLAY); ... end. MUSINIT ORG 49800 CALL C350H RET MUSPLAY ORG 49900 CALL C355H RET MUS ORG 0C35FH DEFB 21H, 0BEH, 0CBH, 18H, 3AH, 0C3H, 09H....
mod есть - знак процента:
if x%2=0 then ...
- - - Добавлено - - -
разберись с адресами после ORG и CALL и длиной блоков. Либо залезают на паскалевский код, либо больше 65000. Виртуальный экран для Паскаля и таблица отзеркаливания байтов находятся перед 65000 (адреса не помню, см. в либах).
- - - Добавлено - - -
Код:; расчет адреса атрибутов знакоместа в DE, B-вертик.координата, C-гориз.координата LD A,B RRCA RRCA RRCA LD E,A AND 31 OR 88 LD D,A LD A,E AND 252 OR C LD E,A
Последний раз редактировалось Andrew771; 06.10.2019 в 15:22.
ALKO(06.10.2019)
А конец музыки не залезает выше 65000?
Для процедур MUSINIT и MUSPLAY ORGи можешь не писать, они всё равно внутри себя вызывают нужные адреса.
Я вот только до конца не знаю.
Вортекс же плеер и данные модуля друг с дружкой размещает, или на каком-то расстоянии? Возможно, я просто неправильно дизасмил DEFB.
У вортекса экспорт костыльный. Нет бы сразу в ASM сохранять.
- - - Добавлено - - -
Решил сделать анимашку огонька по такой схеме.
А он не шевелится.Код:soplo_anim:= soplo_anim+1; if soplo_anim %2 = 0 then SpritePutClear(soplo01,8,14) else SpritePutClear(soplo02,8,14);
Почему?
в этом пасквиле разве нет логических побитовых операций?
и хватает ли ему ума вычислять остаток в таких случаях через and?
если старшие биты soplo_anim нигде не нужны, можно обойтись без остатка
сначала "soplo_anim := 1 - soplo_anim", потом "if soplo_anim = 0"
- - - Добавлено - - -
а если кадров больше двух, то подозреваю, выгодней
"anim := anim + 1; if anim > MAX then anim := 0"
чем остаток честно считать потом
Прихожу без разрешения, сею смерть и разрушение...
есть какой-то способ затереть спрайт при перемещении?
Или нужно создавать спрайт пустышку и накладывать с зачисткой следа?
![]()
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)