How an amateur ran a ChatGPT client on a 1984 IBM PC
WTF?! ChatGPT by OpenAI may be cutting edge AI technology, but the end user experience with it is nothing more than text and web. One modder decided that with a little effort, a 39-year-old PC would have what it takes to run a generative AI text client.
Yeo Khen Man’s lover recently disclosed his ChatGPT client for MS-DOS, running on his nearly 40-year-old IBM PC. The app composes the text just as well as the OpenAI service on modern systems, just in retro-style plain text.
Yeo chose the oldest MS-DOS PC in his collection, a 1984 IBM 5155 laptop. RAM. Yeoh believes that any DOS machine should be able to handle anything that runs to these specifications.
Creating new software for the Internet on a pre-Internet and PC operating system comes with many challenges. Yeoh needed to figure out how to run the network in MS-DOS and test the IBM PC software on a modern computer. Testing the client on a Windows 11 64-bit Yeo machine proved tricky because, by default, it cannot run compiled 16-bit DOS binaries. Porting the test code to the IBM PC would slow down development significantly.
Also, winevdm compatibility didn’t allow network connectivity. Python for MS-DOS cannot be used either because it does not support 16-bit processors. Instead, Yeo tested the project on a Virtualbox system with the same version of DOS installed on a 5155, with a network bridged to the host machine.
Yeo said MTCP libraryA scalable TCP stack compatible with multiple user-level cores was the most important tool in the project. This allowed him to program the networking functionality relatively quickly, although he had to write about DOS’s lack of multithreading.
The only part of the ChatGPT client that does not natively run on an IBM system is the HTTP-to-HTTPS proxy. Even if Yeo could port the necessary TLS library to the Intel 8088, its performance would likely be too low. Thus, this part of the process must be carried out on a modern PC.
Even if it’s not a 100% clean solution, using generative text AI in such an old system has a somewhat retrofuturistic vibe to it. Entering text and getting an intelligent response is what people have imagined for computers since at least the heyday of the 5155.
The project also resembles other examples of modern functionality running on retro hardware. In 2015, Netflix engineers built NES client. In 2019 Yeoh did version of Slack for Windows 3.1, and in 2021 someone got an Apple IIe to play full length video.