adds a queue library, work for keyb driver

This commit is contained in:
2025-06-02 10:35:57 -04:00
parent 0fc2e6a199
commit ca77157344
5 changed files with 97 additions and 1 deletions

25
libc/include/queue.h Normal file
View File

@ -0,0 +1,25 @@
#include <stdint.h>
#ifndef QUEUE_H
#define QUEUE_H
#define MAX_QUEUE_SIZE 100
typedef struct {
uint8_t items[MAX_QUEUE_SIZE];
short front;
short rear;
} queue;
void init_queue(queue* q);
bool queue_is_empty(queue* q);
bool queue_is_full(queue* q);
void enqueue(queue* q, uint8_t val);
void dequeue(queue* q);
uint8_t queue_peek(queue* q);
#endif