PCエミュレーター統合スレッド Part9

1ナイコンさん2018/05/20(日) 17:55:51.36
古き良き、1970年代〜90年代のマイコンエミュレーター統合スレッドです。
基本、開発・人柱・新バージョンの報告や話題等で進行をお願いします
たまには上記の延長線上での脱線も可

※家庭用ゲーム機器は板違いです。(ぴゅう太はOK)
※ジェネレーターや其れに準ずる質問等はスレが荒れる原因になるので華麗にスルーして下さい
※上記の事柄に反応した場合その人も同じ池沼扱いされますので決して反応してはなりません
※このスレは如何にスルーできるか問われるスレですので肝に銘じておいて下さい
※禿しく空気読め

前スレ
PCエミュレーター統合スレッド Part8
https://matsuri.5ch.net/test/read.cgi/i4004/1483504365/
PCエミュレーター統合スレッド Part7
http://hanabi.2ch.net/test/read.cgi/i4004/1430836648/
PCエミュレーター統合スレッド Part6
http://hello.2ch.net/test/read.cgi/i4004/1364603890/

13ナイコンさん2018/05/22(火) 13:34:16.30
CANON X-07も対象かな?
と保守

14ナイコンさん2018/05/22(火) 20:56:40.28
一応保守

15ナイコンさん2018/05/22(火) 22:33:17.90
チンポ

16ナイコンさん2018/05/22(火) 23:33:46.24
腰が痛い(´д`|||)

17Artane. ◆1o3c8RYIzjU0 2018/05/24(木) 14:48:24.30
Ubuntu 18.04LTSが出てから一ヶ月ほどになるので、いい加減、16.04はビルドから除外していいでしょうか?(^_^;

---
今、ステートセーブ周りに手を付けてます。
今の仕組みだとシンプルなのはいいけどデータの保護とか破壊対策が甘いのがあるし、それ以上にsave_state()とload_state()で容易に定義間違いを誘発するのを防ぐ仕組みがほしいな。と
…なので、各データに簡単なヘッダ(デバイス名)とヴァージョン番号とCRC32をつけるところまでは一応できていて、ついでにヘッダをつけていこうと思います。

現状は、一部のデバイスで試してますが、もう少し中身を変えていきたいのと、後、最終的にはセーブステートに一定の後方互換性が持てる可能性を持たせていければ。と思いますので。
そういう「余計な」データがつくのを普通にセーブすると膨らんでしまって手に負えなくなるのも、武田さんがセーブデータのZLIB対応をしてくださったのでやれるように…ありがとうございます。

それと、私が本格的にTownsに手を出す前にDOSBOX-Xの人がやってくれてるようで、助かるのです(;∀;)
身の回りが色々泥沼になってますので(;∀;)

18ナイコンさん2018/05/24(木) 15:23:10.91
【テレパシー、R14指定】 バカウヨ涙目、マイトLーヤTV出演後、サヨクに屈辱の、土下座w m(_ _;)m
http://rosie.5ch.net/test/read.cgi/liveplus/1527128324/l50

19ナイコンさん2018/05/24(木) 21:06:12.20
>>17
安定性を求める素人は18.04.1を待ちやがれ、という説もありますね
https://askubuntu.com/questions/1028624/not-able-to-upgrade-from-16-04-lts-to-18-04-lts
https://askubuntu.com/questions/125825/upgrading-lts-to-lts-server-why-wait-for-the-first-point-release
https://wiki.ubuntu.com/BionicBeaver/ReleaseNotes#Upgrading_from_Ubuntu_16.04_LTS
もちろん、「捨てた!俺は16.04を捨てた!あとは自分で何とかしろ!完璧に動作するかどうかは知ったこっちゃないけどWineを使ってみるのも貴様の自由だぞ♪」でも良いと思いますが。

20ナイコンさん2018/05/24(木) 23:59:12.58
dosbox-x の towns は、やりたい人はやっていいよ、って感じで枠組みを作っただけだね
github の issue を見る限り

21ナイコンさん2018/05/25(金) 00:18:17.80
MS-DOS動かすならFM-Rの画面周りから作っていかないとなぁ...

22ナイコンさん2018/05/25(金) 09:19:54.03
FM-Rって、ハイレゾ機種もあるんだよね
そうとは知らずにハイレゾ機でエクセルで表組み作ってたら
ノーマル機で見事に表示が崩れたw
そういった機種固有のはOSが吸収するべきじゃないのかって悪態ついてた

23ナイコンさん2018/05/25(金) 12:57:43.78
>>22
同じことがPC-98/H98間でもあったよ。
まだフォントを選べる時代じゃなかったし
ソフトを組む側も等幅オンリーでプロポーショナルな文字など眼中になかった。

24ナイコンさん2018/05/26(土) 12:26:13.01
>>22
エクセルちゃうやろ?
1-2-3とかMultiplanとちゃうんか?

25ナイコンさん2018/05/28(月) 01:22:57.82
>>24
Wlndows上で動いてたよ
エクセルマクロをバリバリ使って自動化やってたから
まだVB無かった頃のExcel

26武田 ◆bnZpPXJze51u 2018/05/28(月) 23:43:03.59
>>Artane.さん
あちらで色々フォローして頂いてありがとうございます。
自分絡みの話題にコメントするのは差し控えていたのですが、
流石にちょっと放置できない書き込みがあったのでつい(苦笑)

27Artane. ◆1o3c8RYIzjU0 2018/05/29(火) 06:59:08.17
>>26
いえいえ、どういたしまして(^ω^)
まぁ、しょうもないことを言ったり詰めたりする人は、昔も今も沢山いますから。
後でスラドに書き忘れてたのを書こうかとは思いますが、武田さんが大枠として使い勝手のよいフレームワークを作られ、色々実装されたことで、
それを足がかりにして、私などがわがままやらして頂けてるのですから、本当にありがたいのです。
そして、XM7の開発に関わったたけがみさんはじめの方々のご協力やXM7/SDLの移植を許諾してくださらなければ、
今のeFM7はなかったし、今も時折(私が所持してない)実データでのデバッグをおねがいしたりなんかしてまして、
まぁ、やれるところまでやらせていただけるとありがたいのです。

今後も宜しくお願いしますm(_ _)m

私も来年50ですので、うまいことCSPが半永久的にネットの海を漂い、好事家が見つけて保管したり未来の考古学や風俗歴史を知ることの助けになってほしいなぁ。とか考えております。
特に私が死に、関係者も殆ど他界した後にも資料として、CSP自体を残したいものです。

28ナイコンさん2018/06/04(月) 14:26:08.66
マイクロソフト、開発者向けサービスのギットハブ買収で合意
https://headlines.yahoo.co.jp/hl?a=20180604-61706485-bloom_st-bus_all

29ナイコンさん2018/06/05(火) 20:57:34.64
MicrosoftがASUKAの敵になるのか

30ナイコンさん2018/06/09(土) 08:28:41.88
Xmillennium T-tuneとかイカチューンってウィンドウサイズ変更できないん、?

31ナイコンさん2018/06/11(月) 21:30:16.05
artaneさんの最近のgitのやつってsegmentation faultで起動しないんだけどみんなは大丈夫なの?

32Artane. ◆1o3c8RYIzjU0 2018/06/12(火) 02:18:55.94
>>31
すいません、この10日ほど大規模に色々やってるので(特にステートセーブ周り)、厳しいかもしれません(;´Д`)
最低でもFM-7系とPC-8801系とX1系は、なるべく飛ばないようにしてますが…(´・ω・`)
一通り変更が出来たら、MinGWなどのチェックに入ります。

33Artane. ◆1o3c8RYIzjU0 2018/06/12(火) 02:22:14.94
>>31
蛇足ですが、最近のDebian Sidは、かなり不安定で、私のに限らず、Qt使ったプログラムが、Xサーバとの通信不良を起こして起動しないケースがチラホラ見えます。(qtdiagとか)
QtOpenGLの問題と言う形にしておいて、バグ報告してますが、リアクションがまだない…(´・ω・`)

34312018/06/12(火) 07:55:42.98
Artaneさん、やっぱりそんな感じですか。
ただ、こっちでは pc8801ma とか fm-7系もみんな sementation fault します。
x1系は試していません

35Artane. ◆1o3c8RYIzjU0 2018/06/12(火) 09:57:17.77
>>34
あらあら…(´・ω・`)
レポジトリのヴァージョン値と、CコンパイラとOS教えていただけますか?

36ナイコンさん2018/06/12(火) 11:03:48.92
>>35
55944ca38b04f787ef57d0f07b242be638cac115 ですが、ステートセーブ的なのがはいってから
ずっとだったと思います。
gcc-7.3.1 on Fedora27 です

37ナイコンさん2018/06/12(火) 18:03:35.45
>>35
今、148b1ba8b7d51fdba9f9bce6b8545ddb0ae5831a をビルドしてみましたが、
common_source_project-fm7/source/build-cmake/config_build.sh で以下のような感じで
コンパイルが通りませんでした

/home/hoge/common_source_project-fm7/source/src/statesub.cpp:853:1: エラー: ‘cs_state_utils::csp_state_utils(int, int, _TCHAR*)’ 用のプロトタイプがクラス ‘csstate_utils’ 内のどれとも一致しません
csp_state_utils::csp_state_utils(int _version, int device_id, _TCHAR *classname
)
^~~~~~~~~~~~~~~
In file included from /home/hoge/common_source_project-fm7/source/src/statesub.c
pp:6:0:
/home/hoge/common_source_project-fm7/source/src/statesub.h:59:7: エラー: 候補: c
sp_state_utils::csp_state_utils(const csp_state_utils&)
class csp_state_utils {
^~~~~~~~~~~~~~~
/home/hoge/common_source_project-fm7/source/src/statesub.h:89:2: エラー:
csp_state_utils::csp_state_utils(int, int, const _TCHAR*)
csp_state_utils(int _version = 1, int device_id = 1, const _TCHAR *classname =
NULL);
^~~~~~~~~~~~~~~

38ナイコンさん2018/06/13(水) 08:18:56.27
30e92a5fa2e77b862bc91e4099f6d19ae776b506 でコンパイルは通るようになりましたが
依然 Segmentation fault で起動しません
ただ、gdb で動かしてみると起動するという不思議な挙動です...

39Artane. ◆1o3c8RYIzjU0 2018/06/13(水) 12:30:19.03
>>38
ありがとうございます。
お手数ですが、コアダンプをとれる状態にして起動し、吹っ飛んだ後に残ったコアと吹っ飛んだプログラムを使ってgdbを起動して、
where
したのを貼って頂けないでしょうか?(´・ω・`)
よろしくお願いしますm(_ _)m

40Artane. ◆1o3c8RYIzjU0 2018/06/13(水) 19:11:40.38
>>38
一つ忘れていました。
ビルドスクリプトから、*共有ライブラリ含めて*ビルドしてインストールしていますか?
最近、いつもと違って同じ共有ライブラリのヴァージョンで中身をガンガン変えてるので。
(要素が雪だるま式に増えてるので…、もう一息で一段落するはずです。)

41ナイコンさん2018/06/13(水) 21:42:20.37
gdb とかよくわかっていないのですが

(gdb) where
#0 0x00007f4ef3d07adb in Ui_MainWindowBase::ConfigSoundMenu() (this=this@entry=0x1396430)
at /home/hoge/common_source_project-fm7/source/src/qt/gui/menu_sound.cpp:133
#1 0x00007f4ef3d06078 in Ui_MainWindowBase::setupUi() (this=this@entry=0x1396430)
at /home/hoge/common_source_project-fm7/source/src/qt/gui/menu_main.cpp:329
#2 0x00007f4ef3d068f9 in Ui_MainWindowBase::Ui_MainWindowBase(USING_FLAGS*, CSP_Logger*, QWidget*) (this=0x1396430, p=0x13b0c80, logger=0x15b7e00, parent=<optimized out>)
at /home/hoge/common_source_project-fm7/source/src/qt/gui/menu_main.cpp:72
#3 0x000000000043dfe9 in Ui_MainWindow::Ui_MainWindow(USING_FLAGS*, CSP_Logger*, QWidget*) ()
#4 0x0000000000446a7e in META_MainWindow::META_MainWindow(USING_FLAGS*, CSP_Logger*, QWidget*) ()
#5 0x0000000000438188 in MainLoop(int, char**) ()
#6 0x000000000042f5cd in main ()

これでよいでしょうか?

>>40 についてですが、source/build_cmake/config_build.sh
を実行すればよいのですよね?
gdb で実行すると落ちないのでここらへんは大丈夫だと思います

42Artane. ◆1o3c8RYIzjU0 2018/06/14(木) 22:04:40.92
>>41
ありがとうございます。
そのダンプによると、>>38さんの環境だと変数を壊してるけどgdb噛ませると壊してない(多分、オブジェクトができるタイミング)ようなので、直してみました。

commit d54f358a6032863d081f527269a26511184d861f をお試し下さいm(_ _)m
# 実際には 35816be8ae25e3a3c59fdee6f32d501ec3b3f51d で直してますが、他にいくつか一緒にやってしまったので。

43ナイコンさん2018/06/14(木) 23:21:54.12
>>42
試してみましたがまだ落ちます。gdb で where した結果もほとんど同じです。

(gdb) where
#0 0x00007fcc2c6188f6 in Ui_MainWindowBase::ConfigSoundMenu() (this=this@entry=0x2a36c10)
at /home/hoge/common_source_project-fm7/source/src/qt/gui/menu_sound.cpp:133
#1 0x00007fcc2c616eb8 in Ui_MainWindowBase::setupUi() (this=this@entry=0x2a36c10)
at /home/hoge/common_source_project-fm7/source/src/qt/gui/menu_main.cpp:329
#2 0x00007fcc2c617759 in Ui_MainWindowBase::Ui_MainWindowBase(USING_FLAGS*, CSP_Logger*, QWidget*) (this=0x2a36c10, p=0x2a33600, logger=0x2c57600, parent=<optimized out>)
at /home/hoge/common_source_project-fm7/source/src/qt/gui/menu_main.cpp:72
#3 0x0000000000432809 in Ui_MainWindow::Ui_MainWindow(USING_FLAGS*, CSP_Logger*, QWidget*) ()
#4 0x0000000000438d1e in META_MainWindow::META_MainWindow(USING_FLAGS*, CSP_Logger*, QWidget*) ()
#5 0x000000000042d1b9 in MainLoop(int, char**) ()
#6 0x00000000004247bd in main ()

44ナイコンさん2018/06/14(木) 23:25:26.63
一応、補足として
config_build.sh を実行した後、pc8801ma/build/ で
$ make clean
$ cmake ..
$ make
# make install
しています

45Artane. ◆1o3c8RYIzjU0 2018/06/15(金) 03:59:01.72
>>44
commit 797ee9c1ac784fc06e483bf0923120b91b658e39 ではどうでしょうか?
もし、落ちるようなら、buildvars.dat に USE_SANITIZER="Yes" と言う行を加えて、
./config_build.sh pc8801ma でインストールしてみて、落ちた所のメッセージを貼ってみて下さい。
※アドレスサニタイザを有効にするので、かなり遅くなります。

46ナイコンさん2018/06/15(金) 07:02:53.40
>>45
797ee9c1ac784fc06e483bf0923120b91b658e39 で無事起動しました
ありがとうございました

47Artane. ◆1o3c8RYIzjU0 2018/06/15(金) 15:19:06.26
>>46
よかったですー(^∀^)
Fedoraのgcc7は、色々とセキュリティ強化の拡張がされてたり、gcc8で追加された新しいスタック保護機構がバックポートされてたりで、結構厳しいんですね。
おかげで、気が付かなかったバグに気づきました。ありがとうございました。

48ナイコンさん2018/06/16(土) 05:19:43.61
どの98エミュレータもマイコンソフトのドラゴンバスターはダメみたい。
期待していたが、武田さんのePC-98DOの98モードもダメだった。
実機でも、モニター選ぶしなんか特殊なことやってるのかな。

49ナイコンさん2018/06/16(土) 05:24:45.38

50ナイコンさん2018/06/16(土) 06:47:01.88
ttps://i.imgur.com/TaPcVeA.png
np2で良くない?
実機ディスプレイだとディスプレイの発色で良い雰囲気になるのってのは無理そうだが

51ナイコンさん2018/06/16(土) 07:41:59.39
というか、うまく吸い出せてないのでは

52ナイコンさん2018/06/16(土) 10:08:06.10
98のドラバスはアーケードと同じ画面構成にするために
縦横の解像度をいじってる(たぶんGDCに与えるパラメーターを変えている)
np2なら対応可能

53ナイコンさん2018/06/16(土) 11:05:31.92
D
‏ @drachen6jp
6月9日

95とNTが止まってる場所は見つけたけど直し方がわからない
ゲームしたいのに気づいたら触ってる

https://twitter.com/drachen6jp/status/1005421987932483584

54ナイコンさん2018/06/16(土) 15:40:09.32
>>52
完璧では無いなあ。崩れてる、実機で遊ぶしか無いのか。押入れからVM出すか。

55ナイコンさん2018/06/16(土) 19:17:13.95
崩れてるの意味がわからんがそれはエミュというよりブラウン管効果じゃないのか
ttps://pbs.twimg.com/media/DE76MfQVYAE9w47.jpg
ttps://pbs.twimg.com/media/DE76LnxUQAEoh9L.jpg
今の表示機器は逆に綺麗過ぎてな実機でも液晶に繋いでると違うのはわかる

56ナイコンさん2018/06/18(月) 02:36:27.67
>>55
本来は、画面の左下にあるゲージ(少なくても他機種とアーケードは位置があってる)が
とんでもないところに表示されたりする。

57ナイコンさん2018/06/18(月) 02:47:26.43
>>56
>>50の画像や動画サイトにアップされてる(エミュ)動画みると正常っぽいから
>>51の言うようにイメージ化失敗してるのでは

58ナイコンさん2018/06/18(月) 16:45:38.77
確かにドラバスは98オリジナルとは少し画面が違うが
多分正常に表示できるエミュは無いと思う
GDCのパラメータ変えてるとは知らんかった
あ、吸出しとかブラウン管だからっつーのは関係無い。54のは知らんが少なくとも俺のはそう

59ナイコンさん2018/06/18(月) 18:08:35.50
その違いが説明出来れば改善されるかもしれないが無理だろうな

60ナイコンさん2018/06/18(月) 22:44:33.03
np2では>>50の画面が表示できてるんだけど
どこに問題があるのか全然わからない

61ナイコンさん2018/06/19(火) 02:04:32.14
ニワカには違いが難しいんだろうな

62ナイコンさん2018/06/19(火) 05:04:31.65
np2zでの画面
ttps://i.imgur.com/kVay8Su.png
これも違う?

63ナイコンさん2018/06/19(火) 13:13:26.78
ディスプレイを選ぶなら、単にGDCのクロックいじって縦のドット数増やしてるだけでは?
30行計画とかに対応してるソフトあるのかな

新着レスの表示
レスを投稿する