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

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用のコードしか吐き出さないコンパイラも多かった

総レス数 303
86 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200