2008-02-07から1日間の記事一覧

同じ文字列の最適化パッチ

これは2008年2月7日19時48分現在公開されているOpenHSP ver.3.2beta1 に対するパッチです。 OpenHSP ver.3.2beta1 のライセンスは以下の通りです。 OpenHSP Copyright (C) 1997-2008, Onion Software/onitama, all rights reserved. This software is provid…

同じ文字列の最適化できた

ただの線形検索だからコンパイル遅くなっちゃうかな?と思ったけれど、体感的にはあまり変わった気がしない。 ソースはOpenHSPのライセンスとか確認した後ほどにでも公開したいと思います。 まあそこそこ大きいソースかな?と思うHDLで#cmpopt optinfo 1をつ…

OpenHSPのhspcmpをコンパイルしてみた

OpenHSPのソースこそ読んでいるものの、一度もコンパイルしていないことに気づいたのでhspcmpをVC++でコンパイルしてみた。 warningこそそれなりに出るけど何のエラーもなくコンパイルできた。 ほんと、vcprojをダブルクリックして開いてメニューからビルド…

スタイルをFuji Diablogでも使っているのにしてみたけど

これはない>< 見にくいったら仕方がない。このスタイルは汎用的でないことが判明した。 すぐに戻した

同じ日付の新しい書き込みの方向の設定

編集設定にあった。これで、新しい記事が上に来るみたい。 でも、今までのはそのままだから直さないと><直したよで、なんでデフォルト上じゃないの?

OpenHSP が少しずつ読めるようになってきた

同じ文字列の最適化は CToken::PutDS で追加したデータのオフセットとサイズを記憶して、追加するたびに既に同じ内容を登録していないか確認する、っていうのでいけそうだねー。 まあでも、ただの線形検索じゃ間違いなく重いだろうけど。

HSPのオブジェクトファイルを編集してみる。(hello ello llo)

HSP

mes "hello" mes "ello" mes "llo"このスクリプトに相当するaxファイルも短くできます。 48 53 50 33 01 03 00 00 00 00 00 00 90 00 00 00 60 00 00 00 24 00 00 00 84 00 00 00 06 00 00 00 8a 00 00 00 04 00 00 00 8e 00 00 00 02 00 00 00 90 00 00 00 …

vartype

HSP

#module hoge x #global *huga a = *huga mes vartype(a) // label -> 1 a = "" mes vartype(a) // str -> 2 a = 0.0 mes vartype(a) // double -> 3 a = 0 mes vartype(a) // int -> 4 newmod a, hoge mes vartype(a) // struct -> 5 newcom a, "{00021401-…

関数の再定義っぽい?

HSP

#module #deffunc func mes "original func" return #global #module #deffunc changed_func func mes "changed func" return #global #undef func #define global func changed_func func