X68k/FEFUNC

From Data Crystal
Revision as of 02:06, 19 December 2011 by Kagemusha (talk | contribs)
Jump to navigation Jump to search
	- IOCS WORK MANUAL -

==============================================================================

・IOCSワーク一覧(ROM IOCS version 1.00)

address	size
$800	16.b	キーの押し下げ状態
$810	 1.b	キーボード LED の点灯状態
$811	 1.b	シフトキー押し下げ状態
$812	 1.w	キーバッファデータバイト数
$814	 1.l	〃	    書き込みポインタ
$818	 1.l	〃	    読み込みポインタ
$81c	64.w	キーバッファ

$89c	 1.w	RS-232C 受信バッファデータバイト数
$89e	 1.l	〃	〃	    書き込みポインタ
$8a2	 1.l	〃	〃	    読み込みポインタ
$8a6	64.w	〃	受信バッファ
$926	 1.w	〃	通信モード
$928	 1.b	〃	 SI/SO   状態 0:SO   1:SI (bit0:受信 bit1:送信)
$929	 1.b	〃	XON/XOFF 状態 0:XOFF 1:XON(〃)

$92a	 1.w	マウスデータ受信カウンタ
$92c	 1.l	〃	    受信バッファ書き込みポインタ
$930	 3.b	〃	    受信バッファ
$933	 1.b	現在の MSCTRL 端子の状態
$934	 1.l	マウス受信データ処理アドレス(ソフトキーボード)
$948	 1.l	〃			    (マウスカーソル)
$93c	 1.b	CRT モード

$93d	 1.b	グラフィック画面のページ数
$93e	 1.l	テキスト1ラインのバイト数
$942	 1.w	テキスト操作対象ページ番号
$944	 1.l	〃		プレーンの先頭アドレス
$948	 1.l	テキスト表示開始アドレスオフセット
$94c	 1.l	ソフトキーボード描画プレーンの先頭アドレス(X68000 only)
$950	 1.w	〃		表示X座標
$952	 1.w	〃		    Y
$954	 1.w	テキストクリッピング範囲(X最小値)
$956	 1.w	〃			(Y最小値)
$958	 1.w	〃			(X最大値+1)
$95a	 1.w	〃			(Y最大値+1)
$95c	 1.l	グラフィック操作対象ページの先頭アドレス
$960	 1.l	〃	    1ラインのバイト数
$964	 1.w	〃	    画面の色数-1(0なら使用不可)
$966	 1.w	〃	    描画カラーコード
$968	 1.w	〃	    クリッピング範囲(X最小値)
$96a	 1.w	〃			    (Y最小値)
$96c	 1.w	〃			    (X最大値)
$96e	 1.w	〃			    (Y最大値)

$970	 1.w	テキスト桁数-1
$972	 1.w	〃	行数-1
$974	 1.w	カーソルX座標
$976	 1.w	〃	Y座標
$978	 1.l	BEEP 音 PCM データアドレス
$97c	 1.w	〃	    データ長
$97e	 1.l	拡張ESCシーケンス処理アドレス
$982	 1.l	ESC シーケンスバッファ書き込みポインタ
$986	10.b	ESC シーケンスバッファ(ESC の次から)
$990	 1.b	2バイト文字の1バイト目
$991	 1.b	カーソル表示状態(0:消灯 !0:点灯)
$992	 1.b	カーソル点滅スイッチ(0:off !0:on)
$993	 1.b	アプリケーション用カーソル点滅スイッチ(0:on !0:off)
$994	 1.b	テキスト表示色
$995	 1.b	〃	      保存バッファ
$996	 1.l	カーソル座標保存バッファ

$99a	 1.1	外字グループ0のフォントアドレス
$99e	 1.l	〃	    1〃
$9a2	 1.l	〃	    2〃
$9a6	 1.l	〃	    3〃
$9aa	 1.l	〃	    4〃
$9ae	 1.l	〃	    5〃

$9b2	 1.w	マウスデータ受信タイマ初期値
$9b4	 1.w	〃		タイマカウンタ
$9b6	 1.l	〃		処理アドレス
$9ba	 1.w	カーソル点滅	タイマ初期値
$9bc	 1.w	〃		タイマカウンタ
$9be	 1.l	〃		処理アドレス
$9c2	 1.w	FDモータ停止	タイマ初期値
$9c4	 1.w	〃		タイマカウンタ
$9c6	 1.l	〃		処理アドレス
$9ca	 1.w	アラーム電源オフタイマ初期値
$9cc	 1.w	〃		タイマカウンタ
$9ce	 1.l	〃		処理アドレス

$9d2	 1.l	電源オフまでの時間
$9d6	 1.l	稼働時間(1分単位)
$9da	 1.b	OPM レジスタ $1b の設定値
$9db	 1.b	未使用
$9dc	 1.b	グラフィック画面使用モード
$9dd	 1.b	テキスト    〃
$9de	 1.b	ROM デバッガ起動スイッチ(0:off !0:on)
$9df	 1.b	起動方法
$9e0	 1.b	起動ユニット番号(PDA)

$9e1	 1.b	FDドライブの状態(bit 7=1:アクセス中 bit 6=1:モータon)
		%10...	アクセス中、モータ on
		%01...	アクセス終了、モータ on(Timer-C 割り込みで off にする)
		%00...	アクセス終了、モータ off
$9e2	 1.b	FDC LEDCTRL/EJECTMASK の設定
$9e6	 4.w	〃  ドライブステータス/ディスク交換フラグ
$9ee	10.b	〃  コマンド生成用バッファ
$9f8	 6.b	SASI コマンド生成用バッファ
$9fe	16.b	〃   容量フラグ
$a0e	 1.w	実行中のIOCSコール番号(-1なら実行していない)

$a10	 1.b	プリンタアボートフラグ
$a11	 1.b	〃	漢字モードフラグ(0:英数字 !0:漢字)
$a12	 1.b	〃	2バイト文字の1バイト目
$a13	 1.b	現在までの印刷行数
$a14	 1.w	〃	  印刷桁数
$a16	98.b	プリンタパラメータ
$a78	 1.b	1頁の行数-1
$a79	 1.b	1行の桁数-1

$a7a	 1.l	ソフトキーボード表示プレーン開始アドレス(プレーン3)
$a7e	 1.l	〃					(プレーン2)
$a82	 1.w	マウスカーソル描画時の垂直同期検査フラグ(0:off !0:on)
$a84	 1.w	ドラッグと見なす最小移動量-1
$a86	 1.w	マウスカーソルのアニメーション速度
$a88	 1.w	不明($0000)
$a8a	 1.w	不明($00f6)
$a8c	 1.w	マウスカーソルが表示可能なカラム開始位置(0)
$a8e	 1.w	〃			  ライン開始位置(0)
$a90	 1.w	〃			  カラム終了位置(128)
$a92	 1.w	〃			  ライン終了位置(1008)
$a94	 1.w	不明(1024)
$a96	 1.w	不明(1008)
$a98	 1.w	テキスト1ラインのバイト数
$a9a	 1.w	マウスカーソル移動範囲(X最小値)
$a9c	 1.w	〃		      (Y最小値)
$a9e	 1.w	〃		      (X最大値)
$aa0	 1.w	〃		      (Y最大値)
$aa2	 1.b	マウスカーソル表示スイッチ(0:消去 !0:表示)
$aa3	 1.b	未使用
$aa4	 7.l	パターンデータ本体へのポインタ(6+1個分)
$ac0	 1.w	マウスカーソルアニメーションの表示番号
$ac2	 1.w	〃			      速度カウンタ
$ac4	 1.w	マウスカーソルのアニメーションフラグ(-1:アニメーションする)
$ac6	 1.w	マウス左ボタンの状態(0:押していない -1:押している)
$ac8	 1.w	〃    右ボタン〃
$aca	 1.w	マウスX方向移動量
$acc	 1.w	〃    Y方向〃
$ace	 1.w	マウスカーソルX座標
$ad0	 1.w	〃	      Y座標
$ad2	 1.w	〃	      X座標保存バッファ
$ad4	 1.w	〃	      Y座標〃
$ad6	 1.w	ホットスポットX座標
$ad8	 1.w	〃	      Y座標
$ada	 1.w	マウスカーソル表示開始カラム
$adc	 1.w	〃		      ライン
$ade	 1.w	マウス IOCS コール処理フラグ(-1:処理中)
$ae4	 6.w	〃	    レジスタ一時保存バッファ
$af0	64.b	テキスト保存バッファ(プレーン2)
$b30	64.b	〃		    (プレーン3)
$b70	16.l	マウスカーソルのパターンデータへのポインタ
$bb0	 1.w	ソフトキーボードX座標
$bb2	 1.w	〃		Y座標
$bb4	 1.w	ドラッグ開始時のX座標
$bb6	 1.w	〃		Y座標
$bb8	 1.w	ソフトキーボード上で押しているキーのキーコード
$bba	 1.l	〃				    キーデータアドレス
$bbe	 1.b	前回処理時のマウスステータス(ボタンの状態)
$bbf	 1.b	マウス受信データ処理フラグ(bit7=1:マウス受信データ処理中
					   bit0=1:ソフトキーボード表示中)
$bc0	 1.b	ソフトキーボードのキー入力リピートカウンタ
$bc1	 1.b	ソフトキーボード制御モード
$bc2	 1.b	マウスカーソル/ソフトキーボード表示状態
$bc3	 1.b	ソフトキーボードのキー押し下げフラグ(0:押していない 1:押している)
$bc4	 1.b	ソフトキーボード処理フラグ(-1:処理中)
$bc5	 1.b	特殊キー処理フラグ(bit0~3:trap #10~13に対応)

$bc6	 1.b	電卓表示フラグ(0:消去 1:表示)
$bc7	 1.b	〃  基数(0:10進数 1:16進数)
$bc8	 1.b	〃  加減乗除(1:+ 2:- 3:* 4:/)
$bc9	 1.b	〃  小数点フラグ(0:整数 1:小数)
$bca	 1.w	〃  出力カウンタ
$bcc	 1.l	〃  出力読み込みポインタ
$bd0	22.w	〃  出力バッファ
$bfc	 1.w	〃  X座標
$bfe	 1.w	〃  Y座標
$c00	 2.l	〃  記憶数値(浮動小数点数値)
$c08	 2.l	〃  計算結果(〃)
$c10	 2.l	〃  作業用  (〃)
$c18	 1.w	〃  入力桁数
$c1a	 1.b	〃  エラー発生フラグ(0:正常 1:エラー)
$c1b	16.b	〃  数字文字列バッファ
$c2b	 6.b	〃  基数〃
$c31	 1.b	未使用

$c32	 1.b	ADPCM 再生/録音モード(bit8=1:分割転送モード)
$c33	 1.b	〃    DMA 転送エラーステータス
$c34	 1.b	DMA チャンネル2転送モード
$c35	 1.b	〃		エラーステータス

$c36	16.b	6*12フォント収得用バッファ
$c46	72.b	フォント作成用バッファ
$c8e	 1.b	未使用

$c8f	 1.b	FDD リザルト受信フラグ
$c90	 8.b	FD0 リザルトステータス受信バッファ
$c98	 8.b	FD1 〃
$ca0	 8.b	FD2 〃
$ca8	 8.b	FD3 〃

$cb0	 1.b	未使用
$cb1	 3.b	マウス受信データ(3バイト揃った後に転送)
$cb4	 1.b	SASI-HD 接続台数
$cb5	 1.b	RS-232C 受信データマスク(ビット長だけ下位ビットが1になる)

==============================================================================

・IOCSワーク一覧(ROM IOCS version 1.10 以降)

$cb6	 1.b	システムポート MPU種類(0:68000 1:68010 2:68020 3:68030 4:68040)
$cb7	 1.b	〃	       MPUクロック(0:10 1:16 2:20 3:25 4:33 5:40 6:50 MHz単位)
$cb8	 1.w	ROMウェイトループ回数(dbra空ループで1msの回数)
$cba	 1.w	RAM〃

==============================================================================

・IOCSワーク一覧(ROM IOCS version 1.30 以降)

$cbc	 1.b	MPU 種別(0:68000 1:68010 2:68020 3:68030 4:68040 6:68060)
$cbd	 1.b	FPU 有無(0:無し -1:有り)
$cbe	 1.b	MMU 有無(0:無し -1:有り)
$cbf	 1.b	起動情報(0:電源オン -1:リセット -2:ホットスタート)
$cc0	 1.w	SCSI 転送サイズ
$cc2	 1.b	本体 ID 適合性検査フラグ(-1:検査済み)
$cc3	 1.b	SCSI 未接続フラグ(ID ごとのビットが 1 で使用不可能)

$d00	 1.l	FD 拡張 PDA の定数表アドレス収得処理アドレス
$d04	 1.l	拡張 FDD モータオン処理のアドレス
$d08	 1.w	テキストスクロール方法(0:ラスタコピー -1:ソフトスクロール)
$d0a	 1.w	スムーススクロールモード(0:ジャンプ 4,8,16:スムース)
$d0c	 1.w	カーソル点滅許可スイッチ(0:点滅 -1:表示したまま)
$d0e	 1.w	〃	反転開始ライン×4
$d10	 2.b	〃	反転パターン
$d12	 1.l	BEEP 音処理アドレス(BEEP 音アドレスが -1 の時に有効)
$d16	 1.l	ESC 処理アドレス(^[[ 系のみ、0 なら標準)
$d1a	 1.w	グラフィック描画モード(0:通常 1:反転)
$d1c	 1.w	_TXXLINE/_TXYLINE 長さ減少値

==============================================================================

・SCHDISK(version 1.04)

$cc0	 1.l	IOCS _B_SEEK 処理アドレス保存バッファ
$cc4	 1.l	IOCS _B_VERIFY	〃
$cc8	 1.l	IOCS _B_DSKINI	〃
$ccc	 1.l	IOCS _B_DRVSNS	〃
$cd0	 1.l	IOCS _B_WRITE	〃
$cd4	 1.l	IOCS _B_READ	〃
$cd8	 1.l	IOCS _B_RECALI	〃
$cdc	 1.l	IOCS _B_ASSIGN	〃
$ce0	 1.l	IOCS _B_BADFMT	〃
$ce4	 1.l	IOCS _B_FORMAT	〃
$ce8	 1.l	IOCS _B_EJECT	〃

$cec	 1.b	SCHDISK 組み込み済みフラグ(ID ごとのビットが 1 で組み込み済み)

注意:$cc0~$cc3 は X68030 の ROM では別の用途で使われているが、SCHDISK の持つ
     SCSI IOCS は組み込まれないので問題はない.

=============================================================================