Was going to write about this earlier today, but some things came
up.  The problem was NOT with grub & interrupts -- though the return false
bit did have to be in there -- I had forgotten that the console *java*
code *also* pointed to 0xB0000 -- not 0xB8000 -- the same fix as to
jjconsole.h applies to the console driver.  With that done, GRUB is now my
preferred booting method (at least, for the -DNEW_INTERRUPT_HANDLING
build).

        I'm trying to figure out why startService() in the VGA driver is
so slow.  Under GRUB/-DNEW_INTERRUPT_HANDLING, I'm not seeing any of the
background pixel drawing -- was this removed from the code?  (The
background fill stuff.)  Also, am I correct in supposing that the write8()
calls can be replaces with mappedByteArray()?  (I haven't tried it yet,
but it should speed things up enourmously -- it sure sped up the text-mode
stuff!)

        My short-term goal is to integrate the VGA driver into the virtual
console stuff I've got set up.  This essentially means writing a 'console
driver' that will switch into 640x480x4 mode when it gains the focus, and
write its buffer out to the VGA ram, and then repeat it in reverse when it
loses the focus; when we come up with some sort of frame-buffer/X/etc
standard, this new driver should conform to it, as well.  Until then, we
should just be able to use the StandardVga class, as long as we switch to
a graphical console first.  Anyway, after setting that up, I'll integrate
the new java stuff I've been working on into the tree, and make
-DNEW_INTERRUPT_HANDLING and GRUB compiling the default.  Then I need to
some thinking about where to go next.  (i.e. BCNI/classpath/multiple
processes/etc).

-_Quinn

"Do not meddle in the affairs of wizards, for you are crunchy and good
with ketchup."



_______________________________________________
Kernel maillist  -  [EMAIL PROTECTED]
http://jos.org/mailman/listinfo/kernel

Reply via email to