X



トップページ昔のPC
1002コメント314KB
MSX3 Part7
レス数が1000を超えています。これ以上書き込みはできません。
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
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) と書きたいねぇ。マクロでなんとか
綺麗に新しい書き方っぽくならないかな。
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
ライブラリだから汎用的になっているのが当時としては大げさだよね
アプリとしては必要な範囲・精度で結果が求められれば十分だから
0962ナイコンさん (ワッチョイ 1f83-/atU)垢版2023/11/12(日) 08:44:48.32ID:dfmm+4Im0
>>955
6809では8ビットながらすでにポストインクリメントやインデックスレジスタからのオフセットアクセスが機械語レベルでサポートされている
Z80でやろうとするとINC命令をあとから追加したりIXレジスタを使うと1バイト長くなり実行も遅くなる
0966ナイコンさん (ワッチョイ 1f83-/atU)垢版2023/11/12(日) 12:05:37.63ID:dfmm+4Im0
アセンブラやってみるとわかるんだけど
構造体とか先頭アドレスをレジスタにセットしてメンバーへのオフセットをプラスしてアクセスするから1命令で便利
Z80ではHLレジスタに構造体アドレスを入れてDEにオフセットを入れて足して(時間のかかる16ビット演算)からアクセスし別のメンバーにアクセスするにはまた足して…
IXレジスタでやると頭に1バイトコード足してしかもアクセスは遅くなるんだよな
配列でも同じような問題がある
しょせん電卓用CPUだからしょうがないんだけどw
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 で開発されたソフトは
有るよね
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ギフト券に交換できます
家族・友人に紹介したり、通常タスクをこなせば更にポイントを追加でゲットできます
0979ナイコンさん (スップ Sd1f-qTRg)垢版2023/11/13(月) 12:22:15.71ID:2NPIT0ajd
>>976
えそれすごい!
0987ナイコンさん (ワッチョイ 7f2d-MGXX)垢版2023/11/14(火) 12:43:37.33ID:urWiOaBp0
MSX含め8bit機でCやるのは苦行でしかない
PC上でクロスコンパイルして、エミュレーターで動作確認して時々実機で動かせばいい
Androidアプリの開発だってみんなそうやってんだ
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 実機に持っていくのも
楽だったはずですよね?
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
当時のゲーム等は全部マクロアセンブラでしょ
シミュレーションゲーム等は高級言語使ってたかもしれない
0997ナイコンさん (スップ Sd1f-6MER)垢版2023/11/14(火) 23:57:49.24ID:PD9dOM6dd
98にZ80乗った基板ぶっ挿してMSDOSとCP/Mを統合して使えるヤツあったよね、カノープスのとか。

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

もっといえばUnixでクロスなんてのも。
10011001垢版Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 174日 11時間 38分 32秒
10021002垢版Over 1000Thread
5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。
運営にご協力お願いいたします。


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

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

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

▼ UPLIFTログインはこちら ▼
https://uplift.5ch.net/login
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況