作りたいものに妥協しないために、会社を興してまで完成させた作品です。うれろー、うれろー。

2014年08月15日

コレクション整理中、その2

帰省前に早起きして昨日の続き。

日立 MB-16000
HITACHI_MB-16000_front.JPG HITACHI_MB-16000_back.JPG

HITACHI_MB-16000_with_Monitor_front.JPG HITACHI_MB-16000_with_Monitor_back.JPG

日立 2020
HITACH_2020_front.JPG HITACH_2020_back.JPG HITACH_2020_keyboard.JPG

SORD M223 markIII
SORD_M223_markIII_front.JPG SORD_M223_markIII_back.JPG SORD_M223_markIII_keyboard.JPG

SORD M243EX
SORD_M243EX_front.JPG SORD_M243EX_back.JPG

SORD M343SX
SORD_M343SX_front.JPG SORD_M343SX_back.JPG

SORD Future32
SORD_Future32_front.JPG SORD_Future32_back.JPG

SEIKO MAP-1010 MAP先生
SEIKO_MAP-1010_front.JPG SEIKO_MAP-1010_back.JPG SEIKO_MAP-1010_keyboard.JPG

帰省するため、連休中はこれで打ち止め?
posted by 武田 at 09:37| Comment(0) | TrackBack(0) | 開発 | このブログの読者になる | 更新情報をチェックする

コレクション整理中

怪しいコレクションの整理中です。
取り敢えず写真だけ、ぺたぺたと。

CANON BX-1
CANON_BX-1_front.jpg CANON_BX-1_back.jpg CANON_BX-1_top.jpg

CASIO FX-9000P
CASIO_FX-9000P_front.jpg CASIO_FX-9000P_back.jpg CASIO_FX-9000P_keyboard.jpg

CASIO FP-5700
CASIO_FP-5700_front.jpg CASIO_FP-5700_back.jpg CASIO_FP-5700_keyboard.jpg

CASIO System85
CASIO_System85_front.jpg CASIO_System85_back.jpg CASIO_System85_keyboard.jpg

EPSON KX-1
EPSON_KX-1_front.jpg EPSON_KX-1_back.jpg EPSON_KX-1_keyboard.jpg

EPSON KX-5
EPSON_KX-5_front.jpg EPSON_KX-5_back.jpg EPSON_KX-5_keyboarad.jpg

EPSON QC-10II
EPSON_QC-10II_front.jpg EPSON_QC-10II_back.jpg EPSON_QC-10II_keyboard.jpg

NEC N5200モデル05
NEC_N5200model05_front.jpg NEC_N5200model05_back.jpg NEC_N5200model05_keyboard.jpg

TOMCAT PCX-1800
TOMCAT_PCX-1800_front.jpg TOMCAT_PCX-1800_back.jpg TOMCAT_PCX-1800_keyboard.jpg

三菱電機 MULTI-16
MITSUBISHI_MULTI-16_front.jpg MITSUBISHI_MULTI-16_back.jpg MITSUBISHI_MULTI-16_keyboard.jpg

三洋電機 MBC-2000
SANYO_MBC-2000_front.jpg SANYO_MBC-2000_back.jpg SANYO_MBC-2000_keyboard.jpg

三洋電機 MBC-5030
SANYO_MBC-5030_front.jpg SANYO_MBC-5030_back.jpg

沖電気 if800モデル10
OKI_if800model10_front.jpg OKI_if800model10_back.jpg OKI_if800model10_top.jpg

SEIKO 5900
SEIKO_5900_front.jpg SEIKO_5900_back.jpg SEIKO_5900_keyboard.jpg

SEIKO 5900B
SEIKO_5900B_front.jpg SEIKO_5900B_back.jpg SEIKO_5900B_keyboard.jpg

SEIKO 9100IIL
SEIKO_9100IIL_front.jpg SEIKO_9100IIL_back.jpg SEIKO_9100IIL_keyboard.jpg

ソフィアシステムズ SA700M
SophiaSystems_SA700M_front.jpg SophiaSystems_SA700M_back.jpg SophiaSystems_SA700M_keyboard.jpg SophiaSystems_SA700M_side.jpg

アドテック IDS-7000
ADTEK_IDS-7000_front.jpg ADTEK_IDS-7000_back.jpg ADTEK_IDS-7000_top.jpg ADTEK_IDS-7000_side.jpg

日野電子 CEFUCOM-21
HinoDenshi_CEFUCOM-21_front.jpg HinoDenshi_CEFUCOM-21_back.jpg HinoDenshi_CEFUCOM-21_top.jpg HinoDenshi_CEFUCOM-21_keyboard.jpg

湯浅教育システム PM-1001 ヤルキー
YUASA_PM-1001_front.jpg YUASA_PM-1001_back.jpg YUASA_PM-1001_top.jpg

東芝 PASOPIA5
TOSHIBA_PASOPIA5_front.jpg TOSHIBA_PASOPIA5_back.jpg TOSHIBA_PASOPIA5_top.jpg

東芝 PASOPIA700
TOSHIBA_PASOPIA700_front.jpg TOSHIBA_PASOPIA700_back.jpg TOSHIBA_PASOPIA700_keyboard.jpg

システムズフォーミュレート BUBCOM80
SystemsFormulate_BUBCOM80_front.jpg SystemsFormulate_BUBCOM80_back.jpg SystemsFormulate_BUBCOM80_top.jpg

ワコーインターナショナル MARVEL2000
WakoInternational_MARVEL2000_front.jpg WakoInternational_MARVEL2000_back.jpg WakoInternational_MARVEL2000_top.jpg

特に珍しそうなもの中心にアップしてみました。
本日はここまで。後日、追加します。
posted by 武田 at 02:03| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2014年05月26日

PC-6001/6601のサブCPU

http://homepage3.nifty.com/takeda-toshiya/00tmp/pc60_66_88.zip

PC-6001/6601のサブCPUを、ガチンコでエミュレーションしてみました。
土曜のP6オフのとき、一部筋の方にお話しした件のやつです。
キーボードは動いてますが、CMTは読み書きいずれもまだ機能していません。

別件で、PC-8801でCDOS-IIがブートしなくなっていたのを修正しました。

正式リリースは、また後日にでも。


>tanam様
PC-6001/6601の実装を、かなりもりっと書き換えてしまいました。

ソースが大幅に変わっている点は、
KEYBOARDクラスを、疑似サブCPUと、タイマ割り込み/割り込み管理に分離したのと、
SYSTEMクラスを、PC-66の内蔵フロッピーと、PC-6031に分離した辺りです。
また、サブCPUで、DATARECクラス由来の機能していないCMT関連コードを整理しています。

その他、CRTKILL信号をサポートしたり、表示期間中にCPUにBUSRQを投げるようにしたり、
PC-6601で、内蔵フロッピーと外部フロッピーを切り替えられるようにしたり、
タイマー割り込み関連を、VLINEイベント駆動から、CALLBACK駆動に書き換えたりしています。


(2014/5/27 1:20追記)
CMTの読み込みについては、ガチンコでサポートできました。
wavそのままでも読み込めますし、p6形式の場合は、内部的にwavの波形を合成して、
それをガチンコで読み込むようになっています。

CMTの書き込みは、まだまだです。
出力波形を見ると、1200Hz/2400Hzの個々のパルスはちゃんと生成できているのですが、
総体として、フォーマットに従った内容になってないみたいです。

仮に、従来の疑似サブCPUと同じレベルで、p6形式で保存できるようにしておきました。
拡張子にwavを指定すると、内部的にwavの波形を合成して、それを保存するようになっています。

仮バイナリのアップ先は、昨日と同じURLになります。
posted by 武田 at 04:17| Comment(1) | TrackBack(0) | 開発 | このブログの読者になる | 更新情報をチェックする

2014年05月09日

PC-6001/6001mk2 + PC-80S31K

http://homepage3.nifty.com/takeda-toshiya/00tmp/pc6001.zip

PC-6001/6001mk2 + PC-80S31Kです。
DISK.ROMがある場合、PC-80S31Kが有効となります。
Sword-OSがブートすることを確認済みです。

(2014/5/10 1:00追記)
>morian様
|.、_ ,。、
|!j´⌒ヾゝ
|'ィハハハ 〉
|ノ゚ ヮ゚ノノ <ミテマスヨー
⊂ir ´
|んiゞ
|'l_ノ

Twitterはやってないけど、その筋の方々のTwitterは時々覗いてます。

#X1のサブCPUのガチンコエミュレーション用に8049コアもサポートしてるんで、
#P6のサブCPUとかPC-6031とかもガチンコでサポートしてみたいなーとか言ってみる(を
posted by 武田 at 00:13| Comment(0) | TrackBack(0) | 開発 | このブログの読者になる | 更新情報をチェックする

2014年05月01日

久し振りのFMR-50/60

久し振りに、FMR-50/60を弄っていみました。
i286/i386コアをMAMEの最近の版に差し替えたついでの動作確認用という説もあり(苦笑)

140501-2.png140501-3.png

主に、CPUの種類毎にi286/i386/i486それぞれのバイナリに分割しました。
i386/i486版は、まだ実機のIPLで起動できていませんが、
内蔵の互換IPLで、取り敢えずハードディスクからMS-DOSを起動できました。
i286ではインストールできなかった一太郎Ver.5も動作するようになっています。

後は、Windows 3.1とか1B/noteとかがブートするようにするのが目標です。
FMR-60/70/80のACRTCの実装も何とかしないといけませんね。
posted by 武田 at 00:34| Comment(3) | TrackBack(0) | 開発 | このブログの読者になる | 更新情報をチェックする

2014年04月09日

ePX-7リリースと、その他いろいろ

実はエイプリルフールネタの積りだった、ePX-7を漸くリリースしました。

140408-1.png140408-2.png140408-3.png140408-4.png

P-BASICから、CALL LDでゲームを起動するところまでは進んでいます。
あとはVDPとの画面合成回りを修正すれば、そこそこ動作するんじゃないかなと思います。

レーザディスクのイメージは、*.ogv形式も一応そのまま使えます。
ただし、DirectShowの*.ogvフィルタが重たいので、AVI形式に変換した方が快適です。


MS-DOS Playerですが、久しぶりにi286版を更新しました。
元々、i386版をリリースしたとき、安定するまでの繋ぎのつもりで残しておいたのですが、
速度重視の方にはまだ需要があったみたいですね。

int 10h/16hなど、PC/AT周りの機能は未実装です。
純粋なDOS汎用のコンソールアプリを高速に動かす向きでご使用ください。


こちらも久しぶりに、Emu5も更新しています。
M5用の*.CAS形式のテープイメージを、そのままロードできるようになっています。
posted by 武田 at 00:09| Comment(13) | TrackBack(0) | 開発 | このブログの読者になる | 更新情報をチェックする

2014年02月26日

MS-DOS Playerと、DoDiaryとかFDとか

河口湖在住ですが、先週の大雪は大変でした。
ようやく日常に戻ってきた感じです。

最近はMS-DOS Playerのプチ作業中です。

VTDOSの守備範囲というか、拙作に期待されている範囲じゃない気がしますが(苦笑)、
INT 10H/INT 16Hの実装を進めています。
主に、DoDiaryとかFDとかをサポートしたいなあというのが目的です。

まだリリース前ですが、作業中のファイルです。
http://homepage3.nifty.com/takeda-toshiya/00tmp/msdos.zip

こっちの作業が一段落したら、yaPC-6001の取り込みとかMZ-1500とかの作業を
進める予定です、もう少しお待ちください。

140226-1.png
DoDiaryは、素の1.55ではファイルの保存に失敗してしまうのですが、
(日付を取得して、2014.DDNというファイル名を生成するのに失敗している)
Windows用にパッチをあてたWDD.COMであれば、ちゃんと動作するようです。

素の1.55は、Windows2000のコマンドプロンプトでも正常動作しませんでしたが、
Windows 98SEのコマンドプロンプトではOKでした。うーん。

140226-2.png140226-3.png

FDは、一応ちゃんと動いてる感じです。
あまり使い込んでないので、どこかしらで未実装のサービスを叩いてしまって、
落ちる箇所があるかもしれません。

140226-4.png140226-5.png

FILMTNは、一見動いてるっぽいのですが、プログラムを実行しようとすると、
そこで落ちてしまいます。

親プロセスのPSP内のバッファに、/C (プログラム名).EXEという文字列を生成する
ところまでは実行されているっぽいのですが、そのままプログラムを起動せずに、
FILMTNが正常終了してしまってます。
内蔵の386ディスアセンブラで処理を追っかけていますが、いまいち状況がわかりません。

ちなみにFILMTNでは、ファイル一覧の取得に、FCBを使ったファイル検索を実行しています。
FCB絡みの処理は未実装だったので、ファイル検索とファイル削除だけ実装しておきました。


(2014/2/27 0:45追記)
素のDoDiary Version 1.55が動作するようになりました。
仮バイナリは、昨日と同じURLです。

140227-1.png

このソフトは、実行モジュールのパスを取得するため、環境変数テーブルの末尾を検索します。
このとき、テーブル長は最大400Hであると想定しています。
しかし、現在のWindowsでは、環境変数が増えて、テーブルがもっと大きくなっているため、
実行モジュールのパスの取得に失敗していたようです。

そこで、msdos -e dd.comのように、-eを付けて起動すると、最低限の環境変数として、
COMSPEC/INCLUDE/LIB/PATH/PROMPT/TEMP/TMP/TZのみホスト環境から読み込むような
仕組みを追加してみました。

また、int 16hでキー入力を受け付けるとき、E0hから始まる特殊キーと漢字を、それぞれ
正しく入力できるように修正しています。


(2014/3/1 0:15追記)
LIST.COMが動作するようになりました。
例によって、仮バイナリは先日と同じURLです。

140301-1.png140301-2.png

INT 10H,AH=FEHで仮想VRAMのアドレスを取得して、VRAMを書き換えてから、
INT 10H,AH=FFHで画面に反映するのが一般的な作法なのですが。
LIST.COMは、VRAMの内容を書き換えても、INT 10H,AH=FFHを実行しません。
仕方がないので、INT 10H,AH=FEHが実行されて、AH=FFHが実行されない場合、
VRAMが書き換えられたら即画面に反映するようにしました。

その他、INT 21H,AH=4EH/4FHで、ファイルが見つかった場合はAX=0Hとしたり、
INT 16HのAH=00H/01Hと10H/11Hの挙動の違いを変えたりしています。

もう少し作業を進めたら、正式リリースしようかと思います。


(2014/3/5 22:20追記)
FDでファイルのリネームに失敗する問題を修正しました。

FDでは、リネーム時に、新しい名前のファイルが既に存在しないか、ファイルの検索を
行うことでチェックしています。
従来のファイルの検索処理の実装では、検索マスクでボリュームラベルが有効な場合、
常にボリュームラベルを見つけるような処理になっていました。
このため、新しい名前のファイルが常に存在していると判定されてしまっていたようです。

ファイル検索処理を、ボリュームラベルを見つける際、指定された名前のパターンに
一致するかをちゃんとチェックするように修正することで、問題が解決しています。

#もうそろそろリリースかなあと思いますが、もうちょい弄ってからにしようかなと。


(2014/3/12 0:30追記)
140312-1.png

JR運賃計算システム MARS for MS-DOSが動作するようになりました。
Turbo Pascalのランタイム内で、CONデバイスを開くにを失敗してたのを修正しています。
正式リリースしていますので、ダウンロードは本サイトにて。

他にも、重要なソフトで動かないものがございましたら、ご連絡プリーズです。

VZエディタは?、とか聞かれそうですが、実は使ったことないんですよね(苦笑)
DOS時代はもっぱら98上でSEDITの人でしたし、Windows移行後はQXエディタ一筋で。
時々ヤフオクに出品していないかなーと覗いてるので、まあ入手できたらということで。
posted by 武田 at 00:47| Comment(19) | TrackBack(0) | 開発 | このブログの読者になる | 更新情報をチェックする

2013年10月14日

引っ越しました

新居に引っ越しました。
生活の方も落ち着いてきましたので、倉庫から器材の運び込み中です。

131014-1.jpg
取り敢えず、一体型中心に、収納的に始末の悪いものから搬入しています。
大物用の奥行き60cmのスチールラック、既に半分近く埋まっているんですが(苦笑)

131014-2.jpg
奥のスチールラックは、上の段から、
ソフィアシステムのSA-700M、アドテックのIDS-700、オズボーンのOsborne-1、
CANONのAX-1とBX-1、日野電子のCEFUCOM-21、
三洋電機のMBC-2000とMBC-5030、沖電子のif800 model10、

131014-3.jpg
服部セイコーのSEIKO 9100IIL、5900と5900B、EPSONのKX-5、
ソードのM223 markIII、西部電機のSEMAPT-200(OEM?)。

131014-4.jpg
手前のスチールラックは、余り珍しいものはありません。
上の段から、SHARPのMZ-1200とMZ-2000、
MZ-80K2E、MZ-80C、MZ-80B2、

131014-5.jpg
後は日立のBASIC MASTER Lv3(MB-6890)とLv3 Mk5(MB-6892)。

131014-6.jpg
おまけで、たまたま部屋に転がっていた微妙系ハンドヘルド機の諸々。
富士通のFM16πとFMR-CARD、NECのPC-8201、EPSONのPC-486Portable、後はアップルのeMate200。

珍しい機種を搬入したときにでも紹介したいと思います。
posted by 武田 at 23:39| Comment(4) | TrackBack(0) | 開発 | このブログの読者になる | 更新情報をチェックする

2013年08月01日

PC-88とX1のタイミング調整、完結編

ここ最近、結構な工数を投入していたPC-88とX1のタイミング調整ですが、
今晩のリリースで漸く一段落つきました。

くれゆに様のサイトでPC-88のメモリウェイトの調査が公開されたり、
X1センターの佐藤様からX1のVRAMのウェイトの情報を頂いたり、
といったことがトリガーで始まった作業でしたが。

そのまま勢いで、MB8877やuPD765Aを、フロッピードライブの回転速度に
あわせたタイミングで動作するようにしたり、
Z80DMAのバスリクエストや開放、データ転送に掛かる時間を再現したり、
それに合わせて各CPUにDMA中のクロックだけ空転する処理を入れたり。

思いのほか、大工事になってしまいました(苦笑)
FDCのタイミング調整は、来年辺りにやる予定だったんだけどなー。

130801-1.png

X1で長年の懸案だった、アークスのオープニングの暴走が解決したり、
PC-88のヴァリス2のオープニングが、結構な按配で動くようになったり、
投入した工数に見合うだけの成果は得られたんじゃないかなあと思います。

かなり気合入れて作業しましたので、よろしければチェックプリーズです。


(2013/8/4 2:15追記)
仮バイナリを以下にアップしました。
http://homepage3.nifty.com/takeda-toshiya/00tmp/x1.zip

X1turboでD'がリードエラーになる問題を修正しました。
Z80DMAの問題で、最後の1byteを読みに行かずにLOST DATAしてたようです。

TVRAMのウェイトを、仮に0に変更しました。
PCG定義で失敗するソフトで、これで動くようにならないかご確認お願いいたします。
Worryは、先日の修正より以前から動いてないようです。
これとは別件の問題なんじゃないかと思います。


(2013/8/6 1:50追記)
アルファの件の対応をした仮バイナリをアップしました。
URLは上記と同様です。

ディスクの読み込みが遅い件ですが、スキューの影響のようです。
D88形式であれば、実ディスク上のセクタの並びが確認できるのですが、
2D形式などのベタイメージではその辺の情報がわかりませんので、
セクタ番号順に並んでいると仮定してトラックイメージを作っています。
そのため、最悪のケースで、次のセクタを読むのにディスクが1周回るまで
待つことになってしまって、タイミングがずれるようです。

ゲーム開始後、画面の右上が化ける件は、ちょっと難しいです。
軽くログを確認した限りでは、ディスクを読みつつ何か別の作業をしてて、
そちらが終わったら、ディスクの読み込みが完了していなくても、
Z80DMAをリセットして、読み込みを打ち切ってしまっているようでした。
従来の実装では、ディスク読み込みが高速だったため、問題なかったのですが。

取り敢えず、ベタイメージの場合は、次のセクタを読み込むまでの待ち時間を
固定値にするのと、アルファ限定で、ディスクの読み込み速度を速くすることで
逃げています。


(2013/8/7 0:30追記)
DOMEでFM音源を認識しない不具合を修正しました。
仮バイナリのURLは同上。

FM音源にデータを書き込んで、ステータスのBUSYがたつのを確認することで、
FM音源の存在判定をしていました。
現状の実装では、常にBUSYはオフになっていたのが問題だったようです。


(2013/8/8 1:40追記)
メインサイトの方で正式リリースしました。
仮バイナリの変更のほか、テキスト画面の表示上の不具合も修正しています。


(2013/8/9 0:40追記)
130809-1.png
X1turboでローグアライアンスが起動しない件の修正をしました。
ついでにCZ-8BM2とマウス対応も。

#後はWorryとばってんタヌキかな?こっちはまだ目処が立ってません。
#音関係もちょっと時間ください。


(2013/8/10 2:00追記)
130810-1.png
テープ版のWorryが動作するようになりました。
APSSもサポート出来てるような、出来てないような。

明日から帰省するため、数日IP Unreachableになるかもです。


(2013/8/23 1:00追記)
130823-1.png130823-2.png
ばってんタヌキが起動しない件、ZENONでスペースキーに反応しない件を修正しました。
仮バイナリは以下略。

ばってんタヌキは、EMMが存在する場合に、ディスクを丸ごとEMMに読み込みますが、
このときトラック0の存在しないセクタを読みにいくようになっています。
このとき、REC NOT FOUNDを返すと、存在しないセクタを延々と読もうとして、
結局タイムアウトしてしまっていたようです。

取り敢えず、ドライブレジスタを弄った後、最初にセクタが見つかるまでは、
REC NOT FOUNDを返さないように修正しましたが、これでいいのかなあ。

ZENONは、キーを押してサブCPUから割り込み要求があったときに、
Z80では割り込みは発生しないけど、サブCPUにベクタとキー情報を読みに来るようです。
このとき、サブCPU内で、次の割込みが発生しなくなってしまっていました。
割り込みへの応答でなくても、サブCPUからデータを受信したら、割り込み状態を
解除するように修正することで解決しています。

#別件が終わったらリリースします。
posted by 武田 at 02:07| Comment(9) | TrackBack(0) | 開発 | このブログの読者になる | 更新情報をチェックする

2013年07月27日

X1などのタイミング調整

ここ最近は、主にX1のタイミング調整をやっていました。
以下、仮バイナリです。(PC-88とMZ-2500はおまけ)
http://homepage3.nifty.com/takeda-toshiya/00tmp/pc88_x1_mz25.zip

FDCで、データ転送やマルチセクタ時の次のセクタの発見に掛かる時間を、
データ密度と回転数から求めるようにしたり、
(プリアンブル、ポストアンブルを考慮してないので、やや不正確)
Z80DMAで、バイト転送モード以外でちゃんとCPUにバスを要求するようにしたり、
転送に掛かったクロック数だけCPUを止めてやったり、
VRAM/TVRAM,PSG,サブCPUにアクセスする際にウェイトを掛けてやったり、

かなり実機に近いタイミングで動くようになったんじゃないかと思います。
アークス2のオープニングも、変なパッチなしで動作するようになりました。

MB8877だけでなく、uPD765Aも同様の修正をしていますので、
PC-8801の方もそれなりに改善されてるんじゃないかなと思います。

#X1のVRAMウェイトは、例によってX1センターの佐藤様に情報を頂きました。
#多謝多謝です。
posted by 武田 at 02:22| Comment(0) | TrackBack(0) | 開発 | このブログの読者になる | 更新情報をチェックする
まるくん、がんばれ、ちょうがんばれ