PCですぐ動かして試せるように、80x86版のサンプルを作成してみますた。VS2005で動作。
スイッチング関数はこれ。__declspec( naked ) で __fastcall な関数としてインラインアセンブラで記述。個人的に勝手がよくわからないCPUだが、Wikipediaの「呼出規約」の項がかなりまとまってて助かった、、
しかし、手元に8086のアセンブリプログラミングの本しかないのでよくわからんのですが、このスイッチング関数みたく、スタックポインタの指し先をいきなりデータ領域に切り替えちゃうのはセグメント的に何か問題無いんだろうか…?(汗
Google Page Creator
はっきり言ってテラ使イニクス;
でもタダというのは何者にも代えがたい(ヲイ
ので適応してみるテスト。IE6使用。
作業の流れ
- Gmailアカウントでログインする (→Site Managerが開き、サイト内のページが一覧表示される)
- Site Managerで編集したいページをクリックして選ぶ (→Edit Pageでそのページが開く)
- Edit Pageでページを編集し(このときのWYSIYGっぷりがウリらしい)、気が済んだら[Publish]ボタンを押す (→公開される)
[Publish]ボタンを押さずにSite Managerに戻ったりログアウトしても良い(公開されないだけで、作業中のデータは失われない)。
ページの新規作成もSite Managerから行う。
落とし穴
1. ページのファイル名(URLの一部)は、ページの新規作成時に決まってしまう(一度きりしか指定できない)
Site Manager左上の「Create a new page... 」をクリックするとページタイトルの入力フォームが現れるんですが、ここに入れた名前がそのページのファイル名になってしまう。このファイル名のリネーム機能は無く、一旦決まったファイル名を変更するには、新規ページを正しいタイトルで生成した後、元ページ内容を新規ページにコピペするしかない。だがしかし…!
2. ページ内容のコピペは、ページ内の小区画ごとにしかできない
Edit Pageにおいて、ページはタイトル、サブタイトル、サイドバー*1、メインコンテンツ、フッタに分かれている。これらを全て選択して一括コピペできるかというとできなくて、「XをクリックしてCtrl-Aで選択、コピーして、Site Managerに戻り、コピー先ページを開き、コピー先ページのXにペースト」というのを繰り返す必要がある。しかもそのとき…
3. 複数ページを同時に開いて編集できない
ガビーソ!
4. 「ページの複製」機能は実質使えない
ガビーソ!2!! いや正確に言うと、複製はしてくれるんですが、ファイル名が「複製元ファイル名 連番」に決め打ちになってしまって変更できなかったりする。
6. リンク先のみの変更では、[Publish]ボタンが機能しない
…ようだ。リンク切れを発見したので直してみたらそうだった。
まあ、以上の点に注意すれば使えないわけでは無いデス。間違ったときの収拾がえらく大変、というだけで、ページ作るのは楽ちん。
あと、Site Managerの右に「Site Settings」というメニューがあって、クリックすると[Enable experimental features]ボタンが現れるのだが押したら「危険かもしれませんがいいですね?」的な意味の承諾を迫られたので現在のところ試してない。
*1:レイアウトの選択によっては無いこともある