Turbo C++ 1.01 を Windows 10 (64bit) / 11 にインストールしてみる

# はじめに

Embarcadero からアンティークソフトウェアとして無償公開されている **Turbo C++ 1.01** を、Windows 10 (64bit) / 11 環境で使えるようにする方法についての詳細です。

## ■ Turbo C++ 1.01

**Turbo C++** は、AT&T C++ 2.0 準拠の C++ コンパイラであり、C/C++ 言語用統合開発環境 (IDE) 製品です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/c19ee1b6-314e-b35c-ba63-4c7aa5bbd430.png)

**Turbo C++ 1.01** はいわゆる **Turbo C++ 2nd Edition** です。

**See also:**

 - [CB Magazine - ボーランドが送り出したC/C++の歴史 (EDN)](https://edn.embarcadero.com/jp/article/33626)

# インストール
 - Turbo C++ 1.01 は MS-DOS で動作するアプリケーションなので、MS-DOS や 16bit Windows へは普通にインストールできます。
 - 32bit Windows の場合、OS の種類によっては NTVDM が別途インストールされるかもしれませんが、基本的にはそのままインストールできます。
 - 64bit Windows では MS-DOS アプリケーションが動作しませんので、**MS-DOS Player** を使って動作させます (**DOSBox** 上でも動作可能です)。

本記事は Windows 10 (64bit) / 11 への Turbo C++ 1.01 インストールを試みるものとなっています。

## MS-DOS Player 

MS-DOS Player アーカイブの `binary` サブフォルダには複数のバージョンの `MSDOS.EXE` があります。

| 32bit 版 | 64bit 版 | 説明 |
|:---|:---|:---|
| i86_x86 | i86_x64 | 8086 サポート |
| v30_x86 | v30_x64 | V30 サポート |
| i286_x86 | i286_x64 | 80286 サポート |
| i386_x86 | i386_x64 | 80386 サポート |
| i486_x86 | i486_x64 | 80486 サポート |
| ia32_x86 | ia32_x64 | IA32 (Pentium) サポート |

基本的にはどれを使っても構いませんが、リストの下に行くほど高機能かつバイナリサイズが大きくなります。

MS-DOS Player では MS-DOS アプリケーションを 64bit Windows で動作するようにコンバートできるのですが、この時できる実行ファイルのサイズも `MSDOS.EXE` のサイズに比例します。

**Download:** [MS-DOS Player (TAKEDA, toshiya)](http://takeda-toshiya.my.coocan.jp/msdos/)

## 具体的なインストール手順 (Turbo C++ 1.01)

### 1. Turbo C++ 1.01 をダウンロード

CodeCentral から **Turbo C++ 1.01** をダウンロードしてきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/c6934790-d3c0-2c38-7bee-13f4d04f1279.png)

**Download:** [Antique Software: Turbo C++ 1.01 (Embarcadero)](https://cc.embarcadero.com/item/26014)

※ EDN アカウントを持っていない場合には、事前に [EDN アカウントを取得](https://members.embarcadero.com/newuser.aspx?lang=jp)する必要があります。

<!--
[EDN を介さない直接ダウンロードリンク]
Turbo C++ 1.0: http://altd.embarcadero.com/download/museum/tcpp101.zip
-->

### 2. アーカイブを解凍
ダウンロードした `TCPP101.ZIP` を適当な場所に解凍します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/cec800ce-4bf7-f687-950f-e186c91db392.png)

解凍すると `TCPP101` フォルダができます。

### 3. MS-DOS Player をコピー
ダウンロードした  MS-DOS Player (`MSDOS.EXE`) を `TCPP101` サブフォルダ内にコピーします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/08a2150b-8345-1603-1923-83884861ad28.png)

### 4. セットアップスクリプトの作成
`TCPP101` サブフォルダ内にセットアップ用のスクリプト `SETUP.CMD` を作成します。内容は次の通りです。

```bat:SETUP.CMD
@ECHO OFF
CLS

chcp 437
msdos install.exe

pause
```

### 5. セットアップスクリプトの実行
スクリプト `SETUP.CMD` を実行するとインストーラが起動します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/57fe568c-fb68-4ca3-958b-014b167fcc7f.png)

ここでは `C:\DOS\TCPP` フォルダへインストールするものとします。〔Enter〕キーを押します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/676702bc-1d0d-e985-c480-ed6a99f41cf7.png)

ワークドライブは `C` とします。ここには `TCPP101` のあるドライブを指定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/a9d52679-201e-1db0-4664-6cac81275efc.png)

ソースパスはこのままで OK ですが、あまりにも深いディレクトリにあると正しくインストールされない事があるので、パスが長そうだったら `TCPP101` フォルダを浅いディレクトリに移動してからインストールをやり直してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/ccf75544-8a57-4ec9-4cb9-92addf996d6a.png)

`Turbo C++ Directory` を選んで〔Enter〕キーを押し、インストールパスを変更します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/8952b732-ef11-a1d2-ecd5-7cc6e4cb3cb6.png)

他のパスも追従して変更されます。`[Start Installation]` に移動して〔Enter〕キーを押すか、〔F9〕キーを押します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/bdf504e7-35e9-38d5-0a8b-98f744605f2b.png)

インストールが完了しました。

### 6. 起動スクリプトの作成
`C:\DOS\TCPP` フォルダの中に `TC.CMD` を作成します。

```bat:TC.CMD
@echo off
cls

set PATH=C:\DOS\TCPP\BIN;%PATH%
cd C:\DOS\TCPP\BIN

chcp 437
msdos tc.exe
```

※ 日本語環境の Windows の場合、`TC.EXE` の実行前に `chcp 437` を実行しないと表示がおかしくなります。
※ `MSDOS.EXE` は `C:\DOS\TCPP` フォルダまたはパスの通ったフォルダにコピーしておきます。

`TC.CMD` を実行すれば、めでたく **Turbo C++ 1.01** が起動します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/e0b7cdf5-a1f1-acd3-3d90-67a381bb7a70.png)

各種パスは IDE の `[Options | Directories...]` からも設定できます。パスを書き替えたら、 `[Options | Save]` で忘れずに保存してください。

:::note warn
パスが正しく設定されていないと、コンパイル時に
`Unable to open include file 'STDIO.H'`
のように怒られてしまう事があります。
:::


罫線がズレる際にはコマンドプロンプトのフォントを変更してみてください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/13d95d34-136d-828b-34f4-7946863c5836.png)

### 7. 起動用ショートカットの作成
起動用ショートカットは次のように指定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/60af4393-e2bd-2308-a9b1-92eb144f193f.png)

| 項目 | 内容 |
|:---|:---|
| リンク先  | C:\Windows\System32\cmd.exe /c C:\DOS\TCPP\TC.CMD |
| 作業フォルダ | C:\DOS\TCPP |

アイコンはお好きなものを指定して下さい。

**Download:** [Turbo C++ 1.01 Icon](https://ht-deko.com/antique/TCPP.ico)

# おわりに

アンティークソフトウェアを Windows 10 (64bit) / 11 にインストールした他の製品の記事は次の通りです。

:::note info
定義済みマクロ `__TURBOC__` は 0x296 を返します。
:::

**See also:**

 - [Turbo Pascal 1.0 を Windows 10 (64bit) / 11 にインストールしてみる (Qiita)](https://qiita.com/ht_deko/items/54cefe48e729742e818d#-turbo-pascal-302) 
 - [Turbo Pascal 3.02 を Windows 10 (64bit) / 11 にインストールしてみる (Qiita)](https://qiita.com/ht_deko/items/54cefe48e729742e818d#-turbo-pascal-302) 
 - [Turbo Pascal 5.5 を Windows 10 (64bit) / 11 にインストールしてみる (Qiita)](https://qiita.com/ht_deko/items/eb35e0480559f893a9b8) 
 - [Turbo C 2.01 を Windows 10 (64bit) / 11 にインストールしてみる (Qiita)](https://qiita.com/ht_deko/items/100bb258e4480aa7bdf3) 
 - [Delphi 1.0 Client/Server を Windows 10 (64bit) / 11 にインストールしてみる (Qiita)](https://qiita.com/ht_deko/items/a65e0950b906d28ccb5f)
 - [C++Builder 1.0 Client/Server を Windows 10 (64bit) / 11 にインストールしてみる (Qiita)](https://qiita.com/ht_deko/items/40b67a7572b1110bff69)