mirror of https://github.com/inolen/redream.git
move sq to sh4 object
This commit is contained in:
parent
8ce539f85e
commit
2b763a22c8
|
@ -48,6 +48,9 @@ struct sh4 {
|
|||
int tmu_stats;
|
||||
struct list breakpoints;
|
||||
|
||||
/* ccn */
|
||||
uint32_t sq[2][8];
|
||||
|
||||
/* intc */
|
||||
enum sh4_interrupt sorted_interrupts[SH4_NUM_INTERRUPTS];
|
||||
uint64_t sort_id[SH4_NUM_INTERRUPTS];
|
||||
|
|
|
@ -63,7 +63,7 @@ void sh4_ccn_pref(struct sh4 *sh4, uint32_t addr) {
|
|||
dst |= addr & 0x3ffffe0;
|
||||
}
|
||||
|
||||
sh4_memcpy_to_guest(mem, dst, sh4->ctx.sq[sqi], 32);
|
||||
sh4_memcpy_to_guest(mem, dst, sh4->sq[sqi], 32);
|
||||
}
|
||||
|
||||
uint32_t sh4_ccn_cache_read(struct sh4 *sh4, uint32_t addr, uint32_t mask) {
|
||||
|
@ -92,15 +92,17 @@ void sh4_ccn_cache_write(struct sh4 *sh4, uint32_t addr, uint32_t data,
|
|||
|
||||
uint32_t sh4_ccn_sq_read(struct sh4 *sh4, uint32_t addr, uint32_t mask) {
|
||||
uint32_t sqi = (addr & 0x20) >> 5;
|
||||
unsigned idx = (addr & 0x1c) >> 2;
|
||||
return sh4->ctx.sq[sqi][idx];
|
||||
uint32_t idx = (addr & 0x1c) >> 2;
|
||||
CHECK_EQ(mask, 0xffffffff);
|
||||
return sh4->sq[sqi][idx];
|
||||
}
|
||||
|
||||
void sh4_ccn_sq_write(struct sh4 *sh4, uint32_t addr, uint32_t data,
|
||||
uint32_t mask) {
|
||||
uint32_t sqi = (addr & 0x20) >> 5;
|
||||
uint32_t idx = (addr & 0x1c) >> 2;
|
||||
sh4->ctx.sq[sqi][idx] = data;
|
||||
CHECK_EQ(mask, 0xffffffff);
|
||||
sh4->sq[sqi][idx] = data;
|
||||
}
|
||||
|
||||
uint32_t sh4_ccn_icache_read(struct sh4 *sh4, uint32_t addr, uint32_t mask) {
|
||||
|
|
|
@ -114,7 +114,6 @@ struct sh4_context {
|
|||
uint32_t fpul, mach, macl;
|
||||
uint32_t sgr, spc, ssr;
|
||||
uint64_t pending_interrupts;
|
||||
uint32_t sq[2][8];
|
||||
|
||||
/* processor sleep state */
|
||||
uint32_t sleep_mode;
|
||||
|
|
Loading…
Reference in New Issue