Modular (386) BIOS v3.1
สำหรับ PC/XT v3.0+ และ AT v3.02+ ด้วย การทดสอบไม่ได้ดำเนินการตามลำดับตัวเลขเสมอไป
รหัส ความหมาย
01 การทดสอบหน่วยประมวลผลส่วนที่ 1 ตรวจสอบสถานะหน่วยประมวลผล ทดสอบแฟล็กสถานะหน่วยประมวลผลต่อไปนี้: ตั้งค่า/ล้าง carry; zero; sign และ overflow (ร้ายแรง) BIOS ตั้งค่าแต่ละแฟล็ก; ตรวจสอบว่ามีการตั้งค่าแล้ว และปิดแต่ละแฟล็กเพื่อตรวจสอบสถานะ ความล้มเหลวของแฟล็กหมายถึงข้อผิดพลาดร้ายแรง เอาต์พุต: วนซ้ำไม่รู้จบหากล้มเหลว; ดำเนินการทดสอบต่อหากถูกต้อง รีจิสเตอร์: AX/BP
02 กำหนดประเภท POST; ไม่ว่าจะเป็นปกติ (บูตเมื่อ POST เสร็จสิ้น) หรือการผลิต (รัน 01-05 ในลูป) ซึ่งมักจะตั้งค่าโดยจัมเปอร์บนเมนบอร์ดบางรุ่น ล้มเหลวหากบัฟเฟอร์ส่วนต่อประสานแป้นพิมพ์เต็มไปด้วยข้อมูล เอาต์พุต: วนซ้ำไม่รู้จบหากล้มเหลว; ดำเนินการทดสอบต่อหากถูกต้อง รีจิสเตอร์: AX/BX/BP
03 ล้างส่วนต่อประสานแป้นพิมพ์ 8042 ส่งคำสั่ง TEST_KBRD ตรวจสอบ (AAh) เอาต์พุต: วนซ้ำไม่รู้จบหากล้มเหลว; ดำเนินการทดสอบต่อหากถูกต้อง รีจิสเตอร์: AX/BX/BP
04 รีเซ็ตคอนโทรลเลอร์แป้นพิมพ์ 8042 ตรวจสอบ AAh กลับจาก 03 วนซ้ำไม่รู้จบหากการทดสอบล้มเหลว รีจิสเตอร์: AX/BX/BP
05 รับสถานะการผลิตของคอนโทรลเลอร์แป้นพิมพ์ 8042; อ่านพอร์ตอินพุตผ่านคอนโทรลเลอร์แป้นพิมพ์เพื่อกำหนดการทำงานของโหมดการผลิตหรือปกติ รีเซ็ตระบบหากเป็นการผลิต; เช่น หาก 02 พบว่าสถานะเป็นการผลิต จะทริกเกอร์การรีเซ็ต และ 01-05 จะวนซ้ำอย่างต่อเนื่อง เอาต์พุต: วนซ้ำไม่รู้จบหากล้มเหลว; ดำเนินการทดสอบต่อหากถูกต้อง รีจิสเตอร์: AX/BX/BP
06 เริ่มต้นชิปบนชิป LSI บนบอร์ด ปิดใช้งานวงจรวิดีโอสีและขาวดำ/วงจรพาริตี/ชิป DMA (8237); รีเซ็ตหน่วยประมวลผลทางคณิตศาสตร์; เริ่มต้นตัวจับเวลา 1 (8255); ล้างชิป DMA และรีจิสเตอร์เพจทั้งหมด และไบต์ปิดเครื่อง CMOS
07 การทดสอบหน่วยประมวลผล 2 อ่าน เขียน และตรวจสอบรีจิสเตอร์ CPU ทั้งหมด ยกเว้น SS/SP/BP ด้วยรูปแบบข้อมูล FF และ 00
08 เริ่มต้นตัวจับเวลา CMOS/RTC และอัปเดตรอบตัวจับเวลา; โดยปกติตัวจับเวลา CMOS (8254); (8237A) DMA; การขัดจังหวะ (8259) และ EPROM
09 ผลรวม EPROM; การทดสอบล้มเหลวหากไม่เท่ากับ 0 ตรวจสอบผลรวมข้อความลงชื่อเข้าใช้ด้วย
0A เริ่มต้นส่วนต่อประสานวิดีโอ; โดยเฉพาะรีจิสเตอร์ 6845 เป็น 80 ตัวอักษรต่อแถว และ 25 แถวต่อหน้าจอ และ 8/14 เส้นสแกนต่อแถวสำหรับขาวดำ/สี; เส้นสแกนแรกของเคอร์เซอร์ 6/11; เส้นสแกนสุดท้ายของเคอร์เซอร์ 7/12; รีเซ็ตออฟเซ็ตการแสดงผลเป็น 0
0B ทดสอบตัวจับเวลา (8254) ช่อง 0 ดูด้านล่างด้วย
0C ทดสอบตัวจับเวลา (8254) ช่อง 1
0D ทดสอบตัวจับเวลา (8254) ช่อง 2
0E ทดสอบไบต์ปิดเครื่อง CMOS โดยใช้อัลกอริทึมบิตเดิน
0F ทดสอบ CMOS แบบขยาย บนเมนบอร์ดที่รองรับการกำหนดค่า CMOS แบบขยาย เช่น C & T ตาราง BIOS ของข้อมูล CMOS จะกำหนดค่าชิปเซ็ตซึ่งมีพื้นที่จัดเก็บแบบขยาย ทำให้คุณสามารถเก็บการกำหนดค่าไว้ได้เมื่อปิดเครื่อง ผลรวมถูกใช้สำหรับการตรวจสอบ
10 ทดสอบช่อง DMA 0 การทดสอบนี้และสองการทดสอบถัดไปจะเริ่มต้นชิป DMA และทดสอบด้วยรูปแบบ AA/55/FF/00 ที่อยู่พอร์ตถูกใช้เพื่อตรวจสอบวงจรที่อยู่ไปยังรีจิสเตอร์วงจรเพจ DMA
11 ช่อง DMA 1
12 รีจิสเตอร์เพจ DMA
13 ทดสอบส่วนต่อประสานคอนโทรลเลอร์แป้นพิมพ์
14 ทดสอบวงจรสลับการรีเฟรชหน่วยความจำ
15 หน่วยความจำระบบ 64K แรก ซึ่ง BIOS ใช้; การทดสอบพาริตีอย่างละเอียด
16 ตารางเวกเตอร์การขัดจังหวะ ตั้งค่าและโหลดตารางเวกเตอร์การขัดจังหวะในหน่วยความจำสำหรับ 8259 PIC
17 การดำเนินการ I/O ของวิดีโอ เริ่มต้นวิดีโอ; ROM ของ EGA และ VGA ถูกใช้หากมี
18 การทดสอบหน่วยความจำวิดีโอสำหรับการ์ด CGA และขาวดำ (EGA และ VGA มีขั้นตอนของตัวเอง)
19 ทดสอบบิตมาสก์ 8259 - ช่อง 1 สายการขัดจังหวะถูกปิดและเปิดสลับกัน ความล้มเหลวเป็นสิ่งที่ร้ายแรง
1A บิตมาสก์ 8259 - ช่อง 2
1B ระดับแบตเตอรี่ CMOS; ตรวจสอบว่าบิตสถานะแบตเตอรี่ตั้งค่าเป็น 1 0 อาจบ่งบอกว่าแบตเตอรี่เสียที่ CMOS
1C ทดสอบข้อมูลผลรวม CMOS ที่ 2E และ 2Fh และผลรวม CMOS แบบขยายหากมี
1D การกำหนดค่าระบบจากค่า CMOS หากผลรวมถูกต้อง
1E ขนาดหน่วยความจำระบบถูกกำหนดโดยการเขียนไปยังที่อยู่จาก 0-640K ต่อเนื่องจนกว่าจะไม่มีการตอบสนอง จากนั้นขนาดจะถูกเปรียบเทียบกับ CMOS และตั้งค่าแฟล็กหากไม่ตรงกัน จากนั้นข้อความแสดงข้อผิดพลาดจะปรากฏขึ้น
1F ทดสอบหน่วยความจำจากด้านบนของ 64K ไปยังด้านบนของหน่วยความจำที่พบ โดยการเขียนรูปแบบ FFAA และ 5500 และอ่านกลับทีละไบต์เพื่อตรวจสอบ
20 บิตการขัดจังหวะ 8259 ที่ค้าง
21 บิต NMI ที่ค้าง (การตรวจสอบพาริตีหรือช่อง I/O)
22 ฟังก์ชัน 8259
23 ตรวจสอบโหมดป้องกัน; โหมดเสมือน 8086 และโหมดเพจ
24 เช่นเดียวกับ 1E แต่สำหรับหน่วยความจำแบบขยายจาก 1-16Mb บนระบบ 286/386SX และ 64 Mb บน 386 ขึ้นไป ค่าที่พบจะถูกเปรียบเทียบกับการตั้งค่า CMOS
25 ทดสอบหน่วยความจำแบบขยายที่พบด้านบนโดยใช้โหมดเพจจิ้งเสมือน 8086 และเขียนรูปแบบ FFFF/AA55/0000
26 ข้อยกเว้นโหมดป้องกัน; ทดสอบด้านอื่นๆ ของการทำงานของโหมดป้องกัน
27 ทดสอบการควบคุมแคช (386/486) หรือ Shadow RAM ระบบที่มี CGA และ MDA บ่งชี้ว่า shadow RAM ของวิดีโอเปิดใช้งานอยู่ แม้ว่าจะไม่มี BIOS ROM สำหรับ shadow
28 ตั้งค่าคอนโทรลเลอร์แคชหรือคอนโทรลเลอร์แป้นพิมพ์ 8242 การตรวจจับและสนับสนุนคอนโทรลเลอร์แป้นพิมพ์ Intel 8242/8248 ที่เป็นตัวเลือก
29 สำรองไว้
2A เริ่มต้นแป้นพิมพ์และคอนโทรลเลอร์
2B เริ่มต้นไดรฟ์ฟล็อปปี้และคอนโทรลเลอร์
2C ตรวจจับและเริ่มต้นพอร์ตอนุกรม
2D ตรวจจับและเริ่มต้นพอร์ตขนาน
2E เริ่มต้นฮาร์ดไดรฟ์และคอนโทรลเลอร์
2F ตรวจจับและเริ่มต้นหน่วยประมวลผลทางคณิตศาสตร์
30 สำรองไว้
31 ตรวจจับและเริ่มต้น Option ROM เริ่มต้น ROM ใดๆ ระหว่าง C800-EFFF
3B เริ่มต้นแคชรองด้วยชิปเซ็ต OPTi (เฉพาะ 486)
CC ปิดตัวจัดการ NMI ตรวจจับ NMI ที่ไม่ได้รับการดักจับระหว่างบูต
EE ข้อยกเว้นของหน่วยประมวลผลที่ไม่คาดคิด
FF ความพยายามบูต; หาก POST เสร็จสิ้นและส่วนประกอบทั้งหมดเริ่มต้นโดยไม่มีข้อผิดพลาด
ไม่มีความคิดเห็น:
แสดงความคิดเห็น