|
pico9918-core 1.3.0
TMS9918A / F18A video display processor emulation in C99
|
pico9918-core - Platform Abstraction More...
Include dependency graph for platform.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Macros | |
| #define | PICO9918_INLINE static inline |
| #define | PICO9918_INLINE_HOT static inline __attribute__((always_inline)) |
| #define | PICO9918_NOINLINE __attribute__((noinline)) |
| #define | PICO9918_MAY_ALIAS __attribute__((may_alias)) |
| #define | PICO9918_ASSUME_ALIGNED(ptr, n) __builtin_assume_aligned((ptr), (n)) |
| #define | PICO9918_STATIC_ASSERT(cond, msg) _Static_assert(cond, msg) |
| #define | PICO9918_HOST_ENTER_CRITICAL() ((void)0) |
| #define | PICO9918_HOST_EXIT_CRITICAL() ((void)0) |
| #define | PICO9918_HOST_STATUS_VISIBLE() ((void)0) |
| #define | PICO9918_LINE_CAPTURE_WAIT() ((void)0) |
| #define | PICO9918_LINE_CAPTURE(y, height, width, indices) ((void)0) |
| #define | PICO9918_LINE_NOTE_TIME(y, us) ((void)0) |
| #define | PICO9918_HOST_TIME_US() time_us_32() |
| #define | PICO9918_RGB333_CH(v) (((v) << 1) | ((v) >> 2)) |
| #define | PICO9918_RGB12_FROM_RGB333(v) |
Enumerations | |
| enum | pico9918_lut_class_t { PICO9918_LUT_DOUBLED = 0 , PICO9918_LUT_PAIRED , PICO9918_LUT_DIRECT } |
pico9918-core - Platform Abstraction
Copyright (c) 2021 Troy Schrapel
This code is licensed under the MIT license
https://github.com/visrealm/pico9918-core
Dispatch header. Selects the platform implementation and declares the platform-independent parts of the contract.
A host may pre-define any PICO9918_* macro before including the library to override a desktop default (a real lock, a different pixel type, ...). The Pico implementation is not overridable - it must emit exact codegen.
Definition in file platform.h.
| #define PICO9918_INLINE static inline |
Definition at line 67 of file platform.h.
| #define PICO9918_INLINE_HOT static inline __attribute__((always_inline)) |
Definition at line 72 of file platform.h.
| #define PICO9918_NOINLINE __attribute__((noinline)) |
Definition at line 90 of file platform.h.
| #define PICO9918_MAY_ALIAS __attribute__((may_alias)) |
Definition at line 91 of file platform.h.
| #define PICO9918_ASSUME_ALIGNED | ( | ptr, | |
| n | |||
| ) | __builtin_assume_aligned((ptr), (n)) |
Definition at line 92 of file platform.h.
| #define PICO9918_STATIC_ASSERT | ( | cond, | |
| msg | |||
| ) | _Static_assert(cond, msg) |
Definition at line 103 of file platform.h.
| #define PICO9918_HOST_ENTER_CRITICAL | ( | ) | ((void)0) |
Definition at line 166 of file platform.h.
| #define PICO9918_HOST_EXIT_CRITICAL | ( | ) | ((void)0) |
Definition at line 170 of file platform.h.
| #define PICO9918_HOST_STATUS_VISIBLE | ( | ) | ((void)0) |
Definition at line 174 of file platform.h.
| #define PICO9918_LINE_CAPTURE_WAIT | ( | ) | ((void)0) |
Definition at line 189 of file platform.h.
| #define PICO9918_LINE_CAPTURE | ( | y, | |
| height, | |||
| width, | |||
| indices | |||
| ) | ((void)0) |
Definition at line 193 of file platform.h.
| #define PICO9918_LINE_NOTE_TIME | ( | y, | |
| us | |||
| ) | ((void)0) |
Definition at line 197 of file platform.h.
| #define PICO9918_HOST_TIME_US | ( | ) | time_us_32() |
Definition at line 226 of file platform.h.
| #define PICO9918_RGB333_CH | ( | v | ) | (((v) << 1) | ((v) >> 2)) |
Definition at line 239 of file platform.h.
| #define PICO9918_RGB12_FROM_RGB333 | ( | v | ) |
Definition at line 241 of file platform.h.
| enum pico9918_lut_class_t |
Definition at line 260 of file platform.h.