ページへ戻る

− Links

 印刷 

Linuxでosa_dir2​/log0 :: OSASK計画

osaskwiki:Linuxでosa_dir2/log0

Linuxでosa_dir2[1]のこめんとのログ/0

  • *.batを消しわすれたので各自で消して下さい。$ find . -name "*.bat" -exec rm {} \; -- 筆者編集[2] 2004-04-29 (木) 20:28:14
  • これらをコンパイルしてgoのあるところ(/usr/local/bin/goset006)にいれてください
    • aksaはそのままgcc -o aksa aksa.c
    • exe2sysはgcc -DWIN32 -o exe2sys exe2sys.c
    • edimgはgcc -Dmain0=main -o edimg edimg.c -- 筆者編集[2] 2004-04-29 (木) 20:30:30
  • edimgに-Dmain0=mainは不要です。というかそんなことしたら実行不能なバイナリになりませんか?-Dmain0に関する記述はGOでwin32アプリを作る場合ときのみ必要で、その他の場合は不要です。 -- K[3] 2004-04-29 (木) 20:33:09
  • おおいらなくなっていたんですね。気がつかなかった。main0をmainにかきかえるのが面倒だったのでしていました。普通にバイナリは実行できました -- 筆者編集[2] 2004-04-29 (木) 20:37:26
  • copy from:OSASK0.PSF to:@: がうまくいかないとのことですが、非常に基本的なこととして、edimgが走っているときのカレントパスにOSASK0.PSFはちゃんと存在しているでしょうか。なければもちろんコピーはできません。copyはフルパスも書けますので、 copy from:/usr/~/OSASK0.PSF to:@: とかにしてもダメかどうかを確認するといいかもしれません。 -- K[3] 2004-04-29 (木) 20:44:58
  • ありがとうございます。ファイルは存在していますし、フルパスで指定しても駄目でした。OSASK0.PSFだけでなくosask_qe.sysからOSASK.SYSもだめです。ovrwritefile error. : @:OSASK.SYSで、ステータスは15です。 -- 筆者編集[2] 2004-04-29 (木) 20:49:03
  • そのエラーはおかしいなあ。path[0] == '@' && path[1] == ':'のときは、そのエラーが出ないはずなのです。関数ovrwritefile()のerr:ラベルの直後に、printf("%d\n", path[0]);を挿入して、何が表示されるか教えてもらえますか? -- K[3] 2004-04-29 (木) 21:03:22
  • 64とでました。%dではなく%cとすると'@'になりました。なんとなくpath[1]もしらべましたが、':'になっていました。いちおうif (j < 2)goto err;のまえでjの値をしらべると5でした。gccの問題なんですかね? -- 筆者編集[2] 2004-04-30 (金) 14:37:36
  • gcc-2.96ではコンパイルが通らないけど、gcc-3.3.2ではコンパイルが通る。関係あるかな。 -- 筆者編集[2] 2004-04-30 (金) 16:14:32
  • 読み込んでいるディスクイメージが壊れているということはないですか?(圧縮してアップロードしてくれたらこちらでチェックします)。それと、他の人からの報告もあるといいですね。 -- K[3] 2004-04-30 (金) 16:19:05
  • アップロードするときは、ディスクイメージと、テストに使ったスクリプトをセットにしてもらえると助かります。 -- K[3] 2004-04-30 (金) 16:20:30
  • ほかのイメージでも試してみましたが駄目でした。いちおうosa_qemu以下のlhaを添付します -- 筆者編集[2] 2004-04-30 (金) 16:37:37
  • イメージにも問題なさそうですねえ。FATがうまく読めていないのかなあ。関数ovrwrite()のerr:ラベルの直後に、printf("%d %d %d %d %d\n", fat[5], fat[6], fat[7], fat[8], fat[9]);を書き足したらどうなりますか? -- K[3] 2004-04-30 (金) 16:54:59
  • 早速ありがとうございます。6 7 8 9 10とでました。listはできます。 -- 筆者編集[2] 2004-04-30 (金) 17:01:43
  • おかしい!fatも正しいのになんでOSASK.SYSがオーバーコピーできないんだー!・・・うーんそれじゃあ、err:直後のprintfを次のように書き換えたらどうなりますか。printf("%d\n", j); -- K[3] 2004-04-30 (金) 17:06:51
  • 5でした。 -- 筆者編集[2] 2004-04-30 (金) 17:09:39
  • ああわかった! -- 名無しさん[4] 2004-04-30 (金) 17:11:01
  • ↑は僕です。バグ発見しました。10分待ってください。 -- K[3] 2004-04-30 (金) 17:11:41
  • 関数writefile()とovrwritefile()にバグがありました。 -- K[3] 2004-04-30 (金) 17:14:54
  • ありがとうございます。こんなことに時間を割いてもらってしまって申し訳ないです。 -- 筆者 2004-04-30 (金) 17:15:33
  • http://k.hideyosi.com/edimg0e.lzh[5] (18.7KB) をお試しください。 -- K[3] 2004-04-30 (金) 17:19:43
  • バグ発見のためにたくさん協力してくれてありがとうございました。 -- K[3] 2004-04-30 (金) 17:20:20
  • 噛み降臨! あとで最終版パッチ書きます。明日orGW明けになるかも。 -- 筆者編集[2] 2004-04-30 (金) 17:28:54
  • いちおう書いた。UNIXユーザーのために[6]に追加してくださった人ダンケスコ -- 筆者編集[2] 2004-04-30 (金) 20:07:26
  • 考えてみると、z_osabin以下にシェルスクリプトを用意しないと逝けないのか。 -- 筆者 2004-04-30 (金) 20:19:04
  • edimg0eは重要なバージョンではありますがMLではリリース案内しません。10日以内に機能拡張してバージョン0fを作るので、それをML上で公開する予定です。一応ご連絡まで。 -- K[3] 2004-05-01 (土) 14:56:44
  • 成功おめでとうございます。>osa_dir2-2 -- K[3] 2004-05-01 (土) 14:57:45
  • DOSのバッチファイルがわからん。だれかシェルスクリプトかいて。 -- 筆者 2004-05-01 (土) 21:21:04
  • メモだけ張っておく。書きかけ。もちろん汚い。相当間違っていても気にしないでね。DOSのgotoやらifやらerrorlevelなんて知らん。 叩き台 -- 筆者編集[2] 2004-05-01 (土) 21:53:45
    #!/bin/sh
    
    TOOLPATH=${TOOLPATH:-"/usr/local/bin/goset006"}
    QEMU="make -r -C ../z_tools/qemu"
    
    make -r -C ../z_tools/osa_qemu
    
    if [ $1 == . ]; then
            $TOOLPATH/edimg @\!run_opt.txt || exit 1
            $QEMU
           exit
    fi 
    
    if [ $1 == .. ];then
            cp -f ../z_tools/osa_qemu/osaimgqe.bin ../z_tools/qemu/fdimage0.bin || exit 1
            $QEMU
           exit 
    fi
    
    cp -f $1.bin ../z_tools/\!built.bin || exit 1
    $TOOLPATH/edimg @../z_tools/edimgopt.txt || exit 1
    $QEMU
  • 複数の引数や、.binのついた引数にも対応する予定。時間ない.qじゃ -- 筆者編集[2] 2004-05-01 (土) 21:58:53
  • 忘れないうちに思い付いたアルゴリズムのメモ。汚すぎ。 -- 筆者編集[2] 2004-05-01 (土) 23:00:35
    for f in $@;do echo $f | sed s/.bin//g >> edimgopt2.txt;done
  • osa_dirの本家ページどこだか判らないんでここにコメント書かせてもらおうっと。便利便利、まあ個人的には欲張ってライセンス別に分けようとか思わなかったらそもそも悩まなかった気もするけど。・・・それはともかくうちでもmake runでcopyにいつも失敗するから何でと思ったんだけど原因は単純な話だった。パスの切り方がまずくてmake.batじゃなくて別パス(cygwin?)のmakeが呼ばれるらしく、こいつが内部コマンド解釈してくれないみたいなんだな。これと同じようにcp呼ぶ用にすればできるから・・・というか.\make runってすれば問題ないよな、考えてみれば。 -- 名無しさん[4] 2004-05-02 (日) 00:12:10
  • とりあえず便利だと思ってもらえて何よりです。アプリ開発やOSASKでちょっと遊んだりするときにご活用ください。.\makeのほかに、make.batでもいけるかもしれません。 -- K[3] 2004-05-02 (日) 00:57:32
  • 05/01に考えていたあるごりずむ、いま考えると意味不明。run.shもわからん。ヤメダヤメダ…スマソ。 -- 筆者 2004-05-04 (火) 21:01:36
  • そういえばOSASKに乗せるシェルスクリプト仕様ってどの辺まで定義されてるんだっけ?今更shだbatだで悩むならそれでっち上げて移植したほうが早かったりして^^; -- 名無しさん[4] 2004-05-05 (水) 00:02:03
  • impressions[7]ネタかな?ああでも冗談だからここでいいのか。なんか一人で納得してすみません。 -- K[3] 2004-05-05 (水) 00:35:30

Last-modified: 2009-11-17 (火) 00:00:00 (JST) (118d) by lina