I ported Dosbox to Java, so most of my knowledge of the emulation comes from the Dosbox project.
After I got Dos games to work in Java, my goal became to get Win95/98 era games to run in a browser using Java. Originally I started messing around with writing my own windows libraries in Java, I even got Age of Empire to run. I thought there wouldn't be that much to do just to get games working, but I was wrong. After Oracles messed up Java in the browser I switch to c/emscripten and so far I've been pretty happy with that decision. I tried to retarget Wine to compile for Windows/Emscripten directly. I implemented a port for all the libc calls, it started to work, but it was really just too much work for one person. Implementing about 100 Linux system calls and few devices got me pretty far and was for more manageable. Basically BoxedWine is a Linux kernel emulator that can run a lot of Linux stuff, including XOrg, dpkg, etc. But Wine with XOrg had a lot processes and all those moving pieces were a pain to debug. Last time I was messing with it, I had a hang between XOrg and the window manager. Plus the file system size was larger than I wanted. I removed XOrg by writing a replacement for winex11.drv. So now I don't need XOrg and all of its dependencies. The Linux syscall emulation is original and based on documentation and trial and error. I'm sure there are still quite a few bugs in it. mmap still isn't quite right. Currently I'm trying to get Win16 games to work because they have a low CPU requirement. A lot of simple games are already working well. The demo link I originally posted now shows a Win16 Pacman clone. On a recent Core i5 I get about 33MHz (Pentium) in Emscripten, so not bad. With some tweaking it should be in the realm of possibility to play some Win95/98 games that targeted a Pentium 66 On Friday, October 28, 2016 at 10:15:28 AM UTC-7, Alon Zakai wrote: > > Wow, impressive! > > What does this use to render, btw? > > On Tue, Oct 25, 2016 at 8:02 PM, Danoon <[email protected] <javascript:>> > wrote: > >> I've been experimenting with getting Wine to run in Emscripten with the >> goal to play Win95/Win98 era games. It has a long way to go, but I thought >> I would share a demo of notepad running. So far I've been pretty impressed >> with the performance that Emscripten gives. >> >> http://boxedwine.sf.net/b2/boxedwine.html >> >> -- >> You received this message because you are subscribed to the Google Groups >> "emscripten-discuss" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
