Crazy Coder Develops 1984 IBM PC ChatGPT MS-DOS Client

ChatGPT on a 1984 IBM “laptop” computer, which has an Intel 8088 processor clocked at 4.77 MHz and 640 KB of RAM. And no, this achievement is not the work of ChatGPT; questioned on this subject, the conversational agent warned about the complexity of the project.

Yeo Kheng Meng, who presents himself as a “creator, coder, private pilot, retro computing enthusiast”, has challenged himself to develop a ChatGPT client (Chat Generative Pre-Trained Transformer) for MS-DOS in order to run it on an IBM 5155 “portable” computer dating from 1984. This machine embeds an Intel 8088 processor clocked at 4.77 MHz and, in this case, 640 KB of RAM.

© Yeo Kheng Meng

The author of this achievement points out that many developers are developing clients for modern platforms to interact with this AI chatbot, but think, certainly rightly, to be the only one to have done so for such a platform . Above all, he specifies that he did not use ChatGPT to code this application. Before starting, Yeo Kheng Meng had however questioned the conversational agent on the relevance of his project. ChatGPT had outlined the procedure, while concluding that “creating a ChatGPT DOS client can be complex because DOS is an outdated operating system that lacks the tools and resources necessary for development. of modern applications.

© Yeo Kheng Meng

Forget the Apple Watch, here comes the ChatGPT Watch

The procedure

The developer explains each step on his blog. Basically, he used the Open Watcom C/C++ compiler for 16-bit DOS. This compiler is a 32-bit program capable of running on Windows 11 64-bit. To test the DOS application during development, the author used a Virtualbox virtual machine running DOS 6.22.

© Yeo Kheng Meng

Another challenge was connecting to ChatGPT. To connect the API, Yeo Kheng Meng was able to rely on the MTCP library written by Michael B. Brutman but specifies that to communicate with this API, he had to build the entire POST request “by hand in C “.

Many other obstacles have been added, including HTTPS encryption. The author specifies that there is no modern TLS library compatible with Windows 3.1, let alone for the DOS platform. He believes that “porting such a library would probably require too much effort” and that if modern TLS encryption algorithms are ported to run on the Intel 8088, they are likely “to be too heavy to run. in a reasonable amount of time on such an old processor”. Yeo Kheng Meng therefore confesses to having “cheated” by using his own http-to-https proxy in Golang, which works on a modern PC and acts as “a transparent intermediary”.

© Yeo Kheng Meng

Feel free to consult the source for more technical details if you are interested.

Source : Yeo Kheng Meng via Tom’s Hardware US

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.