「さあ来た!ホームコンピュータ時代」掲示板

エミュレータ VJR-200 に関する話題の他、ナショナル JR シリーズを中心としたレトロ PC に関する内容ならなんでもお気軽にどうぞ。
不適切な内容は予告なしに削除します。



カテゴリ:[ PC/ネット/モバイル ]


49件の内、新着の記事から10件ずつ表示します。


[49] 最近気づいたこと・その2

投稿者: FIND 投稿日:2017年 8月15日(火)22時05分41秒   通報   返信・引用

あなたは知っていただろうか。BASICプログラムを高速ロードを使わず
LOAD[RETURN]
RUN[RETURN]
で実行するなら問題ないが、
LOAD:RUN[RETURN]
で実行するとBREAKキーが効かなくなることを。私はこの問題をエミュレータで気づいて「うわやっべー、こんなバグがあったのか」とデバッガで追ってみたのだが、6800コード内のNMIの部分はちゃんと呼ばれているのでJR内のコードで起きている問題と判明。これは追うのが面倒だなとげんなりしていた。
で、ふと思って実機で試したところ、なんと実機でも同様の問題が。というわけで、これは「仕様」です。私は悪くありません。ちなみに某エミュでも同様の結果。
なぜこうなるかと言うと、NMI処理をするかどうかを指定するアドレス0xbの値が0(しない)になってしまっているから。BREAKは効かなくてもCTRL+Cで止めることはできるし、一度停止すれば[0xb]!=0になるので、その後はBREAKが効くようになる。
LISTをスクロール中にBREAKが効きにくかったり(これも同じ原因)、JR-200のNMI処理は不安定ではなかろうか。つーかノンマスカバルなのにこんなに簡単にマスクされちゃっていいのか。




[48] 最近気づいたこと

投稿者: FIND 投稿日:2017年 8月15日(火)21時45分31秒   通報   返信・引用   編集済

アレにアレされちゃってる洋物ゲームのうちTMQという会社?のものは、特殊なフォーマットになっているので、新たなテープフォーマットを作らないことには対応できないと思っていた。
が、ふと某エミュのScript実行機能(今まで使ったことがなかった)を使ってみたところ、ちゃんと実行できるものもあることに今更気づく。しかし同じCJRを手動でマウントすると、こっちと同様に正常動作しない。
どうやらScriptの独自機能である、"CLOAD SF"と"CLOAD FF"という部分に秘密があるらしいのだが、ソースがあるわけでもないので手が出せず。
結局、テープの実物を解析しないと対応しようがないという結論に。しかしこれを日本で入手するのはほぼ不可能なのでやっぱり無理か。



[47] レトロPC総選挙

投稿者: FIND 投稿日:2017年 6月23日(金)23時42分21秒   通報   返信・引用

JR-300子ちゃん、当日の会場で結婚・引退を発表

というのを考えてみた。
---
それはともかく開発日記Android編だが、私はAndroidをナメていた。スマホアプリなんてユーティリティ作成みたいなもんだろ、と思ってたらとんでもはっぷんの複雑怪奇。
このまま付け焼き刃で押し通すと将来に禍根を残しそうなので一から勉強しなおすことにした。というわけで、しばらく進展はありません。とりあえずダイアログの実装にはきっちり文句を言いたい。



[46] 開発日記(Android編)

投稿者: FIND 投稿日:2017年 6月 3日(土)21時42分42秒   通報   返信・引用

私は最近までなぜかAndroid NDKというのは、Google様と契約して税金を払わないと使えないものと思い込んでいた。そしたらJavaレベルと同様に誰でも使えるらしいので、じゃあ今あるC++のソースそのまま持ってけるんじゃね?と思ってWindows依存のコードを削除して最低限の構成を作ってみたら、あっさり動いてびっくり。80年代のマイコン雑誌に書いてあった「C言語はBASICより移植性が高いぞ」ってのは本当だったんだね!という話。
しかし、コーディングよりはるかに大変だったのはNDK開発環境の理解。Android自体Windowsと比べてはるかに発展途上だったから短期間に色々変化しているのはしょうがないが、NDKに関してはさらに激しく変化している模様。ネットで資料を探しても現在の開発環境にあった資料はほとんどない。つーかいまだにEclipseで説明されてるものも多数。
仕方ないから本を買うかと思って調べてみたらこれもAndroid 4.x辺りを基準に書かれてたりして厳しい。結局試行錯誤しながらgradleだのcmakeだのなじみのないものと格闘するしかない。
というわけで、ここまでの開発はほとんどコーディングと関係ない部分で時間を潰したので、Android開発に慣れた人ならここまでは簡単にできるかと。



[45] 次なるものについて

投稿者: FIND 投稿日:2017年 6月 3日(土)20時06分45秒   通報   返信・引用

ちなみにAndroid版は公開まで行くかどうかは不明。現状はあくまでエミュレータが起動しただけでキーボードもなければUIもないし音もならない。なんせAndroid開発なんてほとんどやったことなかったので、「え?Androidってファイルダイアログもないの?」というレベルで困惑中。そんなところから自分で作らないといけないらしい。
さらにキーボードも一から作らないといけない模様。つーかAndroidって(Linuxって)リアルタイムキースキャンの概念がないのか?と困惑中。これがないとSTICK, PICKが動かないのだが。
そしてDirectSoundを使っていた部分はOpenSL/ESなるものに書きかえるしかないと思われるが、現状知識ゼロ。
というわけで、先はとっても長い。



[44] スワッシュバックラー動いてた

投稿者: FIND 投稿日:2017年 5月22日(月)23時32分11秒   通報   返信・引用

「キーボード処理が不完全」と書いたスワッシュバックラー。私はずっとLキーで剣を出す、Lキーを戻すと元の体勢に戻るだと思っていたのに、エミュレータの動作でキーを離しても戻らないので、キーを離したのが認識されてないと思っていた。
が、久し振りに実機での動作を確認したところ、実機でもキーを離しても戻らないので問題なかった模様。ということで、スワッシュバックラーは動作確認入りということにします。
これで残ったのはマーズカーズのみ。これとスワッシュバックラーで共通しているのは、IRQをフックしてテンポタイマーも使わず発音も自前ルーチンで処理していること。
特に問題が起きている部分は3msecごとに割り込みをかけると言う、よーやるわってレベルのことをしているので、微妙なタイミングが原因っぽい。ちょっと細工をすれば動くのは確認済みだが他のプログラムに副作用が出てしまうので対策できず。
正直それほど面白いゲームでもないのでまあいっかという気もする今日この頃。ちなみにあっちでは動作しますが、動作速度が一部おかしいです。



[43] Re: 諸々

投稿者: FIND 投稿日:2017年 5月18日(木)00時21分43秒   通報   返信・引用 > No.42[元記事へ]

滝井様
毎度でございます。

> FIND様、ソース公開ありがとうございます&おめでとうございます。

私、C/C++プログラマじゃないので本当は人様にお見せできるようなコードじゃないんですけどね(笑)。若い頃なら恥ずかしくて出せないものですけど、歳を取って図太くなったので恥ずかしげもなく公開してしまいました。

> PasocomMini、私はFM-7が出たら欲しいのですが、ROMがネックですよね。持ってるROMデータを転送すれば実機と同じに!というふうだと良いのですが。

ですよね。エミュレータならROMを転送することで実機相当になって当然という気もしますし。今度の展開に注目ですね。

> 最近JR2Rescueも使わせて頂き、カセットテープの吸出しを進めています(色々お世話になりっ放しです)。
> 8千円程度の安いラジカセですが、今のところ成功率90%ほどで、結構イケています。
> ただラジカセ側を最大ボリュームにすると、音が大き過ぎるためのPC側の保護機能でもあるのか、録音してくれない(無音になってしまう)ようで、最大ボリュームの半分位だとうまくいくことが多いようです。そういう例もあるということでご参考までに。

報告ありがとうございます。JR2Rescueはまだテープの読み込みがどんなもんか全く知らない頃に100%自己流で書いたので、エミュレータ作成するうえで知ったJR内部の処理と比べると正直イマイチなのです。
本当は書きかえるべきなんですが、WAV→CJRの処理っていずれにせよ結構面倒なので(^^;、ついつい見なかったことに…



[42] 諸々

投稿者: 滝井 投稿日:2017年 5月17日(水)22時16分1秒   通報   返信・引用

FIND様、ソース公開ありがとうございます&おめでとうございます。
これで将来Windowsが廃れたとしても移植の道も開けますし、FIND様のお陰でJR-200も永久不滅でありましょう。

PasocomMini、私はFM-7が出たら欲しいのですが、ROMがネックですよね。持ってるROMデータを転送すれば実機と同じに!というふうだと良いのですが。

最近JR2Rescueも使わせて頂き、カセットテープの吸出しを進めています(色々お世話になりっ放しです)。
8千円程度の安いラジカセですが、今のところ成功率90%ほどで、結構イケています。
ただラジカセ側を最大ボリュームにすると、音が大き過ぎるためのPC側の保護機能でもあるのか、録音してくれない(無音になってしまう)ようで、最大ボリュームの半分位だとうまくいくことが多いようです。そういう例もあるということでご参考までに。
…こう書いていると、何やらPiOに掲載されてたソノシート読み取り成功例を思い出しますが…



[41] 開発日記

投稿者: FIND 投稿日:2017年 5月15日(月)00時10分15秒   通報   返信・引用

さて、今回の更新で開発当初に作ったTO DOリストはすべてチェック済みになったので、機能的には開発完了。実は最後に一つ、CJRに変わるテープフォーマットを考えるかどうかがあるけど、これはそのうち考えることにする。
で、今後は互換性の向上ということで割り込み周りを見直していたところ、さっそくダメっぽいところを見つけたので修正したらスワッシュバックラーがそこそこ動くようになる。まだキーボードの処理が不完全だけど、あっちよりはまともに遊べるかと。
それともう一つ、以前ここに上がった外人さんのサイトにあるVSYNC描画デモ。CRTCにそれっぽい処理を入れる+割り込み処理の見直しで一応動いた。すっごいチートで実機の動作とはかけ離れてるけど、正確な動作がわからないのでとりあえずこれで良しとする。
と言ったところで、今回公開したソースを見て中をいじってやろうと思ってる人は今週中に新しい版を出すので、それまで待ってください。割り込み周辺結構変わってるので。



[40] PasocomMini

投稿者: FIND 投稿日:2017年 5月11日(木)21時52分29秒   通報   返信・引用

ハル研究所、MZ-80Cエミュレータ付きの手のひらPC「PasocomMini」
http://pc.watch.impress.co.jp/docs/news/1059128.html
これは久しぶりにレトロPC界隈がにぎわうネタ。まあJRにまでシリーズが到達することはあり得ないので低みの見物、つーか実機持ってる奴はいらないか。
しかしMZはROMがほぼないからオールマシン語のプログラムなら大体動きそうだけど、PC,FMの場合ROMルーチンコールしてるのは動かないわけで、既存のプログラムは結構選びそうな気も。……はっ、ということは「クリーン設計」のJR-300はパソコンミニ化にぴったりではないか!?
それはともかく、個人的には中身はいらないので、初代X1(もちろんディスプレイテレビ付きの赤)とMZ-2000のフィギュアだけ欲しいかも。


レンタル掲示板
49件の内、新着の記事から10件ずつ表示します。

お知らせ · よくある質問(FAQ) · お問合せ窓口 · teacup.レンタル掲示板

© GMO Media, Inc.