Salve a tutti,
sono un nuovo utente che si e' imbattuto quasi casualmente sul vostro interessantissimo sito.
Come potete immaginare anche io sono un vecchio possessore di c64 che guardava con ammirazione i vari demo, intro che trovavo in giro (...in edicola).
La richezza di informazioni ed esempi su ML che si puo' trovare da voi mi ha fatto venire la voglia di impararlo (finalmente!!).
Quindi mi son messo di buona volonta a leggere la reference guide e a seguire un tutorial (
questo)...
Ora tutto e' andato liscio finche' non mi sono imbattuto nel seguente pezzo di codice:
(come si puo' intuire e' parte di una routine di scrolling di testo...)
...
scroll1: lda smooth1
sec
sbc #$02
and #$07
sta smooth1
bcs endscr1
ldx #$00
wrap: lda scroll_screen1+1,x
sta scroll_screen1,x
inx
cpx #$28
bne wrap
read1: lda $076f
cmp #$00
bne nowrap1
lda #<message1
ldx #>message1
sta read1+1
stx read1+2
jmp read1
nowrap1:
sta $076f
inc read1+1
lda read1+1
cmp #$00
bne endscr1
inc read1+2
endscr1: rts
...
quello che non capisco e' il funzionamento delle linee STA READ1+1, STX READ1+2, INC READ1+1 ecc...
Cioe' READ1 e' una label e quindi una locazione di memoria dove eventualmete fare un JMP non capisco quale sia il significato delle suddette operazioni ...potete spiegarmelo?
PS:spero di aver posto la domanda nel modo corretto scusate la niubbaggine :lol: