home *** CD-ROM | disk | FTP | other *** search
/ The C Users' Group Library 1994 August / wc-cdrom-cusersgrouplibrary-1994-08.iso / vol_200 / 292_04 / t6801l.asm < prev    next >
Assembly Source File  |  1990-07-17  |  2KB  |  82 lines

  1.     .sbttl    Assembler Link Tests
  2.  
  3.     .module    t6801l
  4.  
  5.     ; This file and TCONST.ASM should be assembled and linked.
  6.     ;
  7.     ; AS6801 -XGOL T6801L
  8.     ; AS6801 -XGOL TCONST
  9.     ;
  10.     ; ASLINK -C
  11.     ; -XMS
  12.     ; T6801L
  13.     ; TCONST
  14.     ; -E
  15.     ;
  16.     ; The following tests verify the correct processing of
  17.     ; external references for the direct page, index mode offsets,
  18.     ; and branches.
  19.     ;
  20.     ; *L signifies an error will be reported at link time.
  21.  
  22.     ; branch test must be first
  23.  
  24.     .area    TEST    (ABS,OVR)
  25.  
  26.     .blkb    0x7E        ;bra1:
  27.     bra    bra1        ;   20 00  [20 80]
  28.     .blkb    0x7F        ;bra2:
  29.     bra    bra2        ;*L 20 00  [20 7F]
  30.     bra    bra3        ;   20 00  [20 7F]
  31.     .blkb    0x7F
  32.     .blkb    0x00        ;bra3:
  33.     bra    bra4        ;*L 20 00  [20 [80]
  34.     .blkb    0x80
  35.     .blkb    0x00        ;bra4:
  36.  
  37.     .blkb    0x7E        ;bra5:
  38.     bra    bra5        ;   20 00  [20 80]
  39.     .blkb    0x7F        ;bra6:
  40.     bra    bra6        ;*L 20 00  [20 7F]
  41.     bra    bra7        ;   20 00  [20 7F]
  42.     .blkb    0x7F
  43.     .blkb    0x00        ;bra7:
  44.     bra    bra8        ;*L 20 00  [20 [80]
  45.     .blkb    0x80
  46.     .blkb    0x00        ;bra8:
  47.  
  48.     ; direct page test
  49.  
  50.     .area    DIRECT    (ABS,OVR)
  51.     .setdp    0,DIRECT
  52.  
  53.     lda a    *minus1        ;*L 96 00  [96 FF]
  54.     lda a    *zero        ;   96 00  [96 00]
  55.     lda a    *two55        ;   96 00  [96 FF]
  56.     lda a    *two56        ;*L 96 00  [96 00]
  57.  
  58.     lda a    *lminus1    ;*L 96 00  [96 FF]
  59.     lda a    *lzero        ;   96 00  [96 00]
  60.     lda a    *ltwo55        ;   96 00  [96 FF]
  61.     lda a    *ltwo56        ;*L 96 00  [96 00]
  62.  
  63.     ; indexed test
  64.  
  65.     lda a    minus1,x    ;*L A6 00  [A6 FF]
  66.     lda a    zero,x        ;   A6 00  [A6 00]
  67.     lda a    two55,x        ;   A6 00  [A6 FF]
  68.     lda a    two56,x        ;*L A6 00  [A6 00]
  69.  
  70.     ; direct page boundary / length checking
  71.  
  72.     .area    A
  73.  
  74.     .blkb    1
  75.  
  76.     .area    PAGE0    (PAG)    ;*L Linker -- page boundary error
  77.  
  78.     .setdp    0,PAGE0        ;*L Linker -- page definition boundary error
  79.  
  80.     .blkb    0x101        ;*L Linker -- page length error
  81.  
  82.