■ このスレッドは過去ログ倉庫に格納されています
究極の8ビット機を妄想するスレ Part 11
- 1 :ナイコンさん:2019/10/08(火) 20:01:55.20 .net
- 1 名前:ナイコンさん[sage] 投稿日:2019/08/26(月) 12:10:25.22
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
-
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
できるだけ実在するデバイスのみで、究極の8ビット機を妄想してみよう。
ただし現状のPC界を見てもわかるとおり数値的なスペック追求のみでは無意味と知れ。
お前らの妄想力&創造力に期待する!
レギュレーション:
・搭載するプロセッサは、周辺も含め演算レジスタ幅8bit、データバス幅8bit縛りとする。
・搭載するプロセッサは、周辺も含め「同一機能のものは2基まで」とする。
>>2以降に補足
前スレ:
究極の8ビット機を妄想するスレ Part 7
https://matsuri.5ch.net/test/read.cgi/i4004/1560227682/
究極の8ビット機を妄想するスレ Part 8
https://matsuri.5ch.net/test/read.cgi/i4004/1562275959/
究極の8ビット機を妄想するスレ Part 9
https://matsuri.5ch.net/test/read.cgi/i4004/1564217758/
究極の8ビット機を妄想するスレ Part 10
https://matsuri.5ch.net/test/read.cgi/i4004/1566789025/
- 514 :ナイコンさん:2019/11/29(金) 08:46:28.71 .net
- >>511
おまえ自分で馬鹿なこと言ってるという認識はあるよな?さすがに
- 515 :ナイコンさん:2019/11/29(金) 09:23:53 .net
- Win9xが完全32bitならNTいらなかったよな
- 516 :ナイコンさん:2019/11/29(金) 10:31:19.28 .net
- NTは元はOS/2の後継から始まっているので見た目は似てても出自も設計思想も異なる
Win1.0からMe迄はDOSのレガシー部分を引き擦っていた
- 517 :ナイコンさん:2019/11/29(金) 10:54:52 .net
- ケンカ別れなのでむしろVMSの後継と言うべき。頭文字も一文字ずらしたWNTだしな。
- 518 :ナイコンさん:2019/11/29(金) 11:13:02 .net
- >>515
Win95(というかWin386 以降)は32bitOSだよ
CPUを32bitプロテクトモードにして仮想86モードで
32bit上にBIOSとか16bit環境を再構築してる
16bitコードでの割込みとかもプロテクトモードで例外をハンドルして32bitで処理する
完全32bitOSと言っても問題ない
- 519 :ナイコンさん:2019/11/29(金) 11:43:26.25 .net
- 外からWindowsを見てる奴らの知識なんてそんなもんってことだな
- 520 :ナイコンさん:2019/11/29(金) 12:13:48.82 .net
- 単にwin3.xの32bit化、移植が間に合わなかったのか、それともシステム要件のメモリ4MBを達成するために
肥大な32bitコードを諦めたのかは分からないが、いくつかの機能が16bitコードのままで実行している。完全32bitとはとても言えないな。
しかし逆に95はwin32アプリから16bitDLL、win16から32bitDLLを呼べるので移行期のOSとしては努力したほうだろう。
手抜きwin64では32-64間のDLL呼び出しはサポートされてない上にwin16も切捨てだからな。
- 521 :ナイコンさん:2019/11/29(金) 12:26:50.67 .net
- 究極の8ビット機スレはどこ行った?
- 522 :ナイコンさん:2019/11/29(金) 13:05:22.01 .net
- >>520
16bitコードは仮想86上で実行してるけど。
95からはディスク回りも仮想86上の16bitコードじゃなくて
32bitドライバで動作するようになったし
- 523 :ナイコンさん:2019/11/29(金) 13:30:33.47 .net
- >>520
16bitコード切り捨てはx64の仕様じゃ
Windowsの性ではない
- 524 :ナイコンさん:2019/11/29(金) 13:51:47.40 .net
- 仮想86をエミュればいいだけ。手法はいくらでもある。
amd64は32bitOS上で仮想PC使って64bitOSも動く。
ほんとただの努力不足。というか手抜き。64bit空間に全部xxx32とか名前つけてる時点で無能そのもの。
- 525 :ナイコンさん:2019/11/29(金) 14:15:32.57 .net
- 16bitコード廃止してくれてよかったよ
変に動いてメンテナンスしろとかになったら糞厄介だからな
次は廃止予定使うなって言ってから軽く20年以上立ってるようなAPIの廃止
またはデフォルト状態で使用不可にしてくれ
どうしても使いたい人は勝手に仮想マシンで実行すればいいだけだし
- 526 :ナイコンさん:2019/11/29(金) 14:17:44.74 .net
- >>523
すでにそれ以前から16bitコードはCPU内部エミュ動作ですけど
- 527 :ナイコンさん:2019/11/29(金) 14:35:47.13 .net
- >>525
切り捨て王のアップル関連の開発の仕事だけしとけ。
- 528 :ナイコンさん:2019/11/29(金) 14:41:55.34 .net
- >>527
いい加減TurboCを退役させてください
- 529 :ナイコンさん:2019/11/29(金) 14:55:47.14 .net
- >>526
だから64bitモード時にはそれが動かないって話だろ
馬鹿なのおまえ?
- 530 :ナイコンさん:2019/11/29(金) 15:14:06.55 .net
- まあ64bitモードに仮想86モードがなくて良かった
そんなカオスCPU誰も喜ばないからな
- 531 :ナイコンさん:2019/11/29(金) 15:23:08.20 .net
- 知ったかばかりしてるおまえには元から一切関係のない話だ。
- 532 :ナイコンさん:2019/11/29(金) 15:54:44.68 .net
- >>531
ついてこれなくて悔しかった?
- 533 :ナイコンさん:2019/11/29(金) 16:04:24.70 .net
- >>532
ドライバ書いてるからおまえよりよほど詳しいわ。
- 534 :ナイコンさん:2019/11/29(金) 16:06:56.53 .net
- ドライバ書いてるだってw
- 535 :ナイコンさん:2019/11/29(金) 16:07:17.78 .net
- サンデードライバー
- 536 :ナイコンさん:2019/11/29(金) 17:03:12.99 .net
- ・386はただの「高速な8086」としてしか使われていなかった。
・Win95でも相変わらず16bitコードで動作していた。 ← new!!
- 537 :ナイコンさん:2019/11/29(金) 19:27:26.32 .net
- 64bit環境でDOSや16bitバイナリを使うのにエミュ用意して、なんだかんだでCPUコアのライブラリを386にしてDPMI対応までしてるの見ると、
そこまでするなら仮想PCでネイティブコード実行でいいんじゃないかな…と思ってしまう
- 538 :ナイコンさん:2019/11/29(金) 19:42:56.53 .net
- >>529
バカにされてるのは
> 16bitコード切り捨てはx64の仕様じゃ
なw
- 539 :ナイコンさん:2019/11/29(金) 20:04:45.66 .net
- >>538
仮想86モードが無いからな
- 540 :ナイコンさん:2019/11/29(金) 20:32:37.98 .net
- お前ら他所でやれ
ここは8bitスレだぞ
- 541 :ナイコンさん:2019/11/29(金) 21:01:26.15 .net
- >>539
バカは黙っとけ ⇒ >>524
- 542 :ナイコンさん:2019/11/29(金) 21:08:13.49 .net
- この伸び!!! アウアウ君が暴れてるなw
- 543 :ナイコンさん:2019/11/29(金) 22:07:21.66 .net
- 実際MSは後から仮想PCソフト買収して無料配布したからな。
手抜きした失態をお金で解決とか能無しにもほどがある。
- 544 :ナイコンさん:2019/11/29(金) 22:41:06.61 .net
- 解決しないで誇張した主張ばかりするGNUとかいう組織よりはましだな。
- 545 :ナイコンさん:2019/11/29(金) 23:30:55.87 .net
- z80は高速な8080として使われていた
裏レジスタなんか使わんしな
- 546 :ナイコンさん:2019/11/29(金) 23:47:48.94 .net
- 一番違う扱いになったのは相対ジャンプの有無だろ
- 547 :ナイコンさん:2019/11/30(土) 00:57:52.34 .net
- ゲームソフトの裏レジスタ使用率は高い。
- 548 :ナイコンさん:2019/11/30(土) 03:18:04 .net
- 裏レジスタは使ってたぞ
主に EX AF,AF' の方。PUSH AF, POP AFするより早い
一方で EXX の方はそんなに使わんかった記憶が。
で、PC-98に移行した時に、あれ?8086って裏レジスタないんか、と思った
Z80から始めたから、どのCPUにも裏レジスタあるんだと勘違いしとった
- 549 :ナイコンさん:2019/11/30(土) 07:02:27 .net
- おれも86のいじり始めは、裏レジスタ無いのか正味で抱えられる本数そんなに無いんだな思ったより窮屈だな…と思った
まあ素で16bitあるのでレジスタペア使わないからZ80より楽なんだけどね
あと68k系にさんざん貶されたレジスタの用途固定もニーモニック覚えて易くてよかったよ
用途無視して使おうとするキチガイプログラマが稀に居て、そういう奴の書いたアセンブリソースは眺めるだけで気が狂いそうになったけど
68kはレジスタ何使ってもいいから逆にコーディング規則でカウンタはD7から使うとか規定しておかないとサブルーチン毎に使い方が変わったりしてこれまた面倒くさい世界だった
全部自分一人で好き勝手にコーディングする日曜プログラマには理想に見えたのかもしれないが
- 550 :ナイコンさん:2019/11/30(土) 08:14:26.33 .net
- 逆だよカウンタや一時変数みたいな使い捨てデータは低位レジスタに入れる
知識の乏しいプロだなRISCやx64でもチマチマしたクソコード書いてそう
- 551 :ナイコンさん:2019/11/30(土) 08:29:45.22 .net
- 8bitの知識が乏しいRISC信者乙。MIPS君はまだあちらこちらの8bitスレで暴れてるのかい?
- 552 :ナイコンさん:2019/11/30(土) 08:48:06.86 .net
- コーディング規則なんてローカルルールの宝庫だし、お前んとこの規則が常に余所でも通用すると思ってる時点で社会経験の乏しさを自ら暴き立ててしまっている訳だが
レジスタの割り当てもコンパイラが吐くコードに寄せるか、手打ちコードと判別がつくように敢えて規則で縛るかも開発経験からくる要請や意識の差というもので
まあ>>550はおよそ何もかもが乏しく狹視野で、浅い。
- 553 :ナイコンさん:2019/11/30(土) 08:52:55.27 .net
- そういやx64や64bitRISCでアセンブリなんて久しく使ってないな
32bitですらブートかデバイスドライバの最も低位の処理くらいか
感覚も30年くらいズレてそうだ
まあスレには合っているのかもしれんが現代の話にはしゃしゃり出てくるなロートル。今度生意気垂れたら潰すぞ
- 554 :ナイコンさん:2019/11/30(土) 09:04:16.60 .net
- 今時アセンブラって電源ON直後の処理ぐらいしか書かんでしょ。
- 555 :ナイコンさん:2019/11/30(土) 09:12:52.28 .net
- KYだな。懐古板で今時の話をすんなよ。
- 556 :ナイコンさん:2019/11/30(土) 09:18:02.54 .net
- アホだよな高級言語でもチマチマしたクソコード書いてそう
- 557 :ナイコンさん:2019/11/30(土) 09:24:04.25 .net
- 高級言語といえばN-BASICだよな。
- 558 :ナイコンさん:2019/11/30(土) 10:18:00.67 .net
- 今時の組み込みはOSレスでもブートコードでアセンブラは使いません
- 559 :ナイコンさん:2019/11/30(土) 10:19:28.46 .net
- Z380は4バンクあるっぽいな
やっぱそれくらい欲しいわ
裏だけじゃBGMの割り込み処理で占有したくなるので封印とかなる
- 560 :ナイコンさん:2019/11/30(土) 10:31:06.66 .net
- >>558
いくつか確認してみたがCソース内にasm あったよ。
- 561 :ナイコンさん:2019/11/30(土) 10:32:16.64 .net
- MMUあってもリロケータブルに書くのは面倒なCPUばっかだしなぁ。やっぱりバンクだよな。
- 562 :ナイコンさん:2019/11/30(土) 10:39:52.92 .net
- >>553
そもそも人間が頑張らずにコンパイラに仕事させるのがRISCの設計しそうですしおすし…
- 563 :ナイコンさん:2019/11/30(土) 10:43:23.59 .net
- Cの設計思想ってコンパイラ開発者が楽できるためなのに無責任に仕事押し付けるなよ。
- 564 :ナイコンさん:2019/11/30(土) 11:03:56.45 .net
- レジスタに色付けしてないと書けないとか言ってる時点でお察し
- 565 :ナイコンさん:2019/11/30(土) 11:09:50.96 .net
- RISCの設計思想 →コンパイラ仕事しろ
Cの設計思想 →プログラマ仕事しろ
OSSの設計思想 →ユーザー仕事しろ
こういうことですね
- 566 :ナイコンさん:2019/11/30(土) 11:23:27.91 .net
- >>564
お前がここで言い出すまでそんな話は誰もしていない訳だが
- 567 :ナイコンさん:2019/11/30(土) 11:28:55.47 .net
- >>566
>>549
- 568 :ナイコンさん:2019/11/30(土) 11:29:57.35 .net
- >>567
>>566
一生案山子と話してろ
- 569 :ナイコンさん:2019/11/30(土) 11:30:45.83 .net
- >>558
具体的な開発環境とCPU書いてみ
- 570 :ナイコンさん:2019/11/30(土) 11:31:25.63 .net
- >>559
サウンド処理なんて頻度も粒度も荒いだろ
PUSH/POPで追いつかないようなシビアさは無い
3.58MHzで水平帰線で毎ラスターカウンタ弄るとかしてるとキツいが
- 571 :ナイコンさん:2019/11/30(土) 11:32:48.26 .net
- いろんな書き方できると書くほうは楽かもしれないが読むほうは大変なのは同意。
- 572 :ナイコンさん:2019/11/30(土) 11:34:09.47 .net
- >>549
>あと68k系にさんざん貶されたレジスタの用途固定もニーモニック覚えて易くてよかったよ
>>564
>レジスタに色付けしてないと書けないとか言ってる時点でお察し
レジスタに色ついてないと書けないと突然言い出したのは>>564
ストローマン論法ってやつですな
- 573 :ナイコンさん:2019/11/30(土) 11:36:06.02 .net
- >>570
N88BASICってリズムズレまくるぞ。
- 574 :ナイコンさん:2019/11/30(土) 11:36:22.27 .net
- 自分一人で書いて自分で読めればそれでいいサンデープログラマなら好きに書けば良いのだが
多人数で何世代にも渡ってメンテしなければならないようなコードを書く時は
レジスタの利用順位まで明文化されたコーディング規定とかあてがわれるのも珍しくも何ともないんで
まあ自分の机の上しか知らない日曜プログラマの子だと理解できない世界だろうな
- 575 :ナイコンさん:2019/11/30(土) 11:36:40.96 .net
- ソースは色つけたほうが読みやすいは同意。
- 576 :ナイコンさん:2019/11/30(土) 11:39:59.78 .net
- まあ書けないまでは言ってないか コメント付けとけよタコ
- 577 :ナイコンさん:2019/11/30(土) 11:51:31.81 .net
- >>570
サウンド処理自体はいいんだよ
全レジスタのPUSH/POPが割り込み毎に発生するから
主処理が重くなるってこと
- 578 :ナイコンさん:2019/11/30(土) 11:52:03.13 .net
- >まあ>>550,564,567,576 はおよそ何もかもが乏しく狹視野で、浅い。
- 579 :ナイコンさん:2019/11/30(土) 11:54:33.86 .net
- まあSPUを別に用意すりゃいい話だけどね
- 580 :ナイコンさん:2019/11/30(土) 11:56:41.59 .net
- コメントも色つけたほうが読みすいぞ。
- 581 :ナイコンさん:2019/11/30(土) 11:56:44.18 .net
- 割り込みルーチン内で使うレジスタ絞ってPUSH/POP減らすくらい普通にやるし
やったところで表しか使わなければ表レジスタをPUSHしてRIする前にPOPで戻すだけ
割り込み頻度からして1/60か、音源専用に割り込みを持っていても32〜192Hz辺り、速くても440Hz辺りで可変が相場なので
表レジスタの退避/復帰にスタックを使ったら間に合わないなんてほどシビアな世界ではない
Hブランクはそうは行かんぞ15kHzだからな
- 582 :ナイコンさん:2019/11/30(土) 11:58:15.05 .net
- 誤 速くても440Hz
正 速くても240Hz
- 583 :ナイコンさん:2019/11/30(土) 12:03:40.75 .net
- x86で3流PG長くやってんのを視野が広いとか深いとか言われてもね
- 584 :ナイコンさん:2019/11/30(土) 13:04:35.36 .net
- 間に合う合わないの話なんかしてないのに
- 585 :ナイコンさん:2019/11/30(土) 13:11:30.68 .net
- >>553
使ってない奴は黙ってろw
- 586 :ナイコンさん:2019/11/30(土) 13:12:36.23 .net
- >>558
ブートコード書いてから言え
- 587 :ナイコンさん:2019/11/30(土) 13:16:52.33 .net
- >>583
だからいつまで経っても三流人足プログラマなんだよな
- 588 :ナイコンさん:2019/11/30(土) 13:26:01.91 .net
- >>584
しなくていい割り込み処理の軽量化と称する設計上のエゴを通すために
一般のコードで裏レジスタの利用を禁じる方が不合理だ
- 589 :ナイコンさん:2019/11/30(土) 13:26:58.28 .net
- >>583
x86を使い続けているとも書いていないな。言い出したのはお前だ
まあそうやってずっとカカシと話してろ
- 590 :ナイコンさん:2019/11/30(土) 13:43:20.15 .net
- 書き方が悪かったか
今時の組み込みだとユーザーが初期化でアセンブラのコードを書くことはないってこと
ルネサスのH8(HEW)の時点でCで初期化部分は書けたし、RL78とかだとCS+では初期化はGUIから自動生成できる
Atmel ATmega とかもAVR/Atmel studioでアセンブラコードを書いたことはない
PIC もMPLAB XでXC8使った際にアセンブラのコードは書いてない
- 591 :ナイコンさん:2019/11/30(土) 13:44:48.61 .net
- 訂正
x86で3流PGちょこっとやったのを視野が広いとか深いとか言われてもね
- 592 :ナイコンさん:2019/11/30(土) 13:57:47.04 .net
- この前avr tiny13でアセンブラ書いたわw Cじゃとても入る気がしねぇ。
- 593 :ナイコンさん:2019/11/30(土) 14:03:54.82 .net
- どう腐そうとお前よりは上流
残念だったね
- 594 :ナイコンさん:2019/11/30(土) 14:20:23.70 .net
- コード書かない上流のおれすげーみたいな
- 595 :ナイコンさん:2019/11/30(土) 14:23:51.11 .net
- しょっぱい逃げ口上だね潰すんじゃないの頑張れよ
- 596 :ナイコンさん:2019/11/30(土) 15:21:05.87 .net
- >>570
サウンド処理もピンキリ
8bitじゃないけどX68KのPCM8みたいにソフトで合成までやるとなるとすごく大変だよ
- 597 :ナイコンさん:2019/11/30(土) 15:26:44.27 .net
- >>574
レジスタの利用順序を規定?
普通は引数と戻り値に使うレジスタ以外は退避して壊さないようにするだろ
退避のコストすら無視できないルーチンなら仕様に明記するだろうし
カウンタはD7からとか言ってる奴は仕様が変わってそのルーチンで二重ループになったら呼び出し側を全部修正するつもりなのか?w
- 598 :ナイコンさん:2019/11/30(土) 15:31:04.08 .net
- Aレジスタ以外は保証しないで解決
- 599 :ナイコンさん:2019/11/30(土) 15:43:52.55 .net
- 呼ぶ側が退避するのか、呼ばれる側が退避させるのか、どっちが効率的か。
それは日頃の行いで決まる。
- 600 :ナイコンさん:2019/11/30(土) 15:46:06.76 .net
- 壊れていいかどうかは呼ぶ側しか知らない。
- 601 :ナイコンさん:2019/11/30(土) 15:48:10.79 .net
- Aレジスタだけ保障してどうすんの。
- 602 :ナイコンさん:2019/11/30(土) 16:00:39.03 .net
- Aレジスタは戻り値を入れるから保証する、とかじゃないの?
- 603 :ナイコンさん:2019/11/30(土) 16:19:40.04 .net
- 戻り値なんか入れたら規定違反で>>574に怒られちゃうぞ
- 604 :ナイコンさん:2019/11/30(土) 16:20:40.26 .net
- 速度優先なら呼ぶ側が退避、コードサイズ優先なら呼ばれる側が退避。
よってやはり日頃の行いによってでしか決まらない。
- 605 :ナイコンさん:2019/11/30(土) 16:25:38.52 .net
- >>600
壊すかどうかは呼ばれる側しか知らない
- 606 :ナイコンさん:2019/11/30(土) 16:28:12.75 .net
- >>604
> 速度優先なら呼ぶ側が退避
壊されるかどうかもわからんのにどのレジスタを退避するつもりなんだ?
- 607 :ナイコンさん:2019/11/30(土) 16:28:13.67 .net
- 戻り値を入れるということは破壊されるということだろう
どれだけおかしな事言ってるのか自分でも理解してないのか
- 608 :ナイコンさん:2019/11/30(土) 16:29:21.31 .net
- > 速度優先なら呼ぶ側が退避
いつ割り込まれるかもわからないのに呼ぶ側が退避とは
- 609 :ナイコンさん:2019/11/30(土) 16:29:59.80 .net
- >>607
戻り値が入る事が保証される
- 610 :ナイコンさん:2019/11/30(土) 16:31:16.59 .net
- 何を壊すか公開しないのであれば呼ばれる側が退避しなさい。
- 611 :ナイコンさん:2019/11/30(土) 16:33:28.46 .net
- 割り込み内は裏レジスタ以外使用不可
- 612 :ナイコンさん:2019/11/30(土) 16:46:06.32 .net
- >>596
発声のシーケンス処理と音声のストリーム処理を混同しているようでは。
前者は数十Hz程度の頻度で、10ch程度なら1回の割り込みでレジスタに書き込むデータもせいぜい数十バイトかそこらの軽い処理ですよ
- 613 :ナイコンさん:2019/11/30(土) 17:04:04.87 .net
- 割込み処理は全レジ保障だろ。
DOSのINT 21hのようなファンクションコールは別として。
- 614 :ナイコンさん:2019/11/30(土) 17:13:09.35 .net
- ところが「BGM処理のために」「PUSH/POPでは処理が間に合わないので」Z80の裏レジスタは割り込み処理専用にした実装があるのだと、>>559,577は言う
総レス数 1001
214 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200