
    'wf                     $   d dl Z ddlmZ ddl  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y)    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	y)	
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_     b/home/panchajanya/Development/work/volatility3/venv/lib/python3.12/site-packages/capstone/m680x.pyr   r      s]    	V]]#	v}}%	6>>"	(	'	FMM"	&..!Hr   r   c                   D    e Zd Zdej                  fdej
                  ffZy)
M680xOpReladdressr
   N)r   r   r   r   r   r   r   r   r   r   r   r      s!    	FOO$	6>>"Hr   r   c                   D    e Zd Zdej                  fdej
                  ffZy)
M680xOpExtr   indirectN)r   r   r   r   r   c_boolr   r   r   r   r    r       s!    	FOO$	V]]#Hr   r    c                       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
y)	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$      sQ    			
	
	
	'	fnn%Hr   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y)M680xOptypevaluesizeaccessc                 .    | j                   j                  S N)r0   r%   selfs    r   r%   zM680xOp.imm2       zz~~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    zz%%%r   c                 .    | j                   j                  S r4   )r0   r+   r5   s    r   r+   zM680xOp.const_valJ   s    zz###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           & & $ $r   r.   c                   P    e Zd Zdej                  fdej                  fdedz  ffZy)CsM680xr   op_countoperands	   N)r   r   r   r   r   r.   r   r   r   r   r@   r@   O   s-    	&..!	V^^$	Wq[!Hr   r@   c                 ^    | j                   t        | j                  d | j                         fS r4   )r   r   rB   rA   )as    r   get_arch_inforF   V   s&    GG%ajj!**&=>??r   )r    r   m680x_const	Structurer   r   r    Unionr$   r.   r@   rF   r   r   r   <module>rK      s      	!! 	!! !! 	6<< 	"$f "$Jf @r   