ยินดีต้อนรับสู่หน้าแรกของโครงการ DOSBox-X ที่อยู่บน GitHub
เว็บไซต์ของ DOSBox-X
หน้าวิกิของ DOSBox-X
ช่อง Discord สำหรับโครงการ DOSBox-X
ข่าวประชาสัมพันธ์
การพัฒนา/การสร้างยามค่ำคืน
คำแนะนำในการติดตั้ง
คำแนะนำในการสร้าง
รู้เบื้องต้นเกี่ยวกับ DOSBox-X
คุณสมบัติเด่นใน DOSBox-X
DOSBox-X รองรับแพลตฟอร์มและการเผยแพร่
ความเข้ากันได้กับโปรแกรมและเกม DOS
มีส่วนร่วมใน DOSBox-X
รูปแบบการพัฒนาและการเปิดตัว DOSBox-X
การทดลองพัฒนาในอนาคต
ความคิดเห็นเกี่ยวกับความปลอดภัยของซอฟต์แวร์
คุณลักษณะที่ DOSBox-X ไม่น่าจะรองรับในขณะนี้
ที่มาและประวัติของโครงการ DOSBox-X
ส้อม DOSBox-X ที่รู้จัก
รองรับการแปลภาษาต่างประเทศและรูปแบบแป้นพิมพ์
DOSBox-X เป็นโปรแกรมจำลอง DOS ข้ามแพลตฟอร์มตามโครงการ DOSBox
เช่นเดียวกับ DOSBox มันจำลองพีซีที่จำเป็นสำหรับการรันเกมและแอพพลิเคชั่น MS-DOS จำนวนมากที่ไม่สามารถรันบนพีซีและระบบปฏิบัติการสมัยใหม่ได้ อย่างไรก็ตาม แม้ว่าจุดสนใจหลักของ DOSBox คือการรันเกม DOS แต่ DOSBox-X ยังไปไกลกว่านี้มาก เริ่มต้นจากการแยกโครงการ DOSBox โดยยังคงรักษาความเข้ากันได้กับฐานเกม DOS ที่กว้างขวาง และเกม DOSBox ของ DOS ได้รับการออกแบบมาเพื่อ แต่ยังเป็นแพลตฟอร์มสำหรับการเรียกใช้แอปพลิเคชัน DOS รวมถึงการเลียนแบบสภาพแวดล้อมเพื่อเรียกใช้ Windows 3.x, 9x และ ME และซอฟต์แวร์ที่เขียนขึ้นสำหรับ Windows เวอร์ชันเหล่านั้น ด้วยการเพิ่มการสนับสนุนอย่างเป็นทางการสำหรับ Windows 95, 98, การจำลอง ME และการเร่งความเร็ว เราหวังว่าเกมและแอปพลิเคชัน Windows เก่าเหล่านั้นจะสามารถเพลิดเพลินหรือใช้งานได้อีกครั้ง นอกจากนี้ DOSBox-X ยังเพิ่มการรองรับการจำลอง DOS/V และ NEC PC-98 เพื่อให้คุณสามารถเล่นเกม DOS/V และ PC-98 ได้
เมื่อเปรียบเทียบกับ DOSBox แล้ว DOSBox-X จะเน้นที่การจำลองทั่วไปและความแม่นยำมากกว่า เพื่อช่วยรันเกมและแอปพลิเคชัน DOS, Windows 3.x/9x/ME ตลอดจนวัตถุประสงค์ในการอนุรักษ์ประวัติศาสตร์ การทดสอบ และการพัฒนา DOS อย่างต่อเนื่อง เราปรารถนาที่จะใช้การจำลองที่แม่นยำ แม่นยำเพียงพอที่จะช่วยสร้างสิ่งใหม่ การพัฒนา DOS เป็นไปได้ด้วยความมั่นใจว่าโปรแกรมจะทำงานอย่างถูกต้องบนระบบ DOS จริง DOSBox-X มีคุณสมบัติต่างๆ สำหรับวัตถุประสงค์ที่แตกต่างกัน (บางส่วนถูกย้ายจากโครงการอื่น) ซึ่งถูกนำมาใช้เป็นการเปลี่ยนแปลงที่เพิ่มขึ้นเนื่องจากถูกแยกจาก DOSBox SVN Daum DOSBox-X มีหลายวิธีในการปรับแต่งและกำหนดค่าเครื่องเสมือน DOS เนื่องจากเราเชื่อว่าวิธีที่ดีกว่าในการจำลองแพลตฟอร์ม DOS คือการมอบตัวเลือกทั้งหมดที่ผู้ใช้ต้องการในการจำลองทุกอย่างตั้งแต่ระบบ IBM PC ดั้งเดิมไปจนถึงเวอร์ชันล่าสุด การกำหนดค่าของปี 1990 ไม่ว่าจะต้องใช้อะไรก็ตามเพื่อทำให้เกมหรือแพ็คเกจซอฟต์แวร์ของคุณทำงานได้ เป้าหมายของเราคือการทำให้ DOSBox-X เป็นแพ็คเกจการจำลองที่สมบูรณ์ซึ่งครอบคลุมสถานการณ์ระบบที่ใช้ DOS และ Windows 9x ก่อนปี 2000 ทั้งหมด รวมถึงอุปกรณ์ต่อพ่วง มาเธอร์บอร์ด CPU และฮาร์ดแวร์ทุกรูปแบบที่สร้างขึ้นสำหรับฮาร์ดแวร์พีซีในยุคนั้น
โปรดตรวจสอบหน้าแรกของ DOSBox-X เพื่อดูแพ็คเกจทั่วไปของรุ่นล่าสุดสำหรับแพลตฟอร์มที่รองรับ รวมถึงภาพหน้าจอของโปรแกรมและเกม DOS บางโปรแกรมที่ทำงานใน DOSBox-X นอกจากนี้ โปรดดูหน้า INSTALL สำหรับคำแนะนำในการติดตั้ง DOSBox-X และแพ็คเกจอื่นๆ และหน้า Releases สำหรับการเก็บถาวรของ DOSBox-X เวอร์ชันที่เผยแพร่ทั้งหมด สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ DOSBox-X เช่น การตั้งค่าและใช้งาน DOSBox-X รวมถึงคำแนะนำการใช้งาน โปรดอ่านคู่มือผู้ใช้ใน DOSBox-X Wiki ขั้นตอนในการสร้างซอร์สโค้ดสามารถพบได้ในหน้า BUILD
DOSBox-X เป็นโอเพ่นซอร์สโดยสมบูรณ์และไม่มีค่าใช้จ่ายในการใช้งานและแจกจ่าย ได้รับการเผยแพร่ภายใต้ GNU General Public License เวอร์ชัน 2 ดูเพิ่มเติมที่หน้าเกี่ยวกับ DOSBox-X สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเป้าหมายและเป้าหมายที่ไม่ใช่ของ DOSBox-X พร้อมด้วยลิงก์ไปยังโครงการอื่นๆ
โครงการนี้มีจรรยาบรรณ โปรดอ่านข้อมูลทั่วไปเกี่ยวกับการบริจาคหรือรับการสนับสนุนจากโครงการ
นำเสนอโดย: joncampbell123 (โจนาธาน แคมป์เบลล์)
แม้ว่า DOSBox-X จะอิงตามโปรเจ็กต์ DOSBox แต่ปัจจุบัน DOSBox-X ก็เป็นโปรเจ็กต์ที่แยกจากกัน เนื่องจากทั้งคู่มีกำหนดการและลำดับความสำคัญในการพัฒนาแยกกัน ตัวอย่างเช่น จุดสนใจหลักของ DOSBox คือการรันเกม DOS ในขณะที่ DOSBox-X ก้าวไปไกลกว่านี้ ในเวลานี้ DOSBox-X มีคุณสมบัติมากมายที่ไม่มีอยู่ใน DOSBox ตัวอย่างของคุณสมบัติดังกล่าวได้แก่:
เมนูแบบเลื่อนลง GUI และเครื่องมือกำหนดค่ากราฟิกในตัว
บันทึกและโหลดสถานะการสนับสนุน (พร้อมช่องบันทึกสูงสุด 100 ช่อง + ไฟล์บันทึก)
การจำลอง NEC PC-98, AX, DOS/V และการสนับสนุนภาษาจีน/ญี่ปุ่น/เกาหลี
ส่วนต่อประสานผู้ใช้ที่แปลได้อย่างสมบูรณ์ (พร้อมไฟล์ภาษา)
การสนับสนุนและความเข้ากันได้กับแอปพลิเคชัน DOS ที่ดีขึ้น
รองรับคำสั่ง DOS เพิ่มเติมและเครื่องมือภายนอกในตัว
รองรับวิธีต่างๆ ในการปรับแต่งไดรฟ์ Z: ภายใน
รองรับประเภท CPU เช่นคำสั่ง Pentium Pro, II, III และ MMX
รองรับอินเทอร์เฟซ IDE และการจำลอง Windows 3.x/9x ที่ได้รับการปรับปรุง
รองรับชื่อไฟล์แบบยาวและอิมเมจดิสก์ FAT32 (ฟีเจอร์ DOS 7+)
รองรับเอาต์พุตการปรับขนาดพิกเซลที่สมบูรณ์แบบเพื่อคุณภาพของภาพที่ดีขึ้น
รองรับเอาต์พุตแบบอักษร TrueType (TTF) สำหรับโปรแกรม DOS ในโหมดข้อความ
รองรับคุณสมบัติการพิมพ์ ไม่ว่าจะเป็นเครื่องพิมพ์จริงหรือเครื่องพิมพ์เสมือน
รองรับการเริ่มต้นโปรแกรมให้ทำงานบนระบบโฮสต์ (ตัวเลือก -hostrun)
รองรับชิป 3dfx Voodoo และการจำลอง Glide (รวมถึง Glide wrapper)
รองรับคิวชีทที่มีแทร็ก FLAC, MP3, WAV, OGG Vorbis และ Opus CD-DA
รองรับซินธิไซเซอร์ FluidSynth MIDI (พร้อมฟอนต์เสียง) และการจำลอง MT-32
รองรับ NE2000 Ethernet สำหรับคุณสมบัติเครือข่ายและการแมปสมุดโทรศัพท์ของโมเด็ม
รองรับฟีเจอร์ต่างๆ เช่น V-Sync, โอเวอร์สแกนขอบ และการสลับสเตอริโอ
แถมยังอีกมากมาย..
แม้ว่าคุณสมบัติส่วนใหญ่ใน DOSBox-X จะเป็นข้ามแพลตฟอร์ม แต่ DOSBox-X ก็มีคุณสมบัติที่โดดเด่นหลายประการที่ขึ้นอยู่กับแพลตฟอร์ม เช่น เอาต์พุต Direct3D และรองรับการติดตั้งไดรฟ์อัตโนมัติบนแพลตฟอร์ม Windows คุณสมบัติเหล่านี้ไม่สามารถย้ายไปยังแพลตฟอร์มอื่นได้อย่างง่ายดาย ข้อมูลเพิ่มเติมเกี่ยวกับคุณสมบัติของ DOSBox-X สามารถพบได้ในหน้าไฮไลต์คุณสมบัติของ DOSBox-X ใน DOSBox-X Wiki
DOSBox-X รองรับทั้ง SDL 1.2 และ SDL 2.0 อย่างเป็นทางการ รองรับทั้งบิลด์ 32 บิตและ 64 บิต
DOSBox-X เป็นโปรแกรมจำลอง DOS ข้ามแพลตฟอร์ม ดังนั้นระบบปฏิบัติการโฮสต์หลักทั้งหมดจึงได้รับการสนับสนุนอย่างเป็นทางการ รวมถึง:
Windows (XP หรือสูงกว่า), 32 บิต และ 64 บิต
Linux (พร้อม X11), 32 บิต และ 64 บิต
macOS (Mac OS X), Intel และ ARM 64 บิต
DOS (MS-DOS 5.0+ หรือเทียบเท่า)
ไบนารี Windows (ทั้ง 32 บิตและ 64 บิต), แพ็คเกจ Linux Flatpak หรือ RPM (64 บิต), แพ็คเกจ macOS (64 บิต) และเวอร์ชัน DOS ได้รับการเผยแพร่อย่างเป็นทางการเป็นระยะ ๆ โดยทั่วไปจะเป็นวันสุดท้ายของเดือนหรือวันแรก วันของเดือนถัดไป โปรดตรวจสอบหน้าแรกของ DOSBox-X และหน้าติดตั้งเพื่อดูแพ็คเกจ DOSBox-X ล่าสุดบนแพลตฟอร์มเหล่านี้และคำแนะนำในการติดตั้งเพิ่มเติม คุณยังสามารถค้นหาแพ็คเกจ ZIP หรือตัวติดตั้ง Windows สำหรับเวอร์ชันที่วางจำหน่ายทั้งหมดและบันทึกการเปลี่ยนแปลงได้ในหน้าการเผยแพร่ โปรแกรมติดตั้ง Window มีจุดมุ่งหมายเพื่อทำให้กระบวนการติดตั้งง่ายขึ้น และช่วยให้คุณสามารถเริ่ม DOSBox-X ได้ทันทีที่การติดตั้งสิ้นสุดลง
สำหรับการรัน DOSBox-X ในระบบ DOS จริง (MS-DOS หรือที่เข้ากันได้) คุณจะพบแพ็คเกจ HX-DOS ที่ใช้ HX DOS Extender ที่มีให้ใช้งานฟรี พิมพ์ DOSBOX-X เพื่อเรียกใช้จากระบบ DOS นอกจากนี้ยังมีแพ็คเกจ DOS LOADLIN ซึ่งสามารถทำงานได้จากภายใน DOSBox-X เอง นอกเหนือจากระบบ DOS อย่างไรก็ตาม โปรดทราบว่าคุณสมบัติบางอย่างของ DOSBox-X ที่รองรับในแพลตฟอร์มอื่นไม่สามารถรองรับในสภาพแวดล้อม DOS จริงได้
การพัฒนา (ดูตัวอย่าง) บิลด์ที่มีไว้สำหรับการทดสอบสำหรับแพลตฟอร์มต่างๆ ก็มีให้จากหน้า DOSBox-X Development Builds
ซอร์สโค้ดแบบเต็มได้รับการจัดเตรียมอย่างเป็นทางการใน DOSBox-X แต่ละรุ่น ซึ่งอาจคอมไพล์เพื่อรันบนระบบปฏิบัติการข้างต้นและอาจเป็นระบบปฏิบัติการอื่นด้วย คุณยังสามารถรับซอร์สโค้ดการพัฒนาล่าสุดจากพื้นที่เก็บข้อมูลได้โดยตรง ดูเพิ่มเติมที่หน้า BUILD สำหรับข้อมูลเกี่ยวกับการสร้าง/การคอมไพล์ซอร์สโค้ด DOSBox-X
ด้วยเป้าหมายสุดท้ายในการเป็นแพ็คเกจการจำลอง DOS ที่สมบูรณ์ซึ่งครอบคลุมสถานการณ์ฮาร์ดแวร์ที่ใช้ DOS ก่อนปี 2000 และ Windows 3.x/9x เรากำลังพยายามทำให้แน่ใจว่าเกมและแอพพลิเคชั่น DOS ส่วนใหญ่จะทำงานใน DOSBox-X และรวมถึงโปรแกรม DOS ทั้งโหมดข้อความและโหมดกราฟิก Microsoft Windows เวอร์ชันที่ใช้ DOS เป็นส่วนใหญ่ (เช่น Windows 3.x และ 9x) ได้รับการสนับสนุนอย่างเป็นทางการโดย DOSBox-X เช่นกัน โปรดทราบว่าการตั้งค่าการกำหนดค่าบางอย่างอาจจำเป็นต้องเปลี่ยนจากค่าเริ่มต้นเพื่อให้บางโปรแกรมเหล่านี้ทำงานได้อย่างราบรื่น ดูที่ DOSBox-X Wiki สำหรับข้อมูลเพิ่มเติม
มีความพยายามเพื่อช่วยในการพัฒนา DOS อย่างต่อเนื่องโดยพยายามจำลองฮาร์ดแวร์อย่างถูกต้อง ซึ่งเป็นสาเหตุที่ DOSBox-X เคยมุ่งเน้นไปที่ซอฟต์แวร์ demoscene (โดยเฉพาะอะไรก็ตามก่อนปี 1996) เนื่องจากยุคของฉาก MS-DOS นั้นมีแนวโน้มที่จะมีทั้งหมด ลักษณะของเทคนิคฮาร์ดแวร์แปลก ๆ ข้อบกพร่อง และปัญหาด้านความเร็วซึ่งทำให้สิ่งเหล่านั้นเป็นสิ่งที่สมบูรณ์แบบสำหรับทดสอบความแม่นยำในการจำลอง ยิ่งกว่าเกม DOS รุ่นเก่าเสียอีก แต่ไม่ต้องสงสัยเลยว่า เรากำลังพยายามอย่างเต็มที่ในการทดสอบ DOSBox-X กับเกมและแอพพลิเคชั่น DOS อื่นๆ รวมถึงโปรแกรม PC-98 (ส่วนใหญ่เป็นเกม)
เราได้เพิ่มคุณสมบัติใหม่และทำการปรับปรุงอื่นๆ ใน DOSBox-X เวอร์ชันใหม่ทุกเวอร์ชัน ดังนั้นความเข้ากันได้กับโปรแกรมและเกมของ DOS จึงได้รับการปรับปรุงเมื่อเวลาผ่านไป หากคุณมีปัญหากับโปรแกรมหรือเกม DOS ใดโดยเฉพาะ โปรดอย่าลังเลที่จะโพสต์ไว้ในเครื่องมือติดตามปัญหา
เราสนับสนุนผู้มีส่วนร่วมรายใหม่โดยการขจัดอุปสรรคในการเข้ามา ยินดีต้อนรับแนวคิดและแพตช์เสมอ แม้ว่าจะไม่จำเป็นต้องได้รับการยอมรับก็ตาม
หากคุณต้องการฟีเจอร์หรือการเปลี่ยนแปลงนั้นจริงๆ และการเปลี่ยนแปลงของคุณไม่ได้รับการยอมรับในโปรเจ็กต์หลักนี้ (หรือคุณเพียงต้องการยุ่งกับโค้ด) อย่าลังเลที่จะแยกโปรเจ็กต์นี้และทำการเปลี่ยนแปลงในทางแยกของคุณ
เนื่องจาก joncampbell123 มีเวลาจำกัดในการทำงานบน DOSBox-X จึงขอขอบคุณความช่วยเหลือเป็นอย่างยิ่ง:
การทดสอบ
คุณสมบัติของ DOSBox-X เช่น คำสั่งและฟังก์ชันต่างๆ
การทำงานปกติของเกมและแอพพลิเคชั่น DOS
รองรับระบบเกสต์ Windows 1.0/2.x/3.x และ Windows 95/98/ME
ความแม่นยำในการจำลองซอฟต์แวร์หรือฮาร์ดแวร์ เช่น ซอฟต์แวร์ demoscene เป็นต้น
เขียน Unit Tests เพิ่มเติมเพื่อทดสอบฟังก์ชันต่างๆ (ดู Unit Test ที่มีอยู่ใน Tests/)
การพัฒนาซอฟต์แวร์ DOS ใหม่ (อาจได้รับความช่วยเหลือจาก DOSLIB/DOSLIB2)
การแก้ไขข้อบกพร่อง แพตช์ การปรับปรุง การปรับแต่ง
ข้อเสนอแนะ แนวคิด ความช่วยเหลือของผู้ใช้รายอื่น และ/หรือการสนทนาทั่วไป
รองรับแพลตฟอร์ม (Windows, Linux, macOS, DOS แต่ยินดีต้อนรับแพลตฟอร์มอื่น ๆ )
เอกสาร การแปลไฟล์ภาษา และแพ็คเกจซอฟต์แวร์
หมายเหตุเกี่ยวกับเกม DOS และ Win3.x/9x แอปพลิเคชัน การแฮ็กหรือลูกเล่นแปลกๆ ฯลฯ
ดูหน้าการมีส่วนร่วมสำหรับแนวทางการสนับสนุนเพิ่มเติม หากคุณต้องการปรับแต่งหรือเขียนโค้ดและไม่รู้ว่าต้องทำอย่างไร โปรดไปที่เครื่องมือติดตามปัญหาเพื่อรับแนวคิด
สำหรับคำอธิบายเพิ่มเติมเกี่ยวกับซอร์สโค้ด โปรดดูที่หน้าคำอธิบายซอร์สโค้ด DOSBox-X ข้อมูลเกี่ยวกับการสร้างซอร์สโค้ดสามารถพบได้ในหน้า BUILD
ข้อมูลเกี่ยวกับดีบักเกอร์ยังมีอยู่ในหน้าดีบักเกอร์ DOSBox-X
ดูเพิ่มเติมที่หน้า CREDITS สำหรับข้อมูลการให้เครดิต
เพื่อให้กระบวนการพัฒนาของ DOSBox-X ราบรื่นยิ่งขึ้น เราได้นำรูปแบบการพัฒนา/การเผยแพร่ทั่วไปสำหรับ DOSBox-X มาใช้ รูปแบบการเปิดตัวปัจจุบันสำหรับ DOSBox-X เป็นดังนี้:
เวอร์ชัน DOSBox-X ใหม่จะถูกเปิดเผยต่อสาธารณะในช่วงเริ่มต้น (โดยปกติจะเป็นวันแรก) ของแต่ละเดือน รวมถึงซอร์สโค้ดและการเปิดตัวไบนารี่ จากนั้น การพัฒนา DOSBox-X จะเปิดขึ้นอีกครั้งสำหรับคุณสมบัติใหม่ คำขอดึงข้อมูล ฯลฯ จะไม่มีการเพิ่มคุณสมบัติใหม่ 6 วันก่อนสิ้นเดือน แต่จะมีเพียงการแก้ไขข้อบกพร่องเท่านั้น วันสุดท้ายของเดือนคือวัน build ของ DOSBox-X ที่จะคอมไพล์สำหรับไบนารี่รีลีสในวันที่ 1 ของเดือนถัดไป ดังนั้นจะไม่มีการเปลี่ยนแปลงซอร์สโค้ดในวันนี้ รวมถึงคำขอดึงข้อมูลหรือการแก้ไขข้อบกพร่อง
ตัวอย่างเช่น สมมติว่าเดือนสิงหาคมเป็นเดือนปัจจุบัน - วันที่ 25 สิงหาคมจะเป็นวันที่คำขอดึงข้อมูลจะถูกละเว้น เว้นแต่จะมีการแก้ไขข้อบกพร่องเท่านั้น วันที่ 31 สิงหาคม (วันสุดท้ายของเดือนสิงหาคม) จะเป็นวันสร้าง DOSBox-X
นี่คือรูปแบบการเปิดตัวอย่างเป็นทางการของ DOSBox-X แม้ว่าอาจมีการเปลี่ยนแปลงในภายหลังก็ตาม
การทดลองที่กระจัดกระจายและโปรเจ็กต์ขนาดเล็กอยู่ในการทดลอง/เพื่อเป็นข้อพิสูจน์สำหรับการแก้ไข DOSBox-X และโค้ดเบสในอนาคต
การทดลองเหล่านี้อาจมีหรือไม่มีการแก้ไขในอนาคตหรือเวอร์ชันถัดไป
ยินดีรับฟังความคิดเห็นเกี่ยวกับการทดสอบ เพื่อช่วยปรับปรุงโค้ดโดยรวม
นอกจากนี้ยังมีแพตช์ในการรวมแพตช์/สำหรับการรวมฟีเจอร์ที่เป็นไปได้ในอนาคต เราได้รวมแพตช์ที่พัฒนาโดยชุมชนจำนวนมากเข้ากับ DOSBox-X ในอดีต
ดูเพิ่มเติมที่ TODO.txt ทั่วไปสำหรับแผนการพัฒนา DOSBox-X ในอนาคต
DOSBox-X ไม่สามารถอ้างสิทธิ์ได้ว่าเป็นแอปพลิเคชันที่ "ปลอดภัย" มีโค้ดจำนวนมากที่ออกแบบมาเพื่อประสิทธิภาพ ไม่ใช่ความปลอดภัย อาจมีช่องโหว่ จุดบกพร่อง และข้อบกพร่องในการจำลองที่อาจอนุญาตให้โปรแกรมปฏิบัติการ DOS ที่เป็นอันตรายภายในทำให้เกิดปัญหาหรือใช้ประโยชน์จากจุดบกพร่องในโปรแกรมจำลองเพื่อก่อให้เกิดอันตราย ไม่มีการรับประกันว่าระบบปฏิบัติการหรือแอปพลิเคชันของแขกจะบรรจุโดย DOSBox-X ได้อย่างสมบูรณ์
หากความปลอดภัยเป็นสิ่งสำคัญอันดับแรก ดังนั้น:
อย่าใช้ DOSBox-X บนระบบที่ปลอดภัย
อย่ารัน DOSBox-X ในฐานะ root หรือ Administrator
หากคุณต้องการใช้ DOSBox-X ให้รันภายใต้ผู้ใช้ที่มีสิทธิพิเศษน้อยกว่า ในคุก chroot หรือแซนด์บ็อกซ์ หรือเปิดใช้งานโหมดความปลอดภัยของ DOSBox-X ด้วยตัวเลือกบรรทัดคำสั่ง -securemode
ซึ่งจะปิดการใช้งานคำสั่งที่อาจอนุญาตให้เข้าถึงโฮสต์ ระบบ.
หากการแจกจ่าย Linux ของคุณเปิดใช้งานไว้ ให้พิจารณาใช้ระบบการตรวจสอบเพื่อจำกัดสิ่งที่ปฏิบัติการ DOSBox-X สามารถทำได้
DOSBox-X มุ่งหวังที่จะเป็นแพ็คเกจการจำลอง DOS ที่มีคุณลักษณะครบถ้วน แต่มีบางสิ่งที่การออกแบบที่นำมาใช้ในขณะนี้ไม่สามารถรองรับได้
การจำลองระดับ CPU Pentium 4 หรือสูงกว่า
DOSBox-X มีโค้ดสำหรับจำลอง 8086 ถึง Pentium III เท่านั้น ระบบ Real DOS (MS-DOS และความเข้ากันได้) ยังทำงานได้ดีที่สุดกับ CPU เหล่านี้
หากต้องการจำลอง Pentium 4 หรือสูงกว่า ให้พิจารณาใช้โปรแกรมจำลองพีซี เช่น Bochs หรือ QEMU แทน ในที่สุด DOSBox-X อาจพัฒนาการจำลอง Pentium 4 หากชุมชน DOSBox-X โดยทั่วไปต้องการ
การจำลองฮาร์ดแวร์พีซี 2001 หรือใหม่กว่า
การตัดอย่างเป็นทางการสำหรับ DOSBox-X คือปี 2001 เมื่อข้อกำหนด "PC 2001" ที่อัปเดตจาก Microsoft กำหนดให้ถอดสล็อต ISA ออกจากเมนบอร์ด จุดเน้นอยู่ที่การใช้การจำลองฮาร์ดแวร์สำหรับฮาร์ดแวร์ที่ทำก่อนหน้าจุดนั้น
ผู้มีส่วนร่วมมีอิสระที่จะมุ่งเน้นไปที่การจำลองฮาร์ดแวร์ภายในกรอบเวลาระหว่างปี 1980 ถึง 2000/2001 ตามที่ตนเลือก
การจำลองแขกของ Windows, Windows Vista หรือใหม่กว่า
การจำลอง DOSBox-X ในแง่ของการใช้งาน Windows ใน DOSBox-X จะเน้นที่ Windows 1.0 เป็นหลักผ่าน Windows ME (Millennium Edition) และจากนั้นบน Windows NT ผ่านทาง Windows XP Windows Vista และเวอร์ชันที่ใหม่กว่าไม่มีความสำคัญและจะไม่ได้รับการพิจารณาในขณะนี้ Windows เวอร์ชันเหล่านี้ไม่ได้ขึ้นอยู่กับ DOS
หากคุณต้องการใช้งาน Windows XP และใหม่กว่า โปรดพิจารณาใช้ QEMU, Bochs, VirtualBox หรือ VMware
ระบบ MS-DOS ใดๆ นอกเหนือจาก IBM PC/XT/AT, AX, Tandy, PCjr และ PC-98
เฉพาะระบบที่ระบุไว้ข้างต้นเท่านั้นที่จะได้รับการพิจารณาสำหรับการพัฒนาใน DOSBox-X ข้อจำกัดนี้ป้องกันการขยายฐานโค้ดไปสู่ระดับที่ไม่สามารถจัดการได้ และช่วยรักษาฐานโค้ดให้เป็นระเบียบ
มันจะง่ายกว่าสำหรับตัวฉันเองและชุมชนโอเพ่นซอร์สหากนักพัฒนาสามารถมุ่งเน้นไปที่การเลียนแบบแพลตฟอร์มที่พวกเขาสนใจไปพร้อมๆ กัน แทนที่จะรวมทุกอย่างไว้ในโปรเจ็กต์เดียว ซึ่งน่าจะทำงานได้แย่กว่าในการจำลองทุกแพลตฟอร์ม อย่างไรก็ตาม หากการเพิ่มการจำลองของระบบต้องการการเปลี่ยนแปลงเพียงเล็กน้อยเพียงเล็กน้อย ก็อาจพิจารณาระบบใหม่ที่เป็นปัญหา
ขอแนะนำอย่างยิ่งให้แยกโปรเจ็กต์นี้และใช้รูปแบบของคุณเอง หากคุณต้องการพัฒนาการจำลอง MS-DOS สำหรับระบบหรือคอนโซลอื่น ในการทำเช่นนั้น คุณจะได้รับอิสระอย่างเต็มที่ในการมุ่งเน้นไปที่การนำระบบ MS-DOS ที่คุณสนใจไปใช้ และหากต้องการ ความสามารถในการตัดการจำลอง IBM PC/XT/AT ที่ขัดแย้งกัน และโค้ดที่ไม่จำเป็นออกไป เพื่อให้โค้ดของสาขาของคุณสามารถจัดการได้ และ บำรุงรักษาได้
หากคุณกำลังเริ่มต้น Fork โปรดแจ้งให้เราทราบว่า Fork ของคุณอยู่ที่ไหนและระบบใดที่ Fork กำลังจำลอง เพื่อที่ฉันจะได้แสดงรายการไว้ในไฟล์ README นี้สำหรับผู้อื่นที่ต้องการจำลองระบบนั้น เพื่อช่วยฉันได้เพิ่มการแจงนับโหมดเครื่องจักรและวิดีโอเป็น "สตับ" เพื่อให้เป็นจุดเริ่มต้นสำหรับการใช้งานแพลตฟอร์มของสาขาของคุณ ต้นขั้วที่ใช้จนถึงตอนนี้คือ "การจำลอง FM Towns" ( machine=fm_towns
)
จังหวะเวลาที่แม่นยำของคำสั่ง x86 และการดำเนินการ
โดยทั่วไปคำสั่งจะรันหนึ่งคำสั่งต่อรอบใน DOSBox-X ยกเว้น I/O และการเข้าถึงหน่วยความจำ
หากต้องการการจำลองรอบต่อคำสั่งที่แม่นยำ โปรดพิจารณาใช้ PCem, 86Box หรือ VARCem แทน
การจำลองจุดลอยตัวที่มีความแม่นยำเต็มรูปแบบ
เว้นแต่จะใช้ไดนามิกคอร์ DOSBox และ DOSBox-X จะจำลองการลงทะเบียน FPU โดยใช้ชนิดข้อมูลจุดลอยตัว 64 บิต "สองเท่า"
รีจิสเตอร์ Intel FPU นั้นเป็นค่าทศนิยม "ความแม่นยำขยาย" 80 บิต ไม่ใช่ค่าความแม่นยำสองเท่า 64 บิต ดังนั้น นี่จึงเท่ากับการสูญเสียความแม่นยำ 12 บิตและการสูญเสียช่วง 5 บิต (64 ถึง 53 บิตแมนทิสซา และบิตเอ็กซ์โปเนนต์ 16 ถึง 11 บิต ). การสูญเสียความแม่นยำเล็กน้อยนี้ถือว่าใช้ได้อย่างสมบูรณ์แบบเมื่อพิจารณาถึงเป้าหมายเดิมของ DOSBox ในการสนับสนุนเกม DOS แต่อาจทำให้เกิดปัญหาในกรณีอื่นที่ต้องใช้ความแม่นยำเต็มที่
เป็นที่ทราบกันดีในเวลานี้ว่าการขาดความแม่นยำเพียงพอที่จะทำให้เกิดการเปรียบเทียบกับจำนวนเต็มอย่างตรงไปตรงมาล้มเหลวในแอปพลิเคชัน DOS ที่เขียนด้วย QBasic หรือ Turbo Basic มีเกม DOS มากมายที่เขียนขึ้นเพื่อตรวจสอบขนาดไฟล์โดยใช้การเปรียบเทียบจุดลอยตัวซึ่งจะล้มเหลวในลักษณะนี้ ในการรันเกมเหล่านี้ คุณจะต้องปิดการใช้งานการจำลอง FPU ( fpu=false
) เพื่อบังคับให้รันไทม์ QBasic/TurboBasic ใช้การจำลองซอฟต์แวร์แทน
DOSBox-X เริ่มต้นจากทางแยกของโครงการ DOSBox ดั้งเดิมในช่วงกลางปี 2554 เริ่มต้นจากความปรารถนาที่จะปรับปรุงโปรแกรมจำลองโดยไม่ต้องต่อสู้หรือกังวลเกี่ยวกับการส่งแพตช์ต้นทาง
ตามที่นักพัฒนาได้ชี้แจงไว้อย่างชัดเจนแล้ว จุดสนใจหลักของ DOSBox อยู่ที่เกม DOS สิ่งนี้เห็นได้จากข้อเท็จจริงที่ว่าโค้ดส่วนใหญ่นั้นเป็นโค้ดที่ค่อนข้างแม่นยำ โดยมีเป้าหมายในการทำให้เกม DOS ทำงาน แทนที่จะมุ่งเน้นไปที่พฤติกรรมที่แท้จริงของระบบ DOS จริง
Jonathan Campbell ผู้ดูแลโปรเจ็กต์ DOSBox-X ต้องการเปลี่ยนแปลงซอร์สโค้ดหลายอย่าง แต่การเปลี่ยนแปลงส่วนใหญ่ไม่เกี่ยวข้องกับเกม ดังนั้นจึงไม่น่าจะได้รับการยอมรับจากนักพัฒนา DOSBox
ตั้งแต่นั้นมา Jonathan Campbell ได้แก้ไขซอร์สโค้ดอยู่ตลอดเวลาเพื่อปรับปรุงการจำลอง แก้ไขจุดบกพร่อง และแก้ไขความไม่เข้ากันกับ Windows 95 ผ่านทาง ME เขาได้เพิ่มตัวเลือกเพื่อให้ DOSBox-X เป็นค่าเริ่มต้นสามารถจำลองการกำหนดค่าที่หลากหลายได้แม่นยำยิ่งขึ้น ในขณะเดียวกันก็ช่วยให้ผู้ใช้เปิดใช้งานเทคนิคหรือแฮ็กต่างๆ หากจำเป็นเพื่อรันเกมหรือโปรแกรม DOS ที่พวกเขาชื่นชอบ เขายังทำความสะอาดและจัดระเบียบโค้ดเพื่อปรับปรุงความเสถียรและการพกพาเมื่อเป็นไปได้
โครงการ DOSBox ดั้งเดิมไม่ได้เขียนโดยโปรแกรมเมอร์เพียงคนเดียว ได้รับการพัฒนาตั้งแต่ปลายปี 2000 โดยมีแพตช์ การแก้ไข และการปรับปรุงจากสมาชิกทั่วทั้งฟอรัม Vogons แม้ว่าจะไม่มีการเผยแพร่อย่างเป็นทางการที่สำคัญนับตั้งแต่ DOSBox 0.74 เมื่อ 10 ปีที่แล้ว แต่โครงการนี้ยังคงอยู่ในการพัฒนาแบบกึ่งแอคทีฟในปัจจุบันในรูปแบบของ DOSBox SVN ในขณะเดียวกัน การเปลี่ยนแปลงบางส่วนได้รวมเอาโค้ดจากโปรเจ็กต์อื่นๆ เข้าด้วยกัน
คุณสมบัติและการปรับปรุงบางอย่างใน DOSBox-X ยังมาจากสาขาอื่นของ DOSBox ที่รู้จักกันในชื่อ DOSBox SVN Daum ซึ่งตัวมันเองได้รวมคุณสมบัติจากโปรเจ็กต์ DOSBox ดั้งเดิม, DOSBox-X และแพตช์ทดลองมากมาย แม้ว่าสาขา Daum ดูเหมือนจะตายไปแล้ว แต่ฟีเจอร์ที่ยืมมาจากสาขานั้นยังคงมีอยู่ใน DOSBox-X ต่อมา DOSBox-X ยังได้รวมคุณสมบัติและการปรับปรุงหลายอย่างจากโปรเจ็กต์อื่นๆ เช่น DOSBox ECE, DOSBox Staging, DOSVAX/DOSVAXJ3 และ vDosPlus
โครงการ DOSBox-X ยังได้รับความช่วยเหลือจากนักพัฒนาและผู้มีส่วนร่วมรายอื่นๆ เช่น Wengier, aybe, Alloich และ rderooy ซึ่งได้ทำงานที่สำคัญเพื่อปรับปรุงโครงการ DOSBox-X รวมถึงการเพิ่มคุณสมบัติใหม่ แก้ไขข้อบกพร่อง การสร้างเอกสาร ดูแลเว็บไซต์และย้ายรหัสจากโครงการอื่น
ดูเพิ่มเติมที่หน้า CREDITS สำหรับการให้เครดิตซอร์สโค้ด
พอร์ต DOSBox-X Emscripten (รันได้ในเว็บเบราว์เซอร์) โดย Yksoft1
มีการเปลี่ยนแปลงที่สำคัญเพื่อให้ทำงานได้อย่างมีประสิทธิภาพภายในเว็บเบราว์เซอร์เมื่อคอมไพล์โดยใช้ LLVM/Emscripten การเปลี่ยนแปลงที่สำคัญเหล่านี้จำเป็นต้องละทิ้งคุณสมบัติที่มีประโยชน์บางอย่าง (รวมถึงเมนู) แต่จำเป็นสำหรับประสิทธิภาพ
URL: https://github.com/yksoft1/dosbox-x-vanilla-sdl/tree/emscripten (มองหา URL โคลนและใช้สาขา emscripten)
DOSBox-X-App (สำหรับ Windows และ macOS) โดย emendelson
DOSBox-X-App คือ DOSBox-X เวอร์ชันที่ปรับแต่งเล็กน้อย รวมกับโปรแกรมและคำสั่งภายนอกที่ทำให้พิมพ์และสร้าง PDF จากแอปพลิเคชัน DOS ได้ง่าย มันถูกปรับแต่งเพื่อใช้กับแอพพลิเคชั่น ไม่ใช่เกม
URL: http://www.columbia.edu/~em36/dosboxapp.html
DOSBoxWP (สำหรับ WordPerfect สำหรับ DOS) โดย emendelson
DOSBoxWP เป็นเวอร์ชันที่กำหนดเองของ DOSBox-X ซึ่งมีเป้าหมายสำหรับผู้ใช้ WordPerfect สำหรับ DOS
URL (วินโดวส์): http://www.columbia.edu/~em36/wpdos/dosboxwp.html
URL (macOS): http://www.columbia.edu/~em36/wpdos/wpdosboxmac.html
Win31DOSBox (Windows 3.1 สำหรับ Windows 64 บิต) โดย emendelson
Win31DOSBox มุ่งหวังที่จะเป็นวิธีที่ง่ายในการรันซอฟต์แวร์ Windows 3.x สำหรับระบบ Windows 64 บิต ระบบใช้โครงสร้างที่กำหนดเองของ DOSBox-X เมื่อใช้งาน Windows 3.1x
URL: http://www.columbia.edu/~em36/win31dosbox.html
DOSBox-X จะแสดงภาษาอังกฤษเป็นภาษาเริ่มต้น และใช้รหัสเพจ US (437) เป็นค่าเริ่มต้น เช่นเดียวกับ DOSBox
ข้อความทั้งหมดที่แสดงโดย DOSBox-X จะเป็นภาษาอังกฤษโดยมีการตั้งค่าเริ่มต้น DOSBox-X รองรับคุณสมบัติในการเปลี่ยนข้อความที่แสดงด้วยการใช้ไฟล์ภาษา ไฟล์ภาษาจะควบคุมเอาต์พุตที่มองเห็นได้ทั้งหมดของคำสั่งภายในและ DOS ภายใน รวมถึงข้อความในเมนูแบบเลื่อนลงของ DOSBox-X หากคุณเป็นผู้พูดภาษาที่ไม่ใช่ภาษาอังกฤษ ขอแนะนำให้สร้างไฟล์ภาษาเพิ่มเติมเพื่อใช้กับ DOSBox-X โดยการแปลข้อความใน DOSBox-X เป็นภาษาของคุณ ผู้ใช้ DOSBox-X คนอื่นๆ ยังสามารถใช้ไฟล์ภาษาเหล่านี้สำหรับ DOSBox-X เพื่อแสดงข้อความในภาษาดังกล่าวได้ ไฟล์ภาษาสามารถพบได้ในไดเร็กทอรี languages
ของการติดตั้ง DOSBox-X ของคุณ
ชื่อภาษา | ไฟล์ภาษา |
---|---|
จีน (ตัวย่อ) | มีส่วนร่วม/แปล/zh/zh_CN.lng |
จีน (ดั้งเดิม) | มีส่วนร่วม/แปล/zh/zh_TW.lng |
ภาษาฝรั่งเศส | มีส่วนร่วม/แปล/fr/fr_FR.lng |
เยอรมัน | มีส่วนร่วม/แปล/de/de_DE.lng |
ภาษาอิตาลี | มีส่วนร่วม/แปล/it/it_IT.lng |
ญี่ปุ่น | มีส่วนร่วม/แปล/ja/ja_JP.lng |
เกาหลี | มีส่วนร่วม/แปล/ko/ko_KR.lng |
โปรตุเกส (บราซิล) | มีส่วนร่วม/แปล/pt/pt_BR.lng |
สเปน | สนับสนุน/แปล/es/es_ES.lng |
ภาษาตุรกี | มีส่วนร่วม/แปล/tr/tr_TR.lng |
ความจริงที่ว่า DOSBox-X ได้รับการพัฒนาโดยใช้รูปแบบแป้นพิมพ์ของสหรัฐอเมริกา สาเหตุหลักมาจากข้อจำกัดรอบๆ ไลบรารี SDL1 ที่ให้การจัดการอินพุต ด้วยเหตุนี้ เมื่อใช้เวอร์ชัน SDL1 และแป้นพิมพ์ที่ไม่ใช่ของสหรัฐอเมริกา DOSBox-X จะใช้รหัสสแกนโดยอัตโนมัติพร้อมการตั้งค่าเริ่มต้นเพื่อแก้ไขปัญหารูปแบบแป้นพิมพ์ ไม่จำเป็นต้องใช้รหัสสแกนเมื่อใช้รูปแบบแป้นพิมพ์ที่ไม่ใช่ของสหรัฐอเมริกาในเวอร์ชัน SDL2 หากคุณพบว่า DOSBox-X ยังไม่รองรับรูปแบบแป้นพิมพ์ หากต้องการเพิ่มรูปแบบเพิ่มเติมเพื่อใช้กับ DOSBox-X โปรดดูไฟล์ README.keyboard-layout-handling เกี่ยวกับวิธีการดังกล่าวในฐานะนักพัฒนา
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสนับสนุนระหว่างประเทศและการตั้งค่าภูมิภาคของ DOSBox-X เช่น ขั้นตอนในการสร้างไฟล์ภาษา DOSBox-X หรือใช้ไฟล์แป้นพิมพ์ภายนอกใน DOSBox-X รวมถึงการรองรับสัญลักษณ์ยูโรและรูปแบบวันที่และเวลาเฉพาะประเทศ โปรดดูคำแนะนำการตั้งค่าภูมิภาคใน DOSBox-X ใน DOSBox-X Wiki สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสนับสนุนภาษาเอเชียตะวันออก (จีน/ญี่ปุ่น/เกาหลี) โปรดดูหน้าคำแนะนำการสนับสนุนภาษาและระบบในเอเชียตะวันออก