some irq hacks

notes to self (derived from Nemesis):

H32: 0x10A .. 0x127 0x1D2 .. 0x1FF 0x000 0x001
pclk       30             46          1 |0x109
mclk                 770                | 2650   = 3420
68kclk              110                   378.5 ~= 488.5

H40: 0x14A .. 0x16C 0x1C9 .. 0x1FF 0x000 0x001
pclk       35             55          1
mclk     35*8       4*8+314+10+19*8     |0x149*8
                  788                   | 2632   = 3420
68kclk           112.5                    376   ~= 488.5
This commit is contained in:
notaz 2017-10-07 00:08:05 +03:00
parent e015ad3c1b
commit 22814963cc
5 changed files with 39 additions and 38 deletions

View file

@ -117,13 +117,9 @@ extern m68ki_cpu_core PicoCpuMM68k, PicoCpuMS68k;
#define SekNotPolling PicoCpuMM68k.not_polling
#define SekNotPollingS68k PicoCpuMS68k.not_polling
#define SekInterrupt(irq) { \
void *oldcontext = m68ki_cpu_p; \
m68k_set_context(&PicoCpuMM68k); \
m68k_set_irq(irq); \
m68k_set_context(oldcontext); \
}
#define SekIrqLevel (PicoCpuMM68k.int_level >> 8)
// avoid m68k_set_irq() for delaying to work
#define SekInterrupt(irq) PicoCpuMM68k.int_level = (irq) << 8
#define SekIrqLevel (PicoCpuMM68k.int_level >> 8)
#endif
#endif // EMU_M68K