haiku/headers/private/kernel/frame_buffer_console.h
Axel Dörfler bb693d7764 * Added VESA capabilities field to the kernel args.
* The vesa driver no longer uses VGA programming if the chip does not support
  VGA compatibility.
* The VESA driver now tries to set the DAC to 8 bits per color gun.
* In VESA modes, the driver no longer tries to use VGA programming; introduced
  the new vesa_set_indexed_colors() that is now used for palette programming.
  This should fix wrong colors of 8 bit BWindowScreen users with VESA on real
  hardware (emulators usually didn't mind either way).
* Note that the app_server needs to maintain a palette per 8 bit screen, as
  right now, the colors are garbled after a workspace switch. Stefano, are you
  looking into that already?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 09:49:28 +00:00

44 lines
939 B
C

/*
* Copyright 2005-2009, Axel Dörfler, axeld@pinc-software.de.
* Distributed under the terms of the MIT License.
*/
#ifndef KERNEL_FRAME_BUFFER_CONSOLE_H
#define KERNEL_FRAME_BUFFER_CONSOLE_H
#include <console.h>
struct kernel_args;
#define FRAME_BUFFER_CONSOLE_MODULE_NAME "console/frame_buffer/v1"
#define FRAME_BUFFER_BOOT_INFO "frame_buffer/v1"
struct frame_buffer_boot_info {
area_id area;
addr_t frame_buffer;
int32 width;
int32 height;
int32 depth;
int32 bytes_per_row;
uint8 vesa_capabilities;
};
#ifdef __cplusplus
extern "C" {
#endif
bool frame_buffer_console_available(void);
status_t frame_buffer_console_init(struct kernel_args* args);
status_t frame_buffer_console_init_post_modules(struct kernel_args* args);
status_t _user_frame_buffer_update(addr_t baseAddress, int32 width,
int32 height, int32 depth, int32 bytesPerRow);
#ifdef __cplusplus
}
#endif
#endif /* KERNEL_FRAME_BUFFER_CONSOLE_H */