| Plutonium #03 |
|
Кодинг - Бросаю сюды процедуру вывода спрайтов, с точностью до пиксела от самого Славы Медноногова.

-+++++++++++++++++++++++++++++++++++++++- КОДИНГ -+++++++++++++++++++++++++++++++++++++++- Закодено by Sokol/Infotek Бросаю сюды процедуру вывода спрай- тов, с точностью до пиксела от самого Славы Медноногова; кстати применяемую в Чёрном Вороне: ;E-маска,D-байт спрайта, HL- по- зиция в экране. НЕЗ LD A,E ;вывод маски по AND RRCA RRCA RRCA RRCA LD C,A AND #1F AND (HL) LD (HL),A LD A,C AND #E0 INC L AND (HL) LD (HL),A ; LD A,D ;вывод спрайта по OR RRCA RRCA RRCA LD C,A AND #E0 OR (HL) LD (HL),A LD A,C AND #1F DEC L OR (HL) LD (HL),A Пример взят из ЧВ. Что там было в НЛО-2 - я смутно помню :))) Могу дополнить: а) для скорости выборка спрайта - стеком (т.е. этот кусок предваряется POP DE). Соответственно, спрайт хранится - "байт маски", "байт изображения","байт маски", "байт изображения","байт маски", "байт изображения"... б) завершается этот кусок, конечно, командами по организации цикла (переходом к след. строке экрана). в) поэтому для унификации вывода спрайты любой ширины хранятся по столбцам г) всего таких п/п - 8 штук. Если не- обходимо обрезать спрайты по правой/левой границе экрана - будет ещё 8+8 п/п д) (в примере маска/спрайт выводятся по AND/OR, однако на самом деле я в ЧВ вывожу по OR/XOR :))) Хотелось бы узнать (у демомейкеров, конечно :) - возможно ли выводить быстре- е? В голову лезет мысль хранить заранее все сдвиги на все байты (получим два бай- та), но только табличка будет 256*8*2 =8-[ ] (c)Copper Feet
Другие статьи номера:
От авторов - Привет всем, кто снова нашёл несколько времени, дабы почитать сиё творение. |
Разное - Здраствуйте, уважаемые юзеры компьютера кворум. |
Кодинг - Бросаю сюды процедуру вывода спрайтов, с точностью до пиксела от самого Славы Медноногова. |
Железяка - Вот и снова появился этот раздел в нашей газете. |
Юмор - Тут вот небольшой прикол, насчёт писюка. |
Реклама - Ввели мы здесь раздел `РЕКЛАМА`, дабы рекламировали здесь спектрумисты свои творения... |
Похожие статьи:
В этот день... 1 января
SibNews #08,
Woot! #01,
Spectrum Magazine #01,
ACNews #25,
Psychoz #14,
ACNews #14,
Last 128 #08,
Last 128 #06,
Last 128 #05,
Last 128 #04,
Last 128 #03,
Last 128 #02,
Last 128 #09,
Last 128 #3.5,
Last 128 #8.025,
Sinclair Club #05,
Last 128 #M!R 01,
Fantadrom #01,
Buzz #20,
Last 128 #01,
DonNews #13,
Nicron #120,
Promised Land #01,
Inferno #01,
Marazm #25,
Ultimathum #01,
Marazm #21,
Hooy Mag #02,
KrNews #11,
Marazm #22,
Marazm #23,
ZX Football 2000 #01,
Codemania #01,
Always #03,
Bugs #02,
IzhNews #08,
Virtual Worlds #01,
Listok #04,
Scenergy #02,
Flash Info #18,
Marazm #16,
Marazm #17,
Zed #01,
Balagan #02,
ZX Format #08,
ZX Power #03,
Shock #01,
Impulse #02,
Deja Vu #03,
ZX Club #08,
ZX Club #06,
Numberology #01,
Marazm #13,
Marazm #12,
Marazm #14,
Gorodok #02,
Zodiac #01,
Marazm #15,
Deja Vu #07,
Marazm #11,
Deja Vu #07,
Playboy #03,
Crazy News #2,
Crazy News #4,
ZX Light #01,
Crazy News #5,
Playboy #02,
ZX News #03,
ZX Review #1-2,
Read Me #02,
Crazy News #3,
Nicron #13,
Read Me #01,
Public Spirit #01,
Faultless #06,
Faultless #05,
ZX Software #01,
Stump #04,
Speccy #07,
Возраждение #0,
Speccy #03,
On-Line #17,
Scene+ #01,
Welcome Press #01,
ZX Konig #04,
Adventurer #01,
Faultless #05,
Faultless #04,
Di Halt #01,
Faultless #01,
Playboy #01,
Crazy News #1,
Faultless #03,
Pioneer #03,
Sinclair Town #02,
ZX Magazine #01,
Eldorado #01,
ZX Magazine #02,
Spectron #01,
ZX News #01,
ZX Konig #02,
200 #W,
Welcome Press #00,
Dune #07,
Subliminal Extacy #01,
Subliminal Extacy #02,
ZX Konig #01,
Subliminal Extacy #00,
Muchomor #01,
Spectrofon #01,
ZX Revija #02,
Outlet #01,
Outlet #1-3