<- Here ->
Channel Data Types Bytecode Bit Definitions
Byte
Primitive type bits                    xxxxx111 - (0 to 7)
Array  dimension bits               xx111xxx - (0 to 7)
Parameter address mode bits 11xxxxxx - (0 to 3)
       
Primitive Type 

byte
00 000 000
short
00 000 001
char
00 000 010
int
00 000 011
long
00 000 100
float
00 000 101
double
00 000 110
Object
00 000 111
Array Dimension Size

1 Primitive
00 000 000
1D Array
00 001 000 
2D Array
00 010 000
3D Array
00 011 000
4D Array
00 100 000
5D Array
00 101 000
6D Array
00 110 000
Custom Array
00 111 000
Parameter Address Mode
 8   bit parameter.
00 000 000
 16 bit parameter
01 000 000
 32 bit parameter 10 000 000
 64 bit parameter 11000 000
        
struct Linkable // @struct Linkable
{
uint64_t index;
volatile struct Linkable *prev;
volatile struct Linkable *next;
char *link_name;
uint64_t link_flags;
volatile void *attachment;
volatile struct HyperLinkedList *parent_list;
volatile long list_index;
};

struct HyperLinkedList         //@struct HyperLinkedList
{
struct Linkable *system_link;                  // List Registry                
volatile struct Linkable *list_base;           // List is itself in a list
volatile struct Linkable *list_tail;           //
volatile struct Linkable *list_link;           //
volatile struct Linkable *listeners;           //
void *list_lock;
volatile long items;
long seed;
char list_name[64];         //--             
volatile int list_flags;
int list_number;
void *attachment;         // Pointer to
};

struct GraphicsContext       // Use SDL3
{
struct Linkable gc_node;   // For blitter list.
Uint32 gc_flags;
Uint32 pad;
SDL_Rect      gc_source_rect;
SDL_Rect      gc_target_rect;
struct Screen *gc_screen;
SDL_Window    *gc_window;           
SDL_Surface   *gc_window_surface;
SDL_Renderer  *gc_renderer;
SDL_Texture   *gc_texture;
SDL_mutex     *gc_mutex;
NetXecThread  *gc_task;
struct HyperLinkedList blitterList;
struct Palette *palette;
struct ColorOperation *color_change;
void    **gc_pixels;
SDL_Texture back_brush;
struct URL *gc_url;
Uint32 fgPen;
Uint32 bgPen;
};

struct Object                      
{
struct Linkable node;
struct HyperLinkedList ob_fields;             //---
uint64_t               ob_flags;             
uint64_t               ob_size;
char                   ob_name[256];
struct GraphicsContext *ob_graphics;
struct Runtime         *ob_run;
uint32_t               ob_field_number;
uint32_t               user_data; // 64 bit pad
uint64_t               crc;
};