Skip to content
This repository has been archived by the owner on Aug 30, 2021. It is now read-only.

Commit

Permalink
Don't suppress frame interrupt when display is disabled
Browse files Browse the repository at this point in the history
After doing a hardware test that isolates the state changes made to the hardware in space squash's boot routine, it seems that the frame start interrupt fires regardless of the display hardware's enable state.

Note that this change breaks mario tennis (see 7423524 and 0ff9c61); there must be something in there that we haven't found yet that's supposed to suppress the interrupt instead.
  • Loading branch information
yupferris committed Sep 28, 2017
1 parent 01ef27a commit c39ef8a
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions rustual-boy-core/src/vip/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -588,12 +588,12 @@ impl Vip {
fn frame_clock(&mut self, raise_interrupt: &mut bool) {
logln!(Log::Vip, "Frame clock rising edge");

if self.reg_display_control_display_enable {
self.reg_interrupt_pending_start_of_display_frame = true;
if self.reg_interrupt_enable_start_of_display_frame {
*raise_interrupt = true;
}
self.reg_interrupt_pending_start_of_display_frame = true;
if self.reg_interrupt_enable_start_of_display_frame {
*raise_interrupt = true;
}

if self.reg_display_control_display_enable {
self.begin_display_process();
}

Expand Down

0 comments on commit c39ef8a

Please sign in to comment.