> きっちり再描画できてうれしいです。
実現できて私が一番嬉しいです。(^_^)
以前は気にならなかったのに、気にし出したら夜も眠れず昼寝して・・φ(..; バキッ\(--;
> ところで後学のため#11611のソースの変更箇所を教えてください。
コメントのある行を丸ごと追加しています。解説はコメントの内容でわかりますよね。
あとは MS-DOS Player の判定を main.asm でやっていますが、これが無くても問題ないですね。
仮に問題が出たとしても画面表示がおかしくなるだけなので、その場合は使用中止すればいいし。
DOSエミュ3種で動かすぶんには問題ないと思います。
他の環境で使う場合は、v.com などで VRAMアドレスを確認すれば安心です。
ということで、他のVZに移植するなら scrnibm.asm のこの個所だけ追加すればいいですね。
MS-DOS Player の判定部分はコメントにするか削除します。
scrnibm.asm 1483行あたり
getscrn proc
pushm <ds,es>
mov es,ax
mov ds,dsp.@seg
push ax ; ##k 241101 MS-DOS Player
mov ax,ds ; ds は
cmp ax,0f800h ; VRAM F800h か?
jnz mpmod0 ; 違うならJUMP
; cmp cs:os_win,7 ; MS-DOS Playerか?
; jnz mpmod0 ; 違うならJUMP
mov ax,0b800h ; CGA VRAM にすり替え 'ク^@ク' b8h (00h b8h)
push ax ; 'P' 50h
pop ds ; ds:si(ソース) --> es:di
mpmod0: pop ax ;
IFNDEF IBM
cpyscrn:
これでOKです。mpmod は mpmod0 に変更しました。