3 ms·
One of Cosmopolitan's demo programs is an NES emulator that runs in the terminal: https://justine.lol/nesemu1.html https://justine.lol/nesemu1.html It plays aud
by jart 6y ago
One of Cosmopolitan's demo programs is an NES emulator that runs in the terminal: https://justine.lol/nesemu1.html https://justine.lol/nesemu1.html It plays audio by piping raw audio samples into an ffplay or sox subprocess. Another demo program is PRINTVIDEO.COM which can do things like play 4K MPEG videos in the terminal. https://justine.lol/printvideo.html https://justine.lol/printvideo.html Cosmopolitan is also able to dynamically link things like KERNEL32.DLL so you can create GUI applications. See https://justine.lol/apelife/index.html https://justine.lol/apelife/index.html See also this issue where people have requested hardware accelerated graphics: https://github.com/jart/cosmopolitan/issues/35 https://github.com/jart/cosmopolitan/issues/35
Cosmopolitan can be doing more if game studios are willing to back the project. Remember how John Carmack dipped his toes in the water with Quake on Linux decades ago and was promptly scared off by the chaos and complexity of the open source development process? Cosmopolitan brings the kind of order to Unix interfaces that game developers need. Games can't rely on people like distro maintainers to patch and recompile their codebases every time there's a change to some dynamic library. They need to be able to compile their programs once and have game enthusiasts be able to enjoy those programs for years to come. Right now anything you build with Cosmo will run on every Linux distro since 2007. That means there's a good chance your programs will continue to work perfectly and natively on every Linux distro in the future. You might not be able to run shaders on Nvidia chips yet. But what we've accomplished so far is a big leap forward compared to the status quo.