./rebase -b 0x30000000 /cygdrive/c/MinGW/msys/1.0/bin/msys-1.0.dll
日録
2016年10月14日金曜日
[rebase] windows10のupdateにてMinGWが動かなくなった場合の対処
rebaseを使い、メモリのかちあいを無くした
2016年9月21日水曜日
2016年9月7日水曜日
[ruby] Open3.popen3
標準入出力管理可能な子プロセス作成処理
ただし、バッファに難有
ただし、バッファに難有
$instructions.each{|insn|
printf("--- TEST: %s", insn)
Tempfile.open(['xxx', '.s']){|fp|
fp.puts("\torg\t100h")
fp.puts("\t" + insn)
fp.puts("\tend")
fp.flush
# system($assembler + " " + fp.path)
Open3.capture3($assembler, fp.path)
hexname = fp.path.sub(%r{\.s$}, ".hex")
File.open(hexname){|hexfile|
$results << TestResult.new(insn.chop, hexfile.read)
}
File.unlink(hexname)
}
}
[ruby] JSON
JSON用クラス
文字列を渡してJSONオブジェクトを作ることができる。
文字列を渡してJSONオブジェクトを作ることができる。
print JSON.load("[#{$results.map{|e| e.to_json}.join(",")}]").to_s
[ruby] Tempfile
テンポラリファイルを作成するためのクラス
open()でテンポラリファイルを作成する。配列でプレフィックス、サフィックスを指定することができる。
ブロックを渡した場合はテンポラリファイルはそのブロック内で有効である。
open()でテンポラリファイルを作成する。配列でプレフィックス、サフィックスを指定することができる。
ブロックを渡した場合はテンポラリファイルはそのブロック内で有効である。
- 作られた オブジェクトはpathでファイル名を取り出すことができる。
- ブロックから外れた時にはテンポラリファイルは自動で削除される。
$instructions.each{|insn|
printf("--- TEST: %s", insn)
Tempfile.open(['xxx', '.s']){|fp|
fp.puts("\torg\t100h")
fp.puts("\t" + insn)
fp.puts("\tend")
fp.flush
# system($assembler + " " + fp.path)
Open3.capture3($assembler, fp.path)
hexname = fp.path.sub(%r{\.s$}, ".hex")
File.open(hexname){|hexfile|
$results << TestResult.new(insn.chop, hexfile.read)
}
File.unlink(hexname)
}
}
登録:
投稿 (Atom)