home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / CPM / DISASM / DCOM8048.LBR / TEST48.AQM / TEST48.ASM
Assembly Source File  |  2000-06-30  |  4KB  |  300 lines

  1. ;
  2. ; TEST FILE FOR 8048 CROSS ASSEMBLER    7 May 1980
  3. ;
  4.  
  5.  
  6. ;    ORG    100H
  7.     WIDTH    80
  8.  
  9. GRINCH    EQU    5
  10.  
  11. START:    ADD    A,R0    
  12.     ADD    A,R1
  13.     ADD    A,R2
  14.     ADD    A,R3
  15.     ADD    A,R4
  16.     ADD    A,R5
  17.     ADD    A,R6
  18.     ADD    A,R7
  19.  
  20.     ADD    A,@R0    
  21.     ADD    A,@R1
  22.  
  23.     ADD    A,#GRINCH
  24.  
  25.     ADDC    A,R0
  26.     ADDC    A,R1
  27.     ADDC    A,R2
  28.     ADDC    A,R3
  29.     ADDC    A,R4
  30.     ADDC    A,R5
  31.     ADDC    A,R6
  32.     ADDC    A,R7
  33.  
  34.     ADDC    A,@R0
  35.     ADDC    A,@R1
  36.  
  37.     ADDC    A,#GRINCH
  38.  
  39.     ANL    A,R0    
  40.     ANL    A,R1
  41.     ANL    A,R2
  42.     ANL    A,R3
  43.     ANL    A,R4
  44.     ANL    A,R5
  45.     ANL    A,R6
  46.     ANL    A,R7
  47.  
  48.     ANL    A,@R0
  49.     ANL    A,@R1
  50.  
  51.     ANL    A,#GRINCH
  52.  
  53.     ANL    BUS,#17H    ;Not in 8041/41A, 8021, 8022
  54.     ANL    P1,#GRINCH    ;Not in 8021, 8022
  55.     ANL    P2,#GRINCH    ;Not in 8021, 8022
  56.  
  57. ADDR1:    ANLD    P4,A
  58.     ANLD    P5,A
  59.     ANLD    P6,A
  60.     ANLD    P7,A
  61.  
  62.     CALL    ADDR1
  63.  
  64.     CLR    A
  65.     CLR    C
  66.     CLR    F0        ;Not in 8021, 8022
  67.     CLR    F1        ;Not in 8021, 8022
  68.  
  69.     CPL    A
  70.     CPL    C
  71.     CPL    F0        ;Not in 8021, 8022
  72.     CPL    F1        ;Not in 8021, 8022
  73.  
  74.     DA    A
  75.  
  76.     DEC    A
  77.  
  78.     DEC    R0        ;DEC Rr not in 8021, 8022
  79.     DEC    R1
  80.     DEC    R2
  81.     DEC    R3
  82.     DEC    R4
  83.     DEC    R5
  84.     DEC    R6
  85.     DEC    R7
  86.  
  87.     DIS    I        ;Not in 8021
  88.     DIS    TCNTI        ;Not in 8021
  89.  
  90. ADDR2:    DJNZ    R0,ADDR2
  91.     DJNZ    R1,ADDR2
  92.     DJNZ    R2,ADDR2
  93.     DJNZ    R3,ADDR2
  94.     DJNZ    R4,ADDR2
  95.     DJNZ    R5,ADDR2
  96.     DJNZ    R6,ADDR2
  97.     DJNZ    R7,ADDR2
  98.  
  99.     EN    DMA        ;8041A only
  100.     EN    FLAGS        ;8041A only
  101.     EN    I        ;Not in 8021
  102.     EN    TCNTI
  103.     ENT0    CLK        ;Not in 8041/41A, 8022, 8021
  104.  
  105.     IN    A,P0        ;8021,8022 only
  106.     IN    A,P1
  107.     IN    A,P2
  108.     IN    A,DBB        ;8041/41A only
  109.  
  110.     INC    A
  111.     INC    R0
  112.     INC    R1
  113.     INC    R2
  114.     INC    R3
  115.     INC    R4
  116.     INC    R5
  117.     INC    R6
  118.     INC    R7
  119.  
  120.     INC    @R0
  121.     INC    @R1
  122.  
  123.     INS    A,BUS        ;Not in 8041/41A, 8022, 8021
  124.  
  125.     JB0    ADDR2        ;JBb not in 8022, 8021
  126.     JB1    ADDR2
  127.     JB2    ADDR2
  128.     JB3    ADDR2
  129.     JB4    ADDR2
  130.     JB5    ADDR2
  131.     JB6    ADDR2
  132.     JB7    ADDR2
  133.  
  134.     JC    ADDR2
  135.     JF0    ADDR2        ;Not in 8022, 8021
  136.     JF1    ADDR2        ;Not in 8022, 8021
  137.     
  138.     JMP    ADDR1
  139.     JMPP    @A
  140.  
  141. ADDR3:    JNC    ADDR3
  142.     JNI    ADDR3        ;Not in 8041/41A, 8022, 8021
  143.     JNT0    ADDR3        ;Not in 8021
  144.     JNT1    ADDR3
  145.     JNZ    ADDR3
  146.     JTF    ADDR3
  147.     JT0    ADDR3        ;Not in 8021
  148.     JT1    ADDR3
  149.     JZ    ADDR3
  150.     JNIBF    ADDR3        ;8041/41A only
  151.     JOBF    ADDR3        ;8041/41A only
  152.  
  153.     MOV    A,#7FH
  154.     MOV    A,PSW        ;Not in 8022, 8021
  155.  
  156.     MOV    A,R0
  157.     MOV    A,R1
  158.     MOV    A,R2
  159.     MOV    A,R3
  160.     MOV    A,R4
  161.     MOV    A,R5
  162.     MOV    A,R6
  163.     MOV    A,R7
  164.  
  165.     MOV    A,@R0
  166.     MOV    A,@R1
  167.     MOV    A,T
  168.     MOV    PSW,A        ;Not in 8022, 8021
  169.     MOV    STS,A        ;8041A only
  170.  
  171.     MOV    R0,A
  172.     MOV    R1,A
  173.     MOV    R2,A
  174.     MOV    R3,A
  175.     MOV    R4,A
  176.     MOV    R5,A
  177.     MOV    R6,A
  178.     MOV    R7,A
  179.  
  180.     MOV    R0,#GRINCH
  181.     MOV    R1,#GRINCH
  182.     MOV    R2,#GRINCH
  183.     MOV    R3,#GRINCH
  184.     MOV    R4,#GRINCH
  185.     MOV    R5,#GRINCH
  186.     MOV    R6,#GRINCH
  187.     MOV    R7,#GRINCH
  188.  
  189.     MOV    @R0,A
  190.     MOV    @R1,A
  191.     MOV    @R0,#GRINCH
  192.     MOV    @R1,#GRINCH
  193.     MOV    T,A
  194.  
  195.     MOVD    A,P4
  196.     MOVD    A,P5
  197.     MOVD    A,P6
  198.     MOVD    A,P7
  199.  
  200.     MOVD    P4,A
  201.     MOVD    P5,A
  202.     MOVD    P6,A
  203.     MOVD    P7,A
  204.  
  205.     MOVP    A,@A
  206.     MOVP3    A,@A        ;Not in 8022, 8021
  207.     MOVX    A,@R0        ;MOVX not in 8041/41A, 8022, 8021
  208.     MOVX    A,@R1
  209.     MOVX    @R0,A
  210.     MOVX    @R1,A
  211.  
  212.     NOP
  213.  
  214.     ORL    A,R0
  215.     ORL    A,R1
  216.     ORL    A,R2
  217.     ORL    A,R3
  218.     ORL    A,R4
  219.     ORL    A,R5
  220.     ORL    A,R6
  221.     ORL    A,R7
  222.  
  223.     ORL    A,@R0
  224.     ORL    A,@R1
  225.     ORL    A,#GRINCH
  226.     ORL    BUS,#17H    ;Not in 8041/41A, 8022, 8021
  227.     ORL    P1,#7        ;Not in 8022, 8021
  228.     ORL    P2,#7        ;Not in 8022, 8021
  229.  
  230.     ORLD    P4,A
  231.     ORLD    P5,A
  232.     ORLD    P6,A
  233.     ORLD    P7,A
  234.  
  235.     OUT    DBB,A        ;8041/41A only
  236.     OUTL    BUS,A        ;Not in 8041/41A, 8022, 8021
  237.     OUTL    P0,A        ;8021, 8022 only
  238.     OUTL    P1,A
  239.     OUTL    P2,A
  240.  
  241.     RAD            ;8022 only
  242.     RET
  243.     RETI            ;8022 only
  244.     RETR            ;Not in 8022, 8021
  245.  
  246.     RL    A
  247.     RLC    A
  248.     RR    A
  249.     RRC    A
  250.     SEL    AN0        ;8022 only
  251.     SEL    AN1        ;8022 only
  252.     SEL    MB0        ;Not in 8041/41A, 8022, 8021
  253.     SEL    MB1        ;Not in 8041/41A, 8022, 8021
  254.     SEL    RB0        ;Not in 8022, 8021
  255.     SEL    RB1        ;Not in 8022, 8021
  256.     STOP    TCNT
  257.     STRT    CNT
  258.     STRT    T
  259.     SWAP    A
  260.  
  261.     XCH    A,R0
  262.     XCH    A,R1
  263.     XCH    A,R2
  264.     XCH    A,R3
  265.     XCH    A,R4
  266.     XCH    A,R5
  267.     XCH    A,R6
  268.     XCH    A,R7
  269.  
  270.     XCH    A,@R0
  271.     XCH    A,@R1
  272.  
  273.     XCHD    A,@R0
  274.     XCHD    A,@R1
  275.  
  276.     XRL    A,R0
  277.     XRL    A,R1
  278.     XRL    A,R2
  279.     XRL    A,R3
  280.     XRL    A,R4
  281.     XRL    A,R5
  282.     XRL    A,R6
  283.     XRL    A,R7
  284.  
  285.     XRL    A,@R0
  286.     XRL    A,@R1
  287.     XRL    A,#GRINCH
  288.  
  289.  
  290. ;
  291. ; Error Test Cases
  292. ;
  293.     DS    100H
  294.     JC    ADDR2
  295.     JMP    8000H
  296.  
  297.  
  298.  
  299.     END    START
  300.