6: 2009-11-17 (火) 12:08:26 |
現: 2024-01-08 (月) 12:58:41 k-tan |
- | * 「ぐいぐい01」の基本ルール | + | TITLE:x |
| + | * 「ぐいぐい01」の基本ルール [#tad58689] |
| -(by [[K]], 2008.08.23) | | -(by [[K]], 2008.08.23) |
- | *** (0) 概要 | + | *** (0) 概要 [#w47ebb9c] |
| -C言語で開発するときは #include <guigui01.h> としてください。 | | -C言語で開発するときは #include <guigui01.h> としてください。 |
| -「ぐいぐい01」はOSASK-HBのAPIなので、仕様変更が比較的頻繁にありえます。 | | -「ぐいぐい01」はOSASK-HBのAPIなので、仕様変更が比較的頻繁にありえます。 |
- | *** (1) C言語版関数名について | + | *** (1) C言語版関数名について [#za929c49] |
| -g01_で始まる関数名がついているものは、基本的に[[K]]が一応は設計に満足しているAPI関数です。したがって当分は仕様変更はないと思われます(もちろんそれを保障するわけではありません、残念ながら)。 | | -g01_で始まる関数名がついているものは、基本的に[[K]]が一応は設計に満足しているAPI関数です。したがって当分は仕様変更はないと思われます(もちろんそれを保障するわけではありません、残念ながら)。 |
| -jg01_で始まる関数名がついているものは、基本的に[[K]]が設計に全く満足していない設計のAPI関数です。これらは設計がいつまでも終わらなくて(もしくは途方にくれて)実装が進まないことにイライラしてめんどくさいからとりあえず実装した関数です。将来の仕様変更はほぼ確実で、このAPIはなくなってしまいます。jはjunkに由来しています。 | | -jg01_で始まる関数名がついているものは、基本的に[[K]]が設計に全く満足していない設計のAPI関数です。これらは設計がいつまでも終わらなくて(もしくは途方にくれて)実装が進まないことにイライラしてめんどくさいからとりあえず実装した関数です。将来の仕様変更はほぼ確実で、このAPIはなくなってしまいます。jはjunkに由来しています。 |
| -アセンブラレベルではjunkなAPIは機能番号0x00ffffffのサブファンクションになっています。 | | -アセンブラレベルではjunkなAPIは機能番号0x00ffffffのサブファンクションになっています。 |
| //-アセンブラレベルではjunkなAPIは機能番号0x03ffffffのサブファンクションになっています。 -- commented_out by K, 2008.11.19 | | //-アセンブラレベルではjunkなAPIは機能番号0x03ffffffのサブファンクションになっています。 -- commented_out by K, 2008.11.19 |
- | *** (2) -lc オプションについて | + | *** (2) -lc オプションについて [#dbd54f49] |
| -efg01で-lcオプション(Lesser Compatible)をつけないと期待通りに動作しないAPIが存在します。主にファイルパスに関するものです。 | | -efg01で-lcオプション(Lesser Compatible)をつけないと期待通りに動作しないAPIが存在します。主にファイルパスに関するものです。 |
| -たとえばファイルパスを(アプリ内で)フルパスで書こうとしたり、..で親に戻ろうとする回数が多すぎると、本来の「ぐいぐい01」ではエラーになります。またコマンドライン上ではどんなファイルも指定できますが、そのパスを入手しようとする行為はすべて「ぐいぐい01」では本来は許されないことです。 | | -たとえばファイルパスを(アプリ内で)フルパスで書こうとしたり、..で親に戻ろうとする回数が多すぎると、本来の「ぐいぐい01」ではエラーになります。またコマンドライン上ではどんなファイルも指定できますが、そのパスを入手しようとする行為はすべて「ぐいぐい01」では本来は許されないことです。 |
| -efg01を使ってアプリを起動する場合は、 >efg01 -lc アプリパス ... と書きます。OSASK-HBなど、「ぐいぐい01」をネイティブでサポートするOSでは、 >-lc アプリパス ... と書きます。 | | -efg01を使ってアプリを起動する場合は、 >efg01 -lc アプリパス ... と書きます。OSASK-HBなど、「ぐいぐい01」をネイティブでサポートするOSでは、 >-lc アプリパス ... と書きます。 |
| -なお、 -lc をつけないと動かないアプリは、原則としては「川合秀実推奨」はつきません。しかし例外として、代替機能を有するアプリが他に無い間は、やむなく推奨することもあります。 | | -なお、 -lc をつけないと動かないアプリは、原則としては「川合秀実推奨」はつきません。しかし例外として、代替機能を有するアプリが他に無い間は、やむなく推奨することもあります。 |
- | *** (3) 仕様変更について | + | *** (3) 仕様変更について [#scc9ccad] |
| -マニュアルのページ群では、仕様変更に伴って当然書き直しされます。しかし書き間違いを除けば原則として上書きはしません。つまり旧仕様も残されます。 | | -マニュアルのページ群では、仕様変更に伴って当然書き直しされます。しかし書き間違いを除けば原則として上書きはしません。つまり旧仕様も残されます。 |
| -その残され方ですが、大規模な変更では、ページ上部に色付きの文字で「これは旧仕様になりました」と明記され、新仕様ページへの誘導リンクがあります。また新ページを作るのが面倒だと思ったときは、旧仕様の内容はコメントアウトしておきます。したがって、旧仕様を確認したいときは、ページだけではなくソースも確認してください。 | | -その残され方ですが、大規模な変更では、ページ上部に色付きの文字で「これは旧仕様になりました」と明記され、新仕様ページへの誘導リンクがあります。また新ページを作るのが面倒だと思ったときは、旧仕様の内容はコメントアウトしておきます。したがって、旧仕様を確認したいときは、ページだけではなくソースも確認してください。 |
| -例外として、目次ページ([[GUIGUI01/man0000]])は誘導でもコメントアウトでもなく、併記します。 | | -例外として、目次ページ([[GUIGUI01/man0000]])は誘導でもコメントアウトでもなく、併記します。 |