CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG MAIN PROC MOV AX,DSEG MOV DS,AX MOV AX,ESEG MOV ES,AX MOV BX,0 MOV CX,2000 LOOP1: MOV AX,ES:[BX] MOV SCRSAV[BX],AX INC BX INC BX LOOP LOOP1 MOV BX,0 MOV CX,2000 MOV DL,0 LOOP2: MOV BYTE PTR ES:[BX],'A' INC BX MOV BYTE PTR ES:[BX],DL INC BX INC DL LOOP LOOP2 CALL WAITKEY MOV BX,0 MOV CX,2000 LOOP3: MOV AX,SCRSAV[BX] MOV WORD PTR ES:[BX],AX INC BX INC BX LOOP LOOP3 MOV AX,4C00h INT 21h MAIN ENDP WAITKEY PROC MOV AH,08 INT 21h CMP AL,00 JNE NOSCAN INT 21h NOSCAN: RET WAITKEY ENDP CSEG ENDS DSEG SEGMENT SCRSAV DW 2000 DUP (?) DSEG ENDS ESEG SEGMENT AT 0B800h DW 2000 DUP (?) ESEG ENDS SSEG SEGMENT STACK DB 5 DUP ("STACK******STACK") SSEG ENDS END MAIN