Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;
- ; DisplaySegE.sflisp
- ;
- DIPSWITCH: EQU $FC
- SEGMENT7: EQU $FB
- SEG_ERROR EQU $79
- ORG $20
- DisplaySegE: LDX #Segmentkod
- DisplaySegE_1: LDA DIPSWITCH
- CMPA #10
- BCS DisplaySegE_2
- LDA #SEG_ERROR
- BRA DisplaySegE_3
- DisplaySegE_2: LDA A,X
- DisplaySegE_3: STA SEGMENT7
- JMP DisplaySegE_1
- ORG $70
- Segmentkod: FCB $3F,$06,$5B,$4F,$66,$6D,$FD,$07,$7F,$EF
- ORG $FF
- FCB DisplaySegE
- ;
- ; RunDiodeDelay
- ;
- LED: EQU $FB
- ORG $20
- RunDiodeDelay: LDSP #$10
- ANDCC #$FE
- LDA #1
- RunDiodeDelay_1:
- STA LED
- ASLA
- JSR Delay
- BCS RunDiodeDelay
- JMP RunDiodeDelay_1
- Delay: PSHA
- PSHC
- LDA #10
- Delay_1: DECA
- BNE Delay_1
- PULC
- PULA
- RTS
- ORG $FF
- FCB RunDiodeDelay
- ;
- ; Lab 4 3A
- ;
- OUTPORT: EQU $FB
- ORG $70
- Start: LDA #$05
- STA OUTPORT
- LDA #$06
- STA OUTPORT
- LDA #$0A
- STA OUTPORT
- LDA #$09
- STA OUTPORT
- JMP Start
- ORG $FF
- FCB Start
- ;
- ; Lab_4-3B
- ;
- INPORT: EQU $FC
- OUTPORT: EQU $FB
- ORG $70
- Start:
- LDSP $20
- LDX #$05
- LDA INPORT
- JSR Delay
- LDA state_index
- LDA A,X
- STA OUTPORT
- JSR NextState
- JMP Start
- Delay:
- PSHA
- PSHC
- LDA #10
- Delay_1:
- DECA
- BNE Delay_1
- PULC
- PULA
- RTS
- NextState:
- LDA state_index
- INCA
- ANDA #3
- STA state_index
- RTS
- ORG $10
- state_index: FCB $00
- state_vector: ORG $05
- FCB $05,$06,$0A,$09
- ORG $FF
- FCB Start
- Inport EQU $FC
- Utport EQU $FB
- DelayC1 EQU $10 ;Dessa konstanter styr hur lång fördröjning Delay1s orsakar.
- DelayC2 EQU $1 ;Ändra dem eventuellt i labbet så att fördröjnigen blir rimligt lång.
- ORG $FF
- FCB $20
- ORG $20
- LDSP #$D0
- Main:
- JSR Translate
- BRA Main
- ReadAscii:
- LDA Inport
- BITA #1
- BNE ReadAscii
- ReadAscii_1:
- LDA Inport
- BITA #1
- BEQ ReadAscii_1
- ASRA
- RTS
- BlinkLight:
- PSHA
- LDY #$FF
- STY Utport
- BITA #$80
- BNE ShortBlink
- BRA LongBlink
- BlinkEnd:
- CLR Utport
- JSR Delay1s
- PULA
- RTS
- ShortBlink:
- JSR Delay1s
- JSR Delay1s
- JSR Delay1s
- JSR Delay1s
- BRA BlinkEnd
- LongBlink:
- JSR Delay1s
- BRA BlinkEnd
- Translate:
- CLR Utport
- JSR ReadAscii
- SUBA #$41
- LSLA
- PSHA
- LDX #MorseCode
- LDA A,X
- STA Count
- PULA
- INCA
- LDA A,X
- Loop321:
- TST Count
- BEQ Klart
- JSR BlinkLight
- LSLA
- DEC Count
- BRA Loop321
- Klart:
- RTS
- ; Orsakar en fördröjning på ungefär 1s i simulatorn (vid snabb exekveringshastighet)
- ; Ändrar inga register
- Delay1s:
- PSHA
- PSHX
- PSHC
- LDX #DelayC2
- Delay1s_loop2:
- LDA #DelayC1
- Delay1s_loop:
- DECA
- BNE Delay1s_loop
- LEAX -1,X
- CMPX #0
- BNE Delay1s_loop2
- PULC
- PULX
- PULA
- RTS
- ; Data - Variabler
- Count:
- RMB 1
- ; Data - Konstanter
- MorseCode:
- FCB 2,%01000000 ;'A'
- FCB 4,%10000000 ;'B'
- FCB 4,%10100000 ;'C'
- FCB 3,%10000000 ;'D'
- FCB 1,%00000000 ;'E'
- FCB 4,%00100000 ;'F'
- FCB 3,%11000000 ;'G'
- FCB 4,%00000000 ;'H'
- FCB 2,%00000000 ;'I'
- FCB 4,%00010000 ;'J'
- FCB 3,%10100000 ;'K'
- FCB 4,%01000000 ;'L'
- FCB 2,%11000000 ;'M'
- FCB 2,%10000000 ;'N'
- FCB 3,%11100000 ;'O'
- FCB 4,%01100000 ;'P'
- FCB 4,%11010000 ;'Q'
- FCB 3,%01000000 ;'R'
- FCB 3,%00000000 ;'S'
- FCB 1,%10000000 ;'T'
- FCB 3,%00100000 ;'U'
- FCB 4,%00010000 ;'V'
- FCB 3,%00100000 ;'W'
- FCB 4,%10010000 ;'X'
- FCB 4,%10110000 ;'Y'
- FCB 4,%11000000 ;'Z'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement