Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Thread vom 5.02.2004 Kategorie: Programmierung ASM (von Dierk, Homepage - 29.01.2005 11:20)
 Als Antwort auf Thread vom 5.02.2004 von delucks - 28.01.2005 22:40
Ich habe mal die Punkte vor equ, org und end weg gemacht. Funktioniert dann, wunderbar -zumindest As05 technisch. Was diese Punkte beduten sollebn, kann ich Dir aber nicht sagen.

portb   equ 1

        org $101

        lda #0          ; User-Bytes 1 bis 4 auf Null setzen
        sta $0A1
        sta $0A2
        sta $0A3
        sta $0A4

                        ; Puls an Portpin 1 dekodieren
w_hi_1  lda portb       ; Port 1 einlesen
        and #1          ; Pin 1 ausmaskieren
        bne w_lo_1      ; weiter wenn high
        bra w_hi_1
w_lo_1  lda portb       ; Port 1 einlesen
        and #1          ; Pin 1 ausmaskieren
        bne w_lo_1      ; warten bis low
cnt_1   inc $0A1        ; User-Byte 1 inkrementieren
        lda portb       ; Port 1 einlesen
        and #1          ; Pin 1 ausmaskieren
        bne w_hi_2      ; weiter wenn high
        nop
        nop
        nop
        bra cnt_1

                        ; Puls an Portpin 2 dekodieren
w_hi_2  lda portb       ; Port 1 einlesen
        and #2          ; Pin 2 ausmaskieren
        bne w_lo_2      ; weiter wenn high
        bra w_hi_2
w_lo_2  lda portb       ; Port 1 einlesen
        and #2          ; Pin 2 ausmaskieren
        bne w_lo_2      ; warten bis low
cnt_2   inc $0A2        ; User-Byte 2 inkrementieren
        lda portb       ; Port 1 einlesen
        and #2          ; Pin 2 ausmaskieren
        bne w_hi_3      ; weiter wenn high
        nop
        nop
        nop
        bra cnt_2

                        ; Puls an Portpin 3 dekodieren
w_hi_3  lda portb       ; Port 1 einlesen
        and #4          ; Pin 3 ausmaskieren
        bne w_lo_3      ; weiter wenn high
        bra w_hi_3
w_lo_3  lda portb       ; Port 1 einlesen
        and #4          ; Pin 3 ausmaskieren
        bne w_lo_3      ; warten bis low
cnt_3   inc $0A3        ; User-Byte 3 inkrementieren
        lda portb       ; Port 1 einlesen
        and #4          ; Pin 3 ausmaskieren
        bne w_hi_4      ; weiter wenn high
        nop
        nop
        nop
        bra cnt_3

                        ; Puls an Portpin 4 dekodieren
w_hi_4  lda portb       ; Port 1 einlesen
        and #8          ; Pin 4 ausmaskieren
        bne w_lo_4      ; weiter wenn high
        bra w_hi_4
w_lo_4  lda portb       ; Port 1 einlesen
        and #8          ; Pin 4 ausmaskieren
        bne w_lo_4      ; warten bis low
cnt_4   inc $0A4        ; User-Byte 4 inkrementieren
        lda portb       ; Port 1 einlesen
        and #8          ; Pin 4 ausmaskieren
        bne finish      ; weiter wenn high
        nop
        nop
        nop
        bra cnt_4


finish  rts
        end


Meine Homepage: http://www.csslabs.de/ccontrol

 Antwort schreiben

Bisherige Antworten:

Re: Thread vom 5.02.2004 (von delucks - 29.01.2005 21:02)