!to "fib.prg", cbm
*=$c000
jmp start
!source "stack.a"
!ifdef cpu6502 {
; fuer cpu6502Out
; ( w -- ), [ -- ]
out
+pop
tay
pla
sta $6001
tya
sta $6001
rts
}
start
+initstp
+lit 0 ; x := 0
+sto x
+lit 1 ; y := 1
+sto y
!ifdef cpu6502 {
; fuer cpu6502Out
lda #2 ; Zeilenumbruch nach 2 Bytes
sta $6000
}
loop ; while x < 32768 do
+lod x
+lit 32768
jsr lss
+jpc end
+lod x ; writeln x
!ifdef cpu6502 {
; fuer cpu6502Out
jsr out
} else {
jsr outdec
+lit 13
jsr outchr
}
+lod x ; z := x + y
+lod y
jsr add
+sto z
+lod y ; x := y
+sto x
+lod z ; y := z
+sto y
jmp loop
end
rts
x
!wo $0000
y
!wo $0000
z
!wo $0000