2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

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

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

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

前スレ:PCエミュレーター統合スレッド Part6
http://hello.2ch.net/test/read.cgi/i4004/1364603890/

83 :Artane. ◆1o3c8RYIzjU0 :2015/08/01(土) 04:27:34.60 .net
スレ違いで(7/31付+αで)リリースをかけてしまったヽ(´Д`;)ノ...
https://github.com/Artanejp/common_source_project-fm7/releases/tag/SNAPSHOT_20150731
http://www1.axfc.net/u/3509882
https://www.sendspace.com/file/m7a5de

ごめんなさい>武田さん

>>81
変更点了解しました。
寝て起きて以降確かめていきます。

84 :ナイコンさん:2015/08/01(土) 10:53:07.26 .net
X1turboのTHE MAN I LOVEが起動するようになりました

85 :ナイコンさん:2015/08/01(土) 14:29:17.45 .net
>>80
>Oh!FMのI/Oマップに不正確な所がかなりあるので。
 FM-7 $FD00:bit1(w)のON/OFFが逆
 FM-77 $FD04:bit2(w)のSFD/NORMALが逆
これくらいしか知らないな。($FD04は某サイトに記述あり)
他にあるならリストアップして欲しいな。
ここよりも、todo.txtとかnote.txtとかの名前で
リポジトリの中に放り込むとかの形がいい。
理想はWebサイトだけど…。

>>81
>MB8877のトラックレジスタ、サイドレジスタの扱いを変更しました。
物理トラック(ハード側)と論理トラック(ソフト側)の考え方ですね。
実際にR/Wされるのは物理トラック、FDC内で管理しているのは論理トラック。

86 :Artane. ◆1o3c8RYIzjU0 :2015/08/01(土) 21:54:08.21 .net
>>81-82
とりあえず大まかに見てみましたが、問題はなさそうです(が、もっとテストしないと良いか悪いか判断ができない改変なので判断保留)。
既に、昨晩作業していたリリースにある仮想マシンに関しては、Debian+Qtではビルドできる状態までマージしました。
今、Windows側(VS2015)をやり始めてます。

>>85
多分それよりも前の奴で、1984年のOh!FMに載ってたI/Oマップです。
このデバイスや割込線があるはずなんだけど書かれてない(例えば割込原因フラグとかマスクレジスタとか)のがあったので、
工学社のFM-8活用研究(だっけ?)辺り見ないとダメだな。と。

87 :ナイコンさん:2015/08/01(土) 21:59:30.73 .net
#include <QOpenGLWidget>
の所でmakeがエラーになってしまいました。
ttps://doc-snapshots.qt.io/qt5-5.4/qopenglwidget.html
Qt 5.4未満ではダメってことですかね。

88 :Artane. ◆1o3c8RYIzjU0 :2015/08/01(土) 22:52:41.04 .net
>>87
Include元はどのファイルですか?
こちらで書いたのの問題かどうかちょっと確かめてみます。

89 :ナイコンさん:2015/08/01(土) 23:16:04.25 .net
>>88
QOpenGLWidgetは
ttps://github.com/Artanejp/common_source_project-fm7/tree/master/source/src/qt/common
の、
qt_gldraw.cpp
qt_gldraw.h
qt_glevents.cpp
にあるようです。エラー表示に出てきたのはqt_gldraw.hだったと思います。

90 :Artane. ◆1o3c8RYIzjU0 :2015/08/01(土) 23:24:37.66 .net
>>89
QOpenGLWidget自体はQt5であれば用意されてるので、
src/qt/gui/ や src/qt/common/ を構成してる他の部分のコンパイルに成功するならば、
QtOpenGL部分のヘッダがパッケージとして入ってないのかも知れませんね。
ディストリがわからないのでアレですが、例えばDebian GNU/Linux(多分Ubuntu等も)の場合は、
libqt5opengl5-dev と言うパッケージがないと多分コンパイルコケます。(がcmakeが
通ったのだとしたらこちらの書き方も悪い)

91 :ナイコンさん:2015/08/02(日) 00:29:54.12 .net
libqt5opengl5-devは入っていて、バージョンが5.3.2+dfsg-4+deb8u1になっています。
ttps://packages.debian.org/testing/libdevel/libqt5opengl5-dev
ttps://packages.debian.org/jessie/libqt5opengl5-dev
Debianのテスト版であれば5.4以上、安定版であれば5.4未満で正しい、と。

で、>>87のドキュメントには
Since: Qt 5.4
って書いてあるし、qt5-qtbase-devel等のバージョンが5.4.2-2.fc22になってるFedoraではmake成功するし、
やっぱり5.4未満ではダメなのかな、と。

92 :Artane. ◆1o3c8RYIzjU0 :2015/08/02(日) 01:31:04.96 .net
>>87
>>91
状況はわかりました。
ディスクの空きを作って仮想環境にStableのDebianを入れるのに時間下さい。
可能であれば、5.3基準で組み直して見ます。
来週半ばにディスク買う予定です(どちらにせよ別件で使っているのが逼迫してるので)ので、最悪そのタイミングになるかも知れないのでが。

93 :ナイコンさん:2015/08/02(日) 01:56:36.78 .net
(実はSDLも2.0.0ではビルドできなくて、2.0.2あたりではビルドできるという話があったようななかったような...)

94 :ナイコンさん:2015/08/02(日) 02:31:37.68 .net
(SDL_DetachThreadが引っかかってた気がするけど、今のソースにはないみたいですな...)

95 :ナイコンさん:2015/08/02(日) 03:42:41.92 .net
>>86
FM-8活用研究や、84年のOh!FMにはI/Oアドレス表は載ってないよ。
FM-8活用研究に載ってるのはF-BASIC V1.0のエントリアドレスリスト。
Oh!FMにI/Oアドレス表が載ってるのは、知ってる限りだと86年7月号と89年5月号。
89年のはFM-7シリーズ限定だから、FM-8のが載ってるのは86年のだけかな。
余談だけどFM-7/8活用研究にもI/Oアドレス表は載ってないよ。

96 :Artane. ◆1o3c8RYIzjU0 :2015/08/02(日) 04:07:20.62 .net
>>87-91
とりあえず、Qt 4.8以降ならビルドできる*はず*のコード分けをしてみました。
Qt5.3の環境を作らないでやったので、お試しくださいませ m(_ _)m

>>94
SDL_Thread は使わないようにしました。折角Qtがマルチスレッドを提供してるのにSDLのスレッドを乱立させるのはあまり美しくない(笑)ので。

>>95
なるほど。
一寸ボケていました。
FM-8の活研って、I/Oは無いにしても回路図載ってませんでしたっけ?
要は回路図がないかなー。と。

97 :Artane. ◆1o3c8RYIzjU0 :2015/08/02(日) 04:19:48.07 .net
後、業務連絡です>武田さん
eX1TurboZのアイコンですが、どうやら違ってるようなので…ZのつかないX1Turboのアイコンが使われているようです。

98 :ナイコンさん:2015/08/02(日) 13:13:55.48 .net
>>96
回路図なら載ってるよ。

FM-8活用研究→FM-8の回路図
FM-7/8活用研究→FM-7の回路図
FM-7/11活用研究→FM-11の回路図
FM-7/11活用研究第二集→FM-77の回路図
6809活用研究→日本語通信カードの回路図
FM-Techknow→FM77AVの回路図

FM-Techknowは本は持ってないので外部情報だけど。

でも、回路図からI/Oアドレスは直接は導けないよ。ヒントにはなれど。
実機で動確しながら一つ一つ確かめないと。

99 :Artane. ◆1o3c8RYIzjU0 :2015/08/02(日) 14:12:33.78 .net
>>98
ありがとうございます。

>でも、回路図からI/Oアドレスは直接は導けないよ。ヒントにはなれど。
>実機で動確しながら一つ一つ確かめないと。

まぁ、確かにそうですね。
今更実機を入手できるかどうか自信が無いですが(どうせヤフオクだととんでもない値段になるから入手不可能だろうし、丹青あたりで安く出てるといいのですが…)
やれる限りのことはやっていこうかと。

100 :87,89,91:2015/08/02(日) 15:23:28.45 .net
>>96
今はこんな感じです。
source/src/qt/common/qt_gldraw.cpp: In member function ‘void GLDrawClass::drawGrids()’:
source/src/qt/common/qt_gldraw.cpp:66:13: error: ‘class QGLFunctions’ has no member named ‘glEnableClientState’
source/src/qt/common/qt_gldraw.cpp:67:13: error: ‘class QGLFunctions’ has no member named ‘glVertexPointer’
source/src/qt/common/qt_gldraw.cpp:68:13: error: ‘class QGLFunctions’ has no member named ‘glDrawArrays’
source/src/qt/common/qt_gldraw.cpp:69:13: error: ‘class QGLFunctions’ has no member named ‘glDisableClientState’
source/src/qt/common/qt_gldraw.cpp:92:13: error: ‘class QGLFunctions’ has no member named ‘glEnableClientState’
source/src/qt/common/qt_gldraw.cpp:93:13: error: ‘class QGLFunctions’ has no member named ‘glVertexPointer’
source/src/qt/common/qt_gldraw.cpp:94:13: error: ‘class QGLFunctions’ has no member named ‘glDrawArrays’
source/src/qt/common/qt_gldraw.cpp:95:13: error: ‘class QGLFunctions’ has no member named ‘glDisableClientState’
仮想環境を作るんだったら、シングルコア・シングルスレッドCPU1個の設定で動くかどうかの確認も…… 需要は少ないかもしれませんが。

101 :Artane. ◆1o3c8RYIzjU0 :2015/08/02(日) 17:33:42.51 .net
>>100
状況報告ありがとうございます。
明日の夜まで相当忙しくなるので、対応はその後になるかも知れません。多分、Qt4.8で用意されてるメンバーの物を作り込む事になるでしょう。

しばしお待ちを。

102 :Artane. ◆1o3c8RYIzjU0 :2015/08/02(日) 21:18:43.81 .net
>>武田さん
 昨日の武田さん側のリリースでのFDC周りの件ですが、どうやら大丈夫そうです。今後、色々と動かしてチェックする必要が相変わらずありますが。

>>100
とりあえず、今さっきリリースしたのではどうでしょうか?
https://github.com/Artanejp/common_source_project-fm7/releases/tag/SNAPSHOT_20150802

バイナリは
https://www.sendspace.com/file/05ibq1
http://www1.axfc.net/u/3510889

MD5SUM: 3be7108385533498d480d55d5f8f2f03
中に入ってるChangeLogに書かれてる基にした武田さんリリースの日付が7/31になってますが、8/1です(githubでは直してある)。
これ、Qt5.4以降のAPIを使わずにビルドしてるので、Qt5.3以前の方は動くかどうかお試し下さいませm(_ _)m
シングルコアCPU環境でのテストは、今週後半以降。

103 :87:2015/08/02(日) 21:56:40.61 .net
>>102
source/src/qt/common/qt_glevents.cpp:12:25: fatal error: QOpenGLWidget: そのようなファイルやディレクトリはありません
で止まってしまいました。そこだけコメントアウトすればmakeは完了しました。

104 :Artane. ◆1o3c8RYIzjU0 :2015/08/02(日) 22:15:39.17 .net
>>103
ありがとうございます。
明日早くから1日大忙しになるので、対応は火曜位にしましので。申し訳ございませんです。

105 :武田 ◆bnZpPXJze51u :2015/08/03(月) 01:03:50.39 .net
>>102
ありがとうございます。
もう少し弄ると思いますので、大規模なチェックはお待ちください。

X1turboZの件、ありがとうございます。
まだZ用の画面モードのレンダラーが未実装なので、プロジェクトは
用意しているんですが、リリースはしてなかったりします(を

106 :ナイコンさん:2015/08/03(月) 10:13:43.89 .net
PCエミュ総合だからいいよね

X1でブランクテープを作成する際X millenium付属のmaketape.exeだと思うけど
64bit環境じゃ動かんのよね
みんなどう対処してるんだろ?

107 :ナイコンさん:2015/08/03(月) 12:58:40.26 .net
武田のdos playerで動かない?

108 :武田 ◆bnZpPXJze51u :2015/08/03(月) 23:13:53.07 .net
>>102
更新しました。
MB8877周りの修正はこれで一段落?

109 :ナイコンさん:2015/08/04(火) 05:14:59.38 .net
>>107
あ! なるほど
ありがとう
やってみるよ

110 :Artane. ◆1o3c8RYIzjU0 :2015/08/04(火) 12:48:23.73 .net
>>108
ありがとうございます。
昨日猛烈に忙しかった反動と、後はディスク設置やらなんやら本業やらやらないといけない作業がそこそこ残ってるので、
検証や取り込みに着手するまでには多少時間がかかりそうです。

111 :Artane. ◆1o3c8RYIzjU0 :2015/08/04(火) 13:19:14.46 .net
>>109
後、VirtualBoxやVMWareのような仮想マシン上にFreeDosを入れるという手法がありますよ。
http://www.freedos.org/
日本語化は微妙ですが…

112 :武田 ◆bnZpPXJze51u :2015/08/05(水) 00:53:20.89 .net
MB887周り、更に修正しました。
DRQのタイミングや、CRCエラーの挙動の再現性が向上しています。

113 :武田 ◆bnZpPXJze51u :2015/08/05(水) 01:27:17.65 .net
前スレだったか、X1のドームで、ユーザディスクのフォーマットが
正常に実行できないというご報告を頂いていたかと思います。

最近の修正で、MB887の再現性も大分と向上しているかと思いますので、
よろしければ追試お願いいたします。

#MZ-2500の勝手移植のソーサリアンとかイース3とかのために、
#かなり偏執的なレベルでタイミングの再現性を図ってます(を

#ライトトラックで、データフィールドなしのセクタを書き込むとかの
#変態プレイもサポートできている筈です。(未確認)

114 :ナイコンさん:2015/08/05(水) 02:47:40.13 .net
>>111
ありがとうございます。
MS-DOS Playerで無事出来ました。
そのまま仮想マシンを立ち上げることもなく直で出来る分、使い勝手が良かったです。



ところで、MS-DOS PlayerでX millenium付属のmaketape.exeを実行すると
Sampling rate(Hz)?8000Size (minits) ?
のようになり、8000入力Enter後で本来改行してあったと思ったけど、
改行周りの不具合ですかね?
記憶だから気のせいかも・・・
ちょうど出入りしてる武田氏の制作物でピンポイント解決とはワロタ
武田氏乙でしたw

115 :ナイコンさん:2015/08/05(水) 22:45:43.28 .net
>>113
eFM77AVのスクリーンショットみたら、タイトルが
「FUJITSU FM-77AV」になってるんだが…
FM-77までとFM77AV以降の機種名はちゃんと使い分けてほしいなぁ。

116 :Artane. ◆1o3c8RYIzjU0 :2015/08/05(水) 23:34:30.86 .net
>>113
お返事遅くなりました。
月曜日が恐ろしく忙しかったので、反動で消耗からなかなか抜けられておりません。
が、多分数日中には今までの変更を取り込んで試験していきますね。

117 :Artane. ◆1o3c8RYIzjU0 :2015/08/06(木) 23:27:43.90 .net
>>113
とりあえず、こちらでも8/5版を取り込みました。武田さん、お疲れ様です。
commit f98e6ac0bc324f554c79dc27ded20bc88d5c6f29

この変更には、
・GCC 5.1以降で用意されてるC++の新ABIについて、デフォルトでは無効にする設定
>>87 さんのご指摘での対応
・ホストCPUが「1スレッド1コア」もしくは「2スレッド1コア」である場合に固まってしまうことへの対応(>>100 関連)
も入れてあります。
今、バッチでビルドしてみています。

118 :武田 ◆bnZpPXJze51u :2015/08/07(金) 03:06:36.92 .net
>>117
お疲れ様です。
すみません、またMB8877を弄ってしまいました(苦笑)
今度こそ、これで一段落のはずです。

119 :Artane. ◆1o3c8RYIzjU0 :2015/08/08(土) 10:13:40.10 .net
>>118
お疲れ様です。

とりあえず、昨日作業されたところまでマージして、リリースをかけてみました。
https://github.com/Artanejp/common_source_project-fm7/releases/tag/SNAPSHOT_20150807

https://www.sendspace.com/file/d0mxxh
http://www1.axfc.net/u/3513885

MD5SUM : b25253f389193e74e5502512b36f85f9
SHA256SUM : 74042657c7b5fc91e86264e42a52ff976ddfea0107fbea2cfba9a71606471abc

テストの程をお願いします>皆様

120 :87:2015/08/08(土) 21:50:38.56 .net
>>119
とりあえず自分のVMwareゲストでmakeしてバイナリを実行。あんまりヘビーな使い方はしてませんが。
・以前はゲストのプロセッサコアの数が1だとすぐ応答無しになっていましたが、今はプロセッサコアの数が1でも動く。
あとは、以前も同様だったかもしれませんが、
・make中に warning: "USE_DEBUGGER" redefinedが多数出る。ほかにもwarningはあるけど。
・実行開始直後、端末に以下のような表示が出る。
QObject::connect: No such signal QMainWindow::closed() in (省略)/source/src/qt/gui/menu_main.cpp:327
QObject::connect: (sender name: 'MainWindow')
・emumsx1やemumsx2の表示サイズを640x480に設定して、タスクバー(という呼び方が適切かどうかは知りませんが)を右クリックして終了させるとSegmentation faultになりやすい?

121 :ナイコンさん:2015/08/08(土) 23:07:07.27 .net
ここらへんできいていいのだろうか?
dosboxでalinkを使うにはどうしたらいいんでしょうか?
nasm+alinkをdosboxの環境で使いたいのですが(使えるものだと思っていたのですが)
nasmはdos版でいけるがalinkは32版だと怒られる
RSXNT版という奴でやってみても怒られる
RSXNT(Cかなんかの高級言語コンパイラ?)っての自体を入れようとしても怒られる

122 :ナイコンさん:2015/08/09(日) 09:05:36.60 .net
>>121
alinkはWin32向けなのでdosboxじゃ動かないです。
dosbox上にWin95やDPMI+Win32コンソールエミュレータ系の特殊な環境を作れば、
動かせないことも無いのかも知れないけど、やる意味は無いと思う。

123 :Artane. ◆1o3c8RYIzjU0 :2015/08/09(日) 12:08:13.57 .net
>>118
やっとこさFD関連を見ることができていますが、殆どのFDイメージが読みだすものの、すぐにダメになってROM BASICが起動しちゃいますね。

124 :Artane. ◆1o3c8RYIzjU0 :2015/08/09(日) 13:08:53.47 .net
大体わかりました。
書き込み保護をしてあるディスクを読んだ時のステータス返信に問題があったようです。
commit 56338f1abc3fdc13c30b3f3aaf57a1889181566a にて。

125 :ナイコンさん:2015/08/09(日) 14:51:41.36 .net
久しぶりに eFM7/77/77AV の 8月8日版を触ってみたが、
>>123 の症状で全く先へ進めず。
触る気失せるよ...
あいかわらずフレームレート低いし。

126 :ナイコンさん:2015/08/09(日) 14:59:14.09 .net
無理に触らなくてもいいんじゃない?

127 :武田 ◆bnZpPXJze51u :2015/08/09(日) 18:08:44.50 .net
>>124
おおう、すみません(汗
ステータス周り弄ってるときにデグレしちゃってました。
今晩か明晩あたりのリリースで修正します。

128 :武田 ◆bnZpPXJze51u :2015/08/09(日) 18:36:06.13 .net
晩飯前に時間があったので、さくっと修正しました(を

129 :ナイコンさん:2015/08/09(日) 19:34:28.00 .net
パンがなければlnk563.exeを使えばいいじゃない

130 :ナイコンさん:2015/08/09(日) 19:43:37.75 .net
>>100
仮想環境と言えば、コモンソース内でコモンソースをビルドできる環境は作れるのだろうか?

131 :ナイコンさん:2015/08/09(日) 19:50:54.83 .net
>>129
wlink万能説

132 :ナイコンさん:2015/08/09(日) 23:38:28.39 .net
>>125
C2Dのマシン程度でも60FPSでとるがその環境だけなのではw
環境や状況の詳細でも報告しない限り今後改善はされる事は無いだろ

133 :ナイコンさん:2015/08/10(月) 01:16:50.19 .net
環境が報告されても、そいつのために同じ環境を用意してまで直してくれるかね!?

134 :ナイコンさん:2015/08/10(月) 01:31:21.03 .net
とりあえず486機でも実装して、それで動かしてみれば切り分けできないだろうか?

135 :ナイコンさん:2015/08/10(月) 02:15:19.71 .net
そういえばダイナブックのエミュってあるのだろうか?
アランケイ版も見てみたい気はするけど。

136 :ナイコンさん:2015/08/10(月) 02:51:45.71 .net
DynaBook SS433って、J-3100シリーズじゃないんだな。
まあSSじゃ初代と紛らわしいけれど。

137 :Artane. ◆1o3c8RYIzjU0 :2015/08/10(月) 05:20:25.53 .net
>>125
とりあえず、動かしている環境晒して見て頂けますか?
マシンとOS。
仮想化環境ならば、ホストOSと割り当てているCPUの数や使用割合も。
で、仮想化環境だと、動作速度が落ちる傾向があるようですね。

138 :Artane. ◆1o3c8RYIzjU0 :2015/08/10(月) 05:22:02.31 .net
>>133
可能ならば、やります。
新しいマシンを云々とかVirtualBox以外の仮想化環境は無理ですが。
で、晒して貰えば、問題解決の手掛かりにはなりますから。

139 :Artane. ◆1o3c8RYIzjU0 :2015/08/10(月) 05:29:51.56 .net
>>120
とりあえず、今ビルド中ですが、
>>119
>・make中に warning: "USE_DEBUGGER" redefinedが多数出る。ほかにもwarningはあるけど。
これは、CMAKE版だとCMAKEからデバッガの有無を設定出来るようにしているので起こっている事なので
…解決にはしばしのお時間を頂きたいです(根こそぎソースに書き加えないといけないので)

>・実行開始直後、端末に以下のような表示が出る。
QObject::connect: No such signal QMainWindow::closed() in (省略

直しました。存在しないシグナルを指定していたので…

>・emumsx1やemumsx2の表示サイズを640x480に設定して、(以下略)

多分、直せています。理論的には問題解決出来て、色々弄ってもcore吐かなく出来たので。
厳しいテストを出来ていないので、あくまで「多分」という事になってしまっていますが。

140 :Artane. ◆1o3c8RYIzjU0 :2015/08/10(月) 15:21:14.37 .net
とりあえずリリース
https://github.com/Artanejp/common_source_project-fm7/releases/tag/SNAPSHOT_20150810

http://www1.axfc.net/u/3509882
https://www.sendspace.com/file/m7a5de
MD5SUM: b73ebd1791b86a7e2bd2b1d568265ace
SHA256SUM: 93740b9ae80f60ecce2f927d0a18f93be7753ff3d1fc6c488f9dd98ae6dfdaf5

141 :Artane. ◆1o3c8RYIzjU0 :2015/08/10(月) 15:23:18.82 .net
ごめんなさい、 >>140 に掲示したバイナリを間違えてた、こちらが正しいです m(_ _)m
Note: Linux AMD64 and Windows 32bit Binaries are below:
http://www1.axfc.net/u/3515176
https://www.sendspace.com/file/xcyxti

Filename : CSP_BUILD_20150810.7z
MD5SUM : 92e9b56ce7bffcd2e17a3b7c463cdde0
SHA256SUM : 9bf8c40dfc8e996edbf60ce75866037854ab7e0384d4a711f56e112dbfed8f51

142 :ナイコンさん:2015/08/10(月) 19:58:28.39 .net
>>138
ありがとう。
OS は Windows7 Home Premium SP1 32bit。
タブレットなんで CPU は非力な Atom だけど、他の Common Source
エミュ(ePC8801MA,XM8,BML3MK5)は問題なく動いてる。

気を取り直して 8月9日版バイナリを動かしてみた。
ちゃんとフロッピーイメージをマウントできて起動するようになった。
eFM7/eFM77/eFM77AV で FM-77 の DEMO の完走を確認できた。
以前よりfpsは早くなってるが、それでも10fps前後。
ただし、FM-77 デモ のうち、DEMO6 だけは 40fps 出る。
フルF-BASICと思われる DEMO5 は 10fps なので不思議。
eFM7/77/77AV はメインCPUとサブCPUのコミュニケーションで足を
引っ張り合ってるような気がするんだけど...

あと eFM77AV で F-BASIC V3.3 L10、OS-9 Level2(AV用)が
起動できない。以前のバージョンは起動できたんだけど。
MMR が変なのかと思って OS-9 Level 2(FM-77用)を試したら
起動できたので、詳細不明。深追いしてない。
OS-9 Level 1は、eFM7/77/77AV で起動OK。遅い以外は問題なし。

143 :ナイコンさん:2015/08/10(月) 20:43:53.19 .net
フレームレート低下回避とSSEが無い古いマシンでも動くよテスト(Win32)
これで行けるならワロス
7と77avしか作っとらんが

ttp://www1.axfc.net/u/3515323/6809

144 :ナイコンさん:2015/08/10(月) 21:55:26.89 .net
武田さんが書いた履歴にMr.Sean Yongってあるんだけど、Sean Youngじゃないのかなあ。Mr.かどうかは知らんけど。

145 :Artane. ◆1o3c8RYIzjU0 :2015/08/10(月) 22:33:42.78 .net
>>142
環境ありがとうございます。

Windows7 + Atomタブレットですか…コンパイラがマルチスレッドにしてくれるのを前提にして書いてる辺りになにかあるのかもしれないですね。
どちらにせよ、サブとメインの同期モデルの問題があるとは思ってるのですが…
同期を取るタイミングをスマートにできるといいのですが、そうすると今度は動かないソフトが出てきてしまう。


>あと eFM77AV で F-BASIC V3.3 L10、OS-9 Level2(AV用)が
>起動できない。以前のバージョンは起動できたんだけど。
>MMR が変なのかと思って OS-9 Level 2(FM-77用)を試したら
>起動できたので、詳細不明。深追いしてない。

現物がないのでこちらでは現状対応が難しいですね…AV用がダメで77用が上手く行ったというのが、引っかかる。

>>143
試しました。
結構いいですね。
フレームレート低下回避の方法ってどんな感じでしょうか?

146 :武田 ◆bnZpPXJze51u :2015/08/10(月) 22:51:36.99 .net
CPUのクロックを動的に変更するためにダミーCPUを噛ましてますが、
run(int clock)に対して1クロックしか進めないのは細かすぎるかも、
という気がします。

動かないソフトが出ない範囲でもう少し大きくしてもいいかもしれません。

147 :ナイコンさん:2015/08/11(火) 00:26:20.28 .net
>>142
あと、FM77AV DEMO もだめでした。起動しません。
以前のバージョンは起動はしてました。(完走しませんでしたが)

148 :ナイコンさん:2015/08/11(火) 01:16:09.89 .net
サイクルスチール?

149 :87:2015/08/11(火) 01:37:03.93 .net
>>139
自分のVMwareゲスト(Debian)でmakeしてバイナリを実行。直したという部分は大丈夫っぽいです。
さて、新たな注文ですが、Screen Sizeの選択肢に関して。
・emumsx1でStretch ModeがDot by DotやKeep Aspectの場合に640x400にすると両脇に黒帯が出るのが気になる。
・ウインドウ表示の場合はWindow x1やWindow x2などのほうが良いのではないかと。アスペクト比の調整の有無が切り替えできるのは、それはそれで良いかもしれませんが。

150 :ナイコンさん:2015/08/11(火) 02:09:17.19 .net
void func()しててreturn func();してるのが気になるw
今時はそれがデフォなんじゃろか

151 :Artane. ◆1o3c8RYIzjU0 :2015/08/11(火) 11:45:33.17 .net
>>146
対処してみました。要は、dummycpuのクロックを問題が出ない範囲で低くすることで、
メイン/サブCPUが通常状態で2クロック/1 d_cpu[1|2]->run()動くようにしてみたのですが
…これが、現状で・要はevent.cppに手を突っ込まない上で「正しい」対処方法かどうかは今ひとつ自信が持ててない。
commit b388dc62ee0713554979d249d0ce977905ff483a です。

>>147
私の持っている77AVのデモは完走します。違うヴァージョンのものがあるのでしょうかね。

>>149
>・emumsx1でStretch ModeがDot by DotやKeep Aspectの場合に640x400にすると両脇に黒帯が出るのが気になる。
これは、元々そういうポリシーで敢えて作りこんでるので…今時の大抵のディスプレイのドット比は1:1ですが、
昔のそれはブラウン管の縦横比が4:3な影響で大抵が1:1.33だったりするので…その辺りを再現したいなというのがありまして。

>・ウインドウ表示の場合はWindow x1やWindow x2などのほうが良いのではないかと。アスペクト比の調整の有無が切り替えできるのは、それはそれで良いかもしれませんが。
拡大方式にWindow x0.5〜x4辺りを追加するというのはアリかも知れないですね。
フルスクリーン表示については、当面出来ないかなと思ってます(どういう風にメニューバーを処理するかを考えないといけないので)

152 :Artane. ◆1o3c8RYIzjU0 :2015/08/11(火) 13:40:07.15 .net
とりあえず、これで速度の方はどうでしょうか?

http://www1.axfc.net/u/3515699
MD5: 808efed2e1d35600282f30a81d77647c
SHA256: e006c98cffab3d72e2dc4514eb4f490b213036c7c57a5e7c7a991a2a4e8b463d

>>149
一寸考えなおして、「アスペクト比に応じてウィンドウの大きさを変える」
「倍率は(横基準で)0.5~8.0くらいまで(MSXなんかのように横256とかだと10.0くらいあってもいいかな?)0.5刻みで」
と言う方向で書きなおしてみます。時間がかかりそうですが…

153 :ナイコンさん:2015/08/11(火) 20:37:45.14 .net
ちなみに、武田さんのところのMSX1は512x384で画面を作ってますよ
MSX2のほうは周辺領域込みなので、さらに中途半端なサイズですね

154 :ナイコンさん:2015/08/11(火) 21:41:58.51 .net
>>151
ESXi上のFreeBSD 10.1-RELEASE-p16でfm77avのbuildをやってみました
clangだとエラーが出てしまい、考えるのも面倒だったので、とりあえずgcc 4.8.5でのbuildです
結果としてはFM77AVのDEMOは完走です
左下に表示されてるフレームレートも、概ね60fpsでたまに48fps程度まで下がることがある程度でした

155 :ナイコンさん:2015/08/12(水) 02:27:28.33 .net
>>152
さっそく試してみた。
フレームレートはかなり改善された。
(1) FM-77 DEMO実行結果
   eFM7 eFM77 eFM77AV
DEMO1 ○  ○  ○
DEMO2 △#1 △#1 △#1
DEMO3 ○  ○  ○
DEMO4 ○  ○  ○
DEMO5 ○  ○  ○
DEMO6 △#2 △#2 △#2
○を付けたものでも、たまにフレームレートが1桁まで落ちることがある。
フレームレートが落ちる場所は、動かす度に異なる。(一定していない、という
ことは、MAINとSUBの非同期絡み?)
#1 DEMO2 に入った直後に、MAINとSUBでデッドロックする事がある。
動きが滑らかでない。(表示される弾の数が少ない。)
  ターゲットの#がずれて表示される事がある。
#2 音楽が先に終わってしまう。(FM-7の実機でもそうなるが、ちょっと早すぎ。
  eFM-77/eFM77AVでSUBのサイクルスチールが効いてない?)
(2) eFM77AV 起動テスト
F-BASIC V3.0 L2.0    ○
F-BASIC V3.3 L10    × MAIN FDC DRQ/IRQ待ち(永久?)
OS-9 Level 2 for FM-77 ○
OS-9 Level 2 for FM77AV × 起動プロセス中にSUBシステム暴走
FM77AV DEMO       × 起動プロセス中にSUBシステム暴走
こちらはまだ深追いできてない。

156 :ナイコンさん:2015/08/12(水) 02:40:49.55 .net
ところで、FM-7/77/77AVって、
メインCPUとサブCPUの原発振って共通の 16.128MHz を使ってるので、
そんなに頑張って非同期対策しなくてもいいのでは?
(ただし、FM-7のメインCPUの速度を落とした時を除く)

あと、FM-77/77AV系の1.6MHzはどうやって作ってるか不明だけど、
少なくとも原発振は専用のものはないので、WAIT入れて作ってるのかな?

157 :Artane. ◆1o3c8RYIzjU0 :2015/08/12(水) 12:25:16.49 .net
>>155
FM-77のデモは私もテストしたいのですが、実家のどこかにあって未だ捜せてないのです_| ̄|○
実家遠いし…

Demo-2というと時間制限付きで遊べるデルフィスでしたっけ?テープ版や打ち込み版ではその問題が出ていないのが非常に引っかかりますね(´・ω・`)


>>156
確かにそうかも知れないですね。
只、非同期前提で書かないとややこしい事になりそうで。
これは、フレームワークとの相性的な部分で悩まされた事でもあります。
結局、非同期という事で書かないと問題が起こるというか。

FM-77のデモでのロックアップが相当気になりますねー。
もし可能なら、メインとサブのデバッガを起動して、
それぞれ止まっている前後の逆アセンブルとレジスタダンプを貼り付けて頂けると大きなヒントになるかも知れないので、お願いしますm(_ _)m

158 :Artane. ◆1o3c8RYIzjU0 :2015/08/12(水) 12:29:21.61 .net
>>157
ついしん。
OS-9L2に関しては現物が手元にも実家にもないので、同じように逆アセンブル等や
メイン側の$FD18〜20と$FD80〜9Fのダンプを頂けると解決出来るかも知れないです。
出来ないかも知れない。

159 :Artane. ◆1o3c8RYIzjU0 :2015/08/12(水) 13:10:13.31 .net
連投すいません。
eFM77AVではイニシエータROMに全くパッチを当てない方針なので、
仮にAV20/40のイニシエータROMを使ってる場合、機種判別でコケることがありえます。
特に、AV20/40系固有の機能を使うか使わないかをイニシエータROMにあるIDで判断してる場合、
多分100%の確率で暴走します。
とりあえず、eFM77AV40の登場をお待ちください>皆様

160 :ナイコンさん:2015/08/12(水) 21:44:37.19 .net
フレームワークがダメなんじゃない?

161 :ナイコンさん:2015/08/13(木) 00:53:26.85 .net
しかし国産AT互換機のエミュってありそうでないよな
まあ末期のワープロとかは難しいだろうけど、有名どころすら差異がなかったことにされてる気が

162 :Artane. ◆1o3c8RYIzjU0 :2015/08/13(木) 02:31:40.38 .net
>>161
そういえば、マハー○ーシャのパソコンのBIOSには何やら仕掛けがあったと訊きましたが…

163 :ナイコンさん:2015/08/13(木) 10:09:58.37 .net
eFP-1100

BASICからcasファイルでセーブして、その読み込みが出来ませんね。
wavだとOKです。

164 :ナイコンさん:2015/08/14(金) 02:21:40.35 .net
ふと思ったけど2ドライブのアクセスランプが緑色だと88等の2HD使用時とややこしいですね。

165 :ナイコンさん:2015/08/14(金) 14:43:46.87 .net
>>135
> ダイナブックのエミュってあるのだろうか?
> アランケイ版も見てみたい

暫定ダイナブック環境(1978年版)ならこちらで動かせます。
ジョブズが観てパクった版に近いUIがWebアプリプラットフォーム上に再現されています。
http://lively-web.org/users/bert/Smalltalk-78.html

使い方がわからない人向けにお薦めしたいのが
このエミュを使って作られた、アラン・ケイ自身によるプレゼンムービー。
https://www.youtube.com/watch?v=AnrlSqtpOkw&t=3m52s

こんなデモを1979年に観てたら、ジョブズならずも未来のPCはこうなると確信するはず。

166 :ナイコンさん:2015/08/15(土) 13:04:39.80 .net
age

167 :ナイコンさん:2015/08/15(土) 17:26:20.98 .net
>>165
78年にここまでの物があったとは!!

168 :ナイコンさん:2015/08/15(土) 17:47:12.26 .net
>>167
PC史におけるまさにオーパーツ的存在ですね。

169 :ナイコンさん:2015/08/15(土) 19:08:46.77 .net
PCじゃないような気がする

170 :ナイコンさん:2015/08/15(土) 19:09:40.85 .net
オーパーツなんじゃなくて今のPcがその構想に追いついてないだけ

171 :ナイコンさん:2015/08/15(土) 20:49:45.84 .net
>>169
> PCじゃないような気が

そうですか?

このバージョンの暫定ダイナブックOS(Smalltalk-78)は、よく知られたAltoではなく
8088を搭載したNoteTakerというれっきとしたポータブルPC上で動作していたもので、
くだんのWebアプリでもこのNoteTakerのエミュ上で動いています。

http://www.forbes.com/pictures/eiml45gfk/the-xerox-notetaker-portable-computer/

172 :Artane. ◆1o3c8RYIzjU0 :2015/08/17(月) 01:15:12.12 .net
eFM77AV。
デ○フォー○が(たぶん)動くようになりました。
問題は2つあって、
・ディスクのトラックの大きさが6250バイトでは足らない。
 これは、要は時分秒IDのセクタ2つで不安定データを読み込むついでに意味のあるデータを書き込んであった上に
 それ以外にも一部のトラックが18セクタありまして、サイズが足らなくなってたんですよね。
 とりあえず、このディスクだけの特殊現象というように書いてありますが、この手のプロテクトは少なくなかった気がするので…
 commit b5b06a88cd0ac895a0ea43b8d7d3aea844076366

・割込タイミングの問題で、オープニングで固まることが二分の一以上の確率で起こってた。
 多分、正常化出来たと思いますが、繰り返しテストを重ねないと確定できないです。
 commit 3ec5ad9bdd06de94e0a8eb0eb2d46c7fe9b18910 。

173 :ナイコンさん:2015/08/17(月) 01:33:58.23 .net
>>170
追いついてなくはないですよ。
LinuxデスクトップとかOLPCとかは一つの結実点ではあるんですよね。
普通になってるネット辞書やネット検索は、膨大なデータベースとして開かれてはいる。
OLPC辺りがやってる事業は、多分後10年もしない内に予想外の国や地域から凄腕の技術者集団を輩出するでしょうね。
その国からか、それとも留学先のアメリカや中国からかはわからないですが。

どちらかというと、それらを使う側の考えとか文化とかが追いついてない感じがしますが。

これは学校教育とか文化が悪い所があるんだけど、どうしてもコンピュータやネットに使われる方に人々を導いてしまう。

174 :武田 ◆bnZpPXJze51u :2015/08/17(月) 18:52:24.10 .net
>>172
あー、ディスクの回転数落としてフォーマットした口でしょうか。

自動的にトラック長を上げる仕組みを用意できればいいのですが、
Nの値に細工して、見かけのセクタ長を長くするパターン
(MZ-2500の九玉伝とか)もあって、難しいんですよね(苦笑)

#一部筋からのご要望で、現在小ネタの実装中です。
#もう1週間くらいで出来るかなーと思います。

175 :ナイコンさん:2015/08/18(火) 13:22:14.09 .net
小ネタの実装ということはFM-Xだと予想w

176 :ナイコンさん:2015/08/18(火) 15:17:32.95 .net
キーボードエンコーダーとか?

177 :ナイコンさん:2015/08/18(火) 17:56:12.69 .net
犯罪者は口をつぐんでしね

178 :ナイコンさん:2015/08/19(水) 09:17:30.40 .net
どこの誤爆だ?

179 :ナイコンさん:2015/08/19(水) 12:33:34.56 .net
ちょうどFM-7が話題に上がってるし
武田氏がネタとして仕込んどきましたとしてFM-X接続とかさ

180 :ナイコンさん:2015/08/19(水) 13:48:01.45 .net
FM-XってネタとしてはL4とかAV20EX程度はあるんじゃないの?
小ネタというならリレーサウンドとか赤外線ワイヤレス対応辺りが面白いかな?
結局nキーロールって再現できるんだっけ?

181 :ナイコンさん:2015/08/19(水) 14:11:51.38 .net
G.I.M.I.CとかのFM音源対応とか
ラズパイ用とか
IchigoJam+Pancakeとか

182 :ナイコンさん:2015/08/19(水) 15:15:02.80 .net
音源ならジョイスティック端子に繋ぐSDカードリーダをエミュレーションしよう。
原理的にはBASICからでも大容量ディスクに読み書き可能な筈だけど、そんな二階から目薬は聞いたことがないね。

総レス数 1000
355 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200