



新EATX機槓裝9把『200風扇』. BNFENIX-3PIN白色『230風扇』,為左装係『200扇位』削去两側. 9扇葉設計,扇速慢得800轉.9把『230風扇』要風扇集線器.
230扇葉大易斷扇軸,冇适合鐵網保謢扇葉.
| PC-FAN 23030 | 數值 |
| 尺碼 | 230*30mm |
| 電壓 | 12V |
| 電流 | 0.18A |
| Materials | PBT |
| Speed(R.P.M.) | 700~900轉/分 |
| 噪聲 | 20(dB-A) |
| 厚 | 25MM |
| 窿徑 | 4MM |

BOOKCARD
電腦




新EATX機槓裝9把『200風扇』. BNFENIX-3PIN白色『230風扇』,為左装係『200扇位』削去两側. 9扇葉設計,扇速慢得800轉.9把『230風扇』要風扇集線器.
230扇葉大易斷扇軸,冇适合鐵網保謢扇葉.
| PC-FAN 23030 | 數值 |
| 尺碼 | 230*30mm |
| 電壓 | 12V |
| 電流 | 0.18A |
| Materials | PBT |
| Speed(R.P.M.) | 700~900轉/分 |
| 噪聲 | 20(dB-A) |
| 厚 | 25MM |
| 窿徑 | 4MM |









X99-EATX愛两正方SOCKET-2011散熱. 唔諗買『熱導管散熱』.學上次咁買两拆機銅散熱,正方『90mm*90mm』, 配两『AVC-9025-12V-0.13A』.風扇底座用3D打印. 尺寸太大ABS容易收縮變形.

舊時『游戲紋理』再用『.bmp格式』, 冇壓缩即使256色盤依然佔用吉間.
『.PNG格式』利LZ77且冇失真壓縮. 且壓縮極高, 配合256色盤,适宜作『游戲紋理』.
| 數據塊 | 數值 |
| PNG圖檔標誌 | 0x89 0x50 0x4E 0x47 0x0D 0x0A 0x1A 0x0A |
| 圖檔頭 | IHDR |
| 调色板 | PLTE |
| 图像数据 | IDAT |
| 图像结束 | IEND |
PNG數據塊基本結构.
| 數據塊結构 | size | 簡介 |
| LENGTH | 整數4字節 | 數據長度 |
| CHUNK TYPE | 整數4字節 | 類型標記 |
| CHUNK DATA | 0~2^32字節 | 數據 |
| CRC32 | 整數4字節 | CRC32校驗 |
两字節肆字節數據,冚辦闌用『網络字節』存儲,需轉『主機字節』.
| 『網络字節』轉『主機字節』 |
| #define PNG_VALUE32(v) ((v & 0xff000000) >> 24 | (v & 0x00ff0000) >> 8 | (v & 0x0000ff00) << 8 | (v & 0x000000ff) << 24) |
| #define PNG_VALUE16(v) ((v & 0xff00) >> 8 | (v & 0x00ff) << 8) |
游戲引擎需讀PNG 伍個數據塊
| PNG數據塊 | 功能簡介 |
| IHDR | 文檔頭 |
| PLTE | 色盤 |
| IDAT | 圖像數值 |
| IEND | 結束 |
| tRNS | 圖像透明 |
| bKGD | 背景色 |
PNG圖檔頭捌字節標記,愛蒞識别PNG
| 0x89 | 0x50 | 0x4E | 0x47 | 0x0D | 0x0A | 0x1A | 0x0A |
| 137 | P | N | G | \r | \n | 26 | \n |
對比PNG標識
| if(memcmp(data, 0x0A1A0A0D474E5089, 8) != 0)
return false;// 非png圖檔 |
CRC32計算必需計『CHUNK TYPE + CHUNK DATA』, 長度『length + 4』而得.
| DWORD length = PNG_VALUE32(chunk->length) + 4; | 長 |
| DWORD64 crc = CRC32((PBYTE)(chunk) + 4,length); | CRC32計算 |
| DWORD64 crc_ = PNG_VALUE32(chunk->crc_); | 轉主機字節 |
| if(crc_ == crc)
return true;
|
比較crc值 |
首先定義PNG結构
| typedef struct PNG_TAG{ | |
| int width; | 圖宽 |
| int height; | 圖高 |
| int bitCount; | 位圖像素bits 8位,16位,24位,32位 |
| PNG_RGBA palette[256]; | 调色板 |
| PBYTE buffer; | 圖像数据 |
| int buffer_size; | 圖像数据長度 |
| int length; | 临時變量 |
| z_stream stream; | ZLIB解壓 |
| } PNG, *PNG_PTR; |
文檔頭結构 IHDR
| typedef struct PNG_IHDR_TAG{ | 文檔頭 IHDR |
| int length; | Data長度 |
| DWORD type; | 標記’IHDR’ |
| DWORD width; | 像素寬 |
| DWORD height; | 像素高 |
| BYTE BitDepth; | 圖像深度 |
| BYTE ColorType; | 顏色類型 |
| BYTE Compression; | LZ77派生演算法 ,壹定係0 |
| BYTE Filter; | 濾波,止值定0. 事實『0,1,2,3,4』伍種濾波 |
| BYTE Interlace; | 隔行掃描0=冇掃描,1=(Adam7 interlace) |
| DWORD CRC32; | CRC32校驗 |
| }PNG_IHDR,*PNG_IHDR_PTR; |
PNG支緩伍款顏色類型
| ColorType | 顏色類型 | 像素 |
| 0=Greyscale | 灰度圖像 | 1,2,4,8,16bit |
| 2=Truecolour | 真彩色圖像 | 8,16bit |
| 3=Indexed-colour | 索引彩色圖像 | 1,2,4,8bit |
| 4=Greyscale with alpha | 帶α通道資料灰度圖像 | 8,16bit |
| 6=Truecolour with alpha | 帶α通道資料真彩色圖像 | 8,16bit |
像素排列
| ColorType | 像素排列 |
| Greyscale | Y |
| Truecolour | RGB |
| Indexed-colour | i |
| Greyscale with alpha | RGBA |
| Truecolour with alpha | YA |
解析文檔頭 IHDR, 分配圖像時分, 每行像素多壹字節,記錄『Filter』濾波值,『0,1,2,3,4』伍種濾波;
| if(IHDR->ColorType == 0)
png->bitCount = IHDR->BitDepth; |
0:Greyscale:灰度圖像,1,2,4,8,16bit |
| if(IHDR->ColorType == 2)
png->bitCount = IHDR->BitDepth * 3; |
2:Truecolour:真彩色圖像,8,16bit |
| if(IHDR->ColorType == 3)
png->bitCount = IHDR->BitDepth; |
3:Indexed-colour:索引彩色圖像,1,2,4,8bit |
| if(IHDR->ColorType == 4)
png->bitCount = IHDR->BitDepth * 2; |
4:Greyscale with alpha:帶α通道資料灰度圖像,8,16bit |
| if(IHDR->ColorType == 6)
png->bitCount = IHDR->BitDepth * 4; |
6:Truecolour with alpha:帶α通道資料真彩色圖像,8,16bit |
| png->width = PNG_VALUE32(IHDR->width); | 像素寬 |
| png->height = PNG_VALUE32(IHDR->height); | 像素高 |
| int byte_count = (float)png->bitCount / 8.0f; | 像素大小 BIT to BYTE |
| png->buffer_size = (png->width * png->height * byte_count) + (png->height * 1); | 圖像数据長度,每行多壹字節 |
| png->buffer = (PBYTE)malloc(png->buffer_size); | 圖像数据 |
定義色盤RGB
| typedef struct PNG_RGB_TYP { | 色盤3字節 |
| BYTE red; | 紅 |
| BYTE green; | 錄 |
| BYTE blue; | 蓝 |
| } PNG_RGB, *PNG_RGB_PTR; |
定義色盤RGBA
| typedef struct PNG_RGBA_TYP { | 色盤4字節 |
| BYTE red; | 紅 |
| BYTE green; | 錄 |
| BYTE blue; | 蓝 |
| BYTE alpha; | 透明混合,透明0x00~實體0xFF |
| } PNG_RGBA, *PNG_RGBA_PTR; |
定義PNG色盤結构 ‘PLTE’
| typedef struct PNG_PLTE_TYP { | |
| int length; | Data長度 |
| DWORD type; | 標記’PLTE’ |
| PNG_RGB palette[256]; | 至多256色盤 |
| DWORD CRC32; | CRC32校驗 |
| } PNG_PLTE, *PNG_PLTE_PTR; |
分析PNG色盤 ‘PLTE’
| int length = PNG_VALUE32(chunk->length); | 長度 |
| int count = length / 3; | 色盤量 |
| for(int index = 0; index < count; ++index){ | |
| png->palette[index].red = PLTE->palette[index].red ; | 紅 |
| png->palette[index].green = PLTE->palette[index].green ; | 錄 |
| png->palette[index].blue = PLTE->palette[index].blue ; | 蓝 |
| png->palette[index].alpha = 0xff; } | 透明0x00~實體0xFF |
定義透明像素結构’tRNS’
| typedef struct PNG_tRNS_TYP{ | |
| int length; | 數據長度 |
| DWORD type; | 標記’tRNS’ |
| union { | |
| WORD grey; | 顏色類型 0 |
| struct {WORD Red,Green,Blue;}; | 顏色類型 2 |
| BYTE palette[256]; | 顏色類型 3 |
| DWORD CRC32; | CRC32校驗 |
| }PNG_tRNS,*PNG_tRNS_PTR; |
分析透明像素
| PNG_tRNS_PTR tRNS; | 透明像素 |
| tRNS->length = PNG_VALUE32(tRNS->length); | 數據長度 |
| if(IHDR->ColorType == 0 )
tRNS->grey = PNG_VALUE16(tRNS->grey); |
0:Greyscale:灰度圖像,1,2,4,8,16bit |
| if(IHDR->ColorType == 2 ) {
tRNS->Red = PNG_VALUE16(tRNS->Red); tRNS->Green = PNG_VALUE16(tRNS->Green); tRNS->Blue = PNG_VALUE16(tRNS->Blue); } |
2:Truecolour:真彩色圖像,8,16bit |
| if(IHDR->ColorType == 3) {
length = tRNS->length; for(int i = 0; i < length; ++i) { index = tRNS->palette[i]; png->palette[index].alpha = 0x00; } |
3:Indexed-colour:索引彩色圖像,1,2,4,8bit
透明0x00~實體0xFF |
定義背景色結构 ‘bKGD’
| typedef struct PNG_bKGD_TYP{ | |
| int length; | Data長度 |
| DWORD type; | 標記’bKGD’ |
| union { | |
| WORD Greyscale; | 顏色類型0 and 4灰度 |
| struct{WORD Red,Green,Blue;}; | 顏色類型2 and 6 -RGB三色 |
| BYTE Palette_Index;}; | 顏色類型3色盤索引 |
| DWORD CRC32; | CRC32校驗 |
| }PNG_bKGD,*PNG_bKGD_PTR; |
分析背景色’bKGD’
| int length = PNG_VALUE32(bKGD->length); | 長度 |
| if(IHDR->ColorType == 0 || IHDR->ColorType == 4)
bKGD->Greyscale = PNG_VALUE16(bKGD->Greyscale); |
灰度圖像 – 帶α通道資料灰度圖像 |
| if(IHDR->ColorType == 2 || IHDR->ColorType == 6) {
bKGD->Red = PNG_VALUE16(bKGD->Red); bKGD->Green = PNG_VALUE16(bKGD->Green); bKGD->Blue = PNG_VALUE16(bKGD->Blue); } |
真彩色圖像 – 帶α通道資料真彩色圖像 |
| if(IHDR->ColorType == 3)
bKGD->Palette_Index = bKGD->Palette_Index; |
索引彩色圖像 |
定義圖像數值結构 ‘IDAT’, 止數據塊可能有多個.
| typedef struct PNG_IDAT_TYP { | |
| int length; | Data長度 |
| DWORD type; | 標記’PLTE’ |
| BYTE data[1]; | 經壓縮圖像數據 |
| DWORD CRC32; | CRC32校驗 |
| } PNG_IDAT, *PNG_IDAT_PTR; |
每行像素多壹字節,記錄『Filter』濾波值,『0,1,2,3,4』伍種濾波;
| int length = PNG_VALUE32(IDAT->length); | 長度 |
| int size = png->buffer_size – png->length; | 剩余記憶體 |
| Uncompress_Data_gZip(png->buffer + png->length, &size,
IDAT->data,length, &png->stream); |
解压 |
| png->length = png->length + size; | 累積積數據長度 |
結束 IEND,檢測到’IEND’數據塊,己到文檔未端.
| typedef struct PNG_IEND_TAG{ | |
| int length; | Data長度0 |
| DWORD type; | 標記’IEND’ |
| DWORD CRC32; | CRC32校驗 |
| }PNG_IEND, *PNG_IEND_PTR; |
以顏色類型分別進行『反濾波』, 係每行像素首字節『濾波』值,有『0,1,2,3,4』伍款濾波, 以每粒像素單獨『復位』,帶α通道真彩色圖像8bit為例.
以cbax像素排列支缓伍款濾波
| c | b |
| a | x |
濾波算法
| filter濾波 | 濾波 | 復位 |
| 0= None | Filt(x) = Orig(x) | Recon(x) = Filt(x) |
| 1= Sub | Filt(x) = Orig(x) – Orig(a) | Recon(x) = Filt(x) + Recon(a) |
| 2= Up | Filt(x) = Orig(x) – Orig(b) | Recon(x) = Filt(x) + Recon(b) |
| 3= Average | Filt(x) = Orig(x) – floor((Orig(a) + Orig(b)) / 2) | Recon(x) = Filt(x) + floor((Recon(a) + Recon(b)) / 2) |
| 4= Paeth | Filt(x) = Orig(x) – PaethPredictor(Orig(a), Orig(b), Orig(c)) | Recon(x) = Filt(x) + PaethPredictor(Recon(a), Recon(b), Recon(c)) |
復位算法
| int byte_count = 4; | 每粒像素4字節 |
| int pixel_size = png->width * png->height; | 總像素量 |
| int buffer_size = png->width * png->height * byte_count; | 總字節量 |
| PBYTE buffer = (PBYTE)malloc(buffer_size); | 反濾波影像數據 |
| int col_size_recon = (png->width * 4) ; | 復位後每行字節量 |
| int col_size_filt = (png->width * 4) + 1; | 濾波後每行字節量 |
| for(int j = 0; j < png->height ; ++j) | 每行像素 |
| int filter = png->buffer[col_size_filt * j]; | 行首濾波=1 byte |
處理filter濾波0= None
| if(filter == 0) { | None |
| for(int i = 0; i < png->width; ++i){ | 逐像素復位 |
| Red = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 0]; | x像素紅色 |
| Green = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 1]; | x像素藍色 |
| Blue = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 2]; | x像素錄色 |
| Alpha = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 3]; | x像素透明 |
| buffer[(col_size_recon * j) + (i * 4) + 0] = Red; | 復位像素紅色 |
| buffer[(col_size_recon * j) + (i * 4) + 1] = Green; | 復位像素藍色 |
| buffer[(col_size_recon * j) + (i * 4) + 2] = Blue; | 復位像素綠色 |
| buffer[(col_size_recon * j) + (i * 4) + 3] = Alpha; }} | 復位像素透明 |
處理filter濾波1 =Sub
| if(filter == 1) { | Sub |
| for(int i = 0; i < png->width; ++i){ | 逐像素復位 |
| Red = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 0]; | x像素紅色 |
| Green = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 1]; | x像素藍色 |
| Blue = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 2]; | x像素錄色 |
| Alpha = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 3]; | x像素透明 |
| aRed = aGreen = aBlue = aAlpha = 0; | 清零 |
| if(i > 0) { | |
| aRed = buffer[(col_size_recon * j) + ((i-1) * 4) + 0]; | a像素紅色 |
| aGreen = buffer[(col_size_recon * j) + ((i-1) * 4) + 1]; | a像素藍色 |
| aBlue = buffer[(col_size_recon * j) + ((i-1) * 4) + 2]; | a像素綠色 |
| aAlpha = buffer[(col_size_recon * j) + ((i-1) * 4) + 3]; } | a像素透明 |
| buffer[(col_size_recon * j) + (i * 4) + 0] = Red + aRed; | 復位像素紅色 |
| buffer[(col_size_recon * j) + (i * 4) + 1] = Green + aGreen; | 復位像素藍色 |
| buffer[(col_size_recon * j) + (i * 4) + 2] = Blue + aBlue; | 復位像素綠色 |
| buffer[(col_size_recon * j) + (i * 4) + 3] = Alpha + aAlpha; }} | 復位像素透明 |
處理filter濾波2 =Up
| if(filter == 2){ | Up |
| for( i = 0; i < png->width; ++i){ | 逐像素復位 |
| Red = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 0]; | x像素紅色 |
| Green = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 1]; | x像素藍色 |
| Blue = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 2]; | x像素錄色 |
| Alpha = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 3]; | x像素透明 |
| bRed = bGreen = bBlue = bAlpha = 0; | 清零 |
| if(j > 0) { | |
| bRed = buffer[(col_size_recon * (j-1)) + (i * 4) + 0]; | b像素紅色 |
| bGreen = buffer[(col_size_recon * (j-1)) + (i * 4) + 1]; | b像素藍色 |
| bBlue = buffer[(col_size_recon * (j-1)) + (i * 4) + 2]; | b像素綠色 |
| bAlpha = buffer[(col_size_recon * (j-1)) + (i * 4) + 3];} | b像素透明 |
| buffer[(col_size_recon * j) + (i * 4) + 0] = Red + bRed; | 復位像素紅色 |
| buffer[(col_size_recon * j) + (i * 4) + 1] = Green + bGreen; | 復位像素藍色 |
| buffer[(col_size_recon * j) + (i * 4) + 2] = Blue + bBlue; | 復位像素綠色 |
| buffer[(col_size_recon * j) + (i * 4) + 3] = Alpha + bAlpha; }} | 復位像素透明 |
處理filter濾波3 = Average
| if(filter == 3) { | Average |
| for( i = 0; i < png->width; ++i){ | 逐像素復位 |
| Red = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 0]; | x像素紅色 |
| Green = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 1]; | x像素藍色 |
| Blue = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 2]; | x像素錄色 |
| Alpha = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 3]; | x像素透明 |
| aRed = aGreen = aBlue = aAlpha = 0; | 清零 |
| bRed = bGreen = bBlue = bAlpha = 0; | 清零 |
| if(i > 0) { | |
| aRed = buffer[(col_size_recon * j) + ((i-1) * 4) + 0]; | a像素紅色 |
| aGreen = buffer[(col_size_recon * j) + ((i-1) * 4) + 1]; | a像素藍色 |
| aBlue = buffer[(col_size_recon * j) + ((i-1) * 4) + 2]; | a像素綠色 |
| aAlpha = buffer[(col_size_recon * j) + ((i-1) * 4) + 3]; } | a像素透明 |
| if(j > 0) { | |
| bRed = buffer[(col_size_recon * (j-1)) + (i * 4) + 0]; | b像素紅色 |
| bGreen = buffer[(col_size_recon * (j-1)) + (i * 4) + 1]; | b像素藍色 |
| bBlue = buffer[(col_size_recon * (j-1)) + (i * 4) + 2]; | b像素綠色 |
| bAlpha = buffer[(col_size_recon * (j-1)) + (i * 4) + 3];} | b像素透明 |
| buffer[(col_size_recon * j) + (i * 4) + 0] = Red + ((aRed+bRed)/2); | 復位像素紅色 |
| buffer[(col_size_recon * j) + (i * 4) + 1] = Green + ((aGreen+bGreen)/2); | 復位像素藍色 |
| buffer[(col_size_recon * j) + (i * 4) + 2] = Blue + ((aBlue+bBlue)/2); | 復位像素綠色 |
| buffer[(col_size_recon * j) + (i * 4) + 3] = Alpha + ((aAlpha+bAlpha)/2); }} | 復位像素透明 |
Paeth預測函式
| BYTE PaethPredictor_PNG(BYTE a,BYTE b,BYTE c){ | 預測函式 |
| int p; | |
| int pa,pb,pc; | |
| p = a + b – c; | |
| pa = abs(p – a); | |
| pb = abs(p – b); | |
| pc = abs(p – c); | |
| if (pa <= pb && pa <= pc ) return a; | |
| else if (pb <= pc ) return b; | |
| else return c;} |
處理filter濾波4 =Paeth預測
| if(filter == 3) { | Average |
| for( i = 0; i < png->width; ++i){ | 逐像素復位 |
| Red = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 0]; | x像素紅色 |
| Green = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 1]; | x像素藍色 |
| Blue = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 2]; | x像素錄色 |
| Alpha = png->buffer[(col_size_filt * j) + 1 + (i * 4) + 3]; | x像素透明 |
| aRed = aGreen = aBlue = aAlpha = 0; | 清零 |
| bRed = bGreen = bBlue = bAlpha = 0; | 清零 |
| cRed = cGreen = cBlue = cAlpha = 0; | 清零 |
| if(i > 0) { | |
| aRed = buffer[(col_size_recon * j) + ((i-1) * 4) + 0]; | a像素紅色 |
| aGreen = buffer[(col_size_recon * j) + ((i-1) * 4) + 1]; | a像素藍色 |
| aBlue = buffer[(col_size_recon * j) + ((i-1) * 4) + 2]; | a像素綠色 |
| aAlpha = buffer[(col_size_recon * j) + ((i-1) * 4) + 3]; } | a像素透明 |
| if(j > 0) { | |
| bRed = buffer[(col_size_recon * (j-1)) + (i * 4) + 0]; | b像素紅色 |
| bGreen = buffer[(col_size_recon * (j-1)) + (i * 4) + 1]; | b像素藍色 |
| bBlue = buffer[(col_size_recon * (j-1)) + (i * 4) + 2]; | b像素綠色 |
| bAlpha = buffer[(col_size_recon * (j-1)) + (i * 4) + 3];} | b像素透明 |
| if(i > 0 && j > 0) { | |
| cRed = buffer[(col_size_recon * (j-1)) + ((i-1) * 4) + 0]; | c像素紅色 |
| cGreen = buffer[(col_size_recon * (j-1)) + ((i-1) * 4) + 1]; | c像素藍色 |
| cBlue = buffer[(col_size_recon * (j-1)) + ((i-1) * 4) + 2]; | c像素綠色 |
| cAlpha = buffer[(col_size_recon * (j-1)) + ((i-1) * 4) + 3];} | c像素透明 |
| buffer[(col_size_recon * j) + (i * 4) + 0] = Red + PaethPredictor_PNG(aRed,bRed,cRed); | 復位像素紅色 |
| buffer[(col_size_recon * j) + (i * 4) + 1] = Green + PaethPredictor_PNG(aGreen,bGreen,cGreen); | 復位像素藍色 |
| buffer[(col_size_recon * j) + (i * 4) + 2] = Blue + PaethPredictor_PNG(aBlue,bBlue,cBlue); | 復位像素綠色 |
| buffer[(col_size_recon * j) + (i * 4) + 3] = Alpha + PaethPredictor_PNG(aAlpha,bAlpha,cAlpha);}} | 復位像素透明 |
释放圖像
| free(png->buffer); | 释放 |
| png->buffer = buffer; | 替换復位圖像 |
| png->bitCount = 32; | rgba |
| png->buffer_size = buffer_size; |

『Adobe』同『Google』合作,制作『日月韓漢』矢量字庫,目前支缓65535『日月韓漢』字.以字量蒞睇依然有大量異體字未收納.
1. 官網下載『源界明朝』字庫,
2. 解壓
3. 將『SuperOTC\SourceHanSerif.ttc』复制到『C:\Windows\Fonts』
|
https://github.com/adobe-fonts/source-han-serif/archive/1.001R.zip |
|
https://typekit.com/fonts/source-han-sans-traditional-chinese |


换『臺達FLEX-500W火牛』後,『X99i』唔識認『TOSHIBA XG3 1TB』同『Seagate XM1440 960Gb』仲試過藍屏死機.
睇蒞都係要買翻『益衡FLEX-600W』, 貴係貴D, 勝在稳定唔死機.

visual_studio_ZLIB
Visual Studio-ZLIB壓縮同解壓
『ZLIB』開源『壓縮』同『解壓』程式庫, 支持『DEFLATE』冇損壓縮演算法,佢混合『LZ77演算法』同『霍夫曼編碼』.
『DEFLATE』壓縮演算法冇專利權.畀人大量應用係『網絡』『圖檔』『文檔』『影片』.
| .PNG/ Libpng | 圖檔解壓 |
| .ZIP | 壓縮檔 |
| .tar | 壓縮檔 |
| .gz | 壓縮檔 |
| HTTP | 壓縮傅送 |
| FFmpeg | 影片解壓 |
下載『ZLIB』
| http://www.zlib.net/ |
| http://www.zlib.net/zlib-1.2.13.tar.gz |
『Android studio』內置『ZLIB』, 唔使下載.但要係『CMakeLists.txt』增添『zlib』庫.
| CMakeLists.txt文檔 | |
| find_library( z-lib z ) | 搜索zlib |
| target_link_libraries( ${z-lib} ) | 連接zlib |
包含『ZLIB』頭文檔
| #include <zlib.h> | Zlib-api |
| #include <zconf.h> |
『z_stream』壓縮同解壓皆需此結構體
| z_stream stream; | zlib流結構體 |
| stream.zalloc = Z_NULL; | NULL用默認記憶體分配函數 |
| stream.zfree = Z_NULL; | NULL用默認記憶體釋放函數 |
| stream.opaque = Z_NULL; | |
| stream.next_in = (Bytef*)sour; | 蒞源 |
| stream.avail_in = (uInt)sour_length; | 蒞源長 |
| stream.next_out = dest; | 輸出 |
| stream.avail_out = (uInt)*dest_length; | 輸出長 |
『ZLIB』壓縮分三步
| 壓縮 | |
| deflateInit(&stream, level) | 分配記憶體,level壓縮等級 |
| deflate(&stream, flush); | 壓縮數據, flush設0 |
| deflateEnd(&stream); | 釋放記憶體 |
| int deflateInit2( | deflateInit()加強版 |
| z_streamp strm, | zlib流結構體 |
| int level, | level壓縮等級0~9.
0:速度快,唔壓縮. 9:速度慢,壓縮率高. |
| int method, | 壓縮演算法僅支緩Z_DEFLATED |
| int windowBits, | 處理RAW DEFLATE手法. |
| int memLevel, | 指定記憶體分配MAX_MEM_LEVEL |
| int strategy)); | 壓縮策略,僅影響壓縮比.默認Z_DEFAULT_STRATEGY |
| level | 壓縮等級 |
| #define Z_NO_COMPRESSION 0 | 唔壓縮 |
| #define Z_BEST_SPEED 1 | 高速,低壓縮率 |
| #define Z_BEST_COMPRESSION 9 | 高壓縮率, 慢速 |
| #define Z_DEFAULT_COMPRESSION (-1) | 默認壓縮 |
| windowBits | 處理RAW DEFLATE手法. |
| 8~15: | 純deflate壓縮 |
| -8~-15: | zlib頭 + deflate + zlib尾 |
| > 16: | Gzip頭+ deflate + Gzip尾 |
| method | 壓縮演算法 |
| #define Z_DEFLATED 8 | DEFLATE冇損壓縮 |
| memLevel | 記憶體分配 |
| MemLevel=1 | 最小記憶體,速度慢壓縮比低 |
| MemLevel=9
#define MAX_MEM_LEVEL 9 |
最大記憶體,最佳速度 |
| MemLevel=8 | 默認值 |
| strategy | 壓縮演算法設定 |
| #define Z_FILTERED 1 | 僅FILTERED生成數據 |
| #define Z_HUFFMAN_ONLY 2 | 僅霍夫曼編碼 |
| #define Z_RLE 3 | 匹配長度=1 |
| #define Z_FIXED 4 | 禁霍夫曼編碼 |
| #define Z_DEFAULT_STRATEGY 0 | 默認壓縮設定 |
| int deflate(z_stream *strm, int flush); | 壓縮/解壓 |
| strm: | z_stream 結構 |
| flush: | 操作標誌 |
| 返回值 |
| flush | 操作標誌 |
| Z_NO_FLUSH: | 標准壓縮操作 |
| Z_SYNC_FLUSH: | 同步刷新操作 |
| Z_FULL_FLUSH: | 完全刷新操作 |
| Z_FINISH: | 結束操作, 壓縮完成後返回 |
| deflate()返回值 | |
| Z_OK: | 壓縮操作成功 |
| Z_STREAM_END: | 輸入資料釋數壓縮, 壓縮器處於結束狀態 |
| Z_BUF_ERROR: | 緩衝吾够 |
| Z_STREAM_ERROR: | 內部錯誤 |
『ZLIB』解壓分三步
| 解壓 | |
| inflateInit(&stream) | 分配記憶體 |
| inflate(&stream, Z_NO_FLUSH); | 解壓數據 |
| inflateEnd(stream); | 釋放記憶體 |
| 返回碼 | |
| #define Z_OK 0 | 壓縮操作成功 |
| #define Z_STREAM_END 1 | 輸入資料已經被完全壓縮,並且壓縮器處於結束狀態。 |
| #define Z_NEED_DICT 2 | 愛密碼 |
| #define Z_ERRNO (-1) | |
| #define Z_STREAM_ERROR (-2) | |
| #define Z_DATA_ERROR (-3) | 加密數據損壞壞,或缺失. |
| #define Z_MEM_ERROR (-4) | 唔夠記憶體 |
| #define Z_BUF_ERROR (-5) | 唔夠緩存 |
| #define Z_VERSION_ERROR (-6) |
解壓示例
int Uncompress_Data_gZip(PBYTE dest,int * dest_length,PBYTE sour,int sour_length)
{
z_stream stream;
int ret;
stream.zalloc = (alloc_func)0;
stream.zfree = (free_func)0;
stream.opaque = (voidpf)0;
stream.next_in = (Bytef*)sour;
stream.avail_in = (uInt)sour_length;
stream.next_out = dest;
stream.avail_out = (uInt)*dest_length;
MAX_MEM_LEVEL
ret = inflateInit2(&stream, 16+MAX_WBITS);
if (ret != Z_OK)
return ret;
ret = inflate(&stream, Z_NO_FLUSH);// 解壓
*dest_length = stream.total_out;
inflateEnd(&stream);
return ret;
}
壓縮示例
bool Compress_Data_gZip(PBYTE dest,int * dest_length,PBYTE sour,int sour_length, int level)
{
int ret;
int flush;
//int sour_offset,dest_offset;
//int have;
z_stream stream;
//BYTE in[ZIP_CHUNK];
//BYTE out[ZIP_CHUNK];
stream.zalloc = Z_NULL;// 記憶體分配函數
stream.zfree = Z_NULL;// 記憶體釋放函數
stream.opaque = Z_NULL;
stream.next_in = (Bytef*)sour; // 輸入
stream.avail_in = (uInt)sour_length;
stream.next_out = dest;//輸出
stream.avail_out = (uInt)*dest_length;
ret = deflateInit(&stream, level);// 内存分配
if (ret != Z_OK)
return false;
flush = Z_FINISH;
//flush = Z_NO_FLUSH;// 允許壓縮演算法決定累積多少資料再產生輸出,以達到壓縮效率最高.
while (ret == Z_OK) {
ret = deflate(&stream, flush); // 進行壓縮
if (ret == Z_STREAM_END)
break;
else
if (ret == Z_BUF_ERROR)//緩衝吾够
break;
else
if (ret == Z_STREAM_ERROR)// 內部錯誤
break;
}
*dest_length = stream.total_out;
deflateEnd(&stream);// 釋放記憶體
return Z_OK;
}




『Gigabyte-X570 AORUS MASTER』成日間歇藍屏重啟.耳聞『EVGA 1000 G2』火牛質量嘛嘛,唯有試换火牛,睇中古台達『火牛GM1300』.冚模块設計.
買翻蒞壹直冇装機.

『CRC32』同『MD5』『SHA1』壹樣,計『貳进制』數值『指紋』,佢速度快,HASH校验值肆字節.两DWORD值相等比較. 适宜網络數據傳輸, 校驗數據係咪完璧.
DWORD CRC32_Table[256] = {
0x00000000, 0x77073096, 0xee0e612c, 0x990951ba,
0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3,
0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988,
0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91,
0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de,
0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7,
0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec,
0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5,
0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172,
0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b,
0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940,
0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59,
0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116,
0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f,
0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924,
0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d,
0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a,
0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433,
0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818,
0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01,
0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e,
0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457,
0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c,
0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65,
0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2,
0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb,
0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0,
0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9,
0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086,
0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f,
0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4,
0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad,
0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a,
0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683,
0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8,
0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1,
0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe,
0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7,
0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc,
0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5,
0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252,
0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b,
0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60,
0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79,
0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236,
0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f,
0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04,
0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d,
0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a,
0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713,
0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38,
0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21,
0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e,
0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777,
0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c,
0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45,
0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2,
0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db,
0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0,
0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9,
0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6,
0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf,
0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94,
0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d,
};
DWORD CRC32(PBYTE buf, int len){
int i;
DWORD crc;
crc = 0xffffffffL;
for (i = 0; i < len; ++i )
crc = CRC32_Table[(crc ^ buf[i]) & 0xff] ^ (crc >> 8);
crc = crc ^ 0xffffffffL;
return crc;
}




『TOSHIBA XG3 1TB』冇拉拉唔識認,後蒞『Seagate XM1440 960Gb』都唔識認.睇蒞係中古『臺達FLEX-500』造工嘛嘛.
上次買『Seagate XM1440 960Gb』係22110規格.『x99-itx』係2280規格且係主板背面.
『M.2槽2280轉22110』.卡高啱啱好利用機箱托板散热,『XM1440』維持係50℃,基本冇跌速.


『Android studio』內置架餐『Image Asset』. 畀幅圖檔佢,『Image Asset』帮你自動生成各式圖檔.
揀『Launcher Icons(Legacy only)』冚辦闌圖檔背景透明.
『Android 8.0』及以上,程式圖檔强制背景色,揀『Launcher Icons(Adaptive and Legacy)』.
| Android 8.0及以上 | 圖檔背景白色 | Launcher Icons(Adaptive and Legacy) |
| Android 7.1及以下 | 圖檔背景透明 | Launcher Icons(Legacy only) |
| Configure Image Asset | Android 8.0(API 26) 及以上 |
| Icon type | Launcher Icons(Adaptive and Legacy) |
| Name | ic_launcher |
| Layer name | ic_launcher_foreground |
| Asset type | Image |
| path | 『.png』背景透明圖檔 |
| Trim | 修剪勾yes |
| Resize | 100% |
| Asset type | 勾Color |
| Color | 0xFFFFFF |
| Configure Image Asset | Android 7.1以下 |
| Icon type | Launcher Icons(Legacy only) |
| Name | ic_launcher |
| Asset type | 勾Image |
| Path | 『.png』背景透明圖檔 |
| Trim | 修剪勾yes |
| Padding | 0% |
| Background | 背景0xFFFFFF |
| Scaling | Crop/ Shrink to fit自适应宽度 |
| Shape | 揀None |
| Effect | 勾None |
| 資料夾 | Size(px) |
| mipmap-xxxhdpi | 192*192 |
| mipmap-xxhdpi | 144*144 |
| mipmap-xhdpi | 96*96 |
| mipmap-hdpi | 72*72 |
| mipmap-mdpi | 48*48 |

Android Studio係右下角彈出警示,『Cannot load settings from file』冇法載入『misc.xml』,事實係文檔損毁.內容大致如下.粘貼後諸存.
| 『misc.xml』文檔 |
| <?xml version=”1.0″ encoding=”UTF-8″?>
<project version=”4″> <component name=”ProjectRootManager” version=”2″ languageLevel=”JDK_17″ default=”true” project-jdk-name=”Android Studio default JDK” project-jdk-type=”JavaSDK”> <output url=”file://$PROJECT_DIR$/build/classes” /> </component> <component name=”ProjectType”> <option name=”id” value=”Android” /> </component> </project> |
| Load settings |
| Cannot load settings from file |
| “D:\ANDROID\GeomanticCompass\.idea\misc.xml”;illegal character(NULL,Unicode 0) encountered: not valid in any content at[row,col{unknown-source}]:[1,2] Please correct the file content |










臺『SAMSUNG E2220W』22寸16比10,2012年2月出厰,玩左拾幾年,咁『』玩, 點知白撞兩贊壞人,右下角出現黑斑.
諗住買『DELL U3025E』30寸16比10貴得滯.『DELL P2423』22寸16比10特價.冇內置喇叭,冇『HDMI/DisplayPort』音頻輸出口,要插DELL-USB音箱. IPS屏『画面鮮豔』比『SAMSUNG E2220W』清𥇦.
『NVIDIA Quadro K1200』得肆『DisplayPort』口. 買『miniDisplayPort轉DisplayPort線』線徑4.5mm.两頭冇磁環, 5mm卡扣磁環窿扣唔實.改為7mm卡扣磁環. 用『NVIDIA控制面板』,解析度『1920*1200』自訂頻率『75Hz』.
| 1. 『NVIDIA控制面板』
2. 撳『顯示』->『變更解析度』 3. 撳『自訂』 4. 撳『建立自訂解析度』 |





之前臺『Gigabyte-X570 AORUS MASTER』壹直未能投入使用, 决定啟用『x99 ITX-server』配『INTEL XEON E5-1630V4』. 『MSI GT710-1GB』連玩PHOTOSHOP都慢
『NVIDIA Quadro K1200』4GB顯存,配肆個『mini-display』, 配轉HDMI儀.用『GPU-Z』測比『RX550』慢.



『XEON E5-2630LV3』最高功耗140瓦,『QUADRO K6000』最高功耗45瓦,未計WIFI同磁盤,接近200瓦功耗.『mineNAS-ITX機箱』送『同漢250瓦火牛』,冇主板8pin線,要靠4pin轉8pin線,長期高功率輸出,火牛頂唔順.
『益衡FLEX-600瓦』太貴,買『臺達FLEX-500瓦』係其肆份壹.原配主板8pin線,同PCIE-8PIN線.
换火牛後著機唔識認『TOSHIBA XG3 1TB』同『Seagate XM1440 960Gb』,試過藍屏死機.反而『同漢250瓦火牛』係未試過藍屏死機.






冇啦啦换『Gigabyte-X570 AORUS MASTER』换左硬碟.唔著機『DEBUG』燈『00』.壹係CPU,唔係就火牛.
拆『AVC大霜塔』連CPU掹埋出蒞.重新插反粒U著機.睇蒞係『SOCKET AM4』夹唔死粒CPU.硅脂固化後『大霜塔』自重令CPU鬆脫.
『AM4防脫定位支架』壓死粒U, 即使硅脂黐死『大霜塔』都唔會連根撥起.兼容『AVC大霜塔』.







MLC時代過去,TLC粒, 三年保養, 每日全盤寫入壹次.『SAMSUNG-990 PRO 2TB』特價,標稱謮寫均超柒千兆.驚高熱而跌速,主板自帶散熱装甲熱過辣雞.特登買風扇散熱,高温達『50℃』,實測『讀6584MB』『寫6301MB』.
| SSD | 讀 | 寫 |
| 990 PRO 2TB | 6584 MB/S | 6301 MB/S |








買『Ryzen5-5600X』用左『RYZEN-1500X』『幽靈散熱』,超頻驚唔力够鎮唔住, 『幽靈散熱』其實畀AVC代工.
『AVC-12CM大霜塔-叁風扇』價最低,附送『AM4/x99 socket』扣.叁風扇吹同壹方向形成風道,12CM風扇容易撞爛扇葉,0.23A低電流版,降低風速風嘈.
装龬罩保護扇葉.定位固定碼調開埋,拎鬆羅𢇁調開埋.
『Ryzen5-5600X』默認頻率3.7GHz控制係38℃, 壹舉超4.6GHz控制係58℃
| Ryzen5-5600X | 摄氏 |
| 3.7GHz | 38℃ |
| 4.6GHz | 58℃ |
| AVC |
| MODEL DS12025R12UP024 |
| DC 12V – 0.23A |
| HYDRAULIC BEARING |
| A7224DC |











之前Win11更新後頻䌓死機,將條『TOSHIBA XG3-1TB』擺係『x99i』装Win10,時過景遷,諗過買『Micron 7450PRO-960GB』TLC SSD『讀6800MB/S』『寫5600MB/S』略貴.
睇『Seagate XM1440-960Gb』MLC MMD『讀2500MB/S』『寫900MB/S』, 實測『讀2162』『寫576』略慢,買两條組raid1沉餘陣列,叠加讀速.
『Gigabyte X570 AORUS MASTER』支持RAIDXpert2,AMD公司開發RAID技術,廿年前用两块『Western Digital-1TB』組RAID0,壹過保養即神,今次用两條XM1440組raid1因高熱而跌速,得『2280-m.2散熱』搭『2006蝸輪風扇』依然上70℃.
| 讀MB/S | 寫MB/S | |
| RAID0 | ||
| RAID1 | 1420.0 | 584.5 |
| MVME | 2162.83 | 576.39 |
用RAIDXpert2組raid1分伍步,要壹氣呵成.
| 1. 装m.2-SSD |
| 2. 設置sata模式 |
| 3. 設置raid模式 |
| 4. 将win11時載入AMD RAID-9.3.0.158驅動. |
| 5. 重构磁盤陣列. |
装m.2-SSD
| 1. 斷電 |
| 2. 插入两條『Seagate XM1440-960Gb』 |
設置sata模式
| 1. 撳『DELETE鍵』登入BIOS. |
| 2. 撳『Settings』->『IO Ports』->『SATA Configuration』 |
| 3. 『SATA Mode』設為『RAID』 |
| 4. 『NVMe RAID Mode』設為『Enabled』 |
| 5. 撳『Boot』 |
| 6. 『CSM Support』設為『Enabled』,禁CSM兼容支持 |
| 7. 撳F10儲存後重啟. |
刪除RAID模式
| 1. 撳『Settings』->『IO Ports』->『RAIDXpert2 Configuration Utility』->『Array Management』. |
| 2. 撳『Delete Array』 |
| 3. 『Confirm』設為『Enabled』 |
| 4. 15秒後撳『YES』, 刪除RAID. |
設置raid模式
| 5. 撳『Settings』->『IO Ports』->『RAIDXpert2 Configuration Utility』->『Array Management』. |
| 6. 『Select RAID Level』設為『RAID 1/RAID 0』 |
| 7. 撳『Select Physical Disks』 |
| 8. 『Physical Disk 0:1:0,NVMe Gen3 x4,960.1GB, Ready』設為『Enabled』 |
| 9. 『Physical Disk 1:1:0,NVMe Gen3 x4,960.1GB, Ready』設為『Enabled』 |
| 10. 撳『Apply Changes』 |
| 11. 撳『Create Array』 |
| 12. 撳F10儲存後重啟. |
将win11時載入AMD RAID-9.3.0.158驅動.
| 1. 『AMD RAID-9.3.0.158』存入USB磁碟 |
| 2. 将win11載入驅動程式『X:\AMD RAID Preinstall Driver\Preinstall\NVMe_CC』
3. cpu冇GPU載入『NVME_CC』, 4. cpu有GPU載入『NVMe_DID』 |
| 5. 載入『AMD-RAID Bottom Device』 |
| 6. 載入『AMD-RAID Config Device』 |
| 7. 載入『AMD-RAID Controller[storport]』 |
| 8. 得翻單壹『磁碟機』,唔係刪raid1後重做. |
| 9. 繼續将win11 |
重构磁盤陣列.
| 1. raid1模式RAIDXpert2重构磁盤陣列. |
| 2. |
AMD RAID-9.3.0.158有两版本以CPU分NVME_DID/NVME_CC
| Processor | AMD-RAID |
| AMD 7th Generation A Series Desktop Processors | NVME_CC |
| AMD Ryzen™ 1000 Series Desktop Processors | NVME_CC |
| AMD Ryzen™ 2000 Series Desktop Processors | NVME_CC |
| AMD Ryzen™ 2000 Series Desktop Processors with Radeon™ Graphics | NVME_CC |
| AMD Ryzen™ 3000 Series Desktop Processors with Radeon™ Graphics | NVMe_DID |
| AMD Ryzen™ 3000 Series Desktop Processors | NVME_CC |
| AMD Ryzen™ 4000 Series Desktop Processors with Radeon™ Graphics | NVMe_DID |
| AMD Ryzen™ 5000 Series Desktop Processors with Radeon™ Graphics | NVMe_DID |
| AMD Ryzen™ 5000 Series Desktop Processors | NVME_CC |
| AMD Ryzen™ 4000 Series Mobile Processors with Radeon™ Graphics | NVMe_DID |
| AMD Ryzen™ 5000 Series Mobile Processors with Radeon™ Graphics | NVMe_DID |
| 1st Gen AMD Ryzen™ Threadripper™ Processors | NVME_CC |
| 2nd Gen AMD Ryzen™ Threadripper™ Processors | NVMe_DID |
| 3rd Gen AMD Ryzen™ Threadripper™ Processors | NVMe_DID |



上買『FILCO黑聖手』冇買黑忍者, 睇到『GHERRY-MX3.0S青軸黑忍者』有中古,
底座係鋁版折彎而成,冇倒角,冇塞窿,冇脚撑.
『Win/attr』鍵冇響應,以為神左,撳『Fn+F9』解鎖『Win/attr』.
109鍵比104鍵多左『GHERRY』『CALC』『Prev』『Play』『Next』伍鍵.
『ESC』鍵隔离多左粒『GHERRY』鍵,吾覚意撳錯鍵.
| 鍵 | 指南 |
| GHERRY | 撳住伍秒啟CHERRY-UtilSoft |
| FN+F1 | 静音 |
| FN+F2 | 細聲 |
| FN+F3 | 大聲 |
| FN+F4 | |
| FN+F5 | |
| FN+F6 | |
| FN+F7 | |
| FN+F8 | |
| FN+F9 | 激活WIN/ ATTR鍵 |
| FN+F10 | IE |
| FN+F11 | 等於WIN+E,啟用『檔䅁總管』 |
| FN+F12 | |
| Prev | 焦點,上壹首 |
| Play | 焦點,play/stop |
| Next | 焦點,下壹首 |
| 櫻桃官網 |
| CHERRY UTILITY |
| 指南書 |





中古『CHERRY G80-3000』冇個聽使,心諗整個冇線機械鍵盤,『G80-3000』冇藍牙版,净低『FILCO黒忍者青軸』睇得上眼,得翻『FILCO黑聖手青軸』有貨,等佢特價再買『FILCO红軸黒忍者』,櫻桃MX青軸.
支持『有線』同『冇線』,冇『藍牙』接收端,利用電腦『藍牙』配對鬼咁麻煩.
『有線』連接最簡單
| 1. 『閂藍牙』
2. 插USB線 |
『冇線』-『藍牙』配對
| 1. 插兩粒3號電池
2. 撳右上角『裝置清除』鍵,進入『藍牙匹對』模式. 3. 撳『Ctrl+ALT+FN』鍵, 進入『裝置切换』模式. 4. 撳『1』鍵. Windows11 5. 撳『設定』 6. 撳『藍牙與裝置』->『裝置』 7. 撳『新增裝置』 8. 撳『藍牙-滑鼠,鍵盤,筆,音訊裝置,控制器等等』搜鍵盤 9. 撳『Majestouch Convertible 2』顯示8位pin碼 10. 係鍵盤撳8位pin碼後撳『enter』. 11. 超時或撳錯8位pin碼, 要借助有線鍵盤 12. 『Majestouch Convertible 2』填『12345678』後撳『連線』 13. 係鍵盤撳『12345678』後撳『enter』 |

Win11『收件匣』可收取非outlook以外郵箱, 以Godaddy免費郵箱舉例.
| 電子郵件地址 | name@bookcard.net |
| 使用者名稱 | name |
| 密碼 | Pass |
| 帳戶名稱 | name |
| 使用此名稱傳送你的郵件 | name |
| 內送電子郵件伺服器 | pop.secureserver.net |
| 帳戶類型 | POP3 |
| 外寄(SMTP)電子郵件伺服器 | smtpout.secureserver.net |
| 外寄伺服器需要驗證 | enable |
| 使用相同的使用者名稱與密碼来傅送電子郵件 | enable |
| 內送電子郵件需要SSL | enable |
| 外寄電子郵件需要SSL | enable |






『精準滑鼠』造工壹流,睇到『人體工學滑鼠』冇包装版,配『藍牙』接收頭, 『精準滑鼠』要電腦有藍牙,仲要配對.
配獨立『Win鍵』.左右触鍵偏硬,装『滑鼠和鍵盤中心』冇得設定『DPI』.唯壹好處係『下側鍵』可設為『放大鏡』. 触鍵時靈時吾靈, 打機絕對唔掂.
設得多年買過『微軟滑鼠』配獨立『放大鏡』鍵,超鐘意此功能.
| MouseKeyboardCenter_64bit_CHT_14.41.exe |
| 滑鼠和鍵盤中心下載 |



























買『AMD Ryzen5 5600X』埋搭『Gigabyte X570 AORUS MASTER』紧係裝『Windows11』,買埋『TPM2.0』,『Windows11專業版』內籠得『U盤』同『金鑰』.安裝『WIN/LINUX』啟動两鋪,首啟以U盤啟動,次啟以硬碟啟動.
如果装咗多個硬碟『HDD/SSD』,且装有『WIN/LINUX』,壹定將冇關系統硬碟斷電屏蔽,事因裝『WIN10/WIN11』會改寫引導區.





舊時CPU超頻係主板跳線帽,『Inter Pentium MAX』鎖死倍頻,直接超基頻『66Hmz』超到『92Hmz』.『Inter Pentium-II』『66hMZ』直接跳『100HMZ』, 後蒞『Inter Pentium-III』最高去到『133HMZ』. 要記憶體『sd-ram』支持.『AMD CPU』冇鎖倍頻超.
技嘉主板提供超頻程式『Easy Tune』, 直接係『windows11』超頻稳定後先係BIOS改.
『CPU倍頻』改為『46』,『CPU VCore mode』點認『auto』改為『static』. 『CPU Vcore』電壓 1.2V逐㸃加.『Ryzen5 5600X』超倍頻直上『4.6GHZ』.
『RAM』『頻率』『電壓』. 肆條『2333MHZ』超到『2666MHZ』.
| Easy Tune-Advanced CPU OC | |
| CPU倍頻 | 46 |
| CPU VCore mode | static |
| CPU Vcore | 1.2 |


上次『AMD Ryzen5 1500X』配『MSI B350 GAMING PLUS』冇得玩超頻,好後悔. 依鋪『AMD Ryzen5 5600X』搭『Gigabyte X570 AORUS MASTER』老虎蟹搾幹搾盡.
『AMD Ryzen5 5600X』『B2步進』,唔超電壓『1.2v』壹舉直上『4.6GHZ』. 超『4.8GHz』係傳說,可能係『幽靈』散熱唔夠力. 『幽靈螺旋』支緩『65W-TDP』, 買『幽靈棱鏡』『125W-TDP』再試
『SOCKET-AM4』係時後要淘汰, CPU針脚幼,底座夾唔死.拆幽靈散熱鬆開鑼𢇁後,要左右轉幽靈散熱, 切底同CPU分離,唔係容易將CPU連根撥起,整傷『底座』『針脚』.
『Inter Sockte-2011-3』冚實CPU,且CPU冇針腳,存放唔會撞歪針腳.
| 5600X | CPU-Z Single Thread | CPU-Z Multi Thread | 電壓V |
| 3700HMZ | 512 | 4042.6 | AUTO |
| 4500HMz | 619 | 4920. | Auto |
| 4600HMZ | 632 | 4993.1 | auto |
| 4800HMz | N/A | N/A | N/A |
| AMD Ryzen5 5600X | |
| 散熱 | AMD WRAITH COOLERS SPIRE |
| TDP | 65W |
| 核芯速度Core Speed | 3600 HMz |
| 電壓Core Voltage | 1.2v |
| 基頻Bus Speed | 100HMz |
| 倍頻Multplier | 37 |
| 核芯Cores | 6核 |
| 線程Threads | 12 |
| 步進Stepping | 2 |


『APP Center』更新技嘉驅動同程式,唔使上技嘉官網睇,自動下載并更新.唔使學似『Windows update』更新後問題多多,又唔知装左邊飯程式.比『MSI Live Update6』好用.
撳右上角齿輪, 禁著機自啟拖慢『Windows11』.

技嘉『System Information Viewer』畀你係Windos11調風扇轉速, 平衡風噪同温度.
撳『Smart Fan 5 Auto』有肆級風扇調速,『Quiet/寂靜』『Standard/正常』『Performance/性能』『Full Speed/全速』

『Office2021 professional plus』增强專業版,冇光碟冇U盤, 齋密鈅『PRODUCT-KEY』. 用『OfficeSetup.exe』自動係網絡下載,若冇網,網速慢.
下載『ProPlus2021Retail.img』鏡像, 後寫入U盤.





自Windows11强制装『TPM2.0』,主板啟用『AMD fTPM/Intel PTT』軟件模拟TPM,實制行起蒞隙下窒下.
『TPM2.0』芯片皆出自『Infineon』厰,『Gigiabyte-X570 AORUS MASTER』係『LPC-12PIN』.而非『LPC-20PIN』通用三大厰『asus/gigiabyte/supermicro』.
| 以『Gigiabyte-X570 AORUS MASTER』為例: |
| 1. 『TPM』插座係主板底部, 插入『Gigiabyte LPC 12-PIN』
2. 著機撳『del』鍵,登入『bios』. 3. 撳『F2』鍵. 『Advanced mode』 4. 撳『Settings』->『Miscellaneous』 5. 禁用『AMD CPU fTPM』『Disabled』. 6. 撳『Settings』->『Miscellaneous』->『Trusted Computing2.0』 7. 使能『Security Device Support』『Enabled』 8. 撳『SAVE & EXIT』登出『bios』. |
撳『win+r』填啟『tpm.msc』, 登入TPM管理.睇到廠商IFX.



INTEL_XEON_E5_1630V4
買『E5-2630LV3』諗住整冇風扇散熱.『x99-itx』重裝『Win10』後,睇蒞買粒高主頻CPU『E5-1630V4』,主頻高達『3.7GHZ』,單線程跑分高壹倍,多線程跑分相約.其實本蒞住買『E5-1630V3』55蚊,睇到『E5-1630V4』100蚊, 果斷出千. 『CPU-Z』單線程跑分快壹倍.
換CPU後要重裝『Intel晶片組裝置軟體』『SetupChipset.exe』
| INTEL XEON | E5-1630V4 | E5-2630LV3 |
| CPU-Z單線程 | 470.7 | 233.2 |
| CPU-Z多線程 | 2350.2 | 2136.7 |
| 主頻 | 3.7GHZ | 1.8GHZ |
| 核心 | 4核 | 8核 |
| 線程 | 8線程 | 16線程 |
| TDW | 140W | 55W |
等遲D買半高圖形卡T400/WX4100, 再買『SM961-1GB』.

SANWA人體工學滑鼠做特價,黑色磨沙貪佢够的骰,够輕吾似『Microsoft Surface Precision Mouse』咁重手.買咗有線版冇咁靈活,下次買藍牙版.




『MSI B350 GAMING PLUS』升bios後著唔到機,買中古『Gigabyte-X570 AORUS MASTER』因質量要退貨,諗起有部备用『x99-itx』.
重装『Win10』後填『產品金鑰』,啟用Windows報 (0x80072F8F) 錯誤碼,諗翻早先Microsoft以CD-KEY綁定主板,而非綁帳號.咁呃喫换主板要再買授權.好彩後蒞Microsoft改CD-KEY綁帳號.
| 1. 撳『設定』->『更新與安全性』->『啟用』
2. 撳『疑難排解』 3. 撳『啟用』 4. 撳『我最近已變更此裝置的硬體』 5. Microsoft 帳戶勾『這是我目前使用的裝置』 6. 撳『啟用』 |
若多人登入冇法連線伺服器,等壹两日後再試.









上次買B350冇得玩超頻,睇岩『Gigabyte X570 AORUS MASTER』前後散熱装甲,慳翻M.2散熱.配『AMD Ryzen5 5600X』.中古冇盒冇附件冇說明書.
Win11需要『TPM2.0』模块, 雜牌主板唔使諗.『TPM2.0』只四大厰『Gigabyte/ASUS/MSI/SuperMicro』.『Gigabyte X570』用『LPC 12-PIN』
感温線係NTC10K熱敏電阻配翻唔難.
首块主板1.1版,右下角變形退貨.
换貨次寄蒞係1.0版頻繁死機,壹睇主板背面焊過退貨.
再换貨,寄蒞係1.2修正版,壹點著機.
塊主板設計有問題,主板芯片過熱,風扇熱風吹正下面兩條m.2槽,導至M.2-SSD溫度過高失速.
『M.2-SSD』掉失, 係SATA線導致, 换『Amphenol-SATA3.0線』銀白色果種.
而且揀記憶體,多年之前買雜牌記憶體, 使即降頻率都死機, 唯壹好處係,支持ECC伺服記憶體. 後蒞買左兩條『SAMSUNG-32GB-2RX8-PC4-3200AA』先冇死機.
| DDR4-記憶體 | DDR4-ECC伺服記憶體 |
| 1Rx8 | 1Rx8 |
| 2Rx8 | 2Rx8 |
| 1Rx16 |
| 驅動 | |
| Realtek HD Audio Driver | 音效卡 |
| AMD Chipset Driver | 芯片组 |
| AMD APU Driver | AMD GPU |
| Intel LAN Driver | 英特尔網卡 |
| Realtek LAN Driver | 網卡 |
| Aquantia LAN Driver | 網卡 |
| AMD RAID Utility | 沉余陣列 |
| AMD RAID Preinstall Driver | 沉余陣列 |
| Intel WIFI driver | 英特尔冇線網卡 |
| 架餐 | |
| System Information Viewer | 系统监控 |
| RGB Fusion | |
| APP Center | 程式中心 |
| Easy Tune | CPU超頻 |
| @BIOS | BIOS更新 |
| Fast Boot | |
| Smart Backup | |
| On/Off Charge™ | |
| Game Boost | |
| USB TurboCharger | |
| cFosSpeed Internet Accelerator Software |
| Gigabyte X570 AORUS MASTER | |
| CPU供電8PIN | 两 |
| PCIe4.0 | 叁 |
| RJ45-1000M/bps | 两 |
| USB2.0 | 捌 |
| USB3.1 Type-c | |
| 主板USB3.0-19pin | 两 |
| 主板USB2.0-9pin | 两 |
| M.2固態硬碟 | 叁 |
| SATA3.0 | 陸 |
| 測温探頭 | 两 |
| TPM | 壹 |



記得細孥果陣玩BIOS,寫BIOS-通過1.44磁碟機係黑屏下重寫.或者撥bios芯片用燒錄機重寫,依家冇1.44磁碟機,bios芯片皆貼片焊死.
好彩係CH341A-BIOS燒錄機極廉價.『ASUS/MSI/Gigiabyte』主板皆有獨立引脚, INTEL主板BIOS芯片3.3V供電,AMD主板BIOS芯片1.8V供電,要3.3V降1.8V. 各品牌芯片編程指令皆同,只要選啱芯片容量,即可直接燒寫.
| AsProgrammer |
| NeoProgrammer |
| CH341A Programmer |
首推『NeoProgrammer』芯片識別最強.
| 載入BIOS-ROM
芯片識別 |
燒錄過程大至相似,手動逐步执行
| 1. OFF-Protect/解除保護
2. Erase/擦除 3. Blank Check/查空 4. Write/燒錄/寫入 5. Verify/校驗 |




『MSI B350 GAMING PLUS』升bios後著唔到機, CH341A重寫後依然唔著機.
索性買中古,睇中『ASUS TUF GAMING X570-PLUS (WI-FI)』寫明支持銳龍1/2/3代. 㸃知『AMD Ryzen5 1500X』唔著機.原蒞『X570』唔支持銳龍1代.
『ASUS TUF GAMING X570-PLUS (WI-FI)』得壹『USB3.0』兼冇原厰檔板, 越睇越唔鐘意索性退貨.



Windows10-硬體保留記憶體
Win10又得壹半記憶體可用,肆條DDR4記憶體4X16GB=64GB冚辦闌識別, 係 Win10『硬體保留32.1GB』.之前試過重載BIOS默認值修復,今次唔使得,後蒞發現有條DDR4神左,玩五年歪艇,雜牌記憶體買吾過.
『系統』睇『已安装記憶體(RAM) 64GB(31.9GB)』
| 撳 Win+PAHK鍵,『系統』->『關於』 |
『記憶體』睇『硬體保留32.1GB』
| 1. 撳 『CTRL+ALT+DEL』鍵 2. 撳『工作管理員』 3. 撳『效能』->『記憶體』 |
『系統資訊』睇『總共實體記憶體』得31.9 GB
| 撳『Win+R』填『msinfo32』
『系統資訊』->『系統摘要』 |
| C:\Windows\System32\msinfo32.exe |
| 已安裝的實體記憶體 (RAM) 64.0 GB
總共實體記憶體 31.9 GB 可用實體記憶體 27.8 GB 虛擬記憶體總計 36.7 GB 可用虛擬記憶體 31.1 GB |


有『CPU-Z』自然有『GPU-Z』,但唔係出自同壹間公司. 『CPU-Z』可以睇圖形卡簡略信息, 詳細参數要靠『GPU-Z』. 最重要佢係綠色單壹『.EXE』,可部署係U盘啟動.
| https://www.techpowerup.com/gpuz/ |
| https://www.techpowerup.com/download/techpowerup-gpu-z/ |


『Geek3D FurMark』配埋『GPU-Z』圖形卡渲染壓力測試,睇GPU温度.
『NVDIA QUADRO K6000』涡輪風扇散熱行『3840*1200』,FPS有50幀,係80度左右.
| https://www.geeks3d.com/furmark/ |
| https://geeks3d.com/downloads/2023p/FurMark_1.33.0.0_Setup.exe |




為左玩AI繪畫,諗住買NVIDIA圖形卡,中古『RTX2080Ti』都1599蚊.『QUADRO K6000』12GB記憶體.啱啱特價1075.以打機幀FPS肯定争得遠.
『PerformanceTest』2D跑分508, 3D跑分6865.失望.
涡輪風扇散熱行『Geeks3D FurMark』係80度左右.
| NVIDIA圖形驅動程式 | |
| 1. 登入https://www.nvidia.com/Download/index.aspx?lang=en-us | |
| 2. 填NVIDIA Driver Downloads | |
| NVIDIA Driver Downloads | 揀 |
| Product Type | NVIDIA RTX/Quadro |
| Product Series | Quadro Series |
| Product | Quadro K6000 |
| Operating System | Windows 10 64-bit |
| Download Type | Production Branch/Studio |
| 3. 撳Search | |
| 474.14-quadro-rtx-desktop-notebook-win10-win11-64bit-international-dch-whql.exe | |
NVIDIA圖形驅動程式





新買『NVDIA QUADRO K6000』圖形卡同『RX550』比快幾多. 『PerformanceTest』分開測『2D/3D』性能, 分别跑『DirectX』『OpenGL』.
『K6000』推出時日早,2D跑分『RX550』仲快, 3D跑分『K6000』快唔够壹倍. 失望.
| 2D | 3D | |
| RX550 | 551 | 3641 |
| K6000 | 508 | 6865 |
『PerformanceTest』部署係U盘啟動,綠色盤冇需係目标機安装.
| File->Install PerformanceTest to USB driver or an optical disk |
| https://www.passmark.com/products/performancetest/index.php |
| https://www.passmark.com/downloads/petst.exe |

粒『AMD Ryzen5 1500X』冇鎖倍頻,係『msi b350』倍頻鎖死超唔到. 著『Game Boost』後由3600超到3700.
AMD推出『Ryzen Master』程式,畀你係Windows調倍頻,調CPU電壓,禁停核心.『Ryzen5 1500X』倍頻38,電壓1.3v穩定係3800.
倍頻唔係BIOS調,而係進入Win後調.會增加Windows附擔.
| https://www.amd.com/zh-hant/technologies/ryzen-master |
| https://download.amd.com/Desktop/AMD-Ryzen-Master.exe |

CPU_Z
CPU-Z
諗起係『Win98』愛『CPU-Z』加埋『Superπ』蒞玩超頻. 多年前買『AMD Ryzen5 1500X』配『msi b350』, 倍頻鎖死超唔到. 著『Game Boost』由3600超到3700.
『AMD Ryzen Master』倍頻38,電壓1.3v穩定係3800,『CPU-Z』跑分增加高過主頻增速.
| Ryzen5 1500X | CPU電壓 | 單核 | 多核 |
| 3691.19MHz | 1.2375v | 369.9 | 2099.3 |
| 3790.95MHz | 1.25v | 397.5 | 2214.8 |
『CPU-Z』最新2.04版, 有安將版同綠色版
| https://www.cpuid.com/softwares/cpu-z.html |

| 星座 | 海豚座/Delphinus |
| 形象 | 海豚 |
| 縮寫 | Del |
| 屬格 | Delphini |
| 體量等級 | 690 |
| 面積 | 平方度 |
| 正日 | |
| 聖衣 | 青銅聖衣 |
| 聖闘士 | |
| 招式 | |
| 起源 | 『腓尼基』星座 |
| 記录 | 『托勒密』肆拾捌星座 |
| 記錄 | 88星座之壹 |
『天琴座』『奥菲斯』畀『酒神』信女斬首, 『首級』連『柒弦琴』抛入大海, 畀海冰冲去『列斯伏斯島』. 畀島民執起『首級』埋係『亞波羅神廟』隔籬. 『柒弦琴』掛係廟堂. 自此天下樂手出列斯.
儒略曆前陸世紀, 偉大歌手『阿里翁』係『列斯伏斯島』出道.才華橫逸後生时係『科林斯國』歌讚酒神, 受國民愛戴, 去『西西里島』参加音樂比賽. 并贏得金樽. 搭船翻『科林斯國』. 船夫諗住劏死牛,『阿里翁』墜海彈『柒弦琴』. 琴音吸引海豚 . 畀海豚送『阿里翁』翻『科林斯國』.




臺Canon-MF746Cx移遠幾米,䋂長條USB線,影印傳送產生錯誤碼ERROR CODE-852. 唔通要買加長USB線.
MF746Cx支援有線同冇線連接網絡. 作獨立影印機存在, 冇需依附電脑.




TureNAS-內建支援FTP,即使出到街也可係『手機』同『NAS』傳蒞傳去.
| ftp://username:password@truenas/ |
Windows10
Android


『Kingston SSDnow-V300 120GB』係MLC閃存壹早停產.V300入門級,HyperX登堂級.買左两中古,7MM厚磨砂鋁殼.
諗住愛蒞擺係『SUPERMICRO SC721TQ-250B』,頂頭缺2.5寸磁碟托架, 用3D打印機,磁吸式托架,吸附箱壁.




『Giada N60E-O-1521』装係『mineNAS』,買機箱装『x99 ITX-server』,睇蒞睇去都係鐘意『SUPERMICRO-SC721TQ-250B』NAS機箱款.
貪送250W火牛, 寄蒞壹睇頂頭缺2.5寸硬碟托架, 前置USB3.0變USB2.0同『SC721TQ-250B』壹鬼样. 其它地方冇變.睇蒞装雙硬碟要磁吸式托架.
『HDD-LED』『PWM-LED』要反接先著燈.











『E5-2630LV3』装『2U冇風扇』興過辣鷄, 改變初衷『1U純銅散热』+『猫頭鷹風扇』,
『1U純銅散热』長104寬65高20mm, 装『猫頭鷹NF-A6x25』高25mm, 『風扇座套』厚4mm, 『20+25+4=49mm』<『60mm』啱啱好.
『猫頭鷹』鬼咁貴, 『6CM風扇』 附帶『30cm延伸線』『Y型分線』『减速線』『防震膠釘』『鑼絲』.
装『鐵網』罩住扇葉,以免伸手打爛扇葉.
3D打印『風扇座套』『FAN-SOCKET-60MM』係『1U純銅散热』, 两側用3M膠固定, 睇尺碼裝70MM風扇都得, 稳唔到『猫頭鷹』有『NF-A7x25』
『猫頭鷹』冚辬闌支持PWM, 『x99 ITX-server』唔支援自動調速,支手援動調速.
| AMI-DC模式 |
| 1. 撳『Del』或『ESC』登入『BIOS』
2. 撳『Advanced』->『Smart Fan Control』 3. 撳『Smart CPU FAN Control』揀『Disabled』 4. 撳『CPU FAN PWN Value』填0~100. 設CPU風扇轉速百分比. 5. 撳『Smart SYS FAN Control』揀『Disabled』 6. 撳『SYS FAN PWN Value』填0~100. 設機箱風扇轉速百分比. |
『Windows features』開啟或關閉Windows功能,愛蒞集中『著』『閂』『装』windowns服務,包括大名鼎鼎『.NET Framework 3.5』
『Windows features』匿埋得超鬼鼠,仆匿匿改名呌『OptionalFeatures.exe』
| 1. 撳『Win+R』執行搜索 |
| 2. 開啟『C:\Windows\System32\OptionalFeatures.exe』 |
或者撳
| 1. 撳『Win+E』執行『檔案總管』 |
| 2. 撳『控制台/Control Panel』 |
| 3. 撳『程式集/Programs and Features』 |
| 4. 撳『開啟或關閉Windows功能/Turn Windows features on or off』 |


條RJ45網線異常,雜牌測試儀冇9V電池,索慪性買寶工『MT-7064』舊款,點知寄新款蒞,造工超雜牌幾個馬位.
插線後,撥『SLOW』測線,睇燈序判斷網線係邊頭.唔用記得撥『OFF閂』以免電池耗盡.
| OFF | 閂 |
| ON | 快速測試 |
| SLOW | 慢速測試 |
| 規格 | MT-7064 |
| 線序故障最大測距 | 300米 |
| 連結埠 | RJ45(8 pin)&RJ11(6P/6C/4C/2C)&RJ12,POE |
| 電䌫 | RJ45網線, RJ11/ RJ12電話線 |
| 測試 | 快Fast/慢Slow雙速測試 |
| 屏蔽燈 | LED |
| 電池 | DC 9.0V |
| 重 | 125g |

多左臺『NAS』, 臺『wifi』兩『百兆網口』唔夠使,最快脆係買『交換機』,諗住慳銀買中古『NETGEAR® GS108』千兆交換機. 等砌『openWRT』先執靚佢.
有三版本『GS108T』帶供電,『GS108E』劃分網段,買『GS108』就得.
| NETGEAR® | |
| GS108 | SWITCH |
| GS108E | SWITCH +VLAN |
| GS108T | SWITCH +VLAN+POE |
8口其實唔係好夠使,『NETGEAR® GS116』有16口價格貴DD.
| SYSTEM | Rj45 |
| Windows | 1 |
| Linux | 1 |
| HTPC | 1 |
| TrueNAS | 1 |
| TrueNAS-IPMI | 1 |
| OpenWrt | 1 |
| Wifi | 1 |
| 影印機 | 1 |


諗住臺NAS用8類網線, 用過『8類免鉗頭』『超6類免鉗頭-金屬彈雞』都係冚金属實正, 兩頭黐『銅箔』隔離電磁干擾. 『CAT6A』理論達『萬兆』.
四條『SM961』砌『raid0』達『3200MB/S*4=12800MB/S』摆係NAS.
『萬兆』『10000Mbps』即『1250MB/S』. 要11『萬兆網口』链路聚合.
『拾萬兆』『10Gbps』即『12500MB/S』, 雙『光纖網口』链路聚合即可满足.睇灌蒞係光纖時代蒞临.
『超6類屏蔽免鉗頭』568B製作步驟.
| 類別Category | 適用領域 |
| CAT1 | 語音『電話通訊』 |
| CAT2 | 4Mbps |
| CAT3 | 10Mbps 『拾兆-區域網』 |
| CAT4 | 20Mbps |
| CAT5 | 100Mbps『百兆-快速乙太網』 |
| CAT6 | 1000Mbp『千兆』 |
| CAT6A | 10000Mbps『萬兆』 |
| CAT7 | 10Gbps=100000Mbps |
| CAT8 | 40Gbps |
| 腳位 | EIA/TIA 568B | EIA/TIA 586A |
| 1 | 白橙 | 白綠 |
| 2 | 橙 | 綠 |
| 3 | 白綠 | 白橙 |
| 4 | 藍 | 藍 |
| 5 | 白藍 | 白藍 |
| 6 | 綠 | 橙 |
| 7 | 白棕 | 白棕 |
| 8 | 棕 | 棕 |


『TrueNAS』默認通過『Route-DHCP』自動指牌『IP』地埗畀『NAS』, 如果换罔口罔卡, 指牌IP地埗亦隨之改變.
可禁『DHCP』指牌IP.手動指定固定IP, 如『192.168.1.9』.缺點係造成IP冲突.
更佳係以『Hostname』登入.『TrueNAS』自動注冊『Hostname』為『truenas』, 係WEB瀏覽器以『http://truenas/』登入後臺. 可能係查詢Hostname,首次登入有幾秒延遲遲
| http://truenas/ |
| https://truenas/ |

『ANDROID程式代碼』『Windows程式代碼』『bookcard.net文章存底』『影視歌』要保存文檔數據太多,壹早諗住買台『NAS』,品牌機價高配置低,唔入法眼, 架己砌壹NAS用料邊D靚.係屋企『靜音』『慳埞』『慳電』
| 『靜音』 | ATX火牛有靜音版, ITX火牛好似冇. |
| 『慳埞』 | itx主板17CM*17CM夠細,有條PCIE槽NUC冇,諗住買『X99-i』 |
| 『慳電』 | 諗住買『E5-2630LV3』低壓版,TDW55功耗冇需太在意. |
度蒞度去,配置如下
| NAS | 配置 | |
| 底板 | N60E-O-1521 | 特價手多多買. |
| CPU | Xeon-D1521 | 底板內置CPU慳翻 |
| RAM | DDR4-32GB | SAMSUNG-DDR4-32GB-2400T * 2 |
| DISPLAY | ASPEED AST2400 | 底板內置VGA頭慳翻 |
| 機箱 | mineNAS | 靚仔機箱. |
| 火牛 | Enhance 600W | FLEX火牛 |
| SSD | SM961 256GB | 256GB裝OpenNAS夠突. |
| HHD | SEAGATE 16GB*2 | 兩16gb磁碟,砌raid1鏡像. |
砌NAS
| TrueNAS® SCALE安裝 |
| 設置語言-漢語 |
| Create Pool砌Raid1 |
| Create Dataset |
| 創建戶口User&Groups |
| Windows(SMB)Shares |
| UNIX (NFS) Shares |
『NAS』作為罔絡獨立存在数據伺服機,係咪应刻装更多架餐?『Virtual Machines』『Docker』.




生成『Pool』仲要建『Dataset』. 以得到文檔結构全權控制. 包括新建資料檔案夾.




NFS『Network File System』由SUN公司發明UNIX罔絡文檔分享协議. 係電腦手機平板共享『文檔』.






冚寫『Server Message Block』由IBM提出網絡協議『SMB』,基於TCP协議係電腦之間共享『文檔』『影印機』.係『檔䅁總管』管理本機磁碟『檔䅁』咁樣管理TrueNAS『檔䅁』.
係Window10系統
如有两台臺truenas,需改NETBIOS各,以免冲突.





事因『TrneNAS』需建普通身份蒞登入,
| Read | Write | Execute | |
| User | 勾選 | 勾選 | 勾選 |
| Group | 勾選 | 勾選 | 勾選 |
| Other | 勾選 | 勾選 | 勾選 |




砌 raid1要至小两同大細磁碟, 16TB磁碟家時最底買. TrueNAS孻屘要Format格式,數据冇曬.舊磁碟數据要係砌掂後傳.
| Stripe | Raid0 |
| Mirror | Raid1 |
| Raid-Z | Raid5 |



之前諗住装臺冇風扇NAS. 『XEON E5-2630LV3』低功耗『2U銅底鋁翅片』, 唔装風扇CPU温度高達100度, 睇蒞要『冇風扇』壹係超低功耗凌動ATOM-CPU, 唔係超大散熱同機箱融為壹體.
宜家為有『1U純銅散热』加『猫頭鷹NF-A6*25 PWM』.



係NAS機箱自帶12CM風扇, 1500轉27.2(dB/A) 噪得犀利.諗住買『猫頭鷹NF-A12X25』2000轉噪聲22.6(dB/A),價格貴得离.
『3PIN-DC』最簡單係接降速線,但冇左自動調速.
『4PIN-PWN』『脉冲信號控制制』,稳定12V根据温度自動調速,要係BIOS使能Enabled.
| MSI |
| 1. 撳『Delete』登入『BIOS』
2. 撳『HARDWARE MONITOR』 3. 揀『PWN』或『DC』. |
| AMI-DC模式 |
| 1. 撳『Del』或『ESC』登入『BIOS』
2. 撳『Advanced』->『Smart Fan Control』 3. 撳『Smart CPU FAN Control』揀『Disabled』 4. 撳『CPU FAN PWN Value』填0~100. 設CPU風扇轉速百分比. 5. 撳『Smart SYS FAN Control』揀『Disabled』 6. 撳『SYS FAN PWN Value』填0~100. 設機箱風扇轉速百分比. |
| ADDA電腦風扇 | 参數 |
| Frame Size尺碼 | 寬120x高120x厚25mm |
| Model No型號 | AD1212DB-A7BGL |
| Bearing type | ◎=Ball ※=Sleeve ○=1B1S ●=Hypro Bearing |
| Bearing | ◎※● |
| Volt.(VAC) 電壓 | 12V |
| Current(A) 電流 | 0.11 |
| Speed(rpm) 轉速 | 1500 |
| Air Flow(CFM) 氣流 | 57.205 |
| Pressure(InAq) 風壓 | 0.074 |
| Noise(dB/A) 噪聲 | 27.2 |



『TrueNAS® SCALE』其UI可改漢語,








自『FreeNAS』畀『TrueNAS』吞併後, 『FreeNAS』改名『TrueNAS CORE』. 『TrueNAS SCALE』基於『Debian』同樣免費.
TrueNAS建議用軟RAID,冇用硬RAID卡,以前都用硬RAID經常斷帶,聽講硬RAID重建失敗會丟失數據.軟RAID可跳過損壞部分還原數據.
| NAS系統 | |
| FreeNAS | 基於FreeBSD |
| TrueNAS CORE | 前身FreeNAS |
| TrueNAS SCALE | 基於Debian |
| TrueNAS Enterprise | 企業版/激活碼 |
砌臺TrueNAS SCALE需備幾樣硬件
| CPU | 兩核CPU-64Bit |
| 記憶體 | 16GB ECC |
| 啟動盤 | 16GB以上 |
| NAS磁盤 | 至小1個 |
| 網絡 | 網線+網卡 |
| 鍵盤 | 裝果陣要 |
| 滑鼠 | 冇使 |
| Username | root |
| Password | 装TrueNAS填root密碼 |
| The web user interface is at: |
| http://192.168.1.7:80 |
| https://192.168.1.7:443 |
| TrueNAS CORE | TrueNAS SCALE | |
| CPU | 64Bit | 雙核64Bit |
| 記憶體 | 16GB ECC RAM | 至細8GB/建議16GB ECC RAM |
| 引導盤 | 16GB建議SSD | 16GB SSD |
| 磁盤 | 至小1個 | 2個相同大細磁盤 |
| 網絡 | 至小1個罔卡 | 至小1個罔卡 |
| RAID | 軟RAID | 軟RAID |




装『TrueNAS』後,以WEB登入『TrueNAS』後臺UI. 『IP』地址係『Console Setup』可以穩到, 臺『TrueNAS』分配到『192.168.1.7』.
係『Firefox』連『192.168.1.7』『存取被拒絕』.係手機WEB可登入, 證明係『Firefox』『設定』造成連線中继.
『edge』『設定』
| 錯誤 |
| 欲連結之網址(URL)無法正確的傳回 |
| The following error was encountered while trying to retrieve the URL: http://192.168.1.7/ |
| 存取被拒絕 |
| Access control configuration prevents your request from being allowed at this time. Please contact your service provider if you feel this is incorrect. |
| Your cache administrator is root. |
『不要為開為下列項目的位址用Proxy伺服器.請使用分號(;)来分隔每個項目』


係廿年前,睇過係電腦機箱內裝喇叭,當時唔鐘意但記係心.家下装臺NAS,諗住播埋4K片,做埋HTPC屋企影院電腦.
NAS機箱装有12CM風扇,嘈死人折落蒞装內裝喇叭.『9PIN-Audio』連線, SATA供電.两喇叭雙聲道.
NAS機箱够逼夾,装喇叭後風扇可装係面板罔格.

粒『XEON® E5-2630LV3』諗住低功耗,装『2U冇風扇』鋁散熱頂住,點知熱過辣雞.核心接近壹百度.
手頭冇『CPU風扇』, 唯有将8核降为單核, 停用柒個核心, 降低發熱



刻ISO鏡像Etcher畀古老石山UltralISO仲靚,壹唔使安装,貳界面簡洁. 唯壹缺㸃係掗埞『balenaEtcher-Portable-1.7.9.exe』占123MB.
| 官罔 | https://www.balena.io/etcher/ |
| Win | Etcher for Windows (x86|x64) (Portable) |
| Mac | Etcher for macOS |
| Linux | Etcher for Linux x64 (64-bit) (AppImage) |
| image | 『.ISO』『.bz2』『.dmg』『.dsk』『.etch』『.gz』『.hddimg』『.img』『.gz』『.iso』『.raw』『.rpi-sdimg』『.sdcard』『.vhd』『.wic』『.xz』『.zip』 |















諗住係NAS装WIFI,『Intel AX210』支持Wifi6. 『x99-itx』支持『NGFF-M.2』
『Intel AX210』装两條WIFI天線分公乸.,要買两條『IPEX轉SMA線』,愛『IPEX4』先扣得實,『IPEX1』窿太大.
固定SMA線.
| 1. 先落隙介
2. 穿過檔板 3. 落彈介 4. 孻屘落壁模. |
『15dBi天線』長180mm買翻蒞先覺得太長.
『蘑菇天線』可能頂住擋版『USB』『RJ45』,装PCI-E槽先冇干涉.
『辣椒天線』細細條啱啱好.
| Wifi6 | 參數 |
| 工厰 | Intel |
| 型號 | AX210NGW |
| 冇線 | 802.11AX/AC/a/b/gn/ac |
| 2.4G | 574Mbps/300Mbps/144Mbps |
| 5.8G | 2400Mbps/1730Mbps/867Mbps |
| 6G | 2400Mbps |
| 蓝牙 | 5.3/4.2/4.0/3.0 |
| 插口 | NGFF |
| 系統 | Win10/win11/linux |



砌台NAS-ITX機箱顯卡限『半高』『單槽』,屋企要『静音』冇風扇,可揀小之又小, 『MSI GT710 1G DDR3』機乎唯壹之選.
支持『DVI』『HDML』『VGA』, 事因『半高』『單槽』要拆『VGA』.
GT710有番咁上下歴史,愛蒞放4K片,可能要换顯卡.
Win10驅動下載
| https://tw.download.nvidia.com/Windows/474.64/474.64-desktop-win10-win11-64bit-international-dch-whql.exe |
| https://www.nvidia.com.tw/Download/index.aspx?lang=tw |




塊『x99-itx』可以裝『DDR4-128GB』記憶體兩條『64GB』,只係單條『64GB』貴,拆機『DDR4 REG ECC』係咁跌價,買『32GB』性價比更高.
係罔定『X10SDV-4C-TLN4F』『XEON D-1518四核』支持『DDR4-128GB』記憶體四條『32GB』.
『SAMSUNG三星』兼容性比『SK海力士』仲好,等跌價係『x99-itx』裝兩條『64GB』.
買兩條『SAMSUNG-DDR4-32GB-2400T』.『XEON E5 V4』支持2133,而『XEON E5-V4 』支持2400. 冇必要買更高,留銀買多两條仲好.
| SAMSUNG |
| 32GB 2R*4 PC4-2400T-RA1-11 |
| PC4-2400P-32GB 2R |







砌臺NAS係屋企用, 首要『靜音』其次『慳電』.『INTEL® XEON® E5』有L低壓版, 『E5-2630LV3』宜家抵玩幾拾紋包邮,產地『馬拉』.『8核16線程』『主頻1.8GHz睿頻2.9GHz』.
最高功耗TDW-55W, 所以買2U冇風扇鋁散熱, 『2U散熱』高60MM, 『ITX機箱』有可能装唔落.『Ablecom CS-M50』『Supermicro SC721TQ-250B』装得落『2U散熱』.
『V3-22nm』畀『V4-14nm』工藝提飛,冇提高主頻而加核心,其實唔使咁多核宁要四核高主頻.
装果要對翻CPU金三角記號.唔係壓歪針脚.
| I©12 |
| INTEL® XEON® E5-2630LV3 |
| SR209 1.8GHZ |
| MALAY |
| J517B143 |
| 2W515039B0178 |










冚新X99 ITX電腦底板,只有雜牌厰仲有出,冇說明書你話慳皮連將說明書pdf公布都冇. 『POWER LED』『POWER SW』『HDD LED』『RESET SW』接線標係上圖.
BIOS電池頂住『2U銅管散熱』要移位.冇門鎖報警『INT』.
『PCIE-M.2』(NVME/SATA)口係背面,散熱片厚過2MM都裝唔落,連同机機箱背板緊貼散熱.
X99芯片擇SATA線,劣質SATA線-輕則導致HDD/SSD磁碟降速,重則導致M.2磁碟丢失.試過係BIOS可識認M.2磁碟,却冇發引導.
唯壹好處係『C612』用拆機『XEON E5』同『DDR4 REG ECC』
『NGFF-M.2』係隔离撥制,要下撥『M2_PCIE』, 否則冇識認SM961
| M2_SW | M.2 |
| UP-M2_SATA | 上撥SATA |
| DOWN-M2_PCIE | 下撥PCIE |
冇光碟自然冇主板驅動, 係官網下載Realtek-ALC897聲卡驅動冇聲.
| Intel晶片組裝置軟體 | SetupChipset.exe |
| Intel管理引擎 | intel_mei_1015_10_64_1017.exe |
| Intel網卡 | intel_wired_driver_win10_26_6_x64.exe |
| Realtek聲卡ALC897 | 8309_PG463_HDAudio_FF00 |
| POWER LED | 著機燈 |
| POWER SW | 著機制 |
| POWER FAIL | 火牛故障-冇 |
| HDD LED | HDD Activity LED磁盤燈 |
| RESET SW | 重啟制 |
| INT | 冇 |
| NIC LED | Network Interface Card罔絡燈-冇 |
| NIC LED | Network Interface Card罔絡燈-冇 |
| OH LED | 主板過熱-冇 |
| 參數 | |
| 型號 | X99E-ITX V2 |
| CPU SOCKET | SOCKET 2011-3 |
| RAM | DDR4*2 |
| 憶憶體頻率 | 2133/2400/2666MHz |
| 供電相數 | 8相DR MOS數字供電 |
| 罔卡 | INTEL 2.5G*2 |
| 供電插口 | 24pin*1 / 8pin*1 |
| 風扇插口 | 4pin*2 |
| 聲卡 | ALC897-7.1聲道 |
| PS/2 | KEYBOARD/MOUSE |
| PCIE-M.2 | NVME/SATA |
| NGFF-M.2 | PCIE/SATA |

儒略曆1995年電腦主板係『AT 13“×12“』轉『ATX 12“×9.6“』後,經曆多年發展多款尺碼.
『ATX』標准主板『長12英寸*寬9.6英寸』,強擴展自用首選.
『M-ATX』細版『長9.6英寸*寬9.6英寸』,同『ITX』壹樣肆正, 4條PCIE槽,肆條記憶體槽.
『E-ATX』雙CPU主板, 『長12英寸*寬13英寸』.強擴展,市面ATX機箱裝唔落.
『ITX』主板『長6.75英寸*寬6.75英寸』,肆肆正正,係最細尺碼,半高單條PCIE槽,兩條記憶體槽. 有專用『ITX』機箱.弱擴展愛蒞用係NAS.
『Thin-ITX』同『ITX』長寬壹致,厚度縮細近半,低矮CPU散熱,筆記本記億體.
『NUC』主板『長4英寸*寬4英寸』,集成CPU,筆記本記億體.非ATX標准底板.
| 機箱型號 | 長*寬 | 擴展插槽 | 簡述 |
| WTX | 356 mm *425 mm
14英寸*16.7英寸 |
12 | HPTX加寬 |
| HPTX | 345 mm *381 mm
13.5英寸*15英寸 |
12 | EE-ATX加寬 |
| EE-ATX | 347 mm *330 mm
13.6英寸*13英寸 |
E-ATX加長 | |
| E-ATX | 305 mm *330 mm
12英寸*13英寸 |
7 | ATX加寬
|
| XL-ATX | 343 mm *262 mm
13.5英寸*10.3英寸 |
ATX加長 | |
| ATX | 305 mm *244 mm
12英寸*9.6英寸 |
7 | ATX標准 |
| Mini ATX | 284 mm *208 mm
11.2英寸*8.2英寸 |
ATX長寬縮細 | |
| Flex ATX | 229 mm *191 mm
9英寸*7.5英寸 |
M-ATX長寬縮細 | |
| µATX | 244 mm*185 mm
9.6英寸*7.2英寸 |
4 | M-ATX寬縮細 |
| Micro ATX/M-ATX | 244mm*244mm
9.6英寸*9.6英寸 |
4 | 肆肆正正 |
| ITX | 170 mm *170 mm
6.75英寸*6.75英寸 |
1 | 最細尺碼,肆肆正正 |
| Thin-ITX | 170 mm *170 mm | 1 | 低矮ITX |
| NUC | 101 mm*101mm
4英寸*4英寸 |
1 | 非ATX,肆肆正正 |





TrueNAS至小16GB磁盤,HDD同SSD价格接近,『SAMSUNG-SM961』256GB, MLC顆粒适合做系統盤. 『讀』3200MB/S『寫』1400MB/S.比TOSHIBA『東芝』XG3仲靚.
X99E-ITX佢M.2口係背面, 銅散熱片最厚2MM,連同机機箱背板緊貼散熱.
係X99主板正面有個撥制『M2_SW』要下撥『M2_PCIE』,否則冇識認SM961
| M2_SW | M.2 |
| UP-M2_SATA | 上撥SATA |
| DOWN-M2_PCIE | 下撥PCIE |
| SAMSUNG SM961 | 叁數 |
| 型號 | SM961 |
| SIZE | 256GB |
| 讀 | 3200mb/s |
| 寫 | 1400mb/s |
| 協議 | NVME |
| 插口 | M.2 PCIE3.0X4 |
| 顆粒 | MLC |






ITX機箱要愛FLEX火牛, FLEX火牛畀1U火牛細, 噪音細啱係屋企用.NAS壹年三百陸拾伍日廿肆小時唔停, 唯有揀『益衡』Enhance 600W ENP-7660B. 黑色限量版親翻『mineNAS-ITX機箱』.
模組『益衡』火牛『冚辦爛』俘係鋪頭改装.
| 規格 | 参數 |
| 型號 | ENP-7660B |
| 类型 | FLEX-ATX |
| 功率 | 600W |
| 長*寬*高 | 151MM*82MM*41MM |
| 風扇噪聲 | 30DB |
| Main board-24PIN | 1 |
| CPU4+4PIN | 1 |
| SATA | 4 |
| Big 4PIN | 3 |
| FDD | 1 |
| DISP CARD 6+2PIN | 2 |







mineNAS
諗住砌台臺NAS. 靚仔靜音肆正細,ITX機箱可揀唔多. mineNAS仿『超微』夠靚仔幾乎係唯壹選擇. 肆『熱撥插磁盤』.两個2.5寸磁盤.造工靚過晒雜牌厰.
尺碼細要揀FLEX火牛.CPU散熱可装2U散熱.
『12*12』風扇嘈死人,『超微』人地係SAS背板,佢改為SATA背板用料縮水,壹分錢壹分貨.
Chenbro SR301 PLUS支持ATX/STF火牛.造工壹流SATA背板冇縮水,只係冇咁靚仔.缺點係CPU要装1U散熱.
底板托板可抽出蒞,此設計係AT機箱睇過.如果係機箱背板預留VGA窿,装半高顯卡VGA口.
屋用主版要用轉接線.睇表接線.
| POWER LED | 著機燈 |
| POWER SW | 著機制 |
| POWER FAIL | 火牛故障-冇 |
| HDD LED | HDD Activity LED磁盤燈 |
| RESET SW | 重啟制 |
| INT | 機箱鎖-冇 |
| NIC LED | Network Interface Card罔絡燈-冇 |
| NIC LED | Network Interface Card罔絡燈-冇 |
| OH LED | 主板過熱燈-冇 |
你必須登入才能發表留言。