?login_element?

Subversion Repositories NedoOS

Rev

Rev 126 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1.     DEFARRAY reg8 a, b, c, d, e, h, l, (hl), ixh, ixl, iyh, iyl
  2.     DEFARRAY reg16 af, bc, de, hl, ix, iy, sp
  3.  
  4.     ; IXY 8 bit invalid combinations
  5.     ld  h,ixh
  6.     ld  l,ixh
  7.     ld  h,ixl
  8.     ld  l,ixl
  9.  
  10.     ld  h,iyh
  11.     ld  l,iyh
  12.     ld  h,iyl
  13.     ld  l,iyl
  14.  
  15.     ld  ixh,h
  16.     ld  ixh,l
  17.     ld  ixl,h
  18.     ld  ixl,l
  19.  
  20.     ld  iyh,h
  21.     ld  iyh,l
  22.     ld  iyl,h
  23.     ld  iyl,l
  24.  
  25.     ; I and R register can be paired only against register A
  26. R1=1        ; skip A
  27.     DUP 11
  28.         ld  reg8[R1],r
  29.         ld  reg8[R1],i
  30.         ld  r,reg8[R1]
  31.         ld  i,reg8[R1]
  32. R1=R1+1
  33.     EDUP
  34.  
  35.     ; ld r16,SP , AF,r16, r16,AF doesn't exist
  36. R1=0
  37.     DUP 7
  38.         ld  reg16[R1],sp
  39.         ld  af,reg16[R1]
  40.         ld  reg16[R1],af
  41. R1=R1+1
  42.     EDUP
  43.  
  44.     ; ld r8,r16 / ld r16,r8     ; includes four valid fakes: ld bc|de,(hl) and (hl),bc|de
  45. R1=0
  46.     DUP 12
  47. R2=0
  48.         DUP 7
  49.             ld  reg8[R1],reg16[R2]
  50.             ld  reg16[R2],reg8[R1]
  51. R2=R2+1
  52.         EDUP
  53. R1=R1+1
  54.     EDUP
  55.  
  56.     ; special cases for MEM_HL "register"
  57. R1=7        ; skip A, .., L (start with "(hl)")
  58.     DUP 5
  59.         ld  reg8[R1],(hl)
  60.         ld  (hl),reg8[R1]
  61. R1=R1+1
  62.     EDUP
  63.  
  64.     ; some cases manually picked
  65.     ld      sp,bc
  66.     ld      sp,de
  67.     ld      hl,sp
  68.     ld      sp,(hl)
  69.     ld      hl,(hl)
  70.     ld      sp,(ix+1)
  71.     ld      sp,(sp)
  72.     ld      hl,(sp)
  73.