アカウント名:
パスワード:
ソースコードにはビル・ゲイツの名前が入ってますね https://github.com/microsoft/GW-BASIC/blob/master/GWMAIN.ASM [github.com] の17行目です
COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN
しかし不思議なことに一行目には
[ This translation created 10-Feb-83 by Version 4.3 ]
と書いてあります
どうやらこのソースコードは,オリジナルのものではなくて何らかの変換ツールを使って,自動変換で出力したファイルのようです
不思議に思って調べてみたら当時は色々なアーキテクチャ,様々な命令セット(ISA)のCPUが流通していたのでプログラマはまず独自のアセンブラ言語で記述した共通のソースコードを用意してそれを独自のISA translatorで 8088向けにアセンブラのソースコードに変
新電子立国には、ビル・ゲイツとポール・アレンはAltair用BASICをPDP-10上で開発したと書かれています。完成したのが1975年3月だそうですので、「COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN」というのはAltair用BASICのCopyrightではないでしょうか?(今ならCOPYRIGHT1975-1983にするでしょう)
GWMAIN.ASMに
331 PUSH BX ;PUT H ON336 XCHG BX,DX ;MAKE SURE WE RETURN [D,E]362 ;RETURN WITH [H,L] POINTING THE BOTTOM
とあるから8080から8086へのトランスレーションでしょうインテルがそういうツールを用意していたので、それを使ったのなら、公開できないのも納得いきます
958行から CRDONE: MOV BX,OFFSET KBFLEN+2 ;GET OFFSET MOV AL,BL ;GET COUNT TO SUBTRACT FROM SUB AL,CL ;SUBTRACT MOV CL,AL MOV AL,BH SBB AL,CH MOV CH,AL ;BC:=# OF CHARS CRUNCHED 8ビットずつごちゃごちゃ計算している部分は CX=BX-CX です8086では8ビットずつ計算する必要はな
https://github.com/microsoft/GW-BASIC/blob/master/GWMAIN.ASM#L958-L966 [github.com]
LINE 40-70に各社ごとの条件付アセンブル用っぽいフラグ定義がありますね。TRS,MELCO(Baffaloじゃないほう),NECやOKI、Olivettiなど。BUBLってSFC? FM8?
バブコム80じゃろ
Olivettiはよくわからりませんが、それ以外はTRS: TRS-80: Z80MELCO: 三菱 MULTI8: Z80NEC: PC-8001とか: Z80(μPD780C-1)OKI: if800: Z80BUBCOM80: Z80(富士通ベンチャーが出したFM8とそっくりスペックなZ80機)と、全部 Z80機ですね。FM8のF-BASICもMicrosoftだけど、6809だからさすがにソースが共通ってことはないと思う。
このあたり、MSはソースコード提供だけで移植は各メーカーだと思ってたんですがMS自身が移植も手がけてたんですかね。当時の8bitパソコンは大多数が MS BASIC で、起動時にMicrosoftのCopyright表示を見たものです。MSにあらずんばBASICにあらずってレベルだったよなぁ。日本の大手で独自なのはシャープぐらい?
日本の大手ならカシオやソードが独自東芝のパソピアのOA-BASICも独自たぶん三洋電機も
メーカから社員が出向して作業してたんじゃないかしら。マイクロソフトのリスク軽減と各社の秘密保持の両方の理由があるので。伝聞でしか知らないけど、Windows時代に入ってからの周辺機器のドライバ開発もそんな感じだったのですよね?
L3より前のベーシックマスターは日立独自のではなかったっけ?# L3はマイクロソフト
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
吾輩はリファレンスである。名前はまだ無い -- perlの中の人
これは自動変換されたソースコード (スコア:5, 参考になる)
ソースコードにはビル・ゲイツの名前が入ってますね
https://github.com/microsoft/GW-BASIC/blob/master/GWMAIN.ASM [github.com]
の17行目です
しかし不思議なことに一行目には
と書いてあります
どうやらこのソースコードは,オリジナルのものではなくて
何らかの変換ツールを使って,自動変換で出力したファイルのようです
不思議に思って調べてみたら
当時は色々なアーキテクチャ,様々な命令セット(ISA)のCPUが流通していたので
プログラマはまず独自のアセンブラ言語で記述した共通のソースコードを用意して
それを独自のISA translatorで 8088向けにアセンブラのソースコードに変
Re: (スコア:0, オフトピック)
新電子立国には、ビル・ゲイツとポール・アレンはAltair用BASICをPDP-10上で開発したと書かれています。
完成したのが1975年3月だそうですので、「COPYRIGHT 1975 BY BILL GATES AND PAUL ALLEN」というのは
Altair用BASICのCopyrightではないでしょうか?
(今ならCOPYRIGHT1975-1983にするでしょう)
Re: (スコア:0)
GWMAIN.ASMに
331 PUSH BX ;PUT H ON
336 XCHG BX,DX ;MAKE SURE WE RETURN [D,E]
362 ;RETURN WITH [H,L] POINTING THE BOTTOM
とあるから8080から8086へのトランスレーションでしょう
インテルがそういうツールを用意していたので、それを使ったのなら、公開できないのも納得いきます
Re: (スコア:5, 興味深い)
958行から
CRDONE:
MOV BX,OFFSET KBFLEN+2 ;GET OFFSET
MOV AL,BL ;GET COUNT TO SUBTRACT FROM
SUB AL,CL ;SUBTRACT
MOV CL,AL
MOV AL,BH
SBB AL,CH
MOV CH,AL ;BC:=# OF CHARS CRUNCHED
8ビットずつごちゃごちゃ計算している部分は CX=BX-CX です
8086では8ビットずつ計算する必要はな
リンクはるだけ (スコア:0)
https://github.com/microsoft/GW-BASIC/blob/master/GWMAIN.ASM#L958-L966 [github.com]
Re: (スコア:0)
LINE 40-70に各社ごとの条件付アセンブル用っぽいフラグ定義がありますね。
TRS,MELCO(Baffaloじゃないほう),NECやOKI、Olivettiなど。BUBLってSFC? FM8?
Re: (スコア:0)
バブコム80じゃろ
Re:リンクはるだけ (スコア:1)
Olivettiはよくわからりませんが、それ以外は
TRS: TRS-80: Z80
MELCO: 三菱 MULTI8: Z80
NEC: PC-8001とか: Z80(μPD780C-1)
OKI: if800: Z80
BUBCOM80: Z80(富士通ベンチャーが出したFM8とそっくりスペックなZ80機)
と、全部 Z80機ですね。
FM8のF-BASICもMicrosoftだけど、6809だからさすがにソースが共通ってことはないと思う。
このあたり、MSはソースコード提供だけで移植は各メーカーだと思ってたんですが
MS自身が移植も手がけてたんですかね。
当時の8bitパソコンは大多数が MS BASIC で、起動時にMicrosoftのCopyright表示を見たものです。
MSにあらずんばBASICにあらずってレベルだったよなぁ。日本の大手で独自なのはシャープぐらい?
Re: (スコア:0)
日本の大手ならカシオやソードが独自
東芝のパソピアのOA-BASICも独自
たぶん三洋電機も
Re: (スコア:0)
メーカから社員が出向して作業してたんじゃないかしら。
マイクロソフトのリスク軽減と各社の秘密保持の両方の理由があるので。
伝聞でしか知らないけど、Windows時代に入ってからの周辺機器のドライバ開発もそんな感じだったのですよね?
Re: (スコア:0)
L3より前のベーシックマスターは日立独自のではなかったっけ?
# L3はマイクロソフト