2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

8ビットCPUでC言語?ないないありえないっしょ!5

1 :ナイコンさん (ワッチョイ df99-dE/J):2020/07/02(木) 00:02:41 ID:++jZerDK0.net

【前スレ】
8ビットCPUでC言語? ないないありえないっしょ!

Part.4 https://matsuri.5ch.net/test/read.cgi/i4004/1528299072/
Part.3 http://matsuri.5ch.net/test/read.cgi/i4004/1528299072/
Part.2 http://matsuri.5ch.net/test/read.cgi/i4004/1470913460/
Part.1 http://hanabi.2ch.net/test/read.cgi/i4004/1468652612/

     ♪    /.i   /.i  /.i
   ♪     ∠__ノ ∠__ノ ∠__ノ   
        〈,(・∀・;)ノ・∀・;)ノ・∀・;)ノ
         └i===|┘i===|┘.i===|┘  
           〈__〈 〈__〈 〈__〈 VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

2 :ナイコンさん :2020/07/02(木) 18:23:42.39 ID:My0y/6Z50.net
#include <stdio.h>

3 :ナイコンさん :2020/07/02(木) 19:46:41.43 ID:3atGjx/Z0.net
パラメータが6個の関数使う奴は無能

4 :ナイコンさん :2020/07/02(木) 20:30:23.05 ID:bFIF3izo0.net
必死で考えて出してきた例がグラフィックライブラリw

5 :ナイコンさん :2020/07/02(木) 22:31:37.91 ID:YEVK+ffud.net
スタック引き払って帰るときの投げやりで贅沢な
c1 c1 c1 c1 c1 c9
が好きだな

6 :ナイコンさん :2020/07/02(木) 22:32:50.78 ID:JpFKYx/Ya.net
ゲームでもC言語使われてんだし、ありえないは嘘だったで終わりだ。

7 :ナイコンさん :2020/07/02(木) 23:58:42.17 ID:nIh+x81b0.net
C++で書かれたライブラリ出されてもな

8 :ナイコンさん (ワッチョイ 8fcb-tzFc):2020/07/03(金) 00:44:41 ID:fMZXE5UE0.net
ファミコンソフトの開発も
C言語が使われていたりしたのかもしかして

9 :ナイコンさん (ワッチョイ 0b0d-mYnu):2020/07/03(金) 01:12:38 ID:7J5xweEd0.net
コンパイラも普通にいくつも販売されてたしなあ

10 :ナイコンさん (ワッチョイ 2743-Smji):2020/07/03(金) 04:24:42 ID:/lQD1tfv0.net
「BDS Cの使い方」の序章の目的と制限のところにこんな風に書かれてるぞ

> 残念ながら、C言語の構造は、PDP-11のハードウェアに特質に適応するようになっており、
>8080のハードウェアの特質に対して適応しないPDP-11にとって自然な操作
>(自動記憶割付を処理するとき、大変重要なインデックス付きや、非間接的アドレス指定のような)
>は、8080においてはむしろ非能率的な命令コードへと展開されることになる。
>このためBDS Cは、8080システムプログラミング言語としてPDP-11のUNIX Cのように
>急速に一般化することはないだろうと思われるが、
>有能なマイクロプロセッサが、現存する8bitマシンと置き換わり、
>アプリケーション志向のアセンブリー言語プログラミングやヒストリ・ブックを放棄するに値する
>有能なCコンパイラが出現することは確実である。
>本書は、そのときのためのウォーミングアップと考えてもらいたい。
> かいつまんで言えば、アセンブリー言語のプログラミングと比較したときに
>BDS Cの大きな矛盾は、開発環境の機構と理解を重視したため、
>空間的かつ時間的な実行時のオブジェクトコードの能率の低下を招いてしまったことである。
>しかし、ほとんどすべての教育上の、
>また、ほとんどのシステムのプログラミング・アプリケーションにとって、
>犠牲は益よりも少ないと思う。

つまり、8086や68000のような有能なマイクロプロセッサが、
現存する8bitマシンと置き換わり
アプリケーション志向のアセンブリー言語プログラミングや
ヒストリ・ブックを放棄するに値する
有能なCコンパイラが出現することは確実である。
本書は、そのときのためのウォーミングアップと考えてもらいたい。

と書いてあるように読める
つまり、8bitパソコン+BDS Cは来る日のためのウォーミングアップ用だということ

11 :ナイコンさん (ワッチョイ 2743-Smji):2020/07/03(金) 04:27:39 ID:/lQD1tfv0.net
>>3
ローカル変数6個でも効率悪かっただろ
staticにすればいいというやついたがそれじゃあ、無駄にメモリ食うだろう

12 :ナイコンさん :2020/07/03(金) 09:21:18.04 ID:c+CHEozX0.net
>>11
グローバル変数にすればいいだろ

13 :ナイコンさん :2020/07/03(金) 10:37:45.07 ID:ipQch8RE0.net
BASICの呪いでgotoとグローバル変数は目の敵にされるからな

14 :ナイコンさん :2020/07/03(金) 10:57:41.07 ID:NSrqA+0Tp.net
8ビットでも6809のようにインデックス2本、ユーザー用スタックポインタもあるようなものだと、かなりCに向いてるよ。

15 :ナイコンさん :2020/07/03(金) 11:53:17.40 ID:ahHDk4jhM.net
インデックスレジスタの数もあるけどアドレッシングモードが充実してるのがでかい
ローカル変数へのアクセスはスタックポインタだけでできるし、ポインタなら間接アドレッシングが使えたりする

16 :ナイコンさん (ワッチョイ 0ace-VQSO):2020/07/03(金) 13:39:56 ID:ipQch8RE0.net
Z80ではインデックスレジスタ使うと笑われる

17 :ナイコンさん (ワッチョイ 73ea-VQSO):2020/07/03(金) 13:55:20 ID:Oaj4NUWr0.net
ちまちまHLやDEをINCDECしてデータ配置を何度もやり直す方がバカっぽいけど
なぜか絶対の自信を持ってバカにされたな
大して変わらんのに

18 :ナイコンさん :2020/07/03(金) 14:57:10.58 ID:Sdfpn3NZp.net
SR以前の88ゲームとかでクロック計算しながらループ展開したりして見辛くなるの承知で作るような場合はともかく、それ以外は特に意識せずインデックスレジスタを使うべき。

19 :ナイコンさん :2020/07/03(金) 16:55:57.63 ID:Oaj4NUWr0.net
インデクスレジスタ2本は絶対に譲れない条件
ゲームボーイのCPUが8080改にしたのは大きな失敗
シャープの口車の乗ったバカはいったい何を考えていたのか

20 :ナイコンさん :2020/07/03(金) 19:34:18.29 ID:fMZXE5UE0.net
そういやゲームボーイってZ80系だったよな
なんでファミコンと共通の6502にしなかったんだっけな

21 :ナイコンさん :2020/07/03(金) 20:24:32.28 ID:yHXT79IJ0.net
>>10
それは、8bitにフルCとしてインプリメントできなかった故だな。

やっぱ、8bitパソコン+(タイニー言語にとどまる)BDS Cじゃ、
フルセットCが作られるまでのウォーミングアップ用だろうな。

でも、それですら「犠牲は益よりも少ないと思う」と言ってるだろ。

22 :ナイコンさん :2020/07/03(金) 20:28:01.09 ID:yHXT79IJ0.net
>>11
ん?
staticにしてコードが単純になれば、それでコード用のメモリが
減るから元は取れるな。

23 :ナイコンさん (ワッチョイ 8a16-21HI):2020/07/03(金) 21:02:04 ID:UEboYUqr0.net
>>20
CPUの値段とか入手性とかプログラマーが慣れてるとか開発環境がそれなりにまともだったとか
理由は色々あるわな

24 :ナイコンさん :2020/07/03(金) 23:43:22.60 ID:/lQD1tfv0.net
>>22
そもそも8080でC言語使うのって本当に意味あるの?
C言語はコンパクトで速い実行コードを吐き出すから流行ったわけだが
8080ではコンパクトでもないし速くもないよね?
BASICコンパイラでも使った方が速そう

25 :ナイコンさん :2020/07/03(金) 23:50:40.26 ID:yHXT79IJ0.net
>>24
「BASICコンパイラでも使った方が速そう」って根拠は?
そう言うからには、もちろんBASICコンパイラの出すコードを
いろいろ解析して言ってるんだろうね?

だいたい、キミの言ってることは8bit機用のPASCALにも
そのまま当てはまるけど、8bit用のPASCALでもゲームや
商業プログラムは作成されていないとでも主張するのかい?

26 :ナイコンさん :2020/07/03(金) 23:58:39.58 ID:jh7fleMj0.net
行番号付きのBASICによる開発に比べりゃいろいろ配慮しないといけないかもしれないにしろCの開発は極楽ですがな

27 :ナイコンさん :2020/07/04(土) 00:08:55.11 ID:8jwYai040.net
フルセットのCコンパイラが無いと開発できね〜とか、脳無しだな。サブセットのコンパイラでも高級アセンブラとして使えば十分役に立った。機種依存部分をライブラリ化してしまえば、ソースコードの共通化で工数が減らせる。
そういう使い方、今のヒトには理解できないのか。

28 :ナイコンさん :2020/07/04(土) 00:24:35.67 ID:XXf8SG/A0.net
コンパイラごとに制限が違うのに移植性なんてあるわけがない

29 :ナイコンさん :2020/07/04(土) 00:31:14.34 ID:XXf8SG/A0.net
で、信長の野望以外に当時C言語で8bitパソコン向けに開発されたソフトあるのか?

30 :Artane. :2020/07/04(土) 03:50:11.92 ID:V2Gb5yRD0.net
>>24
アセンブラだとバグ出しやすいし開発効率悪くなるので。
昔だと、コンパイラに吐かせたアセンブラコードをそのままアセンブラに入れるのではなく(それだと速度もコードサイズも厳しいので)、手動で手を加えたりしてましたが、
最近は(今でも8080とZ80と6502それぞれの系譜は需要があるっぽくて、独自にコンパイラ作ったりllvmのフレームワークで作ったりしてる人がいる)コンパイラ側でかなり最適化してしまうようですね。

31 :ナイコンさん :2020/07/04(土) 04:49:13.87 ID:2RgPh9wM0.net
ゲームボーイのCPUはLD HL,SP+d8 とADD SP,d8 がZ80にないCが少し速くなる命令らしい
なくても困らんなぁ

32 :ナイコンさん :2020/07/04(土) 12:18:49.46 ID:2RgPh9wM0.net
アセンブラの分岐は飛び先のラベル名を付けるのが面倒
ちょい先やちょい前くらい$+dと書くより記号で済ませたい

33 :悩めるCプログラマー (ワッチョイ 6b16-ERT+):2020/07/04(土) 21:08:19 ID:NRf2QKBs0.net
>>32
マクロアセンブラとかご存じないでしょうか?
M80とかHITECH-Cのアセンブラとか、便利なラベル機能があるんですが・・・

Cコンパイラの出来とか以前にそもそも8080(Z80も?)というプロセッサが
ポインタ相対でのローカル領域を効率よくアクセスできる仕組みでない
ということが原因のようです。こればかりはほかのいかなるコンパイラ
を使っても同様なのでどうしようもないですね。
いくらか書き込まれているようにホントに重要なところは
アセンブラで書いて工夫するということ以外にないでしょう。

34 :ナイコンさん (ササクッテロラ Sp23-h0J+):2020/07/04(土) 21:23:58 ID:7aD9MH+4p.net
信長より後かと思うがレリクス

35 :ナイコンさん (ワッチョイ 0aed-rs14):2020/07/04(土) 22:17:24 ID:QkZ1os+v0.net
ありえないという表現がわからない
PICやAtmelといった組み込み系の8bitは普通にCで開発するしZ80にしても最近はsdccとかでてるわけで
セルフでの開発は大変だったと思うけど実際の開発事例はある

36 :ナイコンさん :2020/07/04(土) 22:53:16.61 ID:HXQbXtKCM.net
もうその話はだいぶ前に終わっとる

37 :ナイコンさん :2020/07/04(土) 22:59:31.82 ID:KYhOlQnH0.net
>>35
そういった話でとっくに論破されてるのに、ほとぼりが冷めたころに
また同じ内容で蒸し返してるんだよね。
このスレでたった一人で頑張ってるありえない主義者のヒトは。

38 :ナイコンさん :2020/07/04(土) 23:17:27.02 ID:KfojXnmc0.net
今時のワンチップマイコンは8bitでもメモリ容量がMSXより多かったりするし
開発するコンパイラは64bitの環境だし実機で動かす必要ないし
条件全然違うよな

39 :ナイコンさん :2020/07/04(土) 23:19:04.17 ID:4ECLwFip0.net
>>35
PICなんて、Z-80と比較にならんほどCプログラムを
動かす上での制限がキツいのにな。
メモリは少ないわ、スタックは8段しか無いわとか。
それでも当たり前にCで開発してるという実情を知らんのだよ。

40 :ナイコンさん :2020/07/04(土) 23:20:13.90 ID:4ECLwFip0.net
>>38
知らんのだから黙ってろ。

41 :ナイコンさん :2020/07/05(日) 04:55:57.41 ID:Md68gnci0.net
>>38
RAMは少ないがROMに相当するフラッシュは多いね
だからArduinoなんて8bitなのにオブジェクト指向のC++が使える
C++を使ってるおかげで文字列の扱いが楽で
尚且つ他人が作ったライブラリを簡単に使える

42 :ナイコンさん (ワッチョイ 2743-Smji):2020/07/05(日) 05:04:04 ID:Md68gnci0.net
Arduino UnoとかはFlash32KBでRAMが2KBしかないが
これは入門機ですぐにメモリ不足に陥る
するとArduino Mega 2560に移行するわけだが
これはRAMが8KBで少ないが8bitなのにROMに相当するFlashが256KBもある

43 :ナイコンさん :2020/07/05(日) 05:46:01.30 ID:Md68gnci0.net
>>39
たった数百円の8bitマイコンでそんなたいしたことやらないからだろ
C言語だってPICやAVRなら無料で扱える
8bitパソコンはそれこそ総額で20万円くらいしてたからな
そりゃパソコンユーザは骨の髄までしゃぶりつくすわ
投資した金額が違う
それでC言語やるとなればプラス4万円から10万円くらいかかる
しかもサブセット
フルセットだったLSI-C80は当時13万円
結局8bitでC言語ってPICやAVR使ってるやつだってことだ

44 :ナイコンさん :2020/07/05(日) 05:55:36.33 ID:Md68gnci0.net
当時は8bitパソコンでC言語をやるには多額の投資が必要だった
それこそ8bitパソコン本体にC言語につぎ込んだ金を合わせれば16bitパソコンが買える位にな
8bitパソコンに多額の投資をしてサブセットのC言語をやるくらいなら
16bitパソコンを買って付属のBASICやった方が速かったというのが実情

45 :ナイコンさん :2020/07/05(日) 06:00:39.50 ID:Md68gnci0.net
当時のI/Oみればわかるが
投稿されたプログラムで8bitパソコン用でC言語で書かれたものなどほとんどない
ほとんどがBASIC+マシン語

46 :ナイコンさん :2020/07/05(日) 06:12:24.64 ID:Md68gnci0.net
ArduinoなんてWiFi使うのに8bitのAVRのスレーブとして
32bitマイコンのESP8266を使役してたりする本末転倒なことが起こってる

47 :ナイコンさん :2020/07/05(日) 06:25:54.19 ID:t1hxO98v0.net
>>46
趣味というかアートだから野暮な突っ込みは禁止

48 :ナイコンさん :2020/07/05(日) 07:50:33.91 ID:Z2kn5u2pp.net
>>45
そらI/Oは趣味でやってる人達だから。
あの80年代中盤以前でCやるにはOSから揃える。さらにCコンパイラとなると非常に高額で、個人でそこまでやってた人はごく少数。
必然的に理解のある企業内の人材がCをやってた。

49 :ナイコンさん (ワッチョイ 2743-Smji):2020/07/05(日) 08:14:19 ID:Md68gnci0.net
>>48
C言語を使うのは実験的なものが多いだろ
アセンブラでゴリゴリ書いてた時代だぞ
その証拠にPC-98上で動作するLSI-C80のクロス開発版が出たのは1980年代終盤だろ?

50 :ナイコンさん (ワッチョイ 2743-Smji):2020/07/05(日) 08:17:29 ID:Md68gnci0.net
PICは何の略でしょう
Peripheral Interface Controller
つまり周辺を扱うためのただのコントローラー
こんなの効率悪いコードを吐き出そうが関係ない
そもそも8bitマイコンでC言語に適さないアーキテクチャがトップシェアな時点でお察し
8bitマイコンは多少制限が多かろうが価格と低消費電力がすべて

51 :ナイコンさん (ササクッテロラ Sp23-h0J+):2020/07/05(日) 09:03:25 ID:Z2kn5u2pp.net
>>44
ビジネスにしろゲームにしろ、業務なら仕様として低速低機能なものがターゲットになることはある。いまでもな。

52 :ナイコンさん :2020/07/05(日) 10:14:59.30 ID:GkzogDSm0.net
>>ID:Md68gnci0
長々書いても全部憶測と想像と当時の古本を見て書いてることで
当時の現実を知らないことが丸わかりだな。
十数マンで多額の投資?
当時の企業用のテクトロやHPのICE付きZ-80開発機が
いったいいくらしたのか調べてみたらどうだ?

53 :ナイコンさん :2020/07/05(日) 10:27:43.39 ID:GkzogDSm0.net
>>43
>結局8bitでC言語ってPICやAVR使ってるやつだってことだ

あれ?「8bitでCを使ってるやつなんてありえない」んじゃなかったの?
8bitじゃなくて、「8080でCを使ってるやつなんてありえない」って主張だったの?
6809も8bitだしなぁ。

>たった数百円の8bitマイコンでそんなたいしたことやらないからだろ
阿呆だなぁw

54 :ナイコンさん :2020/07/05(日) 10:35:27.82 ID:GkzogDSm0.net
で、結局>>ID:Md68gnci0の主張はどれなんだい?

A.8bit機でCを使ってるやつなんて古今東西ありえない、0人だ。

B.当時8bit機でCを使ってるやつなんてアメリカならともかく日本じゃありえない、0人だ。

C.当時8bit機でCを使うのは高かったからアマチュアではありえない、
  企業で開発していたせいぜい数千人しかいなかった。

55 :ナイコンさん (ワッチョイ 0aed-rs14):2020/07/05(日) 11:19:05 ID:rBaUoZ+10.net
仕事としてプログラム書いてる人の方がホビーユーザーより圧倒的に多いんだけどね
業務で必要であれば10万以上のソフトであっても普通に買いますよ
まあうちはICEはレンタルしてましたが

56 :ナイコンさん :2020/07/05(日) 11:37:20.07 ID:Z2kn5u2pp.net
岩崎技研のPROICE最高。

57 :ナイコンさん :2020/07/05(日) 12:14:46.71 ID:Md68gnci0.net
いつのまにか8bitパソコンの話から組み込みの話になってるなw
ここ、電子板じゃなくて昔のPC板なんですが

58 :ナイコンさん :2020/07/05(日) 12:30:29.37 ID:Md68gnci0.net
>>52
8bitパソコンなんて、所詮子供のおもちゃ
大人はみんな16bitパソコン使ってた
そんなことも知らないようだね
本で読んだだけなんだろうな
一太郎だって、松だってみんな16bitだろうが

59 :ナイコンさん :2020/07/05(日) 12:30:46.85 ID:rBaUoZ+10.net
話をそらしてますな
自分で組み込みの話を沢山書いてるじゃんか

60 :ナイコンさん :2020/07/05(日) 12:35:17.06 ID:Md68gnci0.net
LSI-C80でPC9801で動作するクロス開発版が出たのは1988年か1989年頃
そんなに8bitの開発でたくさんC言語がつかわれてたとするなら
16bitパソコンでHDD搭載機使えばクロスコンパイルのコンパイル速度だって劇的に速いだろうに
業務で使うならHDD搭載の16bitパソコンなんて安いもんだよね?
なんでもっと早くでなかったんだろうね?

61 :ナイコンさん :2020/07/05(日) 12:44:35.16 ID:Md68gnci0.net
1980年代当時、大学ではC言語教えてなかったと書かれてるが

VJEの歩み 萩原健バックス社長に聞く(2)
http://www4.airnet.ne.jp/koabe/com_inet/im/vjehagiwara2.html
> アセンブラからCに変わったとは言え、C自体が新しい言語で、
> 参考書も少なく、教えてくれる人もいなかった。
> 太田: まだ大学でCは教えていなかったと思うのですが、
>    AさんはすべてOJTという形でやっていった。
> 萩原: ありましたよね、バイブルのような本が。
> 太田: カーニハンとリッチーの。
> 萩原: それを日本語訳したものを必死で読んで。
>    それくらいしかなかったですよね。
> 太田: Lattice Cはあまりマニュアルも充実していなかった。
> 萩原: ですね。
> 太田: Lattice Cは当時大分癖があるコード生成で、危なっかしいような。
> 萩原: それは時々ありましたね。
>    プログラムが動かないときは、コンパイラの生成文を疑って、
>    間違ってコンパイルしているぞというのをよく見付けましたね。
> 太田: Lattice Cはずっと変わらず使っていましたか。
> 萩原: 3.0のころまで使っていましたかね。
>    なんで変えたかという理由は、記憶がはっきりしないですけれども(註)。

62 :ナイコンさん :2020/07/05(日) 12:51:48.74 ID:Md68gnci0.net
16bitでもやっぱりアセンブラでの開発が主流だったようですよ
C言語がパソコンで主力で使われだしたのも16bitなんだろうね

> 太田: VJE開発のきっかけとなったのは、どういった仕事だったのでしょうか。
> 萩原: MS-DOSが2.0になるという話があって、
>    そうするとDOSがバージョンアップするにつれ、松下さんからの受託が増えるという世界で。
>    DOSを移植したら、「GW-BASICやMultiplanも移植したいよね」と、
>    そういうポーティングがビジネスの主体になっていました。
> 太田: 開発ツールはどのようなものを使っていましたか。
>    移植は、アセンブラベースでしたか。
> 萩原: アセンブラです。
>    MS-DOSのポーティングの場合は、
>    インテルのMDSというイン・サーキット・エミュレータ(ICE)があるんですが、
>    それを使ったデバッグになります。
> 太田: Multiplanなどの移植には何を使っていましたか。
> 萩原: それもアセンブラですね。デバッグはMS-DOS付属のDEBUGだったと思います。
> 開発は全部アセンブラの時代から、徐々に高級言語を使うようになった。
> バックスも、先に出てきた単語変換ソフトを開発するころから、Cを使い始めたという。
> Whitesmith CやLattice Cなどいくつかのコンパイラを評価し、Lattice Cに決めた。
> Lattice Cはライフボートが販売していた。ライフボートとはそれが縁で話をするようになり、
> 「こんなものを作ったのだが、売ってくれないか」と持ちかけ始まったのが、VJE-86のプロジェクトだった。

63 :ナイコンさん :2020/07/05(日) 12:56:08.28 ID:rLGgZjedM.net
結局ID:Md68gnci0は何を主張してるんだ?
とっちらかっててさっぱり要領を得ないんだが…
ネットで見た断片的な話を妄想で繋げて語ってるだけにしか見えんw

64 :ナイコンさん :2020/07/05(日) 12:59:08.01 ID:Md68gnci0.net
都合が悪くなると話をそらすわけですねw

65 :ナイコンさん :2020/07/05(日) 13:02:45.01 ID:GkzogDSm0.net
やっぱ、「だろうね、」、「だろうね」、「だろうね」の繰り返しかw

で、>>54のどれなんだい?

66 :ナイコンさん :2020/07/05(日) 13:03:10.68 ID:Md68gnci0.net
ちなみにICEを最初に開発したのはIntelという話が
「インテルがまだ小さかった頃」という本に出てくるね
Intelは当時8080や8085用にC言語出してたっけ?

67 :ナイコンさん :2020/07/05(日) 13:04:06.85 ID:Md68gnci0.net
> 太田: Multiplanなどの移植には何を使っていましたか。
> 萩原: それもアセンブラですね。デバッグはMS-DOS付属のDEBUGだったと思います。

68 :ナイコンさん :2020/07/05(日) 13:04:26.05 ID:GkzogDSm0.net
>>64
話をそらしてるのはキミ一人だよ、袋叩きじゃねーかw

まさか、キミに反対してるのは全部一人が自演してると思いこんでるの?

69 :ナイコンさん :2020/07/05(日) 13:06:28.69 ID:GkzogDSm0.net
>>66
インテルはFortranもCOBOLもBASICも出してなかったな。
マイクロソフト他はいろいろ出してたけどねw
で、インテルが言語出してないからなんだって?

70 :ナイコンさん :2020/07/05(日) 13:06:41.52 ID:Md68gnci0.net
どうせ、8bitでC言語派は80年代なんてパソコン使ってなかった人たちだろ?
1990年代になってからパソコンを使い始めた人たち
1990年代はもう、メインフレームやオフコンを除けばC言語一色だったからな

71 :ナイコンさん :2020/07/05(日) 13:07:09.43 ID:Md68gnci0.net
>>69
PL/Mは出してたよ

72 :ナイコンさん :2020/07/05(日) 13:08:07.89 ID:GkzogDSm0.net
>>70
で、キミの主張は>>54のどれなんだい?

73 :ナイコンさん :2020/07/05(日) 13:09:55.76 ID:GkzogDSm0.net
>>62
「ありえない」と「主流でない」とは全然違うんだが、キミの脳内では同じなのか?

74 :ナイコンさん :2020/07/05(日) 13:11:20.24 ID:Md68gnci0.net
なんでBDS-Cじゃないんですかね?
ライフボードはたしかBDS-Cも扱ってたはず
なぜか、C言語の販促に16bitのLattice-Cが使われた

> 開発は全部アセンブラの時代から、徐々に高級言語を使うようになった。
> バックスも、先に出てきた単語変換ソフトを開発するころから、Cを使い始めたという。
> Whitesmith CやLattice Cなどいくつかのコンパイラを評価し、Lattice Cに決めた。
> Lattice Cはライフボートが販売していた。ライフボートとはそれが縁で話をするようになり、
> 「こんなものを作ったのだが、売ってくれないか」と持ちかけ始まったのが、VJE-86のプロジェクトだった。

75 :ナイコンさん :2020/07/05(日) 13:13:07.39 ID:rBaUoZ+10.net
>>58
一太郎で爆発的に普及したVer3が1985年で、同じくらいにPC88mk2SRがでたのでここら辺でホビー8bitビジネス16bitが明確になったんだけど、その前は普通に8bitPCに大人のビジネスユーザーはいたよ
PC88初代やFM8はビジネス向けだったしね

ぐさぐだネットの引用する前にまずは54の質問に答えたら?

76 :ナイコンさん :2020/07/05(日) 13:14:25.43 ID:Md68gnci0.net
パソコンの日本語変換の話になると必ず16bitの話になる
ろくに漢字も扱えない
扱えても非常に不便だった8bitパソコンなんて当時は子供のおもちゃ

77 :ナイコンさん :2020/07/05(日) 13:20:10.09 ID:GkzogDSm0.net
>>76
>>64と誰かさんが言ってるぞw

78 :ナイコンさん :2020/07/05(日) 13:20:22.64 ID:Md68gnci0.net
そもそもCP/M自体が日本では高価で普及してなかったし
8bitのCP/MにMS-DOSのFEPのような機能ってあったのかな?
16bit用のCP/M-86にはちゃんとそういう機能はあったけど

79 :ナイコンさん :2020/07/05(日) 13:38:52.04 ID:GkzogDSm0.net
>>78
なるほど、アメリカではどれも問題なかったわけですね。


で、結局>>ID:Md68gnci0の主張はどれなんだい?

A.8bit機でCを使ってるやつなんて古今東西ありえない、0人だ。

B.当時8bit機でCを使ってるやつなんてアメリカならともかく日本じゃありえない、0人だ。

C.当時8bit機でCを使うのは高かったからアマチュアではありえない、
  企業で開発していたせいぜい数千人しかいなかった。

80 :ナイコンさん :2020/07/05(日) 13:42:22.90 ID:Md68gnci0.net
アメリカでもフルアセンブラで開発されたLotus 1-2-3が
デファクトスタンダードになりましたが何か?

81 :ナイコンさん :2020/07/05(日) 13:43:28.03 ID:Z2kn5u2pp.net
主流で使われたのは16ビット、なんて当たり前のことを書いて話そらさないでね。
スレタイ読めるよね。8ビットでも工夫と市場によってCが使われた例はあるんだよ。
それはどう足掻いたって否定できない。

82 :ナイコンさん :2020/07/05(日) 13:44:26.76 ID:Md68gnci0.net
>8ビットでも工夫と市場によってCが使われた例はあるんだよ。

やっぱり無理しないと8bitでC言語は辛いのわかってるんだね

83 :ナイコンさん :2020/07/05(日) 13:47:01.85 ID:GkzogDSm0.net
>>80
また話をそらすw

>>78は日本じゃCP/Mが高くて普及しないしFEPが必要だと主張してるのを
アメリカならどちらも問題ないよねって返してるんだろ。

>>80
アセンブラで書いてるからスタンダードになったんじゃないだろwww


で、キミの主張はどれなの?
なんで答えられないの?
選択肢増やしてもいいから答えてよ、でなきゃ誰もキミに同意なんてしようがないぞ。

84 :ナイコンさん :2020/07/05(日) 13:49:03.60 ID:kBz7pO00M.net
>>82
> やっぱり無理しないと8bitでC言語は辛いのわかってるんだね
それわかってないやつなんていないと思うが…
まさかと思うけどそれで一矢報いたとか思ってるの?w

85 :ナイコンさん :2020/07/05(日) 13:49:15.04 ID:Md68gnci0.net
8086はローカル変数を多用する高級言語を考慮して作られてる
16bitの8086用C言語ではBPレジスタをフレームポインタとして扱ってるね
BPは暗黙のセグメントがSSになっててもともとがフレームポインタとして使えるように設計されてて
8086のアドレッシングモードではベースレジスタはBXとこのBPが担当してる

86 :ナイコンさん :2020/07/05(日) 13:49:28.53 ID:GkzogDSm0.net
D.8bit機ではCで開発するのは主流でなかった。
 開発の主流はアセンブラだった。

↑コレで良いかい?

87 :ナイコンさん :2020/07/05(日) 13:52:01.49 ID:Md68gnci0.net
>>86
こうかかれてるからね
時期的に8bitが主流の時代はアセンブラ全盛期

> 開発は全部アセンブラの時代から、徐々に高級言語を使うようになった。
> バックスも、先に出てきた単語変換ソフトを開発するころから、Cを使い始めたという。

88 :ナイコンさん :2020/07/05(日) 14:02:16.33 ID:Md68gnci0.net
>>83
>アセンブラで書いてるからスタンダードになったんじゃないだろwww

同じ機能を実現するならフルアセンブラの方が速くてコンパクトになるからね
VZエディタなんて後発のエディタもフルアセンブラが売りだった

89 :ナイコンさん (ワッチョイ 0aed-rs14):2020/07/05(日) 14:54:39 ID:rBaUoZ+10.net
自分で組み込みはスレ違いと言っておきながら今度はFEPに話をそらしますか
まずは54に回答しろや

90 :ナイコンさん (ワッチョイ 2743-Smji):2020/07/05(日) 14:59:43 ID:Md68gnci0.net
FEPがなければアプリ自体が日本語入力の機能もってないと日本語入力できないじゃん

91 :ナイコンさん (ワッチョイ 2743-Smji):2020/07/05(日) 15:04:16 ID:Md68gnci0.net
「パソコン自体の出ている台数も少なかったじゃないですか。」と書かれてるね

http://www4.airnet.ne.jp/koabe/com_inet/im/vjehagiwara2.html
> 太田: エディタと日本語入力プログラムのペアで仕事が出来るというものとしては
>    これが初めてくらいになりますよね。
> 萩原: そうだと思います。
>
> 太田: 萩原さん自身は、日本語入力にはVJEとWordMasterを使っていましたか。
>
> 萩原: VJEは使っていました。
>    ただ、どちらかというと、ラインエディタを使いこなしていましたから、
>    EDLINか何かで文書を書いていたかもしれないですね。
>
> 太田: スクリーンエディタは、まだぜいたくなものだったかもしれないですね。
>
> 太田: このころ、VJEは商売になるという見通しはたっていましたか。
>    パンフレットを見る限り、これで売り出そうというように感じられますが。
>
> 萩原: 受託とパッケージとバランスよくやって行こうという話があって、
>    受託半分、パッケージ半分だと安定するよねという話はしていましたよね。
>    これ(VJE)だけで自社ビルを建てようとか、ご飯を食べようとか、
>    そういうことは考えていなかったですね。
>
> 太田: もう少し時間が経たないと、世の中の流れは見えてこなかったですかね。
>
> 萩原: そうですね。パソコン自体の出ている台数も少なかったじゃないですか。
>
> しかし、PC-9800シリーズが出ていたので、
> フロッピーベースで出来ることは限られていたとはいえ、
> 一般ユーザーも見ている人は見ている、買っている人は買っている、
> という時代でもあった。

92 :ナイコンさん (ワッチョイ 2743-Smji):2020/07/05(日) 15:11:21 ID:Md68gnci0.net
1988年くらいからだな
ASCIIでプログラミングの記事が少なくなったのは
そのくらいからパソコンがプログラミング以外でも一般で普及した感じ
小中高でも先生が事務作業やプリントにパソコン使い始めたのがこの頃

93 :ナイコンさん :2020/07/05(日) 15:25:18.64 ID:GkzogDSm0.net
なんで、ここまで答えるのが都合悪いんだろ?
自分の主張を認めてもらおうと必死になって延々と
書き込みしてるんじゃないのかい?


で、結局>>ID:Md68gnci0の主張はどれなんだい?

A.8bit機でCを使ってるやつなんて古今東西ありえない、0人だ。

B.当時8bit機でCを使ってるやつなんてアメリカならともかく日本じゃありえない、0人だ。

C.当時8bit機でCを使うのは高かったからアマチュアではありえない、
  企業で開発していたせいぜい数千人しかいなかった。

D.8bit機ではCで開発するのは主流でなかった。
 開発の主流はアセンブラだった。

94 :ナイコンさん :2020/07/05(日) 15:33:16.72 ID:rBaUoZ+10.net
日本語入力やパソコン出荷台数と8bitCPUでのC言語にどういう関係が?
まずは質問に答えなさいよ

95 :ナイコンさん :2020/07/05(日) 16:00:53.52 ID:Md68gnci0.net
つまり、日本語がろくに使えなかった8bit全盛期は
パソコンユーザそのものが少なかったということだ

自分専用のコンピュータにあこがれる技術者の玩具か
子供がゲームで遊ぶだけの玩具
そういうこと

96 :ナイコンさん (ワッチョイ 6ade-BXkI):2020/07/05(日) 17:35:44 ID:GkzogDSm0.net
>>95
E.日本語がろくに使えなかった8bit全盛期はパソコンユーザ
  そのものが少なかったからCを使ってるやつなんてありえない、0人だ。

ということですかぁ。

97 :ナイコンさん :2020/07/05(日) 17:54:16.77 ID:nA4Rz6gT0.net
C言語使うのに日本語なんて要らんしなw
そもそもBasicでもカタカナすら使えないマシンあったし

98 :ナイコンさん :2020/07/05(日) 18:56:27.86 ID:J8v1EQp40.net
スレが伸びるのは結構だが、主旨のわからない奴だった

99 :ナイコンさん :2020/07/05(日) 19:02:58.31 ID:ykuGx2kd0.net
C言語でZ80なんてfloatやdoubleの変数を使ったら
メモリ馬鹿食いの激遅になりそう

100 :ナイコンさん :2020/07/05(日) 19:44:32.75 ID:nA4Rz6gT0.net
>>99
たいていの処理系でintでも掛算や割算はサブルーチン呼出になるからコードはたいして増えないと思うよ
激遅なのはしゃーないけど

101 :ナイコンさん :2020/07/05(日) 20:06:31.62 ID:rBaUoZ+10.net
PC-8001は25万台売れたのですよ
80年代の熱気を経験してない人がネットから得た上っ面だけの情報を元に今の知識前提で書いてるように見える
あと、Cに敵意を感じるのでポインタで挫折した口と思われ

102 :ナイコンさん :2020/07/05(日) 20:14:08.08 ID:Md68gnci0.net
マイクロソフトのGW-BASICがオープンソースに 1983年のMS-DOS用BASICをアセンブリ言語で
https://www.itmedia.co.jp/news/articles/2005/22/news099.html
> GW-BASICはIBM PC/XT用に移植された、Microsoft BASICの派生系の一つ。
> Greg Whittenの頭文字を取った(BASIC開発リーダーだった)、
> Gee Whiz(スゲー、ウヒョー)を略した、
> Gates William(ビル・ゲイツの名前と姓を入れ替え)から取ったなど諸説ある。
> ソースコードは当時のIntelプロセッサ、8088向けにアセンブラで書かれている。
>
>  「ちょっと待って、Cのソースコードははどこ?」とのFAQに、
> 「Cのソースコードなど存在しない。
> 70〜80年代の多くのソフトウェアやMS-DOSのソースコードがそうであったように、
> GW-BASICも100%アセンブリ言語で書かれたものだ」と回答している。

103 :ナイコンさん :2020/07/05(日) 20:28:21.97 ID:Md68gnci0.net
>>101
アセンブラやったことある人間ならポインターは自然と理解できるから
ポインタで挫折する人はアセンブラやったことがない人たちだろうな
1980年代はアセンブラの本やマシン語の本は当たり前のようにあったから
今のように敷居は高くなかった
マシン語のゲーム関連の本もたくさん出てたな

104 :ナイコンさん :2020/07/05(日) 20:42:53.44 ID:Md68gnci0.net
1980年代半ばなんて1クラス40人で
クラスで2人くらいしかパソコン持ってる人なんていなかった
持ってる人が少ないのでパソコンやってる人は変人扱い
もちろん、学校ではコンピュータ教育は行われててパソコンが1クラス分整備されてた
習うのはもちろんBASIC
そういう時代

105 :ナイコンさん :2020/07/05(日) 20:53:27.22 ID:Md68gnci0.net
>>99
BASICはデータ型の知識がない初心者でも扱えるように
変数名に何も付けなければデフォルトで単精度浮動小数点だったぞ
変数名の後に%を付けることで整数型になったけどね

106 :ナイコンさん :2020/07/05(日) 21:41:42.91 ID:GkzogDSm0.net
>>104
ああ、当時小学生のボクちゃんだったか。
それじゃ、当時の企業の現場なんて知る由もないな。

107 :ナイコンさん :2020/07/06(月) 04:46:05.93 ID:gIA4pvxW0.net
https://akiba-pc.watch.impress.co.jp/docs/news/news/1211145.html

> [竹内氏]:高校生の時に、テキサスインストゥルメンツのTI-58という3万円くらいの電卓があり、
> それでプログラムというのに触れました。
> そのあとPET2001に出会ってBASICをやり、
> 次はApple IIだったので6502では結構プログラムを書きました。
> その後に仕事がきたので、そこではZ80を使いました。
>
> [三津原氏]:アセンブラがわりと好きな方ですか?
>
> [竹内氏]:アセンブラじゃないと、さすがに書けない。

108 :ナイコンさん :2020/07/06(月) 04:49:36.64 ID:gIA4pvxW0.net
>>106
1985年に25歳だとして今年60歳か
最低でも60歳以上じゃないとわからないな

109 :ナイコンさん :2020/07/06(月) 06:29:51.85 ID:i3UXnKBW0.net
まあわからないなら黙ってろって言うだけのこと
そもそもそう言う板だし

110 :ナイコンさん (ブーイモ MMef-xTOO):2020/07/06(月) 10:50:22 ID:5jJaQMDsM.net
ここはWin3.1までは含まれる板。俺は
DOSのクロスコンパイラでCでZ80用プログラムを書いた。以上。

111 :ナイコンさん :2020/07/06(月) 12:05:05.87 ID:uOA9gujy0.net
Win3.1の頃は、WinMainなんて関数で始まったっけ
あとハンガリアン表記だっけ、lpszStingsなんて名付け方が大流行してたな

112 :ナイコンさん :2020/07/06(月) 15:06:11.92 ID:PFKm/BLcM.net
LSIC-80なんて有ったのか
このスレ見て初めて知った
LSIC-86試食版なら使った事あるけど

113 :ナイコンさん :2020/07/06(月) 19:59:01.66 ID:gIA4pvxW0.net
>>109
では、あなたはわかってるということだから
開発してたというなら実際にどんな8bitパソコン向けのどんなソフトを
どんなCコンパイラ使って作ったか言ってみてね
自分で開発してた、もしくは開発現場を実際に見てた人間ならわかるでしょう

114 :ナイコンさん :2020/07/06(月) 19:59:51.35 ID:gIA4pvxW0.net
>>111
今でもWin32やWin64はWinMainから始まるよ

115 :ナイコンさん :2020/07/06(月) 20:30:00.98 ID:i3UXnKBW0.net
>>113
> では、あなたはわかってるということだから
誰もわかってるなんて言ってないけどいきなりどうした?w

116 :ナイコンさん :2020/07/06(月) 21:20:35.06 ID:x6Zv13cD0.net
>>113
テメェは問われたこと全無視なのに、人には聞くんだなw
先に>>93に答えたら?

117 :ナイコンさん :2020/07/06(月) 22:45:36.84 ID:BoSZ9DEwp.net
スレのタイトルに反して、8ビットマシンでC言語を使っていた人は少ないながらもいたし、少ないながらも市販ゲームにおいてさえCで開発されたソフトはあった、これを否定する人はいないね?
じゃあ解散。

118 :ナイコンさん :2020/07/06(月) 22:53:33.19 ID:BoSZ9DEwp.net
>>107
竹内さんが言ってるのはPET-2001やPC-8001の時代の話だぞ。
BASICの次はPASCALだとか言ってた時代だ。
お前、当時のことあまり知らないだろ。

119 :ナイコンさん (ワッチョイ 2743-EJAe):2020/07/07(火) 03:48:15 ID:aO8AvKj50.net
https://matsuri.5ch.net/test/read.cgi/i4004/1593615761/

> 萩原: MS-DOSが2.0になるという話があって、
>    そうするとDOSがバージョンアップするにつれ、松下さんからの受託が増えるという世界で。
>    DOSを移植したら、「GW-BASICやMultiplanも移植したいよね」と、
>    そういうポーティングがビジネスの主体になっていました。
> 太田: 開発ツールはどのようなものを使っていましたか。
>    移植は、アセンブラベースでしたか。
> 萩原: アセンブラです。
>    MS-DOSのポーティングの場合は、
>    インテルのMDSというイン・サーキット・エミュレータ(ICE)があるんですが、
>    それを使ったデバッグになります。
> 太田: Multiplanなどの移植には何を使っていましたか。
> 萩原: それもアセンブラですね。デバッグはMS-DOS付属のDEBUGだったと思います。
> 開発は全部アセンブラの時代から、徐々に高級言語を使うようになった。
> バックスも、先に出てきた単語変換ソフトを開発するころから、Cを使い始めたという。

120 :ナイコンさん (ワッチョイ 2743-EJAe):2020/07/07(火) 03:50:29 ID:aO8AvKj50.net
URL貼り間違えました

VJEの歩み 萩原健バックス社長に聞く(2)
http://www4.airnet.ne.jp/koabe/com_inet/im/vjehagiwara2.html

121 :ナイコンさん (ワッチョイ 2743-EJAe):2020/07/07(火) 03:51:17 ID:aO8AvKj50.net
VJEの歩み 萩原健バックス社長に聞く(2)
http://www4.airnet.ne.jp/koabe/com_inet/im/vjehagiwara2.html
> アセンブラからCに変わったとは言え、C自体が新しい言語で、
> 参考書も少なく、教えてくれる人もいなかった。
> 太田: まだ大学でCは教えていなかったと思うのですが、
>    AさんはすべてOJTという形でやっていった。
> 萩原: ありましたよね、バイブルのような本が。
> 太田: カーニハンとリッチーの。
> 萩原: それを日本語訳したものを必死で読んで。
>    それくらいしかなかったですよね。
> 太田: Lattice Cはあまりマニュアルも充実していなかった。
> 萩原: ですね。
> 太田: Lattice Cは当時大分癖があるコード生成で、危なっかしいような。
> 萩原: それは時々ありましたね。
>    プログラムが動かないときは、コンパイラの生成文を疑って、
>    間違ってコンパイルしているぞというのをよく見付けましたね。
> 太田: Lattice Cはずっと変わらず使っていましたか。
> 萩原: 3.0のころまで使っていましたかね。
>    なんで変えたかという理由は、記憶がはっきりしないですけれども(註)。

122 :ナイコンさん (アウアウウー Sa09-2R5X):2020/07/12(日) 15:01:54 ID:M75u/wq1a.net
結局、話題そらして逃げまくってんのか。
何がしたいんだ、基地害野郎は。

123 :ナイコンさん :2020/07/13(月) 12:05:09.71 ID:+SCCThR9p.net
>>121
アセンブラが多数派なのは誰だって認めてるよ。
俺もアセンブラでゲーム書いてた。
で、君、8ビットで業務にC言語使ってた人もいることは認めるんだよね?
重要なのはそこだよ。

124 :ナイコンさん :2020/07/13(月) 13:22:47.87 ID:7acVASPTM.net
MSXの頃はアセンブラすら無いのでマシン語を手打ちで作ってた

125 :ナイコンさん :2020/07/13(月) 15:37:10.19 ID:OZ4i2bj30.net
MSXでなくともアセンブラ買う金のない奴はそうせざるを得ない

126 :ナイコンさん :2020/07/13(月) 16:14:13.68 ID:cNXOZ3uQ0.net
BASICでアセンブラ作った

127 :ナイコンさん :2020/07/13(月) 22:41:07.08 ID:XcGgSMuj0.net
当時、BASICのREM文でソース作るアセンブラをよく見かけたな

128 :ナイコンさん :2020/07/14(火) 21:19:00.31 ID:HHEOhlwY0.net
REN文ってなんですか

129 :ナイコンさん :2020/07/14(火) 23:14:48.34 ID:5et4yD450.net
ファイル名の変更。

130 :ナイコンさん :2020/07/15(水) 16:33:33.81 ID:iSAZCXhL0.net
アハハ(^。^;)

131 :ナイコンさん :2020/07/21(火) 17:40:37.38 ID:FwDRgbJ8M.net
MSX-C 買った人いる?

132 :ナイコンさん :2020/07/21(火) 18:21:15.09 ID:do3ZnWX00.net
>>131
かなり欲しかったけど、自分の小遣いでは高くて無理だった。
結局ずっと本に載ってたアセンブラを使ってたwww

133 :ナイコンさん :2020/07/21(火) 21:42:26.56 ID:w0tevWg00.net
>>131
TAKERU で買ったな。
ロジック部分を書くときはアセンブラよりはマシ、ぐらいかな。

134 :悩めるCプログラマー :2020/07/23(木) 00:28:12.31 ID:d55kalL40.net
cc65という6502(65c02とかも)を想定したクロスコンパイラがある
だれか使っている人いますか?よくできたコンパイラと思いますが・・・

135 :ナイコンさん:2020/07/25(土) 21:36:12.99 ID:2hvl7Lm1l
内蔵ドライブを2DDに取り替えて、基盤のDIPSWいじって、2DDのディスクにOSかけば、それで起動した。
こな何かに書かない中にかに着なね期にけけ中にきこきにき

136 :ナイコンさん :2020/07/26(日) 14:21:58.39 ID:qCh905DKa.net
最初に就職したソフトハウスは研修でLSI-C80使わされたっけなー。

137 :ナイコンさん :2020/07/26(日) 14:49:28.91 ID:zBTbPPI90.net
msxCてROM用のコード出せるの?

138 :ナイコンさん :2020/07/26(日) 17:40:31.96 ID:46YN765c0.net
時代的にはもっと後になるが740ファミリ用Cコンパイラが国内で1番多く使われてた8bit環境だろうってな話もあったよな
そこいらの家電で使われまくってたってな

139 :ナイコンさん (ワッチョイ b3e6-7SBb):2020/08/10(月) 23:24:54 ID:hy57bCog0.net
Cってそんな、、、恥ずかしいし

140 :ナイコンさん :2020/08/11(火) 15:59:02.29 ID:Fvb1TVfXa.net
C とは高級アセンブラ

141 :ナイコンさん :2020/08/11(火) 22:26:06.27 ID:rKwDbif+0.net
「C言語は高級言語であって、アセンブラとは根本的に異なる。
しかしアセンブラだと言われてみればそんな気もしなくもない。
そうだ、Cはアセンブラに違いない」

次第にそう思うようになります、と何かの本に書いてあった。

142 :ナイコンさん (ワッチョイ 8696-zKfl):2020/08/12(水) 07:42:02 ID:Tldk9SV/0.net
CはCPUが見えなくなるまでマクロを強化したマクロアセンブラ

143 :ナイコンさん (アウアウウー Saa5-0m7r):2020/08/12(水) 12:51:56 ID:i8XIl/Tua.net
レジスタやスタックを意識した言語仕様だからね

144 :ナイコンさん :2020/08/13(木) 12:30:45.56 ID:e3zxyVvO0.net
アセンブラじゃなくて
アセンブリ言語な。

145 :ナイコンさん (ワッチョイ c19e-Vquy):2020/08/29(土) 18:59:21 ID:tI3KWwZm0.net
実行速度はCとアセンブリじゃ3倍ぐらい差が出る

146 :ナイコンさん (ワッチョイ 92fd-0aHt):2020/08/29(土) 20:34:10 ID:ADoB9XFN0.net
アセンブラやっててレジスタが足りないとかアドレッシングが面倒いとかそう言う不満があったらCやってみるといいかも

147 :ナイコンさん (ワッチョイ c19e-Vquy):2020/08/30(日) 08:50:11 ID:wF4qSyM20.net
レジスタが足りなくなるのはデータ構造の設計に問題があるだよね|ω・)

148 :ナイコンさん (ワッチョイ 0656-xiBb):2020/08/31(月) 01:22:34 ID:4gRC+gi00.net
>>147
6502 < 何だって?

149 :ナイコンさん (ワッチョイ 3dcb-e5MG):2020/08/31(月) 18:26:46 ID:Wkoh6GcU0.net
レジスタが沢山有るのと
キャッシュメモリーが沢山有るCPU
はどっちが偉いんだ

150 :ナイコンさん (ワッチョイ 0216-YRmH):2020/08/31(月) 19:27:13 ID:HtkmFONV0.net
>>149
基本キャッシュの方が有利
レジスタの本数が多いと命令のレジスタ指定のビット数がたくさん必要で命令長が増える
レジスタウインドウとかもあるけどそれはそれで色々性能劣化要因になったりするし

151 :ナイコンさん (ワッチョイ 7f7a-XrX+):2020/09/03(木) 07:48:40 ID:Xu2XVCAG0.net
無暗に汎用レジスタの本数ばかり増やしてもそれを指定するビット数が嵩張るので
特に8bitや16bitで命令長も基本的にそれだけしかないところで汎用レジスタ256本とかやられても
じゃあレジスタ指定する度に命令長1バイトずつ増えるのかよみたいな

32bitや64bitならその辺はどうにかできるかもしれないけど、
今度はそれで割り込みやコンテキストスイッチの度に退避するのにどれだけ掛かるんだよ…って話にもなるので

152 :ナイコンさん (ワッチョイ 470f-d17y):2020/09/03(木) 09:57:22 ID:jo6Ap2Qm0.net
>>150
キャッシュはキャッシュが効くような構造のCPUじゃないとほとんど意味ない

153 :ナイコンさん (ワッチョイ 5f16-Dxny):2020/09/03(木) 10:11:54 ID:GJ8t+kEW0.net
キャッシュが効かない構造のCPUにキャッシュつけるとかのアホな想定されてもなぁw

154 :ナイコンさん (ワッチョイ 07ea-XrX+):2020/09/03(木) 12:42:26 ID:BRo6C3vL0.net
ノーウェイトのメモリ使えるからね

155 :ナイコンさん (ワッチョイ c79e-zLUu):2020/09/03(木) 21:15:50 ID:lDce4UaU0.net
メモリアクセスは悪

156 :ナイコンさん :2020/09/11(金) 08:49:44.05 ID:SwYiYTENM.net
面倒なアルゴリズムは、アセンブリ言語ではキツイからそこだけはCでって以外8bitでCを使うメリット無いよね。

157 :ナイコンさん :2020/09/11(金) 16:07:02.33 ID:26xkomff0.net
Windows10搭載 ノートパソコン
1万円 http://shop-rakuten-ch.2chblog.jp/archives/7030035.html

画像より中身のゲーム作ってください

158 :ナイコンさん :2020/09/12(土) 16:09:18.77 ID:oKGEHiRV0.net
>>156
要はメインルーチンは C でってことだね。
それ大きなメリットじゃないの?

159 :ナイコンさん :2020/09/12(土) 16:13:18.49 ID:Yp/4Ykg+0.net
main()に面倒なアルゴリズムをCでぶっこんでアセンブラから呼ぶとはなかなか画期的な設計だ。

160 :ナイコンさん :2020/10/15(木) 00:29:13.46 ID:1ktbdNSR0.net
>>159
組みたくない。

161 :ナイコンさん :2020/10/15(木) 00:58:38.64 ID:BxZgdNXc0.net
>>159
なんでそんな事するんだ?
普通、関数をライブラリにしてリンクするだけだろ。

162 :ナイコンさん :2020/10/15(木) 19:14:50.81 ID:LQRU5Thk0.net
C の関数をライブラリにするのももちろんだけど、
面倒なロジックも C で書きたいだろ。
ライブラリの中のより細かな制御がいる部分はアセンブラ、みたいな。

163 :ナイコンさん :2020/12/25(金) 19:13:09.55 ID:/Y7RB8Ll0.net
Hitech Cでレジスタを参照したい時とか、
インラインアセンブラで変数をレジスタに入れる方法教えてください。
あと、特定のアドレスへのポインタの作り方。
例えばC000Hを読み書きするポインタは、MK_PTみたいな便利な関数ないですかね。

164 :ナイコンさん :2020/12/28(月) 21:32:36.78 ID:6PMVob3q0.net
>>163
インラインアセンブラは調べてみるね・・・
0C000Hを読み書きするポインタは普通に
char *cpnt = 0xc000;
int *ipnt = 0xc000;
*(char *)0xc000 = VAL;
とかのようにすればよかったりしない?

165 :ナイコンさん :2020/12/28(月) 23:28:39.85 ID:fwD88Xbj0.net
>>164
早速試してみます。

166 :ナイコンさん :2020/12/29(火) 14:07:24.65 ID:EGW6ird40.net
>>164
読み書きできました。
ありがとうございました。

167 :ナイコンさん :2020/12/29(火) 20:07:30.44 ID:EGW6ird40.net
インラインアセンブラで変数を渡すのは、見つけました。
uchar *BUF=0xC000;
で宣言しておいて、
#asm
LD HL,(_BUF)
#endasm
でできるようです。勿論HLレジスタ退避させないとダメですが。
自己解決ですが、備忘録で残しておきます。

168 :ナイコンさん :2020/12/30(水) 10:14:17.09 ID:8nncfXq60.net
>>167
なるほどそうやるんですね、共有ありがとうございます。

169 :ナイコンさん :2020/12/31(木) 03:12:40.59 ID:it5M+/mV0.net
>>キャッシュはキャッシュが効くような構造のCPUじゃないとほとんど意味ない

スタックフレーム上だけキャッシュが効くようにすることも可能じゃないの?
スクラッチパッドメモリも色々と使われてるよ。
例えば初代プレステとかIntelの組み込み系(Arduino互換のGalileoやCurie?というのかな)
Intelの組み込み向けとかだと小規模で電池動作なのでx86にキャッシュないので部分的に
高速なキャッシュと同等のスクラッチパッドメモリ付いてるよ。
8bitだと川崎のZ80とか、AppleIIの6502もキャッシュつける拡張もあった希ガスる

170 :ナイコンさん :2021/01/01(金) 02:48:46.77 ID:vSLT4fxDd.net
>>167
宣言 (declaration) じゃなくて、定義 (definition) な。

171 :ナイコンさん :2021/01/01(金) 18:08:49.93 ID:uHpzQgQ10.net
>>170
言語によってはこのような場合declare と記述するのもある。
C言語ではみなさんご存じ#define があるが意味が異なる。

172 :ナイコンさん :2021/01/01(金) 18:28:35.50 ID:WQSgEdDdd.net
>>171
「言語によっては」?
はぁ?
スレタイ読めないのか?

173 :ナイコンさん :2021/01/30(土) 02:32:17.05 ID:vvdis50La.net
>>172
脱線したんだろ

174 :ナイコンさん :2021/01/30(土) 03:44:30.29 ID:DMRiqkuT0.net
8bitCPUってPICとかの組み込みマイコンしかもう
使われていないだろう

175 :ナイコンさん :2021/01/31(日) 09:08:12.74 ID:UKXRREKNM.net
>>174
組み込みじゃないのって、単体PCってこと?
MSXの時代で終わったよな。
組み込みなら8051とかもまだ現役だけど。

176 :Artane. :2021/01/31(日) 23:56:13.31 ID:IkOd74ld0.net
>>174
パチンコ台の制御側がまだZ80コアの東芝か日立かどっかのCPU必須でなかったでしたっけ?(´・ω・`)
もうちがうかも知れませんが。

177 :ナイコンさん :2021/02/04(木) 22:54:34.61 ID:YSUOfIN70.net
パチはZ80まだ使ってるよ

178 :ナイコンさん :2021/02/05(金) 03:16:10.79 ID:b/F/M7P00.net
8bit CPUなプログラム環境だと、今でも電卓でeZ80がメジャー張ってるだろ
Z80から68000に移行させようとして失敗してeZ80って互換性重視な現場の判断で

179 :ナイコンさん :2021/02/05(金) 12:12:35.05 ID:Nm46hxCIM.net
eZ80のワンボードマイコンが売っているが
Arduinoの10倍近い価格だな

180 :ナイコンさん :2021/02/05(金) 21:38:18.55 ID:HmKSC5Uv0.net
>>176-177
> パチンコ台の制御側
バリバリの組込やん…

181 :ナイコンさん :2021/02/05(金) 21:46:58.25 ID:gYY/M/Zc0.net
最新の台でも
天下り役人が絡んでいる部分は変えられないって事か

182 :ナイコンさん :2021/02/12(金) 11:51:55.35 ID:pppcRYYja.net
TI電卓

183 :ナイコンさん :2021/02/15(月) 05:49:28.06 ID:ogjHkIZn0.net
大昔のファミコンのソフト開発って
時代が進んでゲームが複雑化した頃には
C言語のクロスコンパイラを使ってたんだろうかやっぱり

184 :ナイコンさん :2021/02/15(月) 08:54:29.73 ID:chGngYTX0.net
あの時代メモリがシビアだったからCとかは使いにくかったろうね
RAM2kBじゃスタックも足りなくなりそう

185 :ナイコンさん :2021/02/15(月) 12:29:56.89 ID:88Iga7Bv0.net
今ならUnity使えるね。

186 :ナイコンさん :2021/02/20(土) 01:11:53.73 ID:RtJMV4qfa.net
8bitの大規模開発の問題点は
C言語を使うと生産性が向上することよりも
メモリリソース不足に悩まされる事にある

187 :ナイコンさん :2021/02/22(月) 14:52:26.30 ID:ISQyWswI0.net
コンパイルの時間の長さに辟易してたな

188 :ナイコンさん :2021/02/22(月) 14:53:30.17 ID:ISQyWswI0.net
PC88のCP/M上でBDS-Cで開発してた

189 :ナイコンさん :2021/03/06(土) 12:26:08.72 ID:F89rc/xfa.net
>>131
遅レスだがここにいる
Cがどのように関数を呼び出してるかとか、コンパイル後のアセンブリを見まくって勉強になった

あと、信長の野望・全国版のマニュアルにこのゲームはC言語で作られてますと書いてあって、Cに憧れたw

190 :ナイコンさん :2021/03/10(水) 18:08:55.59 ID:djEYuxJA0.net
>>189
チープな8bitPC環境じゃメモリ食いすぎて禄に使い物にならなかっただろう。
コンパイルすら一苦労だったはず。一体どういう規模のものが作れて、どれぐらいの速度が出たか教えていただきたい
。当時8bitPCで一世風靡したアクションRPG的なものは実装できましたかな?

191 :ナイコンさん :2021/03/10(水) 19:37:31.19 ID:NQObyUHJ0.net
16bitでもアセンブラで作ってたわな
だからと言って16bitではCは使われてなかったって事はない

192 :ナイコンさん :2021/03/10(水) 22:21:25.79 ID:lQdtLuUU0.net
>>190
自分でコーエーに問い合わせればいいじゃんw

193 :ナイコンさん :2021/03/10(水) 22:36:09.08 ID:djEYuxJA0.net
>>192
? あなたには質問してませんし、コーエーの話なんてしてませんが。

当時、憧れてCの8bitPC開発環境を手に入れたという人にCでの実装時の体験談を聞いているんです。
もし当時、あなたもお持ちでしたなら存分に語ってくださいませ。とても価値のある話ですよ、それは。
何しろ当時の最先端ですからね。Cが標準化される前のC黎明期の話です。

194 :ナイコンさん :2021/03/10(水) 23:58:54.07 ID:hJTJyV9Ga.net
>>190
MSX2+だからメモリは64KBあったし、16bit整数は使えるしポインタも16bitだ
アセンブリ言語で作るより多少メモリ食うだけで何も困ることなんて無いよ
ま、実行速度も多少遅くなるだろうね
ただBASICみたいにゲーム作るための便利な命令が無いから、アセンブリ言語で作るレベルのハードウェアの知識が必要になる
Cで出来ないことは、ハードウェアの性能を限界まで引き出す事が出来ないだけで、アクションRPGだろうが何だろうが全然普通に作れる

195 :ナイコンさん :2021/03/11(木) 00:44:51.31 ID:Y6YsHfet0.net
> アクションRPGだろうが何だろうが全然普通に作れる

あたなが伝説の8bitCPUでCは普通に使える君ですね。レスを頂いて光栄です。
一番有名なファルコムのARPGなどは解析でアセンブラを使ったクロス開発だと言われてますが時代遅れだったんですね^^ Leor Zolmanと真逆のレポありがとうございます。

196 :ナイコンさん :2021/03/11(木) 22:00:17.15 ID:vHmWTsAv0.net
>>190
クロスコンパイラくらいあったろ。

197 :ナイコンさん :2021/03/12(金) 03:42:57.12 ID:h7nwanol0.net
当時の8bitPC開発環境(MSX2+ MSX C)でのC開発の体験談を聞いたらとても貴重な情報がありました。

・16bit整数が使える
・ポインタが16bit
・アセンブラより多少メモリ食うだけで困ることは何もない
・実行速度はアセンブラより多少遅くなる
・BASICにはゲームを作るための便利な命令がある

198 :ナイコンさん :2021/03/12(金) 08:56:41.81 ID:WSgdr7zy0.net
MSX CってLSI C-80のOEMでしょ
デフォルトだとIX使いまくりの酷いコード吐き出すよ
https://www.lsi-j.co.jp/official/product/other/lsic80/

199 :ナイコンさん :2021/03/12(金) 09:26:06.75 ID:5xYRUfcT0.net
>>198
LSI Cは、もともと8080用のコンパイラ
デフォでインデックスレジスタ使うわけねーだろ
まったくこれだから当時を知らずに知ったかで騙る無知蒙昧な阿呆はw

200 :ナイコンさん :2021/03/12(金) 09:28:57.32 ID:5xYRUfcT0.net
ローカル変数をインデックスレジスタ使ったスタックフレームに割り付けるのはHI-TECH Cだ。

201 :ナイコンさん :2021/03/12(金) 09:34:17.89 ID:Lnxbe3zaM.net
なんでIXレジ使ったら汚いコードになるんだ?Z80の全機能を駆使して最適化出来ればそれでいいと思うけど。裏レジスタ駆使してもいいし。裏命令使うと互換CPUでの動作に支障があるから勘弁して欲しいが。

202 :ナイコンさん :2021/03/12(金) 13:27:11.42 ID:QwBFSdpS0.net
遅くなるからかも

203 :ナイコンさん :2021/03/12(金) 16:14:34.94 ID:uabFATAya.net
Z80はPC SP IX IYとアドレスに関連するものは16bitだし、BC DE HLで16bit整数演算も出来るけど、8bitCPUだ
結局は8bitと16bitCPUの境界は曖昧だよな

>>198
いや、IX IYはC言語では使いまくらないと辛いだろ
そもそもその為にある
これを汎用レジスタとして使う裏技が有ったが、それは汚い使い方と言える

204 :ナイコンさん :2021/03/12(金) 17:05:07.68 ID:1PGOWZ5+0.net
レジスタ同士での演算クロック数見りゃ一目瞭然
4クロックが11クロックに伸びてるんだから8bit CPUだって

205 :ナイコンさん :2021/03/12(金) 22:55:25.46 ID:h9oBo3rka.net
Z80で使うと笑われるもの
IX,IY
裏レジスタ
ビット命令

でもビット命令はAレジ以外なら使ってもいいかと。
わざわざAに移してからAND xとかするよりは効率的。

206 :ナイコンさん :2021/03/12(金) 23:27:06.06 ID:h9oBo3rka.net
でも複数のビットを調べたいならBIT命令並べるよりAccに移してからAND xの方が速いか。

207 :ナイコンさん :2021/03/13(土) 00:15:03.46 ID:3F1NR+4Na.net
>>205
IX IYを汎用レジスタとして使うのは裏技だったから、それを誤解して普通に使って笑われるとか言う奴は単なるにわかw

208 :ナイコンさん :2021/03/13(土) 00:18:30.37 ID:bMhdcOOW0.net
そこのおじーちゃん二人、ここはCスレですよ。ボケちゃったんですか?

209 :ナイコンさん :2021/03/13(土) 05:04:07.94 ID:susbCSS10.net
LSI-CのPC98で動作するクロスコンパイラが出たのって1989年頃じゃなかったっけ?
さすがに8bitのCP/M環境でセルフコンパイルで開発はないだろうな

信長の野望がC言語で開発されてたといっても
アクション性の低い、シミュレーションゲームだしな
当時は16bit用だとBASICで書かれたシミュレーションゲームもあった時代だし

210 :ナイコンさん :2021/03/13(土) 05:15:05.44 ID:susbCSS10.net
>>208
C言語がどういうコード吐き出すかは重要
といってもここのC言語派の人たちは
Z80は知らない世代でAVRやPICでC言語使ってる人が多いのだろうけど
IX、IYはインデックスレジスタとして使うと非常に遅い
LD A,(BC)やLD r,(HL)が7クロック、LD A,(nn)が13クロックなのに
LD r,(IX+d)が19クロックだからな
だからあまり使われない
あと、当時のコンパイラは8080用のコードしか吐き出さないコンパイラも多かった

211 :ナイコンさん :2021/03/13(土) 09:19:13.75 ID:fYDnuYmA0.net
データ構造の工夫で対応できればいいけど、
構造体みたいなのにアクセスする時はインデックスレジスタ使ったほうが
効率的だったりするんじゃないの?

212 :ナイコンさん :2021/03/13(土) 10:02:45.43 ID:3F1NR+4Na.net
汎用レジスタをインデックスに使ったら勿体ないというのもある
汎用レジスタは足りないのが常だからな

213 :ナイコンさん :2021/03/13(土) 10:24:19.02 ID:K/emNMjm0.net
>>210
> LD A,(BC)やLD r,(HL)が7クロック、LD A,(nn)が13クロックなのに
> LD r,(IX+d)が19クロックだからな
そうは言ってもLD r,(HL)でオフセット処理含めたらそれ以上にかかるわけで…
C言語は>>211が言うように構造体とかローカル変数とかでインデックス+オフセットでアクセスするケースが結構多いからIX, IY使わないのはもったいなさすぎる

214 :ナイコンさん :2021/03/13(土) 12:15:27.09 ID:Ya7NyehO0.net
HLはレジスタ割付変数として使いたい場合が多いだろうしな

215 :ナイコンさん :2021/03/13(土) 17:19:58.69 ID:bMhdcOOW0.net
そのとおり、結局、スタックフレームをシンプルに実装したいわけですよ。つまり
ld a,(bp+n)
ld (bp+n),a
というアドレッシングがあると楽できるんです。だから6502はCに向かないのです。

216 :ナイコンさん :2021/03/13(土) 18:18:05.35 ID:K/emNMjm0.net
>>215
6502はインダイレクト・インデックス アドレッシングモードがあるからゼロページをベースレジスタと割り切れば意外とC向きだったりするよ
LDA [$80],Y ; 0x0080〜0x0081 が示す番地にYレジスタの値をオフセットとした番地の内容をAレジスタに読み込む

217 :ナイコンさん :2021/03/13(土) 20:20:31.73 ID:bMhdcOOW0.net
ポインタとして使える16bitレジスタがない、スタックサイズが256byeまで…
6502、Z80、6809と比べても先発の6502は高速軽量でもCに向いてるとは

218 :ナイコンさん :2021/03/13(土) 21:01:24.29 ID:susbCSS10.net
C言語に向いてる8bit CPUは後発の6809ぐらいじゃない?
Z80は結局、C言語本来の書き方すると効率が悪くなる場合があって
アセンブラコード出力を気にしながら
効率的なアセンブラコードが出力されるような書き方をあえてしないと
遅くなるのでは?

219 :ナイコンさん :2021/03/13(土) 22:14:01.00 ID:aLnnhpqfM.net
>>217
> ポインタとして使える16bitレジスタがない
ゼロページをベースレジスタと割り切れば
って書いてるでしょ
インダイレクトアドレッシングモードがあるから性能はともかくそんなに不自由はしないよ

> スタックサイズが256byeまで…
まあこれがあるからでかいプログラムは難しいのは事実だけど

220 :ナイコンさん :2021/03/13(土) 22:23:18.93 ID:Ya7NyehO0.net
6502のCだと基本的にリターンアドレスしかスタックには積まず、
Forth言語系のようにユーザースタックを使う形だな

221 :ナイコンさん :2021/03/13(土) 22:27:13.54 ID:bMhdcOOW0.net
では、少し実装見てみよう。とある6502 ATARIマシンのcコンパイラの場合

https://en.wikipedia.org/wiki/Deep_Blue_C
>The compiler creates binary code for Intel 8080 processor which is then executed by an 8080 virtual machine.

正直、割り切りすぎだと思う。

222 :ナイコンさん :2021/03/14(日) 01:03:12.69 ID:kMaGgd4N0.net
>>221
はっはっは。
でも、その少し前のミニコンでも(Cじゃないけど)そういう手法は使われたみたいよ。

223 :ナイコンさん :2021/03/14(日) 15:01:55.84 ID:G+6Cwuck0.net
Ms がMULTIPLAN開発に用いたというCコンパイラはpコード生成だったのかな。
色々な8\16bitパソにポートする際、機能統一をなるべくソースに入れずにランタイム
をいじって賄っていたという。おかげで低レベル機能のパソに縛られて表計算機能の
アプデが阻害されて先がなくなったとか。

pコードといえばUCSD pascalが有名で、AppleのApple pascalはUCSDの移植版。
UCSDのApple版の実際の移植はあのビル・アトキンソンがやったんだってね。Apple///
のシステムツールやアプリで多用されたとか。ウィザードリも。

https://news.ycombinator.com/item?id=18163849
https://www.folklore.org/StoryView.py?project=Macintosh&story=Joining_Apple_Computer&showcomments=1

224 :ナイコンさん :2021/03/14(日) 15:02:40.25 ID:G+6Cwuck0.net
入れずに 手を入れずに

225 :ナイコンさん :2021/03/14(日) 23:27:26.28 ID:0HBwh2H00.net
先っぽだけ

226 :ナイコンさん :2021/03/15(月) 15:15:08.27 ID:5Ixzpe1s0.net
>>218
16bitでも32bitでも吐き出すコード気にしながら書くだろ
ところどころインラインでニーモニック直接書いたりするし

227 :ナイコンさん :2021/03/15(月) 22:09:37.97 ID:VIbKnyxH0.net
AppleのWozniakも6502の8bit縛りによほどキレたのか仮想16bitCPUのsweet16提供してるし、
おら、8080のvmで逃げるのもありに思えてきたぞ。

228 :ナイコンさん :2021/03/16(火) 16:59:50.67 ID:4I1qaIRg0.net
6502はスタック以外の領域に2バイトデータや8バイトデータを積んでも
ペナルティが発生しないのところがさすがだよ

229 :ナイコンさん :2021/03/18(木) 16:57:48.67 ID:KP/5LSsF0.net
当時のC言語の使われ方だと、多種CPUでもソース分けせず移植性の高さを重視してたから、
8080互換は重要だったようだな
一応は6502ネイティブなC言語も、8080版との互換性重視で6502としては酷いコードしか出さないて愚痴られてた
740ファミリ用Cコンパイラのようなメモリモデル複数使い分けって、8086版でfarとか使うようになって開き直ってからか?

230 :ナイコンさん :2021/03/19(金) 22:12:15.15 ID:nzeCwSZ30.net
8080→6502ってやっぱりアーキテクチャ上、面倒な壁がありますね。→6809なら相当楽できたでしょうな。

231 :ナイコンさん :2021/03/20(土) 02:40:42.23 ID:N0bAO6o80.net
むかし雑誌(たぶんOh.MZ)に書かれてたが、MZ2000用のLogo言語はCで書かれてたんじゃなかったっけ?

クロス開発かZ80セルフコンパイラのどちらだったかは憶えてない。

232 :ナイコンさん :2021/04/20(火) 08:54:16.85 ID:6Kgg+cdu0.net
ねーねー、8bit機でC言語使われてた、まともに動くかはわかんないけどって話なのに、頑なにあり得ないって言っている人未だいるの??。

233 :ナイコンさん :2021/04/20(火) 11:49:24.25 ID:xniRtR4B0.net
ねーねー、8bit機でC言語使われてた、まともに動くかはわかんないけどって話なのに、頑なにあり得ないって言っている人未だいるの??

234 :ナイコンさん :2021/04/21(水) 18:42:19.68 ID:/y3/WUs80.net
「まともに動く」」というのも定義が曖昧だな。

8bit機のLispは、まともに動いたのか?

8bit機のFortranは、まともに動いたのか?

8bit機の表計算ソフトは、まともに動いたのか?

8bit機のワープロソフトは、まともに動いたのか?

8bit機のDTPソフトは、まともに動いたのか?

8bit機のDTMソフトは、まともに動いたのか?

235 :ナイコンさん :2021/04/21(水) 18:45:28.46 ID:dVJyxsCY0.net
8bit機しか使えない頃には一晩がかりでもまともに動いてる扱いだったしな

236 :ナイコンさん :2021/04/30(金) 21:09:08.99 ID:TXXKhDs70.net
ねーねー、8bit機でC言語使われてた、まともに動くかはわかんないけどって話なのに、頑なにあり得ないって言っている人未だいるの?? ?

237 :ナイコンさん :2021/05/01(土) 00:46:27.58 ID:iXk63Cxq0.net
>>236
あの、ありえないキチガイくんは自分はいろいろ回答を求めるくせに、
自分が何か問われても都合が悪いのか一切答えないから聞いても無駄だよ。

238 :ナイコンさん :2021/05/26(水) 07:52:49.35 ID:EE8pdT/Ea.net
そもそも「ありえない」がありえないキチガイ君が突然言い出した嘘だからね。

239 :ナイコンさん :2021/05/28(金) 08:39:12.65 ID:YH5Ey3Tt0.net
今までのまとめ

8bitCPUでC言語は普通に使えた。普及してた。

ありえない。制限がいろいろあった。糞遅かった。開発環境は? PCの機種は? コンパイラは?

答えず逃亡

「8bitCPUでC言語はありえない」と文脈を改変、捏造し反撃に出る。

しかし相変わらず使用してた開発環境を突っ込まれる。

一人がPC98のDOS上のクロス開発で、しかもターゲットは組込Z80ボードと答えてしまう。
C使ってたと乗っかって暴れてた馬鹿の機種もR800の16bitCPUだったとバレる。

昔の雑誌がアップロードされ、8bit機ではC言語は普及していないという記事が見つかる。

240 :ナイコンさん :2021/05/28(金) 09:10:14.66 ID:Qz+neusDa.net
「8ビットCPUでC言語あり得ない!」

8ビットパソコンでC言語あり得ない!

80年代に8ビットパソコンでC言語あり得ない!

遅いから8ビットパソコンでC言語あり得ない!

高いから8ビットパソコンでC言語あり得ない!

と「あり得ない」の条件をコロコロ変えてるが、80年代に8ビットCPUでC言語使っていたという書込みが何件かあったわけだ。
それに対しても「市販ソフトにはなかったからあり得ない!」という謎理論(屁理屈と言う)まで持ち出してまで「あり得ない」という嘘を付きとおしたいキチガイなんだよな。

241 :ナイコンさん :2021/05/28(金) 11:54:06.06 ID:5AMnJmNX0.net
6てん

242 :ナイコンさん :2021/05/28(金) 11:56:14.17 ID:8hlblSZV0.net
使い物にならんかったってのは事実

243 :ナイコンさん :2021/05/28(金) 12:03:39.69 ID:D7Yz8Auta.net
MSXの信長の野望全国版はC言語だったし、使い物にならなかったってのは嘘
信長の野望で光栄はぼろ儲けした

244 :ナイコンさん :2021/05/29(土) 10:07:41.31 ID:6iAcixh3a.net
1例でもC言語が使われてる出てる時点で「ありえない」は嘘確定。

245 :ナイコンさん :2021/05/29(土) 10:58:07.17 ID:pxrQl6JU0.net
16bit機で開発ならありだろうけど
8bit機のコンパイル時間はムリ

246 :ナイコンさん :2021/05/29(土) 11:42:16.96 ID:8tVUB08P0.net
他機種でコンパイルするクロスコンパイラはスレ違?

247 :ナイコンさん :2021/05/29(土) 12:18:27.83 ID:5IwNbP5ma.net
最終的に8bitCPUでコンパイルしたコードが動けば、クロスコンパイルも有りでしょ
実際、昔のゲームメーカーはクソ高いワークステーションを買わされるから、それを使わない手はない

248 :ナイコンさん :2021/05/29(土) 14:33:41.93 ID:TjqNwZkD0.net
そりゃアセンブリで書けるんなら不要だが現実的じゃないだろ。

249 :ナイコンさん :2021/05/29(土) 18:09:35.82 ID:EpB107XS0.net
信長の野望なんてシミュレーションゲームでリアルタイム性なんて二の次
PC9801版の大戦略なんてBASICで書かれてたらしい

250 :ナイコンさん :2021/05/29(土) 18:51:20.66 ID:/JBy9Rzc0.net
マルチプランもCで書いてあったって話がもうとっくに出てるんだけどな。
まあ、実用的w

664 名前:ナイコンさん (ワッチョイ 2f7a-LJAA)[sage] 投稿日:2019/06/08(土) 00:47:38.17 ID:3UMAq+6A0
>>662
マイクロソフトのマルチプランも p code 実装だったのよね。ただし pascalじゃなくて C言語。
ランタイム・ライブラリを機種毎に用意して辻褄あわせしていた。ところが8bit機も16bit機も
同レベルな機能しか実現できなくなり、特にIBM-PCでLotus1-2-3に機能面で激しく追い抜かれたので
ゲイシが怒って廃盤。でもってEXCEL登場になったとか。以下あえて英文w

Multiplan was released first for computers running CP/M; it was developed using a Microsoft proprietary p-code C compiler[1]
as part of a portability strategy that facilitated ports to systems such as MS-DOS, Xenix, Commodore 64 and 128,
Texas Instruments TI-99/4A (on four 6K GROMs and a single 8K ROM), Radio Shack TRS-80 Model II, TRS-80 Model 4,
TRS-80 Model 100 (on ROM), Apple II, and Burroughs B-20 series. The CP/M version was also runnable on the TRS-80 Model II
and 4, Commodore 128, and Apple II with a CP/M card. In France, Multiplan was also released for the Thomson computers in 1986.

https://en.wikipedia.org/wiki/Multiplan

251 :ナイコンさん :2021/05/29(土) 20:41:53.02 ID:EpB107XS0.net
>>247
16bitパソコンで動作する8bit用の手ごろな価格のクロスコンパイラ自体なかったのでは?
LSI-C80のクロスコンパイラだって1989年とかの8bitパソコン末期に出たのでは?

252 :ナイコンさん :2021/05/29(土) 20:42:51.18 ID:EpB107XS0.net
>>250
そのせいでフルアセンブラのLotus 1-2-3に負けたのは有名な話

253 :ナイコンさん :2021/05/29(土) 21:06:36.91 ID:/JBy9Rzc0.net
>>251
HI-TECH Cのクロスが5万イカだったよ。

>>252
8bit機に1-2-3無かったからねw

254 :ナイコンさん :2021/05/29(土) 21:08:07.50 ID:/JBy9Rzc0.net
>>249
合理的じゃないか。
反射神経ゲーム以外はCで十分ってこった。

255 :ナイコンさん :2021/05/29(土) 21:19:17.76 ID:1XutsNZG0.net
>>251
HPのHP64000という開発マシンではC/PASCALのサポートがあった。
z80のc言語は1980年には出荷されていた。
高価なマシンだがICEが使えた。サポートCPUの種類はとても多い。
資金潤沢な開発会社は64000使っていた所が多い。6502はASMだけ
だったらしい。が、NES開発でも謎のプローブぶっ刺して使われていた?
光栄のz80のc言語開発ってHP64000のクロスでしょ。たぶん。

https://www.chrismcovell.com/secret/weekly/Stars_of_the_Family_Computer.html
http://www.bitsavers.org/pdf/hp/64000/software/64800-90907_Feb-1983.pdf

256 :ナイコンさん :2021/05/30(日) 08:16:23.85 ID:kc8Q6X0K0.net
ファミコン開発に使ったのを流用したのかな?

257 :ナイコンさん :2021/05/30(日) 12:23:17.14 ID:2fq/DRV4a.net
6502はCには向かないよね
スタック256バイトしかないし

258 :ナイコンさん :2021/05/30(日) 14:47:50.22 ID:R8SyYID10.net
Z80のLD HL,0002H ADD HL,SPを思えば楽なもんです
TSX の後は自由自在

259 :ナイコンさん :2021/05/30(日) 15:15:20.73 ID:421Rk3kpa.net
>>257
ファミコンの信長の野望全国版はCじゃなかったはず
メモリも少ないししょうがないのだろう

260 :ナイコンさん :2021/06/06(日) 13:55:59.73 ID:b1tELuWZa.net
都合の良いときはwikiを証拠扱いして都合が悪いときは証拠扱いしない。
それがアリエナイ君くおりてぃw

261 :ナイコンさん :2021/06/17(木) 21:31:49.21 ID:+9sf5btf0.net
>>259
あのでっかいROMカセットは確実RAMも載せてるだろ。

262 :ナイコンさん :2021/06/30(水) 08:14:29.49 ID:YBK4NCtC0.net
PCエンジンでC言語によるゲーム開発

http://www.highriskrevolution.com/wp/gamelife/2021/06/07/

オールアセンブラで、しかも6502でRPGの戦闘ルーチンを書くのは本当に大変だ。
というも、そもそもアセンブラでプログラムを書くのは常に簡単ではないのに加え、6502はともかく16ビット以上の演算が面倒だ。

つまりアセンブラでRPGの戦闘を書いてもらうのは怖いし16ビットの演算いっぱい出てくるしどうしようと思って竹部さんが若手プログラマに聞いたら「Cなら書ける」。
そこで竹部さんが思い出したのがAPPLEUの仮想16ビットCPU、SWEET 16。

つまり若手がCなら書けるというので仮想の16ビットCPUをゲーム内に実装して、それ用のCコンパイラを作るというビックリ展開だ。仮想CPUの速度は遅かったろうけれど対面型のバトルだ。複雑な計算を簡単に間違いなく書けるほうが遥かに重要だったわけだ

後にPCエンジンでネクロマンサーを作ることになるのですが、SWEET16を思い出し16ビットの仮想CPUを作りました。
詳細は忘れてしまいましたが、確かこいつも16ビットレジスタを16本を持たせました。
アセンブラはMacro80でオペコードをマクロ展開しアセンブルできるようにしました。
この時期、pc98でPC-UXがリリースされていたので、yacc/lexを駆使して仮想CPU用のCコンパイラのサブセットを作りました。
Cコンパイラを書いたのは板垣、仮想CPUは私の合作です。
サブセットなので使用制限はあるもののPC98上の通常のCで書いたコードを一部修正するのみでPCエンジンで動作しました。
ネクロマンサーのバトルのコアコードはCサブセットで書かれています。

263 :ナイコンさん :2021/06/30(水) 09:47:27.23 ID:7xlFcH/G0.net
クロスコンパイルはだれも否定していない
少し大きいヘッダを読み込んだだけで動かない8bitゴミコンパイラがムリと言っている

264 :ナイコンさん :2021/06/30(水) 10:56:41.93 ID:GdEu375I0.net
 
はい、いつものゴール変更入りましたw

265 :ナイコンさん :2021/06/30(水) 11:17:45.82 ID:kUSXC8sD0.net
8bitPCで普通に使えるという話だったからな。
クロスコンパイルもCのサブセットでもOKなら普通に使えるとはとても言えない。

266 :ナイコンさん :2021/06/30(水) 11:31:12.85 ID:fAim8tgF0.net
cp/mは階層DIR機能ないからねえ。ヘッダもコンパイラもぜーんぶroot。無様ね。
msxはそこら辺改善しているかもだけど。互換性が

267 :ナイコンさん :2021/06/30(水) 14:54:39.20 ID:a3UlpaZs0.net
MS-DOS1.25もそう

268 :ナイコンさん :2021/06/30(水) 21:41:57.07 ID:QfVk3vTOM.net
だからあ高級アセンブラとして使ったんよ

269 :ナイコンさん :2021/07/02(金) 00:39:08.94 ID:lK1lvTu2a.net
また勝手に「サブセットは無理」とか変な条件つけてきたのかよ、嘘つきアリエナイ野郎はw
負け惜しみどころじゃねぇなぁ。
アリエナイ野郎って猿以下の知能しかないゴキブリ以下の品性野郎は屑人間の見本だよなぁw

270 :ナイコンさん :2021/07/02(金) 01:00:09.39 ID:oLfhbFMa0.net
行数制限とか変数制限とかコンパイル時間とか在り得ないって言ってるのにガンコなバカには困ったもんだ

271 :ナイコンさん :2021/07/02(金) 01:08:12.54 ID:CSlWpTVn0.net
しょぼいサブセットで「普通にC言語使える」とか無理があるな。

272 :ナイコンさん :2021/07/02(金) 03:01:47.88 ID:4ruGp3lB0.net
>>269=269
自作自演はみっともないなw
やるならワッチョイ同士でやって欲しいねwww

273 :ナイコンさん :2021/07/02(金) 03:05:23.59 ID:4ruGp3lB0.net
あ、ワッチョイ同士だと会話のたびになぜか毎回IPが変わっちゃうなんて
謎書き込みはナシにしてねwww

274 :ナイコンさん :2021/07/10(土) 21:47:24.55 ID:cktQ5FMVa.net
8ビットを実務で使ったことがあれば「C言語は使えない」「C言語使うのありえない」なんて言わないんだよな。

275 :ナイコンさん :2021/07/10(土) 22:47:23.89 ID:aEOGh+P00.net
>>274
C言語は普通には使えない
→C言語は使えない、C言語使うのありえない

全然意味違うけど、キミはなぜいつも人の意見を改変したり捏造したりしてるの?
アウアウウー 君は他のスレでも似たような改変や捏造ばっかやって荒らしてるよね。

ほんと根っからのリアル糞野郎に見える。

276 :ナイコンさん :2021/07/10(土) 23:20:24.02 ID:3fmZvddD0.net
  ∧_∧  / ̄ ̄ ̄ ̄ ̄
 ( ´∀`)< オマエモナー
 (     )  \_____
 │ │ │
 (__)___)

277 :ナイコンさん :2021/07/11(日) 00:05:25.06 ID:QJQoHBYv0.net
>>276
そして必ずいつもワッチョイで自演レスが入る。リアルカス野郎の荒らしパターン。
これだけ糞野郎だとリアルで友達とか全くいないんだろうな。

さっさと死ねばいいのに。

278 :ナイコンさん :2021/07/11(日) 00:18:47.78 ID:7ZMWNoLR0.net
8bitでC言語は普通に使える。
当然だわな、PICでC使うのに比べたら、Z-80でC使うのなんて
なんの苦労もないわ。

279 :ナイコンさん :2021/07/11(日) 02:27:22.78 ID:pZ30Y2jp0.net
まともなコンパイラってLSIくらいでしょ

280 :ナイコンさん :2021/07/11(日) 11:37:19.32 ID:Y9JgZ9gkM.net
また「まともな」の定義で争うの?
いい加減諦めなよw

281 :ナイコンさん :2021/07/11(日) 14:36:40.70 ID:Yf6WZXWU0.net
 
最終結論

 ・8bit機でC言語は使われていた、ありえないなんてのは嘘。

 ・8bit機のC言語は16bit機ほど速くはない、それはワープロや表計算ソフトの
  8bit機版と16bit機版の差異と同様のことである。

 ・それらを非実用的と判断するか実用的と判断するかは、単なる個人の主観でしか無い。

282 :ナイコンさん :2021/07/11(日) 17:42:15.19 ID:YdPiDNPZa.net
Hitech C

283 :ナイコンさん :2021/07/11(日) 17:46:00.12 ID:pZ30Y2jp0.net
それはMicrrochipに消された

284 :ナイコンさん :2021/07/11(日) 21:00:23.21 ID:5b5/Q0qUa.net
SDCCも忘れずに

285 :ナイコンさん :2021/07/11(日) 22:50:37.07 ID:UOHhEGhba.net
Hitech C

https://www.cpcwiki.eu/forum/programming/hi-tech-c-v4-11-for-z80/

286 :ナイコンさん :2021/07/11(日) 23:13:02.32 ID:5b5/Q0qUa.net
https://github.com/agn453/HI-TECH-Z80-C
https://github.com/agn453/HI-TECH-Z80-C-Cross-Compiler

287 :ナイコンさん :2021/07/12(月) 23:30:29.76 ID:NrsELD3L0.net
PC-8801mkII上のCP/MでBDS-Cで開発してたな

288 :ナイコンさん :2021/07/13(火) 12:33:49.44 ID:k0IGmXXY0.net
88mkII用CP/Mには漢字ターミナルエミュレータとか付いてたよね
何気にすげぇと思ったもんだ

289 :ナイコンさん :2021/07/14(水) 18:22:58.02 ID:n0uCeDqTH.net
intが8bitだったりポインタが16bitだったりするのを把握してコーディングする必要があったので
どちらも32bitだと思っていたら使い物にならなかったというのはあるだろうけど
まあこれは16bitになっても残る問題だったな

でもこんなものはアルゴリズムをcで書けるか書けないかの問題の前には些細なこと

290 :ナイコンさん :2021/07/15(木) 23:19:23.05 ID:aEJnRuV+0.net
ありゃ
8ビットCPU向け処理系で最初に浮動小数をサポートしたといわれる
Aztec Cがここまで出てきてない?
CP/MとApple II用だったからマイナーだったのか

291 :ナイコンさん :2021/07/15(木) 23:29:03.19 ID:oQKq9K9u0.net
intが32ビットてDOSエクステンダ以降やん
高価なワークステーション基準で語られても

292 :ナイコンさん :2021/07/17(土) 10:22:50.57 ID:sHX2XALda.net
Draco Cを忘れるな

293 :ナイコンさん :2021/07/17(土) 11:51:34.39 ID:rqOKBMSMM.net
DOHCなんてのもあったな

294 :ナイコンさん :2021/07/17(土) 14:16:28.72 ID:sHX2XALda.net
白墨洲が元祖

295 :ナイコンさん :2021/07/18(日) 01:03:25.48 ID:rLwHm/Y/0.net
Draco Cは言語仕様がましだけど、ramディスクないとつらい。
(事実上AV以降でRAMが増設されているものがターゲット)
DOH-Cなら素のFM-7でも使う気になるレベル。
DOH-Cの市販版がもうちょっと安かったらよかったのに。

296 :ナイコンさん :2021/07/18(日) 02:48:10.32 ID:rLwHm/Y/0.net
浮動小数が使えるとフルセットという感じがするんだけど、
実際にはあまり浮動小数って使う機会ないよね。
8ビットでどれだけ利用例があるか知らないけど
お金の話だと固定小数点だし、グラフィックス関連だと
速度の関係で浮動小数使わないだろうし。
科学技術計算に使われるんだろうけど、実験以外で
どんな用途に使われたんだろう

297 :ナイコンさん :2021/07/18(日) 07:46:50.03 ID:WaGLWZjc0.net
>>296
教育関係だとニーズがあったと思うよ
アメリカだと80年代半ばから8ビットパソコンが教育現場に入り込んでいったからね

298 :ナイコンさん :2021/07/18(日) 08:24:21.34 ID:FpuSHLvU0.net
>>296
%(パーセント)計算。整数演算だけだと商と余。これではー

299 :ナイコンさん :2021/07/18(日) 10:26:48.08 ID:yoOowGdv0.net
それこそ要件ギリギリ満たす精度の10進や有理数ライブラリつくる
誤差に頭回すのがもったいない

300 :ナイコンさん :2021/07/18(日) 15:31:08.32 ID:mmoogOhna.net
無いとサブセット扱いなんだが、あってもまず使わない
それがフロート
HitchCのフロート、指数対数周りに結構誤差が出て、計量分析で使えなかった。

Turbo PASACALではそれなりに使ったけど

301 :ナイコンさん :2021/07/18(日) 17:53:59.78 ID:UvLJmljm0.net
n-basicにatanが無くて作ったなあ
そういえば

302 :ナイコンさん :2021/07/18(日) 21:14:50.72 ID:MPJpiI66a.net
N88BASICでもディスク版でしか使えない

303 :ナイコンさん :2021/07/21(水) 22:43:35.16 ID:XTmS8wMQa.net
手頃なとかいうけど、どの程度を想定してるのかな?
バブルの頃だったら10万でもはしたカネだな。
50万ぐらいでもポンと買うやつは買ったし。
ただ、あの頃はパソコンユーザ=ネクラなオタク扱いだっから世間からの風当たりはあまり良くなかったな。

総レス数 303
86 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200