GBDK 2020 Docs 4.4.0 API Documentation for GBDK 2020

Macros
laptop_keycodes.h File Reference
`#include <gbdk/platform.h>`
`#include <stdint.h>`
`#include <stdbool.h>`

Go to the source code of this file.

## Macros
#define | DUCK_IO_KEY_FLAG_KEY_REPEAT 0x01u
#define | DUCK_IO_KEY_FLAG_KEY_REPEAT_BIT 0x0u
#define | DUCK_IO_KEY_FLAG_CAPSLOCK 0x02u
#define | DUCK_IO_KEY_FLAG_CAPSLOCK_BIT 0x1u
#define | DUCK_IO_KEY_FLAG_SHIFT 0x04u
#define | DUCK_IO_KEY_FLAG_SHIFT_BIT 0x2u
#define | DUCK_IO_KEY_FLAG_PRINTSCREEN_LEFT 0x08u
#define | DUCK_IO_KEY_FLAG_PRINTSCREEN_LEFT_BIT 0x3u
#define | DUCK_IO_KEY_BASE_BIT 0x7u
#define | DUCK_IO_KEY_BASE 0x80u
#define | DUCK_IO_KEY_F1 0x80u
#define | DUCK_IO_KEY_F2 0x84u
#define | DUCK_IO_KEY_F3 0x88u
#define | DUCK_IO_KEY_F4 0x8Cu
#define | DUCK_IO_KEY_F5 0x90u
#define | DUCK_IO_KEY_F6 0x94u
#define | DUCK_IO_KEY_F7 0x98u
#define | DUCK_IO_KEY_F8 0x9Cu
#define | DUCK_IO_KEY_F9 0xA0u
#define | DUCK_IO_KEY_F10 0xA4u
#define | DUCK_IO_KEY_F11 0xA8u
#define | DUCK_IO_KEY_F12 0xACu
#define | DUCK_IO_KEY_ESCAPE 0x81u
#define | DUCK_IO_KEY_1 0x85u
#define | DUCK_IO_KEY_2 0x89u
#define | DUCK_IO_KEY_3 0x8Du
#define | DUCK_IO_KEY_4 0x91u
#define | DUCK_IO_KEY_5 0x95u
#define | DUCK_IO_KEY_6 0x99u
#define | DUCK_IO_KEY_7 0x9Du
#define | DUCK_IO_KEY_8 0xA1u
#define | DUCK_IO_KEY_9 0xA5u
#define | DUCK_IO_KEY_0 0xA9u
#define | DUCK_IO_KEY_SINGLE_QUOTE 0xADu
#define | DUCK_IO_KEY_EXCLAMATION_FLIPPED 0xB1u
#define | DUCK_IO_KEY_BACKSPACE 0xB5u
#define | DUCK_IO_KEY_HELP 0x82u
#define | DUCK_IO_KEY_Q 0x86u
#define | DUCK_IO_KEY_W 0x8Au
#define | DUCK_IO_KEY_E 0x8Eu
#define | DUCK_IO_KEY_R 0x92u
#define | DUCK_IO_KEY_T 0x96u
#define | DUCK_IO_KEY_Y 0x9Au
#define | DUCK_IO_KEY_U 0x9Eu
#define | DUCK_IO_KEY_I 0xA2u
#define | DUCK_IO_KEY_O 0xA6u
#define | DUCK_IO_KEY_P 0xAAu
#define | DUCK_IO_KEY_BACKTICK 0xAEu
#define | DUCK_IO_KEY_RIGHT_SQ_BRACKET 0xB2u
#define | DUCK_IO_KEY_ENTER 0xB6u
#define | DUCK_IO_KEY_A 0x87u
#define | DUCK_IO_KEY_S 0x8Bu
#define | DUCK_IO_KEY_D 0x8Fu
#define | DUCK_IO_KEY_F 0x93u
#define | DUCK_IO_KEY_G 0x97u
#define | DUCK_IO_KEY_H 0x9Bu
#define | DUCK_IO_KEY_J 0x9Fu
#define | DUCK_IO_KEY_K 0xA3u
#define | DUCK_IO_KEY_L 0xA7u
#define | DUCK_IO_KEY_N_TILDE 0xABu
#define | DUCK_IO_KEY_U_UMLAUT 0xAFu
#define | DUCK_IO_KEY_O_OVER_LINE 0xB3u
#define | DUCK_IO_KEY_Z 0xB8u
#define | DUCK_IO_KEY_X 0xBCu
#define | DUCK_IO_KEY_C 0xC0u
#define | DUCK_IO_KEY_V 0xC4u
#define | DUCK_IO_KEY_B 0xC8u
#define | DUCK_IO_KEY_N 0xCCu
#define | DUCK_IO_KEY_M 0xD0u
#define | DUCK_IO_KEY_COMMA 0xD4u
#define | DUCK_IO_KEY_PERIOD 0xD8u
#define | DUCK_IO_KEY_DASH 0xDCu
#define | DUCK_IO_KEY_DELETE 0xE0u
#define | DUCK_IO_KEY_SPACE 0xB9u
#define | DUCK_IO_KEY_LESS_THAN 0xBDu
#define | DUCK_IO_KEY_PAGE_UP 0xC1u
#define | DUCK_IO_KEY_PAGE_DOWN 0xC5u
#define | DUCK_IO_KEY_MEMORY_MINUS 0xC9u
#define | DUCK_IO_KEY_MEMORY_PLUS 0xCDu
#define | DUCK_IO_KEY_MEMORY_RECALL 0xD1u
#define | DUCK_IO_KEY_SQUAREROOT 0xD5u
#define | DUCK_IO_KEY_MULTIPLY 0xD9u
#define | DUCK_IO_KEY_ARROW_DOWN 0xDDu
#define | DUCK_IO_KEY_MINUS 0xE1u
#define | DUCK_IO_KEY_ARROW_LEFT 0xE5u
#define | DUCK_IO_KEY_EQUALS 0xE9u
#define | DUCK_IO_KEY_ARROW_RIGHT 0xEDu
#define | DUCK_IO_KEY_DIVIDE 0xE4u
#define | DUCK_IO_KEY_ARROW_UP 0xE8u
#define | DUCK_IO_KEY_PLUS 0xECu
#define | DUCK_IO_KEY_PIANO_DO_SHARP 0xBAu
#define | DUCK_IO_KEY_PIANO_RE_SHARP 0xBEu
#define | DUCK_IO_KEY_PIANO_FA_SHARP 0xC6u
#define | DUCK_IO_KEY_PIANO_SOL_SHARP 0xCAu
#define | DUCK_IO_KEY_PIANO_LA_SHARP 0xCEu
#define | DUCK_IO_KEY_PIANO_DO_2_SHARP 0xD6u
#define | DUCK_IO_KEY_PIANO_RE_2_SHARP 0xDAu
#define | DUCK_IO_KEY_PRINTSCREEN_RIGHT 0xDEu
#define | DUCK_IO_KEY_PIANO_FA_2_SHARP 0xE2u
#define | DUCK_IO_KEY_PIANO_SOL_2_SHARP 0xE6u
#define | DUCK_IO_KEY_PIANO_LA_2_SHARP 0xEAu
#define | DUCK_IO_KEY_PIANO_DO 0xBBu
#define | DUCK_IO_KEY_PIANO_RE 0xBFu
#define | DUCK_IO_KEY_PIANO_MI 0xC3u
#define | DUCK_IO_KEY_PIANO_FA 0xC7u
#define | DUCK_IO_KEY_PIANO_SOL 0xCBu
#define | DUCK_IO_KEY_PIANO_LA 0xCFu
#define | DUCK_IO_KEY_PIANO_SI 0xD3u
#define | DUCK_IO_KEY_PIANO_DO_2 0xD7u
#define | DUCK_IO_KEY_PIANO_RE_2 0xDBu
#define | DUCK_IO_KEY_PIANO_MI_2 0xDFu
#define | DUCK_IO_KEY_PIANO_FA_2 0xE3u
#define | DUCK_IO_KEY_PIANO_SOL_2 0xE7u
#define | DUCK_IO_KEY_PIANO_LA_2 0xEBu
#define | DUCK_IO_KEY_PIANO_SI_2 0xEFu
#define | DUCK_IO_KEY_LAST_KEY (DUCK_IO_KEY_PIANO_SI_2u)
#define | DUCK_IO_KEY_MAYBE_SYST_CODES_START 0xF0u
#define | DUCK_IO_KEY_MAYBE_RX_NOT_A_KEY 0xF6u

## Macro Definition Documentation

## ◆ DUCK_IO_KEY_FLAG_KEY_REPEAT

#define DUCK_IO_KEY_FLAG_KEY_REPEAT 0x01u

## ◆ DUCK_IO_KEY_FLAG_KEY_REPEAT_BIT

#define DUCK_IO_KEY_FLAG_KEY_REPEAT_BIT 0x0u

## ◆ DUCK_IO_KEY_FLAG_CAPSLOCK

#define DUCK_IO_KEY_FLAG_CAPSLOCK 0x02u

## ◆ DUCK_IO_KEY_FLAG_CAPSLOCK_BIT

#define DUCK_IO_KEY_FLAG_CAPSLOCK_BIT 0x1u

## ◆ DUCK_IO_KEY_FLAG_SHIFT

#define DUCK_IO_KEY_FLAG_SHIFT 0x04u

## ◆ DUCK_IO_KEY_FLAG_SHIFT_BIT

#define DUCK_IO_KEY_FLAG_SHIFT_BIT 0x2u

## ◆ DUCK_IO_KEY_FLAG_PRINTSCREEN_LEFT

#define DUCK_IO_KEY_FLAG_PRINTSCREEN_LEFT 0x08u

## ◆ DUCK_IO_KEY_FLAG_PRINTSCREEN_LEFT_BIT

#define DUCK_IO_KEY_FLAG_PRINTSCREEN_LEFT_BIT 0x3u

## ◆ DUCK_IO_KEY_BASE_BIT

#define DUCK_IO_KEY_BASE_BIT 0x7u

## ◆ DUCK_IO_KEY_BASE

#define DUCK_IO_KEY_BASE 0x80u

## ◆ DUCK_IO_KEY_F1

#define DUCK_IO_KEY_F1 0x80u

## ◆ DUCK_IO_KEY_F2

#define DUCK_IO_KEY_F2 0x84u

## ◆ DUCK_IO_KEY_F3

#define DUCK_IO_KEY_F3 0x88u

## ◆ DUCK_IO_KEY_F4

#define DUCK_IO_KEY_F4 0x8Cu

## ◆ DUCK_IO_KEY_F5

#define DUCK_IO_KEY_F5 0x90u

## ◆ DUCK_IO_KEY_F6

#define DUCK_IO_KEY_F6 0x94u

## ◆ DUCK_IO_KEY_F7

#define DUCK_IO_KEY_F7 0x98u

## ◆ DUCK_IO_KEY_F8

#define DUCK_IO_KEY_F8 0x9Cu

## ◆ DUCK_IO_KEY_F9

#define DUCK_IO_KEY_F9 0xA0u

## ◆ DUCK_IO_KEY_F10

#define DUCK_IO_KEY_F10 0xA4u

## ◆ DUCK_IO_KEY_F11

#define DUCK_IO_KEY_F11 0xA8u

## ◆ DUCK_IO_KEY_F12

#define DUCK_IO_KEY_F12 0xACu

## ◆ DUCK_IO_KEY_ESCAPE

#define DUCK_IO_KEY_ESCAPE 0x81u

## ◆ DUCK_IO_KEY_1

#define DUCK_IO_KEY_1 0x85u

## ◆ DUCK_IO_KEY_2

#define DUCK_IO_KEY_2 0x89u

## ◆ DUCK_IO_KEY_3

#define DUCK_IO_KEY_3 0x8Du

## ◆ DUCK_IO_KEY_4

#define DUCK_IO_KEY_4 0x91u

## ◆ DUCK_IO_KEY_5

#define DUCK_IO_KEY_5 0x95u

## ◆ DUCK_IO_KEY_6

#define DUCK_IO_KEY_6 0x99u

## ◆ DUCK_IO_KEY_7

#define DUCK_IO_KEY_7 0x9Du

## ◆ DUCK_IO_KEY_8

#define DUCK_IO_KEY_8 0xA1u

## ◆ DUCK_IO_KEY_9

#define DUCK_IO_KEY_9 0xA5u

## ◆ DUCK_IO_KEY_0

#define DUCK_IO_KEY_0 0xA9u

## ◆ DUCK_IO_KEY_SINGLE_QUOTE

#define DUCK_IO_KEY_SINGLE_QUOTE 0xADu

## ◆ DUCK_IO_KEY_EXCLAMATION_FLIPPED

#define DUCK_IO_KEY_EXCLAMATION_FLIPPED 0xB1u

## ◆ DUCK_IO_KEY_BACKSPACE

#define DUCK_IO_KEY_BACKSPACE 0xB5u

## ◆ DUCK_IO_KEY_HELP

#define DUCK_IO_KEY_HELP 0x82u

## ◆ DUCK_IO_KEY_Q

#define DUCK_IO_KEY_Q 0x86u

## ◆ DUCK_IO_KEY_W

#define DUCK_IO_KEY_W 0x8Au

## ◆ DUCK_IO_KEY_E

#define DUCK_IO_KEY_E 0x8Eu

## ◆ DUCK_IO_KEY_R

#define DUCK_IO_KEY_R 0x92u

## ◆ DUCK_IO_KEY_T

#define DUCK_IO_KEY_T 0x96u

## ◆ DUCK_IO_KEY_Y

#define DUCK_IO_KEY_Y 0x9Au

## ◆ DUCK_IO_KEY_U

#define DUCK_IO_KEY_U 0x9Eu

## ◆ DUCK_IO_KEY_I

#define DUCK_IO_KEY_I 0xA2u

## ◆ DUCK_IO_KEY_O

#define DUCK_IO_KEY_O 0xA6u

## ◆ DUCK_IO_KEY_P

#define DUCK_IO_KEY_P 0xAAu

## ◆ DUCK_IO_KEY_BACKTICK

#define DUCK_IO_KEY_BACKTICK 0xAEu

## ◆ DUCK_IO_KEY_RIGHT_SQ_BRACKET

#define DUCK_IO_KEY_RIGHT_SQ_BRACKET 0xB2u

## ◆ DUCK_IO_KEY_ENTER

#define DUCK_IO_KEY_ENTER 0xB6u

## ◆ DUCK_IO_KEY_A

#define DUCK_IO_KEY_A 0x87u

## ◆ DUCK_IO_KEY_S

#define DUCK_IO_KEY_S 0x8Bu

## ◆ DUCK_IO_KEY_D

#define DUCK_IO_KEY_D 0x8Fu

## ◆ DUCK_IO_KEY_F

#define DUCK_IO_KEY_F 0x93u

## ◆ DUCK_IO_KEY_G

#define DUCK_IO_KEY_G 0x97u

## ◆ DUCK_IO_KEY_H

#define DUCK_IO_KEY_H 0x9Bu

## ◆ DUCK_IO_KEY_J

#define DUCK_IO_KEY_J 0x9Fu

## ◆ DUCK_IO_KEY_K

#define DUCK_IO_KEY_K 0xA3u

## ◆ DUCK_IO_KEY_L

#define DUCK_IO_KEY_L 0xA7u

## ◆ DUCK_IO_KEY_N_TILDE

#define DUCK_IO_KEY_N_TILDE 0xABu

## ◆ DUCK_IO_KEY_U_UMLAUT

#define DUCK_IO_KEY_U_UMLAUT 0xAFu

## ◆ DUCK_IO_KEY_O_OVER_LINE

#define DUCK_IO_KEY_O_OVER_LINE 0xB3u

## ◆ DUCK_IO_KEY_Z

#define DUCK_IO_KEY_Z 0xB8u

## ◆ DUCK_IO_KEY_X

#define DUCK_IO_KEY_X 0xBCu

## ◆ DUCK_IO_KEY_C

#define DUCK_IO_KEY_C 0xC0u

## ◆ DUCK_IO_KEY_V

#define DUCK_IO_KEY_V 0xC4u

## ◆ DUCK_IO_KEY_B

#define DUCK_IO_KEY_B 0xC8u

## ◆ DUCK_IO_KEY_N

#define DUCK_IO_KEY_N 0xCCu

## ◆ DUCK_IO_KEY_M

#define DUCK_IO_KEY_M 0xD0u

## ◆ DUCK_IO_KEY_COMMA

#define DUCK_IO_KEY_COMMA 0xD4u

## ◆ DUCK_IO_KEY_PERIOD

#define DUCK_IO_KEY_PERIOD 0xD8u

## ◆ DUCK_IO_KEY_DASH

#define DUCK_IO_KEY_DASH 0xDCu

## ◆ DUCK_IO_KEY_DELETE

#define DUCK_IO_KEY_DELETE 0xE0u

## ◆ DUCK_IO_KEY_SPACE

#define DUCK_IO_KEY_SPACE 0xB9u

## ◆ DUCK_IO_KEY_LESS_THAN

#define DUCK_IO_KEY_LESS_THAN 0xBDu

## ◆ DUCK_IO_KEY_PAGE_UP

#define DUCK_IO_KEY_PAGE_UP 0xC1u

## ◆ DUCK_IO_KEY_PAGE_DOWN

#define DUCK_IO_KEY_PAGE_DOWN 0xC5u

## ◆ DUCK_IO_KEY_MEMORY_MINUS

#define DUCK_IO_KEY_MEMORY_MINUS 0xC9u

## ◆ DUCK_IO_KEY_MEMORY_PLUS

#define DUCK_IO_KEY_MEMORY_PLUS 0xCDu

## ◆ DUCK_IO_KEY_MEMORY_RECALL

#define DUCK_IO_KEY_MEMORY_RECALL 0xD1u

## ◆ DUCK_IO_KEY_SQUAREROOT

#define DUCK_IO_KEY_SQUAREROOT 0xD5u

## ◆ DUCK_IO_KEY_MULTIPLY

#define DUCK_IO_KEY_MULTIPLY 0xD9u

## ◆ DUCK_IO_KEY_ARROW_DOWN

#define DUCK_IO_KEY_ARROW_DOWN 0xDDu

## ◆ DUCK_IO_KEY_MINUS

#define DUCK_IO_KEY_MINUS 0xE1u

## ◆ DUCK_IO_KEY_ARROW_LEFT

#define DUCK_IO_KEY_ARROW_LEFT 0xE5u

## ◆ DUCK_IO_KEY_EQUALS

#define DUCK_IO_KEY_EQUALS 0xE9u

## ◆ DUCK_IO_KEY_ARROW_RIGHT

#define DUCK_IO_KEY_ARROW_RIGHT 0xEDu

## ◆ DUCK_IO_KEY_DIVIDE

#define DUCK_IO_KEY_DIVIDE 0xE4u

## ◆ DUCK_IO_KEY_ARROW_UP

#define DUCK_IO_KEY_ARROW_UP 0xE8u

## ◆ DUCK_IO_KEY_PLUS

#define DUCK_IO_KEY_PLUS 0xECu

## ◆ DUCK_IO_KEY_PIANO_DO_SHARP

#define DUCK_IO_KEY_PIANO_DO_SHARP 0xBAu

## ◆ DUCK_IO_KEY_PIANO_RE_SHARP

#define DUCK_IO_KEY_PIANO_RE_SHARP 0xBEu

## ◆ DUCK_IO_KEY_PIANO_FA_SHARP

#define DUCK_IO_KEY_PIANO_FA_SHARP 0xC6u

## ◆ DUCK_IO_KEY_PIANO_SOL_SHARP

#define DUCK_IO_KEY_PIANO_SOL_SHARP 0xCAu

## ◆ DUCK_IO_KEY_PIANO_LA_SHARP

#define DUCK_IO_KEY_PIANO_LA_SHARP 0xCEu

## ◆ DUCK_IO_KEY_PIANO_DO_2_SHARP

#define DUCK_IO_KEY_PIANO_DO_2_SHARP 0xD6u

## ◆ DUCK_IO_KEY_PIANO_RE_2_SHARP

#define DUCK_IO_KEY_PIANO_RE_2_SHARP 0xDAu

## ◆ DUCK_IO_KEY_PRINTSCREEN_RIGHT

#define DUCK_IO_KEY_PRINTSCREEN_RIGHT 0xDEu

## ◆ DUCK_IO_KEY_PIANO_FA_2_SHARP

#define DUCK_IO_KEY_PIANO_FA_2_SHARP 0xE2u

## ◆ DUCK_IO_KEY_PIANO_SOL_2_SHARP

#define DUCK_IO_KEY_PIANO_SOL_2_SHARP 0xE6u

## ◆ DUCK_IO_KEY_PIANO_LA_2_SHARP

#define DUCK_IO_KEY_PIANO_LA_2_SHARP 0xEAu

## ◆ DUCK_IO_KEY_PIANO_DO

#define DUCK_IO_KEY_PIANO_DO 0xBBu

## ◆ DUCK_IO_KEY_PIANO_RE

#define DUCK_IO_KEY_PIANO_RE 0xBFu

## ◆ DUCK_IO_KEY_PIANO_MI

#define DUCK_IO_KEY_PIANO_MI 0xC3u

## ◆ DUCK_IO_KEY_PIANO_FA

#define DUCK_IO_KEY_PIANO_FA 0xC7u

## ◆ DUCK_IO_KEY_PIANO_SOL

#define DUCK_IO_KEY_PIANO_SOL 0xCBu

## ◆ DUCK_IO_KEY_PIANO_LA

#define DUCK_IO_KEY_PIANO_LA 0xCFu

## ◆ DUCK_IO_KEY_PIANO_SI

#define DUCK_IO_KEY_PIANO_SI 0xD3u

## ◆ DUCK_IO_KEY_PIANO_DO_2

#define DUCK_IO_KEY_PIANO_DO_2 0xD7u

## ◆ DUCK_IO_KEY_PIANO_RE_2

#define DUCK_IO_KEY_PIANO_RE_2 0xDBu

## ◆ DUCK_IO_KEY_PIANO_MI_2

#define DUCK_IO_KEY_PIANO_MI_2 0xDFu

## ◆ DUCK_IO_KEY_PIANO_FA_2

#define DUCK_IO_KEY_PIANO_FA_2 0xE3u

## ◆ DUCK_IO_KEY_PIANO_SOL_2

#define DUCK_IO_KEY_PIANO_SOL_2 0xE7u

## ◆ DUCK_IO_KEY_PIANO_LA_2

#define DUCK_IO_KEY_PIANO_LA_2 0xEBu

## ◆ DUCK_IO_KEY_PIANO_SI_2

#define DUCK_IO_KEY_PIANO_SI_2 0xEFu

## ◆ DUCK_IO_KEY_LAST_KEY

#define DUCK_IO_KEY_LAST_KEY (DUCK_IO_KEY_PIANO_SI_2u)

## ◆ DUCK_IO_KEY_MAYBE_SYST_CODES_START

#define DUCK_IO_KEY_MAYBE_SYST_CODES_START 0xF0u

## ◆ DUCK_IO_KEY_MAYBE_RX_NOT_A_KEY

#define DUCK_IO_KEY_MAYBE_RX_NOT_A_KEY 0xF6u