資料介紹
描述
如果您想構(gòu)建它但不喜歡完全從頭開始的想法,請查看Chris Davis 的 Altair-Duino 套件,其中包含所有組件、PCB、外殼和預(yù)編程的 Arduino Due!
以下是其他人的一些圖片,他們已經(jīng)建立了這個項目并把它變成了自己的:
- Alan Lowther為他的版本找到了一個漂亮的金屬外殼,并連接了一個 Raspberry Pi 用于輸入/輸出和語音合成。
如果其他人想分享他們的創(chuàng)作,請告訴我,我會在這里發(fā)布。我很想看到人們想出的各種版本!
很長一段時間以來,我一直認(rèn)為擁有一臺 Altair 8800 計算機會很酷。但是工作的老式 Altair 很少見,因此價格昂貴,如果有的話,很容易花費 1500 至 2500 美元。還有其他一些選擇,例如altairclone.com ,但仍然要花費 600 美元,這對我來說太貴了,無法花在一臺雖然非常酷但用途有限的計算機上。值得慶幸的是,Altair Clone 的創(chuàng)建者 Mike Douglas 已向社區(qū)提供了他在創(chuàng)建克隆時尋找并使用的所有舊文檔和軟件。多虧了 Mike 的工作,有大量關(guān)于 Altair 的內(nèi)部工作原理及其最流行的外圍設(shè)備的信息。
在某個時候,我正在查看 Arduino Mega 2560 規(guī)格并開始想知道它是否有足夠的 I/O 引腳來連接 Altair 前面板的 LED 和開關(guān)并編寫我自己的仿真器軟件。原來 Arduino Mega的 I/O 引腳數(shù)量正好合適。所以我只需要制作自己的 Altair 克隆。
使用 Arduino Mega 來驅(qū)動模擬器運行良好且設(shè)置簡單,但模擬運行速度僅為 Altair 的 25% 左右,并且只能提供 6KB 的模擬 RAM(盡管在過去這會很多)。永久存儲容量(用于保存在模擬器中創(chuàng)建的程序/數(shù)據(jù))也受到限制,因為 Mega 的 EEPROM 僅容納 4KB。
Arduino Due 有足夠的內(nèi)存來支持完整的 64KB 模擬 RAM,并且運行速度比 Mega 快得多。此外,Due 可以在運行時將數(shù)據(jù)保存到閃存中。這使得可以使用模擬器本身未使用的 512K 閃存的任何部分進(jìn)行永久存儲。
使用 Due 我現(xiàn)在有一個 Altair 8800 模擬器,它以大約原始速度運行,提供 64K 的模擬 RAM,包括許多 Altair 軟件,并且仍然可以提供 32K 的半永久存儲來加載和保存模擬器中的程序和數(shù)據(jù)。
我對這個項目的目標(biāo)是在使用模擬器時盡可能接近“真實”的 Altair 8800 感覺。這包括讓前面板燈盡可能地反映真實行為。一個標(biāo)準(zhǔn)是應(yīng)該可以玩前面板“Kill-the-Bit”游戲 - 它是:
事證明,模擬對原版來說足夠真實,甚至 Altair 8800音樂演示也能正常工作。請注意,這依賴于 AM 無線電接收 Altair 電路產(chǎn)生的電磁干擾!
過去,Processor Technology 為 Altair 發(fā)布了一個小型擴展板(只有幾個電容器和電阻器),附帶的軟件將 Altair 變成了一個受人尊敬的音樂系統(tǒng)(當(dāng)時)。可以對模擬器進(jìn)行相同的添加(參見文檔),使其能夠播放當(dāng)時為音樂系統(tǒng)創(chuàng)建的曲調(diào)。這是一個例子:
Altair 另一個具有歷史意義的重要擴展是Cromemco Dazzler顯卡。使用軟件或硬件擴展,模擬器還可以模擬該板:
強調(diào)
- 準(zhǔn)確再現(xiàn) Altair 前面板元素的行為。
- 運行速度與原始 Altair 8800 大致相同(使用 Arduino Due 時)或使用 Arduino Mega 時 25% 原始速度。
- 模擬 RAM 大小為 64KB (Due) 或 6K (Mega)
- 包含許多 Altair 程序,可以輕松加載到模擬器中,包括 Pong、Altair 4K BASIC(第一個 Microsoft 產(chǎn)品)、Altair 擴展 BASIC、MITS Programming System II(僅限到期)、Altair Time Sharing BASIC(允許多個用戶同時使用 BASIC)。
- BASIC 和 Assembler 示例程序包含在仿真器軟件中,可以輕松加載到 BASIC/Assembler 中。
- 模擬一個 88-SIO、88-2SIO 和 88-ACR(錄音機接口)板。每個模擬的串行設(shè)備都可以映射到 Arduino 的串行接口。默認(rèn)情況下,最常見的兩個(88-SIO 和 88-2SIO 端口 1)以 115200 波特 8n1 映射到 Arduino 的主串行端口,可以通過 USB 電纜訪問。我建議將串行到藍(lán)牙加密狗連接到 RX/TX 串行引腳。這樣,任何支持藍(lán)牙的設(shè)備都可以作為 Altair 的終端。
- 在 Arduino Due 上,可以同時使用主串行接口 (USB) 和 Serial1 接口(引腳 18/19)。
- 發(fā)送到每個串行設(shè)備(包括 ACR 磁帶)的數(shù)據(jù)可以被捕獲并重放為多達(dá) 256 個文件,這些文件保存在 Arduino 的本地存儲(EEPROM 或閃存)中。
- 磁帶接口支持在擴展 BASIC 中使用 CSAVE/CLOAD 命令(支持是自動的,無需用戶交互)。非常適合開發(fā)您自己的 BASIC 程序!
- 模擬Cromemco Dazzler顯卡(需要一些額外的硬件/軟件,請參見此處)
- 模擬處理器技術(shù) VDM1視頻終端板(需要一些額外的硬件/軟件,請參見此處)
- 模擬多達(dá) 16 個 88-DCDD 磁盤驅(qū)動器(默認(rèn)配置為 4 個)。磁盤驅(qū)動器仿真是可選的,但需要將 SD 卡連接到 Arduino 的 SPI 頭。僅在使用 Arduino Due 時支持。
- 模擬 88-HDSK 硬盤控制器,最多連接 4 個硬盤驅(qū)動器單元(默認(rèn)配置為 1 個),每個單元有 4 個盤片。
- 模擬具有實時時鐘和向量中斷處理功能的 88-RTC-VI 板。這使得運行 Altair Time Sharing Basic 成為可能。
- 可以將 256 字節(jié)的內(nèi)存頁面保存到永久存儲器并加載回內(nèi)存。這提供了一種保存通過前面板開關(guān)輸入的程序的簡單方法。
- 許多設(shè)置可以通過集成的配置編輯器輕松更改。
使用 Due 時,請注意,如果您將新版本的草圖上傳到 Due,模擬器中捕獲或保存的所有內(nèi)容都會被刪除。這是因為保存的數(shù)據(jù)存儲在閃存中,在上傳新草圖時會被擦除(Due 沒有任何用于永久存儲的 EEPROM)。如果 SD 卡連接到 Due,則保存的數(shù)據(jù)將存儲在 SD 卡上。在這種情況下,上傳新草圖時數(shù)據(jù)不會丟失。
文檔
由于模擬器的工作原理與 Altair 8800 完全相同,原始 Altair 文檔(可在 Google 上輕松找到)將提供操作前面板開關(guān)所需的所有信息。
但是,該模擬器確實包含一些額外的功能和 Altair 的內(nèi)置軟件,可通過前面板上的 AUX1/AUX2 開關(guān)訪問(原始 Altair 包含但未使用這些開關(guān))。該功能在我為模擬器開發(fā)軟件時編寫的單獨文檔中進(jìn)行了解釋。該文檔有很多頁,其中包含的信息會使該頁面不堪重負(fù),因此請參閱源存儲庫中的Documentation.pdf文件。
構(gòu)建說明
一個目標(biāo)是使用盡可能少的支持電路。Arduino Mega 和 Due 都有足夠的 I/O 引腳直接連接所有前面板元件。唯一需要的附加電路是驅(qū)動 36 個 LED 的晶體管和電阻器(如果 LED 直接連接到 Aruino 的輸出引腳并且同時打開太多,總電流將超過 Arduino 的限制)。
為這個項目創(chuàng)建完整的原理圖將是乏味的、重復(fù)的(36 個相同的 LED 驅(qū)動器電路、32 個開關(guān)的接線)并且不是很有幫助。因此,原理圖文檔包含有關(guān)哪些元素連接到哪些 Arduino 引腳以及各個子電路(如 LED 驅(qū)動器)的原理圖的詳細(xì)表格。我還添加了一個 Fritzing 文件來顯示條板上 LED 驅(qū)動器組件的布局。
為了制作前面板,我首先對 Altair 的前面板進(jìn)行了高質(zhì)量掃描,然后在復(fù)印店將其打印到卡片紙上。對于背襯(實際將開關(guān)和 LED 固定到位),我使用了一張 22 號金屬片,使用普通電鉆為 LED 和開關(guān)打孔。LED 驅(qū)動器電路焊接在條板上,條板直接焊接到 LED 上,而 LED 又由金屬片固定在適當(dāng)?shù)奈恢谩?/font>
前面板由一個簡單的木箱固定并直立。盒子沒有原來的 Altair 深(因為它只需要固定前面板和 Arduino)。
要連接前面板開/關(guān)開關(guān),我只是在盒子上添加了一個電源插座(與 Arduino 本身相同),將其連接到前面板開關(guān),然后從那里連接到插入 Arduino 的電源插頭。
使用 Arduino Due 時,可以通過將 SD 卡連接到 Due 的 SPI 端口來啟用最多 16 個 88-DCDD 磁盤驅(qū)動器的仿真。原理圖文檔的最后一頁詳細(xì)顯示了所需的接線。
在將草圖上傳到 Arduino Due 之前,請務(wù)必將 Arduino 編譯器的優(yōu)化設(shè)置切換為“性能”。默認(rèn)情況下,它設(shè)置為“大小”(不知道為什么,因為 Due 有 512k 閃存)。為此,請加載文件
c:\Users\[user]\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.9\platform.txt
進(jìn)入文本編輯器并將任何出現(xiàn)的“-Os”更改為“-O3”。您可以跳過此步驟,但模擬器的運行速度會明顯變慢。
模擬器軟件也可以在沒有連接任何前面板控件的情況下在準(zhǔn)系統(tǒng) Arduino(Mega 或 Due)上運行。這確實允許運行很多包含的程序(那些主要使用串行終端而不是前面板元素的程序)。為此,請編輯config.h
源文件并設(shè)置#define STANDALONE 1
(而不是 0)。請參閱文檔中的“調(diào)試功能”部分,了解如何在該設(shè)置中操作虛擬前面板元素。請記住,這不是模擬器的預(yù)期用途。如果您不想構(gòu)建前面板硬件,我建議使用基于 PC 的全軟件仿真器。這config.h
源文件包含許多包含/排除模擬器功能的開關(guān)。默認(rèn)設(shè)置運行良好,但如果您想調(diào)整模擬器,這是開始的地方。
致謝
由于我自己沒有 Altair,我不得不依靠從互聯(lián)網(wǎng)上獲取信息。由 altairclone.com 的 Mike Douglas (deramp5113) 制作的 Altair 8800 教學(xué)視頻非常有幫助,觀看起來非常有趣。除了制作視頻之外,Mike 還收集了大量與 Altair 相關(guān)的硬件和軟件手冊,并在他的網(wǎng)站上提供了這些手冊。
(請注意,Mike 的視頻非常有助于在構(gòu)建模擬器后獲得一些關(guān)于如何使用模擬器的想法)
Martin Eberhard 的 ADEXER 工具對于低級調(diào)試硬盤支持非常寶貴。他還編寫了模擬器使用的兩個引導(dǎo)加載程序:用于引導(dǎo)磁盤和迷你磁盤的組合磁盤引導(dǎo)加載程序 (CDBL) 以及比原來更短、更穩(wěn)定的硬盤引導(dǎo)加載程序 (HDBL)。
雖然我自己編寫了包括 CPU 仿真在內(nèi)的所有代碼,但在高效實現(xiàn)半進(jìn)位計算和 DAA 指令方面,我確實從 i8080 核心模型項目中獲得了一些靈感。
該模擬器包括一些用于 Altair 8800 的原始軟件。另外非常感謝 Mike Douglas,他花費了無數(shù)時間尋找、收集并讓該軟件工作,然后將其全部發(fā)布在他的altairclone.com網(wǎng)站上:
- Altair 4K 基礎(chǔ)版(MITS 1975)
- Altair Extended ROM Basic (MITS 1975)
- Altair 分時基礎(chǔ)(MITS 1977)
- Kill-the-Bit 游戲(Dean McDaniel,1975 年)
- 使用前面板的乒乓球游戲(Mike Douglas)
- “黛西,黛西……”音樂(史蒂夫·多皮爾,1975 年)
- 音樂系統(tǒng)(處理器技術(shù) 1977)
- MITS 編程系統(tǒng) II (MITS 1976)
- Altair Turnkey Monitor (MITS 1977)
- i8080 CPU 診斷(Microcosm Associates,1980)
- i8080 CPU 鍛煉器(Frank D. Cringle 1994,Ian Bartholomew 2009)
磁盤和硬盤映像(包含在源存檔的“disks”子目錄中)也被altairclone.com和deramp.com (Mike Douglas 的個人網(wǎng)站)獲取。其中包括 CP/M、各種版本的磁盤 BASIC、Altair DOS(包括 Fortran)等等。再一次,Mike 完成了一項了不起的工作,找到了所有這些軟件,然后創(chuàng)建了可供 Altair 社區(qū)使用的正常運行的磁盤映像。我只使用了一些軟件,因此您可能想前往altairclone.com或deramp.com并查看更多內(nèi)容。
?
- 生存危機-Arduino角色扮演游戲模擬器
- DIY 8800W Arduino交流調(diào)光器
- Wokwi Arduino模擬器介紹
- SMCE:您的Arduino汽車模擬器
- 用于飛行模擬器的帶Arduino的LCD面板
- 帶有Arduino的糾纏量子比特模擬器
- 通過在線模擬器上的Arduino操作伺服電機
- Arduino模擬器開源分享
- 一個真正的Arduino UNO電子寵物模擬器
- 用Arduino板和LDR單元制作自動存在模擬器
- labview軸心軌跡模擬器軸心軌跡分析 33次下載
- 基于DSP的電磁脈沖模擬器控制系統(tǒng)設(shè)計方案 13次下載
- ADSIM模擬器
- 如何使用MATLAB RTW和Vxworks實現(xiàn)飛行模擬器的實時仿真 6次下載
- 汽車駕駛模擬器新一代實時場景系統(tǒng)的開發(fā)
- DC/DC模擬器的特征和使用方法 381次閱讀
- 使用Netropy廣域網(wǎng)模擬器測試簡化SD-WAN測試 396次閱讀
- 華為eNSP模擬器安裝教程 2717次閱讀
- 華為新版模擬器eNSP Lite 5692次閱讀
- 華為新版模擬器eNSP Lite安裝攻略 6675次閱讀
- 2分鐘快速教你如何在華為模擬器ensp上進(jìn)行抓包? 4068次閱讀
- 如何對PNET 模擬器進(jìn)行初始化安裝 1755次閱讀
- 使用LED作為模擬輸出的汽車警報模擬器電路 1738次閱讀
- HarmonyOS本地模擬器的版本演進(jìn)與使用方法 6019次閱讀
- 基于步進(jìn)電機和單片機的航海羅經(jīng)模擬器方案設(shè)計淺析 1010次閱讀
- 基于QEMU系統(tǒng)模擬器Xilinx/QEMU的運行與調(diào)試 8886次閱讀
- 基于TL431的電動汽車多節(jié)串聯(lián)鋰電池模擬器 7262次閱讀
- 一種基于FPGA嵌入式系統(tǒng)的雷達(dá)信號模擬器的實現(xiàn) 2601次閱讀
- 基于FPGA的飛行模擬器通信接口設(shè)計 2598次閱讀
- 基于TS101的SAR回波信號模擬器設(shè)計 1457次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多