Thông báo về DOSember Game Jam đã khơi dậy sự quan tâm mới mẻ đối với việc phát triển MS-DOS , tập hợp cả những lập trình viên hoài niệm và những người mới tò mò muốn khám phá nền tảng kinh điển này. Cuộc thi game jam kéo dài ba tháng, bắt đầu vào tháng 11 năm 2024, đã thúc đẩy các nhà phát triển xem xét lại và mở rộng hệ sinh thái các công cụ có sẵn cho lập trình DOS .
Các Công Cụ Hiện Đại Thổi Sức Sống Vào Phát Triển Retro
Bối cảnh phát triển DOS đã phát triển đáng kể vượt ra ngoài những hạn chế ban đầu. Các trình giả lập hiện đại như DOSBox-X giờ đây hỗ trợ các chế độ đồ họa đương đại bao gồm độ phân giải 1920x1080, cho phép phần mềm DOS ngày nay phát hiện và sử dụng khả năng hiển thị hiện đại trong khi vẫn duy trì khả năng tương thích ngược với các chế độ cổ điển. Tính linh hoạt này mở ra những khả năng mới cho các nhà phát triển muốn tạo ra các ứng dụng DOS mà không bị giới hạn bởi thẩm mỹ hoàn toàn retro.
Phát triển đa nền tảng cũng đã trở nên dễ tiếp cận hơn. Các nhà phát triển giờ đây có thể sử dụng các hệ thống hiện đại để tạo ra phần mềm DOS thông qua các công cụ biên dịch chéo và môi trường phát triển toàn diện. Sự có sẵn của các trình biên dịch mã nguồn mở như DJGPP và OpenWatcom có nghĩa là việc tạo ra các ứng dụng DOS không còn đòi hỏi phải tìm kiếm phần mềm thương mại cổ điển.
Các lựa chọn mô phỏng DOS hiện đại:
- DOSBox-staging: Phiên bản tiếp tục hiện đại của DOSBox với các tính năng tiên tiến
- DOSBox-X: Trình mô phỏng DOS mã nguồn mở với hỗ trợ chế độ đồ họa hiện đại (lên đến 1920x1080)
- 86Box: Trình mô phỏng x86 cấp thấp cho các hệ thống IBM PC từ năm 1981 trở đi
- PCem: Trình mô phỏng phần cứng PC để có trải nghiệm máy tính cổ điển chân thực
Sự Nhiệt Tình Của Cộng Đồng Đối Với Các Thách Thức Retro Computing
Các thách thức kỹ thuật của việc phát triển DOS đã thu hút các nhà phát triển quan tâm đến việc làm việc trong những ràng buộc lịch sử. Mô hình bộ nhớ độc đáo của nền tảng này, với sự sắp xếp phức tạp của quản lý bộ nhớ EMS và XMS , đưa ra những câu đố mà các hệ điều hành hiện đại đã giải quyết từ lâu. Đối với nhiều lập trình viên, những hạn chế này cung cấp các ràng buộc sáng tạo có thể dẫn đến những giải pháp đổi mới.
DOS là một nền tảng thú vị vì nó có thể chạy trên phần cứng cũ, và sau đó về cơ bản là bất cứ thứ gì khác thông qua giả lập (chẳng hạn như trong trình duyệt) hoặc qua DOSBox .
Các khả năng mạng có sẵn thông qua các thư viện như mTCP và Watt-32 cũng đã khơi dậy các cuộc thảo luận về DOS như một nền tảng hợp pháp cho các ứng dụng hiện đại. Một số thành viên cộng đồng thấy tiềm năng của DOS như một nền tảng console game nhẹ, tận dụng những cải tiến hiệu suất khổng lồ có sẵn khi chạy phần mềm DOS trên phần cứng đương đại.
Thư viện phát triển DOS thiết yếu:
- mTCP: Ứng dụng TCP/IP cho hệ thống DOS
- Watt-32: Thư viện TCP/IP và các mẫu code
- AllegroXC: Phiên bản fork của Allegro 4.2.2 để phát triển DOS đa nền tảng
- GLIDE3: Mã nguồn 3Dfx Glide cho card đồ họa gia tốc Voodoo
- micromod: Thư viện trình phát nhạc cho các định dạng MOD, S3M và XM
Kết Nối Các Thực Hành Phát Triển Quá Khứ Và Hiện Tại
Sự so sánh giữa các công cụ phát triển hiện đại và cổ điển đã tạo ra nhiều cuộc thảo luận đáng kể. Nhiều nhà phát triển bày tỏ sự hoài niệm về trải nghiệm tập trung, tức thì của các IDE Borland sơ khai, tương phản với các môi trường phát triển giàu tính năng nhưng đôi khi chậm chạp ngày nay. Sự đơn giản và tốc độ của các công cụ như Turbo Pascal trên hệ thống 10 MHz với bộ nhớ 640KB tạo nên sự tương phản rõ rệt với thời gian biên dịch hiện đại, bất chấp phần cứng vượt trội hơn nhiều.
Điều này đã dẫn đến sự quan tâm trong việc tái tạo những khía cạnh tốt nhất của các công cụ phát triển cổ điển trong khi kết hợp các tính năng hiện đại như hỗ trợ Language Server Protocol và khả năng debug tiên tiến. Một số nhà phát triển đang thử nghiệm với các phương pháp lai kết hợp khả năng phản hồi của các công cụ cổ điển với các trợ giúp lập trình đương đại.
Các Trình Biên Dịch Phát Triển DOS Chính:
- DJGPP: Hệ thống phát triển C/C++ 32-bit hoàn chỉnh cho PC 80386+
- OpenWatcom: Trình biên dịch C/C++/FORTRAN mã nguồn mở cho DOS và Windows 16/32-bit
- FreeBASIC: Trình biên dịch BASIC miễn phí/mã nguồn mở cho Windows, DOS và Linux
- BCC: Trình biên dịch C tạo ra mã assembly 8086 cho DOS
- GCC-IA16: Phiên bản Intel 16-bit x86 của bộ trình biên dịch GNU
Kết Luận
DOSember Game Jam đã thúc đẩy một cuộc trò chuyện rộng lớn hơn về giá trị và khả năng tồn tại của việc phát triển DOS trong năm 2024. Dù được thúc đẩy bởi hoài niệm, tò mò kỹ thuật, hay sự hấp dẫn của việc làm việc trong những ràng buộc sáng tạo, sự nhiệt tình của cộng đồng chứng minh rằng ngay cả những nền tảng hàng thập kỷ tuổi cũng có thể tìm thấy sức sống mới khi được hỗ trợ bởi các công cụ hiện đại và những nhà phát triển đam mê. Thời gian ba tháng của cuộc thi cung cấp một cơ hội tuyệt vời cho cả những người kỳ cựu và người mới để khám phá những gì có thể khi kết hợp retro computing với các thực hành phát triển đương đại.
Tham khảo: Tài nguyên phát triển MS-DOS