[リストへもどる] [返信 ]  [新着記事] [最新50] [ワード検索] [過去ログ]

記事閲覧・返信


タイトル ClpPst.def DOSVAXJ3対応 10/10版
投稿日: 2024/10/10(木) 23:17
投稿者konno
 番 号 11537       コメント数 2

ClpPst.def DOSVAXJ3対応 10/10版です。
クリップボードへのコピー、ペーストに仮対応しました。

  ClpPst.def v05e4 24-10-10 new!
・寅次氏作のクリップボードマクロの改造版。DOSVAXJ3に仮対応。あまりテストしてません。
・DOSVAXJ3は INT2F のFコール使用、それ以外は 従来どおりCLPPST.EXE 使用します。
・INT2F 使用時は、コピー64k以内、ペーストBL(8192)以内の制限があります。
・VZ1.6用 オリジナルVZでも動くと思います。

※ DOSVAXJ3以外で INT2F モードを試す時は、★印の行2か所をコメントにします。

#txt:ClpPst.def

INT2F 使用時は、コピー64k以内、ペーストBL(8192)以内の制限があります。
特にペーストは私の脳力不足でラインバッファ使用が精いっぱいでした。(;_;)
以下にペーストのソースを張りますのでどなたか64k対応とかお願いします。m(__)m

=== paste.def ===
*m
62 ^V "ペースト"
?.
; &02 ;------------------------------------- ;機種チェック #05e
; (c<2)?>A ;★ DOSVAXJ3以外なら >a
&s &04 #^ #< #b #_ #> ux[+, ;CLPPST.TMP open
:b #y (mb)?>b ux], d-, ;内容をクリア
ax$1701, &i($2F) ;Open Clipboard
ax$1704, dx+, &i($2F) ;GET Clipboard DATA SIZE
&m(" ax:%x dx:%x ",ax,dx)
(dx)?{ #C (s)? 'n' &m("%x:%d buf over!",dx,cx) .} ;65535 over!
cx=ax, &s
(cx>=bl)?{ #C (s)? 'n' &m("%d buf over!",cx) .} ;bl 8192 over!
&m(" ax:%x dx:%x ",ax,dx)
(ax>4096 && d==0)?{&s (4096){" "} #] &d #b #^ #k ax=ax-4096, d+, } ;4096埋める
&s
:d &m(" ax:%x ",ax)
(ax<0 && d>0)?{#p ax=ax-4096, >d } ;4096分スペースで埋める
(ax>4096 && d>0)?{#p ax=ax-4096, >d } ;4096分スペースで埋める
:e (ax)?{ &?(" ") ax--, >e } ;残り分スペースで埋める
&m(" ax:%x ",ax)
#^ #< #28 bx=cp,
ax$1705, dx+, si-, di=gz, ;8ec7 mov es,di ;Set Clipboard Data
&i("$(8E,C7,CD,2F,C3)") ;cd2f int 2fh ;Set Clipboard Data
ax$1708, &i($2F) ;c3 ret ;Close Clipboard
#] &d #^ #<
ps[=pa, #F &o(0) #m #c ps], (r)?>K ;ヌルがあれば検索
#b #_ #> ux[+, #y ux], ;ヌル以降削除
(mb)?#b
:K #_ #> #b #^ #< #k
#C (s)? 'y' ;クローズ
#i &d &m("INT2F: ClipBoard >> Text!")
.

02: c-, ;--- int2f frag check ---
ax=$1700, &i($2F) ;IDENTIFY WinOldAp VERSIO
( ax == $1700 )??c++, ; WinOldAp サポートなら c+1
ax=$7476,bx=$0000,cx=$6F64, ;VTDOS:0 MSP:1 DOSVAXJ3:7476
&i($2F) ;VTDOS check $7476なら DOSVAXJ3
( ax == $7476 )? c=c+2, ;DOSVAXJ3なら c+2
; &m("7476 ax:%x c:%d",ax,c) ;ax=7476 なら未サポート

04: a-, mx[+, sn[-, #O &?("%sCLPPST.TMP",pi) #m ;--- CLPPST.TMP ---
(s)?{ #[ #[ a+, } sn], mx],
(a)?{ &m("クリップボードがカラかテキスト以外です") &d . }

*
; a,b,c,d,f,p 使用
;8ec7 mov ES,BX
;cd2f int 2Fh
;c3 ret

追記 
DOSVAXJ3は新版がまだ正式公開されていませんでした。
旧版用に ★★印の cx+, を活かしてあります。
メールでいただいたテスト版のURLを張り付けておきます。

>  1 バイト欠けですが、修正してみました。
>  下記よりテスト版をダウンロードしてください。64bit 版です。
> https://www.nanshiki.co.jp/test/dosboxj_test.zip

   - No.11537 一括表示へ   -        pre


- 関連一覧ツリー (先頭の番号をクリックするとツリー全体を一括表示します)
11537.ClpPst.def DOSVAXJ3対応 10/10版 - konno konno 24/10/10-23:17
 ┣11539.ClpPst.def DOSVAXJ3対応 10/11版 - konno 24/10/11-23:53
 ┃┗11540.Re: ClpPst.def DOSVAXJ3対応 10/11版 - shadow 24/10/15-08:28
 ┃ ┗11541.Re^2: ClpPst.def DOSVAXJ3対応 10/11版 - konno 24/10/15-15:52
 ┃  ┣11542.ClpPst.def DOSVAXJ3対応 10/15版 - konno 24/10/15-17:27
 ┃  ┃┗11544.Re: ClpPst.def DOSVAXJ3対応 10/15版 - shadow 24/10/16-08:23
 ┃  ┃ ┗11545.Re^2: ClpPst.def DOSVAXJ3対応 10/15版 - konno 24/10/16-16:27
 ┃  ┗11543.Re^3: ClpPst.def DOSVAXJ3対応 10/11版 - shadow 24/10/15-19:08
 ┗11546.ClpPst.def v05e7 24-10-17版 - konno 24/10/17-20:09
  ┗11547.Re: ClpPst.def v05e7 24-10-17版 - shadow 24/10/18-08:37
   ┗11548.Re^2: ClpPst.def v05e7 24-10-17版 - konno 24/10/18-14:24
    ┗11550.Re^3: ClpPst.def v05e7 24-10-17版 - shadow 24/10/18-18:50
     ┣11552.Re^4: ClpPst.def v05e7 24-10-17版 - konno 24/10/18-23:03
     ┗11554.Re^4: ClpPst.def v05e7 24-10-17版 - shadow 24/10/19-11:07
      ┗11557.Re^5: ClpPst.def v05e7 24-10-17版 - konno 24/10/19-16:18
       ┗11560.Re^6: ClpPst.def v05e7 24-10-17版 - shadow 24/10/19-19:39
        ┗11561.Re^7: ClpPst.def v05e7 24-10-17版 - konno 24/10/21-00:16

- - 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)[引用無し]
おなまえ 
Eメール 
タイトル 
メッセージ auto soft pre(図表 ※折り返しません)
 参照先 
 暗証キー (英数字で8文字以内)
 プレビュー          

- 以下のフォームから自分の投稿記事を修正・削除することができます -
   処理   記事No   暗証キー
    [ページトップへ] [管理用]