home *** CD-ROM | disk | FTP | other *** search
- I am posting this to let people know that the new graphics stuff is
- done (well in beta now). I send the patches to Markus, and I imagine
- that he will make them available when he is able.
-
- For the time being here is my some info I send as a README to Markus, with
- some extra notes added.
-
- *** *** ***
-
- | Ok first let me say that this is just a beta. There are known cosmetic
- | (small) bugs with some of the code. I felt it was necsesary to get
- | this stuff into the public ASAP. For instance the X window people
- | really need to be using the new graphics system. I am very concerned
- | that they have spent alot of time on code they will be re-writing now.
- | I asked them to drop me a note but no one replied.
- |
- | Anyway, there are few patches to the main amiga source tree all of
- | which were nec. and proper. Note however that I made a patch to
- | the main sources, sys/sys/ioctl.h had a bug (IOCBASECMD(x) was incorrect.)
- | my code depends on this being [ed: viewioctl.h] right so I included my change.
- |
- [ed: programing notes deleted]
- |
- | This release is a major update in the area of graphics. All parts
- | are not fully done yet but they work and work solidly. The interface
- | (grf) for monitors can be considered frozen (we may add cosmetics
- | later but nothing funcitonal.) So that people wishing to write
- | monitor code can do so now.
- |
- | If you are going to write a monitor you can use my code as an example
- | it may get complex and overwhelming though because of the complexity
- | of supporting the custom chips. So you may want to start of only
- | with the grf_* stuff and then consult the grf_cc stuff when needed.
- |
- | In the area of the ite. I have consolidated all the monitor dependent
- | files into a single ite_std.c file. This was possible due to the
- | new view device (more on that in a little bit) The ite now has
- | support for _underline_ and BOLD attributes as well as continuing
- | support of inverse as before. Becuase of these additions the font
- | programs need to be updated (I added the code in fontdumper and
- | changed the kernel_font.c.distrib to get you started.) The only
- | thing that gets added is kernel_font_(baseline|boldsmear) attributes.
- |
- | All known ite scrolling bugs and repeating bugs are fixed in this version.
- | (actually there is one, but I need to get this out.)
-
- It has to do with a new IOCTL to change the size of the ite
- at run-time, when done the process group owning the tty that uses this
- ite is not signaled. So if you change the size of the ite with sya
- emacs running it doesn't know about the change. Not a big deal for the
- time being.
-
- | The new ``/dev/view??'' are the character devices that replace the
- | old ``/dev/grf''. These new psuedo-devices represent a single monitor
- | screen. They go through the new grf interface in a portable way.
- | All programs will interface graphics on Amiga-BSD through these devices.
- | (ite does)
- |
- | I will shortly (a day or two) be releasing some example code on how
-
- I will post a day after markus post I mean.
-
- | to program with the view?? devices. For now let me give you an
- | example on how to map the bitmap data into your process with the
- | view device.
- |
- | bitplane_data = mmap (0, size, PROT_READ|PROT_WRITE, MAP_FILE, fdesc, 0);
- |
- | ``size'' is the number of bytes of bitmap data to map. ``fdesc'' is the
- | file descriptor returned from open().
- |
- | There are some major bugs with mmap()'ing the 709 grf device. The largest
- | being the allowing of processes to quickly vm_fault the kernel. (one access).
- | These are gone now.
- |
- | Support for the custom hardware is now in the kernel, things such as a
- | ``/dev/audio'' will probably be written. Its easy now. Any way, the ite
- | bell now goes through this interface.
- |
- | Some missing stuff: mouse pointer. sorry sprites are not retargetable*
- | X windows is however and when that is done you will get your pointer
- | back (exactly what was it doing there anyway?)
- |
- | A screen blanker. This is a very easy one I hope to have installed
- | into the system in a upcoming patch (maybe 20 lines of code needed)
- | Again I need to get this out now so it was skipped.
- |
- | I hope everyone enjoys the new code features. Now i can try and get
- | emacs working...
- |
- | Chris...
- |
- | (this was written after a 20 hour stint to try and finalize stuff please
- | forgive mispellings and improper grammar. thanks)
- | --
- | (* spites could be but I didn't make them.)
-
- While I am waiting for the new kernel I am working on a port
- of GNU binutils and Gas2.2 (the newest) I hope to send the
- patches to Cygnus for inclusion. I have them compiled but
- I still need to run them through the testsuite. Then I will get
- started on gdb. I need the new kernel before I can add stuff there
- though so this may have to wait.
-
- Anyway I am still using vi so if anyone has emacs working on an
- Amiga2000 with 8Megs of memory they might want to tell me how to
- get it to quit SIGSEGV'ing. :^)
-
- Chris.
-
-
-