
    gR                          G d  d      Z y)c                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)AddrRegisterc                 $    ddg| _         d| _        y )N       )valuehi_ptrselfs    4d:\Programming\nes 3\engine\ppu_registers\address.py__init__zAddrRegister.__init__   s    QDJDK    c                 "    |dz	  |dz  g| _         y )N      r   r
   datas     r   setzAddrRegister.set   s    !)TD[)DJr   c                     | j                    | _         || j                  | j                   <   | j                  dxx   dz  cc<   y )Nr   ?   )r   r   r   s     r   updatezAddrRegister.update
   s3    kk/DK"DJJt{{JJqMZMr   c                     | j                   dxx   |z  cc<   | j                   d   dkD  r:| j                   dxx   dz  cc<   | j                   d   dz   dz  | j                   d<   y y )Nr   r   r   r   r   )r
   incs     r   r   zAddrRegister.inc   sZ    JJqMSMzz!}t
jjmtmzz!}q(J6djjm r   c                     d| _         y )Nr   )r   r	   s    r   reset_latchzAddrRegister.reset_latch   s	    DKr   c                 F    | j                   d   dz  | j                   d   z  S )Nr   r   r   r   r	   s    r   getzAddrRegister.get   s"    ::a=A

1--r   N)	__name__
__module____qualname__r   r   r   r   r   r    r   r   r   r      s     * 7.r   r   N)r   r!   r   r   <module>r"      s   . .r   