***該專案是一項未完成的正在進行中的工作。目前它存在錯誤,並且尚未測試所有功能!
目前模組設計用於安裝稍作修改的 RC2014 Pro 背板。在下面的文字中,我將解釋該專案的當前狀態、使其運作所需的解決方法以及基本的建置細節。由於該專案的進度狀態,本文檔將刻意簡潔。
此專案使用排針/插座連接子系統(視訊 RAM 子系統和 IO 聲音子系統)內的模組。這需要比平常更長的排針。
這是經過稍微修改的 RC2014 Pro 背板。 CPC Modular 在視訊 RAM 子系統和 IO-聲音子系統中使用 D8 至 D15 線作為本地資料匯流排。所以:
您需要切斷這些路段之間的 D8 至 D15 線。
這是一個稍微修改過的RC2014「Z80 CPU模組」。修改:
板上的電阻器需要更換為不同的值。 2.2k 歐姆應該可以正常工作。
該板包含 512Kb NORFLASH。它包括使快閃記憶體能夠就地燒錄的電路(未經測試)。配置:
需要安裝跳線來橋接 LK4 的接腳 2 和 LK5 的接腳 2。
若要啟用快閃記憶體燒錄,請安裝連結 LK1、LK2 和 LK3。否則保持開啟狀態。
我寫入快閃記憶體的註解(取自原理圖檔案)是:
!無法在標準 CPC 系統上停用記憶體寫入。因此,當 WRITE_EN 處於活動狀態時,我們對 ROM 進行的任何記憶體寫入也將寫入 RAM。
然而,由於 ROM 映射到任何和所有存儲體,這增加了一定程度的靈活性。另請注意,從 ROM 讀取被停用,而寫入被啟用。這意味著當 ROM 處於活動狀態時,我們可以從 ROM「下方」的 RAM 中讀取資料。
我推薦的程式設計過程是使用視訊 RAM 位址寫入 ROM,但是如果該記憶體範圍不包含有意義的數據,則 ROM 可能會使用儲存體 1 (&4000-&7fff) 中的位址寫入。 (如果要寫入的資料已經在此位址範圍內,則程式設計師可以簡單地讀取資料(RAM),然後在同一位址寫入(ROM)。不過,需要小心發送到 ROM 的命令,因為這些命令仍然會丟棄下面的數據)。
讀取要編程位址處的 RAM 位元組。
打開 ROM 的寫入使能
將所需資料寫入 ROM。
關閉 ROM 的寫入啟用
將原始資料寫回ROM。
ROM (NORFLASH) 最多可容納 31 個 ROM 以及韌體 ROM。對晶片進行編程時,韌體需要進入插槽 31(從位址 &7c000 開始)。 BASIC(如果已安裝)需要進入插槽 0(位址 &00000)。 ROM 插槽位於每 &4000 字節,分別為 &00000、&04000、&08000、&0C000、&10000 等。
如果使用 XGPro 軟體燒錄 ROM:
使用 Select IC 選擇正在使用的 IC (SST39FS040)。
點選“載入”工具列按鈕。
選擇要載入的檔案。
文件格式:二進位(對於 .ROM 檔案)
至區域:預設
負載模式:正常
從檔案開始地址:0000
To Buffer Start Addr:ROM 插槽起始位址(&7C000 對於韌體,&00000 對於 BASIC)
載入檔案時清除緩衝區:「預設清除緩衝區」選項將覆蓋任何先前載入的資料!將其用於載入到 XGPro 中的第一個 ROM(這將初始化整個 ROM)。對於所有其他 ROM,選擇「停用」(這將僅將資料載入到選定的插槽中)。
點擊“確定”並驗證您的檔案已載入到正確的地址並且未被覆蓋。
點選 PROG(工具列)
單擊程式。
該板包含閘陣列和視頻輸出。
與 RAM 控制板上的等效接頭上的訊號相比,JP901 上的 DISPEN 和 HSYNC 訊號被交換。這最好固定在 RAM 控制板上(見下文)。
視訊輸出電路來自 CPC464,但不知何故,我使用了 CPC6128 的元件值,但減去了 '6128 上的電容器。這可能不會產生顯著差異。
在我的測試中,我使用與 Amstrads 通常使用的相同 SCART 轉 HDMI 轉接器,但這裡它顯示黑白影像,或者根本沒有影像。這似乎是電纜使用的 PSU 和適配器之間的問題。它可以透過從 CPC 模組化板向電纜饋送 5V 電源來固定。
該板包含 40007 和 40010 閘陣列的封裝(40008 也應該可以使用)。足跡重疊以節省空間。您應該能夠透過分離兩排引腳並移除它們之間的織帶來包含兩者的插座,但是,足跡太靠近,無法輕鬆做到這一點。
DIN 插座底座上的孔有點太小。
該板容納視訊資料匯流排和 CPU 資料匯流排之間的連結,處理訊號以使它們適合 SRAM 記憶體,並容納大於 64k 的記憶體所需的選購元件(未經測試)。
驅動/RAMOE 的電路不正確。要修復它:
剪斷 U192 腳位 1 和 13 之間的走線
剪斷 U192 腳位 11 和 U193 腳位 1 之間的走線
在 U192 腳位 1 和 U195 腳位 9 之間安裝電線
在 U195 腳位 8 和 U193 腳位 1 之間安裝電線
如視訊板所述,DISPEN 和 HSYNC 引腳在板之間的連接器上交換。要解決此問題:
剪斷 J1 腳位 2 和 J2 腳位 2 之間的走線
剪斷 J1 腳位 3 和 J2 腳位 3 之間的走線
在 J1 腳位 2 和 J2 腳位 3 之間安裝電線
在 J1 腳位 3 和 J2 腳位 2 之間安裝電線
要使用 <= 64k RAM 安裝連結 LK5、LK6 和 LK7。如果是這樣,請勿插入 IC118 和 U194
若要使用 > 64k RAM,請保持 LK5、LK6、LK7 開啟並安裝 IC118 和 U194。 IC118 是標準 Amstrad HAL/PAL。
驅動/RAMOE 的正確電路是:
XCPU_AD-----| |-- /XCPU_AD-- AND---/ROMOE OR--- /RAMRD----
文字形式: /ROMOE := XCPU_AD AND (/XCPU_AD OR /RAMRD)
XCPU_AD 可源自 U195 腳位 8。
該板包含 6845 CRTC、位址多工器和 512Kb SRAM。這裡沒有問題,也不需要配置。
如果需要,可以為 CURSOR 和 LPEN 安裝標頭。他們可能不是。
此板包含 8255 PIO 和磁帶介面。安裝焊線和跳線以使 I/O 位址可設定:
該板的設計使得 IO 板可以安裝在它的“上方/前面”,但繼電器太高而不允許這樣做。因此:我建議您將 J902 安裝在板的背面(這是聲音板的連接器)。
在板的背面,找到地址引腳上方的焊點。在每個連結上,您需要將「高」位址焊盤(標記為 A7(原文如此)至 A15)焊接到中央焊盤。 「低」位址焊盤 (A0..A7) 不得連接至中心焊盤。
在板的正面找到位於 U1 和 D302 之間的連結。您需要為標記為 A3 的連結跳接「低」連結(到中心引腳),為其他連結(A2、A4、A5、A6、A7)跳接高連結(到中心引腳)。
找到位於 C315 和 J901 之間的連結。配置哪些訊號被引導至插孔,哪些訊號被引導至背板。推薦的設定是:
在 TO、TI 和 /MO(流帶輸出、流帶輸入和馬達)的 INT(外部)和中間引腳之間安裝連結。
將 /EXP 連結保持開啟。
J901 允許存取各種 8255 輸入訊號。預設情況下,所有這些線都有上拉電阻,可以忽略。
RG0、RG1、RG2 為區域設定。
VHz 是視訊輸出的 50Hz/60Hz 設定。
/EXP 是 /EXP 訊號。
PBSY 是印表機忙訊號。 CPC Modular 不包含並行連接埠。如果需要,該訊號可用於擴展。
J1、J2 和 J3 是磁帶 I/O 插孔。 J3(馬達)應該是 2.5mm 插座,但封裝適用於 3.5mm 插座。
此板包含 AY-3-8910 聲音產生器和相關輸出,以及鍵盤和操縱桿連接器。
如 IO 板所述:您應該將板間連接器 (J902) 安裝在該板的頂部,而不是絲印所示的背面。
該板能夠使用板載振盪器作為 AY 的時脈輸入。在 CPC 模組中:省略 X1 並在 JP3 的 CLK2 端安裝跳線(將板配置為使用透過背板發送的閘陣列時脈訊號)。
J103(音訊輸出插孔)上方的跳線可將各種音訊訊號傳送到各種背板引腳。在大多數情況下,這些可以保持開啟。請注意,某些設定可能與透過 IO 板上的背板路由的磁帶訊號衝突。
如果安裝了音訊插孔,則左訊號和右訊號將不會傳送到背板(如果配置為這樣做 - 請參閱上一項)。但是,音訊 MIX 仍將被發送(如果如此配置)。
CP2是鍵盤連接器。它使用與原始 Amstrad CPC464(PCB 鍵盤)相同的引腳排列。
J102 是操縱桿連接器。這裡的連接器安裝得有點太“內側”,可能會導致下一個插座中的 PCB 短路。
哈爾/帕爾:
原始碼:https://www.cpcwiki.eu/index.php/PAL16L8
在製品替換:https://github.com/Bread80/GreenHAL
在製品更換:https://www.cpcwiki.eu/forum/index.php?msg=231084
門陣列:
基於 WiP FPGA 的替換:https://github.com/codedchip/AMSGateArray
ROM 圖:https://www.cpcwiki.eu/index.php/ROM_List
許可證:CERN-OHL-P
版權所有 © 麥克薩頓,2023
網址:https://bread80.com
社群媒體(乳齒象):https://mstdn.social/@bread80
除了這裡沒有什麼有用的。但如果你已經做到了這一步,你可能會繼續前進。
TX/RX=聲音(左、右) **跳線(可選) USR1=ROMDIS USR2=/ROMEN USR3=VSYNC(視訊到 IO) USR4=
/WAIT=READY(已經準備好了!)CLOCK2=/CPU_ADDR(RAM 板;1MHz 聲音時鐘)RX2=磁帶輸入 **跳線(可選) TX2=磁帶輸出 **跳線(可選) USR5=RAMDIS已移動USR6=/ RAMRD MOVED USR7=馬達 **跳接(選購)
D8-D15=視訊匯流排
D8-D15=IO匯流排???控制訊號???
位置=頂排孔@ 基本RC2014 接頭腳位中心上方45.72mm,最左側接腳= A9 和A8 之間的中點腳位1 向右1 GND 2 HSYNC(輸入) 3 DISPEN(輸入) 4 GND 5 /RAS( 6 /CAS(輸出) 7 /MWE(輸出) 8 /CCLK(輸出) 9 /244EN(輸出) 10 GND
位置 = 頂排孔 @ 延伸接頭接腳中心上方 43.18 毫米,最左邊的接腳 = D2 和 D3 接腳之間的中點,接腳 1 位於左側,所有接地均位於最頂行。 1=GND 2=HSYNC(輸入) 3=DISPEN(輸入) 4=/CCLK(輸出) 5=/XCPU_ADDR(輸出) 6=/RAMCS(輸出) 7=GND 8=/RAMOE(輸出) 9=GND 10 =/RAMWE(輸出) 11=RAMA14(輸出) 12=RAMA15(輸出) 13=RAMA16(輸出) 14=RAMA17(輸出) 15=GND 16=RAMA18(輸出)
1=接地 2=BC1 3=BDIR 4=PC0 5=PC1 6=PC2 7=PC3 8=接地
Amstrad/MX4 腳位排列
GND 聲音 Y A15 Y Y Y A14 Y Y Y A13 Y A12 Y A11 Y Y A10 Y Y A9 Y Y A8 Y Y Y A7 Y Y A6 Y A5 Y A4 Y A3 Y A2 Y A1 Y A0 Y Y
D7 Y Y Y D6 Y Y Y D5 Y Y Y D4 Y Y Y D3 Y Y Y D2 Y Y Y D1 Y Y Y D0 Y Y Y (CRTC) VCC MREQ Y M1 Y Y RFSH IORQ Y Y Y Y RD Y Y Y Y WR Y Y Y Y HALT INT Y NMI BUSRQ B READY是嗎?是嗎?是嗎?是嗎? ROMEN Y ROMDIS Y RAMRD Y Y RAMDIS 遊標 Y LPEN Y EXP Y Y GND CLK4 Y Y
額外(視訊 RAM): RD7..RD0 Y Y Y RAS Y Y CAS Y Y MWE Y Y 244EN Y Y XCPU_AD(?) Y Y RAMCS Y Y RAMOE Y Y RAMWE Y Y RAMA18..RAMA14 Y Y HSYNC Y Y DISPEN Y Y CCLK Y Y(24 行)
額外(視訊 RAM 和 IO 聲音):CPU_ADDR(1MHz) Y Y Y VSYNC Y Y Y(2 行)
額外(IO-聲音):PA7..PA0 Y Y MOTOR Y CASRD Y CASWR Y PRINTBUSY (Y) BC1 Y Y BDIR Y Y PC3..PC0 Y Y LEFT Y RIGHT Y(20 行)
光碟:內部需要約 14 行
視訊/RAM:50 + 24 + 2 = 76 行!全部的。較少的較少:總共 69 條(70 條加上 1 條備用線!)IO/ 聲音:總共 50 + 20 + 2 = 72 條線。較少的較少:總共 50 個(包括幾個備用) 光碟:總共 50 + 14 = 64 行
注意:76 針邊緣連接器:板寬 = 99.06mm
主機板:MX4 部分:CPU ROM 備件 RC2014 邊緣連接器
視訊部分(門陣列):Video RAM RAM Control
視訊部分 (RP2040):視訊訊號 RAM 收發器
光碟部分:控制器連接器/緩衝器
IO 聲音部分:PPI AY 磁帶音訊放大器/混音器