OSDN Git Service

SimpleHTMLEditorを追加。
[chnosproject/CHNOSProject.git] / CHNOSProject / chnos / tolset_chn_000 / chnos_010 / chnos / fifo.c
diff --git a/CHNOSProject/chnos/tolset_chn_000/chnos_010/chnos/fifo.c b/CHNOSProject/chnos/tolset_chn_000/chnos_010/chnos/fifo.c
deleted file mode 100644 (file)
index 4800888..0000000
+++ /dev/null
@@ -1,193 +0,0 @@
-\r
-#include "core.h"\r
-\r
-//\8ew\92è\83T\83C\83Y\82Í\81A\83o\83C\83g\92P\88Ê\81B4\83o\83C\83g\90Ø\82è\8eÌ\82Ä\81B\r
-//\93à\95\94\83T\83C\83Y\82Í\81A\83G\83\93\83g\83\8a(uint=4byte)\92P\88Ê\81B\r
-\r
-DATA_FIFO32 *FIFO32_Initialize(IO_MemoryControl memctrl, uint size)\r
-{\r
-       DATA_FIFO32 *fifo;\r
-\r
-       //fifo = Memory_Allocate(memctrl, sizeof(DATA_FIFO32));\r
-       fifo = (DATA_FIFO32 *)System_CommonStruct_Allocate(SYSTEM_STRUCTID_FIFO32);\r
-\r
-       fifo->size = size >> 2;\r
-       fifo->buf = Memory_Allocate(memctrl, fifo->size << 2);\r
-       fifo->free = fifo->size;        /*freesize*/\r
-       fifo->flags.initialized = False;\r
-       fifo->flags.overflow = False;\r
-       fifo->p = 0;    /*write*/\r
-       fifo->q = 0;    /*read*/\r
-       fifo->flags.initialized = True;\r
-       return fifo;\r
-}\r
-\r
-int FIFO32_Put(DATA_FIFO32 *fifo, uint data)\r
-{\r
-       uint eflags;\r
-\r
-       if(fifo == Null){\r
-               return -1;\r
-       }\r
-\r
-       if(!fifo->flags.initialized){\r
-               return -2;\r
-       }\r
-\r
-       eflags = IO_Load_EFlags();\r
-       IO_CLI();\r
-\r
-       if(fifo->free == 0){\r
-               #ifdef CHNOSPROJECT_DEBUG_FIFO\r
-                       debug("FIFO32_Put:Overflow data.\n");\r
-               #endif\r
-               fifo->flags.overflow = True;\r
-               Error_Report(ERROR_FIFO_BUFFER_OVERFLOW, fifo);\r
-               return -1;\r
-       }\r
-       fifo->buf[fifo->p] = data;\r
-       fifo->p++;\r
-       if(fifo->p == fifo->size){\r
-               fifo->p = 0;\r
-       }\r
-       fifo->free--;\r
-\r
-\r
-       if(fifo->task != Null){\r
-               if(fifo->task->flags.linked && !fifo->task->flags.running){\r
-                       #ifdef CHNOSPROJECT_DEBUG_FIFO\r
-                               debug("FIFO32_Put:Task run start.\n");\r
-                       #endif\r
-                       System_MultiTask_Task_Run(fifo->task);\r
-                       #ifdef CHNOSPROJECT_DEBUG_FIFO\r
-                               debug("FIFO32_Put:Task run end.\n");\r
-                       #endif\r
-\r
-               }\r
-       }\r
-\r
-       IO_Store_EFlags(eflags);\r
-\r
-       return 0;\r
-}\r
-\r
-int FIFO32_Put_Arguments(DATA_FIFO32 *fifo, uint args, ...)\r
-{\r
-       int i;\r
-       uint *vargs;\r
-       uint eflags;\r
-\r
-       if(fifo == Null){\r
-               return -1;\r
-       }\r
-\r
-       if(!fifo->flags.initialized){\r
-               return -2;\r
-       }\r
-\r
-       if(args == 0){\r
-               return 0;\r
-       }\r
-\r
-       eflags = IO_Load_EFlags();\r
-       IO_CLI();\r
-\r
-       vargs = (uint *)(&args + 1);\r
-\r
-       for(i = 0; i < args; i++){\r
-               if(fifo->free <= 1){\r
-                       i = -1;\r
-                       break;\r
-               }\r
-               FIFO32_Put(fifo, vargs[i]);\r
-       }\r
-       FIFO32_Put(fifo, SIGNAL_ARGUMENTS_END);\r
-\r
-       IO_Store_EFlags(eflags);\r
-\r
-       return i; \r
-}\r
-\r
-void FIFO32_Set_Task(DATA_FIFO32 *fifo, UI_Task *task)\r
-{\r
-       if(fifo == Null){\r
-               return;\r
-       }\r
-\r
-       fifo->task = task;\r
-       return;\r
-}\r
-\r
-uint FIFO32_Get(DATA_FIFO32 *fifo)\r
-{\r
-       int data;\r
-\r
-       if(fifo == Null){\r
-               return 0;\r
-       }\r
-\r
-       if(!fifo->flags.initialized){\r
-               return 0;\r
-       }\r
-\r
-       if (fifo->free == fifo->size) { /*\83o\83b\83t\83@\82ª\8bó\82Ì\8e\9e\82Í\81A\8dÅ\8cã\82É\93Ç\82Ý\82Æ\82ç\82ê\82½\83f\81[\83^\82ð\8cJ\82è\95Ô\82µ\95Ô\82·*/\r
-               if(fifo->q == 0){       /*\93Ç\82Ý\82¾\82µ\83|\83C\83\93\83g\82ª\8dÅ\8f\89\82Ì\82Æ\82«\82Í\81A\8dÅ\8cã\82É\93Ç\82Ý\82Æ\82ç\82ê\82½\83f\81[\83^\82Í\8fI\92[\82É\82 \82é*/\r
-                       return fifo->buf[fifo->size];\r
-               }\r
-               return fifo->buf[fifo->q - 1];\r
-       }\r
-       data = fifo->buf[fifo->q];\r
-       fifo->q++;\r
-       if (fifo->q == fifo->size) {    /*\93Ç\82Ý\8fo\82µ\83|\83C\83\93\83g\82ª\8fI\92[\82Ü\82Å\8ds\82Á\82½\82Ì\82Å\81A\90æ\93ª\82É\96ß\82·*/\r
-               fifo->q = 0;\r
-       }\r
-       fifo->free++;\r
-       return data;\r
-}\r
-\r
-uint FIFO32_Status(DATA_FIFO32 *fifo)\r
-{\r
-       if(fifo == Null){\r
-               return 0;\r
-       }\r
-\r
-       if(!fifo->flags.initialized){\r
-               return 0;\r
-       }\r
-\r
-       return fifo->size - fifo->free; /*\83o\83b\83t\83@\82É\91\8dÝ\82·\82é\83f\81[\83^\82Ì\83G\83\93\83g\83\8a\90\94(\83G\83\93\83g\83\8a\90\94=uint\82Ì\8cÂ\90\94->\83G\83\93\83g\83\8a\90\94*4=\8eg\82í\82ê\82Ä\82¢\82é\83o\83C\83g\90\94)*/\r
-}\r
-\r
-void FIFO32_Free(DATA_FIFO32 *fifo)\r
-{\r
-       if(fifo == Null){\r
-               return;\r
-       }\r
-\r
-       if(!fifo->flags.initialized){\r
-               return;\r
-       }\r
-\r
-       System_Memory_Free(fifo->buf, fifo->size << 2);\r
-\r
-       fifo->size = 0;\r
-       fifo->buf = 0;\r
-       fifo->free = 0; /*freesize*/\r
-       fifo->flags.initialized = False;\r
-       fifo->p = 0;    /*write*/\r
-       fifo->q = 0;    /*read*/\r
-\r
-       System_CommonStruct_Free(&fifo->common_tag);\r
-       return;\r
-}\r
-\r
-uint FIFO32_MyTaskFIFO_Status(void)\r
-{\r
-       return FIFO32_Status(System_MultiTask_GetNowTask()->fifo);\r
-}\r
-\r
-uint FIFO32_MyTaskFIFO_Get(void)\r
-{\r
-       return FIFO32_Get(System_MultiTask_GetNowTask()->fifo);\r
-}\r
-\r