Register Guidelines E-Books Search Today's Posts Mark Forums Read

Go Back   MobileRead Forums > E-Book Readers > Amazon Kindle > Kindle Developer's Corner

Notices

Reply
 
Thread Tools Search this Thread
Old 08-08-2012, 05:40 PM   #181
sohelmk
Junior Member
sohelmk doesn't littersohelmk doesn't litter
 
Posts: 4
Karma: 188
Join Date: Mar 2012
Device: kindle
An Idea to brainstorm : Converting x-window to simpler text oriented GUI

Hi Hawhill,
just wanted to bounce this idea, please provide your valuable comments:

I have not seen your code and not much familiar with low level stuff but I assume at a high level that current code takes the pixel info from x-window system and on kindle side render it on e-ink screen.

I was thinking of one enhancement if its possible/feasable to implement:
See on e-ink monitor one does not care of videos or picture or colors or size of windows/menus/shapes. Only text is important. So if some program/driver can take pc screen info, and converts it into a very simple text based gui windows...and then sends those simplified pixels to kindle to show. It will be very less info and should show very clean and fast on kindle. The large pc screen can be scaled to 6 or 9 inch screen, still showing text info nicely.

Now I am not sure where this code will interface with OS, but it has to be somewhere at graphics driver level (before x-window info is converted into pixels)

Do you (or anyone in this forum with knowledge of low level graphics stuff) comment if this is possible and what all would be needed to code this?

Thanks a lot,
Sohel
sohelmk is offline   Reply With Quote
Old 08-08-2012, 05:56 PM   #182
hawhill
Wizard
hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.
 
hawhill's Avatar
 
Posts: 1,216
Karma: 2116649
Join Date: Nov 2010
Location: Goettingen, Germany
Device: Kindle Paperwhite, Kobo Mini
What you describe sounds like a new render target for GTK or QT. But then it's more complicated. Applications will certainly need to be adapted. It would most certainly not be possible to each only text drawing from applications that were designed with the full possibilities of the framework in mind. This is especially true for the slightest more complex applications that define their own UI elements, say for example a color chooser (OK, bad example in this context) or scrolling elements.

But then, the premise is only partly correct. The software presented in this thread is only the displaying end for a well established protocol to transmit the contents and changes of that contents of a framebuffer (a) and to transmit keyboard strokes and pointing device actions to the other end. This is the viewing and input device action transmitting part of that. For the remote end, there are many possibilities. In fact, running a virtual desktop had always been my own preferred application (that would be Usage of Xvnc - not x11vnc) on the server side. And most applications would work without problems. For recognizing elements and eliminating grayscale fuzziness, running the desktop with a high-contrast theme worked well enough.

That said, I don't think it's worth the effort. Or to put it differently: If you manage to adapt a framework enough to do this, that would be a lot of work. Using it via VNC would be a niche then, running these applications directly on the Kindle would be the most appealing applications of such a framework adaption.

TL;DR: Hard work, UI behaviour is probably not so well abstractable as you might think, status quo works well enough.
hawhill is offline   Reply With Quote
Old 09-22-2012, 02:26 PM   #183
godblessfq
Junior Member
godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.
 
Posts: 5
Karma: 7926
Join Date: Sep 2012
Device: kindle dxg
Quote:
Originally Posted by hawhill View Post
Hints:

It works with a rotated screen. However, the screen must be rotated when the app starts up, not afterwards.

Personally, I use this with USB networking configured to autostart. That way, I can just plug in the Kindle, press "Shift V U" and get going.

Windows users check out kranu's "eMonitor" thread. The software does a similar things and kranu mentions ways how to set up a virtual second display for Windows. I'm not to sure how to run vnc on one display out of many, though. I recommend to start with cloning your existing desktop. You'll probably want your kindle in landscape mode for that, so do the rotation before starting kindlevncviewer.
I tried the portrait mode. But it does not use the full kindle screen. I have a
virtual monitor with 1200X824 resolution using zonescreen, and set it in portrait mode, the connect to it via tightvnc, turns out there is a big blank area down the screen. It would be great if you could fix this. Thank you!
godblessfq is offline   Reply With Quote
Old 09-22-2012, 11:09 PM   #184
seawhite
E Ink Lover
seawhite got an A in P-Chem.seawhite got an A in P-Chem.seawhite got an A in P-Chem.seawhite got an A in P-Chem.seawhite got an A in P-Chem.seawhite got an A in P-Chem.seawhite got an A in P-Chem.seawhite got an A in P-Chem.seawhite got an A in P-Chem.seawhite got an A in P-Chem.seawhite got an A in P-Chem.
 
Posts: 20
Karma: 6352
Join Date: Sep 2012
Device: Kindle DX white, Kindle DXG, Kindle Keyboard, K4NT
Smile

I am using this daily, it works wonderfully. I just wish the refresh rate can be controlled. But knowing eink is slow, the delay is understandable.

Thank you for the wonderful work!
seawhite is offline   Reply With Quote
Old 09-24-2012, 03:00 PM   #185
godblessfq
Junior Member
godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.godblessfq knows the square root of minus one.
 
Posts: 5
Karma: 7926
Join Date: Sep 2012
Device: kindle dxg
Quote:
Originally Posted by godblessfq View Post
I tried the portrait mode. But it does not use the full kindle screen. I have a
virtual monitor with 1200X824 resolution using zonescreen, and set it in portrait mode, the connect to it via tightvnc, turns out there is a big blank area down the screen. It would be great if you could fix this. Thank you!

Sorry, turns out to be my setting is wrong. The program works perfectly! Thank you so much!
godblessfq is offline   Reply With Quote
Old 10-05-2012, 11:02 AM   #186
hawhill
Wizard
hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.
 
hawhill's Avatar
 
Posts: 1,216
Karma: 2116649
Join Date: Nov 2010
Location: Goettingen, Germany
Device: Kindle Paperwhite, Kobo Mini
Update: Support for 8bpp framebuffers, this means K4/K5! Please go ahead and test. Launchpad integration probably doesn't make sense there, and I don't know the devices enough to provide a proper substitute using whatever means there are available on those devices. Glad to include what you come up with, though! ZIP-Archive in the OP is updated and github sources are up-to-date.
hawhill is offline   Reply With Quote
Old 10-05-2012, 11:11 AM   #187
twobob
( ͡° ͜ʖ ͡°){ʇlnɐɟ ƃǝs}Tır
twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.
 
twobob's Avatar
 
Posts: 6,552
Karma: 6021146
Join Date: Jun 2012
Location: uti gratia usura (Yao ying da ying; Mo ying da yieng)
Device: PW-WIFI|K5-3G+WIFI| K4|K3-3G|DXG|K2| Rooted Nook Touch
nice. will test now

(extra points for porting gnuboy) hehehehe
twobob is offline   Reply With Quote
Old 10-05-2012, 11:15 AM   #188
hawhill
Wizard
hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.
 
hawhill's Avatar
 
Posts: 1,216
Karma: 2116649
Join Date: Nov 2010
Location: Goettingen, Germany
Device: Kindle Paperwhite, Kobo Mini
Erm, right, gnuboy shouldn't prove to be much more difficult either. Well, I think I just give it a try right now...
hawhill is offline   Reply With Quote
Old 10-05-2012, 11:23 AM   #189
twobob
( ͡° ͜ʖ ͡°){ʇlnɐɟ ƃǝs}Tır
twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.
 
twobob's Avatar
 
Posts: 6,552
Karma: 6021146
Join Date: Jun 2012
Location: uti gratia usura (Yao ying da ying; Mo ying da yieng)
Device: PW-WIFI|K5-3G+WIFI| K4|K3-3G|DXG|K2| Rooted Nook Touch
Gnuboy: sweeet!!! : )


Re the shell thingy

Quote:
# send menu key twice to refresh display
echo "send 139" > /proc/keypad
echo "send 139" > /proc/keypad
Not sure if that was intended to be multi-device but just to let you know:

K5 /Proc (minus the numbers)

Code:
kmsg
kpagecount
kpageflags
latency_stats
loadavg
locks
mac_addr
mac_sec
meminfo
misc
modules
mounts
net
pagetypeinfo
asound          panel_id
atags           partitions
bd              postmode
board_id        sched_debug
bootglobals     schedstat
bootmode        sdma
buddyinfo       self
bus             slabinfo
cmdline         softirqs
config.gz       stat
cpu             swaps
cpuinfo         sys
crypto          sysvipc
devices         tcpreset
diskstats       timer_list
dma-engine      touch
driver          tty
execdomains     uptime
fb              usid
filesystems     version
fs              vmallocinfo
interrupts      vmstat
iomem           wan
ioports         wf
irq             whitney_button
kallsyms        zoneinfo
I'm possibly being stupid but there it is.

Last edited by twobob; 10-05-2012 at 11:25 AM. Reason: layout - which is still terrible, but there it is
twobob is offline   Reply With Quote
Old 10-05-2012, 11:37 AM   #190
hawhill
Wizard
hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.
 
hawhill's Avatar
 
Posts: 1,216
Karma: 2116649
Join Date: Nov 2010
Location: Goettingen, Germany
Device: Kindle Paperwhite, Kobo Mini
this is possibly a KDX/K3-ism. Maybe start trying without the wrapper shell script?
hawhill is offline   Reply With Quote
Old 10-05-2012, 11:41 AM   #191
twobob
( ͡° ͜ʖ ͡°){ʇlnɐɟ ƃǝs}Tır
twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.
 
twobob's Avatar
 
Posts: 6,552
Karma: 6021146
Join Date: Jun 2012
Location: uti gratia usura (Yao ying da ying; Mo ying da yieng)
Device: PW-WIFI|K5-3G+WIFI| K4|K3-3G|DXG|K2| Rooted Nook Touch
oh sure. this wasn't a deal breaker. just reporting back mate
twobob is offline   Reply With Quote
Old 10-05-2012, 11:45 AM   #192
twobob
( ͡° ͜ʖ ͡°){ʇlnɐɟ ƃǝs}Tır
twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.
 
twobob's Avatar
 
Posts: 6,552
Karma: 6021146
Join Date: Jun 2012
Location: uti gratia usura (Yao ying da ying; Mo ying da yieng)
Device: PW-WIFI|K5-3G+WIFI| K4|K3-3G|DXG|K2| Rooted Nook Touch
yeah. No. you have the same issue I have with Doom.

Xorg is killing it. It's there (but hidden)
killall Xorg reveals it for an instant.

but then it is gone again.

Heh, yup exactly the same issue.

Hmm.. interesting.

EDIT: That's Without wrapper

Quote:
[root@kindle /proc]# kindlevncviewer
05/10/2012 15:41:57 ConnectToTcpAddr: connect
05/10/2012 15:41:57 Unable to connect to VNC server
[root@kindle /proc]# kindlevncviewer 192.168.1.65
05/10/2012 15:42:23 VNC server supports protocol version 3.8 (viewer 3.8)
05/10/2012 15:42:23 We have 1 security types to read
05/10/2012 15:42:23 0) Received security type 1
05/10/2012 15:42:23 Selecting security type 1 (0/1 in the list)
05/10/2012 15:42:23 Selected Security Scheme 1
05/10/2012 15:42:23 No authentication needed
05/10/2012 15:42:23 VNC authentication succeeded
05/10/2012 15:42:23 Desktop name "dev:0"
05/10/2012 15:42:23 Connected to VNC server, using protocol version 3.8
05/10/2012 15:42:23 VNC server default format:
05/10/2012 15:42:23 32 bits per pixel.
05/10/2012 15:42:23 Least significant byte first in each pixel.
05/10/2012 15:42:23 TRUE colour: max red 255 green 255 blue 255, shift red 16 green 8 blue 0
05/10/2012 15:42:23 client2server supported messages (bit flags)
05/10/2012 15:42:23 00: 00ff 0081 0000 0000 - 0000 0000 0000 0000
05/10/2012 15:42:23 08: 0000 0000 0000 0000 - 0000 0000 0000 0000
05/10/2012 15:42:23 10: 0000 0000 0000 0000 - 0000 0000 0000 0000
05/10/2012 15:42:23 18: 0000 0000 0000 0000 - 0000 0000 0000 0004
05/10/2012 15:42:23 server2client supported messages (bit flags)
05/10/2012 15:42:23 00: 001f 0080 0000 0000 - 0000 0000 0000 0000
05/10/2012 15:42:23 08: 0000 0000 0000 0000 - 0000 0000 0000 0000
05/10/2012 15:42:23 10: 0000 0000 0000 0000 - 0000 0000 0000 0000
05/10/2012 15:42:23 18: 0000 0000 0000 0000 - 0000 0000 0000 0004
05/10/2012 15:42:23 Connected to Server "unknown (LibVNCServer 0.9.8.2)"
partially updating eink display (0,0)-(598,798)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,403)-(0,798)
partially updating eink display (599,403)-(0,799)
Spoiler:
partially updating eink display (599,403)-(0,798)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,403)-(0,776)
partially updating eink display (599,403)-(0,775)
partially updating eink display (599,403)-(0,794)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,404)-(0,795)
partially updating eink display (599,404)-(0,776)
partially updating eink display (599,403)-(0,794)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,404)-(0,795)
partially updating eink display (599,404)-(0,795)
partially updating eink display (599,403)-(0,794)
partially updating eink display (599,403)-(0,795)
partially updating eink display (599,404)-(0,794)
partially updating eink display (599,404)-(0,795)
partially updating eink display (0,0)-(0,795)
partially updating eink display (599,404)-(0,795)
partially updating eink display (599,404)-(0,795)
partially updating eink display (599,461)-(0,798)
partially updating eink display (599,442)-(0,798)
partially updating eink display (599,423)-(0,794)
partially updating eink display (599,404)-(0,795)
partially updating eink display (599,404)-(0,795)
partially updating eink display (599,404)-(0,795)
partially updating eink display (599,404)-(0,795)
partially updating eink display (599,442)-(0,776)
partially updating eink display (599,423)-(0,775)
partially updating eink display (599,404)-(0,794)

Last edited by twobob; 10-05-2012 at 11:48 AM. Reason: added output so Hawhill could see what I did
twobob is offline   Reply With Quote
Old 10-05-2012, 11:58 AM   #193
hawhill
Wizard
hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.hawhill ought to be getting tired of karma fortunes by now.
 
hawhill's Avatar
 
Posts: 1,216
Karma: 2116649
Join Date: Nov 2010
Location: Goettingen, Germany
Device: Kindle Paperwhite, Kobo Mini
Looks good. Well, with a full blown X server under the hood, I'd possibly prefer some readily available X-based VNC viewer anyway... So there probably isn't much of a use case for the K5/KPW.
hawhill is offline   Reply With Quote
Old 10-05-2012, 12:00 PM   #194
twobob
( ͡° ͜ʖ ͡°){ʇlnɐɟ ƃǝs}Tır
twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.twobob ought to be getting tired of karma fortunes by now.
 
twobob's Avatar
 
Posts: 6,552
Karma: 6021146
Join Date: Jun 2012
Location: uti gratia usura (Yao ying da ying; Mo ying da yieng)
Device: PW-WIFI|K5-3G+WIFI| K4|K3-3G|DXG|K2| Rooted Nook Touch
but. as with prboom it *does* work via vnc (showing vnc somewhat ironically)

pictured: It working via vnc.

however, the screen on the device is NOT updated with that info.

Hope that helps.
so, to recap, we still need to be able to disable the Xorg hold of the framebuffer gracefully.
Attached Thumbnails
Click image for larger version

Name:	kindle:0.0 - GVncViewer_085.png
Views:	74
Size:	66.9 KB
ID:	93450   Click image for larger version

Name:	kindle:0.0 - GVncViewer_086.png
Views:	171
Size:	61.8 KB
ID:	93455  

Last edited by twobob; 10-05-2012 at 12:03 PM.
twobob is offline   Reply With Quote
Old 10-05-2012, 12:04 PM   #195
geekmaster
Всё гениальное просто.
geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.
 
geekmaster's Avatar
 
Posts: 5,070
Karma: 6789001
Join Date: Nov 2011
Location: Щедрость не имеет пределов.
Device: *.*
I test my native mode apps in K4/K5 diags SSH, to avoid fighting with Xorg. For touchscreen testing, there is a diag menu item that locks the touchscreen so it does trigger accidental menu selections.

Because the K4/K5 have at least two full screens that can fit in the framebuffer, and there is a /sys/ file you can poke to set the starting Y position, you can scroll to the second buffer for native mode and use that, while everything else uses the hidden first page at offset 0 in the framebuffer. That way Xorg stays on the other side of the "fence", so no problems (but it still needs to be tested)...

I gave twobob a little screen scroller script that demos that /sys/ file.
geekmaster is offline   Reply With Quote
Reply

Tags
application, kindle, source, viewer, vnc

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Free (GPLv2) Translation Dictionaries Elleo Amazon Kindle 3 01-11-2011 11:57 PM
Calibre native app on iphone for reading news? bigreat Calibre 2 07-22-2010 12:50 AM
Android Android App: VNC leo315 enTourage Archive 4 05-13-2010 07:06 PM
Android VNC viewer (use your PC from the eDGe!) devseev enTourage Archive 2 04-11-2010 02:21 AM
PalmPDF - native PDF Viewer for Palm OS 5.x Colin Dunstan Reading and Management 2 11-23-2005 03:09 PM


All times are GMT -4. The time now is 11:25 PM.


MobileRead.com is a privately owned, operated and funded community.