Advertisement
Guest User

Untitled

a guest
Sep 6th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .INCLUDE "zeropage.inc"
  2.  
  3. .EXPORT _fiba
  4.  
  5. .CODE
  6.  
  7. _fiba:
  8.     cmp #0      ;set up loop
  9.     beq end_z
  10.     tay
  11.     lda #1      ;ptr1 = 0 ptr2 = 1 ptr3 = 0
  12.     ldx #0
  13.     stx ptr1
  14.     stx ptr1 + 1
  15.     sta ptr2
  16.     stx ptr2 + 1
  17.     stx ptr3
  18.     stx ptr3 + 1
  19. loop:
  20.     clc
  21.     lda ptr2    ;ptr1 = ptr2 + ptr3
  22.     adc ptr3
  23.     sta ptr1
  24.     lda ptr2 + 1
  25.     adc ptr3 + 1
  26.     sta ptr1 + 1
  27.     lda ptr2    ;ptr3 = ptr2
  28.     sta ptr3
  29.     lda ptr2 + 1
  30.     sta ptr3 + 1
  31.     lda ptr1    ;ptr2 = ptr1
  32.     sta ptr2
  33.     lda ptr1 + 1
  34.     sta ptr2 + 1
  35.     dey
  36.     beq end
  37.     jmp loop
  38. end:
  39.     lda ptr1
  40.     ldx ptr1 + 1
  41.     rts
  42. end_z:
  43.     lda #0
  44.     ldx #0
  45.     rts
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement