⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tulip_types.hh

📁 一个mips虚拟机非常好代码,使用C++来编写的,希望大家多学学,
💻 HH
字号:
struct rdes {	union {		struct {#if BYTE_ORDER == BIG_ENDIAN			UInt32 own:1;			UInt32 fl:15;			UInt32 es:1;			UInt32 le:1;			UInt32 dt:2;			UInt32 rf:1;			UInt32 mf:1;			UInt32 fs:1;			UInt32 ls:1;			UInt32 tl:1;			UInt32 cs:1;			UInt32 ft:1;			UInt32 rj:1;			UInt32 pad:1;			UInt32 db:1;			UInt32 ce:1;			UInt32 of:1;#else			UInt32 of:1;			UInt32 ce:1;			UInt32 db:1;			UInt32 pad:1;			UInt32 rj:1;			UInt32 ft:1;			UInt32 cs:1;			UInt32 tl:1;			UInt32 ls:1;			UInt32 fs:1;			UInt32 mf:1;			UInt32 rf:1;			UInt32 dt:2;			UInt32 le:1;			UInt32 es:1;			UInt32 fl:15;			UInt32 own:1;#endif		} x;		UInt32 raw;	} rdes0;	union {		struct {#if BYTE_ORDER == BIG_ENDIAN			UInt32 pad1:6;			UInt32 rer:1;			UInt32 rch:1;			UInt32 pad2:2;			UInt32 rbs2:11;			UInt32 rbs1:11;#else			UInt32 rbs1:11;			UInt32 rbs2:11;			UInt32 pad2:2;			UInt32 rch:1;			UInt32 rer:1;			UInt32 pad1:6;#endif		} x;		UInt32 raw;	} rdes1;	UInt32 rdes2;	UInt32 rdes3;};struct tdes {	union {		struct {#if BYTE_ORDER == BIG_ENDIAN			UInt32 own:1;			UInt32 pad1:15;			UInt32 es:1;			UInt32 to:1;			UInt32 pad2:2;			UInt32 lo:1;			UInt32 nc:1;			UInt32 lc:1;			UInt32 ec:1;			UInt32 hf:1;			UInt32 cc:4;			UInt32 lf:1;			UInt32 uf:1;			UInt32 de:1;#else			UInt32 de:1;			UInt32 uf:1;			UInt32 lf:1;			UInt32 cc:4;			UInt32 hf:1;			UInt32 ec:1;			UInt32 lc:1;			UInt32 nc:1;			UInt32 lo:1;			UInt32 pad2:2;			UInt32 to:1;			UInt32 es:1;			UInt32 pad1:15;			UInt32 own:1;#endif		} x;		UInt32 raw;	} tdes0;	union {		struct {#if BYTE_ORDER == BIG_ENDIAN			UInt32 ic:1;			UInt32 ls:1;			UInt32 fs:1;			UInt32 ft1:1;			UInt32 set:1;			UInt32 ac:1;			UInt32 ter:1;			UInt32 tch:1;			UInt32 dpd:1;			UInt32 ft0:1;			UInt32 tbs2:11;			UInt32 tbs1:11;#else			UInt32 tbs1:11;			UInt32 tbs2:11;			UInt32 ft0:1;			UInt32 dpd:1;			UInt32 tch:1;			UInt32 ter:1;			UInt32 ac:1;			UInt32 set:1;			UInt32 ft1:1;			UInt32 fs:1;			UInt32 ls:1;			UInt32 ic:1;#endif		} x;		UInt32 raw;	} tdes1;	UInt32 tdes2;	UInt32 tdes3;};struct bus_mode_s{#if BYTE_ORDER == BIG_ENDIAN	UInt32 padding0 : 11;	UInt32 dbo : 1;	UInt32 tap : 3;	UInt32 das : 1;	UInt32 cal : 2;	UInt32 pbl : 6;	UInt32 ble : 1;	UInt32 dsl : 5;	UInt32 bar : 1;	UInt32 swr : 1;#else	UInt32 swr : 1;	UInt32 bar : 1;	UInt32 dsl : 5;	UInt32 ble : 1;	UInt32 pbl : 6;	UInt32 cal : 2;	UInt32 das : 1;	UInt32 tap : 3;	UInt32 dbo : 1;#endif};union bus_mode{	struct bus_mode_s r;	UInt32 data;};struct status_s{#if BYTE_ORDER == BIG_ENDIAN	UInt32 padding0 : 6;	UInt32 eb : 3;	UInt32 ts : 3;	UInt32 rs : 3;	UInt32 nis : 1;	UInt32 ais : 1;	UInt32 eri : 1;	UInt32 fbe : 1;	UInt32 lnf : 1;	UInt32 gte : 1;	UInt32 padding1 : 1;	UInt32 rwt : 1;	UInt32 rps : 1;	UInt32 ru : 1;	UInt32 ri : 1;	UInt32 unf : 1;	UInt32 lnp_anc : 1;	UInt32 tjt : 1;	UInt32 tu : 1;	UInt32 tps : 1;	UInt32 ti : 1;#else	UInt32 ti : 1;	UInt32 tps : 1;	UInt32 tu : 1;	UInt32 tjt : 1;	UInt32 lnp_anc : 1;	UInt32 unf : 1;	UInt32 ri : 1;	UInt32 ru : 1;	UInt32 rps : 1;	UInt32 rwt : 1;	UInt32 padding0 : 1;	UInt32 gte : 1;	UInt32 lnf : 1;	UInt32 fbe : 1;	UInt32 eri : 1;	UInt32 ais : 1;	UInt32 nis : 1;	UInt32 rs : 3;	UInt32 ts : 3;	UInt32 eb : 3;#endif};union status{	struct status_s r;	UInt32 data;};struct op_mode_s{#if BYTE_ORDER == BIG_ENDIAN	UInt32 padding0 : 16;	UInt32 threshold_ctrl : 2;	UInt32 start_send : 1;	UInt32 padding1 : 1;	UInt32 operating_mode : 2;	UInt32 full_duplex : 1;	UInt32 padding2 : 1;	UInt32 pass_multi : 1;	UInt32 promisc : 1;	UInt32 padding3 : 1;	UInt32 inverse_filter : 1;	UInt32 pass_bad_frames : 1;	UInt32 hash_only : 1;	UInt32 start_rcv : 1;	UInt32 hash_perfect : 1;#else	UInt32 hash_perfect : 1;	UInt32 start_rcv : 1;	UInt32 hash_only : 1;	UInt32 pass_bad_frames : 1;	UInt32 inverse_filter : 1;	UInt32 padding0 : 1;	UInt32 promisc : 1;	UInt32 pass_multi : 1;	UInt32 padding1 : 1;	UInt32 full_duplex : 1;	UInt32 operating_mode : 2;	UInt32 padding2 : 1;	UInt32 start_send : 1;	UInt32 threshold_ctrl : 2;#endif};union op_mode{	struct op_mode_s r;	UInt32 data;};struct irq_mask_s{#if BYTE_ORDER == BIG_ENDIAN	UInt32 padding0 : 15;	UInt32 nim : 1;	UInt32 aim : 1;	UInt32 erm : 1;	UInt32 sem : 1;	UInt32 lfm : 1;	UInt32 tmm : 1;	UInt32 padding1 : 1;	UInt32 rwm : 1;	UInt32 rsm : 1;	UInt32 rum : 1;	UInt32 rim : 1;	UInt32 unm : 1;	UInt32 lpm : 1;	UInt32 tjm : 1;	UInt32 tum : 1;	UInt32 tsm : 1;	UInt32 tim : 1;#else	UInt32 tim : 1;	UInt32 tsm : 1;	UInt32 tum : 1;	UInt32 tjm : 1;	UInt32 lpm : 1;	UInt32 unm : 1;	UInt32 rim : 1;	UInt32 rum : 1;	UInt32 rsm : 1;	UInt32 rwm : 1;	UInt32 padding0 : 1;	UInt32 tmm : 1;	UInt32 lfm : 1;	UInt32 sem : 1;	UInt32 erm : 1;	UInt32 aim : 1;	UInt32 nim : 1;#endif};union irq_mask{	struct irq_mask_s r;	UInt32 data;};struct srom_mii_s{#if BYTE_ORDER == BIG_ENDIAN	UInt32 padding0 : 17;	UInt32 rd : 1;	UInt32 wr : 1;	UInt32 br : 1;	UInt32 sr : 1;	UInt32 reg : 1;	UInt32 padding1 : 6;	UInt32 din : 1;	UInt32 dout : 1;	UInt32 clk : 1;	UInt32 cs : 1;#else	UInt32 cs : 1;	UInt32 clk : 1;	UInt32 dout : 1;	UInt32 din : 1;	UInt32 padding0 : 6;	UInt32 reg : 1;	UInt32 sr : 1;	UInt32 br : 1;	UInt32 wr : 1;	UInt32 rd : 1;#endif};union srom_mii{	struct srom_mii_s r;	UInt32 data;};struct sia_conn_s{#if BYTE_ORDER == BIG_ENDIAN	UInt32 padding0 : 16;	UInt32 sdm : 12;	UInt32 aui : 1;	UInt32 cac : 1;	UInt32 padding1 : 1;	UInt32 srl : 1;#else	UInt32 srl : 1;	UInt32 padding0 : 1;	UInt32 cac : 1;	UInt32 aui : 1;	UInt32 sdm : 12;#endif};union sia_conn{	struct sia_conn_s r;	UInt32 data;};struct sia_txrx_s{#if BYTE_ORDER == BIG_ENDIAN	UInt32 padding0 : 16;	UInt32 tas : 1;	UInt32 spp : 1;	UInt32 ape : 1;	UInt32 lte : 1;	UInt32 sqe : 1;	UInt32 cld : 1;	UInt32 csq : 1;	UInt32 rsq : 1;	UInt32 ane : 1;	UInt32 mbo : 1;	UInt32 cpen : 2;	UInt32 lse : 1;	UInt32 dren : 1;	UInt32 lbk : 1;	UInt32 ecen : 1;#else	UInt32 ecen : 1;	UInt32 lbk : 1;	UInt32 dren : 1;	UInt32 lse : 1;	UInt32 cpen : 2;	UInt32 mbo : 1;	UInt32 ane : 1;	UInt32 rsq : 1;	UInt32 csq : 1;	UInt32 cld : 1;	UInt32 sqe : 1;	UInt32 lte : 1;	UInt32 ape : 1;	UInt32 spp : 1;	UInt32 tas : 1;#endif};union sia_txrx{	struct sia_txrx_s r;	UInt32 data;};struct sia_general_s{#if BYTE_ORDER == BIG_ENDIAN	UInt32 padding0 : 16;	UInt32 lv2 : 1;	UInt32 le2 : 1;	UInt32 frl : 1;	UInt32 dpst : 1;	UInt32 lsd : 1;	UInt32 flf : 1;	UInt32 fusq : 1;	UInt32 tsck : 1;	UInt32 lv1 : 1;	UInt32 le1 : 1;	UInt32 rwr : 1;	UInt32 rwd : 1;	UInt32 abm : 1;	UInt32 jck : 1;	UInt32 huj : 1;	UInt32 jbd : 1;#else	UInt32 jbd : 1;	UInt32 huj : 1;	UInt32 jck : 1;	UInt32 abm : 1;	UInt32 rwd : 1;	UInt32 rwr : 1;	UInt32 le1 : 1;	UInt32 lv1 : 1;	UInt32 tsck : 1;	UInt32 fusq : 1;	UInt32 flf : 1;	UInt32 lsd : 1;	UInt32 dpst : 1;	UInt32 frl : 1;	UInt32 le2 : 1;	UInt32 lv2 : 1;#endif};union sia_general{	struct sia_general_s r;	UInt32 data;};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -