Subversion Repositories pentevo

Rev

Blame | Last modification | View Log | Download | RSS feed | ?url?

  1.         cpu     6502
  2.  
  3. ;--------------------------------------------------------------------------
  4. ; tests of named temporary symbols
  5.  
  6.         ldx     #00
  7. $$loop: dex
  8.         bne     $$loop
  9.  
  10.         ldx     RealSymbol
  11.         cpx     #00
  12.         beq     skip
  13.         nop
  14. skip:
  15.  
  16.         ldx     #00
  17. $$loop: dex
  18.         bne     $$loop
  19.  
  20. ;--------------------------------------------------------------------------
  21. ; tests of nameless temporary symbols
  22.  
  23. -       ldx     #00
  24. -       dex
  25.         bne     -
  26.         lda     RealSymbol
  27.         beq     +
  28.         jsr     SomeRtn
  29.         iny
  30. +       bne     --
  31.  
  32. SomeRtn:
  33.         rts
  34.  
  35. RealSymbol:
  36.         dfs     1
  37.  
  38.         inc     ptr
  39.         bne     +               ;branch forward to tax
  40.         inc     ptr+1           ;parsed as "not a temporary reference" ie. its a math operator
  41.                                 ;or whatever (in the original Buddy assembler, ptr+1 would refer to the high
  42.                                 ;byte of "ptr").
  43. +       tax
  44.  
  45.         bpl     ++              ;branch forwared to dex
  46.         beq     +               ;branch forward to rts
  47.         lda     #0
  48. /       rts                     ; <====== slash used as wildcard.
  49. +       dex
  50.         beq     -               ;branch backward to rts
  51.  
  52.  
  53. ptr:    dfs     2
  54.