.DEFINE reg_joypad ($00) .DEFINE reg_lcd_controller ($40) .DEFINE reg_lcd_status ($41) .DEFINE reg_viewport_y ($42) .DEFINE reg_viewport_x ($43) .DEFINE reg_bg_palette ($47) .DEFINE reg_obj0_palette ($48) .DEFINE reg_interrupt_enable ($ff) .DEFINE VRAM_start $8000 .DEFINE OAM_start $FE00 .DEFINE mem_bunny_x_px ($c000) .DEFINE mem_bunny_y_px ($c001) .DEFINE mem_button_direction ($c002) .DEFINE mem_moving_sprite_direction ($c003) .DEFINE mem_moving_animation_step ($c004) .DEFINE mem_sprite_direction ($c005) .DEFINE mem_bunny_x ($c006) .DEFINE mem_bunny_y ($c007) .DEFINE mem_viewport_x ($c008) .DEFINE mem_viewport_y ($c009) .DEFINE mem_rng_state_1 ($c00a) ; 2 bytes .DEFINE mem_rng_state_2 ($c00b) ; 2 bytes .DEFINE mem_room_number ($c7ff) ; AND 0xf0 >> 8 gives the number of rooms and AND 0xf gives the number of corridors .DEFINE mem_room_array $c800 ; Takes the memory from c800 to c840 .DEFINE mem_corridors_array $c840 ; Takes the memory from c840 to c8a0 ; room = struct { ; x1: u8 ; x2: u8 ; y1: u8 ; y2: u8 ; } 4bytes ; corridor = struct { ; orientation: bool ; start u8 ; end u8 ; position u8 ; cut: u8 ; _padding: u24 ; } 8bytes .DEFINE enum_direction_left $01 .DEFINE enum_direction_right $02 .DEFINE enum_direction_up $03 .DEFINE enum_direction_down $04