1: /* $Id: 1048608.html,v 1.1.1.1 2000/08/28 11:39:25 hidetosi Exp $ */ 2: 3: #define WRITEBUFSIZE 1024 4: /* ファイル読み込みの状態を表す構造体 */ 5: typedef struct{ 6: W fd; 7: W TADRecode; 8: W LinkRecode; 9: W offset; /* 現在のオフセット */ 10: /* 可変長セグメントの時:データ本体の最初(データ長の後) */ 11: /* 固定長セグメントの時:その文字のところ */ 12: /* ここより読み込み用データ */ 13: W SegOffset; /* セグメントの最初のオフセット */ 14: W NextOffset; /* 次のセグメントのオフセット */ 15: UB ID; /* セグメント ID */ 16: UW length; /* セグメントの長さ */ 17: UB subID; /* 言語指定の時、連鎖の数 */ 18: UB attribute; /* 言語指定の時、言語の種類 */ 19: TC code; 20: } FILECONTEXT; 21: 22: #define NONE -1 23: 24: #define TS_FIXED 1 /* 固定長セグメント */ 25: #define TS_SPECIAL 2 /* TRON 仕様特殊コード */ 26: #define TS_LANGUAGE 3 /* 言語指定コード */ 27: 28: extern FILECONTEXT* StartFile(W,W); 29: extern BOOL EndFile(FILECONTEXT*); 30: extern BOOL ReadLinkRecode(FILECONTEXT*,VLINK*); 31: extern BOOL NextSegment(FILECONTEXT*,BOOL); 32: extern void SkipData(FILECONTEXT*,int); 33: extern int ReadData(FILECONTEXT*,B*,int); 34: