home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 15 / 15.iso / s / s092 / 1.img / DEMO.ASM < prev    next >
Encoding:
Assembly Source File  |  1980-01-01  |  1.0 KB  |  83 lines

  1.     ORG    32
  2. BFBASE:    DS    BFSIZE
  3.     ORG    100H
  4. MAIN:    CLR    A
  5.     MOV    P1,A
  6.     CLR    F0
  7.     SETB    RS1
  8.     MOV    R0,#BFBASE
  9.     CLR    RS1
  10.     MOV    R0,#BFBASE
  11.     CLR    RS1
  12.     MOV    SCON,#50H
  13.     MOV    TMOD,#20H
  14.     MOV    TH1,#0FDH
  15.     MOV    TL1,TH1
  16.     MOV    IP,#10H
  17.     MOV    IE,#92H
  18.     MOV    TCON,#50H
  19.     CALL    GETSW
  20. NEWPTRN:    MOV    R2,A
  21.     MOV    R3,A
  22.     MOV    P1,A
  23.     CPL    A
  24.     MOV    TH0,A
  25. ROTATE:    MOV    A,R3
  26.     JB    F0,ROTLEFT
  27.     RR    A
  28.     JMP    SETP1
  29. ROTLEFT:    RL    A
  30. SETP1:    MOV    R3,A
  31.     MOV    P1,A
  32.     CALL    GETSW
  33.     XRL    A,R2
  34.     JZ    ROTATE
  35.     XRL    A,R2
  36.     JMP    NEWPTRN
  37. GETSW:    MOV    A,P2
  38.     RET
  39. TOINT:    PUSH    ACC
  40.     CPL    F0
  41.     MOV    A,R2
  42.     CPL    A
  43.     MOV    TH0,A
  44.     POP    ACC
  45.     RETI
  46. SERIAL:    PUSH    ACC
  47.     PUSH    PSW
  48.     CLR    RI
  49.     MOV    PSW,#10H
  50.     MOV    A,SBUF
  51.     MOV    B,A
  52.     XRL    A,#0DH
  53.     JNZ    BUFCHAR
  54.     MOV    A,#BFSIZE
  55.     CLR    C
  56.     SUBB    A,R0
  57.     CPL    A
  58.     JZ    EXIT
  59.     MOV    R3,A
  60.     CLR    A
  61. CLEAR:    DEC    R0
  62.     MOVX    @R0,A
  63.     DJNZ    R3,CLEAR
  64.     JMP    EXIT
  65. BUFCHAR:    MOV    A,#BFSIZE+BFBASE
  66.     CLR    C
  67.     SUBB    A,R0
  68.     JC    EXIT
  69.     MOV    A,B
  70.     MOVX    @R0,A
  71. SAVEPTR:    INC    R0
  72. EXIT:    POP    PSW    
  73.     POP    ACC
  74.     RETI
  75.     ORG    0
  76.     JMP    MAIN
  77.     ORG    SINT
  78.     JMP    SERIAL
  79.     ORG    TIMER0
  80.     JMP    TOINT
  81. BFSIZE    EQU    31
  82.     END
  83.