mieki256's diary



2022/10/10(月) [n年前の日記]

#1 [basic][z80] Altair 8800 simulator を試用してTiny Basicをアセンブルできるか確認

Windows10 x64 21H2 + Altair 8800 simulator で、Tiny Basic をアセンブルできるのか試してみた。以下の記事を参考にして作業。ありがたや。

_海谷の凧: CP/M2.2とTINY BASIC

Altair 8800 simulator というのは、Altair 8800 というレトロPCをエミュレーションできるソフト。らしい。

_Altair 8800 - Wikipedia

CP/M を動かして、当時のアレコレを利用することができる。

たしか以前も少し触ったような記憶が…。

_mieki256's diary - Altair 8800 simulator を試用

Altair 8800 simulatorをインストール。 :

入手ページは以下。

_Altair Introduction
_Altair Programming Languages

altairz80.zip、cpm2.zip、bdsc.zip を入手。解凍して、中に入っているファイルをどこか任意の場所にコピーする。全ファイルを1つのフォルダの中に入れておいた状態にする。

Tiny Basicのソースを入手。 :

Tiny Basic のソースファイルを入手。

_8bit CPUのBASIC 処理系 | たけおか ぼちぼち日記

pbas.asm を入手して、Altair 8800 simulator のインストール場所にコピーしておく。

ただ、pbas.asm のリンク先が ftp なので、今現在のWebブラウザではDLできない。今のWebブラウザは、しばらく前に軒並みftp非対応になってしまった。昔は対応していたのだけどな…。一応、IE11ならftpにも対応しているので、IE11が動くなら、ソレを使って pbas.asm を入手できる。

アセンブル。 :

Altair 8800 simulator を起動。bdsc を指定して、CP/M 2 と BDS-Cコンパイラが使える状態で起動させる。
altairz80.exe bdsc

B: に BDS-C関係のファイル(CC.COM や CLINK.COM)が入ってる。B: と打って、カレントドライブを B: に変更。
 B:

R.COM を使って、Windows側で管理しているファイルの中から、pbas.asm を、CP/M側のカレントドライブにコピーする。
 R PBAS.ASM
 DIR B:PBAS.*
B>DIR B:PBAS.*
B: PBAS     ASM

ASM と LOAD を使って、PBAS.COM を生成する。
 ASM PBAS
 LOAD PBAS

Tiny Basic の実行形式ファイル、PBAS.COM が生成された。

Tiny Basicの動作確認。 :

実行して、Tiny Basic らしく動くのか確認。
 PBAS

コマンドその他は大文字しか受け付けないので注意。

簡単なプログラムを打ってみよう…。
10 FOR I=0 TO 5
20 PRINT I, "  Hello World!!"
30 NEXT I

 LIST
 RUN
>LIST
  10 FOR I=0 TO 5
  20 PRINT I, "  Hello World!!"
  30 NEXT I

 OK
>RUN
     0  Hello World!!
     1  Hello World!!
     2  Hello World!!
     3  Hello World!!
     4  Hello World!!
     5  Hello World!!

 OK

PBAS の終了は、SYSTEM と打つ。
 SYSTEM

Altair 8800 simulator 自体の終了は以下。
 halt
 quit

YAZE-AGでも試してみた。 :

YAZE-AG 2.51.2 上でもアセンブルできるか試してみた。ASM を使うところを B:MAC に置き換えただけで、同様にアセンブルできた。
 B:MAC PBAS
 LOAD PBAS

R.COM と W.COM。 :

YAZE-AG もそうだけど、R.COM と W.COM というのが入っていて、一体コレは何だろう、何に使うのだろうと不思議だったけど。どうやら、Windows (もしくは Linux)側で管理しているファイルにアクセスするためのプログラムだったらしい。

  • R.COM : Windows側が管理するファイルを、CP/M側のカレントドライブに読み込む(ファイルをコピーする)。
  • W.COM : CP/M側が管理するファイルを、Windows側のカレントディレクトリに書き出す(ファイルをコピーする)。

こういうプログラムがあるなら、Windows側でエディタを使ってファイル編集してから、そのファイルを CP/Mエミュレータ側にコピー、といった流れで作業できそうだなと…。CP/M側で無理矢理どうにかファイル編集をしなくても済みそう。

以上、1 日分です。

過去ログ表示

Prev - 2022/10 - Next
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project