1 điểm bởi GN⁺ 2023-10-16 | 1 bình luận | Chia sẻ qua WhatsApp
  • Bài viết về việc port Lotus 1-2-3, một phần mềm 30 năm tuổi, sang Linux
  • Tác giả, một người hâm mộ cuồng nhiệt của Lotus 1-2-3, đã duy trì driver để phần mềm hoạt động tốt trên các hệ thống hiện đại
  • Lotus 1-2-3 được thiết kế để có thể mở rộng bằng plugin hoặc "add-in", nhưng trình biên dịch và SDK của LPL, ngôn ngữ đặc biệt dùng để viết các add-in này, đã biến mất
  • Tác giả đã tìm thấy một bản sao SDK từ một sysop trong cộng đồng BBS thập niên 90 và dùng nó để tạo một vài plugin mẫu
  • Tác giả tìm thấy một bản sao Lotus 1-2-3 cho UNIX vốn được cho là đã thất lạc và quyết định port nó sang Linux
  • Quá trình port bao gồm việc vượt qua nhiều thách thức kỹ thuật như các system call không tương thích giữa UNIX và Linux, các hàm không tương thích, và termios phức tạp
  • Tác giả dùng GNU objcopy để chuyển các tệp đối tượng COFF sang ELF, định dạng được Linux sử dụng, và tạo ra một công cụ tên là coffsyrup để loại bỏ các symbol COFF
  • Tác giả cũng phải vượt qua bước kiểm tra giấy phép vì phần mềm từ chối hoạt động nếu không có license
  • Lotus 1-2-3 sau khi được port giờ đã có thể sử dụng 100% trên Linux, dù vẫn còn một số vấn đề cần khắc phục
  • Tác giả đã công khai toàn bộ mã nguồn trên GitHub cho bất kỳ ai muốn thử

1 bình luận

 
GN⁺ 2023-10-16
Ý kiến trên Hacker News
  • Bài viết bàn về việc khôi phục bộ công cụ phát triển phần mềm (SDK) từ bản sao lưu băng của một hệ thống BBS cũ, qua đó nhấn mạnh tầm quan trọng của việc lưu trữ phần mềm lậu.
  • Một người dùng chia sẻ trải nghiệm dùng LibreOffice để chuyển các tệp Lotus 123 cũ sang định dạng ODF/ODS, nhờ đó cha của anh có thể truy cập thông tin quan trọng trực tuyến.
  • Một người dùng khác hồi tưởng việc khi còn nhỏ đã nhận được một chiếc máy tính 286 có cài Lotus 123 thay vì Nintendo, điều này gợi lên cảm giác hoài niệm.
  • Một người dùng đang thực hiện một dự án tương tự, đảo ngược kỹ thuật một phần chương trình từ các tệp đối tượng, và chia sẻ bản chứng minh khái niệm cùng với linker Atari Jaguar.
  • Bài viết liên kết đến một cuộc thảo luận từ tháng 5 năm 2022 và một bài viết gợi nhớ hoài niệm.
  • Một người dùng bày tỏ sự ngạc nhiên khi tệp nhị phân Lotus 123 vẫn tiếp tục chạy được trên Linux, bất chấp tuổi đời của nó.
  • Bài viết thông báo sự xuất hiện của một bảng tính chạy trên terminal và bày tỏ hy vọng về việc được port sang Mac và Windows.
  • Bài viết liên kết đến các cuộc thảo luận và bài viết trước đây về Lotus 1-2-3 cho Linux, cho thấy sự quan tâm liên tục đối với chủ đề này.