Ну я тоже примерно так же считаю
Код:sp_in INCBIN "_packed/sp_intr.bin" sp_in_ ld a,high (sp_in_-sp_in+255)
Ну я тоже примерно так же считаю
Код:sp_in INCBIN "_packed/sp_intr.bin" sp_in_ ld a,high (sp_in_-sp_in+255)
Последний раз редактировалось Shadow Maker; 02.12.2014 в 18:59.
Свирепый агрессивно-депрессивный мордовец!
Не уверен - не напрягай!
Не сдавайся. Дыши?
Virtual TR-DOS
эмммм... а тебе зачем?
Мои интры: [Kukarachess][Super boot rmx][tRUSHE MOSAIc][BLAZE]
Мои игры: [Overload][Removal]
Список игр для ZX-Spectrum: [2015] [2014]
странные макросы - одна из причин почему я соскочил с sjasm+ на zmac
(может я не умею его готовить?)
на нем это на раз
я так понимаю это будет работать и в m80
Код:x macro name,lenlabel local .a .a equ $ incbin name lenlabel equ $-.a endm x "test.asm",len1 x "dd/test.cas",len2 x "dd/test.cim",len3 dw len1 dw len2 dw len3 endLST - во что скомпилилось
с "разворотом" макросов
Код:1: 2: x macro name,lenlabel 3: local .a 4: .a equ $ 5: incbin name 6: lenlabel equ $-.a 7: endm 8: 9: - 0000 x "test.asm",len1 9: - 0000 ?c0000 equ $ 9: - 0000 .. 00DB incbin "test.asm" 9: - 00DC len1 equ $-?c0000 9: - 00DC endm 10: - 00DC x "dd/test.cas",len2 10: - 00DC ?c0001 equ $ 10: - 00DC .. 02ED incbin "dd/test.cas" 10: - 0212 len2 equ $-?c0001 10: - 02EE endm 11: - 02EE x "dd/test.cim",len3 11: - 02EE ?c0002 equ $ 11: - 02EE .. 03CF incbin "dd/test.cim" 11: - 00E2 len3 equ $-?c0002 11: - 03D0 endm 12: 13: - 03D0 DC00 dw len1 14: - 03D2 1202 dw len2 15: - 03D4 E200 dw len3 16: 17: - 03D6 end Statistics: 4 passes 0 jr promotions 6 symbols 982 bytes 3 macro calls 54 macro bytes 12 invented symbols Symbol Table: ?c0000 = 0 ?c0001 = dc ?c0002 = 2ee len1 = dc len2 = 212 len3 = e2[свернуть]
Автосборку большого проекта делаю. Хочется автоматизации, чтобы не править руками в нескольких местах, если один из файлов станет длинее/короче.
Одно отличие - мне не надо держать файлы в памяти, мне надо просто таблицу их длин, причем не в байтах, а в секторах. Сами файлы будут запиханы в trd-образ.Сообщение от esl
Намонстрячил уже на баше генерилку нужной таблицы...
В порядке бреда
Код:# build script & gfx overlays & generate overlays size table echo "; Nocturne overlays size table\n" > ovrtable.asm for NUM in 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36; do if [ -d ovl/ovl${NUM} ]; then make -C ovl/ovl${NUM} fi if [ -e ovl/bin/ovl${NUM}c.hr1 ]; then SIZE=`stat -c %s ovl/bin/ovl${NUM}c.hr1` if [ $((${SIZE} & 255)) -gt 0 ]; then CSZ=$((${SIZE}/256 + 1)) else CSZ=$((${SIZE}/256)) fi else CSZ=0 fi if [ -e ovl/bin/ovl${NUM}g.bin ]; then SIZE=`stat -c %s ovl/bin/ovl${NUM}g.bin` if [ $((${SIZE} & 255)) -gt 0 ]; then GSZ=$((${SIZE}/256 + 1)) else GSZ=$((${SIZE}/256)) fi else GSZ=0 fi echo "\tdb ${CSZ}, ${GSZ}, 0, 0\t\t;${NUM}" >> ovrtable.asm done[свернуть]
Последний раз редактировалось SAM style; 02.12.2014 в 20:57.
Все любят гипножабу
так а чем вариант шадомахера не подошёл? через в ДБ-табличку я думаю там тоже всё нормально запилится...
Мои интры: [Kukarachess][Super boot rmx][tRUSHE MOSAIc][BLAZE]
Мои игры: [Overload][Removal]
Список игр для ZX-Spectrum: [2015] [2014]
Ну используй луа-скрипт тогда для генерации. Левые какие-то генерилки на баше - не кошерно.
Хотя по-моему у тебя для вызова все равно надо передавать имя файла, разницы тогда? Один раз себе текст накопипастил типа как я до этого написал и забыл, не? Ты ж не в каждом проекте это будешь делать. У меня например есть php-скрипт, который генерит мне фигню типа:
которую я потом инклюжу (или не инклюжу, если там никакие файлы не меняются).Код:page 0 org #4000 dehrust INCBIN "dehrust.bin" dehrust_ SAVETRD "bloodwych.trd","dehrust.C",dehrust,dehrust_-dehrust dehrust_len equ dehrust_-dehrust page 0 org #4000 mode48 INCBIN "Files/mode48.bin" mode48_ SAVETRD "bloodwych.trd","mode48.C",mode48,mode48_-mode48 mode48_len equ mode48_-mode48 page 0 org #4000 loadscr INCBIN "Files/loadscr.bin" loadscr_ SAVETRD "bloodwych.trd","loadscr.C",loadscr,loadscr_-loadscr loadscr_len equ loadscr_-loadscr
Последний раз редактировалось Shadow Maker; 02.12.2014 в 21:41.
Свирепый агрессивно-депрессивный мордовец!
Не уверен - не напрягай!
Не сдавайся. Дыши?
Virtual TR-DOS
Ну тем более, чего больно заморачиваться, один раз накопипастил вон фигней и всё. И что-то давно не слышно про новое - когда демка-то будет?
Свирепый агрессивно-депрессивный мордовец!
Не уверен - не напрягай!
Не сдавайся. Дыши?
Virtual TR-DOS
Какая демка? Всё готово, только музыку жду и финалкат придумываю:
А по теме:sjasmplus валится, хотя бинарник сохраняет. С device zxspectrum48 отрабатывает без аварий.Код:device zxspectrum128 org 0x8000 disp 0 dw t1 dw t2 dw t3 t1 ds 6912 t2 ds 8922 t3 ds 10222 siz equ $ ent savebin "out",0x8000,siz
Последний раз редактировалось SAM style; 03.12.2014 в 00:19.
Все любят гипножабу
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)