Mercurial > repos > blastem
comparison z80_to_x86.c @ 292:b970ea214ecb
Added z80 test generator and z80 test runner.
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 08 May 2013 14:40:48 -0700 |
parents | fb840e0a48cd |
children | 921f9d8819da |
comparison
equal
deleted
inserted
replaced
291:eea3b118940d | 292:b970ea214ecb |
---|---|
43 if (reg != Z80_UNUSED && reg != Z80_USE_IMMED) { | 43 if (reg != Z80_UNUSED && reg != Z80_USE_IMMED) { |
44 return reg < Z80_BC ? SZ_B : SZ_W; | 44 return reg < Z80_BC ? SZ_B : SZ_W; |
45 } | 45 } |
46 //TODO: Handle any necessary special cases | 46 //TODO: Handle any necessary special cases |
47 return SZ_B; | 47 return SZ_B; |
48 } | |
49 | |
50 uint8_t z80_high_reg(uint8_t reg) | |
51 { | |
52 switch(reg) | |
53 { | |
54 case Z80_C: | |
55 case Z80_BC: | |
56 return Z80_B; | |
57 case Z80_E: | |
58 case Z80_DE: | |
59 return Z80_D; | |
60 case Z80_L: | |
61 case Z80_HL: | |
62 return Z80_H; | |
63 case Z80_IXL: | |
64 case Z80_IX: | |
65 return Z80_IXH; | |
66 case Z80_IYL: | |
67 case Z80_IY: | |
68 return Z80_IYH; | |
69 default: | |
70 return Z80_UNUSED; | |
71 } | |
72 } | |
73 | |
74 uint8_t z80_low_reg(uint8_t reg) | |
75 { | |
76 switch(reg) | |
77 { | |
78 case Z80_B: | |
79 case Z80_BC: | |
80 return Z80_C; | |
81 case Z80_D: | |
82 case Z80_DE: | |
83 return Z80_E; | |
84 case Z80_H: | |
85 case Z80_HL: | |
86 return Z80_L; | |
87 case Z80_IXH: | |
88 case Z80_IX: | |
89 return Z80_IXL; | |
90 case Z80_IYH: | |
91 case Z80_IY: | |
92 return Z80_IYL; | |
93 default: | |
94 return Z80_UNUSED; | |
95 } | |
96 } | 48 } |
97 | 49 |
98 uint8_t * zcycles(uint8_t * dst, uint32_t num_cycles) | 50 uint8_t * zcycles(uint8_t * dst, uint32_t num_cycles) |
99 { | 51 { |
100 return add_ir(dst, num_cycles, ZCYCLES, SZ_D); | 52 return add_ir(dst, num_cycles, ZCYCLES, SZ_D); |