Subversion Repositories NedoOS

Rev

Rev 126 | Rev 539 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download

  1.     ; test various tricky cases of syntax
  2.     adc     a , (   ( 3 ) + ( 4 )   )
  3.     ld      a , (   ( 3 ) + ( 4 )   )
  4.     ld      a ,     ( 3 ) + ( 4 )
  5.     ld      a ,     ( 3 ) | ( 4 )
  6.     ld      a ,       ( 3 | 4 )
  7.     ld      a,((3|4))
  8.     ld      a,(+(3|4))
  9.     ld      a,+((3|4))
  10.  
  11.     ; test all IXY variants recognized by parser
  12.     ld      a,hx, a,xh, a,ixh, a,HX, a,XH, a,IXH, a,high ix, a,high IX, a,HIGH ix, a,HIGH IX
  13.     ld      a,lx, a,xl, a,ixl, a,LX, a,XL, a,IXL, a,low  ix, a,low  IX, a,LOW  ix, a,LOW  IX
  14.     ld      a,hy, a,yh, a,iyh, a,HY, a,YH, a,IYH, a,high iy, a,high IY, a,HIGH iy, a,HIGH IY
  15.     ld      a,ly, a,yl, a,iyl, a,LY, a,YL, a,IYL, a,low  iy, a,low  IY, a,LOW  iy, a,LOW  IY
  16.     push    ix, IX
  17.     push    iy, IY
  18.  
  19.     jp      (hl), hl, (ix), ix, (iy), iy        ; valid
  20.     ; invalid
  21.     jp      ((hl))
  22.     jp      ((ix))
  23.     jp      ((iy))
  24.  
  25.     ; ld r16,nnnn vs ld r16,(nnnn) heuristics in default syntax mode
  26.     ld      bc, $1230 + 4  , bc, ($1230) + (4)  , bc,+($1230 + 4)
  27.     ld      bc,($1230 + 4) , bc,(($1230) + (4)) , bc, [$1230 + 4] , bc,[($1230  +  4)]
  28.  
  29.     ld      de, $1230 + 4  , de, ($1230) + (4)  , de,+($1230 + 4)
  30.     ld      de,($1230 + 4) , de,(($1230) + (4)) , de, [$1230 + 4] , de,[($1230  +  4)]
  31.  
  32.     ld      hl, $1230 + 4  , hl, ($1230) + (4)  , hl,+($1230 + 4)
  33.     ld      hl,($1230 + 4) , hl,(($1230) + (4)) , hl, [$1230 + 4] , hl,[($1230  +  4)]
  34.  
  35.     ld      ix, $1230 + 4  , ix, ($1230) + (4)  , ix,+($1230 + 4)
  36.     ld      ix,($1230 + 4) , ix,(($1230) + (4)) , ix, [$1230 + 4] , ix,[($1230  +  4)]
  37.  
  38.     ld      iy, $1230 + 4  , iy, ($1230) + (4)  , iy,+($1230 + 4)
  39.     ld      iy,($1230 + 4) , iy,(($1230) + (4)) , iy, [$1230 + 4] , iy,[($1230  +  4)]
  40.  
  41.     ld      sp, $1230 + 4  , sp, ($1230) + (4)  , sp,+($1230 + 4)
  42.     ld      sp,($1230 + 4) , sp,(($1230) + (4)) , sp, [$1230 + 4] , sp,[($1230  +  4)]
  43.  
  44.     ld      bc,(hl), de,(hl)                    ; valid fake instructions
  45.     ld      hl,(ix+1), hl,(ix-128), hl,(ix+126)
  46.     ld      hl,(iy+1), hl,(iy-128), hl,(iy+126)
  47.     ; invalid
  48.     ld      hl,(hl)
  49.     ld      sp,(hl)
  50.     ld      ix,(hl)
  51.     ld      iy,(hl)
  52.     ld      hl,(ix+127)
  53.     ld      hl,(ix-129)
  54.     ld      hl,(iy+127)
  55.     ld      hl,(iy-129)
  56.  
  57.     ex      de,hl
  58.     ex      hl,de
  59.     ex      af
  60.     ex      af,af
  61.     ex      af,af'
  62.