1 #ifndef HARDWARE_EFI_CONSOLE_H
2 #define HARDWARE_EFI_CONSOLE_H
5 Copyright © 2011, The AROS Development Team. All rights reserved.
8 Desc: EFI firmware console interface
12 #include <exec/types.h>
13 #include <hardware/efi/tables.h>
17 UWORD Code
; /* Raw scan code */
18 UWORD Char
; /* Unicode character */
21 /* Simple text input interface */
24 __eficall
SIPTR (*Reset
)(struct EFI_SimpleIn
*This
, UBYTE Extended
);
25 __eficall
SIPTR (*ReadKey
)(struct EFI_SimpleIn
*This
, struct EFI_InputKey
*Key
);
26 APTR WaitEvent
; /* Usable only by boot services */
31 LONG MaxMode
; /* Maximum mode number */
32 LONG Mode
; /* Current mode number */
33 LONG Attribute
; /* Text and background color (EGA-alike) */
34 LONG Col
; /* Current output coordinates */
36 UBYTE CursorVisible
; /* Boolean value */
39 /* Simple text output interface */
42 __eficall
SIPTR (*Reset
)(struct EFI_SimpleOut
*This
, UBYTE Extended
);
43 __eficall
SIPTR (*OutString
)(struct EFI_SimpleOut
*This
, UWORD
*String
);
44 __eficall
SIPTR (*TestString
)(struct EFI_SimpleOut
*This
, UWORD
*String
);
45 __eficall
SIPTR (*QueryMode
)(struct EFI_SimpleOut
*This
, IPTR Mode
, IPTR
*Cols
, IPTR
*Rows
);
46 __eficall
SIPTR (*SetMode
)(struct EFI_SimpleOut
*This
, IPTR Mode
);
47 __eficall
SIPTR (*SetAttribute
)(struct EFI_SimpleOut
*This
, IPTR Attr
);
48 __eficall
SIPTR (*ClearScreen
)(struct EFI_SimpleOut
*This
);
49 __eficall
SIPTR (*SetCursorPos
)(struct EFI_SimpleOut
*This
, IPTR Col
, IPTR Row
);
50 __eficall
SIPTR (*EnableCursor
)(struct EFI_SimpleOut
*This
, UBYTE Enable
);
52 struct EFI_TextMode
*Mode
; /* Represents current settings */