{
return 1;
}
- ulPos = File_Seek(hFile, ulPos, FILE_SEEK_SET);
-
-
+ ulPos = (unsigned long)File_Seek(hFile, ulPos, FILE_SEEK_SET);
+
/* バッファ確保 */
pubBuf = (unsigned char *)Memory_Alloc(FILEDUMP_BUFSIZE);
if ( pubBuf == NULL )
/* クエリチェック */
uhData = puhBaseAddr[0x10];
- ubQry[0] = uhData;
+ ubQry[0] = (unsigned char)uhData;
uhData = puhBaseAddr[0x11];
- ubQry[1] = uhData;
+ ubQry[1] = (unsigned char)uhData;
uhData = puhBaseAddr[0x12];
- ubQry[2] = uhData;
+ ubQry[2] = (unsigned char)uhData;
if ( ubQry[0] != 'Q' || ubQry[1] != 'R' || ubQry[2] != 'Y' )
{
return 1;
/* デバイスサイズ */
uhData = puhBaseAddr[0x27];
- self->ubDevSize = uhData;
+ self->ubDevSize = (unsigned char)uhData;
/* 消去ブロック数 */
uhData = puhBaseAddr[0x2c];
- self->ubBlockNum = uhData;
+ self->ubBlockNum = (unsigned char)uhData;
/* メモリ確保 */
if ( self->ubBlockNum > 0 )
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../../..;../../../../../kernel/include"
- PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
+ PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
>
</File>
</Filter>
+ <Filter
+ Name="time"
+ >
+ <File
+ RelativePath="..\..\..\..\system\time\time.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\system\time\time_getsystemtime.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\system\time\time_wait.c"
+ >
+ </File>
+ </Filter>
</Filter>
<Filter
Name="application"
>
</File>
</Filter>
+ <Filter
+ Name="filedump"
+ >
+ <File
+ RelativePath="..\..\..\..\application\filecmd\filedump\filedump.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\application\filecmd\filedump\filedump_main.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="filecat"
+ >
+ <File
+ RelativePath="..\..\..\..\application\filecmd\filecat\filecat.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\application\filecmd\filecat\filecat_main.c"
+ >
+ </File>
+ </Filter>
</Filter>
<Filter
Name="syscmd"
>
</File>
</Filter>
+ <Filter
+ Name="commandlist"
+ >
+ <File
+ RelativePath="..\..\..\..\application\syscmd\commandlist\commandlist.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\application\syscmd\commandlist\commandlist_main.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="processlist"
+ >
+ <File
+ RelativePath="..\..\..\..\application\syscmd\processlist\processlist.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\application\syscmd\processlist\processlist_main.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="processsignal"
+ >
+ <File
+ RelativePath="..\..\..\..\application\syscmd\processsignal\processsignal.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\application\syscmd\processsignal\processsignal_main.c"
+ >
+ </File>
+ </Filter>
</Filter>
<Filter
Name="flashcmd"
</File>
</Filter>
</Filter>
+ <Filter
+ Name="fatcmd"
+ >
+ <Filter
+ Name="fatmount"
+ >
+ <File
+ RelativePath="..\..\..\..\application\fatcmd\fatmount\fatmount.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\application\fatcmd\fatmount\fatmount_main.c"
+ >
+ </File>
+ </Filter>
+ </Filter>
+ <Filter
+ Name="utility"
+ >
+ <Filter
+ Name="memdump"
+ >
+ <File
+ RelativePath="..\..\..\..\application\utility\memdump\memdump.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\application\utility\memdump\memdump_main.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="memwrite"
+ >
+ <File
+ RelativePath="..\..\..\..\application\utility\memwrite\memwrite.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\application\utility\memwrite\memwrite_main.c"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="timecmd"
+ >
+ <File
+ RelativePath="..\..\..\..\application\utility\timecmd\timecmd.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\application\utility\timecmd\timecmd_main.c"
+ >
+ </File>
+ </Filter>
+ </Filter>
</Filter>
<Filter
Name="library"
</Filter>
</Filter>
</Filter>
+ <Filter
+ Name="parser"
+ >
+ <File
+ RelativePath="..\..\..\..\..\kernel\include\parser\parserr.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\kernel\include\parser\parshok.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\kernel\include\parser\parsknl.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\..\kernel\include\parser\parssys.h"
+ >
+ </File>
+ </Filter>
<File
RelativePath="..\..\..\..\hosaplfw.h"
>
{
if ( pNode->pParent->pLeft == pNode )
{
- pNode->pParent->pLeft = pNewNode;
+ pNode->pParent->pLeft = pNewNode;
}
else
{
pNode->pParent->pRight = pNewNode;
}
+ if ( pNewNode != NULL )
+ {
+ pNewNode->pParent = pNode->pParent;
+ }
}
}
#include "driver/serial/winsock/winsockdrv.h"
#include "driver/console/vt100/vt100drv.h"
#include "application/syscmd/shell/shell.h"
+#include "application/syscmd/shell/shell.h"
+#include "application/syscmd/commandlist/commandlist.h"
+#include "application/syscmd/processlist/processlist.h"
+#include "application/syscmd/whiteboardcmd/whiteboardcmd.h"
+#include "application/filecmd/filelist/filelist.h"
+#include "application/filecmd/filecopy/filecopy.h"
+#include "application/filecmd/filedump/filedump.h"
+#include "application/filecmd/filecat/filecat.h"
+#include "application/fatcmd/fatmount/fatmount.h"
+#include "application/utility/timecmd/timecmd.h"
+#include "application/utility/memdump/memdump.h"
+#include "application/utility/memwrite/memwrite.h"
+#include "application/utility/memtest/memtest.h"
+#include "application/utility/keytest/keytest.h"
#include "application/example/hello/hello.h"
#include "boot.h"
/* コマンド登録 */
/*************************/
Command_Initialize();
- Command_AddCommand("sh", Shell_Main);
- Command_AddCommand("hello", Hello_Main);
-
+ Command_AddCommand("sh", Shell_Main);
+ Command_AddCommand("help", CommandList_Main);
+ Command_AddCommand("hello", Hello_Main);
+ Command_AddCommand("whiteboard", WhiteboardCmd_Main);
+ Command_AddCommand("time", TimeCmd_Main);
+ Command_AddCommand("memdump", MemDump_Main);
+ Command_AddCommand("memwrite", MemWrite_Main);
+ Command_AddCommand("ps", ProcessList_Main);
+ Command_AddCommand("ls", FileList_Main);
+ Command_AddCommand("cp", FileCopy_Main);
+ Command_AddCommand("cat", FileCat_Main);
+ Command_AddCommand("hello", Hello_Main);
/* 起動メッセージ */
StdIo_PutString(
# PROP Ignore_Export_Lib 0\r
# PROP Target_Dir ""\r
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c\r
-# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../../../.." /I "../../../../../kernel/include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c\r
+# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../../../.." /I "../../../../../kernel/include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /YX /FD /GZ /c\r
# ADD BASE RSC /l 0x411 /d "_DEBUG"\r
# ADD RSC /l 0x411 /d "_DEBUG"\r
BSC32=bscmake.exe\r
#include "system/file/file.h"
#include "system/file/volumeobj.h"
+#include "library/container/assoc/assoc.h"
#define DEVVOL_MAX_DEVICE 16
struct c_drvobj;
typedef struct t_sysvol_devinf
{
- char szName[DEVVOL_MAX_NAME]; /* デバイス名 */
HANDLE hDriver; /* デバイスドライバのハンドル */
int iAttr; /* デバイスの属性 */
} T_SYSVOL_DEVINF;
typedef struct c_sysvol
{
C_VOLUMEOBJ VolumeObj; /* ボリュームオブジェクトを継承 */
-
- T_SYSVOL_DEVINF DevTable[DEVVOL_MAX_DEVICE];
+ C_ASSOC asDevice; /* デバイスの連想配列 */
} C_SYSVOL;
/* システムボリュームにデバイスをぶら下げる */
FILE_ERR SysVol_AddDevice(HANDLE hSysVol, const char *pszName, HANDLE hDriver, int iAttr)
{
- C_SYSVOL *self;
- int i;
+ T_SYSVOL_DEVINF DevInf;
+ C_SYSVOL *self;
self = (C_SYSVOL *)hSysVol;
- /* テーブルの空きを検索 */
- for ( i = 0; i < DEVVOL_MAX_DEVICE; i++ )
+ /* 登録 */
+ DevInf.hDriver = hDriver;
+ DevInf.iAttr = iAttr;
+ if ( Assoc_Add(&self->asDevice, pszName, &DevInf, sizeof(T_SYSVOL_DEVINF)) != ASSOC_ERR_OK )
{
- if ( self->DevTable[i].hDriver == HANDLE_NULL )
- {
- strcpy(self->DevTable[i].szName, pszName);
- self->DevTable[i].hDriver = hDriver;
- self->DevTable[i].iAttr = iAttr;
- return FILE_ERR_OK;
- }
+ return FILE_ERR_NG;
}
-
- return FILE_ERR_NG;
+
+ return FILE_ERR_OK;
}
/* コンストラクタ */
void SysVol_Constructor(C_SYSVOL *self, const T_VOLUMEOBJ_METHODS *pMethods)
{
- int i;
+/* int i; */
/* 親クラスコンストラクタ呼び出し */
VolumeObj_Constructor(&self->VolumeObj, pMethods);
/* メンバ変数初期化 */
- for ( i = 0; i < DEVVOL_MAX_DEVICE; i++ )
- {
- self->DevTable[i].hDriver = HANDLE_NULL;
- }
+ Assoc_Constructor(&self->asDevice, SysMem_GetMemHeap());
}
* @file sysvol.h
* @brief %jp{システムボリューム}
*
- * Copyright (C) 2006-2007 by Project HOS
+ * Copyright (C) 2006-2010 by Project HOS
* http://sourceforge.jp/projects/hos/
*/
/* システムボリュームに登録されたデバイスを検索 */
HANDLE SysVol_GetDevice(HANDLE hSysVol, const char *pszName)
{
- C_SYSVOL *self;
- int i;
+ T_SYSVOL_DEVINF *pDevInf;
+ C_SYSVOL *self;
self = (C_SYSVOL *)hSysVol;
- /* テーブルを検索 */
- for ( i = 0; i < DEVVOL_MAX_DEVICE; i++ )
+ /* 検索 */
+ if ( (pDevInf = (T_SYSVOL_DEVINF *)Assoc_Get(&self->asDevice, pszName)) == NULL )
{
- if ( strcmp(self->DevTable[i].szName, pszName) == 0 )
- {
- return self->DevTable[i].hDriver;
- }
+ return HANDLE_NULL;
}
- return HANDLE_NULL;
+ return pDevInf->hDriver;
}
{
case FILE_IOCTL_DIR_READ:
{
- T_FILE_FILEINF *pFileInf;
+ T_FILE_FILEINF *pFileInf;
+ const char *pszName;
pFileInf = (T_FILE_FILEINF *)pInBuf;
- if ( self->DevTable[pFile->iReadPtr].hDriver != HANDLE_NULL )
+ if ( pFile->posRead == ASSOC_POS_NULL )
{
- strcpy(pFileInf->szFileName, self->DevTable[pFile->iReadPtr].szName);
+ pFile->posRead = Assoc_GetFirst(&self->asDevice);
+ }
+ else
+ {
+ pFile->posRead = Assoc_GetNext(&self->asDevice, pFile->posRead);
+ }
+
+ if ( pFile->posRead != ASSOC_POS_NULL )
+ {
+ T_SYSVOL_DEVINF *pDevInf;
+
+ pDevInf = (T_SYSVOL_DEVINF *)Assoc_GetAt(&self->asDevice, pFile->posRead, &pszName);
+ strcpy(pFileInf->szFileName, pszName);
pFileInf->FileSize = 0;
- pFileInf->Attribute = self->DevTable[pFile->iReadPtr].iAttr;
- if ( File_GetDriverInformation(self->DevTable[pFile->iReadPtr].hDriver, pFileInf->szInformation, sizeof(pFileInf->szInformation)) != FILE_ERR_OK )
+ pFileInf->Attribute = pDevInf->iAttr;
+ if ( File_GetDriverInformation(pDevInf->hDriver, pFileInf->szInformation, sizeof(pFileInf->szInformation)) != FILE_ERR_OK )
{
pFileInf->szInformation[0] = '\0';
}
pFileInf->szInformation[sizeof(pFileInf->szInformation) - 1] = '\0';
- pFile->iReadPtr++;
-
return FILE_ERR_OK;
}
}
/* ファイルを開く */
HANDLE SysVol_Open(C_DRVOBJ *pDrvObj, const char *pszPath, int iMode)
{
- C_SYSVOL *self;
- int iLen;
- int i;
+ C_SYSVOL *self;
+ T_SYSVOL_DEVINF *pDevInf;
+ char szName[DEVVOL_MAX_NAME];
+ int iLen;
/* upper cast */
self = (C_SYSVOL *)pDrvObj;
return hDir;
}
- /* 下位デバイスを検索 */
- for ( i = 0; i < DEVVOL_MAX_DEVICE; i++ )
+ /* 名前部分探索 */
+ for ( iLen =0; pszPath[iLen] != '\0' && pszPath[iLen] != '/'; iLen++ )
{
- /* 名前部分探索 */
- for ( iLen =0; pszPath[iLen] != '\0' && pszPath[iLen] != '/'; iLen++ )
- ;
-
- if ( self->DevTable[i].hDriver != HANDLE_NULL && strncmp(pszPath, self->DevTable[i].szName, iLen) == 0 && self->DevTable[i].szName[iLen] == '\0' )
- {
- break;
- }
+ szName[iLen] = pszPath[iLen];
}
- if ( i >= DEVVOL_MAX_DEVICE )
+ szName[iLen] = '\0';
+ if ( (pDevInf = (T_SYSVOL_DEVINF *)Assoc_Get(&self->asDevice, szName)) == NULL )
{
return HANDLE_NULL;
}
iLen++;
}
- return DrvObj_vOpen((C_DRVOBJ *)self->DevTable[i].hDriver, &pszPath[iLen], iMode);
+ /* 下位デバイスを検索 */
+ return DrvObj_vOpen((C_DRVOBJ *)pDevInf->hDriver, &pszPath[iLen], iMode);
}
/* システムボリュームに登録されたデバイスを取り外し */
FILE_ERR SysVol_RemoveDevice(HANDLE hSysVol, const char *pszName)
{
- C_SYSVOL *self;
- int i;
+ C_SYSVOL *self;
self = (C_SYSVOL *)hSysVol;
-
-
- /* テーブルを検索 */
- for ( i = 0; i < DEVVOL_MAX_DEVICE; i++ )
+
+ /* 登録解除 */
+ if ( Assoc_Remove(&self->asDevice, pszName) != ASSOC_ERR_OK )
{
- if ( strcmp(self->DevTable[i].szName, pszName) == 0 )
- {
- self->DevTable[i].hDriver = HANDLE_NULL;
- return FILE_ERR_OK;
- }
+ return FILE_ERR_NG;
}
-
- return FILE_ERR_NG;
+
+ return FILE_ERR_OK;
}
#include "system/file/fileobj.h"
-
+#include "library/container/assoc/assoc.h"
struct c_sysvol;
typedef struct c_sysvolfile
{
C_FILEOBJ FileObj; /* ディレクトリオブジェクトを継承 */
-
- int iReadPtr; /* リードポインタ */
+ ASSOC_POS posRead;
+
+/* int iReadPtr; */ /* リードポインタ */
} C_SYSVOLFILE;
FileObj_Constructor(&self->FileObj, pMethods, &pSysVol->VolumeObj.DrvObj, iMode);
/* メンバ変数初期化 */
- self->iReadPtr = 0;
+ self->posRead = ASSOC_POS_NULL;
}
/* ホワイトボードから文字列を取得 */
-const char *Whiteboard_GetString(const char *pszKey, char *pszBuf, int iBufSize, const char *pszDefault)
+const char *Whiteboard_GetString(const char *pszKey, char *pszBuf, int iBufSize, const char *pszDefault)
{
C_SYSTEM *self;
const char *pszValue = NULL;
{
pszValue = Assoc_Get(self->paWhiteBoard, pszKey);
}
-
+
if ( pszValue == NULL )
{
pszValue = pszDefault;
{
self->paWhiteBoard = Assoc_CreateEx(SysMem_GetMemHeap());
}
-
+
if ( self->paWhiteBoard != NULL )
{
if ( pszValue == NULL )
Name="VCCLCompilerTool"\r
Optimization="0"\r
AdditionalIncludeDirectories="..\..\include;..\..\..\kernel\include;..\..\..\kernel\include\arch\proc\win\win32;..\..\..\kernel\include\arch\irc\none"\r
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"\r
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS"\r
MinimalRebuild="true"\r
BasicRuntimeChecks="3"\r
RuntimeLibrary="3"\r
-// ---------------------------------------------------------------------------
-// Hyper Operating System V4 コンフィギュレーター
-// 構文解析クラス
-//
-// Copyright (C) 1998-2002 by Project HOS
-// http://sourceforge.jp/projects/hos/
-// ---------------------------------------------------------------------------
+/**
+ * Hyper Operating System V4 Advance Configurator
+ *
+ * @file analyze.cpp
+ * @brief %jp{構文解析クラス}%en{lexer cless}
+ *
+ * Copyright (C) 1998-2010 by Project HOS
+ * http://sourceforge.jp/projects/hos/
+ */
#include <stdio.h>
-// ---------------------------------------------------------------------------
-// Hyper Operating System V4 Advance コンフィギュレーター
-// API定義クラス
-//
-// Copyright (C) 1998-2009 by Project HOS
-// http://sourceforge.jp/projects/hos/
-// ---------------------------------------------------------------------------
+/**
+ * Hyper Operating System V4 Advance Configurator
+ *
+ * @file apidef.cpp
+ * @brief %jp{API定義クラス}%en{API definition cless}
+ *
+ * Copyright (C) 1998-2010 by Project HOS
+ * http://sourceforge.jp/projects/hos/
+ */
#include <stdio.h>
// ---------------------------------------------------------------------------
-// Hyper Operating System V4 コンフィギュレーター
-// INCLUDE API の処理
+// Hyper Operating System V4 Advance configurator
+// INCLUDE API
//
-// Copyright (C) 1998-2002 by Project HOS
-// http://sourceforge.jp/projects/hos/
+// Copyright (C) 1998-2010 by Project HOS
+// http://sourceforge.jp/projects/hos/
// ---------------------------------------------------------------------------
}
-// ---------------------------------------------------------------------------
-// Copyright (C) 1998-2002 by Project HOS
-// ---------------------------------------------------------------------------
+// end of file
// ---------------------------------------------------------------------------
-// Hyper Operating System V4 コンフィギュレーター
-// ATT_INI API の処理
+// Hyper Operating System V4 Advance configurator
+// ATT_INI API
//
-// Copyright (C) 1998-2002 by Project HOS
-// http://sourceforge.jp/projects/hos/
+// Copyright (C) 1998-2010 by Project HOS
+// http://sourceforge.jp/projects/hos/
// ---------------------------------------------------------------------------
}
-// ---------------------------------------------------------------------------
-// Copyright (C) 1998-2002 by Project HOS
-// ---------------------------------------------------------------------------
+// end of file
// ---------------------------------------------------------------------------
-// Hyper Operating System V4a コンフィギュレーター
-// ATT_ISR API の処理
+// Hyper Operating System V4 Advance configurator
+// ATT_ISR API
//
-// Copyright (C) 1998-2010 by Project HOS
-// http://sourceforge.jp/projects/hos/
+// Copyright (C) 1998-2010 by Project HOS
+// http://sourceforge.jp/projects/hos/
// ---------------------------------------------------------------------------
// ---------------------------------------------------------------------------
-// Hyper Operating System V4 コンフィギュレーター
-// CRE_ALM API の処理
+// Hyper Operating System V4 Advance configurator
+// CRE_ALM API
//
-// Copyright (C) 1998-2003 by Project HOS
-// http://sourceforge.jp/projects/hos/
+// Copyright (C) 1998-2010 by Project HOS
+// http://sourceforge.jp/projects/hos/
// ---------------------------------------------------------------------------
}
-// ---------------------------------------------------------------------------
-// Copyright (C) 1998-2003 by Project HOS
-// ---------------------------------------------------------------------------
+// end of file
// ---------------------------------------------------------------------------
-// Hyper Operating System V4 Advance コンフィギュレーター
-// CRE_CYC API の処理
-//
-// Copyright (C) 1998-2009 by Project HOS
+// Hyper Operating System V4 Advance configurator
+// CRE_CYC API
+//
+// Copyright (C) 1998-2010 by Project HOS
// http://sourceforge.jp/projects/hos/
// ---------------------------------------------------------------------------
+
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
}
-// ---------------------------------------------------------------------------
-// Copyright (C) 1998-2003 by Project HOS
-// ---------------------------------------------------------------------------
+// end of file
// ---------------------------------------------------------------------------
-// Hyper Operating System V4 コンフィギュレーター
+// Hyper Operating System V4a コンフィギュレーター
// DEF_INH API の処理
//
-// Copyright (C) 1998-2002 by Project HOS
+// Copyright (C) 1998-2010 by Project HOS
// http://sourceforge.jp/projects/hos/
// ---------------------------------------------------------------------------
* @file hos4cfg.cpp
* @brief %jp{メインルーチン}%en{main}
*
- * Copyright (C) 1998-2006 by Project HOS
+ * Copyright (C) 1998-2010 by Project HOS
* http://sourceforge.jp/projects/hos/
*/
# %jp{カーネル依存関係読込み}{dependency list of kernel sources}
include $(KERNEL_MAKINC_DIR)/knldep.inc
+$(OBJS_DIR)/val_int.$(EXT_OBJ): $(SRC_PROC_DIR)/val_int.c $(COMMON_HEADERS)
+$(OBJS_DIR)/kini_irc.$(EXT_OBJ): $(SRC_IRC_DIR)/kini_irc.c $(COMMON_HEADERS)
+$(OBJS_DIR)/kexe_irc.$(EXT_OBJ): $(SRC_IRC_DIR)/kexe_irc.c $(COMMON_HEADERS)
+$(OBJS_DIR)/dis_int.$(EXT_OBJ): $(SRC_IRC_DIR)/dis_int.c $(COMMON_HEADERS)
+$(OBJS_DIR)/ena_int.$(EXT_OBJ): $(SRC_IRC_DIR)/ena_int.c $(COMMON_HEADERS)
+$(OBJS_DIR)/vclr_int.$(EXT_OBJ): $(SRC_IRC_DIR)/vclr_int.c $(COMMON_HEADERS)
# end of file
>\r
</File>\r
</Filter>\r
- <Filter\r
- Name="parser"\r
- >\r
- <File\r
- RelativePath="..\..\..\..\include\parser\parserr.h"\r
- >\r
- </File>\r
- <File\r
- RelativePath="..\..\..\..\include\parser\parshok.h"\r
- >\r
- </File>\r
- <File\r
- RelativePath="..\..\..\..\include\parser\parsknl.h"\r
- >\r
- </File>\r
- <File\r
- RelativePath="..\..\..\..\include\parser\parssys.h"\r
- >\r
- </File>\r
- </Filter>\r
</Filter>\r
<Filter\r
Name="source"\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\..\..\source\object\isr\del_isr.c\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\..\..\source\object\isr\exe_isr.c\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\..\..\source\object\dtq\del_dtq.c\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\..\..\source\object\dtq\fsnd_dtq.c\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\..\..\source\object\dtq\ipsnd_dt.c\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\..\..\source\object\dtq\kcre_dtq.c\r
# End Source File\r
# Begin Source File\r
# End Source File\r
# Begin Source File\r
\r
+SOURCE=..\..\..\..\source\object\dtq\psnd_dtq.c\r
+# End Source File\r
+# Begin Source File\r
+\r
SOURCE=..\..\..\..\source\object\dtq\rcv_dtq.c\r
# End Source File\r
# Begin Source File\r
\r
SOURCE=..\..\..\..\source\object\dtq\trcv_dtq.c\r
# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\..\source\object\dtq\tsnd_dtq.c\r
+# End Source File\r
# End Group\r
# Begin Group "cyc"\r
\r
/* %jp{メモリマップドレジスタ定義} */
-#define _KERNEL_IRC_BASE 0xf0000000
+#define _KERNEL_IRC_BASE 0xffff8000
#define _KERNEL_IRC_ENABLE ((volatile UW *)(_KERNEL_IRC_BASE + 0x00)) /* Enable Register */
#define _KERNEL_IRC_MASK ((volatile UW *)(_KERNEL_IRC_BASE + 0x04)) /* Mask Register */
ER def_inh(INHNO inhno, const T_DINH *pk_dinh)
{
_KERNEL_INH_SET_INTHDR(inhno, pk_dinh->inthdr);
-
+
return E_OK;
}
{
isrcb = _KERNEL_ISR_ISRHDL2ISRCB(isrhdl);
isrcb_ro = _KERNEL_ISR_ISRHDL2ISRCBRO(isrhdl);
-
+
_KERNEL_ENA_INT(); /* %jp{多重割込み許可} */
_KERNEL_ISR_GET_ISR(isrcb_ro)(_KERNEL_ISR_GET_EXINF(isrcb_ro));
_KERNEL_DIS_INT(); /* %jp{割込み禁止} */
return E_NOMEM;
}
#endif
-
+
/* %jp{メモリ割り当て} */
isrcb = (_KERNEL_T_ISRCB *)mem;
isrcb_ro = (_KERNEL_T_ISRCB_RO *)mem;
}
#endif
#endif
-
+
/* %jp{メンバ初期化} */
_KERNEL_ISR_SET_EXINF(isrcb_ro, pk_cisr->exinf);
_KERNEL_ISR_SET_ISR(isrcb_ro, pk_cisr->isr);
return E_PAR;
}
#endif
-
+
_KERNEL_ENTER_SVC(); /* %jp{サービスコールに入る}%en{enter service-call} */
*p_system = *_KERNEL_SYS_GET_TIM();