tools/edimg
の編集
http://hrb.osask.jp/wiki/?tools/edimg
[
リロード
|
差分
|
単語検索
|
一覧
] [
編集
|
バックアップ
|
添付
]
-- 雛形とするページ --
A
Akkie
Athlon64X2
Clover
DAsoran
Falcon
FormatRule
FrontPage
Genesis
Help
I
InterWikiName
InterWikiSandBox
InterWikiテクニカル
Jormungand
K
Kebo
Kor_Lee_Hee_Rak
Leaf
Linux
Linux/wako_memo
MOIZ99
MW
MenuBar
OSC
PG_MANA
ReadersOS
RecentDeleted
SKYDASH
SandBox
Sero
Sigle
Source
Triangle_Ld.
Zxcvbnm
advance
advance/CPU
advance/FDC
advance/FPU
advance/NotHariMain
advance/QEMUVGA
advance/RTC
advance/blike
advance/cpu_reset
advance/driver
advance/driver/01
advance/driver/02
advance/families
advance/filesystem
advance/fwrite
advance/hddboot
advance/he86
advance/hints
advance/ipl
advance/kernel
advance/keycode
advance/osselect
advance/smaller1
advance/startup
advnace/smaller2
anzy
aotatsu
banbi-
bluedwarf
bo
bugs
challengers
cybozulabsyouth11
deskmanta
esb02b
faq
faq/advance
faq/asm
faq/c00-03
faq/c04-07
faq/c08-15
faq/c16-23
faq/c24-31
faq/make
faq/others
faq/qemu
guide
guide03
guide05
guide07
hikarupsp
imp_log/0000
imp_log/0001
imp_log/0002
imp_log/0003
impressions
index
k
killer_elf
kota
lea
lea/10_memory
lea/4_color
lea/idea
lea/terms
links
logs
logs/osa_hrb/comments0000
logs/osa_hrb/rumors0000
masa
members
message
mistakes
moge32
moppoi5168
notice
osdevjp
populars
prog_index
projects
q_and_a
q_and_a_2
qa_log/0000
qa_log/0001
qa_log/0002
qa_log/0003
qa_log/0004
qa_log/0005
qa_log/0006
qa_log/0007
qa_log/0008
qa_log/0009
quark
rankings
rule
sakamoto
sasaki
spc09
spcc_30min_os
tatsu
tools
tools/bim2hrb
tools/bin2obj
tools/cc1
tools/edimg
tools/gas2nask
tools/makefont
tools/nask
tools/obj2bim
tools/sjisconv
uchan
uho
updates
violations
wako
white
win64-bit
x
ytakano
ヘルプ
リックス
質問します
整形ルール
本は買ったぞ!持ってるぞ!
練習用ページ
* edimgについてのページ -(by [[K]], 2006.03.20) *** おおざっぱな説明 -主にmakeから使うためのディスクイメージ操作ツール *** 主要なコマンドの説明 -(opt) imgin:ファイル名 --ディスクイメージの読み込み。ディスクイメージを新規に作りたいときは、空っぽの内容のディスクイメージをこのコマンドで読み込ませる(fdimg0at.tekなど)。 -(opt) imgout:ファイル名 --できあがったディスクイメージの出力。 -wbinimg src:ファイル名 len:長さ from:読み込み開始位置 to:書き込み開始位置 --ディスクイメージの指定された場所に、指定されたファイルの内容を書き込む。主にブートセクタの書き込みに使われる。 -copy from:ファイル名 to:ファイル名 --ファイルのコピーをする。ディスクイメージへファイルを書き込んだり、ディスクイメージからファイルを取り出す。ディスクイメージを表すドライブ名は @: 。 *** とりあえずドキュメントのコピー これはDiskExplorerのCUI版のバグフィクス+α、みたいなものを目指しているツール です。とりあえずOSASKのディスクイメージくらいは作れるようになりました。 [コマンドライン] prompt>edimg コマンド列 (@スクリプトファイル が混在していてもよい) example>edimg imgin:osaimgat.bin bias:9 copy from:@:!guide!.txt to:./ example>edimg @srcipt0.txt example>edimg imgin:osaimgat.bin @script1.txt example>edimg binin:osask.exe exe2bin seg:2048 binout:osask.sys スクリプトファイルはコマンド列が並んだだけのものです。コマンドライン中の指定 された場所に展開されます。edimgではスペースや改行をパラメータの区切りとして見な すので、スペースを含むファイル名は扱えません。 [コマンドの説明] コマンドは次のようなフォーマットになります。 コマンド名 パラメータ名:パラメータ パラメータ名:パラメータ ... コマンド名は、optコマンドに限り省略可能です。 ・optコマンド optコマンドはパラメータを一つだけ持ちます。複数書いた場合は、optコマンドその ものが複数個あると見なされます。このコマンドはパラメータによって与える動作が大 きく異なります。なお、パラメータが与えられなければ、optコマンドは何もしません。 imginパラメータ: 書式: [opt] imgin:ファイル名 指定されたファイルをディスクイメージとして読み込みます。パーティション情 報を持っているディスクイメージの場合、最初のパーティションへアクセスするこ とになります。 imgoutパラメータ: 書式: [opt] imgout:ファイル名 ディスクイメージを指定されたファイルとして出力します。 vsizパラメータ: 書式: [opt] vsiz:イメージサイズ ディスクイメージを指定された大きさに変更します。SF16に対して使います。 bininパラメータ: 書式: [opt] binin:ファイル名 指定されたファイルをバイナリイメージとして読み込みます。これに対しては、 wbinimgコマンドとwritedataコマンドとexe2binコマンドしか使えません。 binoutパラメータ: 書式: [opt] binout:ファイル名 バイナリイメージを指定されたファイルとして出力します。 _pathパラメータ: 書式: [opt] _path:ベースパス パス指定で、先頭に"_:"という表記があれば、指定されたベースパスに置換して 解釈します。ベースパスに@:は指定できません。 biasパラメータ: 書式: [opt] bias:時差 ディスクイメージ内のファイルのタイムスタンプ補正のためのパラメータです。 日本では9を指定します。 ・copyコマンド 書式: copy [nocmp:] from:ファイル名 to:ファイル名 copyコマンドは2つのパラメータを持ち、fromからtoへファイルをコピーします。from とtoの順序を逆に書くことはできません。toのファイル名に限り、ファイル名の最後を ":"、"/"で打ち切ることが許されます。この場合、fromのファイル名が補われます。フ ァイル名ではなくディレクトリ名を書くときは必ず最後の/を忘れないでください。 ファイル名においてドライブ名"@"を使うと、それはディスクイメージを意味します。 ディスクイメージ内のファイルをディスクイメージ内へコピーすることもできますし、 普通のファイルコピーも可能です。 オプションのnocmp:を使うと、fromで指定されたファイルが圧縮されていた場合、展 開した結果をtoへ書き込みます。圧縮されていなかった場合はそのまま書き込みます。 ワイルドカードは使えません。 ・ovrcopyコマンド 書式: ovrcopy [nocmp:] from:ファイル名 to:ファイル名 オーバーライトコピーコマンドです。toのファイルが既に存在していれば、クラスタ の位置が変わらないように注意深くコピーされます。ファイルが存在していなければ、 コピーコマンドと全く変わりません。そのほかのこともコピーコマンドと同じです。 ・createコマンド 書式: create file:ファイル名 size:サイズ [begin:開始クラスタ番号] 中身が0x00で埋まったファイルを作ります。 ・ovrcreateコマンド 書式: ovrcreate file:ファイル名 size:サイズ [begin:開始クラスタ番号] 基本的にcreateコマンドと同じですが、もしファイルが既に存在していて、さらに指定 サイズよりも大きいか等しければ、ファイルサイズを変更することなく、サイズ分だけ 0x00で埋め尽くすだけにします。 ・setattrコマンド 書式: setattr file:ファイル名(@:〜でなければいけない) attr:アトリビュート値 ディスクイメージ内のファイルの、ファイル属性値を変更します。 ・deleteコマンド 書式: delete file:ファイル名 ファイルを削除します。 ・wbinimgコマンド 書式: wbinimg src:バイナリファイル名 len:転送バイト数 from:読み込み開始オフセット to:書き込み開始オフセット これはつまり、ブートセクタを書き込むためのコマンドです。fromはバイナリファイル 内のオフセットで、toはパーティションの先頭からのオフセットです。 ・releaseコマンド 書式: release [mini:] [zerofill:] [efat:] [nofrag:] [minibpb:] これは主にimgout直前に実行するコマンドです。デフォルトだと1440KB用のディスク イメージが1440KBとして出てきますが(たとえ読み込み時に後ろが切ってあっても)、 mini:を指定すると末尾の空きセクタを出力しなくなります。またzerofill:をやると、 deleteした部分に残っていたファイルの残骸がゼロクリアされます。 edimg0dからはさらに3つのパラメータが追加されました。これらはSF16のときのみ有 効で、efat:はFATを拡張FAT形式で出力させること、nofrag:は全てのファイルが断片化 していないことを確認したあと検査済みフラグを立てること、そしてminibpb:はmini:と 同じ方法で切り詰めたあとにそれに合うようにBPB情報を更新すること、をそれぞれ意味 します。 ・writedataコマンド 書式: writedata offset:書き込み開始オフセット [byte:データ,...,データ] [word:データ,データ,...,データ] [dwrd:データ,データ,...,データ] 書き込み開始オフセットから、指定されたデータを指定されたデータ幅で書き込みま す。wbinimgコマンドの、書き込むデータをスクリプト上で指定するもの、という感じで す。 ・listコマンド 書式: list ディスクイメージのディレクトリ一覧を出力します。 ・copyallコマンド 書式: copyall from:@: to:ディレクトリ名 ディスクイメージのファイルを全てコピーします。主にアーカイブの展開に使います 。ディレクトリ名は/で終わる必要があるので、たとえばカレントパスに展開したいとき は、to:./と書くことになります。 ・exe2binコマンド 書式: exe2bin seg:イメージがロードされるセグメント 16bit-EXEファイルをバイナリイメージにします。imgtolのsコマンドの代用です。 ・/*コマンド 書式: /* リマーク部開始コマンドです。コマンドなので、"/**"などとやると認識できずエラー になります。リマークの入れ子も可能です。 ・*/コマンド 書式: */ リマーク部終了コマンドです。コマンドなので、"**/"などとやると認識できずエラー になります。 [例 - 1] OSASK.SYSの大きさと位置は決まっているので、次のようにするのが普通です(AT互換機 版の場合)。最初の2行を変えると、TOWNSや98用のイメージができます。 opt imgin:fdimg0at.tek /* 1440KBブランクディスクイメージ */ wbinimg src:osaskbs1.bin len:512 from:0 to:0 create file:@:osask.sys size:108k begin:5 ovrcopy from:osask.sys to:@: setattr file:@:osask.sys attr:0x06 /* system+hidden */ copy from:osask0.psf to:@: /* これは一番最初に */ /* 以下順不同 */ copy from:!guide!.txt to:@: copy from:!guide2!.txt to:@: /* 中略 */ copy from:videomod.txt to:@: /* ここまでアプリの転送 */ release mini: opt imgout:testimg.bin [例 - 2] OSASK.SYSはデフォルトでは起動時にFDを読みに行きますが、これをATAやCFにするこ とができます。 "sys_cf0.txt" opt binin:osask.sys writedata offset:2 word:0x8200 というファイルを作っておいて、 prompt>edimg @sys_cf0.txt binout:osaskcf0.sys とやれば、CF用に書き換わります。 [例 - 3] 同じことをOSASK.EXEに対してやってみます。 "exe_cf0.txt" opt binin:osask.exe writedata offset:0x202 word:0x8200 というファイルを作っておいて、 prompt>edimg @exe_cf0.txt binout:osaskcf0.exe とやれば、CF用に書き換わります。 [例 - 4] 同じことをOSAIMGAT.BINに対してやってみます。 "img_cf0.txt" opt imgin:osaimgat.bin writedata offset:0x4802 word:0x8200 というファイルを作っておいて、 prompt>edimg @img_cf0.txt binout:osaskcf0.bin とやれば、CF用に書き換わります。 [例 - 5] sf16_40s.tekを使って、ディスクイメージをアーカイブ代わりにしてみます。 opt imgin:sf16_40s.tek /* SF16_40 simplest image */ opt vsiz:8m copy from:document.txt to:@: copy from:edimg.exe to:@: copy from:fdimg0at.tek to:@: copy from:fdimg0tw.tek to:@: copy from:sf16_40s.tek to:@: copy from:edimg.c to:@: copy from:Makefile to:@: copy from:make.bat to:@: copy from:!cons_9x.bat to:@: copy from:!cons_nt.bat to:@: release minibpb: nofrag: efat: opt imgout:imgarc.bin [例 - 6] 同じくsf16_40s.tekを使って、OSASK用のアーカイブを作る例です。 opt imgin:sf16_40s.tek /* SF16_40 simplest image */ opt vsiz:8m copy from:teditarc.txt to:@:ARCINFO0.TXT copy nocmp: from:teditc02.bin to:@: copy nocmp: from:teditc02.buf to:@: copy nocmp: from:teditc02.ini to:@: copy nocmp: from:te_alph0.bin to:@: copy nocmp: from:te_roma0.bin to:@: release minibpb: nofrag: efat: opt imgout:teditc02.org [例 - 7] OSASK用のアーカイブをカレントディレクトリに展開してみます(上記のteditc02.org をbim2binでteditc02.tkにしたとして。OSASKで使うときはおそらくbinにしていると思 いますが、binのまま展開すると内部のteditc02.binと名前が衝突して上書きされてしま います)。 prompt>edimg imgin:teditc02.tk copyall from:@: to:./ [例 - 8] くだらない使い方としては、ただのtek解凍ツールとしてbim2binの代わりをさせるこ とも一応できます。ただしrjcが掛かっているものはrjcが付いた状態で展開されます。 OSASK ver.4.6以降ならrjcが掛かっていても問題なく実行できるので基本的に問題はあ りません。 prompt>edimg copy nocmp: from:helloc4.bin to:helloc4.org * こめんと欄 -表題が「naskについてのページ」になってる件について。 -- 名無しさん SIZE(10){2006-04-16 (日) 11:19:35} -これは失礼しました。直しました。 -- [[K]] SIZE(10){2006-04-16 (日) 14:40:27} -全然分からないです; -- ''かれ'' SIZE(10){2006-10-23 (月) 16:35:49} -「30日でできる!OS自作入門」初版第12刷のedimgにはこの機能はないようです。 -- [[Triangle_Ld.]] SIZE(10){2009-05-27 (水) 18:39:07} -↑この機能…copyのfromにディレクトリが指定出来ない。(ディレクトリ名の末尾に/をつけても) -- [[Triangle_Ld.]] SIZE(10){2009-05-27 (水) 18:43:22} -はいできません。ディレクトリのコピーをする機能はありません。ファイルを一つずつ指定してください。 -- [[K]] SIZE(10){2009-05-27 (水) 20:32:34} -こちらが文章の意味を間違えていました。すいません。 -- [[Triangle_Ld.]] SIZE(10){2009-05-28 (木) 16:27:52} -あれ?でも、そうしたらQEMUでディレクトリを入れてシミュレーションすることができないじゃないですか。dirでディレクトリの実験をしたいのに! -- [[Triangle_Ld.]] SIZE(10){2009-05-29 (金) 15:12:52} -ワイルドカードを使えたら便利だなぁと思いましたがバッチファイルで解決しました -- ''某弁当係'' SIZE(10){2009-06-05 (金) 13:05:14} -ウーム、いまいちよくわかりません。ディレクトリを/で切ってやったら普通のファイル扱いになってしまいます。ディレクトリの区切りは\なのでしょうか。 -- [[Triangle_Ld.]] SIZE(10){2009-06-18 (木) 19:24:23} #comment
タイムスタンプを変更しない
* edimgについてのページ -(by [[K]], 2006.03.20) *** おおざっぱな説明 -主にmakeから使うためのディスクイメージ操作ツール *** 主要なコマンドの説明 -(opt) imgin:ファイル名 --ディスクイメージの読み込み。ディスクイメージを新規に作りたいときは、空っぽの内容のディスクイメージをこのコマンドで読み込ませる(fdimg0at.tekなど)。 -(opt) imgout:ファイル名 --できあがったディスクイメージの出力。 -wbinimg src:ファイル名 len:長さ from:読み込み開始位置 to:書き込み開始位置 --ディスクイメージの指定された場所に、指定されたファイルの内容を書き込む。主にブートセクタの書き込みに使われる。 -copy from:ファイル名 to:ファイル名 --ファイルのコピーをする。ディスクイメージへファイルを書き込んだり、ディスクイメージからファイルを取り出す。ディスクイメージを表すドライブ名は @: 。 *** とりあえずドキュメントのコピー これはDiskExplorerのCUI版のバグフィクス+α、みたいなものを目指しているツール です。とりあえずOSASKのディスクイメージくらいは作れるようになりました。 [コマンドライン] prompt>edimg コマンド列 (@スクリプトファイル が混在していてもよい) example>edimg imgin:osaimgat.bin bias:9 copy from:@:!guide!.txt to:./ example>edimg @srcipt0.txt example>edimg imgin:osaimgat.bin @script1.txt example>edimg binin:osask.exe exe2bin seg:2048 binout:osask.sys スクリプトファイルはコマンド列が並んだだけのものです。コマンドライン中の指定 された場所に展開されます。edimgではスペースや改行をパラメータの区切りとして見な すので、スペースを含むファイル名は扱えません。 [コマンドの説明] コマンドは次のようなフォーマットになります。 コマンド名 パラメータ名:パラメータ パラメータ名:パラメータ ... コマンド名は、optコマンドに限り省略可能です。 ・optコマンド optコマンドはパラメータを一つだけ持ちます。複数書いた場合は、optコマンドその ものが複数個あると見なされます。このコマンドはパラメータによって与える動作が大 きく異なります。なお、パラメータが与えられなければ、optコマンドは何もしません。 imginパラメータ: 書式: [opt] imgin:ファイル名 指定されたファイルをディスクイメージとして読み込みます。パーティション情 報を持っているディスクイメージの場合、最初のパーティションへアクセスするこ とになります。 imgoutパラメータ: 書式: [opt] imgout:ファイル名 ディスクイメージを指定されたファイルとして出力します。 vsizパラメータ: 書式: [opt] vsiz:イメージサイズ ディスクイメージを指定された大きさに変更します。SF16に対して使います。 bininパラメータ: 書式: [opt] binin:ファイル名 指定されたファイルをバイナリイメージとして読み込みます。これに対しては、 wbinimgコマンドとwritedataコマンドとexe2binコマンドしか使えません。 binoutパラメータ: 書式: [opt] binout:ファイル名 バイナリイメージを指定されたファイルとして出力します。 _pathパラメータ: 書式: [opt] _path:ベースパス パス指定で、先頭に"_:"という表記があれば、指定されたベースパスに置換して 解釈します。ベースパスに@:は指定できません。 biasパラメータ: 書式: [opt] bias:時差 ディスクイメージ内のファイルのタイムスタンプ補正のためのパラメータです。 日本では9を指定します。 ・copyコマンド 書式: copy [nocmp:] from:ファイル名 to:ファイル名 copyコマンドは2つのパラメータを持ち、fromからtoへファイルをコピーします。from とtoの順序を逆に書くことはできません。toのファイル名に限り、ファイル名の最後を ":"、"/"で打ち切ることが許されます。この場合、fromのファイル名が補われます。フ ァイル名ではなくディレクトリ名を書くときは必ず最後の/を忘れないでください。 ファイル名においてドライブ名"@"を使うと、それはディスクイメージを意味します。 ディスクイメージ内のファイルをディスクイメージ内へコピーすることもできますし、 普通のファイルコピーも可能です。 オプションのnocmp:を使うと、fromで指定されたファイルが圧縮されていた場合、展 開した結果をtoへ書き込みます。圧縮されていなかった場合はそのまま書き込みます。 ワイルドカードは使えません。 ・ovrcopyコマンド 書式: ovrcopy [nocmp:] from:ファイル名 to:ファイル名 オーバーライトコピーコマンドです。toのファイルが既に存在していれば、クラスタ の位置が変わらないように注意深くコピーされます。ファイルが存在していなければ、 コピーコマンドと全く変わりません。そのほかのこともコピーコマンドと同じです。 ・createコマンド 書式: create file:ファイル名 size:サイズ [begin:開始クラスタ番号] 中身が0x00で埋まったファイルを作ります。 ・ovrcreateコマンド 書式: ovrcreate file:ファイル名 size:サイズ [begin:開始クラスタ番号] 基本的にcreateコマンドと同じですが、もしファイルが既に存在していて、さらに指定 サイズよりも大きいか等しければ、ファイルサイズを変更することなく、サイズ分だけ 0x00で埋め尽くすだけにします。 ・setattrコマンド 書式: setattr file:ファイル名(@:〜でなければいけない) attr:アトリビュート値 ディスクイメージ内のファイルの、ファイル属性値を変更します。 ・deleteコマンド 書式: delete file:ファイル名 ファイルを削除します。 ・wbinimgコマンド 書式: wbinimg src:バイナリファイル名 len:転送バイト数 from:読み込み開始オフセット to:書き込み開始オフセット これはつまり、ブートセクタを書き込むためのコマンドです。fromはバイナリファイル 内のオフセットで、toはパーティションの先頭からのオフセットです。 ・releaseコマンド 書式: release [mini:] [zerofill:] [efat:] [nofrag:] [minibpb:] これは主にimgout直前に実行するコマンドです。デフォルトだと1440KB用のディスク イメージが1440KBとして出てきますが(たとえ読み込み時に後ろが切ってあっても)、 mini:を指定すると末尾の空きセクタを出力しなくなります。またzerofill:をやると、 deleteした部分に残っていたファイルの残骸がゼロクリアされます。 edimg0dからはさらに3つのパラメータが追加されました。これらはSF16のときのみ有 効で、efat:はFATを拡張FAT形式で出力させること、nofrag:は全てのファイルが断片化 していないことを確認したあと検査済みフラグを立てること、そしてminibpb:はmini:と 同じ方法で切り詰めたあとにそれに合うようにBPB情報を更新すること、をそれぞれ意味 します。 ・writedataコマンド 書式: writedata offset:書き込み開始オフセット [byte:データ,...,データ] [word:データ,データ,...,データ] [dwrd:データ,データ,...,データ] 書き込み開始オフセットから、指定されたデータを指定されたデータ幅で書き込みま す。wbinimgコマンドの、書き込むデータをスクリプト上で指定するもの、という感じで す。 ・listコマンド 書式: list ディスクイメージのディレクトリ一覧を出力します。 ・copyallコマンド 書式: copyall from:@: to:ディレクトリ名 ディスクイメージのファイルを全てコピーします。主にアーカイブの展開に使います 。ディレクトリ名は/で終わる必要があるので、たとえばカレントパスに展開したいとき は、to:./と書くことになります。 ・exe2binコマンド 書式: exe2bin seg:イメージがロードされるセグメント 16bit-EXEファイルをバイナリイメージにします。imgtolのsコマンドの代用です。 ・/*コマンド 書式: /* リマーク部開始コマンドです。コマンドなので、"/**"などとやると認識できずエラー になります。リマークの入れ子も可能です。 ・*/コマンド 書式: */ リマーク部終了コマンドです。コマンドなので、"**/"などとやると認識できずエラー になります。 [例 - 1] OSASK.SYSの大きさと位置は決まっているので、次のようにするのが普通です(AT互換機 版の場合)。最初の2行を変えると、TOWNSや98用のイメージができます。 opt imgin:fdimg0at.tek /* 1440KBブランクディスクイメージ */ wbinimg src:osaskbs1.bin len:512 from:0 to:0 create file:@:osask.sys size:108k begin:5 ovrcopy from:osask.sys to:@: setattr file:@:osask.sys attr:0x06 /* system+hidden */ copy from:osask0.psf to:@: /* これは一番最初に */ /* 以下順不同 */ copy from:!guide!.txt to:@: copy from:!guide2!.txt to:@: /* 中略 */ copy from:videomod.txt to:@: /* ここまでアプリの転送 */ release mini: opt imgout:testimg.bin [例 - 2] OSASK.SYSはデフォルトでは起動時にFDを読みに行きますが、これをATAやCFにするこ とができます。 "sys_cf0.txt" opt binin:osask.sys writedata offset:2 word:0x8200 というファイルを作っておいて、 prompt>edimg @sys_cf0.txt binout:osaskcf0.sys とやれば、CF用に書き換わります。 [例 - 3] 同じことをOSASK.EXEに対してやってみます。 "exe_cf0.txt" opt binin:osask.exe writedata offset:0x202 word:0x8200 というファイルを作っておいて、 prompt>edimg @exe_cf0.txt binout:osaskcf0.exe とやれば、CF用に書き換わります。 [例 - 4] 同じことをOSAIMGAT.BINに対してやってみます。 "img_cf0.txt" opt imgin:osaimgat.bin writedata offset:0x4802 word:0x8200 というファイルを作っておいて、 prompt>edimg @img_cf0.txt binout:osaskcf0.bin とやれば、CF用に書き換わります。 [例 - 5] sf16_40s.tekを使って、ディスクイメージをアーカイブ代わりにしてみます。 opt imgin:sf16_40s.tek /* SF16_40 simplest image */ opt vsiz:8m copy from:document.txt to:@: copy from:edimg.exe to:@: copy from:fdimg0at.tek to:@: copy from:fdimg0tw.tek to:@: copy from:sf16_40s.tek to:@: copy from:edimg.c to:@: copy from:Makefile to:@: copy from:make.bat to:@: copy from:!cons_9x.bat to:@: copy from:!cons_nt.bat to:@: release minibpb: nofrag: efat: opt imgout:imgarc.bin [例 - 6] 同じくsf16_40s.tekを使って、OSASK用のアーカイブを作る例です。 opt imgin:sf16_40s.tek /* SF16_40 simplest image */ opt vsiz:8m copy from:teditarc.txt to:@:ARCINFO0.TXT copy nocmp: from:teditc02.bin to:@: copy nocmp: from:teditc02.buf to:@: copy nocmp: from:teditc02.ini to:@: copy nocmp: from:te_alph0.bin to:@: copy nocmp: from:te_roma0.bin to:@: release minibpb: nofrag: efat: opt imgout:teditc02.org [例 - 7] OSASK用のアーカイブをカレントディレクトリに展開してみます(上記のteditc02.org をbim2binでteditc02.tkにしたとして。OSASKで使うときはおそらくbinにしていると思 いますが、binのまま展開すると内部のteditc02.binと名前が衝突して上書きされてしま います)。 prompt>edimg imgin:teditc02.tk copyall from:@: to:./ [例 - 8] くだらない使い方としては、ただのtek解凍ツールとしてbim2binの代わりをさせるこ とも一応できます。ただしrjcが掛かっているものはrjcが付いた状態で展開されます。 OSASK ver.4.6以降ならrjcが掛かっていても問題なく実行できるので基本的に問題はあ りません。 prompt>edimg copy nocmp: from:helloc4.bin to:helloc4.org * こめんと欄 -表題が「naskについてのページ」になってる件について。 -- 名無しさん SIZE(10){2006-04-16 (日) 11:19:35} -これは失礼しました。直しました。 -- [[K]] SIZE(10){2006-04-16 (日) 14:40:27} -全然分からないです; -- ''かれ'' SIZE(10){2006-10-23 (月) 16:35:49} -「30日でできる!OS自作入門」初版第12刷のedimgにはこの機能はないようです。 -- [[Triangle_Ld.]] SIZE(10){2009-05-27 (水) 18:39:07} -↑この機能…copyのfromにディレクトリが指定出来ない。(ディレクトリ名の末尾に/をつけても) -- [[Triangle_Ld.]] SIZE(10){2009-05-27 (水) 18:43:22} -はいできません。ディレクトリのコピーをする機能はありません。ファイルを一つずつ指定してください。 -- [[K]] SIZE(10){2009-05-27 (水) 20:32:34} -こちらが文章の意味を間違えていました。すいません。 -- [[Triangle_Ld.]] SIZE(10){2009-05-28 (木) 16:27:52} -あれ?でも、そうしたらQEMUでディレクトリを入れてシミュレーションすることができないじゃないですか。dirでディレクトリの実験をしたいのに! -- [[Triangle_Ld.]] SIZE(10){2009-05-29 (金) 15:12:52} -ワイルドカードを使えたら便利だなぁと思いましたがバッチファイルで解決しました -- ''某弁当係'' SIZE(10){2009-06-05 (金) 13:05:14} -ウーム、いまいちよくわかりません。ディレクトリを/で切ってやったら普通のファイル扱いになってしまいます。ディレクトリの区切りは\なのでしょうか。 -- [[Triangle_Ld.]] SIZE(10){2009-06-18 (木) 19:24:23} #comment
テキスト整形のルールを表示する