[閒聊] C#寫的8086老電腦模擬器

作者: erspicu (.)   2016-09-16 03:17:45
https://dl.dropboxusercontent.com/u/61164954/project/Apr8086/index.htm
by c#
目前發佈的僅只是概念雛形驗證版本 code也還沒算優化好和整理好(有些寫法日後會改寫)
除了可以show一下demo 跑到BIOS booting check ram階段外(然後就停止掉)
沒其他用處 主要還是因為缺漏了周邊控制io的功能
目前周邊控制io的回傳內容 是藉由fakepc以執行步驟和io回傳值來記錄
so....會看到 io_step.dat這檔案,就是記錄著執行到幾步驟時 io 回傳值
後續看看有沒有動力.耐性和能力去補足這塊 總之還缺很多東西
光cpu只是模擬器其中一部分而已 這booting畫面可以參考底下
https://www.vogons.org/viewtopic.php?f=25&t=45125
https://www.youtube.com/watch?v=M4zOXwYTMrM
http://www.phatcode.net/downloads.php?id=101
總之是很古老的產物就是....
ps.
8086 可以跑 dos win3.0
80286 可以跑到 win3.1 (定址能力提升且開始支援保護模式)
80386 可以跑到 win95 intel第一顆32位元CPU 定址能力再提升,且開始有32bits暫存器
雖然8086已經是古早時代產物 1978年發售 連我都還沒出生....
拿來當最基礎的學習對項還算適合 但這東西比起它的上一代 8008
CPU模擬來又複雜很多了....
最主要是X86複雜的定址法 節區觀念 還有一些prefix指令
一些細節沒注意 到處都是地雷.. 但比較難的 我覺得還是io周邊學習
作者: eva19452002 (^^)   2016-09-16 10:48:00
第一次見到x86模擬器
作者: kagemusha (影武者)   2016-09-16 19:37:00
dosbox很常見啊
作者: rockmanx52 (ゴミ丼 わがんりんにゃれ)   2016-09-17 15:26:00
我說啊 VirtualBox、VMware跟PD都是有名的X86模擬器啊
作者: kagemusha (影武者)   2016-09-17 15:31:00
VirtualBox、VMware不算模擬器....
作者: playerlin (PlayerLin)   2016-09-17 18:22:00
DOSBox官方定調只模擬遊戲需要的功能,應用程式不支援(所以官版不支援Windows系統,只能靠非官方版)雖然還是模擬器,可以跑遊戲和一些DOS程式,但是如果是需要特殊IO控制那種的應用就不行了。
作者: jizang (阿魯米)   2016-09-18 22:18:00
VisualStudio 是哪個版本的?我用2010可編譯但不能執行!
作者: dave01 (札西連琪)   2016-09-19 04:46:00
這晶片其實生命力很強 在單晶片市場仍有相關產品
作者: conpo (獅子たちの旗)   2016-09-19 13:56:00
感謝分享
作者: Jedidiah (哪裡有FFXI的私服程式T_T)   2016-09-19 15:46:00
同為C#人推,不過不同領域就是 XD
作者: jizang (阿魯米)   2016-09-20 00:26:00
XP上面會有問題,Win10(x64)正常~
作者: AllanCat (AllanCat)   2016-09-20 11:25:00
推 另外最近剛好有人打算要開發16bit window emuWin3mu https://goo.gl/gZe5yf 概念還滿有趣的
作者: playerlin (PlayerLin)   2016-09-20 18:54:00
我一直在想何時才有Win16模擬器,跑Win95的遊戲就不需要虛擬機...另外文章看一下,作者應該對真實DOS的興趣應該不大。他的發想只是如果想跑Windows 3(win16)的遊戲程式就得用虛擬機裝32位系統才行,然後想到自己寫一個能跑Win16的模擬器這樣(我相信他可能也覺得有DOSBox了)
作者: jizang (阿魯米)   2016-09-22 00:32:00
Part-II 最有趣的段落應該是講 Debuger 那段了~
作者: playerlin (PlayerLin)   2016-09-27 14:31:00
http://tinyurl.com/zzspvc7 第三篇,講CPU的模擬...debugging CPU bugs看起來很麻煩。 :3

Links booklink

Contact Us: admin [ a t ] ucptt.com