FM Towns Help

Genmu20

New member
FM Town Emulator Help

Lately, I've been interested in getting into FM Town emulation, with the purpose of getting into the Ultima Series. So I downloaded the ROM of Ultima Collection (which contains the first three parts) along with the FM emulator, Tsugaru. When I boot the app and load the game, however, on the bottom part of the window, it says the following:
"Driver is not Ready!", the picture below can help you.
problem.PNG
Since this is the first time I use this emulator, I would like to know if someone there has knowledge of this particular emulator to fix this problem or what to do.
 

pix07

Well-known member
Here code with some help :

https://github.com/captainys/TOWNSEMU

Starting the Command-Line Program​


It starts from terminal/command prompt. The basic options are:


main_cui ROM_FILE_PATH -CD CD_IMAGE_FILE -FD0 FD0_IMAGE_FILE


CD-image can be .ISO or .CUE. Floppy-disk image can be raw-binary or .D77 file. You can look into scripts sub-directories for samples of other options.


You can see the help by typing:


main_cui -HELP


I add some command samples below. Please see also command.md


コマンドから起動します。


main_cui ROM_FILE_PATH -CD CD_IMAGE_FILE -FD0 FD0_IMAGE_FILE


CD-imageは.ISOと.CUEに対応。ディスクイメージは.D77か生イメージファイルに対応。scriptsサブディレクトリ内にバッチ実行などの例題があるので、そっちも参照。ヘルプを書く時間が無い。


また、次のようにタイプするとヘルプを表示します。英語ですが。


main_cui -HELP


以下に起動コマンドの例をいくつか挙げます。command.mdファイルも参照してください。


Emulating Marty​


To emulate Marty, you need to own ROM images extracted from a Marty.


In addition to specify the ROM location in the command parameter in CUI or text dialog box in GUI, you also need to select the machine type. From CUI, add a parameter -TOWNSTYPE MARTY. Or from GUI, select MARTY as Towns Type.


If you do not specify the machine type, even with the Marty ROM, the virtual machine will start just like a full-spec FM TOWNS.


Martyを再現するには、Martyから抜き出したROMイメージが必要です。


MartyのROMイメージの場所をコマンドパラメータ、あるいはGUIのダイアログで指定する他に、マシンタイプをMartyに設定する必要があります。コマンドから指定する場合は -TOWNSTYPE MARTY オプションを追加してください。GUIから指定する場合は、リストからMARTYを選んでください。


マシンタイプを指定しない場合、MartyのROMを使っても、フルスペックのFM TOWNSのように起動してしまいます。


Command-Line Examples​


.\Tsugaru_CUI.exe -HELP


Print help.


ヘルプを表示します。


./Tsugaru_CUI E:/ROM_MX -CD E:/ISOImage/AFTER_BURNER.CUE -GAMEPORT0 KEY -SCALE 160


If FM TOWNS ROM image files are stored in E:/ROM_MX directory, boot from disc image E:/ISOImage/AfterburnerII/AFTER_BURNER.CUE. Game pad 0 is emulated by keyboard (A,S,Z,X,↑↓←→), and Window size is scaled up to 160%.


If you have a physical game pad, you can use PHYS0, PHYS1, PHYS2, or PHYS3 in place for KEY. Or, in case your game pad reports direction button as the analog input, use ANA0,ANA1, ANA2 or ANA3.


FM TOWNSのROMイメージがE:/ROM_MXのとき、ディスクイメージE:/ISOImage/AFTER_BURNER.CUEから起動します。ジョイパッド0はキーボードエミュレーション (A,S,Z,X,↑↓←→)、ウィンドウは160%にスケールアップされます。


USBやBluetooth接続のゲームパッドがある場合は、KEYの代わりにPHYS0, PHYS1, PHYS2, または PHYS3を指定すると使えます。また、十字ボタンをハットスイッチではなくアナログレバーとして扱うゲームパッドの場合は、ANA0,ANA1,ANA2,ANA3を指定することで利用できます。


./Tsugaru_CUI E:/ROM_MX -CD E:/ISOImage/AUGUSTA.CUE -FD0 E:/ISOImage/AUGUSTAFD.bin -SCALE 160


IF FM TOWNS ROM image files are in E:/ROM_MX directory, boot from disc image E:/ISOImage/AUGUSTA.CUE and floppy-disk image E:/ISOImage/AUGUSTAFD.bin in drive A. Window is scaled up to 160%.


FM TOWNSのROMイメージがE:/ROM_MXのとき、CDイメージE:/ISOImage/AUGUSTA.CUEとドライブAのフロッピーディスクイメージE:/ISOImage/AUGUSTAFD.binから起動します。ウィンドウは160%にスケールアップされます。


./Tsugaru_CUI E:/ROM_MX -CMOS ./CMOS.BIN -CD E:/ISOImage/TownsOSV2.1L20.cue


If FM TOWNS ROM image files are stored in E:/ROM_MX, and CMOS file (BIOS Settings in the DOS terminology) is ./CMOS.BIN, boot from disc image E:/ISOImage/TownsOSV2.1L20.cue If ./CMOS.BIN does not exist, it is created when the program is closed by Q (Quit) command. If the program is forced to close by window-close button, the file won't be created.


FM TOWNSのROMイメージがE:/ROM_MXで、CMOSファイル(DOSで言うところのBIOS設定)が./CMOS.BINのとき、ディスクイメージE:/ISOIMage/TownsOSV2.1L20.cueからシステムを起動します。./CMOS.BINが存在しない場合、コンソールコマンドのQ (Quit) コマンドで終了したとき、新たにCMOS.BINを作成します。ウィンドウを閉じて強制終了した場合はファイルはできません。
 

pix07

Well-known member
@Genmu20 Also:

Mouse Integration​


FM TOWNS uses a MSX mouse, which sends a displacement infornation in X- and Y-directions to the PC. Therefore, mouse does not know where the cursor is. To match the mouse cursor location in the host OS and guest VM, the emulator needs to know where the guest VM is thinking the mouse cursor is currently.


I did reverse engineering and found the mouse-cursor locations for TBIOSes that come with V1.1 L10/L20/L30, V2.1 L10B/L20/L31. Will add other versions of TownsOS and VINGBIOS hopefully. Most likely I will forget updating version numbers here, but probably I'll add comments in the commit log.


FM TOWNSはMSXマウスを使用します。MSXマウスはマウスの移動量のXYをPCに送信します。だから、マウスカーソルがPC上のどこにあるのか、マウスは知りません。ホストPCとゲストVMでマウス位置を一致させるためには、エミュレータが、VMが今マウスがどこにあると思っているか検出しなくてはなりません。


このエミュレータでは、Towns OS V1.1 L10/L20/L30, V2.1 L10B/L20/L31付属のTBIOSについて解析して、対応しました。他のバージョンやVINGBIOSにも順に対応しますが、多分ここのREADMEには書くのを忘れるでしょう。が、GITのコミットコメントには多分書くと思うのでそっちを見てください。


VM<->Host File Transfer​


Direct File Sharing - TGDRV​


You can share a directory of the host with the VM using a utility called TGDRV.COM


When you start Tsugaru CUI, specify -SHAREDDIR <dir> option to specify a host directory to be shared with the VM. When you start Tsugaru GUI, specify shared directories in "TGDRV" tab. You can specify up to 8 directories in CUI, 4 directories in GUI.


In the VM, insert the TsugaruUtil.D77, and run TGDRV.COM. The sheard directory will appear as a virtual disk drive in the VM. If you use a Towns OS installed on the hard-disk image, it would be convenient to copy TGDRV.COM to the virtual hard disk.


Kanji and Katakana files also cannot be accessed. In macOS and Linux environment, since MS-DOS capitalizes all the files, you cannot access filles with small-case letters.


ユーティリティTGDRV.COMを使うことで、ホストPCのディレクトリを直接津軽上のVMと共有することができます。


津軽CUIを起動するとき、-SHAREDDIR <dir>オプションを追加して、共有するディレクトリを指定してください。津軽GUIを使う場合は、"TGDRV"タブで共有ディレクトリを指定してください。CUIでは最大8箇所、GUIでは最大4か所のディレクトリを指定できます。


津軽VM上ではディスクイメージ TsugaruUtil.D77 をセットして、TGDRV.COMを実行すると、共有ディレクトリがVM上の仮想ドライブとしてアクセスできるようになります。ハードディスクイメージを利用している場合は、ハードディスクイメージにTGDRV.COMをコピーしておくと便利と思います。


漢字・カナを含むファイルもアクセスできません。macOSとLinuxでは、MS-DOSがすべてのファイル名を大文字にしてしまうため、ホスト上の小文字を含むファイルはアクセスできません。


Using XMODEM​


To transfer a file from the host to the VM, follow the following steps:


  1. In Tsugaru CUI, type XMODEMTOVM filename (filename is the file that you want to send to the VM).
  2. Start a terminal program in the VM and start XMODEM transfer. I have confirmed with a popular free text editor called WINK2, which has a terminal mode.

To transfer a file from the VM to the host, follow the following steps:


  1. Start a terminal program in the VM and start XMODEM transfer.
  2. In Tsugaru CUI, type XMODEMFROMVM filename.

XMODEMを使ってホストからVMにファイルを転送するには、次のステップで操作してください:


  1. 津軽CUIモードで、XMODEMTOVM filename (filenameは転送するファイル名)とコマンドを入力。
  2. VM上でターミナルソフト (WINK2の通信モードなど) を起動してXMODEMのファイル転送を開始する。

XMODEMを使ってVMからホストにファイルを転送するには、次のステップで操作してください:


  1. VM上でターミナルソフトを起動してXMODEMのファイル転送を開始する。
  2. 津軽CUIモードで、XMODEMFROMVM filenameとコマンドを入力。

Using Tsugaru File Transfer Protocol (TFTP)​


XMODEM works, but it sends 1 byte at a time, and slow. You can transfer a file much faster using TFTP by the following steps. You need to use Tsugaru CUI. You need to transfer FTCLIENT.EXP to the VM. You can do it once with XMODEM or use a conventional disk-image tools such as EDITDISK.


  1. Type command VM2HOST vmfile hostfile or HOST2VM hostfile vmfile. These commands schedule file transfer. If you want to transfer multiple files, type commands multiple times.
  2. In VM, start FTCLIENT.EXP (like run386 -nocrt FTCLIENT.EXP in the command mode)

Then the files will be transferred. FTCLIENT.EXP can be found in townsapp/exp subdirectory.


XMODEMは機能しますが、1バイト単位でファイルを転送するので、遅いです。より高速にVMとホスト間でファイルを転送したい場合、次の手順で操作してください。CUIで実行する必要があります。FTCLIENT.EXPをVMに転送しておく必要がありますが、XMODEMを使うか、あるいはEDITDISKなどのディスクイメージツールを利用してください。


  1. コマンド VM2HOST vmfile hostfileまたはHOST2VM hostfile vmfileをタイプする。これらのコマンドはファイル転送を予約する。複数ファイルを転送したい場合は、コマンドを複数回タイプする。
  2. VM上でFTCLIENT.EXPを実行する。(コマンドモードに降りて run386 -nocrt FTCLIENT.EXPとタイプ)

この手順で予約したファイルが転送されます。FTCLIENT.EXPはtownsapp/expサブディレクトリにあります。


Flight Joystick to Mouse Translation​


Wing Commander 1 and Strike Commander (not Strike Commander Plus) for FM TOWNS did not support analog joystick. The player had choice between fly by mouse or fly by keyboard, which was a major frustration. Especially, Wing Commander for FM TOWNS comes with Orchestra BGM by CDDA. It was the BEST Wing Commander port of all. Only thing missing was analog joystick. Tsugaru offers a redemption. With the option


-FLIGHTMOUSE joystickId centerX centerY scaleX scaleY zeroZoneInPercent


Tsugaru translates flight joystick input to mouse input. It is also exposed in GUI. It makes Wing Commander and Strike Commander so much more easy to fly. joystickID is you know what it is. centerX and centerY specifies screen coordinate (in 640x480 scale) where mouse cursor should be when the joystick is neutral. scaleX and scaleY specifies how large a deflection in screen scale the mouse cursor should travel when the stick is moved all the way. Actually majority of the analog joysticks doesn't deflect to 1.0. Usually stops at 0.9 or so. So, specifying larger scaleX and scaleY is recommended, or your fighter will maneuver real slow. zeroZoneInPercent specifies zero zone (or dead zone) of the joyostick.


To use it with Wing Commander or Strike Commander, you also need to enable application-specific augumentation for the program.


FM TOWNS用Wing Commander 1、Strike Commanderはアナログジョイスティックをサポートしませんでした。プレイヤーはマウスかキーボードかどちらかで操縦しなくてはなりませんでした。とくにWing Commander 1はFM TOWNS版はCDDAによるオーケストラのBGMがついていて、他のどの移植版よりもこの一点で最高の移植と思うのですが、アナログスティック非対応だけが心残りでした。津軽はこの当時の恨みを晴らす機能を提供します。まさに江戸の恨みを青森で。コマンドオプション(GUIからも指定可)で、


-FLIGHTMOUSE joystickId centerX centerY scaleX scaleY zeroZoneInPercent


joystickIdはそのまんまで、centerX,centerYはジョイスティックが中立位置のときマウス座標をどこに置くかで、scaleX,scaleYはジョイスティックの入力が1.0のときマウス座標をどれだけ動かすかの設定です。zeroZoneInPercentはジョイスティックの遊びをパーセントで指定します。なお、ジョイスティックは結構精一杯押したり引いたりしても値が1.0まで上がりません。scaleX,scaleYは大きめの値を指定しておいた方が楽です。


なお、Wing CommanderまたはStrike Commanderで使用するには、このオプションに加えてApplication Specific Augumentationを有効にする必要があります。
 

Genmu20

New member
Let me get it: In order to boot a game on Tsugaru in the correct way is via Command line?

I would like to see an example or something by the style, so I can comprehend clearer.
 

pix07

Well-known member
@Genmu20 It seems yes because of many options unlike gui.

Or you can just try press space and see it loads or not.
 
Top