About WonderWitch 今回のお題:
『なんだか未稿の関数群』


●概要

bios_exit() って何 ? datetime2time_t() って ? といった感じに、 .h ファイルには有るけどドキュメントに書いてない関数があったりするわけです。
結構便利なのも有るようなので、気付いたときに書き留めておこうかと。

ちなみに、関数仕様なんかはプロトタイプから考えるしかないし、 使ったところで上手く動くかどうかも判りません。 間違いとか有ったら指摘お願いします。

Qute とかバンダイに問い合わせもしないでね、一応。

なお、ネタが尽きるまでは逐次更新となります。最初のうちネタが少ないのは勘弁してね。

●内容

stdlib.h

time_t datetime2time_t(datetime_t far *datetime);
datetime_t far *time_t2datetime(time_t time, datetime_t far *datetime);
time_t 型と、datetime_t 型の相互変換を行う関数のようです。

sys/service.h

bios_exit() マクロ
引数は無し。プログラムを強制終了するようです。

MK_WORD() マクロ (2000/11/29 追加)
#define MK_WORD( x, y ) ( ( ( y ) << 8 ) | ( ( BYTE )( x ) ) )
とありました。2つのBYTE値をくっつけてWORD値にするようです。
MK_DWORD() マクロ (2000/11/29 追加)
#define MK_DWORD( high, low ) ( ( ( unsigned long )( high ) << 16 ) | ( ( WORD )( low ) ) )
ということですので、これは2つのWORD値をくっつけてDWORD値にするわけですね。
MK_FP() マクロ (2000/11/29 追加)
#define MK_FP( seg, ofs ) ( ( void far * ) ( ( ( unsigned long )( seg ) << 16 ) | ( unsigned )( ofs ) ) )
segment値とoffset値からfarポインタ値を作ると。
FP_OFF(), FP_SEG() マクロ (2000/11/29 追加)
#define FP_OFF( fp ) ( ( unsigned )( fp ) )
#define FP_SEG( fp ) ( ( unsigned )( ( unsigned long )( fp ) >> 16 ) )
farポインタ値から、segment値とoffset値を得ると。まんまですね。

●備考

datetime2time_t() と time_t2datetime() は無いと困るんじゃないかと思うですよ。 time_t 型で時間を得る関数が無いので。


戻る