ASM80 UARTS.SRC ISIS-II 8080/8085 MACRO ASSEMBLER, V2.0 MODULE PAGE 1 LOC OBJ SEQ SOURCE STATEMENT 1 $ MOD85 DEBUG NOSYMBOLS 0000 2 ORG 0000H 0000 C30300 3 RESTRT: JMP MAIN 4 5 0003 31FF3F 6 MAIN: LXI SP,3FFFH 0006 CD1200 7 CALL TMINT ;INITIATE TIMERS 0009 CD1B00 8 CALL URINT ;INITIATE UART 9 000C CD3400 10 MAIN1: CALL KYBD ;CHECK IF KEY ENTERED 000F C30C00 11 JMP MAIN1 12 13 0012 3E96 14 TMINT: MVI A,96H ;SELECT TIMER 2 0014 D3DF 15 OUT 0DFH 0016 3E07 16 MVI A,7 ;MODE 3 9600 BAUD 0018 D3DE 17 OUT 0DEH 001A C9 18 RET 19 20 001B 3E80 21 URINT: MVI A,80H ;RESET UART TO MODE 001D D3ED 22 OUT 0EDH 001F 3E00 23 MVI A,0 0021 D3ED 24 OUT 0EDH 0023 3E40 25 MVI A,40H ;SELECT MODE 0025 D3ED 26 OUT 0EDH 0027 00 27 NOP 0028 00 28 NOP 0029 00 29 NOP 002A 00 30 NOP ;WAIT FOR RESET 002B 3EEA 31 MVI A,0EAH 002D D3ED 32 OUT 0EDH 002F 3E27 33 MVI A,27H 0031 D3ED 34 OUT 0EDH 0033 C9 35 RET 36 37 0034 DBED 38 KYBD: IN 0EDH 0036 E601 39 ANI 1 ;CHECK IF READY TO SEND 0038 C8 40 RZ 0039 3E41 41 MVI A,41H 003B D3EC 42 OUT 0ECH ;ECHO CHAR 003D C9 43 RET 44 45 END ASSEMBLY COMPLETE, NO ERRORS