PCエミュレーター統合スレッド Part9at I4004
PCエミュレーター統合スレッド Part9 - 暇つぶし2ch482:調査では Visual C++ 2013 までは stat() で 2G 超のファイルの存在確認が可能ですが、 Visual C++ 2015 以降ではエラーになります。 ただ、Visual C++ 2013 でも 2G 超のファイルサイズを fseek(), ftell() で取得しようとすると、 ファイルサイズがマイナス値で返る関係で計算後のシリンダ数も 0 になってしまうはずなのですが、 本家の DOSBox はそれ以前の Visual C++ を使っている関係からか、それらしい値が計算できてしまっているようです。 いまさら 2013 以前に戻すのもなんですので、2G 超のファイルの存在確認、サイズの取得方法の変更や imgmount 時の fseek の 64bit 化等で対処するしかなさそうです。 元々 FAT16 のボリュームの制限もありますし、今回のようにコンパイラのライブラリによって動作が 異なる等々ありますので、サイズが 2G 前後のイメージファイルはあまり使わない方がいいとは思うのですが。




次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch