diff options
author | thing1 <thing1@seacrossedlovers.xyz> | 2024-10-07 13:01:30 +0100 |
---|---|---|
committer | thing1 <thing1@seacrossedlovers.xyz> | 2024-10-07 13:01:30 +0100 |
commit | 3564e513623bb3fc4d528d3d29df9aa91dae1396 (patch) | |
tree | 17d60d15b9c21db957ef966fc3eb763fd11fd244 /electronics/asm/7.asm | |
parent | ce61e41c6a14b84808aceb37d5118f23e3affaa0 (diff) |
did some electronics and comp sci work
Diffstat (limited to 'electronics/asm/7.asm')
-rw-r--r-- | electronics/asm/7.asm | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/electronics/asm/7.asm b/electronics/asm/7.asm new file mode 100644 index 0000000..4d7585c --- /dev/null +++ b/electronics/asm/7.asm @@ -0,0 +1,41 @@ +start: +init: + clrf PORTA ; make sure port A output latches are low + clrf PORTB ; make sure port B output latches are low + bsf STATUS,RP0 ; select memory bank 1 + movlw b'11111111' ; set port A data direction to inputs + movwf TRISA + movlw b'00000000' ; set port B data direction to outputs + movwf TRISB + bcf STATUS,RP0 ; select memory bank 0 + + VARA equ B20 + VARB equ B21 + + goto main +main: + btfsc PORTA, 0 + incf VARA, 0 + + btfsc PORTA, 1 + goto NEXTVAR + + goto main + +NEXTVAR: + btfsc PORTA, 0 + incf VARB, 0 + + btfsc PORTA, 1 + goto ADDITION + + goto NEXTVAR + +ADDITION: + movlw 0 + addwf VARA, 0 + addwf VARB, 0 + + movwf PORTB + + END ; ends the program |