MSX3 Part7

レス数が1000を超えています。これ以上書き込みはできません。
0001ナイコンさん (ドナドナー MMa6-kSJ8)2023/05/24(水) 18:16:43.19ID:5MrTruiiM
!extend:checked:vvvvv:1000:512

※スレ立ての際、>>1の本文1行目に
!extend:checked:vvvvv:1000:512
を入れてください

前スレ
MSX3 Part5
https://kizuna.5ch.net/test/read.cgi/i4004/1677554335/

https://kizuna.5ch.net/test/read.cgi/i4004/1674217238

MSX3 Part6
https://kizuna.5ch.net/test/read.cgi/i4004/1681427284/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

0952ナイコンさん (ワッチョイ 7fc7-gzdM)2023/11/11(土) 17:00:55.16ID:pFN32FHu0
MSX全盛時代からC言語使ってた人ならK&Rが当時は当たり前だった
C89という通りC89が普及したころはもうMSXが下火だった頃だからね
UNIXだって当時はまだK&RのPortable C Compilerが標準だったはず
MSX-Cは当時のLSI-C80のサブセットなので
32bit整数や浮動小数点演算は使えないけど
MSX-C Libraryに32bit整数や倍精度浮動小数点を扱うための関数があります

0953ナイコンさん (ワッチョイ 7fc7-gzdM)2023/11/11(土) 17:06:55.92ID:pFN32FHu0
C89(ANSI C)対応のCP/M用のCコンパイラとして
HI-TECH C COMPILER (CP/M-80) V3.09があります
1987年のコンパイラなのでC89にはプレ対応です

CP/M program EXEcutorなどのWindows上で動作する
CP/Mのエミュレータ上で開発すればコンパイルも一瞬で終わりますよ
ちなみに32bit整数は使えて、浮動小数点演算は単精度までです

0954ナイコンさん (ワッチョイ 1f83-/atU)2023/11/11(土) 19:52:55.45ID:P76mNu+F0
R800は速いんだけどコプロがないので浮動小数点使うのは流石にムリがあるな
Z80系はCを全く意識せず作られてるのでそこはもちろんコンパイラがなんとかするんだけどその分コードが長くなり元から少ないメモリを圧迫する
結局アセンブラが一番よw

0955ナイコンさん (ワッチョイ ff84-TsR6)2023/11/11(土) 21:15:46.54ID:cteNsbpY0
Cを意識したプロセッサなんて存在しない

0956ナイコンさん (ワッチョイ 1f3d-aSkI)2023/11/11(土) 21:36:18.83ID:NxAzZpaP0
もう少ししたらAIが勝手にプログラミングしてくれるようになるよ

0957ナイコンさん (ワッチョイ 1fbd-XI6K)2023/11/11(土) 22:33:42.51ID:NpUv6rP50
MSX0 においてもゲーム用途なら16ビット整数を用いた
固定小数点演算がメインにはなるかな。関数の書き方が
異なるのが嫌だなぁ

func(x, y)
int x,
int y
{

}
だっけ、func(int x, int y) と書きたいねぇ。マクロでなんとか
綺麗に新しい書き方っぽくならないかな。

0958ナイコンさん (ワッチョイ ffa2-1kOn)2023/11/11(土) 22:50:20.44ID:uSnPM5Lk0
Math-Packを使うC言語はMSX-Cしかないのかな

0959ナイコンさん (スッップ Sd9f-6MER)2023/11/11(土) 22:51:19.58ID:SJk0Bp7Id
簡易的にK&RからANSIに変換するのはあったし、その逆も誰か作ってたような記憶がある。

もちろん、そんなんじゃ宣言部分ぐらいしか変換できないけど。

0960ナイコンさん (ワッチョイ ff7c-hgj4)2023/11/11(土) 23:59:36.16ID:L2VXGBvS0
>>958
ライブラリだから汎用的になっているのが当時としては大げさだよね
アプリとしては必要な範囲・精度で結果が求められれば十分だから

0961ナイコンさん (ワッチョイ ff93-MGXX)2023/11/12(日) 01:39:56.44ID:8tHJC4fT0
>>955
SPARCはCを意識して作られたと言われてるがな

0962ナイコンさん (ワッチョイ 1f83-/atU)2023/11/12(日) 08:44:48.32ID:dfmm+4Im0
>>955
6809では8ビットながらすでにポストインクリメントやインデックスレジスタからのオフセットアクセスが機械語レベルでサポートされている
Z80でやろうとするとINC命令をあとから追加したりIXレジスタを使うと1バイト長くなり実行も遅くなる

0963ナイコンさん (ワッチョイ 9f56-xT3f)2023/11/12(日) 09:06:17.55ID:+0Xbr+mD0
68000のスタックフレームもC向けにとかへちま

0964ナイコンさん (ワッチョイ ff60-hgj4)2023/11/12(日) 09:41:13.88ID:lV7qeXlg0
68が意識したのはCというよりPDP-11の系譜なんじゃ
MMU用意してるし

0965ナイコンさん (ワッチョイ 1fe5-hWkO)2023/11/12(日) 11:40:36.02ID:ajL1JolM0
>>962
アドレッシングの豊富さとC言語を意識したとのどの辺に関係あんの?

0966ナイコンさん (ワッチョイ 1f83-/atU)2023/11/12(日) 12:05:37.63ID:dfmm+4Im0
アセンブラやってみるとわかるんだけど
構造体とか先頭アドレスをレジスタにセットしてメンバーへのオフセットをプラスしてアクセスするから1命令で便利
Z80ではHLレジスタに構造体アドレスを入れてDEにオフセットを入れて足して(時間のかかる16ビット演算)からアクセスし別のメンバーにアクセスするにはまた足して…
IXレジスタでやると頭に1バイトコード足してしかもアクセスは遅くなるんだよな
配列でも同じような問題がある
しょせん電卓用CPUだからしょうがないんだけどw

0967ナイコンさん (ワッチョイ ff8b-TsR6)2023/11/12(日) 12:21:38.05ID:lUuG2fSa0
会話に全くなってなくてワロス

0968ナイコンさん (ワッチョイ 9fbb-ozWO)2023/11/12(日) 14:26:37.36ID:k8vceBiW0
指摘内容を理解できてなくてワロス

0969ナイコンさん (ワッチョイ 1fbd-nEse)2023/11/12(日) 19:50:13.33ID:6jZt7C5q0
ほう cproto 等 K&R と ANSI 変換の試みがあったのね
ついでに z88dk と MSX-C でソース共有したいな。
これはコンバータが必要か

0970ナイコンさん (ワッチョイ 1fbd-XI6K)2023/11/12(日) 21:47:43.75ID:6jZt7C5q0
V & Z 使えば、MSX0 実機 DOS2 上でもファンクションキーなしで
複数ファイル同時編集(SPLIT MODE)できるので MSX-C
プログラミングできなくもないね。

0971ナイコンさん (ワッチョイ 1fbd-XI6K)2023/11/12(日) 21:55:13.54ID:6jZt7C5q0
msx-vi は画面分割できないのですか?MSX-C で
プログラム書くときに、*.h と *.c を画面分割
して同時編集くらいしたいのですが
https://fr3nd.github.io/msx-vi/

0972ナイコンさん (ワッチョイ 1f83-/atU)2023/11/12(日) 22:51:41.51ID:dfmm+4Im0
>>969
z88dkは比較的最新のでMSX-Cは博物館レベルなので…
z88dkの機能を使うとMSXCに戻せなくなったりするだろう
例えば//コメントがMSXCでは使えなかったり

0973ナイコンさん (ワッチョイ 1fbd-XI6K)2023/11/12(日) 23:19:45.09ID:6jZt7C5q0
>>972
MSX0 世代の C言語としては両方をサポートしたいんだけどねぇ。悩ましい。
で、80年代当時の MSX-C 開発環境だけど、実機だけは現在でも厳しく
MS-DOS 上での CP/M エミュレータ環境なり CP/M-86 などでクロス開発
されたたのでしょうか?それなりに市販ソフトでも C で開発されたソフトは
有るよね

0974ナイコンさん (ワッチョイ ff60-hgj4)2023/11/12(日) 23:34:10.47ID:lV7qeXlg0
C実装もあっただろうけど独自実装したマクロアセンブラが多そう
実機でセルフ開発したいなら特にそうなると思うよ

0975ナイコンさん (ワッチョイ 7f74-eZ1A)2023/11/13(月) 09:45:30.48ID:QZjpDEnR0
Tiktok LiteでPayPayやAmazonギフトなどに交換可能な4000円分のポイントをプレゼント中!
※既存Tiktokユーザーの方はTiktokアプリからログアウトしてアンインストールすればできる可能性があります。

1.SIMの入ったスマホ・タブレットを用意する
2.以下のTiktok Liteのサイトからアプリをダウンロード(ダウンロードだけでまだ起動しない)
https://tiktok.com/t/ZSNfswHBq/
3.ダウンロード完了後、もう一度上記アドレスのリンクからアプリへ
4.アプリ内でTiktokで使用してない電話番号かメールアドレスから登禄
5.10日間連続のチェックインで合計で4000円分のポイントゲット

ポイントはPayPayやAmazonギフト券に交換できます
家族・友人に紹介したり、通常タスクをこなせば更にポイントを追加でゲットできます

0976ナイコンさん (ワッチョイ 1fb5-qIOU)2023/11/13(月) 10:16:35.96ID:Rj+5ArXI0
>>975
Amazonnギフトに交換出来るのか

0977ナイコンさん (スップ Sd9f-3kc6)2023/11/13(月) 10:41:55.67ID:gfIZItkQd
個人情報抜き取り詐欺注意

0978ナイコンさん (ワッチョイ 1f83-/atU)2023/11/13(月) 12:00:35.26ID:d9p6t6Wp0
>>976
そんなにこまめに自演しないと儲からないの?
普通に働いたほうがらくじゃんw

0979ナイコンさん (スップ Sd1f-qTRg)2023/11/13(月) 12:22:15.71ID:2NPIT0ajd
>>976
えそれすごい!

0980ナイコンさん (ワッチョイ 7fd8-qIOU)2023/11/13(月) 12:26:19.39ID:Pu34j5Wg0
>>975
これはやるべきだな

0981ナイコンさん (ワッチョイ 1f83-/atU)2023/11/13(月) 15:06:58.04ID:d9p6t6Wp0
>>979-980
amazonnだから違うやつだろきっとw

0982ナイコンさん (ワッチョイ ffa2-1kOn)2023/11/13(月) 21:51:58.57ID:KBLiDZuU0
MSX-Cは正しく書いてもなぜかコンパイルエラーになるときがある

0983ナイコンさん (ワッチョイ 1f30-2kld)2023/11/14(火) 01:02:27.38ID:nyMZG01S0
それは正しくないからだ!

0984ナイコンさん (スップ Sd1f-6MER)2023/11/14(火) 01:19:11.29ID:PD9dOM6dd
Cのコンパイラあるあるでもあるわな。

0985ナイコンさん (ワッチョイ 9f80-ozWO)2023/11/14(火) 03:55:30.01ID:2OvoOGCJ0
Q:何でエラーになるんですか?
A:仕様です

0986ナイコンさん (スップ Sd1f-/atU)2023/11/14(火) 12:20:10.24ID:GToSEqyzd
コンパイル中にメモリが足りなくなる
ディスク書き込みに失敗した
そんなところじゃないか

0987ナイコンさん (ワッチョイ 7f2d-MGXX)2023/11/14(火) 12:43:37.33ID:urWiOaBp0
MSX含め8bit機でCやるのは苦行でしかない
PC上でクロスコンパイルして、エミュレーターで動作確認して時々実機で動かせばいい
Androidアプリの開発だってみんなそうやってんだ

0988ナイコンさん (スップ Sd1f-6MER)2023/11/14(火) 14:42:04.39ID:PD9dOM6dd
じゃあ、これからはMSXのソフトがたくさん発表されるってことでつね

0989ナイコンさん (ワッチョイ 9f52-Bl0M)2023/11/14(火) 15:40:10.91ID:a5egk48i0
当時商用の開発してた時もPC98(後にDOS/V機)でコンパイルしてた
MSX実機はただの実行機でしかなかったな
DOS/Vの広々テキストエディタに移行してからPC98はオワタって思ったわ

0990ナイコンさん (ワッチョイ ffa2-qTRg)2023/11/14(火) 19:09:33.68ID:mHu5tNuz0
おいおい3来るのかよ!

0991ナイコンさん (ワッチョイ 1fbd-XI6K)2023/11/14(火) 21:38:50.50ID:siRScDL30
>>0989
環境話せる範囲で詳細知りたいです。
CP/M-86 で MSX-C 動かすなら実機より早く
フロッピー経由で MSX 実機に持っていくのも
楽だったはずですよね?

0992ナイコンさん (ワッチョイ 7f30-AT9E)2023/11/14(火) 21:57:53.97ID:jOcqKKuQ0
CP/M86じゃMSX-Cは動かんよ
MS-DOS用のLSI-C80かね

0993ナイコンさん (ワッチョイ 1fbd-XI6K)2023/11/14(火) 22:06:54.77ID:siRScDL30
>>992
ありがとうございます。
LSI-C は、MSX-View の開発でも使われていたんですかね?
今更当時の MSX のクロス環境が気になります。今でも使えそうですし。
http://ngs.no.coocan.jp/doc/wiki.cgi/datapack?page=2%BE%CF+MSXView%A5%D5%A5%A1%A5%F3%A5%AF%A5%B7%A5%E7%A5%F3%A4%CE%BB%C8%A4%A4%CA%FD

0994ナイコンさん (ワッチョイ 9f52-Bl0M)2023/11/14(火) 22:13:21.04ID:a5egk48i0
>>991
98,DOS/V共にMS-DOS上で開発
うろ覚えだけどir80?ってコンパイラ使ってた
コマンドは3.5FDD経由でMSXで実行(98よりもDOS/Vの方が相性は良かった)
また実際の製品は専用フォーマット(ファイルシステム使わずセクターアクセスのみ)使ってたんで、
MS-DOS用の専用ツールを作って書き込んで作ってた

0995ナイコンさん (スップ Sd1f-/atU)2023/11/14(火) 22:26:33.93ID:GToSEqyzd
>>993
88dkがあるのに今更LSI-Cなんて使うんかw
当時のゲーム等は全部マクロアセンブラでしょ
シミュレーションゲーム等は高級言語使ってたかもしれない

0996ナイコンさん (ワッチョイ 7f30-AT9E)2023/11/14(火) 23:03:41.18ID:jOcqKKuQ0
>>994
ir80はアセンブラなのでコンパイルじゃないぞ

0997ナイコンさん (スップ Sd1f-6MER)2023/11/14(火) 23:57:49.24ID:PD9dOM6dd
98にZ80乗った基板ぶっ挿してMSDOSとCP/Mを統合して使えるヤツあったよね、カノープスのとか。

ああいうので作ってた人もいるんじゃない?

もっといえばUnixでクロスなんてのも。

0998ナイコンさん (ワッチョイ 9f52-Bl0M)2023/11/15(水) 00:06:19.90ID:vRrR024P0
>>996
うろ覚えって書いとるやん
そんな昔の覚えとらんよ

0999ナイコンさん (ワッチョイ 9fbb-ozWO)2023/11/15(水) 04:01:10.02ID:ZBtNZ9Uy0
使ってた言語まで忘れているようじゃ流石にボケ過ぎでは...

1000ナイコンさん (JP 0H4f-eAGn)2023/11/15(水) 05:55:14.78ID:2BiDpTc6H

10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 174日 11時間 38分 32秒

10021002Over 1000Thread
5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。

▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.net/

▼ UPLIFTログインはこちら ▼
https://uplift.5ch.net/login

レス数が1000を超えています。これ以上書き込みはできません。