Come posso archiviare il contenuto di un registro, a un indirizzo specificato da una variabile in memoria?

StackOverflow https://stackoverflow.com/questions/7410538

Domanda

Il titolo è fondamentalmente.

Ho luci che ho bisogno di accendere e spegnere. C'è un pulsante che determina quale luce dovrebbe essere. Quindi, quando il pulsante viene premuto o non premuto, modifico una variabile che contiene l'indirizzo della porta di quella luce. Per accendere una luce, devo archiviare $ 00 a quell'indirizzo. Per esempio:

;**********************************************************
;LED1on subroutine
;
;   This will turn LED 1 on, and then return.

LED1on
        LDAA        #$00        ; Load $00 into accumulator a (the value to turn the light on)
        STAA        $PORTA      ; Store the loaded value into PORTA, PORTA is a MACRO that =$0000

        RTS                     ; Return to sender

Quindi quello che voglio fare è avere una variabile, poselect = $ 0000. E usalo invece.

;**********************************************************
;LED1on subroutine
;
;   This will turn LED 1 on, and then return.

LED1on
        LDAA        #$00        ; Load $00 into accumulator a (the value to turn the light on)
        STAA        PoSelect    ; PoSelect is a variable that contains a port address

        RTS

Ciò tuttavia memorizza solo il contenuto di "Accumulator A" nella POSEELET variabile. Quello che voglio fare è archiviare il contenuto di "Accumulator A" nell'indirizzo che viene archiviato nella variabile POSEELET. Essenzialmente usando la variabile poselect come un puntatore.

Come lo faccio???

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top