組合語言繪圖教學:VGA Mode 13h 畫圓與浮點運算 (FPU) 實作
前言:Mode 13h — 經典 256 色繪圖模式 VGA Mode 13h (320×200, 256 色) 是 DOS 時代遊戲與 Demo 的標準畫布:
經典病毒源碼分析:The 808 Virus (1991)
前言 在早期的 DOS 時代,病毒編寫技術與反病毒技術同步演進。The 808 Virus 是由「Smart Kids Into Sick Methods (S
DOS 列印程式實作:從命令列讀取檔案並輸出至印表機
前言:DOS 時代的列印自動化 在無圖形介面、無背景列印服務的 DOS 環境下,將文字檔內容導向列印機 (LPT1) 是常見需求。這份 PRINT FILE P
CIH 病毒 v1.5 完整組合語言原始碼賞析:Ring 0 特權提升、VxD Hook、PE 感染與毀滅性載荷
前言 CIH 病毒(Chen Ing Hau)是 1998 年震驚全球的 Windows 9x 病毒,其 v1.5 版本(1998-06-01)原始碼由作者發表
經典 CPU 偵測演算法:從 8088 到 Pentium 的組合語言實作
前言:無 CPUID 時代的處理器辨識術 在 CPUID 指令 (Pentium 才引入) 普及之前,軟體必須靠「副作用差異」來辨識 CPU 型號:旗標暫存器保
組合語言實作:取得並格式化顯示系統日期時間
前言:從原始中斷到可讀字串的完整路徑 這份 .model small 組合語言程式展示了如何在 DOS 環境下,透過 INT 21h 功能 2Ah (取日期)
BASLOAD:BASIC 呼叫 DOS LOAD 功能的組合語言介面
前言:跨語言互操作的經典橋樑 在早期 PC 開發環境中,BASIC (特別是編譯型 BASIC 如 QuickBASIC) 常需載入並執行外部 .EXE/.CO
經典 TSR 程式實作:掛鐘鬧鐘常駐程式
前言:記憶體常駐程式的黃金年代 在多工尚未普及的 DOS 年代,Terminate-and-Stay-Resident (TSR) 程式是實現「背景執行」的唯一
8086組合語言實作:簡易系統時間顯示程式
前言:DOS 時代的時間獲取 在現代作業系統中,獲取系統時間只需呼叫高階 API 即可。但在 16 位元的 DOS 時代,程式設計師必須直接與硬體互動,透過 B
組語原始碼系列:Lattice C 程式 Ctrl-Break 捕獲處理常式 (BREAK.ASM)
前言 BREAK.ASM 為 Lattice C 編譯器提供的組語模組,讓 C 程式能捕獲使用者按下 Ctrl+C 或 Ctrl+Break,避免程式被 DOS
組語原始碼系列:BASIC 編譯程式啟動模組 (BASMAIN.ASM)
前言 BASMAIN.ASM 是 Microsoft BASIC 編譯器 (BC) 產生的可執行檔前置模組,負責在 BASIC 主程式 ($$main) 執行前
DOS 時代組合語言原始碼賞析:BRK2 完整版 Ctrl-Break 處理模組
前言 本文收錄 BRK2.ASM,為 BRK 的增強版,提供完整的 Ctrl-Break 處理模組介面:安裝/移除處理常式、保存/恢復舊向量、封裝檢查函數 (自
DOS 時代組合語言原始碼賞析:BRK Ctrl-Break 中斷處理器 (簡易版)
前言 本文收錄 BRK.ASM,功能為攔截 DOS Ctrl-Break 中斷 (INT 23h),在中斷處理常式中設定旗標變數 brkflag,供主程式輪詢檢
組語原始碼系列:字元對照表 (CTABLE.ASM)
前言 這是一個極簡的 DOS 時代組語資料檔,定義一個 256 位元組的字元對照表 ctable,用於字元代碼轉換或鍵盤掃描碼對應。雖然規模微小,但展示了組語資
DOS 時代組合語言原始碼賞析:CALC 計算機常駐程式 (TSR) 啟動器
前言 本文收錄 CALC.ASM,功能為檢測並啟動常駐記憶體中的計算機程式 (PEMATH)。屬於 TSR (Terminate and Stay Reside
DOS 時代組合語言經典原始碼賞析:BURNOUT 螢幕保護裝置控制程式
前言 本文收錄 BURNOUT.ASM (CJ Dunford, 1985),功能為讀取/設定螢幕保護裝置 (burnout device) 參數:空閒時間 (
DOS 時代組合語言經典原始碼賞析:CLEANF 標準輸入輸出過濾器
前言 本文收錄 CLEANF.ASM (Bob Taylor 改自 Ray Duncan 的 CLEAN),功能相同但改為標準輸入/輸出/錯誤過濾器:從 STD
DOS 時代組合語言經典原始碼賞析:CLEAN 文字檔過濾工具
前言 本文收錄 Ray Duncan 1983 年編寫的 CLEAN.ASM,功能為過濾文字檔:移除控制碼 (保留 LF/CR/FF)、去除高位元、展開 Tab