Programming the 8085
Home
Graphics
C++
Data Structures
Thursday, October 21, 2010
Scroll a word using 8279
4100 3E 0A MVI A,10 4102 D3 C2 OUT 0C2H 4104 3E 08 J2: MVI A,08H 4106 21 00 45 LXI H,4500H 4109 7E J1: MOV A,M 410A D3 C0 OUT 0C0H 410C CD 17 41 CALL DELAY 410F 23 INX H 4110 15 DCR D 4111 C2 09 41 JNZ J1 4114 C3 04 41 JMP J2 4117 01 FF FF DELAY: LXI B,0FFFFH 411A 0B WAIT: DCX B 411B 79 MOV A,C 411C B0 ORA B 411D C2 1A 41 JNZ WAIT 4120 C9 RET
Staircase wave using DAC
4100 3E 00 LOOP1: MVI A,00H 4102 D3 C8 LOOP2: OUT 0C8H 4104 CD 0F 41 CALL DELAY 4107 C6 33 ADI 33H 4109 D2 02 41 JNC LOOP2 410C C3 00 41 JMP LOOP1 410F 06 FF DELAY: MVI B,0FFH 4111 05 BACK: DCR B 4112 C2 11 41 JNZ BACK 4115 C9 RET
Triangular wave using DAC
4100 2E 00 START: MVI L,00 4102 7D L1: MOV A,L 4103 D3 C8 OUT 0C8H 4105 2C INR L 4106 C2 02 41 JNZ L1 4109 2E FF MVI L,0FFH 410B 7D L2: MOV A,L 410C D3 C8 OUT 0C8H 410E 2D DCR L 410F C2 0B 41 JNZ L2 4112 C3 00 41 JMP START 4115 76 HLT
Square wave using DAC
4100 3E 00 START: MVI A,00H 4102 D3 C8 OUT 0C8H 4104 CD 11 41 CALL DELAY 4107 3E FF MVI A,0FFH 4109 D3 C8 OUT 0C8H 410B CD 11 41 CALL DELAY 410E C3 00 41 JMP START 4111 06 05 DELAY: MVI B,05H 4113 0E FF L1: MVI C,0FFH 4115 0D L2: DCR C 4116 C2 15 41 JNZ L2 4119 05 DCR B 411A C2 13 41 JNZ L1 411D C9 RET
Monday, September 27, 2010
Rotate Stepper Motor in both direction
4100 0E 34 START: MVI C,34H 4102 21 3F 41 FORWARD: LXI H, FORLOOK 4105 CD 21 41 CALL ROTATE 4108 0D DCR C 4109 C2 02 41 JNZ FORWARD 410C CD 35 41 CALL STOP 410F 0E 34 MVI C,34H 4111 21 40 41 REVERSE: LXI H,REVLOOK 4114 CD 21 41 CALL ROTATE 4117 0D DCR C 4118 C2 11 41 JNZ REVERSE 411B CD 35 41 CALL STOP 411E C3 00 41 JMP START 4121 06 04 ROTATE: MVI B,04H 4123 7E REPT: MOV A,M 4124 D3 C0 OUT 0C0H 4126 11 03 03 LXI D,0303H 4129 1B LOOP1: DCX D 412A 7B MOV A,E 412B B2 ORA D 412C C2 29 41 JNZ LOOP1 412F 23 INX H 4130 05 DCR B 4131 C2 23 41 JNZ REPT 4134 C9 RET 4135 11 FF FF STOP: LXI D,0FFFFH 4138 1B LOOP2: DCX D 4139 7B MOV A,E 413A B2 ORA D 413B C2 38 41 JNZ LOOP2 413E C9 RET 413F 09 05 06 0A FORLOOK: DB 09 05 06 0A 4143 0A 06 05 09 REVLOOK: DB 0A 06 05 09
Rotate Stepper Motor in clockwise direction
4100 21 1A 41 START: LXI H, LOOKUP 4103 06 04 MVI B,04 4105 7E REPT: MOV A,M 4106 D3 C0 OUT 0C0H 4108 11 03 03 LXI D,0303H 410B 00 DELAY: NOP 410C 1B DCX D 410D 7B MOV A,E 410E B2 ORA D 410F C2 0B 41 JNZ DELAY 4112 23 INX H 4113 05 DCR B 4114 C2 05 41 JNZ REPT 4117 C3 00 41 JMP START 411A 09 05 06 0A LOOKUP: DB 09 05 06 0A
Tuesday, September 21, 2010
Square wave with 90 degree phase shift using 8255
4100 3E 80 LOOP: MVI A,80H 4102 D3 0F OUT 0FH 4104 3E FF MVI A,0FFH 4106 D3 0C OUT 0CH 4108 CD 20 41 CALL DELAY 410B D3 0D OUT 0DH 410D CD 20 41 CALL DELAY 4110 3E 00 MVI A,00H 4112 D3 0C OUT 0CH 4114 CD 20 41 CALL DELAY 4117 D3 0D OUT 0DH 4119 CD 20 41 CALL DELAY 411C C3 00 41 JMP LOOP 411F 76 HLT 4120 06 30 DELAY: MVI B,30H 4122 05 WAIT: DCR B 4123 C2 22 41 JNZ WAIT 4126 C9 RET
Older Posts
Home
Subscribe to:
Posts (Atom)