9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] More about /dev/draw
@ 2016-05-28 17:23 Dave MacFarlane
  2016-05-28 17:34 ` Skip Tavakkolian
  2016-05-29 10:50 ` Charles Forsyth
  0 siblings, 2 replies; 27+ messages in thread
From: Dave MacFarlane @ 2016-05-28 17:23 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

[-- Attachment #1: Type: text/plain, Size: 2026 bytes --]

Either I'm going insane, the default Plan 9 /dev/draw in-memory
implementation
doesn't implement draw(3), or possibly both.

When I do the following, it works as expected under both drawterm and a
locally mounted instance:
1. Allocate a screen with an 'A' message
2. Allocate an image on the screen of the same size as /dev/wctl  with a
'b' message
3. Draw the image over the window with a 'd' message
4. Flush the buffer with 'v'

When I do the following, it works under drawterm, but not with a local
/dev/draw implementation:
Steps 1-2 above
3. Allocate another image of some arbitrary fill colour with 'b' (with or
without the repl bit)
4a. (Optional, doesn't seem to make a difference) set the compositing
operator with 'O'
4b. Draw the new image over a portion of the window image from step 2 with
'd'
5. Go to step 3-4 from the first variation.

(I don't have a 9front instance to test on.)

On the other hand, replacing a portion of the image from step 2 with 'y'
works under either. (I haven't gotten around to using 'Y' when appropriate
yet.)

Basically, I can only get any variation of this code:
https://github.com/driusan/exp/blob/18a78a1549541d46d26cb6088a904585c386d812/shiny/driver/devdrawdriver/uploadimpl.go#L50

to work under drawterm.

The end result is that under a local Plan 9 instance the basic sample shiny
test looks like this:

http://driusan.github.io/plan9/basicmem.png

Instead of this:

http://driusan.github.io/plan9/basicdrawterm.png

Does anyone have any pointers? I don't have much access to a physical Plan
9 machine, so I'm having trouble debugging this since it works under
drawterm (or perhaps is buggy under drawterm in a way that makes it seem
like it's working..)

It would also potentially be helpful if someone who uses Go under 9front
could let me know how x/exp/shiny/examples/basic looks with the shiny
driver in that branch, but I'm not sure that it matters since it'll most
likely be the same as one of the above..

- Dave

[-- Attachment #2: Type: text/html, Size: 2805 bytes --]

^ permalink raw reply	[flat|nested] 27+ messages in thread
[parent not found: <1927218855.974253.1464549855538.JavaMail.yahoo.ref@mail.yahoo.com>]

end of thread, other threads:[~2016-05-31 14:18 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-28 17:23 [9fans] More about /dev/draw Dave MacFarlane
2016-05-28 17:34 ` Skip Tavakkolian
2016-05-28 17:49   ` Dave MacFarlane
2016-05-28 18:04     ` hiro
2016-05-28 18:28     ` Steve Simon
2016-05-29  5:40   ` jfmxl
2016-05-29  5:50     ` Steve Simon
2016-05-29  5:59       ` jfmxl
2016-05-29  6:19         ` jfmxl
2016-05-29  8:05           ` hiro
2016-05-29 17:25           ` trebol55555
2016-05-31  8:41       ` Richard Miller
2016-05-31  8:14     ` Richard Miller
2016-05-31 14:18       ` jfmxl
2016-05-29 10:50 ` Charles Forsyth
2016-05-29 12:44   ` Dave MacFarlane
2016-05-29 12:58     ` Charles Forsyth
2016-05-30  0:30       ` Dave MacFarlane
2016-05-30  9:20         ` Richard Miller
2016-05-30  9:27           ` cinap_lenrek
2016-05-30 13:11             ` Dave MacFarlane
2016-05-30 10:08           ` Richard Miller
2016-05-30 12:37             ` Richard Miller
2016-05-30 13:13               ` Dave MacFarlane
2016-05-30 13:53                 ` Richard Miller
     [not found] <1927218855.974253.1464549855538.JavaMail.yahoo.ref@mail.yahoo.com>
2016-05-29 19:24 ` Brian L. Stuart
2016-05-29 22:47   ` jfmxl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).