Search Result: hoja

jhoja (Java 逆アセンブラ for Jasmin、逆コンパイル阻止機能付き)を公開。

…abeta.tk/jhoja/ jhojaという名前のJavaクラスファイルの逆アセンブラを公開しました。 SWAG javap2ベースです。 Windows版(32bitバイナリで32/64bitのWindowsで動く) Jasminという既存のJavaアセンブラにかけられるソースを出力します。 逆コンパイル阻止のコードを埋め込むオプション機能があります。 jhoja自体はUTF-8の出力をします。 しかし大問題がありJasminはアスキーコード文字列しか正しくアセンブルで…

Z80逆アセンブラhojaをC#に移植してみた。

Javaから移植した。今日初めて今日できた。 C版、Java版、C#版の全ての版で見直したい部分があるのでまだ公開はしない。 やっぱりJavaとC#はよく似ているなと思った。 移植に一番問題となったのはC#にprintf関数がないことだった。 Javaも元々は無かったがVer 1.5辺りからSystem.out.printf()がある。 C言語のprintfと完全互換はないものの大体同じで助かる。 C#はprintfがないので移植の際のバグが出やすい。

Z80逆アセンブラhoja for Javaを、手作業でいちから移植しなおしている。

…、Z80逆アセンブラhojaのJava版を手作業でいちからC言語からJavaに移植作業を始めました。 Java版は既に公開しているんですが、それは半自動で移植したものです。 NovosoftのC2Jというトランスレーターを使ってC言語からJavaに変換したソースがベースで、GPLらしいランタイムライブラリを使わないと動かないし、変換にも実行にもバグがあって実行時にエラーが出ることがある。 とにかくいろいろ問題があって理想ではないのです。 完全自動変換できればよかったが、変換に…

hoja for Javaの手作業移植版できた。

要動作確認の段階だけど一応動くものが完成。 C言語ソースからJavaソースへのトランスレーターツールを使って作ったバージョンと入れ替える予定。

Jasmin対応のJava逆アセンブラができた。

…abeta.tk/jhoja/) SWAGのJavap2というJavapに似た逆アランブラを改造してJasminというJavaバイトコードのアセンブラにかけられるJava逆アセンブラを作った。 類似の物としてはJasperがあるが、Jasperは最近のJDKでコンパイルしたクラスファイルを逆アセンブルできない。 (試したところJ2SE 1.4○、JDK1.6×、JDK1.8×) (※二年後の追記。Jasper自体はJRE 1.8でも起動するが、逆アセンブルに対応するclass…

Z80逆アセンブラ hoja Mac OS Xを公開

Mac OS X版のZ80逆アセンブラhojaを一般公開した。 hoja for Javaにバグが見つかったがなおせなかったので、Mac OS Xでも使えるように移植した。 hojaは8ビットパソコンからスタートして長い歴史があるが、Mac OS Xに移植したのはこれが初めてです。http://www.nabeta.tk/hojamacosx/hojamacosx.html

最終的にMac OS X上のgccでhojaが起動した。

…n上のgccで作ったhojaが起動した。 Mac OS X 10.9 Mavericksと相性が悪いので C++Builder XE4ではMac OS Xのプログラムは配布できないということか? そりゃ困ったな。 C++Builderも最新バージョンはXE6。 最新バージョンにすれば問題ないのだろうが、超高価な市販品だからなあ。 で、gcc版を配布するとしたら、ライセンスはどうなるんだろうか。 LGPLなのかGPLなのか? ライセンスがどうなっているのか良く分からないのは困る…

hoja Mac OS X版がなかなか他人のパソコン上で動かない。

バイナリ配布って難しいんだなと改めて痛感した。 個人ユーザーに何度も直して送り続けているがなかなか起動してくれない。 私のパソコン上では起動するんだが。 最初は、実行属性つけ忘れて起動しない。 次は、添付ライブラリが足りなくて起動しない。 lddがMac OS Xには無かったので、調べて、「otool -L 実行バイナリ」と入力して、必要な添付ライブラリを調べた。 次は、Expected in: /usr/lib/system/libsystem_c.dylib というエラー…

Z80逆アセンブラ hoja for Mac OS Xが完成。

…Z80逆アセンブラ hoja for Javaがなぜか反響があった。 Mac OS Xで使いたかった人がいたようだ。 しかし、Java版には他のOSのhojaにはないバグが見つかった。 Java版を使ったユーザーから異常終了するとメールが来たのだ。 ヘキサファイルの逆アセンブル時にダンプ表示のオプションの-d または -hオプションを使用してなお且つ大きめの領域を逆アセンブルしようとしたときにスタックオーバーフローのエラーが出て異常終了する。 調べてみたが理由がわからずなおせ…

Z80逆アセンブラ hoja for Java 公開。

…nabeta.tk/hojajava/hojajava.html Vectorとフラットワールドにも登録申請した。 もう需要はないので公開する必要性はないかも知れないがせっかく作ったので。 ソフトを使って欲しいからわざわざ作ったのではなくて、 C言語からJavaに変換するトランスレーターのNOVOSOFT C2J Converterが使い物になるかどうかの実験の過程でできたものだ。 NOVSOFT C2J Converterは惜しいことにバグがある。 そのために実用の一歩手前…

Z80逆アセンブラhoja for Java が完成。

Z80逆アセンブラなんて、もう需要がないのは百も承知だがJavaに移植してみた。 実用性はないももの、技術的な実験という意味はあると思う。 これは、C言語からJavaソースへ変換するNOVOSOFTのC2Jというトランスレーターを利用して作った。 元のC言語ソースは書き換えなければならなかった上に、出力されたJavaソースは間違っていて直接Javaソースをいじらなければいけなかったが、なんとか移植できた。 大昔、8ビットパソコンのMSXで作ったプログラムが、時を経てJava …

C2J、C言語からJava言語ソースへのトランスレーター

…「Z80逆アセンブラhoja」のC言語(K&R)ソースからJava版を作ったので後から記事を書き換えました。) C言語でJava VM上で動作するプログラムを作れるのか作れないのか調べてみた。 結論はなんとか作れる場合もある。 NOVOSOFTのC2JというC to Javaのトランスレーターを見つけた。 http://tech.novosoft-us.com/product_c2j.jsp C言語ソースからJavaのクラスファイルを直接作ることはできない。 C言語ソースをJ…

C言語インタプリター CINTを試す

…トすることにした。 hojaというZ80逆アセンブラ UNIX版のC言語ソースをCINTで動かそうとしてみたが動かなかった。 まず、memory.h と malloc.h のインクルドファイルがないとエラー。 memrory.h と malloc.hを空ファイルで作ってみると、hoja側にコマンドライン引数を与えない場合は使い方の表示が出て正しく動いているようだ。 EUCで出力しているのでWindowsでは文字化けしているが。 ファイル名を指定して逆アセンブルしようとすると、…