強制改行の案、良いですね。気付きませんでした。
でも、
引用:
ElseIf _PromptSys_CurPos.x>=(一行の幅) Then
_PromptSys_CurPos.y=_PromptSys_CurPos.y+1
_PromptSys_CurPos.x=0
End If[/code]
のように、強制改行を入れたら解決になりませんか?
(prompt.sbp 128行から)
重箱の隅をつつくようで恐縮なんですが・・・、途中で、プロンプトウィンドウの大きさを変えられる可能性を考えると、一行の幅で強制改行するのは、ちょっと拙くないですか?
んー、あまり改善してないかもしれませんが、どうせ255Byteを超えるような一行は最大窓にしても全部は見えないわけですから、255Byteを越えた時点で強制改行したほうが良い気がしますが、いかがでしょうか?
コード:
If buf[i2]=13 and buf[i2+1]=10 Then '\r\n
i2=i2+2
_PromptSys_CurPos.y=_PromptSys_CurPos.y+1
_PromptSys_CurPos.x=0
Continue
ElseIf _PromptSys_CurPos.x>=255 Then
_PromptSys_CurPos.y=_PromptSys_CurPos.y+1
_PromptSys_CurPos.x=0
End If
もしかして(一行の幅)=バッファの最大数でしたか?そうでしたら、でしゃばってスイマセン。