2026-07-10

東大版PALO ALTO TINY BASICのバリエーション

Palo Alto Tiny BASICは、DDJ Vol.1 No.5 (May, 1976)で発表されました。これに派生するのが東大版PALO ALTO TINY BASICです。しかしDDJに掲載されているソースプログラムを基にしているのではなく、オブジェクトを独自に逆アセンブルし、改良を加えたとのことです。

 

東大版が掲載されているのは、『マイクロコンピュータのプログラミング』(共立出版、昭和53年)と、「2K BASIC」(ASCII 1977年8月号初出、エンサイクロペディア・アスキー Vol.1再録) です。これらは、同じものなのでしょうか。全体を確認するのは大変ですが、先頭を見ただけでも違いがありました。

 

『マイクロコンピュータのプログラミング』に掲載されている方は、次のようになっています。

;

;

;  PALO ALTO TINY BASIC

;

;

; MEMORY MAP

ITOP EQU 0000H

ISIZE EQU 0800H

LTOP EQU 1000H

VTOP EQU 1300H

LBUF EQU VTOP+0037H

LBUFSZ EQU 80

MSTK EQU LBUF+LBFSZ

(以下略) 

一方ASCII掲載の方は、次のようになっています。

;

;

; PALO ALTO TINY BASIC

;

;

; FOR SDK-80 VERSION (1977/03/23,ONO)

;

STACK EQU 1400H

VTOP EQU 1300H

LBUF EQU 1337H

MSTK EQU 13A7H

(以下略) 

 

目につくのは、ASCII版には「FOR SDK-80 VERSION (1977/03/23,ONO)」があり、『マイクロコンピュータのプログラミング』版には無いことです。推測となりますが、ASCII版にある表記を、『マイクロコンピュータのプログラミング』版で削除したというのは考えにくいと思われます。『マイクロコンピュータのプログラミング』の出版が昭和53年(=1978年)ですが、原稿を書いていた時期は、その前でしょう。最初はリリース日付を入れていなかったものの、どこかのタイミングで入れるようになり、それがASCII掲載版になったのではないかと想像します。

 

上述した箇所だけではなく、プログラム本体を見ても、『マイクロコンピュータのプログラミング』版とASCII版は、違いがあります。東大版が最終的にどうなったのかは不明ですが、何かしら改良を加え続けていたのだろうと思います。

 

そもそも東大版は、オリジナルのPalo Alto Tiny BASICのオブジェクトを逆アセンブルしているということです。最初の段階では、DDJに発表されたものと同一だったはずです。DDJに掲載されているアセンブラソースと比較すれば、どの辺りを変更しているかが分かるのではないかと思います。

 

0 件のコメント:

コメントを投稿