#Bochs windows windows#
After many red-eye nights, I managed to get Windows 3.0 to boot up past the initial graphics banner screen. I was then on my way to implementing the graphics mode of the HGA and basic keyboard support, in an attempt to get Windows 3.0 running in real mode. It wasn't pretty, but it showed there was potential. The first was booting up MS DOS 5.0 to the A prompt! At that point, I had only very rudimentary text HGA (a monochrome video card) emulation and no keyboard support, so I had to hardwire keystrokes into the keyboard BIOS to get past the time and date prompts during boot and to run DOS commands afterwards. In the two and a half years I've worked on this software, Bochs has made it past some very important landmarks. I've had occasion to sift through debug files of some 50+ megabytes (which I refer to as stealth bug contrails), only to find I didn't print out the one piece of info I needed! One wrong bit flipped here, and sometimes the ill effect shows up 10 million instructions later, when the wrong character is displayed on the screen! Bugs which depend on timings proved to be elusive, since they don't always show up, and timing is drastically affected by the debug print statements inserted in the code. The other large hurdle was (and will be) tracking down and fixing the bugs which seem nearly impossible to find in such a complex system.
#Bochs windows Pc#
If it weren't for the likes of The Undocumented PC and Undocumented DOS, I would have quit a long time ago. Here we have a somewhat undocumented DOS (and later Windows) trying to use parts of a multitude of non-standardized and sometimes poorly documented BIOSs, using hardware devices which aren't always documented accurately or fully, and running on a non-open Intel x86 architecture, which has undocumented instructions and features (e.g., LOADALL). The biggest hurdle often was documentation. Looking back, it's still hard to believe it all came together.
#Bochs windows portable#
At that point, I began working on Bochs (pronounced ``box''), a portable software PC emulator project, with the goal of making it possible to run PC software on a Unix workstation. At the same time, I noticed significant similar interest on the net, specifically in the comp.emulators.* newsgroups. There just wasn't anything out there that would do what I wanted it to do or which would be a good starting point if I was willing to put the effort into enhancing it. Since it was geared toward allowing a real mode version of MINIX to run within the emulator, this didn't seem like a good candidate for enhancing either. My search also turned up another 8086 emulator, one which went along with an older version of MINIX, allowing MINIX to run on non-x86 platforms. Unfortunately, it was engineered to emulate an 8086, and didn't lend itself to be extended to support 8026 features. It did what it was intended to very well-run DOS. There was an emulator program called pcemu, which would run on a SPARC. The Wine and DOSEMU projects were making great progress, but they would never run on non-x86 architectures.
#Bochs windows code#
A little searching on the Internet didn't turn up anything low- or no-budget that would run MS Windows 3.1 on a SPARC and for which source code was accessible.
![bochs windows bochs windows](https://img.informer.com/screenshots/1109/1109075_1.png)
![bochs windows bochs windows](http://lcheavenly.weebly.com/uploads/1/2/6/2/126211911/865146926.png)
The idea of paying a lot of money to run something I'd already purchased didn't sit well with me, and I was interested in finding something I could extend if necessary. So, I began looking for a software solution which would allow me to run on my SPARCstation the handful of PC programs I used. Well, that got old quick! Having two keyboards, two monitors, and two computers on one's desk consumes more than desktop real estate-it takes much more time to maintain and introduces frustrations from the disparate OS designs. Occasionally, though, I found myself firing up the ol' PC on my desk, using MS Word to crank out documentation or a memo, or to run one of a handful of smaller utility programs I purchased years ago. I could do almost everything computer related, including e-mail interaction, system administration, net surfing, network Doom (I confess-it was me who circulated that hack so you could run Doom on Solaris 2.3), all on the same machine I used for software development.
![bochs windows bochs windows](https://www.icewalkers.com/app/medias/screen/203/1/bochs-x86-emulator.jpg)
By far, the majority of my time involving a computer was spent working with my Sun SPARCstation.