早期 DOS 下 Turbo C/C++ 使用 Borland Graphics Interface (BGI) graphics.h 撰寫的簡易遊戲片段。現代環境已無法直接編譯執行,僅供教學/懷舊參考。
int86(0x10, ...) 設定 VGA 256 色模式 (0x13, 320x200) 或文字模式 (0x03)。unsigned char far *video_buff = (char far*)0xA0000000L 指向顯存段地址,繞過 BGI 函式直接畫點/線/矩形,效率極高。setvect(9, NewInt9) 取代 BIOS 鍵盤中斷 (INT 9h),建立鍵盤狀態陣列 key_state[128],主迴圈輪詢非阻塞讀取。h_line, v_line, p_pixel, s_square, r_rectangle, fillRectangle 封裝基本圖元。// 全域狀態
int xx, yy; // 我方座標
int x1, y1; // 敵方座標
int youlife, mylife; // 血量
int board[100][170]; // 邏輯佔用網格
// 關鍵函式
void me() { // 我方移動/出拳/碰撞檢測
// 處理鍵盤輸入 sxzy (編碼後的掃描碼)
// 更新 xx, yy
// 出拳邏輯 zx (SPACE/其它鍵)
// 碰撞判定 → 扣血
}
void enemy() { ... } // 敵方 AI (片段中未完整呈現)
void ground() { ... } // 畫邊框
void delzx() { ... } // 延時刪除拳頭視覺效果
far 指標、int86、實模式顯存地址accumulator 模式展示了 90 年代 DOS 遊戲開發的核心技術:實模式記憶體、硬體中斷、直接顯存操作、BGI 庫封裝。對理解計算機圖形學基礎、作業系統演進、嵌入式裸機開發仍有參考意義。