tunozemichanの日記 / tunozemichan's diary

SORD社のコンピューターM68やM68MXの解析についての備忘録です。This blog is a memorandum about the analysis of SORD's computers M68 and M68MX.

2021-01-01から1年間の記事一覧

SORD M68のBOOT ROM解析(Z80DMAのアドレス判明)

SORD M68のDMACはZ80DMAです。このDMACはとても複雑なコマンド体系ですが、解析者にはとても素晴らしい点があり、それはコマンドチェーンの最後が多くの場合、CF 87で終わる点です。今回もそれを足掛かりに探しました。 Z80DMAのI/Oアドレス 0xA1? 0xCC←こっ…

SORD M68のBOOT ROM解析(CRTC=HD46505SPのアドレス・設定判明)

BOOT ROMを吸い出す際にアドレス線の高位に配線間違いがありました。その為、正しいBOOT ROMファイルが得られていませんでした。修正したことで今度は正しいファイルが得られたと思います。なお、Z80 SIOの設定に誤りはありませんでしたが、一部不合理な部分…

BOOT ROM analysis of SORD M68 (Z80SIO address and settings revealed)

I finally removed the BOOT ROM chip from the SORD M68 board. BOOT ROM. TOSHIBA TMM333P. The BOOT ROM chip is Toshiba's TMM333P. This chip has a different pin layout than the major 2732 and 2764 ROMs, so it cannot be read with my ROM writer…

SORD M68のBOOT ROM解析(Z80SIOのアドレス・設定判明)

SORD M68のBOOT ROMを基板から取り外しました。 BOOT ROMとして東芝のTMM333Pが使用されています。これはピン配置がメジャーな2732や2764とは違っていて、所有しているROMライターでは読み出しできません。 ピン配置は分かっているので、Arduino Mega2560を…

Connecting SORD M68 to a VGA monitor

SORD M68 has an RGB port and a B/W (monochrome) port as screen outputs. The signals coming out of the RGB port are as shown in the following figure. Since H-Sync and V-Sync are inverted, you can use an appropriate circuit to invert them an…

SORD M68をVGAモニタにつなぐ

SORD M68には画面出力としてRGBポート、B/W(モノクロ)ポートがある。RGBポートから出ている信号は以下の図の通りである。 H-SyncとV-Syncは反転しているので、適当な回路で反転してVGAのそれぞれの信号に入力してやればよい。 モニタは24kHzが映るものなら問…

CP/Mディスクイメージ(ベタトラックデータ)をFlashFloppyで読み込む設定

ディスクイメージを操作する際、生トラックデータをいじるのが最も直截的かつ簡単な方法です。HxC_FloppyEmulatorは強力ですが、いちいちHFE形式に変換するのが非常に面倒です。HxC_FloppyEmulatorでも生トラックディスクは対応しているようですが、フリーの…

l3diskexを使ってSORD M68用CP/M-68Kのブランクディスクイメージを作り、ファイルをやり取りする。

l3diskexを使って、M68用CP/M-68Kのブランクディスクイメージを作成し、更にそこにファイルを書き込み、hfe形式に変換した上で、実機上でファイルを実行できることを確認しました。 1. ブランクディスクイメージの作成 l3diskexを起動して、「新規作成」で、…

SORD M68の背面DIPスイッチ4番について

KDOSのマニュアルを見たところ、背面DIPスイッチの4番は、OFFならフロッピーブート、ONならハードディスクブートとのこと。 この写真ではフロッピーブートになっていることが分かる。

How to access the disk image of CP/M-68K for SORD M68 using cpmtools (PART 2)

I have found even more reasonable parameters for the SORD M68 CP/M-68K disk. I have written a similar article in the past, but I am posting it as a new article. I received a disk image of CP/M-68K (here called cpm68k_image.hfe) from a kind…

SORD M68用CP/M-68Kのディスクイメージにcpmtoolsを使ってアクセスする方法 その2

SORD M68 CP/M-68Kのディスクのさらに妥当なパラメータが判明しました。差分だけ書くのも読みづらいので、以前投稿した内容に修正を加えて、投稿します。以前のものはobsoleteです。 CP/M-68Kのディスクイメージ(ここではcpm68k_image.hfeと呼びます)をFace…

SORD M68でCPM-68K

SORD M68でCPM-68Kを起動できました。構成は、SORD M68+HxC FDDエミュレータ+CPM-68Kのhfeイメージです。 SORD M68の内臓FDDなしバージョンを入手したので、このメインボードを修理中のFDD内臓筐体に入れて起動実験を行いました。 DIPスイッチについてはFD…

SORD M68 FDD詳細

SORD M68のFDDの詳細について記録しておく。 SORD M68のFDDは、MITSUBISHI M4854-342Mである(以前の記事では、枝番がないと記載したが、M68はリビジョンがいくつかあり、今回分解したものは枝番ありでした)FDDエミュレータとしてHxCを用いることができる。…

SORD M68MXのDIPスイッチについて

SORD M68MXの背面には8p-DIPスイッチがあります。この後半、5,6,7,8のスイッチを操作することで、アドレス0xe20781の値が変化します。この変化により、BIOSに格納されたSunBugというモニタプログラムが起動します。 8p-DIPスイッチ(写真はデフォルトの状態)…

SORD M68MXのメモリマップ (中間報告その2)

なんと!元SORD社のプログラマの浅川様から、SORD M68MXのデバイスドライバのソースコードを頂きました!Twitterは凄いですね。 と言うことで、以下に判明したアドレスを書いていきます。 ROM: 0xe00000 ~ 0xe01ece (8kb) CRTC(HD4650SP): 0xe30001 register…

SORD M68MXのメンテ用モニタプログラムSunbugが起動した。

SORD M68MXにはSunbugというメンテ用のモニタプログラムがある。これは、M68MXのBIOSを読んでいて偶然発見したのだが、SORD社の元社員の方もハードウェア開発者らが使っていたという証言をもらっている。Sunbugプログラムを実行する周辺のBIOSコードを読んで…

SORD M68MXのメモリマップ(中間報告 その1)

2021年6月10日までに判明しているSORD M68MXのメモリマップのメモです。 ROM: 0xe00000 ~ 0xe01ece (8kb) CRTC(HD4650SP): 0xe30001 register port : 0xe30003 CRTC初期化時に送っているパラメータ : 0x6f, 0x50, 0x5a, 0x8c, 0x19, 0x0c, 0x19, 0x19, 0x40,…

Analyzing the BIOS of SORD M68MX (Summary Part 1)

I do not have any software for SORD M68MX. The CP/M-68K for SORD M68 that I received through the Facebook community before did not work with M68MX because the hardware configuration is completely different. It's a shame that I can only see…

Successfully booted zBug monitor on SORD M68MX.

Since the analysis of BIOS of SORD M68MX was settled, I burned a handy monitor to ROM and ran it. zBug is a monitor program for the "68k Single Board Computer" developed by Wichit Sirichote. To this program, kanpapa added the ability to re…

SORD M68MX上でzBugモニタの起動に成功しました。

SORD M68MXのBIOSの解析が一段落したので、手ごろなモニタをROMに焼いて動かしました。 zBugとは、Wichit Sirichote氏が作成したワンボードコンピューター”68k Single Board Computer”の為のモニタプログラムです。 これに、kanpapa氏がS1タイプS-recordの読…

ghidraを使ったBIOSなどバイナリファイルの解析方法のメモ(わかっているところまで)

ghidraで、BIOSなどのバイナリファイルを解析する段階までをメモとして書いておきます。 New Project -> Non-Shared Project -> Project Nameを入力します。 バイナリファイルをインポートする。 解析したいバイナリファイルをインポートします。 SORD M68MX…

SORD M68MXのBIOSを読む(まとめ その1)

私はSORD M68MXのソフトウェアを何も持っていません。以前、facebookのコミュニティを介していただいたSORD M68用のCP/M-68Kはハードウェア構成が全く違うために、当然ながら動きませんでした。 折角手に入れた希少なマシンなのに起動画面しか見られないのは…

How to access the disk image of CP/M-68K for SORD M68 using cpmtools (OBSOLETE)

I received a disk image of CP/M-68K (here called cpm68k_image.hfe) from a kind person on Facebook, and I would like to access this disk using cpmtools. The disk image I received was in hfe format for the HxCFDD emulator. As it is, the disk…

SORD M68用CP/M-68Kのディスクイメージにcpmtoolsを使ってアクセスする方法(この記事は古いです。新しい記事があります)

------------------------------------------------------------------- この記事はすでに古い内容です。新しい記事をご覧下さい。 ------------------------------------------------------------------- CP/M-68Kのディスクイメージ(ここではcpm68k_image.…

Disassemble the SORD M68MX (m68k binary) ROM using radare2.

Last time, I used GNU's objdump to disassemble the m68k ROM. However, as I read through the list, I still encountered parts that were impossible to analyze. When I was complaining on Twitter as I did last time, I was informed by someone fr…

68000シミュレーターMusashiで、SORD M68MXのBIOSをふんわり動かしてみる。

radare2で一応逆アセンブルできるとはいえ、時々おかしなコードを逆アセンブルしてしまう問題は残っている。 今回は、有名なエミュレータMAMEで68000のCPU(MPU)エミュレータとしても使われている、信頼性の高いシミュレータMusashiを使って、SORD M68MXのBIO…

radare2でSORD M68MX(m68k binary)のROMを逆アセンブルする。

前回はGNUのobjdumpによる逆アセンブルを行ったが、リストを読んでいくとやはり解析不能な部分に遭遇する。 前回同様Twitterで愚痴っていたら、海外の方から、radare2でもm68kのバイナリを解析できるとの情報を教えてもらえました。 WSL2上でもradare2をイン…

Disassemble the ROM of SORD M68MX (m68k binary).

I dumped the ROM image of the SORD M68MX, which was split into EVEN and ODD, and merged using WinHex. There is no good tool for disassembling the m68k ROM image. Strangely, there is no good disassembler for such a major, albeit old, MPU. E…

SORD M68MX(m68k binary)のROMを逆アセンブルする。

SORD M68MXのROMを吸い出しました。EVENとODDに分かれていますが、WinHexを使ってマージしました。m68kのROMイメージを逆アセンブルする良いツールがなりません。古いとは言え、これほどメジャーなMPUの逆アセンブラが無いのは不思議です。ネットで見つかる…

Create an alternative keyboard for NEC PC-8801FH

The PC-8801FH that I got before does not have a keyboard; the main unit of the PC-8801 series is sold in auctions, but the keyboard is rarely sold. Fortunately, there is a god-like person who has analyzed and published the keyboard protoco…