
    >f                        d dl Z ddlmZ ddlT  G d de j                  Z G d de j                  Z G d	 d
e j                  Z G d de j                  Z	 G d de j                  Z
 G d de j                  Zd ZdS )    N   )copy_ctypes_list)*c                       e Zd Zdej        fdej        fdej        fdej        fdej        fdej        fdej        ffZ	dS )	
M680xOpIdxbase_reg
offset_regoffsetoffset_addroffset_bitsinc_decflagsN)
__name__
__module____qualname__ctypesc_uintc_int16c_uint16c_uint8c_int8_fields_     ]/home/panchajanya/Development/work/volatility3/lib/python3.11/site-packages/capstone/m680x.pyr   r      s[        	V]#	v}%	6>"	(	'	FM"	&.!HHHr   r   c                   2    e Zd Zdej        fdej        ffZdS )
M680xOpReladdressr
   N)r   r   r   r   r   r   r   r   r   r   r   r      s)        	FO$	6>"HHHr   r   c                   2    e Zd Zdej        fdej        ffZdS )
M680xOpExtr   indirectN)r   r   r   r   r   c_boolr   r   r   r   r    r       s)        	FO$	V]#HHHr   r    c                   d    e Zd Zdej        fdej        fdefdefdefdej	        fdej	        ffZ
dS )	M680xOpValueimmregidxrelextdirect_addr	const_valN)r   r   r   r   c_int32r   r   r   r    r   r   r   r   r   r$   r$      sU        			
	
	
	'	fn%HHHr   r$   c                       e Zd Zdej        fdefdej        fdej        ffZed             Z	ed             Z
ed             Zed             Zed	             Zed
             Zed             ZdS )M680xOptypevaluesizeaccessc                     | j         j        S N)r0   r%   selfs    r   r%   zM680xOp.imm2       z~r   c                     | j         j        S r4   )r0   r&   r5   s    r   r&   zM680xOp.reg6   r7   r   c                     | j         j        S r4   )r0   r'   r5   s    r   r'   zM680xOp.idx:   r7   r   c                     | j         j        S r4   )r0   r(   r5   s    r   r(   zM680xOp.rel>   r7   r   c                     | j         j        S r4   )r0   r)   r5   s    r   r)   zM680xOp.extB   r7   r   c                     | j         j        S r4   )r0   r*   r5   s    r   r*   zM680xOp.direct_addrF   s    z%%r   c                     | j         j        S r4   )r0   r+   r5   s    r   r+   zM680xOp.const_valJ   s    z##r   N)r   r   r   r   r   r$   r   r   propertyr%   r&   r'   r(   r)   r*   r+   r   r   r   r.   r.   *   s        		,	 	6>"	H   X   X   X   X   X & & X& $ $ X$ $ $r   r.   c                   >    e Zd Zdej        fdej        fdedz  ffZdS )CsM680xr   op_countoperands	   N)r   r   r   r   r   r.   r   r   r   r   r@   r@   O   s5        	&.!	V^$	Wq[!HHHr   r@   c                 R    | j         t          | j        d | j                           fS r4   )r   r   rB   rA   )as    r   get_arch_inforF   V   s%    G%aj!*&=>>??r   )r    r   m680x_const	Structurer   r   r    Unionr$   r.   r@   rF   r   r   r   <module>rK      sZ             	 	 	 	 	! 	 	 	    !       !   	 	 	 	 	6< 	 	 	"$ "$ "$ "$ "$f "$ "$ "$J    f   @ @ @ @ @r   