|
|
Строка 1: |
Строка 1: |
− | Процедура использует дополнительные данные, расположенные по адресу '''#7C00-#7CFF'''.Данные предназначены для построения точек. Перед использованием алгоритма необходимо вызвать '''INIT'''. Входные параметры:;HL=XY точки,BC=YX точки.использует '''HL''''
| + | Статья удаленна из-за самоуправства рязанского пидора Димачки Быстрова.Сдохни с туберкулеза гнида |
− | | + | |
− | пример вызова процедуры:
| + | |
− | <code><pre>
| + | |
− | PIX_TAB EQU #7C00
| + | |
− | | + | |
− | ORG #6000
| + | |
− | begin
| + | |
− | CALL INIT;расчет данных для построения.
| + | |
− | ;HL=XY,BC=YX
| + | |
− | ld BC,#bfff;Демонстрация работы
| + | |
− | MAIN EI
| + | |
− | HALT
| + | |
− | LD A,0
| + | |
− | OUT (#FE),A
| + | |
− | push bc
| + | |
− | LD HL,#0000
| + | |
− | CALL DRAW;вызов рисования линии с координатами в BC и HL
| + | |
− | LD A,2
| + | |
− | OUT (#FE),A
| + | |
− | pop bc
| + | |
− | dec c
| + | |
− | jr z, wkey;выход из цикла к ожиданию нажатия клавиши
| + | |
− | jp MAIN
| + | |
− | wkey
| + | |
− | LD A,#7F
| + | |
− | IN A,(#FE);ждем нажатия Пробел
| + | |
− | RRA
| + | |
− | JR C,wkey
| + | |
− | EXX
| + | |
− | LD HL,#2758
| + | |
− | EXX
| + | |
− | RET
| + | |
− | INIT LD DE,#4000
| + | |
− | LD L,E
| + | |
− | LD BC,#8000
| + | |
− | ILP1 LD H,#7c;high PIX_TAB,high - аналог [ в Storm.
| + | |
− | LD(HL),E
| + | |
− | INC H
| + | |
− | LD (HL),D
| + | |
− | INC H
| + | |
− | LD (HL),C
| + | |
− | INC H
| + | |
− | LD (HL),B
| + | |
− | CALL DOWN_DE
| + | |
− | RRC B
| + | |
− | LD A,C
| + | |
− | ADC A,0
| + | |
− | LD C,A
| + | |
− | INC L
| + | |
− | JR NZ,ILP1
| + | |
− | LD HL,PIX_TAB+96
| + | |
− | ILP2 LD (HL),0
| + | |
− | INC L
| + | |
− | JR NZ,ILP2
| + | |
− | RET
| + | |
− | ;-------------------------------
| + | |
− | DOWN_DE INC D
| + | |
− | LD A,D
| + | |
− | AND 7
| + | |
− | RET NZ
| + | |
− | LD A,E
| + | |
− | ADD A,32
| + | |
− | LD E,A
| + | |
− | RET C
| + | |
− | LD A,D
| + | |
− | SUB 8
| + | |
− | LD D,A
| + | |
− | RET
| + | |
− | | + | |
− | </pre></code>
| + | |
− | | + | |
− | процедура рисования линии
| + | |
− | | + | |
− | <code><pre>
| + | |
− | DRAW LD (TEK_POI+1),HL
| + | |
− | LD E,H
| + | |
− | LD H,#7C;high PIX_TAB
| + | |
− | LD A,(HL)
| + | |
− | INC H
| + | |
− | LD D,(HL)
| + | |
− | INC H
| + | |
− | LD L,E
| + | |
− | OR (HL)
| + | |
− | LD E,A
| + | |
− | INC H
| + | |
− | LD A,(DE)
| + | |
− | OR (HL)
| + | |
− | LD (DE),A
| + | |
− | | + | |
− | LD HL,(TEK_POI+1)
| + | |
− | LD DE,#FFFF
| + | |
− | LD A,H
| + | |
− | SUB C
| + | |
− | JR NC,$+6
| + | |
− | NEG
| + | |
− | LD E,1
| + | |
− | LD C,A
| + | |
− | LD A,L
| + | |
− | SUB B
| + | |
− | JR NC,$+6
| + | |
− | NEG
| + | |
− | LD D,1
| + | |
− | LD B,A
| + | |
− | LD A,C
| + | |
− | CP B
| + | |
− | JR NC,L24C4
| + | |
− | LD L,C
| + | |
− | PUSH DE
| + | |
− | XOR A
| + | |
− | LD E,A
| + | |
− | JR L24CB
| + | |
− | L24C4 OR C
| + | |
− | RET Z
| + | |
− | LD L,B
| + | |
− | LD B,C
| + | |
− | PUSH DE
| + | |
− | LD D,0
| + | |
− | L24CB LD H,B
| + | |
− | LD A,B
| + | |
− | RRA
| + | |
− | L24CE ADD A,L
| + | |
− | JR C,L24D4
| + | |
− | CP H
| + | |
− | JR C,L24DB
| + | |
− | L24D4 SUB H
| + | |
− | LD C,A
| + | |
− | EXX
| + | |
− | POP BC
| + | |
− | PUSH BC
| + | |
− | JR TEK_POI
| + | |
− | L24DB LD C,A
| + | |
− | PUSH DE
| + | |
− | EXX
| + | |
− | POP BC
| + | |
− | TEK_POI LD HL,0
| + | |
− | LD A,C
| + | |
− | ADD A,H
| + | |
− | LD H,A,A,B
| + | |
− | ADD A,L
| + | |
− | LD L,A
| + | |
− | LD (TEK_POI+1),HL
| + | |
− | | + | |
− | LD E,H
| + | |
− | LD H,#7C;high PIX_TAB;[
| + | |
− | LD A,(HL)
| + | |
− | INC H
| + | |
− | LD D,(HL)
| + | |
− | INC H
| + | |
− | LD L,E
| + | |
− | OR (HL)
| + | |
− | LD E,A
| + | |
− | INC H
| + | |
− | LD A,(DE)
| + | |
− | OR (HL)
| + | |
− | LD (DE),A
| + | |
− | EXX
| + | |
− | LD A,C
| + | |
− | DJNZ L24CE
| + | |
− | POP DE
| + | |
− | RETURN RET
| + | |
− | | + | |
− | </pre></code>
| + | |
− | [[Категория:Программирование графики]]
| + | |
Версия 14:47, 1 сентября 2015
Статья удаленна из-за самоуправства рязанского пидора Димачки Быстрова.Сдохни с туберкулеза гнида