# SDL based emulated display configuration options

# Copyright (c) 2018 Jan Van Winkel <jan.van_winkel@dxplore.eu>
# SPDX-License-Identifier: Apache-2.0

menuconfig SDL_DISPLAY
	bool "SDL based emulated display"
	depends on BOARD_NATIVE_POSIX
	select HAS_SDL
	help
	  Enable SDL based emulated display compliant with display driver API.

if SDL_DISPLAY

config SDL_DISPLAY_DEV_NAME
	string "SDL display device name"
	default "SDL_DISPLAY"

config SDL_DISPLAY_X_RES
	int "X resolution for SDL display"
	default 320

config SDL_DISPLAY_Y_RES
	int "Y resolution for SDL display"
	default 240

choice SDL_DISPLAY_DEFAULT_PIXEL_FORMAT
	prompt "Default pixel format"
	default SDL_DISPLAY_DEFAULT_PIXEL_FORMAT_ARGB_8888
	help
	  Default pixel format to be used by the display

	config SDL_DISPLAY_DEFAULT_PIXEL_FORMAT_ARGB_8888
		bool "ARGB 8888"

	config SDL_DISPLAY_DEFAULT_PIXEL_FORMAT_RGB_888
		bool "RGB 888"

	config SDL_DISPLAY_DEFAULT_PIXEL_FORMAT_MONO01
		bool "Mono Black=0"

	config SDL_DISPLAY_DEFAULT_PIXEL_FORMAT_MONO10
		bool "Mono Black=1"

endchoice

endif # SDL_DISPLAY
