Alchemy
Loading...
Searching...
No Matches

wave_scroll.c File Reference

The wavy background: scanline scroll offsets fed by HBlank DMA. More...

Go to the source code of this file.

Functions

void DisplayScroll_ArmHBlankDma (void)
 Scheduler callback for the wavy background: restarts DMA 0 each frame to copy the current page's BG1 to BG3 scroll offsets into the scroll registers one scanline at a time.
void DisplayScroll_BuildAndSwapHBlankPage (void)
 Scheduler callback for the wavy background: fills the hidden page with each scanline's BG3, BG2 and BG1 offsets, the scroll plus a sine wave for x and for y (an axis with no step stays flat), then shows that page.
void DisplayScroll_DisarmHBlankDma (void)
 Stops the wavy background: removes its two callbacks and stops DMA 0.

Detailed Description

The wavy background: scanline scroll offsets fed by HBlank DMA.

Part of psynergy_effects.c, compiled only through it.

Definition in file wave_scroll.c.

Function Documentation

◆ DisplayScroll_ArmHBlankDma()

void DisplayScroll_ArmHBlankDma ( void )

Scheduler callback for the wavy background: restarts DMA 0 each frame to copy the current page's BG1 to BG3 scroll offsets into the scroll registers one scanline at a time.

The first line is written directly; the DMA writes three words at each HBlank from then on.

Definition at line 11 of file wave_scroll.c.

Referenced by DisplayScroll_ArmHBlankDma(), DisplayScroll_DisarmHBlankDma(), DisplayScroll_InitializeHBlankDma(), and Ripple_Stop().

◆ DisplayScroll_BuildAndSwapHBlankPage()

void DisplayScroll_BuildAndSwapHBlankPage ( void )

Scheduler callback for the wavy background: fills the hidden page with each scanline's BG3, BG2 and BG1 offsets, the scroll plus a sine wave for x and for y (an axis with no step stays flat), then shows that page.

Definition at line 44 of file wave_scroll.c.

Referenced by DisplayScroll_BuildAndSwapHBlankPage(), DisplayScroll_DisarmHBlankDma(), DisplayScroll_InitializeHBlankDma(), and Ripple_Stop().

◆ DisplayScroll_DisarmHBlankDma()

void DisplayScroll_DisarmHBlankDma ( void )

Stops the wavy background: removes its two callbacks and stops DMA 0.

Definition at line 123 of file wave_scroll.c.

Referenced by DisplayScroll_DisarmHBlankDma(), and Reveal_ShowSecrets().