|
Body
#08
02 июля 1997 |
|
PUSH HL - Нажмите MAGIC для BORDER-эффекта.

┌══════════════════════════════════════════════════════════════┐
│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ PUSH HL ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓│
└══════════════════════════════════════════════════════════════┘
(C)SATSOFT PHN 270-72-36
ВЫ ВСЕ ВИДЕЛИ, НАВЕРНОЕ, ИГРУ 'LODE RUNNER 4' BY DPS GROUP'97,
СДЕЛАННУЮ В БОБРУЙСКЕ.ТАК ВОТ, НАМ С ARS'ОМ ПОНРАВИЛСЯ ОЧЕНЬ
КРУТОЙ ЭФФЕКТ С MAGIC'OM ВО ВТОРОЙ ЧАСТИ ИНТРО => МЫ РЕШИЛИ ЕГО
ВЫТЯНУТЬ.НА ПЕРВЫЙ ВЗГЛЯД, ПРОГА КАЗАЛАСЬ СЛОЖНОВАТОЙ, НО
НЕМНОГО ПОЛАЗИВ В ЭТОМ ИНТРО, МЫ СДЕЛАЛИ ВЫВОД:ПРОГА НАСТОЛЬКО
ПРОСТА, ЧТО ДО НЕЕ МОГ ДОПЕТРИТЬ ЛЮБОЙ КОДЕР.
СМЫСЛ ПРОГИ В ТОМ, ЧТО ПРИ НАЖАТИИ НА 'MAGIC' ВКЛЮЧАЮТСЯ
ПРЕРЫВАНИЯ ВТОРОГО РОДА (IM 2), НЕЗАВИСИМО ОТ ТОГО БЫЛИ ОНИ
ВКЛЮЧЕНЫ ИЛИ НЕТ.ТАК ЖЕ ВАЖНО ТО, ЧТО СТЕК ДОЛЖЕН НАХОДИТЬСЯ
ГДЕ-НИБУДЬ В ЭКРАНЕ (ПОНИЖЕ).НАИБОЛЕЕ ПОДХОДЯЩИЙ АДРЕС - ЭТО
#401F.ПРИНЦИП РАБОТЫ ЕНТОЙ ПРОГИ:
1.ЗАПУСКАЕТЕ ПРОГУ С АДРЕСА 40000.
2.ПРЕКРАСНО ВЫПОЛНЯЮТСЯ ВАШИ ПРОЦЕДУРЫ ТИПА 'PRINT' И 'MUSIC'.
3.НАЖИМАЕМ НА 'MAGIC'.
4.РЕЗКО ПОДРУБАЮТСЯ IM 2.
5.СТЕКА НЕ ХВАТАЕТ ДЛЯ ПОЛНОЦЕННОГО ВЫПОЛНЕНИЯ ОПЕРАЦИИ 'MAGIC'.
6.ПО КАКОЙ-ТО, НЕИЗВЕСТНОЙ МНЕ, ОШИБКЕ, 'MAGIC' ПРЕКРАЩАЕТ
ВЫПОЛНЯТЬ РАБОТУ И...
7.ВЫ НАБЛЮДАЕТЕ КРУТОЙ ЭФФЕКТ, КОТОРЫЙ ВЫ ПОСТАВИТЕ САМИ.
8.ПРОИСХОДИТ ВЫХОД ТУДА, ОТКУДА ВЫ ЕЕ ВЫЗВАЛИ.
;PRESS MAGIC FOR BORDER EFFECT
ORG 40000
ADRESS EQU 45000 ;АДРЕС ПРОГИ ВЫПОЛНЯЕМОЙ ПОСЛЕ 'MAGIC'
LD (SAVESP+1),SP;СОХРАНЕНИЕ SP ДЛЯ НОРМАЛЬНОГО ВЫХОДА
CALL PRER ;ОРГАНИЗАЦИЯ IM 2 БЕЗ РАЗРЕШЕНИЯ
L2 DI ; ПРЕРЫВАНИЙ
LD SP,#401F ;УСТАНОВКА SP В ЭКРАН
; CALL MUSIC ;ВАШИ ПРОЦЕДУРЫ В ЦИКЛЕ В РЕЖИМЕ IM 1
; CALL PRINT
JR L2
PRER LD HL,ADRESS ;ОРГАНИЗАЦИЯ IM 2
LD A,24
LD (65535),A
LD A,195
LD (65524),A
LD (65525),HL
LD HL,#FE00
LD DE,#FE01
LD BC,256
LD (HL),#FF
LD A,H
LDIR
DI ;ЗАПРЕЩЕНИЕ ПРЕРЫВАНИЙ
LD I,A
IM 2
RET
;+++++++++++++++++++++++
ORG ADRESS ;ВАША ПРОГА, ВЫПОЛНЯЕМАЯ ПОСЛЕ 'MAGIKA'
DI ;ЗАПРЕЩЕНИЕ ПРЕРЫВАНИЙ
;..................................................
LD BC,65535 ;ШО ХОТИТЕ, ТО ВСТАВЛЯЙТЕ :)
L1 DEC BC ;В ДАННОМ СЛУЧАЕ - BORDER EFFECT
LD A,C
OUT (254),A
OR B
JR NZ,L1
XOR A
OUT (254),A
;..................................................
SAVESP LD SP,0 ;ВОССТАНОВЛЕНИЕ СТЕКА ДЛЯ НОРМ.ВЫХОДА
LD A,63 ;УСТАНОВКА IM 1
LD I,A
IM 1
EI
LD HL,10072 ;КОРРЕКТНЫЙ ВЫХОД В BASIC
EXX
RET
>ASSEMBLE
#002E
SYMBOLS:#C012-#FF51
FATAL ERRORS:#0000
ПИШИТЕ ОТКЛИКИ И СКОРЕЕ ВСЕГО ВОСТОРГИ ПО ЭТОЙ ПРОГРАММЕ. КСАТИ,
ЧТОБЫ ПЕРЕГНАТЬ БЫРЕНЬКО ЛЮБОЙ ЛИСТИНГ ИЗ ФОРМАТА 'ZX-WORD' В
МОЙ ЛЮБИМЫЙ КРУТОЙ АССЕМБЛЕР 'ALASM', НУЖНО ИМЕТЬ ПРОГИ 'UNICON'
ИЛИ 'UNICON2', НО НЕ НАДО ЗАБЫВАТЬ, ЧТО РАСШИРЕНИЕ 'W', НУЖНО
ПОМЕНЯТЬ НА 'C'.
Другие статьи номера:
Похожие статьи:
В этот день... 17 ноября