Echo
#03
31 марта 1997 |
![]() |
Маленькие хитрости-2 - Как перекинуть целый экран в один INT.

┌════════════════════════════════════════┐ │░░░░░░░░░ Маленькие хитрости-2 ░░░░░░░░░│ └════════════════════════════════════════┘ VfNG/NEW Сейчас я поведаю вам способ, как пере- кинуть целый экран в 1 INT. Надо оговорит- ся: во-первых, этот фокус пройдет только на машинах с нераздельными полями памяти, а во-вторых, речь пойдет не о перекидке абсолютно произвольного участка памяти в любой момент времени, а о перекидке пред- варительно раскрученного фиксированного участка размером в 6144 байт. Итак, существует только один способ, позволяющий сотворить такое чудо. 6144/2* (LD HL,N: PUSH HL) занимает 3072*(10+11)= 64512 тактов, т.е. позволяет уложиться и еще немного времени остается. У кого что-то в чайнике есть, тот уже должен уловить идею. Теперь приведу 'рас- кручиватель'. PROC-где формировать процедуру SCREEN-адрес картинки в памяти LD HL,PROC LD DE,SCREEN+6142 LD BC,6144 L1 LD (HL),#21 ;LD HL, INC HL EX DE,HL LDI LDI EX DE,HL LD (HL),#E5 ;PUSH HL INC HL DEC DE DEC DE DEC DE DEC DE JP PE,L1 Ну, и естественно, перед входом в PROC стоит дать LD SP,#5800 или куда там...
Другие статьи номера:
Похожие статьи:
В этот день... 1 октября
Scream #04(scl),
Bred #02,
Screamergy #01,
Bred #01,
Open Letters #08,
Millenium #01,
Body #2F,
Deja Vu #0A,
X-Magazine #17,
ZX Chart #01,
Skimer #02,
X-Magazine #12,
Body #17,
Bugs #01,
Adventurer #10,
X-Magazine #07,
Wallpaper #05,
Proton #48,
ZX Pilot #29,
Cheat #03 demo,
Proton #48,
Deja Vu #06,
Deja Vu #02,
ZX-News #41,
Spectrum Progress #01,
Nicron #01,
Maximum #18,
ZX Digest #02,
Speccy #01,
Emulate #02,
Speccy #01,
200 #B,
Spectrofon #09,
ZX Revija #01