(toppers-users 424) JSP-1.3 の Windows 版を動かしてみました
oohashi
oohashi @ tms-ltd.co.jp
2002年 6月 14日 (金) 21:21:22 JST
大箸@TMSです
JSP-1.3のWindows版で、Sample1の動作をVBから確認しました。
そのときの、ソース修正について報告します。
DOC\windows.txtの
5.1.2 VisualBASIC用デバイスコントロール(COM版)の使い方
6. sample1.c:87のsyslogの手前に次の行を入れる
DeviceWrite(0x1234,1, (unsigned char)tskno);
#この命令によってポート0x1234番地に1バイトのレジスタを持つ
#デバイスにデータを出力できる
と記述されていますが、該当する行が見あたりません。
ソースを見る限り、120行目の下記箇所がそうであると思います。
while (1) {
DeviceWrite(0x1234,1, (unsigned char)tskno);
//#この命令によってポート0x1234番地に1バイトのレジスタを持つ
//#デバイスにデータを出力できる
syslog_3(LOG_NOTICE, "task%d is running (%03d). %s",
tskno, ++n, graph[tskno-1]);
ただしこのままでは、コンパイルエラーが発生します。
次のように修正することでsample1のコンパイルエラーがとれました。
while (1) {
// DeviceWrite(0x1234,1, (unsigned char)tskno);
DeviceWrite(0x1234,1, &(unsigned char)tskno); //ポインターにしない
とエラーです
//#この命令によってポート0x1234番地に1バイトのレジスタを持つ
//#デバイスにデータを出力できる
syslog_3(LOG_NOTICE, "task%d is running (%03d). %s",
tskno, ++n, graph[tskno-1]);
2. sys_defs.hのDEVICE_ENABLEのコメントを外し、デバイスを有効にする
に従いコメントをはずしてコンパイルすると、
jsp\config\windows\device_com.cpp
193行めにてコンパイルエラーが発生します。
該当するソース部は下記の箇所です
::DispatchMessage(msg);
次のように修正することでdevice_com.cppのコンパイルエラーがとれました。
// ::DispatchMessage(msg);
::DispatchMessage(&msg); //ポインターにしないとエラーです
以上で、カーネルのコンパイルは正常に行えました。
VB側はDOC\windows.txtにある手順通りで動作を確認出来ました。
すでに把握されているかもしれませんが、一応ご報告まで。
------------------------------------
(有)東京マイクロシステム
システム開発部
大箸 隆久
------------------------------------
** Cannot accept Content Type: text/html
** An attached file or an HTML part was eliminated. **