<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>thanks to the hint of Eliot, I did some code updates. fbdev module for Cog is now committed.</div><div><br></div><div><br></div><div>One thing I'm playing around with, and I have questions about, is the following (Eliot suggested to post it here):</div><div><br></div><div><blockquote type="cite"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto; "><div bgcolor="#FFFFFF" text="#000000">A project for supporting the openGL lib to render output to fbdev (like that: <a href="http://www.mesa3d.org/fbdev-dri.html" target="_blank">http://www.mesa3d.org/fbdev-dri.html</a>) would need major efforts, right? As far as I understand linux graphics architecture, it should be possible to render directly to the framebuffer device (maybe by a memcopy from a "FBO": <a href="http://songho.ca/opengl/gl_fbo.html" target="_blank">http://songho.ca/opengl/gl_fbo.html</a>). <br>But my knowledge doesn't reach far enough to figure out, if, how, and where that could integrate with existing/emerging squeak/GL infrastructure...</div></blockquote></div></blockquote></div><div><br></div><div>I don't know if that would be a project of major importance ;) but – as squeak's/pharo's future graphics architecture is currently under discussion – I think it should be considered, that there are many different backends... The reason I asked is, that I currently build me a tiny core linux system with a smalltalk user land. It does work and it is fun...</div><div>So thanks for any feedback!</div><div><br></div><div>I enjoy Smalltalk :)</div><div>Cheers</div><div>Michael</div><div><br></div><div><br></div><br><div><div>Am 30.01.2012 um 18:54 schrieb Eliot Miranda:</div><br class="Apple-interchange-newline"><blockquote type="cite">Hi Michael,<br><br><div class="gmail_quote">On Sun, Jan 29, 2012 at 1:12 PM, Michael J. Zeder <span dir="ltr"><<a href="mailto:post@michael-j-zeder.de">post@michael-j-zeder.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
hi!<br>
I changed inelegantly the configure script to get a vm-display-fbdev
and...<br>
...came to understand, that there are more issues with Cog + fbdev
(below is the make output).<br>
<br>
Now I wanted to put it in a general question: are there efforts to
maintain the vm-display-fbdev for CogVM? I guess there is little
need for it in general, but in some cases it is nice to have (for
building embedded or tiny systems the linux framebuffer is nice;
sleak, confless).<br>
Can anybody help me? Thanks.<br></div></blockquote><div><br></div><div>The Cog VM is derived from Qwaq/Teleplace (a defunct company that developed Croquet for business). There the display system was extended for additional host window support. That support was implemented for vm-display-X11 and vm-display-null but not for vm-display-fbdev. You'll need to implement similar stubs that you'll find in the vm-display-null, since most of these primitives don't make sense/don't do anything in the context of fbdav (which takes control of the frame buffer and is hence always full-screen). When you've implemented the stubs please send me the code so I can implement.</div>
<div><br></div><div>Doubtless you'll have worked out that you want to say "--with-vm-display-fbdev" to get that compiled in.</div><div><br></div><div>HTH & good luck</div><div>Eliot</div><div><br></div><div>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">
<br>
Cheers!<br>
<br>
<blockquote><tt>/bin/bash
/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld/libtool
--mode=compile gcc -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG
-DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0
-msse -DLSB_FIRST=1 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG
-DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0
-msse -DLSB_FIRST=1 -Wall -Werror -DHAVE_CONFIG_H
-I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
-I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
-I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm
-I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm
-I/home/mjz/Squeak/squeakvm/Cog/src/vm
-I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
-I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
-I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm
-I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm
-I/home/mjz/Squeak/squeakvm/Cog/src/vm
-I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/plugins/FilePlugin
-I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/plugins/B3DAcceleratorPlugin
-I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/plugins/B3DAcceleratorPlugin
-c -o sqUnixFBDev.lo
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c<br>
gcc -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1
-DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0 -msse -DLSB_FIRST=1 -g
-O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1
-DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0 -msse -DLSB_FIRST=1
-Wall -Werror -DHAVE_CONFIG_H
-I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
-I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
-I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm
-I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm
-I/home/mjz/Squeak/squeakvm/Cog/src/vm
-I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
-I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
-I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm
-I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm
-I/home/mjz/Squeak/squeakvm/Cog/src/vm
-I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/plugins/FilePlugin
-I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/plugins/B3DAcceleratorPlugin
-I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/plugins/B3DAcceleratorPlugin
-c
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c
-fPIC -DPIC -DPIC -o sqUnixFBDev.o<br>
In file included from
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:39:0:<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm/sq.h:194:0:
error: ignoring #pragma auto_inline off
[-Werror=unknown-pragmas]<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm/sq.h:196:0:
error: ignoring #pragma auto_inline on [-Werror=unknown-pragmas]<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: initialization from incompatible pointer type [-Werror]<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: (near initialization for 'display_fbdev_itf.winOpen')
[-Werror]<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: 'display_ioPositionOfScreenWorkArea' undeclared here (not
in a function)<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: 'display_ioSizeOfScreenWorkArea' undeclared here (not in
a function)<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: 'display_ioSetCursorPositionXY' undeclared here (not in a
function)<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: 'display_ioGetWindowHandle' undeclared here (not in a
function)<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: 'display_ioPositionOfNativeDisplay' undeclared here (not
in a function)<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: 'display_ioSizeOfNativeDisplay' undeclared here (not in a
function)<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: 'display_ioPositionOfNativeWindow' undeclared here (not
in a function)<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
error: 'display_ioSizeOfNativeWindow' undeclared here (not in a
function)<br>
/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:407:14:
error: 'display_dndLaunchFile' defined but not used
[-Werror=unused-function]<br>
cc1: all warnings being treated as errors<br>
<br>
make[1]: *** [sqUnixFBDev.lo] Fehler 1<br>
make: *** [<a href="http://vm-display-fbdev.la/" target="_blank">vm-display-fbdev.la</a>] Fehler 2<br>
</tt><br>
</blockquote>
<br>
<br>
Am 29.01.2012 19:31, schrieb Michael J. Zeder:
<div><div></div><div class="h5"><blockquote type="cite">
<pre>hello everbody,
I want to build the CogVM (latest revision from <a href="http://squeakvm.org/svn/branches/Cog" target="_blank">squeakvm.org/svn/branches/Cog</a>),
but with the vm-display-fbdev module (for linux framebuffer device) as default.
Now I am a bit stuck in understanding the make process. Just leaving out the "--without-vm-display-fbdev" as argument to the configure script does not lead to it being included in the compile process.
Also I don't find the exact location in the scripts, where to tell that the vm-display-fbdev should not only be included, but shall also replace the default display-X11-module.
Thanks for your help,
best regards
Michael
</pre>
</blockquote>
<br>
</div></div></div>
<br><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div><br>
<br></blockquote></div><br></body></html>