From: <fox...@ya...> - 2011-05-22 23:33:34
|
Alright. I'll begin working on it. Basic BIOS support, and port read/write hooks for 3D*h, which I see today are used by the VGA. Will get working in Windows first, then port to X if different. I'll add overrides to the display to see other pages, or view in mono or text pages. To freeze, capture screen prints, and select text. Will freeze the design on 2.4.5 for now. And anyone interested in testing changes, please contact me. - Rick Connected by DROID on Verizon Wireless -----Original message----- From: Benjamin David Lunt <fy...@fr...> To: "Rick C. Hodgin" <fox...@ya...>, boc...@li... Sent: Sun, May 22, 2011 20:14:06 GMT+00:00 Subject: Re: [Bochs-developers] Monochrome Monitor Device ----- Original Message ----- From: "Rick C. Hodgin" <fox...@ya...> To: <boc...@li...> Sent: Saturday, May 21, 2011 11:33 PM Subject: Re: [Bochs-developers] Monochrome Monitor Device > Hello. > > Is there any response to this? > > - Rick C. Hodgin Hi Rick, I would be interested if Bochs supported multiple video displays. i.e.: If Bochs supported more than one "monitor". I have done very little toward the Bochs video display, so I don't know much about it, however, in theory, I think it would be quite simple to create multiple displays. All it does is create an object, which is the video out, does it not? Therefore, it would be a simple task to create multiple "video out" objects, since the guts are already there. Now, I know it can't be quite that simple, and again, I haven't looked into what it would take, but I would be quite interested in a Bochs implimentation that would support at least two monitors, or "video outs", i.e.: to screens (two windows). I may not be much help with the implimentation, but could be a lot of help with the testing. Ben > On 5/20/2011 1:19 AM, Rick Hodgin wrote: >> Hello everybody. Apologies for the long post. The short version is >> this: I'd like to write a monochrome video adapter for Bochs, if >> somebody will help me. >> >> Here's the long version: >> >> I've been reading up on the current releases of Bochs, and I see >> monochrome video adapters are not yet supported. First of all, is >> this true? >> >> Second, a while back I wrote a modified versions of Bochs 2.3.5 which >> implements (alongside the VGA) a simple external monochrome graphics >> adapter. It was used to support an OS I wrote that used such a >> real-world hardware device in Hercules Graphics mode back in the late >> 90s. It uses a graphical environment of 720 x 348 (90 columns x 43.5 >> rows in 8x8 bitmap font), which I employed for my kernel debugger >> display. It had a graphical mouse pointer, flashing cursor, >> drag-and-drop windows and text/display items, and multiple fonts, >> written entirely in i386 assembly and in less than 16 KB of assembled >> code. >> >> In any event, the Bochs support I added came through tremendous hacks >> to the source code (because I needed to get it done right away, not >> necessarily properly), whereby I basically intercepted all memory >> reads/writes falling between 0xb0000 and 0xb7ffff in the MOV >> instruction (which my app used). I wrote and read those bytes from my >> own 32KB global memory buffer (which I added as part of the hack). >> Then, every so often (about 10x per second via a timer callback from >> Windows), I would write the contents to a named pipe. An external >> monitor app (called "MoMo" for MOnochrome MOnitor) was launched and it >> would repeatedly read 32KB from the pipe and display its contents >> using the odd-stride memory form the monochrome adapter's display >> required (for graphics modes). >> >> Now, as I have a renewed need for this, I would be willing (with >> assistance from experienced Bochs developers for guidance on how to do >> write it properly for Bochs) to implement a native device which >> supports those text and graphics modes that that card supported (a few >> 80x25 text modes, and at least the 720x348 graphics mode). I would do >> this via a second window display, separate from the main Bochs window, >> which represents the distinct monochrome monitor, which would be >> updated as writes and mode changes are intercepted by the host. >> >> So, I guess my big questions are these: >> >> 1) Is there any interest in this? If not, no biggie. >> 2) Is there anyone willing to help me write it properly? >> >> I can upload the modified Bochs 2.3.5 source and projects which >> implements this for examination if anyone's interested. >> >> Thanks! :-) >> >> - Rick C. Hodgin |