-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpro03.asm
62 lines (57 loc) · 1.71 KB
/
pro03.asm
1
2
3
4
5
6
7
8
9
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
device zxspectrum48
org 25000
begin_file:
DI
LD HL,#B200 ;Установим
LD DE,#B201 ;2ой режим
LD BC,256 ;прерываний
LD (HL),#B3
LD A,H
LD I,A
LDIR
LD A,#C9 ;Обработчик состоит
LD (#B3B3),A ;из одной команды RET
IM 2
LOOP EI
HALT
; далее совсем иначе
LD D,0 ; border color
LD E,5 ; border line color
LD A,64 ; lines count
LD C,#FE
MAX OUT (C),D ; 12 тактов
OUT (C),E ; 12 тактов
OUT (C),D ; 12 тактов
OUT (C),E ; 12 тактов
OUT (C),D ; 12 тактов
OUT (C),E ; 12 тактов
OUT (C),D ; 12 тактов
OUT (C),E ; 12 тактов
OUT (C),D ; 12 тактов
OUT (C),E ; 12 тактов
OUT (C),D ; 12 тактов
OUT (C),E ; 12 тактов
OUT (C),D ; 12 тактов
OUT (C),E ; 12 тактов
OUT (C),D ; 12 тактов
OUT (C),E ; 12 тактов
; Итого уже 192 такта
OUT (C),D ; 12 тактов
NOP ; 4 такта
DEC A ; 4 такта
JR NZ,MAX ; 12 тактов
; в сумме набежало 220 тактов т.е.
; столько сколько по времени тратит
; мой компьютер на построение одной
; строки
LD A,#7F
IN A,(#FE)
RRA
JP C,LOOP
IM 1
RET
end_file:
display "code size: ", /d, end_file - begin_file
savehob "pro03.$C", "pro03.C", begin_file, end_file - begin_file
savesna "pro03.sna", begin_file
labelslist "pro03.l"