AmigaOS確かOSのほうで、Intuiton(AmigaのWindowシステム)ではなかったと思うが、最初にa4レジスタ(68000マシンだから)にベースアドレスを設定するcallを行った後は、すべてa4に対するオフセットとしてシステムコールを呼ぶというような仕組みだったと思った。(確かa4〜a6はシステムコール内で保存するということと、a5とa6はメタコムコのBCPL(AmigaOSの記述言語はなぜかBCPL)がスタックポインタ(a7だったかな?)とフレームポインタに使うってのが理由でa4だったような気がするが書いているうちにa7をスタックポインタとして利用していたような気がしてきたから、もしかしたら1個ずれてるかも)というのを、JNIをいじってて思い出したといっても、今だけど。AmigaOS(Intuitionのほうかも)は、最初からマルチタスクシステムとしてできていたような気がする。コンテキスト(この場合はプロセス)を同時に複数共存させるには、それぞれを異なる位置に配置しなければならないし、そのためにはそのコンテキストのポインタとオフセットという形でアクセスできるように用意しておくということだ。#何を最初に考えていたか思い出しているうちに忘れてしまった。12:01)68000がスタック用に使うのはa7です。incrementでもword単位で行われるという。worldで、DA用のa4だったようなおぼろげな記憶。21:53)そう思い出した。move.lとか長さが決められるオペランドで(a7)+みたいに書くような(全然、思い出してないや)。アプリと同時に使えるツール類。01:08)あ、なるほど。palmにDAってのがあるけどあれと同じなんだ。