;######################
;## Hangerőszabályzó ##
;##### PIC 16F818 #####
;#### Version 1.00 ####

         #include  P16F818.INC

         Org       00

Delay    Equ       020h
Volume   Equ       021h

         Bsf       STATUS,RP0
         Movlw     B'00100000'
         Movwf     OSCTUNE
         Movlw     B'10000000'
         Movwf     OPTION_REG
         Movlw     B'00000100'
         Movwf     OSCCON
         Clrf      INTCON
         Clrf      PIE1
         Clrf      PIE2
         Movlw     B'001100000'
         Movwf     TRISA
         Clrf      TRISB
         Bcf       STATUS,RP0

         Clrf      PORTA
         Clrf      PORTB

Main

         Call      Dly
         Btfsc     PORTA,5
         Goto      $+2
         Goto      Hen
         Btfsc     PORTA,6
         Goto      Main
         Goto      Hecs
         Goto      Main

Hen

         Call      Dly
         Btfsc     PORTA,5
         Goto      Main
         Incf      Volume
         Movfw     Volume
         Movwf     PORTB
         Call      Dly
         Goto      Main

Hecs

         Call      Dly
         Btfsc     PORTA,6
         Goto      Main
         Decf      Volume
         MovfW     Volume
         Movwf     PORTB
         Call      Dly
         Goto      Main

Dly

         Movlw     D'50'
         Movwf     Delay
         Decfsz    Delay,F
         Goto      $-1
         Return

         End