forrie@morwyn.UUCP (Forrie Aldrich) (02/13/91)
Here's a couple of questions for those technical hackers ...
1) Is there a way to CHANGE the bitmap 'blanket of dots' that is
produced by the wind driver? If so, HOW?
2) Can one also change the MOUSE ICON to something else?
I can only assume that these are possible... particularly if a program
were written and then run out of /etc/rc or whatever with the proper
permissions.
It would be nice to be able to change that bitmap to something like a
drawing or a digitized picture from pbm or .gif formats...
Just curious...
Thanks
Forrie
--
--------------------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--------------------
Forrest Aldrich, Jr.| ...uunet!eci!morwyn!forrie |forrie@morywn.UUCP
| ...uunet!eci!zinn!morwyn!forrie |
CREATIVE CONNECTIONS|...uunet!unhd!unhtel!morwyn!forrie |Graphic Illustration
------------------\-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-/------------------
\___ PO Box 1541 - Dover, NH 03820 ___/
jbm@uncle.uucp (John B. Milton) (02/24/91)
In article <68@morwyn.UUCP> forrie@morwyn.UUCP (Forrie Aldrich) writes: >Here's a couple of questions for those technical hackers ... > >1) Is there a way to CHANGE the bitmap 'blanket of dots' that is > produced by the wind driver? If so, HOW? > >2) Can one also change the MOUSE ICON to something else? The mouse cursor is given a default by the window driver when the window is created. It can then be changed once the window is open. As the mouse is dragged from window to window the pointer will change. One could probably patch "windy" to change the mouse pointer for a window. Perhaps embed a "1" for window 1, etc. >I can only assume that these are possible... partic... >were written and then run out of /etc/rc or whatever with the proper >permissions. > >It would be nice to be able to change that bitmap to something like a >drawing or a digitized picture from pbm or .gif formats... Well, too bad. It would cost 32k of kernel memory and would slow things down quite a bit. I suppose one could run a pbmto3b1 in the background from /etc/rc and just leave it. If you patch pbmto3b1 to change the name of the window opened (see windy.c for how to do this), and change the name to one of: "Phone Manager", "Status Manager", "Window Manager", then the window manager will not switch to it or show it in the "Suspd" list. Go ahead, try it with windy -n and the Shift-Rsume away from it, you can't get back to it. The window manager does, however use an array "syspat", which contains four pointers to the four fill patterns described below. One could patch the kernel and change the values in these arrays to get a different pattern. As you can see below, certain window "things" are mapped to certain patterns, so if you hack patltgray, everything that uses that pattern will get changed. The patterns are 32 bytes each, organized as 2 bytes across by 16 down, which is 16x16=256 bits. One could make some ok desktop patterns from this. If you have access to a Mac control panel, you can get some ideas. I don't know what the deal is with PATDKGRAY, there is no patdkgray. As far as I know, nothing uses the patgray entry at all. There also seems to be something weird with the patltgray symbol in the kernel (static, below), so if you want to change it with adb, you hvae to use patgray+20 as the address. Note that the patwhite pattern is used to draw EVERYTHING that's white, except fonts, so EVEN THE CURSOR WILL CHANGE. Note that the patterns are fill patterns, so they are aligned to the screen, NOT what is being filled. Ok, everyone post your favorite patltgray patches. Post them in this format: echo "patgray+20,10/w 0aaaa 05555 0aaaa 05555 0aaaa 05555 0aaaa 05555 0aaaa 05555 0aaaa 05555 0aaaa 05555 0aaaa 05555" | sudo adb -w /unix /dev/kmem The "/w" causes only the RAM version to be changed. If "?w" is used, it will permanently change /unix. --- nm /unix|grep pat --- syspat | 133916|extern| | | |.data patblack | 133932|extern| | | |.data patwhite | 133964|extern| | | |.data patgray | 133996|extern| | | |.data patltgray | 134028|static| | | |.data --- from /usr/include/sys/wd.h --- /* system patterns */ #define PATBLACK 0 /* all black */ #define PATWHITE 1 /* all white */ #define PATGRAY 2 /* half-tone */ #define PATLTGRAY 3 /* quarter-tone */ #define PATDKGRAY 4 /* reverse semi 1/4 tone */ #define PATBGROUND PATLTGRAY /* background */ #define PATFGROUND PATBLACK /* foreground */ #define PATCURSE PATWHITE /* cursor pattern */ BTW, I got 19 HD2 address confirmations, not very good really. I'm sending them out anyway Monday. HD2 address confimations: 1 Bill Carpenter 2 Steve Engelhardt 3 Augustine Cano 4 Scott Emery 5 Elliot Dierksen 6 Thomas Tkacik 7 Brad Isley 8 Bill Confare 9 Mark Hartman 10 Kevin O'Gorman 11 Michel Adam 12 Frank Pedroni 13 Alan Lundin 14 Norman Yarvin 15 Neal Murphy 16 Scott Ballantyne 17 Robert Haar 18 Andrew Hay 19 Michael Gersten John -- John Bly Milton IV, jbm@uncle.UUCP, n8emr!uncle!jbm@osu-cis.cis.ohio-state.edu (614) h:252-8544, w:785-1110; N8KSN, AMPR: 44.70.0.52; Don't FLAME, inform!