📄 buffer.c
字号:
#include "Buffer.h"
static u32 Buffer[BUFFER_SIZE], *BufHead, *BufTail;
static unsigned BufUsed;
unsigned Buf_WordsUsed;
void Buf_Init(void)
{
BufUsed = 0;
BufHead = BufTail = Buffer + BUFFER_SIZE;
Buf_WordsUsed = 0;
}
unsigned Buf_GetWords(void)
{
return BufUsed;
}
int Buf_Put(u32 *data, unsigned len)
{
if(BUFFER_SIZE - BufUsed < len)
return -1;
BufUsed += len;
if(Buf_WordsUsed < BufUsed)
Buf_WordsUsed = BufUsed;
while(len)
{
if(BufTail <= Buffer)
BufTail += BUFFER_SIZE;
*--BufTail = *data++;
len--;
}
return 0;
}
int Buf_Get(u32 *data, unsigned len)
{
if(BufUsed < len)
return -1;
BufUsed -= len;
while(len)
{
if(BufHead <= Buffer)
BufHead += BUFFER_SIZE;
*data++ = *--BufHead;
len--;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -