Всё, пашыт. Я просто старую версию Im2 процедурки Reobne брал.
Всё, пашыт. Я просто старую версию Im2 процедурки Reobne брал.
Музыку лучше добавлять в уже скомпилированный файл asm, т.к. Паскаль библиотеку добавляет в самый конец - моя недодумка.
Какой-то заскок у паскаля
Сперва всё шло норм.
А в какой-то момент он перестал добавлять процедурки вывода спрайтов. Хотя пишет, что компиляция успешна, ошибок нет.
Дублирующихся лейблов старался не делать
- - - Добавлено - - -![]()
А по каким конкретно адресам он добавляет либы?
- - - Добавлено - - -
У меня музыка как раз расположена в самом конце.
Но с ней компилилось норм.
А потом вот такая борода произошла.
Пробовал вернуть всё взад - бестолку.
Пробовал музыку вообще убрать. Те же эрроры.
Пасцал не генерит никаких TEMP файлов, где эта чача могла бы засесть ? non_opt_code.txt и error.prg удалял, всё равно те же ошибки.
- - - Добавлено - - -
Сама процедурка put_spr_put добавляется в сурс.
И внутри неё метки put_spr_put_03 put_spr_put_04
а 02 нет.
Чё это такое?((((((((((((((((((((((
- - - Добавлено - - -
как мне кажется, какая-то байда с кодировками полученного ASM-а и компилятора EmuZwin.
Часть кода уехало в комментарии, там же оказался и put_spr_put_02
Но когда я раскомментил то, что обнаружил, частично заработало, однако процедура вывода спрайтов бажит сильно, чё-то где-то поехало...
- - - Добавлено - - -
Ага. Преобразовал ASM в ANSI, всё заработало. Хух. Аж отлегло.
У меня часть асмовых вставок задана железно (процедура плеера, хз как его дизассемблировать из вортекса с сохранением всех лейблов, поэтому там строго прописаны адреса в call jr jp и тд)
И вот я щас как раз столкнулся с проблемой такой.
У меня ещё 9 кб пустует до плеера+модуля. А паскаль жахает свои либы после него. Особенно прожорливое вышел Random(). Стоит мне его добавить в прогу - висняк, ибо под самое FFFF лезет, грубо говоря. Ну, стек коцается, возможно.
Random() - короткая процедура.
Ты музыку добавляй уже в откомпилированный асм.
Можно ли как-то объявить процедуру на строки до её вызова, а само тело прописать уже ниже?
Блин, отсутствие модульности это жесть как неудобно.
Т.е. forward? Нет. Тело процедуры должно быть раньше ее вызова.
На днях выпускаю новую версию, где пользовательский код идет в самом конце после всех библиотек. Плюс изменения по выводу спрайтов. Теперь единый формат будет, вне зависимости от флага атрибутов. А цвет спрайта задается в операторе вывода.
Круто!
А per-pixel позиционирование спрайтов будет? Хотя бы OR без маски
Или подскажите, где откопать хороших asm процедурок.
- - - Добавлено - - -
Т.е. в одном коде можно будет как одноцветные спрайты использовать, так и предварительно разукрашенные массивом в DEFB?А цвет спрайта задается в операторе вывода.
Как одноцветные спрайты будут взаимодействовать с уже имеющимся paper-ом фона? Будут затирать своим? Или ink свой, а paper берется из области размещения? Тут бы тоже флаг на выбор не помешал.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)