- WriteLog( "\t68K PC=%06X SP=%08X\n", m68k_get_reg(NULL, M68K_REG_PC), m68k_get_reg(NULL, M68K_REG_A7));
-}
-
-void jaguar_reset_handler(void)
-{
-}
-
-void jaguar_exec(int16 * backbuffer, bool render)
-{
- uint32 i, vblank_duration = tom_get_vdb();
-
- // vblank
- if ((tom_irq_enabled(IRQ_VBLANK)) && (jaguar_interrupt_handler_is_valid(64)))
- {
- if (jaguar_word_read(0xF0004E) != 0x07FF) // VI (11 bits wide!)
- {
- tom_set_pending_video_int();
-// s68000interrupt(7, IRQ_VBLANK+64);
-// s68000flushInterrupts();
- m68k_set_irq(7); // IRQ_VBLANK+64??? Not autovectored??? No.
-// Could set a global variable here, to signal that this is a VBLANK interrupt...
-// Then again, since IRQ_VBLANK is set to zero, this would not be necessary in this case.
- }
- }
-
- for(i=0; i<vblank_duration; i++)
- {
-/* uint32 invalid_instruction_address = s68000exec(m68k_cycles_per_scanline);
- if (invalid_instruction_address != 0x80000000)
- cd_bios_process(invalid_instruction_address);*/
- m68k_execute(m68k_cycles_per_scanline);
- // No CD handling... !!! FIX !!!
-
- cd_bios_exec(i);
- tom_pit_exec(m68k_cycles_per_scanline);
- tom_exec_scanline(backbuffer, i, false);
- jerry_pit_exec(m68k_cycles_per_scanline);
- jerry_i2s_exec(m68k_cycles_per_scanline);
- gpu_exec(gpu_cycles_per_scanline);
- if (dsp_enabled)
- dsp_exec(dsp_cycles_per_scanline);
- }
-
- for (; i<jaguar_screen_scanlines; i++)
- {
-/* uint32 invalid_instruction_address = s68000exec(m68k_cycles_per_scanline);
- if (invalid_instruction_address != 0x80000000)
- cd_bios_process(invalid_instruction_address);*/
- m68k_execute(m68k_cycles_per_scanline);
- // No CD handling... !!! FIX !!!
- cd_bios_exec(i);
- tom_pit_exec(m68k_cycles_per_scanline);
- jerry_pit_exec(m68k_cycles_per_scanline);
- jerry_i2s_exec(m68k_cycles_per_scanline);
- tom_exec_scanline(backbuffer, i, render);
- gpu_exec(gpu_cycles_per_scanline);
- if (dsp_enabled)
- dsp_exec(dsp_cycles_per_scanline);
- backbuffer += tom_width;
- }
-#ifdef SOUND_OUTPUT
- system_sound_update();
-#endif