ページへ戻る

− Links

 印刷 

hideyosi​/OLD​/ASKA のバックアップソース(No.19) :: OSASK計画

osaskwiki:hideyosi/OLD/ASKA のバックアップソース(No.19)

« Prev[4]  Next »[5]
-ASKAのホームページ → [[Z:ASKA]]
-MASMの10倍マシらしい
--「MASMが読めなくても、ASKAは読める」
--「MASMは実際以上に難しく見えるが、ASKAは実際程度にしか難しくない」(読むだけならね)
--「書くのはMASM並みの知識が必要不可欠です。本質は相変わらずアセンブラなのです」
--「でも、読みやすいから、デバッグは楽ですよ、すごく」
--「一回慣れたら、二度と戻れない、麻薬の世界です(笑)」
-C言語風の見た目

----

*そろそろいいかな?          2003/9/13
さて、この版のASKAも、各種テスト(OSASKの3.9・4.0をビルド)を経て、まず動作には問題なかろうという感じのようだ。
そんなわけなので、この版を、正式な? β20として提案しようと思う。
-やんなきゃいけないこと
--まず、バージョン表記から「test」の文字を削除する。
---ASKA Ver1.0 Beta20_test-0.0.2 Modified by hideyosi & I.Tak.

>>>''↓''

---ASKA Ver1.0 Beta20 Modified by I.Tak.
--historyを、I.Tak.さんが作ってくれたものに差し替える
---具体的に言うと、以下を追記する。

 <ASKA Ver1.0β19> Modified by RisaPapa
  2001/12/06
 ・英語にローカライズ
 ・エラー終了をコマンドの返り値に反映

 <ASKA Ver1.0β20> Modified by hideyosi & I.Tak.
 2003/08/01
 ・Linux対応 (-DLINUX)
 ・CRLF以外の改行コード(UNIX, Mac)と改行コード以外で終わるファイルに対応
 ・Usageに残っていたSJIS文字を修正
 ・エラーがないときはエラー数を表示しない
 ・最終行に改行がないソースで不具合が起こるバグを修正

--copylightを、一般的なKL-01のものに差し替える
---元となったβ19eは、ライセンスが未確認だったようだが、派生したβ20をKL-01として公開することに、RisaPasaさんがOKを出してくれました。(確認済み)

--この版を元に、コンパクトなWin32用のEXEを作る
---今原さんからアドバイスを頂き、この版でも65.5KB(UPX)という小さなバイナリを作ることができました。

-以上を施したものを、以下にまとめました。
---[[ソース:http://hideyosi.zive.net/~hideyosi/age/aska/aska20src2.lzh]]
---[[実行形式:http://hideyosi.zive.net/~hideyosi/age/aska/askab20_1.lzh]]


-そんなわけなので、改めてこれを、「β20としてはどうか?」と、川合さんにご提案させていただきます。





----
-動きました。簡単なソースを処理させましたが, 三種の改行コードをみな認識できてます。しかし, 改行コードなしの行でソースが終わる場合誤動作します (運がいいとしませんが)。つうわけで(^^; 適当に(オリジナルに対する) パッチをまとめつつ修正してみました。http://user.ecc.u-tokyo.ac.jp/~g240845/osask/lzh/aska_test-0.0.2.patch.gz 使い方はファイルの先頭に書いてあります。 -- [[I.Tak.]] SIZE(10){2003-08-01 (金) 11:12:07}
-I.Takさん感謝~。うーん・・・なるほど!そうかこうやるのか!。勉強になりますたぁ。こんな洗練された方法があるんですね。C++おそるべし!(・・・つーか、自分でもいってますけど、知らないとはいえ、私がやった方法って、荒っぽいんですねぇ。 (^^;) ) -- [[hideyosi]] SIZE(10){2003-08-01 (金) 14:17:22}
-ちは。なんか面白そうな。ところで、ASKAの元になった仕様が閲覧できるか気になる、と言ってみる。 -- [[Gaku]] SIZE(10){2003-08-02 (土) 11:54:37}
-ASKAの元になった仕様 (めざす言語仕様?)……それはOSASKのように川合さんのみぞ知るところだと思います(^^; ソースに付いてるhistoryの最後の方にToDoが書いてあるので, それを見るとなにをしたいのか分かるかも。ちなみにデコードキャストというのは出力形式を明示的に指示するもので, 普通なら xor eax, eax になる EAX=0; を (mov)EAX=0; と書くと mov eax,0 になるとかそういうものです。 -- [[I.Tak.@帰省]] SIZE(10){2003-08-03 (日) 20:48:53}
-ソース読めば良いんですが、ASKAのソースは仕様に遠く及ばないようなので。追及は気が向いたときにやることになりますか。 -- [[Gaku]] SIZE(10){2003-08-05 (火) 21:20:16}
-ASKAは386|ASM用ソースを出力するのでnaskcnv0がないと使えない。naskcnv0も移植してみました。http://home1.catvmics.ne.jp/~msy/tak/naskcnv0.tar.gz gas2naskよりも真面目に移植したつもり。 -- [[I.Tak.]] SIZE(10){2003-08-14 (木) 09:14:52}
-txt2binとosalink1はそのままコンパイルできるので, Makefileを直せばLinuxでOSASKがコンパイルできるはず……なんでtxt2binはソースと一緒に配布されてるんだろ? -- [[I.Tak.]] SIZE(10){2003-08-14 (木) 09:21:26}
-すみませーん、上記のソースと実行形式をダウンロードし直そうと思ったんですが(前にダウンロードしたやつが事故で消えまして・・・)、ダウンロードできません。誰か再uploadをお願いします。 -- [[K]] SIZE(10){2003-10-10 (金) 23:08:18}
-Kタン<すいません。これまだ復旧してませんでした。入手できましたか?もしまだなら、12時くらいまで待っていただければ、復旧できますが。 -- [[hideyosi]] SIZE(10){2003-10-11 (土) 08:44:14}
-はい。まだ入手できていません。いつまででも待ちますので、復旧したらここに書き込んでください。 -- [[K]] SIZE(10){2003-10-11 (土) 09:29:59}
-おまたせしました。これでOKのはずです。更新してありますので、ダウンロード、よろしくお願いします。 -- [[hideyosi]] SIZE(10){2003-10-11 (土) 11:24:28}
-I.Tak.さんへ:上記バージョンのバイナリでテストしたところ、エラーがなくても毎度の「Error Counts  >>>  Scanner:0, Parser:0, Generator:0」が出てますが、これはそういう仕様なんでしょうか?それともパッチ作成ミス??? -- [[K]] SIZE(10){2003-10-11 (土) 13:20:29}
-私が出したパッチは、簡単に元に戻せるように大概の修正部分を #ifdef LINUX で囲ってあったんです (windowsで使う・テストする気が無かったので)…うっかり忘れてhistoryを書いてしまったようです(^^;;; #ifdef LINUX は要らなかったら消してください。 -- [[I.Tak.]] SIZE(10){2003-10-11 (土) 20:08:36}
-具体的には、parser.cppとmodule.cppに、不当にLinux用となっているところがあります。windowsでチェックして、動くならifdefをはずしてください>hideyosiさん -- [[I.Tak.]] SIZE(10){2003-10-11 (土) 20:32:25}
-g++(GCC)4.0.2使用でコンパイルしました。modules.hの40行目で引っかかるようです。代入できないと怒られます。マクロ(macro.h)を参考に手で展開した後、del (unsigned char *)…とやって回避しました。 -- ''くーみん'' &new{2006-03-01 (水) 17:42:53};
-ASKAをASKAで書き直したらどれくらい小さくなるのでしょう? -- [[名無しさん]] &new{2006-03-02 (木) 00:53:12};
-たぶん今のnaskの1.5倍くらいで収まるのではないかなあ。 -- [[K]] &new{2006-03-02 (木) 13:56:23};
-1.5倍 == 75KB でしょうか? -- ''ZwergSpitz'' &new{2006-03-07 (火) 01:38:13};
-1.5倍 == 75KB でしょうか? -- ''ZwergSpitz'' &new{2006-03-07 (火) 01:51:05};
-1.5倍 == 75KB でしょうか? -- ''ZwergSpitz'' &new{2006-03-07 (火) 01:51:14};
//なんかまーた例のspamです。緊急削除
-時間が出来たので、ASKAを弄ってみようと思い来てみましたが、ソースとバイナリのリンクが切れているようです。他に何処かに配布してますか? -- ''ZwergSpitz'' &new{2006-05-27 (土) 00:19:57};
-時間が出来たので、ASKAを弄ってみようと思い来てみましたが、ソースとバイナリのリンクが切れているようです。他に何処かに配布してますか? -- ''ZwergSpitz'' &new{2006-05-27 (土) 00:20:03};

#comment












----
-おきまりの突っ込み:ASKSってなんですか? -- [[K]] SIZE(10){2003-07-26 (土) 00:45:31}
-っていうかASKAをCで書き直したい・・・。そしたら小さくなりそうだし。でも当分できそうにない・・・。実はNASKの最適化ルーチンはそのままASKAでも使えるように準備してあったりするのです。これが報われるのはいつになることやら。 -- [[K]] SIZE(10){2003-07-26 (土) 00:46:40}
----


***'''2003/08/02 08:10''' 以下に書かれていた移植までの記録を、[[ASKAをLinuxに移植してみた記録]]に移しました。

« Prev[4]  Next »[5]