abstract class GB::PPU

Direct Known Subclasses

Defined in:

crab/gb/ppu.cr

Constant Summary

DMG_COLORS = Slice[27615_u16, 15039_u16, 13757_u16, 11503_u16]
HEIGHT = 144
WIDTH = 160

Constructors

Instance Method Summary

Constructor Detail

def self.new(gb : GB) #

[View source]

Instance Method Detail

def [](index : Int) : UInt8 #

read from ppu memory


[View source]
def []=(index : Int, value : UInt8) : Nil #

write to ppu memory


[View source]
def bg_display? : Bool #

[View source]
def bg_tile_map : UInt8 #

[View source]
def bg_window_tile_data : UInt8 #

[View source]
def coincidence_flag : Bool #

[View source]
def coincidence_flag=(on : Bool) : Nil #

[View source]
def coincidence_interrupt_enabled : Bool #

[View source]
def copy_hdma_block(block_number : Int) : Nil #

Copy 16-byte block from hdma_src to hdma_dst, then decrement value in hdma5


[View source]
def frame : Bool #

[View source]
def frame=(frame : Bool) #

[View source]
def framebuffer : Slice(UInt16) #

[View source]
def handle_stat_interrupt : Nil #

handle stat interrupts stat interrupts are only requested on the rising edge


[View source]
def hblank_interrupt_enabled : Bool #

[View source]
def lcd_enabled? : Bool #

[View source]
def mode_flag : UInt8 #

[View source]
def mode_flag=(mode : UInt8) #

[View source]
def oam_interrupt_enabled : Bool #

[View source]
def palette_from_enumerable(palette_array : Enumerable(UInt8)) : UInt8 #

[View source]
def skip_boot : Nil #

[View source]
def sprite_enabled? : Bool #

[View source]
def sprite_height #

[View source]
def start_hdma(value : UInt8) : Nil #

[View source]
def step_hdma : Nil #

[View source]
def update_palette(palette : Indexable(UInt8), val : UInt8) : Nil #

[View source]
def vblank_interrupt_enabled : Bool #

[View source]
def window_enabled? : Bool #

[View source]
def window_tile_map : UInt8 #

[View source]
def write_png : Nil #

[View source]