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

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

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

38 :ナイコンさん:2021/11/16(火) 19:27:30.89 .net
今のはそんなデカいんだ
cc65しか触ったことないから知らんかった

39 :ナイコンさん:2021/11/16(火) 22:35:31.98 .net
Win16時代のwindows.hですら既に嫌気のする長さだったな

40 :ナイコンさん:2021/11/16(火) 23:06:19.77 .net
関数名の長さのほうが嫌気がした

41 :ナイコンさん:2021/11/16(火) 23:17:19.93 .net
あの頃は lpfnStringCopy とか独特の命名規則だったね

42 :ナイコンさん:2021/11/17(水) 00:11:24.21 .net
関数名の長さはエディタの補完でなんとでもなる
C言語はグローバルに同じ名前の関数が有ると、ローカル(static)な関数もその名前が使えないからね
グローバルに変に短い名前の関数が沢山有るLinuxよりマシと言える

43 :ナイコンさん:2021/11/17(水) 06:54:41.08 .net
>>38
XC8のPIC18用のヘッダーファイルは品種によって違うが何千行から数万行あるよ?
そして品種ごとのdefineされてる品種のヘッダーファイルを
#ifdefでインクルードするしないだけが書かれたヘッダーファイルの
chip_select.hやpic18_chip_select.hがあって
chip_select.hが3700行、pic18_chip_select.hが2400行もある
chip_select.hがpic18以外の8bitPIC用でpic18_chip_select.hがpic18用

44 :ナイコンさん:2021/11/17(水) 07:01:19.30 .net
>>42
昔のC言語は8文字しか変数名認識しないとかあったよな
実際にエミュ上でPDP-11用のVersion 7 UNIXの標準のC言語のPCC使ってみると
変数名を7文字しか認識しない
コンパイラ自体は8文字認識してるようだけど
変数名にアンダーバーが付加されるのだがアセンブラがそのアンダーバーを含めて
8文字しか変数名を認識しないみたい
だから7文字部分が重複する8文字の変数名を複数使うと
コンパイルは通るのだが、リンカーでエラーが出たりする

45 :ナイコンさん:2021/11/17(水) 07:08:41.39 .net
1980年代の昔の8bitパソコン用のCコンパイラも多くが8文字までしか認識しないんじゃないかな?

46 :ナイコンさん:2021/11/17(水) 08:54:16.56 .net
BASICなんか2文字だぜ(笑)

47 :ナイコンさん:2021/11/17(水) 08:54:54.68 .net
>>45
Tiny言語の話?
LSI-C80は31文字まで認識したが。

48 :ナイコンさん:2021/11/17(水) 15:55:17.07 .net
DOSでもLattice C 3.x辺りは8文字までだったような

49 :ナイコンさん:2021/11/17(水) 17:12:07.58 .net
HI-TECH C Z-80も、変数名は31文字まで認識するな。
はて、8文字しか認識しない昔の8bitパソコン用のCコンパイラって何なんだろ?
BDS-Cとか?w

50 :ナイコンさん:2021/11/17(水) 19:10:56.60 .net
時期によっても違うのでは?
ANSI C対応以降やANSI Cを先取りしてるやつは長い文字に対応してるのかもしれないが
1984年のAztec C 1.06dは8文字までだな
Freeで公開されてるHITECH C V3.09は1987年でANSI Cを先取りしてるやつだな
1987年なんてもう16bitパソコン全盛の時代じゃん

51 :ナイコンさん:2021/11/17(水) 19:18:59.68 .net
結局8bitでC言語って言ってるやつも1987年頃に使ってただけ
それって16bitパソコンを買う金がなくて仕方なく8bitパソコン買ったけど
C言語も使ってみたくて学習用に買ってみたってだけじゃないの?

52 :ナイコンさん:2021/11/17(水) 19:25:28.78 .net
1987年だとCP/MやCコンパイラを揃える金で16bitパソコン買えたんじゃね?
PC98ならDOSも安かったし1988年に安くてフルセットのTurbo-Cが出てたのにね

53 :ナイコンさん:2021/11/17(水) 20:58:08.22 .net
まーた、アリエナイくんが必死だw

54 :ナイコンさん:2021/11/17(水) 20:59:11.95 .net
Turbo C 1.5は画期的だったなー
自分で金出して買った数少ないコンパイラだw
その5年くらい前はLattice C とか Optimizing C-86を会社からコピーして帰って家で使ってたけど(時効だよ時効w)
Turbo Cを見てからIDEの洗練さとコンパイルスピートの速さには感動した。
どうしてもマニュアルが手元に欲しくなって買ったけど、また価格も安かったから買えたんだよな。
あの頃のボーランドは輝いていた。
HDDはまだ高くて買えなかったのでFD二枚にDOSとVJEとコマンドラインコンパイラを入れて
「カチカチカチ・・」とコンパイルしてた記憶があるわ。

55 :ナイコンさん:2021/11/17(水) 21:01:13.40 .net
>>51
組み込みの分野では今でも現役だよ。
キミのようにPC上で動く事務系プログラムしか作ったことない人にはわからないだろうけど。

56 :ナイコンさん:2021/11/17(水) 21:36:58.49 .net
アリエナイの奴は事務系すらやったこと無いだろな。
やったことあるとしても21世紀になってからぐらいで、80年代に仕事でプログラム書いてたとはとても思えない。

57 :ナイコンさん:2021/11/17(水) 22:38:12.53 .net
>>54
ボーランドの開発スタッフはMSに移りC#とか開発して、今でも輝いてるよ

58 :ナイコンさん:2021/11/17(水) 23:41:32.01 .net
>>57
ボーランドからの移籍組はもうとっくに定年退職しとるやろ。

59 :ナイコンさん:2021/11/18(木) 00:51:40.26 .net
アンダースは60だよ
まだmsなんじゃない?

60 :ナイコンさん:2021/11/18(木) 07:07:22.43 .net
>>55
でも8bitの組み込みの分野では関数のコール数に制限があるようなPICがトップシェアなんでしょ?
しかも売れ筋の8bit PICなんて数百から数KBのRAMしかない
たいしたプログラムを組まないからアセンブラで組む必要もない
最近の8bit マイコンなんて
RAMの容量に対してプログラムを格納するフラッシュがかなり大きく設計されてる

61 :ナイコンさん:2021/11/18(木) 07:10:53.34 .net
今は複雑なことしたいなら32bitのARMマイコンが気軽に使えるしな
8bit CPUの性能をフルに発揮させないといけない場面なんてほぼないんじゃないの?

62 :ナイコンさん:2021/11/18(木) 07:29:37.27 .net
結局8bitでC言語という人たちは
1980年代の8bitパソコンでC言語を使ってましたというのではなくて
今現在、8bit マイコンでC言語使ってますだもんな
板違いだよな
電気・電子板行けばいいのに

エディタの補完機能つかえばとか
昔のパソコン用のエディタにC言語の補完機能なんてあったっけ?

63 :ナイコンさん:2021/11/18(木) 07:41:56.49 .net
C言語のコード補完機能が付いたのはVC++ではVC++5.0からみたいだな
VC++5.0ってVS97だから97年頃だっけ?

64 :ナイコンさん:2021/11/18(木) 09:52:59.00 .net
アーリエナーイ、アーリエナーイ、8bitでCなんてアーリエナーイ

65 :ナイコンさん:2021/11/18(木) 12:23:18.90 .net
>>62
Windowsの開発で、関数名長すぎで嫌気がするってのに対して
関数名の長さはエディタの補完でなんとでもなるという話だ。

こんな話にすら付いてこられないお粗末な知識しか持たない分際で
よく8bitでCの開発はありえないなんて言えるもんだな、お前。

66 :ナイコンさん:2021/11/18(木) 12:23:35.36 .net
組み込み系で使っているといってもビルドは超高速マシンでクロスビルドだろ。
AVRでセルフビルドできるの?

67 :ナイコンさん:2021/11/18(木) 12:38:28.59 .net
次は、PICでセルフビルドできるの?とか言い出すなコイツw

68 :ナイコンさん:2021/11/18(木) 12:53:22.11 .net
Z80用unix互換環境uziはZ80上でセルフコンパイル可能

69 :ナイコンさん:2021/11/18(木) 12:55:04.60 .net
>>60
あほよのう
数が出る家電は必要最小限の構成にしてコストを削らにゃならんのよ
マイコン電子ジャーを64ビットCPUで設計すんのかおまいはw

70 :ナイコンさん:2021/11/18(木) 13:49:55.45 .net
アリエーナイって勝手に後だしでどんどん条件付けてるキチガイだからな。
何を言い出したって「あっそ、お前の言うのは噓だからな」ぐらいで流すのが丁度いいんだよw

どうせ仕事した経験がないバカがデタラメ言ってるだけだろうし。

71 :ナイコンさん:2021/11/18(木) 14:36:09.37 .net
この板でクロス開発の話しされても....
と思ったけど、もしやブルジョアな人たちは当時からクロス開発だったのか?

72 :ナイコンさん:2021/11/18(木) 17:40:55.55 .net
80年代にクロス開発環境そろえる程度でブルジョアと言われてもなぁ・・・
ブルジョアなら「よっしゃよっしゃ」で右から左にそろえて、普通の人でもちょっと気張ればそろえられたぞ。
クロス開発環境が揃えられなかったとか、超絶なリアル貧乏人ぐらいだろ。

73 :ナイコンさん:2021/11/18(木) 18:13:24.09 .net
98でLSI-C80とかで開発やっていたのか?
もしやデバッグもICEか?
確かにそれだったらC言語も可能かもしれないが....

74 :ナイコンさん:2021/11/18(木) 18:49:16.50 .net
当時のICEはC言語と連携してなかったから、プログラムのデバッグには
さほど役には立たなかったな。

75 :ナイコンさん:2021/11/18(木) 19:15:09.13 .net
開発ツール一式30万くらいか?
98別で。すごいな...

76 :ナイコンさん:2021/11/18(木) 20:26:02.24 .net
その少し前のテクトロの開発機なんて800万はしてたぞ。
30万ですごいて・・・

77 :ナイコンさん:2021/11/18(木) 20:48:08.67 .net
そこまでして8bitでC言語か...

78 :ナイコンさん:2021/11/18(木) 20:57:23.39 .net
>>73
98用のクロス版LSIC-80が出たのって1989年ぐらいじゃね?

79 :ナイコンさん:2021/11/18(木) 21:04:33.11 .net
>>69
じゃあ、何で8bit マイコンでは制限ありまくりのPICがトップシェアなの?
AVRの方が断然高機能じゃん

80 :ナイコンさん:2021/11/18(木) 21:19:43.07 .net
それに8bit CPUの性能を最大限出して
メモリを節約してコストを最大限に削るにはアセンブラの方がいいのでは?

81 :ナイコンさん:2021/11/18(木) 21:24:02.64 .net
それにプログラム格納用のフラッシュやデータ用のRAMが増えると
フラッシュやRAMが占める面積の割合が大きくなって
CPUコアが小さいメリットってあまりなくなるよね?
そうなると8bitCPUコアを使ってるメリットがなくなってくる

82 :ナイコンさん:2021/11/18(木) 21:33:43.90 .net
picでアセンブラで書いたコードを保守するのはコスト高そう。

83 :ナイコンさん:2021/11/18(木) 23:07:07.72 .net
あのアセンブラはクセになる
たまに書きたくなる

84 :ナイコンさん:2021/11/18(木) 23:20:57.51 .net
>>80
何が言いたいのかわからんが・・・
開発コストとの兼ね合いでもちろんそういうのもアリだ。
1万個売れる機械ならメモリとCPUパワーをケチってアセンブラで開発して開発費に500万余計にかかったとしても一個あたり1000円安くできれば500万円の増収が見込めるしな。
反対に1000個しか売れない機械に開発費をかけられないというのは当然ある。

ターゲットマシンが8ビットCPUにCコンパイラが使われてなかったという反証には全くなってないし実際に存在している。

85 :ナイコンさん:2021/11/19(金) 00:06:58.34 .net
実際の開発経験まるでなしで、全部想像と読んだ知識だけで
ケチつけてるようにしか見えないよ

86 :ナイコンさん:2021/11/19(金) 05:28:37.72 .net
>>85
ARMのCortex-M0やM0+は8bitや16bitマイコンの置き換えを狙って作られたものだよ?
実際に価格面でも対抗できるような品種もあるぞ
ルネサスだって16bitのH8やM16Cの後継に32bitのRXを出してる

低価格市場に侵攻する32ビットプロセッサ
https://ednjapan.com/edn/articles/1006/01/news103.html

87 :ナイコンさん:2021/11/19(金) 05:39:04.05 .net
>>84
だから8bitマイコンで1980年代の8bitパソコンのようにCPUの性能を最大限引き出す必要はないでしょ?
性能が足りなければ16bitや32bitマイコン使えばいいしな
価格差だってそんなにないわけだし
8bitマイコンはCPUで複雑な処理をするよりも周辺を制御するのがメインなんじゃないの?
PICの名前自体がPeripheral Interface Controllerだし

88 :ナイコンさん:2021/11/19(金) 05:46:05.72 .net
8bitCPUのAVRの命令長は16bitだけど
32bitCPUのCortex-M0やM0+もほとんどの命令の命令長は16bitで
そこそこの性能は出るように設計されてる
DMIPS/MHzだってCortex-M0+は0.93DMIPSもあるからな

89 :ナイコンさん:2021/11/19(金) 05:49:45.86 .net
PICなんて関数コールの段数が8段や16段のものがまだ現役じゃん
C言語使ってるのにこんな制限があるCPUがトップシェアなんて
やっぱりたいしたことしてないんでしょ?

90 :ナイコンさん:2021/11/19(金) 06:10:16.87 .net
新しいデバイスがでたからぱたっと切り替わるとおもってる頭お花畑には何言っても無駄だと思うw

91 :ナイコンさん:2021/11/19(金) 06:57:54.17 .net
>>87
話の通じんやつだな
1000円原価を下げれれば1万台売れれば1000万円の利益増なのがわからんのか
オマエの自宅で一個のマイコンプログラミングしてるわけじゃないっつの

92 :ナイコンさん:2021/11/19(金) 07:47:20.10 .net
>>90
Cortex-M0+が出たのは10年前だよw
その記事だって10年前の記事だけどな

93 :ナイコンさん:2021/11/19(金) 07:49:28.82 .net
>>91
8bitマイコンなんてどうせ周辺の制御が主な役割でしょ?
周辺の制御なんて周辺のレジスタ読み書きするだけじゃん
だからPICのような8bitマイコンで十分な用途が多い
だからトップシェアなんだよな

94 :ナイコンさん:2021/11/19(金) 10:56:56.61 .net
やっぱり実際の開発経験まるでなしが全部想像と読んだ知識だけでケチつけてるだけだなw

95 :ナイコンさん:2021/11/19(金) 11:42:06.55 .net
AVRってPICに比べて、一瞬で入れ替わるような優位性はなかったと思う。
AVRのほうがC言語の実装には向いていると思うが。

96 :ナイコンさん:2021/11/20(土) 01:11:11.28 .net
avrはソフトの保守性がもうちょっとどうにかならんかというところで
使われたのでしょう。Cでなくアセンブリ言語で直接書いた場合でも
だいぶ違う。

97 :ナイコンさん:2021/11/20(土) 05:38:19.07 .net
STM32ならCubeMX IDEの新規プロジェクト作るときのチップセレクト画面で
1万個(10kU)の時の価格がUS dollarで見られるよ

Cortex-M0やCortex-M0+を使ったマイコンなら
1万個の時の価格で1個1ドル以下のものもあるよ

98 :ナイコンさん:2021/11/20(土) 10:40:03.44 .net
>>79
つける薬がねぇな
>>69

99 :ナイコンさん:2021/11/20(土) 16:52:17.28 .net
PICはディスコンにならんのよ

100 :ナイコンさん:2021/11/20(土) 17:49:14.81 .net
言われてみれば Cortex-M0やCortex-M0+のチップなんて5年位でディスコンになりそう。

101 :ナイコンさん:2021/11/20(土) 17:57:52.18 .net
>>99
知ってるとは思うけど、AVRやってたAtmelはMicrochipに買収されて
もう、PICもAVRも同じMicrochipだよ
PICはディスコンにならないっていう理由はPICがトップシェアの理由になってないよ
また、ディスコンにならなくても価格が上がったしすることもあるわけで

102 :ナイコンさん:2021/11/20(土) 18:07:36.53 .net
Microchip自体もAtmel買収で手に入ったARMのSAMシリーズがあるし
新たにPIC32でもARMやりだしたね

103 :ナイコンさん:2021/11/20(土) 18:58:32.99 .net
流石に旧atmel製品は整理しだすのではないだろうか。

104 :ナイコンさん:2021/11/21(日) 00:02:21.54 .net
AVR-DxとかtinyAVR0/1/2とか新ラインナップ投入してるけど

105 :ナイコンさん:2021/11/21(日) 00:46:38.85 .net
たしかにバシッと切るかと思っていたがそうでもないな。
まずは MicrochipStudio が切られるんじゃない?

106 :ナイコンさん:2021/11/21(日) 07:55:32.92 .net
MPLAB XでAVRの開発もできるようになってきてるからね
MCCもAVRに対応してる
XC8もPICの他にAVRのコンパイラが含まれてて容量倍増してるね

107 :ナイコンさん:2021/11/21(日) 12:30:20.99 .net
>>106

あれってそのままビルドできるの?

108 :ナイコンさん:2021/11/21(日) 15:44:09.59 .net
106とは別人だけどgccのtoolchainを追加でダウンロードするんじゃなかったっけ

109 :ナイコンさん:2021/11/22(月) 21:05:36.63 .net
今フリーで使える8ビットのCコンパイラってどんなのがあるの?

110 :ナイコンさん:2021/11/23(火) 01:03:12.39 .net
sdcc

111 :ナイコンさん:2021/11/23(火) 02:00:55.89 .net
SC/MPII用Cコンパイラって無い?

112 :ナイコンさん:2021/11/30(火) 23:26:02.03 .net
このファミコンソフトはC言語で書かれたらしい。

Pac-Man Championship Edition NES - Real Hardware - Direct Capture
https://www.youtube.com/watch?v=B7PeCR_EcbU

113 :ナイコンさん:2021/12/01(水) 23:53:19.13 .net
こういうの読むと当時の雰囲気がわかるやね。

http://www.techno-web.org/e_techno/1999/11/03/cyyoynyyeeaeouaei/

114 :ナイコンさん:2021/12/05(日) 23:09:33.71 .net
>>113
10年前に更新が止まってるな
死んだかな

115 :ナイコンさん:2021/12/06(月) 08:41:46.57 .net
>>114
お前の親はまだくたばってないのか?

116 :ナイコンさん:2021/12/12(日) 20:12:04.81 .net
LSI Cの作者の森さんも数年前に亡くなったしなあ
FDの作者の出射さんも亡くなった
古いエンジニアは続々と鬼籍に入るお年ごろ

117 :ナイコンさん:2021/12/13(月) 08:37:27.87 .net
お前まだ生きてたの!?

118 :ナイコンさん:2021/12/15(水) 18:42:46.05 .net
>>117
オマエのほうが先に死ぬよw

119 :ナイコンさん:2022/01/08(土) 20:54:20.12 .net
>>117
はよしねくそじじい

120 :ナイコンさん:2022/01/16(日) 20:13:49.33 .net
ちんこ

121 :ナイコンさん:2022/01/30(日) 16:58:50.03 .net
>>113
アーカイバがLHAで説明がp1.exe(dbのワープロソフト)とか懐かしくて泣きそう><

122 :ナイコンさん:2022/01/31(月) 15:25:51.81 .net
泣け
わめけ

123 :ナイコンさん:2022/01/31(月) 16:56:23.12 .net
p1.exeってそんなにメジャーだったのかな

124 :ナイコンさん:2022/01/31(月) 18:53:07.67 .net
以前のコメントに「PICはディスコンにならない」って書き込んでいる人がいるけど、
あれはディスコンにならないだけで在庫なければそれなりの数を注文しなければ
再生産されないからホビーとかでちょっとだけ使う人には関係ない話じゃなかったっけ?

125 :ナイコンさん:2022/02/02(水) 12:35:17.16 .net
>>123
p1.exeは結構バギーで使えなかった印象しかないな
どんくさくても安定している一太郎の方がいい、みたいな
ただp1.exeについてたアナログ時計の常駐プログラムは使ってた

126 :ナイコンさん:2022/02/09(水) 17:06:24.73 .net
LSI-Cにはお世話になりました。
当時MSX1用のワープロとかバイトで作ってた。
Ver1.0はプロタイプ宣言非対応で、関数の第一引数の型がcharかintかを、自分で厳密に意識しないと即アウト(非再起モードの場合)。
Ver2.0でその心配がなくなってありがたかった。

127 :ナイコンさん:2022/02/19(土) 10:48:39.49 .net
LSI-CでFA機械の通信機能の開発してました。
今なら国際規格あるから独自プロトコルなんて作らなくてもいいンだけどプロトコルの設計からさせられたよ。

Z80でシリアルでシリアル4ch制御とか死ねる・・・ でもやったけど。

128 :ナイコンさん:2022/02/19(土) 15:36:16.12 .net
大変かどうかは、FIFOバッファサイズによる

129 :ナイコンさん:2022/02/19(土) 18:18:54.63 .net
??
8251使ってるかZ-80SIO使ってるか知らんけど、どうせ自分で送・受信の
割り込み受けてバッファへの積み下ろしも自分でするんだからFIFOバッファサイズなんか
いくらでも増やせるだろ。

130 :ナイコンさん:2022/02/19(土) 18:20:05.49 .net
>>128
あー、ibmpcでもFIFOバッファがしょぼいカードだと高bpsでなかった気がする。

131 :ナイコンさん:2022/02/20(日) 00:27:01.54 .net
元の書込みがZ80に4chシリアルにどこのチップ使ったか書いてないけど、
クラシックなZ80 SIOや8251とかでなく、(当時は)NSの1655A以上とかEXARの多ch品とかを
使っていれば16byteのFIFOが内蔵されていたけどね。

ソフト側でリングバッファを4ch分も構成するのは割込み頻度や
プロトコル処理からしても労力に見合わなそうだけど。

というか、LSI C-80使っていても、クリティカルなところは
アセンブラで書いたんだろうか。そこが一番気になる。

132 :ナイコンさん:2022/02/20(日) 00:28:57.35 .net
>>131
16550Aの誤記でした
AナシはFIFOにバグあり品

133 :ナイコンさん:2022/02/20(日) 01:30:20.93 .net
16550が出回ってた頃に、わざわざZ-80でシステム組まないだろw

134 :ナイコンさん:2022/02/20(日) 06:02:30.91 .net
8251ならZ80の4MHzでも4chは厳しいと思う。
ハードフロー効かせて回線スカスカな状態がOKならできそうだけど。

135 :ナイコンさん:2022/02/21(月) 09:19:57.38 .net
そうだ、12MHzのZ-80を使おう。

136 :ナイコンさん:2022/02/21(月) 14:16:46.75 .net
KC80とか、互換CPUで速いのがあったようだね

137 :ナイコンさん:2022/02/22(火) 18:09:21.28 .net
組み込みでシリアルだとμPD7201/72001が多かったと思うがZ80なら素直にZ80SIO使うわな
処理が間に合うかどうかは通信速度や頻度によると思う
16550はDOS/Vが普及したあたりで使われるようになったので時代的にZ80のシステムでは採用されないと思われ

138 :ナイコンさん:2022/04/13(水) 10:12:39.41 .net
タマが出回ってなかったし、高かったよ

139 :ナイコンさん:2022/05/02(月) 11:57:58.62 .net
RunserとDraco Cが最強

140 :ナイコンさん:2022/05/18(水) 15:24:49 .net
甘粛トマトのはやしらいすソース

141 :ナイコンさん:2022/05/19(木) 19:03:07.28 .net
SHARPランゲージシリーズのαCとかじゃだめか?

142 :ナイコンさん:2022/05/28(土) 00:15:03.92 .net
αCはBDS-Cのソースをチコッと加工しただけのものだし、BDS-Cなら合法的にタダで使えるゾウ。

ライブラリ関係は大分違うみたいだけど。

143 :ナイコンさん:[ここ壊れてます] .net
68チョン太郎「C言語なんてありえない!」

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