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

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

究極の8ビット機を妄想するスレ Part 8

1 :ナイコンさん:2019/07/05(金) 06:32:39.07 .net
できるだけ実在するデバイスのみで、究極の8ビット機を妄想してみよう。
ただし現状のPC界を見てもわかるとおり数値的なスペック追求のみでは無意味と知れ。
お前らの妄想力&創造力に期待する!

前スレ:
6. ttp://matsuri.5ch.net/test/read.cgi/i4004/1555991427/
5. ttp://matsuri.5ch.net/test/read.cgi/i4004/1544995324/
4. ttp://matsuri.5ch.net/test/read.cgi/i4004/1291090549/
3. ttp://toki.2ch.net/test/read.cgi/i4004/1221580785/
2. ttp://bubble6.2ch.net/test/read.cgi/i4004/1161303062/
1. ttp://bubble4.2ch.net/test/read.cgi/i4004/1009359454/l50
究極の8ビット機を妄想するスレ Part 7
https://matsuri.5ch.net/test/read.cgi/i4004/1560227682/

58 :ナイコンさん:2019/07/06(土) 17:50:40.85 .net
1994年にWindows NT3.5を動かす目的で16MBのSIMM買ったが1枚6万円したな

59 :ナイコンさん:2019/07/06(土) 17:58:26.18 .net
ひたすらスレチのWindowsの話をしてる馬鹿はなんなんだ

60 :ナイコンさん:2019/07/06(土) 18:05:19.60 .net
FC版大戦略の64KRAMって
もしかしてVRAM用の8KBのことか

61 :ナイコンさん:2019/07/06(土) 18:10:38.72 .net
馬鹿なんだ

62 :ナイコンさん:2019/07/06(土) 18:18:09.24 .net
1.25M+64KRAM、って書かれてるからグラフィックがROMじゃ無くRAM8KBって事だね
1.25Mの方もROM160KB

63 :ナイコンさん:2019/07/06(土) 18:22:15.52 .net
バイトとビットが紛らわしいw

64 :ナイコンさん:2019/07/06(土) 18:28:32.31 .net
>>57
メインプログラムをROMに置いてるからだろうな

65 :ナイコンさん:2019/07/06(土) 18:55:03.36 .net
>>55
標準8MB+16MBだからWindows95でも普通に動いたよ
最終的にCPU 200MHz、メモリー128MB、HDD 2GBにしてWindows 2000で使ってた

66 :ナイコンさん:2019/07/06(土) 19:13:12.76 .net
アセンブラのリファレンス眺めただけだが、6502っては1つの命令がZ80や6809より少ない命令で実行できても「同じことをやる」のに命令数が増える事が多そうだよな。
あと、プログラム組むの面倒そうだ。
8ビットレジスタしかないとか何のバツゲー?

67 :ナイコンさん:2019/07/06(土) 19:13:27.62 .net
>>65
おっせー
pentium pro200MHz2発メモリ64GB HDDは4GB3台でNT4動かしてたよ

68 :ナイコンさん:2019/07/06(土) 19:14:09.60 .net
>>55>>65
Windows95ならメモリ4Mあれば動くぞ。

69 :ナイコンさん:2019/07/06(土) 19:16:54.95 .net
>>68
386SX16MHzで6MBにフロッピーでインストールしたら10時間くらいかかったぞ

70 :ナイコンさん:2019/07/06(土) 19:22:30.31 .net
ナムコがZ80×3から6809×2に移行したのみると面白い。

71 :ナイコンさん:2019/07/06(土) 19:25:58.72 .net
>>66
それがやってみると意外となんとかなるんだよ。俺も最初はどうしようと思ったけどさ。

72 :ナイコンさん:2019/07/06(土) 19:43:55.93 .net
そもそも16bit演算なんてそんなに使わないしな

73 :ナイコンさん:2019/07/06(土) 19:58:44.63 .net
6502のソフト開発というのはやりたいことをどうやったら6502に
効率よく落とし込めるかってことになるんでしょう。
それはそれで楽しいと思うけど、やりたいことをそのまま
記述する感じではなくなるので、他のところにはもっていきにくくなるね。

74 :ナイコンさん:2019/07/06(土) 20:03:01.48 .net
3つとも仕事で使った俺の感触は、
6809 2M > Z80 4M = 6502 2M
くらいかな、と思ってます。

75 :ナイコンさん:2019/07/06(土) 20:17:54.21 .net
>>70
リブルラブルは68000だったはず

あのあたりから16ビットになった

76 :ナイコンさん:2019/07/06(土) 20:25:02.84 .net
>>67
すげーな、カスタムのチップセットでも使ってたのか?w

77 :ナイコンさん:2019/07/06(土) 20:29:33.02 .net
ナムコの汎用基盤は、
システム86やシステム87(システム1)は6809
システム2で68000だな。

78 :ナイコンさん:2019/07/06(土) 20:35:08.43 .net
8bitパソコンと言っても今更64KB上限で全部入れろって話にはならんだろ
MMUは使う訳で、コモドール128がMOS 8722 MMUでスタックやゼロページの再配置してたように、足りなきゃMMUで切り替えて行けで良いんじゃね

79 :ナイコンさん:2019/07/06(土) 20:36:12.74 .net
>>75
それ、サブCPUで使ってるだけ

80 :ナイコンさん:2019/07/06(土) 20:36:54.25 .net
>>68
動くのは動くけど流石にきっついわ

81 :ナイコンさん:2019/07/06(土) 20:42:47.28 .net
>>75
いやいやリブルラブルは83年末だが重い塗り潰しがあるから68000使ったのであって、ナムコが本格的に68000に移行するのは88年のシステム2から。それまでは6809だな。
マッピーから87年までのメジャーなナムコゲームは、ゼビウスとリブルラブルを除くとほとんど6809。

82 :ナイコンさん:2019/07/06(土) 21:04:31.99 .net
>>66
レジスタにアドレスを持てないから配列の構造体にする必要があるけど
HLにアドレスをセットする手間がかかるZ80よりはるかに楽チン

83 :ナイコンさん:2019/07/06(土) 21:14:45.70 .net
>>82
当時は6502向けはどんな開発環境で開発してたんですか?

84 :ナイコンさん:2019/07/06(土) 22:26:49.11 .net
LXI命令一発だろ、何言ってんだよ。

85 :ナイコンさん:2019/07/06(土) 22:33:10.63 .net
>>83
忘れた
ESDEC 65アセンブラが手元に残っているけどAssembler/Editor使ってたかも

86 :ナイコンさん:2019/07/06(土) 22:39:02.06 .net
85年ぐらいから95年ぐらいまでの10年ってコンパイラでも、
違って3か月ごとにマイナーVerUp、半年ごとにVerUp、毎年新製品リリース
って感じだったよな。

87 :ナイコンさん:2019/07/07(日) 05:19:44.03 .net
gccが日本に伝来したのが1991年頃か

88 :ナイコンさん:2019/07/07(日) 07:07:06.62 .net
移植性を重視して8bitパソコンやゲーム機にC言語を使ったので当時有名だった信長の野望全国版は何のCだったんだろう?

89 :ナイコンさん:2019/07/07(日) 07:10:50.87 .net
アセンブラからと違ってBASICで書かれたソフトをCへの移植するって要件が楽だよな。

90 :ナイコンさん:2019/07/07(日) 07:29:49.50 .net
1986年ならアーケード機にもC開発が出たから、1985年くらいから本格的にCが流行ってたのかな
ビジネスアプリもBASICからCに移植とかやってたし

91 :ナイコンさん:2019/07/07(日) 07:31:56.96 .net
業務系の大半はN88(86)BASIC→VBだよw

92 :ナイコンさん:2019/07/07(日) 07:51:13.82 .net
>>89
アセンブラからの方が楽だろ
文字列とか10進とかライブラリ作るのが面倒くさい

93 :ナイコンさん:2019/07/07(日) 08:05:11.57 .net
要件の意味が分かってもらえないなんて

94 :ナイコンさん:2019/07/07(日) 08:54:23.18 .net
BASICからC言語の移植でscanf系関数もprintf系関数も使わないとか酷いな。
そんな仕事はけられておしまいだわ。

95 :ナイコンさん:2019/07/07(日) 08:59:02.77 .net
strlcpy

96 :ナイコンさん:2019/07/07(日) 10:22:51.26 .net
>>89
当たり前だがケースバイケース
GOTOとかグローバル変数使いまくりのスパゲティBASICコードより、ちゃんとモジュール化されてるアセンブラの方が楽

97 :ナイコンさん:2019/07/07(日) 13:19:53.85 .net
Cにもgotoはあるしグローバル変数もありますよ?

98 :ナイコンさん:2019/07/07(日) 13:35:47.05 .net
gotoなんか使ったらバチが当たるよ

99 :ナイコンさん:2019/07/07(日) 13:46:22.63 .net
綺麗にするのは後回しで、取り敢えず移植しなきゃならない場合も有るし
そういうBASICの汚さまでも受け入れられるのがCの良い所でも有る

100 :ナイコンさん:2019/07/07(日) 14:49:07.04 .net
>>97
でもGC付きの文字列はないよね
そんなのをグローバル変数でぐちゃぐちゃ使われてたら…

101 :ナイコンさん:2019/07/07(日) 14:50:32.26 .net
BASICにGCなんてないよ

102 :ナイコンさん:2019/07/07(日) 15:35:36.94 .net
>>101
素人は黙ってて

103 :ナイコンさん:2019/07/07(日) 15:49:38.89 .net
玄人登場w

104 :ナイコンさん:2019/07/07(日) 16:23:39.51 .net
>>103
人を煽るならもう少し知恵をつけてからにしましょうw

N-BASICには文字列を大量に操作するとガベージコレクションというメモリを最適化する動作が起こるんです。
http://www.yoriki.jp/smalltalk/academy02.html
まあ実装はかなり改善されてるけどね

105 :ナイコンさん:2019/07/07(日) 16:37:50.09 .net
BASICのプロワロタ

106 :ナイコンさん:2019/07/07(日) 16:42:29.23 .net
N-BASICだってよw

107 :ナイコンさん:2019/07/07(日) 16:47:08.61 .net
>>104
N-BASICw

108 :ナイコンさん:2019/07/07(日) 16:48:05.27 .net
>>83
当時っていつの時代のどの機種向けのことだ?
それによって全然違うし、さらに同時代同時期でもいろいろある。
大学のミニコンにエミュレータ構築してる奴もいれば、
そのままセルフ開発もいれば、
Apple2ならFD共通化できるからZ80カードにCP/Mでのクロスもいれば、
IBM-PC互換機でてからはMS-DOSクロスもいれば、
ゲーム機なら任天堂やハドソンが提供してた

何度も同じこと聞くなよ。

109 :ナイコンさん:2019/07/07(日) 17:02:08.90 .net
>>105-107
今のBasicにGCがなくなったと思ってるのか?
基本は変わらんよ

110 :ナイコンさん:2019/07/07(日) 17:07:11.09 .net
BASIC言語の問題だと思ってるあたり、痛い子ちゃんだなあ

111 :ナイコンさん:2019/07/07(日) 17:34:56.80 .net
自動的に解放とかいうバカ用の行儀の悪い言語だと今も悩まされる

112 :ナイコンさん:2019/07/07(日) 19:48:20.16 .net
>>110
問題を理解できない痛い子に言われてもなぁw
そもそもBasicの問題じゃなくてGCの問題だし

113 :ナイコンさん:2019/07/07(日) 20:12:45.43 .net
>>112
を!自分がバカだということに気づいて
主張を変えてきやがったwww

114 :ナイコンさん:2019/07/07(日) 20:51:19.79 .net
???
BasicにはGCあるけどCにはないから移植が面倒って話なんだが>>113には難しいのかな?w

115 :ナイコンさん:2019/07/07(日) 21:04:52.53 .net
>>114
を!更に変なことを言いだしたぞw
なんでGCが必要なんだ?

116 :ナイコンさん:2019/07/07(日) 21:22:49.01 .net
文字列の処理考えたらわかる
たいていの処理系で A$ = B$ ってやっても実体のコピーはせずに文字列を共有する
A$, B$が必要なくなるのはてんでバラバラなのでこの手の処理をするにはCGを実装するのが一般的
違うと言うなら違う実装を提示してみ

117 :ナイコンさん:2019/07/07(日) 22:51:55.64 .net
文字列の最大サイズを文字変数の数確保

118 :ナイコンさん:2019/07/07(日) 23:55:21.59 .net
「8ビットではC言語は使われてなかった。イイネ?」

119 :ナイコンさん:2019/07/08(月) 00:02:40.15 .net
シミュレーションゲーム系が大変になるな

120 :ナイコンさん:2019/07/08(月) 00:05:05.70 .net
これを貼れと

8ビットCPUでC言語? ないないありえないっしょ!
http://matsuri.5ch.net/test/read.cgi/i4004/1532613479/

121 :ナイコンさん:2019/07/08(月) 00:15:10.96 .net
CG

122 :ナイコンさん:2019/07/08(月) 00:17:24.24 .net
8ビットでCGって、3Dモデルのワイヤーフレーム表示はともかく、レイトレやったら死ねそうだなぁ。
昔々、昭和のころにX1ターボでン百時間とかやった人が居たとかどっかで聞いたが・・・

123 :ナイコンさん:2019/07/08(月) 00:48:51.49 .net
演算に関してはFPUにお任せで良いでしょ

124 :ナイコンさん:2019/07/08(月) 01:26:00.57 .net
BASICからCに移植するのにGCを独自実装しなきゃならんとか、バカか?

バカなんだろうな。

125 :ナイコンさん:2019/07/08(月) 01:54:28.96 .net
CGを実装するのが一般的ドヤァ

CGねぇ

126 :ナイコンさん:2019/07/08(月) 02:04:29.39 .net
違うと言うなら違う実装を提示してみドヤァ

勝利宣言はまだですか?

127 :ナイコンさん:2019/07/08(月) 02:40:22.44 .net
ちゃんと処理すればGCいらないような気がするけど
なんか不都合あるかしら

128 :ナイコンさん:2019/07/08(月) 04:10:33.60 .net
無しの案書いたけど反論こないねBASICって不要な変数わかりにくいよなCGするにしても
つうかポインタ渡しだっけ$A$B個別に書き換えらたような思い出別な処理系と混同してん
のかな

129 :ナイコンさん:2019/07/08(月) 04:59:56.09 .net
>>128
なしの案って>>117みたいな荒唐無稽な奴とか>>127みたいな具体性のかけらもない奴のこと?
そりゃアホすぎて反論も来ないだろw

130 :ナイコンさん:2019/07/08(月) 05:07:40.47 .net
文字列の連結を'+'だけで済ますなんて邪道

131 :ナイコンさん:2019/07/08(月) 05:22:35.71 .net
>>122
CQ出版が1983年に発行した3DCG本ではBASICで記述したRay-Tracingプログラムが公開されていて映画『トロン』のライト・サイクルもどきがあちこちのSHOPでDEMOっていたな。
本ではCP/M+BASCOMで実行ということだったが手元のPCのBASICインタプリタを使った人も多かったよ。

132 :ナイコンさん:2019/07/08(月) 05:42:56.11 .net
>>88
マニュアルには
・LSI-C(Z80系)
・イントロール・クロスC(6809系)
・MS-C,PLINK86(8086系,V30系)
と書いてある。

133 :ナイコンさん:2019/07/08(月) 06:33:55.33 .net
移植性重視でcではなく、
単に昔のBASICではグローバル変数だけだから大規模なプログラムは破綻するからだろう。

134 :ナイコンさん:2019/07/08(月) 06:41:50.77 .net
当時はCが流行ったって言うよりも、
C以外が流行らなかったって、消去法でCが使われてたような

135 :ナイコンさん:2019/07/08(月) 06:51:39.48 .net
なんでBASICで書いたプログラムをCに移植するのに、CにGCが必要になるんだ?
文字列用のエリアをヒープに確保するならmalloc/free使う「C言語のお作法」に従う必要はあってもBASICのGCを模倣する必要はないじゃん。

136 :ナイコンさん:2019/07/08(月) 07:25:32.39 .net
日本ではROM BASICが強くpascalが流行らなかっただけで、米国じゃBASICとCの間にpascalが流行った時期があった。

GCをCにもと言ってる人は、余程出来ない人に学んだんだろうな。

137 :ナイコンさん:2019/07/08(月) 07:30:22.32 .net
>>135
文字列が必要なくなるのがてんでバラバラだからいつfreeするのかわからない人みたいだよ

138 :ナイコンさん:2019/07/08(月) 08:13:54.10 .net
>>135-137
毎回文字列をコピーしまくるタコ設計でいいならそれでいいんじゃね
移植するなら多分マシン性能も上がってるだろうし

139 :ナイコンさん:2019/07/08(月) 08:19:13.54 .net
>>91
80年代は業務系の大半はオフコンでCOBOLだろ

140 :ナイコンさん:2019/07/08(月) 08:19:51.12 .net
>>138
C言語が判ってないのね、君は。
だから「GC必要なんじゃドヤァ!」ってバカなこといってるんだね。
かわいそうに・・・

141 :ナイコンさん:2019/07/08(月) 08:20:05.62 .net
BASICで変数が不要と分かるタイミングっていつ?

142 :ナイコンさん:2019/07/08(月) 08:22:46.75 .net
文字列が毎回コピーとか言ってる時点でJavaプログラマなのかな
たしかにJavaだとStringBuilder使わないと加工するたびに毎回コピーされる
C言語の文字列はただの文字型の配列だからな

143 :ナイコンさん:2019/07/08(月) 08:27:55.22 .net
>>141

A$="1234"
A$=null

とかできるBASICならnull代入時になるんじゃね?
N-BASICはよく知らんけどローカル変数やnullの概念がないBASICは一度宣言(確保)した変数はCLEARとかNEWとかERASEとかDIMとかで開放しないとずっと握りっぱ。

144 :ナイコンさん:2019/07/08(月) 08:31:25.79 .net
ROM BASICで動くプログラムならそのままDiskBASICコンパイラで速く動かせられるってなってりゃ、
あれほどROM BASICだけしか無いって状況になってなかったろうに
結局は移植が必要で、どうせ移植するならCでも手間は大差無い
なら高速化できる余地のあるCにしてしまえ、だったような

145 :ナイコンさん:2019/07/08(月) 08:31:47.61 .net
C言語の場合、文字列のコピーも連結も関数使って自分でやるんだよな
他の言語のように全自動でやってくれない

146 :ナイコンさん:2019/07/08(月) 08:34:16.24 .net
当然、C言語の場合
新しい文字列が必要になったら文字列の領域確保も自分でやらないといけない

147 :ナイコンさん:2019/07/08(月) 08:37:08.02 .net
C言語の場合、文字列の領域確保はグローバル変数でもいいし
関数内だけでしか使わなければローカル変数でもいいし
途中でメモリを解放したければmallocで動的に確保してもいい

いずれにしても自分で領域を確保しないといけない
全自動ではやってくれない

148 :ナイコンさん:2019/07/08(月) 08:51:23.73 .net
言われてみれば、8ビット時代のBASICのGCって何を対象にしてるんだろ?
てっきり、文字列変数を切り貼りする時の内部的なテンポラリ領域を掃除するんだろと思ってたけど、厳密には考えたこともなかったな。
ローカル変数がないんだから、変数が要らなくなるタイミングなんてない気がする

149 :ナイコンさん:2019/07/08(月) 08:59:32.79 .net
>>129
ないことの証明はできない、悪魔のなんたらってやつじゃん?
どうしてもGC必要な例だしてよw

150 :ナイコンさん:2019/07/08(月) 09:03:48.99 .net
A$="12345”
B$="ABCDE"
ってやったあとに
A$="AB"
ってやったりすると”CDE"があった部分が開くでしょ?
そこにB$をずらしてくる。
というのがBASICのGCがやることのひとつ。
GCやって後ろに空きがなくなったところで
A$=A$+"XYZ"ってやると新しい領域にA$+"XYZ"の結果入れて、それまでA$が占めてた空間が開くので(ry

まぁBASICも文字列操作すると裏ではコピーしまくりなのよね。

151 :150:2019/07/08(月) 09:05:54.09 .net
”CDE"の場所があく、じゃねーや、”345”の場所が開く、だw
まぁ、言いたいのはそこじゃなくて「文字列の長さ変わったら」だから勘弁してクレメンス。

152 :ナイコンさん:2019/07/08(月) 09:13:20.44 .net
>>150
なるほど
デフラグって感じね

153 :ナイコンさん:2019/07/08(月) 09:16:55.21 .net
C言語の場合、そういう操作は全部手動でやる
文字列のコピーもstrcpyなどを使って手動でやる
新しい文字列領域が必要になったらmallocで領域確保していらなくなったらfreeで解放

154 :ナイコンさん:2019/07/08(月) 09:25:14.52 .net
malloc/freeもどうしようもないゴミができてくるよね

BASICのやつ、文字列ヒープコンパクションだったのね

155 :ナイコンさん:2019/07/08(月) 09:29:58.46 .net
>>149
> どうしてもGC必要
そんなこと言ってるの君だけじゃね?

156 :ナイコンさん:2019/07/08(月) 09:34:22.62 .net
>>155
はい、では「GC必要ない」で良いですか?

157 :ナイコンさん:2019/07/08(月) 09:50:43.85 .net
「どうしてもGCが必要」とは言ってない
 ↓
「CGは必要ない」

って考える人はプログラマーに向いてないんだろうな…

総レス数 1001
229 KB
新着レスの表示

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