ZX-Ревю 1996 №4-5 1996 г.

Этюды - программа гашения экрана случайным образом.


© А.Волков, г. Березники, Пермской обл.

Хочу предложить в рубрику "Этюды" свою программу. Подобной я у вас еще не встречал. Эта программа выполняет гашение экрана случайным образом по знакоместам.

COUNN COU_L

COU_E

10

ORG

40000

20

ENT

$

30

L1

LD

BC, 3

40

LD

HL,22528

50

LD

E, B

60

L2

LD

A, (HL)

70

AND

A

80

JR

Z,L4

90

EXX

100

INC

DE

110

LD

A, D

120

AND

7

130

OR

0

140

LD

D,A

150

LD

A,(DE)

160

EXX

170

AND

7

180

LD

D,A

190

LD

A, (HL)

200

AND

7

210

SUB

D

220

JR

NC, L3

230

XOR

A

240

L3

LD

(HL),A

250

LD

E, 1

260

L4

INC

HL

270

DJNZ

L2

280

DEC

C

290

JR

NZ.L2

300

LD

BC,10000

310

CALL

L5

320

DEC

E

330

RET

NZ

340

JR

L1

350

L5

PUSH

BC

360

PUSH

AF

370 L6

DEC

BC

380

LD

A, B

390

OR

C

400

JR

NZ, L6

410

POP

AF

420

POP

BC

430

RET

ORG

30000

LD

C, #18

;

Настройка на диск.

CALL

#3D13

LD

HL,#5CDD

;

Заполнение имя файла пробелами.

PUSH

HL

LD

B, 8

LD

(HL),#20

INC

HL

DJNZ

ZAP_

LD

(HL),"B"

;

Установка некоторых

LD

L, #06

;

переменных DOS.

LD

(HL),#09

LD

L, #F9

LD

(HL),#00

LD

HL,(#5C5D);

Системная переменная CH_ADD.

INC

HL

LD

B, 8

;

Переброска не более 8 байт,

POP

DE

;

записанных за REM в дескриптор

INC

HL

;

файла.

LD

A, (HL)

CP

#0D

;

Если конец строки - то и конец

JR

Z,IN_F1

;

файла.

LD

(DE),A

INC

DE

DJNZ

IN_F

LD

C, #0A

;

Проверка на наличие

CALL

#3D13

;

файла на диске.

INC

C

JR

NZ,LOAD

;

Если файл есть - то переход на LOAD,

RST

#08

;

иначе сообщение об ошибке.

DEFB

#0E

XOR

A

;

По адресу #5DA0 должно быть #00.

LD

(#5DA0),A

LD

C, #0E

;

Загрузка файла.

CALL

#3D13

LD

HL,(#5C42)

;

В HL номер стартующей строки.

LD

(#5C45),HL

;

Номер выполняющейся строки.

RST

#08

;

Сообщение "OK"

DEFB

#FF

Длина процедуры 60 байт. В 300 строке можно изменять скорость выполнения программы в широких пределах. Для испытания программы можно использовать следующую программу на BASICe.

10 CLEAR 3 9999 2 0 LOAD "CLS" CODE 4 0000 30 LOAD "SCREEN" SCREEN$ 4 0 RANDOMIZE USR 4 0000

В 30 строке загружается любой файл-экран.




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Бук - МАКЛОХИЙ И АЛЬМИВИЯ - Опеpа опеp.
Дом 16а - продолжение рассказа.
Чудо техники - Дедушкина банька.
Юмор - Приколы.
Обзор - Обзор новых игровых программ : Prince of Persia, Megaxonix, Soldier of Future, Red Stone I&II. Лучшая десятка.

В этот день...   21 ноября