アカウント名:
パスワード:
>たとえば「3000」は「conditional」を、「8500」は「GOTO」を意味しているらしい。
普通にアセンブリ言語みたいだけど。てことは、アセンブラを作りなおしてしまえばいいだけの気も。
# GOTO ならぬ BRA が $20 ってのは未だに覚えている## $AD $9F $FB $FA なら死ぬほど見た
元々は別の開発ツールで作成したプログラムを変換ツールでこの言語に変換して利用する、といった使われ方を想定していたようだが、その開発ツールの制限により、直接このコードを手打ちするようになってしまったという。
このへんの経緯がよくわかりませんよね。
「本当にあったひどいプログラミング環境」というくくりならば、「走り始めた紙テープのバグ修正」とかの方がきつそう。
「開発ツールの制限」となっていますが、「ツールの出来が悪くてやってらんねー、直接いじるか」ということのようです
いや、よくわからないというのは、元コメのおっしゃるようにアセンブラを直せばいいだろうにという点です。
ツールの出来が悪くてやってらんねー ← わかる直接いじるか ← ?
茨の道を選んだようですが、元のツールの開発環境がどれだけ厳しかったのやら
短期でのリターンを求められて、選択を誤ったんでしょうか?
別コメのほうが正しい言い方かもしれませんがアセンブラ相当の部分は手を出せなかったのでこんな変なやり方に落ち着いたのだろうと思います
アセンブラを直さずともプリプロセッサ通すだけでも随分違うんじゃないかなあ。GOTOってソースに現れたら8500に置換するとかで。
元はコンパイル後の中間コードだったけど、コンパイラだか仮想マシンの制限に触れないようにプログラムを作るには中間コードを直接書いた方が手っ取り早かった、ということでは?
変数と定数は合わせて2000個までとか、許された計算機資源を全部使えるマシン語の方がよっぽどマシな気がする。
>BRA が $20
6809か6800でしょうか?小学生のときに6809を、高校生のときにZ80を使いました。6809のコードは、(Z80と比較すると)いろいろ高級なぶん複雑で、ハンドアセンブルはやりづらかった・・・そういう意味で、最悪のプログラミング環境といえる?6809の後にZ80のアセンブリ言語を覚えたときに6809の「格の違い」みたいなものをかんじましたがハンドアセンブルはZ80のほうが、その単純さゆえに圧倒的に楽でしたねぇ。
PC-8001プログラマならばC3 66 5Cというコードは忘れないでしょうね。
終わるときはいつもリセットスイッチでしたので、あまり。ダンプリスト入力するとき、3E 03 32となっているところを3E 99 32とかに変更してみたり、、、懐かしいな
## $AD $9F $FB $FA なら死ぬほど見た
JSR [$FBFA]
FM-7のF-BIOSコールか。懐しいなあ。
MZ-80 だと、テープからファイルを読み込んだ直後はファイルの情報がワークエリアに残っていたんですよ。その状態で、ある BIOS コールを2つやれば、ファイルがコピーできた。で、V-RAM にキャラクタコードで BIOS コールを書いてやり、コピーしてました。
ニモニックですらなく、マシン語そのもの。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
あと、僕は馬鹿なことをするのは嫌いですよ (わざとやるとき以外は)。-- Larry Wall
いつか通った道 (スコア:0)
>たとえば「3000」は「conditional」を、「8500」は「GOTO」を意味しているらしい。
普通にアセンブリ言語みたいだけど。
てことは、アセンブラを作りなおしてしまえばいいだけの気も。
# GOTO ならぬ BRA が $20 ってのは未だに覚えている
## $AD $9F $FB $FA なら死ぬほど見た
Re: (スコア:0)
このへんの経緯がよくわかりませんよね。
「本当にあったひどいプログラミング環境」というくくりならば、
「走り始めた紙テープのバグ修正」とかの方がきつそう。
Re: (スコア:0)
「開発ツールの制限」となっていますが、「ツールの出来が悪くてやってらんねー、直接いじるか」ということのようです
Re: (スコア:0)
いや、よくわからないというのは、元コメのおっしゃるように
アセンブラを直せばいいだろうにという点です。
ツールの出来が悪くてやってらんねー ← わかる
直接いじるか ← ?
Re: いつか通った道→自分で選んだ道? (スコア:2)
茨の道を選んだようですが、元のツールの開発環境がどれだけ厳しかったのやら
短期でのリターンを求められて、選択を誤ったんでしょうか?
Re: (スコア:0)
別コメのほうが正しい言い方かもしれませんが
アセンブラ相当の部分は手を出せなかったので
こんな変なやり方に落ち着いたのだろうと思います
Re: (スコア:0)
アセンブラを直さずともプリプロセッサ通すだけでも随分違うんじゃないかなあ。
GOTOってソースに現れたら8500に置換するとかで。
Re: (スコア:0)
元はコンパイル後の中間コードだったけど、コンパイラだか仮想マシンの制限に
触れないようにプログラムを作るには中間コードを直接書いた方が手っ取り早かった、
ということでは?
変数と定数は合わせて2000個までとか、許された計算機資源を全部使えるマシン語の
方がよっぽどマシな気がする。
Re: (スコア:0)
>BRA が $20
6809か6800でしょうか?
小学生のときに6809を、高校生のときにZ80を使いました。
6809のコードは、(Z80と比較すると)いろいろ高級なぶん複雑で、ハンドアセンブルはやりづらかった・・・
そういう意味で、最悪のプログラミング環境といえる?
6809の後にZ80のアセンブリ言語を覚えたときに6809の「格の違い」みたいなものをかんじましたが
ハンドアセンブルはZ80のほうが、その単純さゆえに圧倒的に楽でしたねぇ。
Re: (スコア:0)
6800から入った俺はZ80の方がめんどくさいと感じたな。
Re: (スコア:0)
PC-8001プログラマならば
C3 66 5C
というコードは忘れないでしょうね。
Re: (スコア:0)
終わるときはいつもリセットスイッチでしたので、あまり。
ダンプリスト入力するとき、3E 03 32となっているところを3E 99 32とかに変更してみたり、、、懐かしいな
Re: (スコア:0)
## $AD $9F $FB $FA なら死ぬほど見た
JSR [$FBFA]
FM-7のF-BIOSコールか。懐しいなあ。
Re: (スコア:0)
MZ-80 だと、テープからファイルを読み込んだ直後はファイルの情報がワークエリアに残っていたんですよ。
その状態で、ある BIOS コールを2つやれば、ファイルがコピーできた。
で、V-RAM にキャラクタコードで BIOS コールを書いてやり、コピーしてました。
Re: (スコア:0)
ニモニックですらなく、マシン語そのもの。