misc/include/doswork.equ- Source code ソースコード - XEiJ - STUDIO KAMADA
misc/include/doswork.equ

    	.nlist
      .ifndef __doswork_equ__
    __doswork_equ__	equ	1

    ;----------------------------------------------------------------
    ;
    ;	DOSワークエリア
    ;
    ;----------------------------------------------------------------

    DOS_MEMORY_LIMIT	equ	$1C00		;.l _MALLOCできるメモリ空間の末尾アドレス+1
    DOS_MEMORY_START	equ	$1C04		;.l _MALLOCできるメモリ空間の先頭アドレス[[302]$00008372]
    DOS_CALL_LEVEL		equ	$1C08		;.w DOSコールのレベル(ここから_INDOSFLG)
    DOS_CALL_NUMBER		equ	$1C0A		;.b レベル0で入ったDOSコール番号
    DOS_NEWFAT_MODE		equ	$1C0B		;.b newfatのモード(0または2)[0]
    DOS_RETRY_COUNT		equ	$1C0C		;.w リトライ回数[3]
    DOS_RETRY_INTERVAL	equ	$1C0E		;.w リトライ待ち時間[100]
    DOS_VERIFY_MODE		equ	$1C10		;.w verifyのモード(0=off,1=on)[0]
    DOS_BREAK_MODE		equ	$1C12		;.b breakのモード(0=off,1=on,2=kill)[2]
    DOS_CTRL_P_MODE		equ	$1C13		;.b CTRL+Pのモード(0=off,-1=on)[0]
    DOS_CHANGE_PR_PENDING	equ	$1C14		;.b DOSコール終了時にスレッドを切り替えるか(0=no,1=yes)[0]
    DOS_CURRENT_DRIVE	equ	$1C15		;.b カレントドライブ番号(0=A:)
    DOS_TRAP_11_FLAG	equ	$1C16		;.b TRAP#11(BREAK)処理フラグ(処理中|------|BREAK(CTRL+C)/SHIFT+BREAK(CTRL+S))[0]
    DOS_TRAP_10_FLAG	equ	$1C17		;.b TRAP#10発生フラグ(0=off,1=on)
    DOS_TRAP_10_D0		equ	$1C18		;.l TRAP#10に渡されたD0.L
    DOS_LAST_DEVICE_HEAD	equ	$1C1C		;.l 最後のデバイスドライバのデバイスヘッダ
    DOS_HUMAN_MEMORY	equ	$1C20		;.l Humanのメモリ管理テーブルの先頭アドレス[[302]$00008372]
    DOS_FREE_AREA		equ	$1C24		;.l 空きエリアの先頭アドレス
    DOS_PROCESS_HANDLE	equ	$1C28		;.l:実行中のプロセスのメモリ管理テーブルのハンドル[[302]$00013D0A]
    DOS_HANDLER_FCB_START	equ	$1C2C		;.l ハンドラFCB変換テーブルの先頭(1個2バイト)[0]
    DOS_FCB_START		equ	$1C30		;.l FCBテーブルの先頭(1個96バイト)[0]
    DOS_BUFFER_START	equ	$1C34		;.l buffersのバッファを初期化する直前の空きエリアの先頭アドレス
    DOS_DRIVE_START		equ	$1C38		;.l ドライブ管理テーブルの先頭アドレス
    DOS_INNER_DPB_START	equ	$1C3C		;.l 内部DPBテーブルの先頭アドレス
    DOS_SHARE_START		equ	$1C40		;.l share管理領域の先頭アドレス
    DOS_COMMON_START	equ	$1C44		;.l common管理領域の先頭アドレス
    DOS_COMMON_USED		equ	$1C48		;.l common管理領域の使用している末尾のアドレス+1
    DOS_COMMON_END		equ	$1C4C		;.l common管理領域の末尾のアドレス+1
    DOS_MAIN_THREAD		equ	$1C50		;.l メインスレッドのスレッド管理テーブルの先頭アドレス
    DOS_CURRENT_THREAD	equ	$1C54		;.l 現在のスレッドのスレッド管理テーブルの先頭アドレス
    DOS_MAX_THREADS_1	equ	$1C58		;.w processのスレッド数-1
    DOS_CURRENT_THREADS_1	equ	$1C5A		;.w 現在動作中のスレッド数-1
    DOS_LEVEL_0_SSP		equ	$1C5C		;.l DOSコールにレベル0で入ったときのSSP。$0000:D1-D7/A0-A6,$0038:SR,$003A:PC
    DOS_ABORT_SR		equ	$1C60		;.w アボート時のSR
    DOS_ABORT_SSP		equ	$1C62		;.l アボート時のSSP
    DOS_PREV_TRAP_11	equ	$1C66		;.l 元のTRAP#11ベクタ
    DOS_PREV_TRAP_10	equ	$1C6A		;.l 元のTRAP#10ベクタ
    DOS_FILES_MAX_2		equ	$1C6E		;.w filesのファイル数+2
    DOS_BUFFERS_SIZE	equ	$1C70		;.w buffersのバッファ容量[$0400]
    DOS_BUFFERS_COUNT	equ	$1C72		;.b buffersのバッファ数
    DOS_LASTDRIVE_NUMBER	equ	$1C73		;.b lastdriveのドライブ番号(0=A:)
    DOS_DRIVES_MAX_1	equ	$1C74		;.b ドライブ管理テーブルの個数-1[$19]
    DOS_LAST_DRIVE		equ	$1C75		;.b 組み込まれた最後のドライブの内部ドライブ番号(0=A:)
    DOS_SHARE_FILES		equ	$1C76		;.w shareのファイル数
    DOS_SHARE_LOCKS		equ	$1C78		;.w shareのロック数
    DOS_SHARE_SIZE		equ	$1C7A		;.l share管理領域の1個のサイズ(ロック数*12+92)
    DOS_TO_INNER_DRIVE	equ	$1C7E		;.b[26] ドライブ番号→内部ドライブ番号変換テーブル
    DOS_ACTIVE_FCB		equ	$1C98		;.l DOSコールに入ってからオープンしたFCBテーブル
    DOS_ACTIVE_HANDLER	equ	$1C9C		;.l DOSコールに入ってからオープンしたハンドラ番号
    DOS_EXEC_STATUS		equ	$1CA0		;.b _EXECの状態(-1=アロケート中,-2=ファイルロード中,-3=プロセス管理テーブル設定中)
    DOS_EXEC_MODULE		equ	$1CA1		;.b _EXECで起動するモジュール番号
    DOS_CON_INS_MODE	equ	$1CA2		;.b CONのINSモード(0=上書き,-1=挿入)
    DOS_DEVICE_ERROR_FLAG	equ	$1CA3		;.b デバイスエラー表示中フラグ(0=表示中,-1=表示中ではない)
    DOS_STDIN_POINTER	equ	$1CA4		;.l 標準入力バッファの読み出し位置
    DOS_STDIN_REMAINING	equ	$1CA8		;.w 標準入力バッファの残りバイト数
    DOS_EXEC_MEMORY		equ	$1CAA		;.l _EXECで起動するプロセスのメモリ管理テーブル
    DOS_EXIT_CODE		equ	$1CAE		;.l _EXIT,_KEEPPR,_EXIT2の終了コード(上位ワードは0=非常駐,1=常駐)
    DOS_EXEC_FILE_NAME	equ	$1CB2		;.l _EXECで起動するファイル名
    DOS_CLOCK_DEVICE	equ	$1CB6		;.l CLOCKデバイスヘッダ
    DOS_FFLUSH_MODE		equ	$1CBA		;.b fflushのモード(0=off,1=on)
    DOS_CTRL_C_CODE		equ	$1CBC		;.w CTRL+Cのコード(通常は$0003,off=cのとき$0103)
    DOS_CTRL_N_CODE		equ	$1CBE		;.w CTRL+Nのコード(通常は$000E,off=nのとき$010E)
    DOS_CTRL_P_CODE		equ	$1CC0		;.w CTRL+Pのコード(通常は$0010,off=pのとき$0110)
    DOS_CTRL_Q_CODE		equ	$1CC2		;.w CTRL+Qのコード(通常は$0011,off=qのとき$0111)
    DOS_CTRL_S_CODE		equ	$1CC4		;.w CTRL+Sのコード(通常は$0013,off=sのとき$0113)

      .endif  ;__doswork_equ__
    	.list

STUDIO KAMADA
Copyright © 1999-2026 Makoto Kamada